From da4fd6169717cfa04d644d0af0d23dd089a6e373 Mon Sep 17 00:00:00 2001 From: herbert Date: Sat, 14 Dec 2019 00:06:42 +0100 Subject: remove old version of devicemodel devicemanager oldux featureaggregator Issue-ID: SDNC-1004 Signed-off-by: herbert Change-Id: I5337643181e2398e5a8097e4ee14fa4ac96d0d4c --- sdnr/wt/odlux/apps/maintenanceApp/.babelrc | 17 -- sdnr/wt/odlux/apps/maintenanceApp/package.json | 41 ---- sdnr/wt/odlux/apps/maintenanceApp/pom.xml | 161 --------------- .../src/actions/maintenenceActions.ts | 112 ---------- .../src/components/editMaintenenceEntryDialog.tsx | 194 ------------------ .../src/handlers/maintenanceAppRootHandler.ts | 44 ---- .../src/handlers/maintenenceEntriesHandler.ts | 57 ------ sdnr/wt/odlux/apps/maintenanceApp/src/index.html | 26 --- .../src/models/maintenenceEntryType.ts | 45 ---- sdnr/wt/odlux/apps/maintenanceApp/src/plugin.tsx | 44 ---- .../src/services/maintenenceService.ts | 99 --------- .../apps/maintenanceApp/src/utils/timeUtils.ts | 39 ---- .../maintenanceApp/src/views/maintenenceView.tsx | 226 --------------------- .../sdnr/wt/odlux/bundles/MyOdluxBundle.java | 68 ------- .../resources/OSGI-INF/blueprint/blueprint.xml | 9 - .../sdnr/wt/odlux/bundles/test/TestBundleRes.java | 46 ----- .../maintenanceApp/src2/test/resources/test.js | 5 - sdnr/wt/odlux/apps/maintenanceApp/tsconfig.json | 37 ---- .../wt/odlux/apps/maintenanceApp/webpack.config.js | 140 ------------- 19 files changed, 1410 deletions(-) delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/.babelrc delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/package.json delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/pom.xml delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src/actions/maintenenceActions.ts delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src/components/editMaintenenceEntryDialog.tsx delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src/handlers/maintenanceAppRootHandler.ts delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src/handlers/maintenenceEntriesHandler.ts delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src/index.html delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src/models/maintenenceEntryType.ts delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src/plugin.tsx delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src/services/maintenenceService.ts delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src/utils/timeUtils.ts delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src/views/maintenenceView.tsx delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src2/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/bundles/MyOdluxBundle.java delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src2/main/resources/OSGI-INF/blueprint/blueprint.xml delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src2/test/java/org/onap/ccsdk/features/sdnr/wt/odlux/bundles/test/TestBundleRes.java delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/src2/test/resources/test.js delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/tsconfig.json delete mode 100644 sdnr/wt/odlux/apps/maintenanceApp/webpack.config.js (limited to 'sdnr/wt/odlux/apps/maintenanceApp') diff --git a/sdnr/wt/odlux/apps/maintenanceApp/.babelrc b/sdnr/wt/odlux/apps/maintenanceApp/.babelrc deleted file mode 100644 index 3d8cd1260..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/.babelrc +++ /dev/null @@ -1,17 +0,0 @@ -{ - "presets": [ - ["@babel/preset-react"], - ["@babel/preset-env", { - "targets": { - "chrome": "66" - }, - "spec": true, - "loose": false, - "modules": false, - "debug": false, - "useBuiltIns": "usage", - "forceAllTransforms": true - }] - ], - "plugins": [] -} diff --git a/sdnr/wt/odlux/apps/maintenanceApp/package.json b/sdnr/wt/odlux/apps/maintenanceApp/package.json deleted file mode 100644 index 175fce4d5..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/package.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "name": "@odlux/maintenance-app", - "version": "0.1.0", - "description": "A react based modular UI for the maintenance app.", - "main": "index.js", - "scripts": { - "start": "webpack-dev-server --env debug", - "build": "webpack --env release --config webpack.config.js", - "build:dev": "webpack --env debug --config webpack.config.js" - }, - "repository": { - "type": "git", - "url": "https://git.mfico.de/highstreet-technologies/odlux.git" - }, - "keywords": [ - "reactjs", - "redux", - "ui", - "framework" - ], - "author": "Matthias Fischer", - "license": "Apache-2.0", - "dependencies": { - "@odlux/framework": "*", - "@odlux/connect-app": "*" - }, - "peerDependencies": { - "@types/react": "16.4.14", - "@types/react-dom": "16.0.8", - "@types/react-router-dom": "4.3.1", - "@material-ui/core": "3.8.3", - "@material-ui/icons": "3.0.2", - "@types/classnames": "2.2.6", - "@types/flux": "3.1.8", - "@types/jquery": "3.3.10", - "jquery": "3.3.1", - "react": "16.5.2", - "react-dom": "16.5.2", - "react-router-dom": "4.3.1" - } -} diff --git a/sdnr/wt/odlux/apps/maintenanceApp/pom.xml b/sdnr/wt/odlux/apps/maintenanceApp/pom.xml deleted file mode 100644 index 71a8aefaf..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/pom.xml +++ /dev/null @@ -1,161 +0,0 @@ - - - 4.0.0 - - - org.onap.ccsdk.parent - odlparent - 1.5.1-SNAPSHOT - - - - org.onap.ccsdk.features.sdnr.wt - sdnr-wt-odlux-app-maintenanceApp - 0.7.0-SNAPSHOT - bundle - - sdnr-wt-odlux-app-maintenanceApp - - - Apache License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0 - - - - - - ${project.groupId} - sdnr-wt-odlux-core-model - ${project.version} - - - ${project.groupId} - sdnr-wt-odlux-core-provider - ${project.version} - test - - - junit - junit - test - - - - - - highstreet repo - https://cloud-highstreet-technologies.com/mvn/ - - true - always - - - - - - src2/main/java - - - dist - odlux - - - src2/main/resources - - - src2/test/resources - - - - - maven-clean-plugin - - - - dist - false - - - node - false - - - node_modules - false - - - ../node_modules - false - - - - bin - false - - - - - - org.codehaus.mojo - build-helper-maven-plugin - - - add-test-source - generate-test-sources - - add-test-source - - - - src2/test/java - - - - - - - de.jacksitlab - frontend-maven-plugin - 1.7.1 - - - install node and yarn - - install-node-and-yarn - - - initialize - - v8.10.0 - v1.12.3 - - - - yarn build - - yarn - - - run build - - - - - - org.apache.maven.plugins - maven-jar-plugin - - - org.apache.felix - maven-bundle-plugin - true - - - org.onap.ccsdk.features.sdnr.wt.odlux.model.*,com.opensymphony.* - - - - - - - diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src/actions/maintenenceActions.ts b/sdnr/wt/odlux/apps/maintenanceApp/src/actions/maintenenceActions.ts deleted file mode 100644 index 15ac64721..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src/actions/maintenenceActions.ts +++ /dev/null @@ -1,112 +0,0 @@ -/** - * ============LICENSE_START======================================================================== - * ONAP : ccsdk feature sdnr wt odlux - * ================================================================================================= - * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved. - * ================================================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - * ============LICENSE_END========================================================================== - */ -import { Action } from '../../../../framework/src/flux/action'; -import { Dispatch } from '../../../../framework/src/flux/store'; -import { MaintenenceEntry, spoofSymbol } from '../models/maintenenceEntryType'; - -import { AddSnackbarNotification } from '../../../../framework/src/actions/snackbarActions'; -import { IApplicationStoreState } from '../../../../framework/src/store/applicationStore'; - -import { maintenenceService } from '../services/maintenenceService'; - -export class BaseAction extends Action { } - -export class LoadAllMainteneceEntriesAction extends BaseAction { } - -export class AllMainteneceEntriesLoadedAction extends BaseAction { - - constructor (public maintenenceEntries: MaintenenceEntry[] | null, error?:string) { - super(); - - } -} - - -export const loadAllMainteneceEntriesAsyncAction = (dispatch: Dispatch , getState: () => IApplicationStoreState) => { - dispatch(new LoadAllMainteneceEntriesAction()); - // frist get all entries from the maintenance index - maintenenceService.getAllMaintenenceEntries().then(entries => { - if (!entries) { - dispatch(new AddSnackbarNotification({ message: `Error reading maintenece sessings.`, options: { variant: 'error' } })); - return; - } - - // combine ell entries from the maintenance index with all networkelements - const networkElements = getState().connect.mountedNetworkElements; - const maintenenceEntries = networkElements.elements.reduce((acc, cur) => { - const entry = entries.find(e => e.mountId === cur.mountId); - acc.push(entry || { - [spoofSymbol]: true, - _id: cur.mountId, - mountId: cur.mountId, - description : "", - start: "", - end: "", - active: false - }); - return acc; - }, [] as MaintenenceEntry[]); - - // all all entries from the maintenance index which are not in all networkelements - entries.forEach(entry => { - if (maintenenceEntries.findIndex(e => e.mountId === entry.mountId) < 0) { - maintenenceEntries.push(entry); - }; - }); - - dispatch(new AllMainteneceEntriesLoadedAction(maintenenceEntries)); - }).catch(error => dispatch(new AllMainteneceEntriesLoadedAction(null, error))); -} - -export class UpdateMaintenanceEntry extends BaseAction { - constructor(public maintenenceEntry: MaintenenceEntry) { - super(); - } -} - -/** Represents an async thunk action creator to add an element to the maintenence entries. */ -export const addOrUpdateMaintenenceEntryAsyncActionCreator = (entry: MaintenenceEntry) => (dispatch: Dispatch) => { - maintenenceService.writeMaintenenceEntry(entry).then(result => { - result && window.setTimeout(() => { - // dispatch(loadAllMountedNetworkElementsAsync); - dispatch(new UpdateMaintenanceEntry(entry)); - dispatch(new AddSnackbarNotification({ message: `Successfully ${result && result.created ? "created" : "updated"} maintenece sessings for [${entry.mountId}]`, options: { variant: 'success' } })); - }, 900); - }); -}; - -/** Represents an async thunk action creator to delete an element from the maintenence entries. */ -export const removeFromMaintenenceEntrysAsyncActionCreator = (entry: MaintenenceEntry) => (dispatch: Dispatch) => { - maintenenceService.deleteMaintenenceEntry(entry).then(result => { - result && window.setTimeout(() => { - //dispatch(loadAllMountedNetworkElementsAsync); - dispatch(new UpdateMaintenanceEntry({ - [spoofSymbol]: true, - _id: entry._id, - mountId: entry.mountId, - description : "", - start: "", - end: "", - active: false - })); - dispatch(new AddSnackbarNotification({ message: `Successfully removed [${entry.mountId}]`, options: { variant: 'success' } })); - }, 900); - }); -}; - -// Hint: since there is no notification of changed required network elements, this code is not aware of changes caused outiside of this browser. \ No newline at end of file diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src/components/editMaintenenceEntryDialog.tsx b/sdnr/wt/odlux/apps/maintenanceApp/src/components/editMaintenenceEntryDialog.tsx deleted file mode 100644 index 55953f497..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src/components/editMaintenenceEntryDialog.tsx +++ /dev/null @@ -1,194 +0,0 @@ -/** - * ============LICENSE_START======================================================================== - * ONAP : ccsdk feature sdnr wt odlux - * ================================================================================================= - * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved. - * ================================================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - * ============LICENSE_END========================================================================== - */ -import * as React from 'react'; - -import Button from '@material-ui/core/Button'; -import TextField from '@material-ui/core/TextField'; -import Dialog from '@material-ui/core/Dialog'; -import DialogActions from '@material-ui/core/DialogActions'; -import DialogContent from '@material-ui/core/DialogContent'; -import DialogContentText from '@material-ui/core/DialogContentText'; -import DialogTitle from '@material-ui/core/DialogTitle'; - -import { IDispatcher, connect, Connect } from '../../../../framework/src/flux/connect'; - -import { - addOrUpdateMaintenenceEntryAsyncActionCreator, - removeFromMaintenenceEntrysAsyncActionCreator -} from '../actions/maintenenceActions'; - -import { MaintenenceEntry } from '../models/maintenenceEntryType'; -import { FormControl, InputLabel, Select, MenuItem } from '@material-ui/core'; - -export enum EditMaintenenceEntryDialogMode { - None = "none", - AddMaintenenceEntry = "addMaintenenceEntry", - EditMaintenenceEntry = "editMaintenenceEntry", - RemoveMaintenenceEntry = "removeMaintenenceEntry" -} - -const mapDispatch = (dispatcher: IDispatcher) => ({ - addOrUpdateMaintenenceEntry: (entry: MaintenenceEntry) => { - dispatcher.dispatch(addOrUpdateMaintenenceEntryAsyncActionCreator(entry)); - }, - removeMaintenenceEntry: (entry: MaintenenceEntry) => { - dispatcher.dispatch(removeFromMaintenenceEntrysAsyncActionCreator(entry)); - }, -}); - -type DialogSettings = { - dialogTitle: string, - dialogDescription: string, - applyButtonText: string, - cancelButtonText: string, - enableMountIdEditor: boolean, - enableTimeEditor: boolean, -} - -const settings: { [key: string]: DialogSettings } = { - [EditMaintenenceEntryDialogMode.None]: { - dialogTitle: "", - dialogDescription: "", - applyButtonText: "", - cancelButtonText: "", - enableMountIdEditor: false, - enableTimeEditor: false, - }, - [EditMaintenenceEntryDialogMode.AddMaintenenceEntry]: { - dialogTitle: "Add new maintenence entry", - dialogDescription: "", - applyButtonText: "Add", - cancelButtonText: "Cancel", - enableMountIdEditor: true, - enableTimeEditor: true, - }, - [EditMaintenenceEntryDialogMode.EditMaintenenceEntry]: { - dialogTitle: "Edit maintenence entry", - dialogDescription: "", - applyButtonText: "Save", - cancelButtonText: "Cancel", - enableMountIdEditor: false, - enableTimeEditor: true, - }, - [EditMaintenenceEntryDialogMode.RemoveMaintenenceEntry]: { - dialogTitle: "Remove maintenence entry", - dialogDescription: "", - applyButtonText: "Remove", - cancelButtonText: "Cancel", - enableMountIdEditor: false, - enableTimeEditor: false, - }, -} - -type EditMaintenenceEntryDIalogComponentProps = Connect & { - mode: EditMaintenenceEntryDialogMode; - initialMaintenenceEntry: MaintenenceEntry; - onClose: () => void; -}; - -type EditMaintenenceEntryDIalogComponentState = MaintenenceEntry; - -class EditMaintenenceEntryDIalogComponent extends React.Component { - constructor (props: EditMaintenenceEntryDIalogComponentProps) { - super(props); - - this.state = { - ...this.props.initialMaintenenceEntry - }; - } - - render(): JSX.Element { - const setting = settings[this.props.mode]; - return ( - - {setting.dialogTitle} - - - {setting.dialogDescription} - - { this.setState({ mountId: event.target.value }); }} /> - { this.setState({ start: event.target.value }); }} /> - { this.setState({ end: event.target.value }); }} /> - - Active - - - - - - - - - ) - } - - private onApply = (entry: MaintenenceEntry) => { - this.props.onClose && this.props.onClose(); - switch (this.props.mode) { - case EditMaintenenceEntryDialogMode.AddMaintenenceEntry: - entry && this.props.addOrUpdateMaintenenceEntry(entry); - break; - case EditMaintenenceEntryDialogMode.EditMaintenenceEntry: - entry && this.props.addOrUpdateMaintenenceEntry(entry); - break; - case EditMaintenenceEntryDialogMode.RemoveMaintenenceEntry: - entry && this.props.removeMaintenenceEntry(entry); - break; - } - }; - - - private onCancel = () => { - this.props.onClose && this.props.onClose(); - } - - static getDerivedStateFromProps(props: EditMaintenenceEntryDIalogComponentProps, state: EditMaintenenceEntryDIalogComponentState & { _initialMaintenenceEntry: MaintenenceEntry }): EditMaintenenceEntryDIalogComponentState & { _initialMaintenenceEntry: MaintenenceEntry } { - if (props.initialMaintenenceEntry !== state._initialMaintenenceEntry) { - state = { - ...state, - ...props.initialMaintenenceEntry, - _initialMaintenenceEntry: props.initialMaintenenceEntry, - }; - } - return state; - } - -} - -export const EditMaintenenceEntryDIalog = connect(undefined, mapDispatch)(EditMaintenenceEntryDIalogComponent); -export default EditMaintenenceEntryDIalog; \ No newline at end of file diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src/handlers/maintenanceAppRootHandler.ts b/sdnr/wt/odlux/apps/maintenanceApp/src/handlers/maintenanceAppRootHandler.ts deleted file mode 100644 index aa0fb758b..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src/handlers/maintenanceAppRootHandler.ts +++ /dev/null @@ -1,44 +0,0 @@ -/** - * ============LICENSE_START======================================================================== - * ONAP : ccsdk feature sdnr wt odlux - * ================================================================================================= - * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved. - * ================================================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - * ============LICENSE_END========================================================================== - */ -// main state handler - -import { combineActionHandler } from '../../../../framework/src/flux/middleware'; - -import { IApplicationStoreState } from '../../../../framework/src/store/applicationStore'; - -import { IConnectAppStoreState } from '../../../connectApp/src/handlers/connectAppRootHandler'; - -import { IMaintenenceEntriesState, maintenenceEntriesActionHandler } from './maintenenceEntriesHandler'; - -export interface IMaintenanceAppStoreState { - maintenenceEntries : IMaintenenceEntriesState -} - -declare module '../../../../framework/src/store/applicationStore' { - interface IApplicationStoreState { - maintenance: IMaintenanceAppStoreState, - connect: IConnectAppStoreState - } -} - -const actionHandlers = { - maintenenceEntries: maintenenceEntriesActionHandler -}; - -export const maintenanceAppRootHandler = combineActionHandler(actionHandlers); -export default maintenanceAppRootHandler; diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src/handlers/maintenenceEntriesHandler.ts b/sdnr/wt/odlux/apps/maintenanceApp/src/handlers/maintenenceEntriesHandler.ts deleted file mode 100644 index 4ae8baa38..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src/handlers/maintenenceEntriesHandler.ts +++ /dev/null @@ -1,57 +0,0 @@ -/** - * ============LICENSE_START======================================================================== - * ONAP : ccsdk feature sdnr wt odlux - * ================================================================================================= - * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved. - * ================================================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - * ============LICENSE_END========================================================================== - */ -import { IActionHandler } from '../../../../framework/src/flux/action'; - -import { MaintenenceEntry } from '../models/maintenenceEntryType'; -import { LoadAllMainteneceEntriesAction, AllMainteneceEntriesLoadedAction, UpdateMaintenanceEntry } from '../actions/maintenenceActions'; - -export interface IMaintenenceEntriesState { - entries: MaintenenceEntry[]; - busy: boolean; -} - -const maintenanceEntriesStateInit: IMaintenenceEntriesState = { - entries: [], - busy: false -}; - -export const maintenenceEntriesActionHandler: IActionHandler = (state = maintenanceEntriesStateInit, action) => { - if (action instanceof LoadAllMainteneceEntriesAction){ - state = { - ...state, - busy: true, - } - } else if (action instanceof AllMainteneceEntriesLoadedAction){ - state = { - ...state, - entries: action.maintenenceEntries || [], - busy: false, - } - } else if (action instanceof UpdateMaintenanceEntry) { - const index = state.entries.findIndex(e => action.maintenenceEntry.mountId === e.mountId); - state = { - ...state, - entries: index > -1 ? [ - ...state.entries.slice(0, index), - action.maintenenceEntry, - ...state.entries.slice(index+1), - ] : [...state.entries, action.maintenenceEntry] - } - } - return state; -} \ No newline at end of file diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src/index.html b/sdnr/wt/odlux/apps/maintenanceApp/src/index.html deleted file mode 100644 index c84aecee1..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src/index.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - Minimal App - - - -
- - - - - - \ No newline at end of file diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src/models/maintenenceEntryType.ts b/sdnr/wt/odlux/apps/maintenanceApp/src/models/maintenenceEntryType.ts deleted file mode 100644 index f90d300be..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src/models/maintenenceEntryType.ts +++ /dev/null @@ -1,45 +0,0 @@ -/** - * ============LICENSE_START======================================================================== - * ONAP : ccsdk feature sdnr wt odlux - * ================================================================================================= - * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved. - * ================================================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - * ============LICENSE_END========================================================================== - */ -/** Represents the elestic search db type for maintenence enrties */ -export type MaintenenceEntryType = { - node: string; - // According to the arrangement from 2019.02.15 there will be currently only one element in the filters array. - filter: [{ - definition: { "object-id-ref": string ,problem: string}, - description: string, - /** The end date for the maintenence mode formated as ISO date string in UTC. */ - end: string, - /** The start date for the maintenence mode formated as ISO date string in UTC. */ - start: string - }], - /** Determines if the filter set is activated or not. */ - active: boolean; -} - -export const spoofSymbol = Symbol("Spoof"); - -/** Represents the type for an maintenence entry. */ -export type MaintenenceEntry = { - [spoofSymbol]?: boolean; - _id: string; - mountId: string; - description: string; - start: string; - end: string; - active: boolean; -} \ No newline at end of file diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src/plugin.tsx b/sdnr/wt/odlux/apps/maintenanceApp/src/plugin.tsx deleted file mode 100644 index e6ab977b3..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src/plugin.tsx +++ /dev/null @@ -1,44 +0,0 @@ -/** - * ============LICENSE_START======================================================================== - * ONAP : ccsdk feature sdnr wt odlux - * ================================================================================================= - * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved. - * ================================================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - * ============LICENSE_END========================================================================== - */ -// app configuration and main entry point for the app - -import * as React from "react"; - -import { faLock } from '@fortawesome/free-solid-svg-icons'; // select app icon - -import applicationManager from '../../../framework/src/services/applicationManager'; - -import { maintenanceAppRootHandler } from './handlers/maintenanceAppRootHandler'; - -import MaintenenceView from "./views/maintenenceView"; - -const App : React.SFC = (props) => { - return -}; - -export function register() { - applicationManager.registerApplication({ - name: "maintenance", - icon: faLock, - rootComponent: App, - rootActionHandler: maintenanceAppRootHandler, - menuEntry: "Maintenance" - }); -} - - diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src/services/maintenenceService.ts b/sdnr/wt/odlux/apps/maintenanceApp/src/services/maintenenceService.ts deleted file mode 100644 index 7da5e912b..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src/services/maintenenceService.ts +++ /dev/null @@ -1,99 +0,0 @@ -/** - * ============LICENSE_START======================================================================== - * ONAP : ccsdk feature sdnr wt odlux - * ================================================================================================= - * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved. - * ================================================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - * ============LICENSE_END========================================================================== - */ -import { requestRest } from '../../../../framework/src/services/restService'; -import { Result, HitEntry, PostResponse, DeleteResponse } from '../../../../framework/src/models/elasticSearch'; - -import { MaintenenceEntryType, MaintenenceEntry } from '../models/maintenenceEntryType'; -import { convertToLocaleString, convertToGMTString } from '../utils/timeUtils'; - -export const maintenenceEntryDatabasePath = "mwtn/maintenancemode"; - -/** - * Represents a web api accessor service for all maintenence entries related actions. - */ -class MaintenenceService { - /** - * Gets all maintenence entries from the backend. - */ - public async getAllMaintenenceEntries(): Promise<(MaintenenceEntry[]) | null> { - const path = `database/${maintenenceEntryDatabasePath}/_search`; - const query = { "query": { "match_all": {} } }; - - const result = await requestRest>(path, { method: "POST", body: JSON.stringify(query) }); - return result && result.hits && result.hits.hits && result.hits.hits.map(me => me._source && me._source.filter[0] && ({ - _id: me._id, - mountId: me._source.node, - description: me._source.filter[0].description, - start: me._source.filter[0].start && convertToLocaleString(me._source.filter[0].start), - end: me._source.filter[0].end && convertToLocaleString(me._source.filter[0].end), - active: me._source.active - })) || null; - } - - /** - * Gets one maintenence entry by its mountId from the backend. - */ - public async getMaintenenceEntryByMountId(mountId: string): Promise<(MaintenenceEntry) | null> { - const path = `database/${maintenenceEntryDatabasePath}/${mountId}`; - - const result = await requestRest & { found: boolean }>(path, { method: "GET" }); - return result && result.found && result._source && result._source.filter[0] && { - _id: result._id, - mountId: result._source.node, - description: result._source.filter[0].description, - start: result._source.filter[0].start && convertToLocaleString(result._source.filter[0].start), - end: result._source.filter[0].end && convertToLocaleString(result._source.filter[0].end), - active: result._source.active - } || null; - } - - /** - * Adds or updates one maintenence entry to the backend. - */ - public async writeMaintenenceEntry(maintenenceEntry: MaintenenceEntry): Promise { - const path = `database/${maintenenceEntryDatabasePath}/${maintenenceEntry._id}`; - const data: MaintenenceEntryType = { - node: maintenenceEntry.mountId, - filter: [ - { - definition: { "object-id-ref": "", problem: "" }, - description: "", - start: convertToGMTString(maintenenceEntry.start), - end: convertToGMTString(maintenenceEntry.end) - } - ], - active: maintenenceEntry.active - }; - - const result = await requestRest(path, { method: "POST", body: JSON.stringify(data) }); - return result || null; - } - - /** - * Deletes one maintenence entry by its mountId from the backend. - */ - public async deleteMaintenenceEntry(maintenenceEntry: MaintenenceEntry): Promise<(DeleteResponse) | null> { - const path = `database/${maintenenceEntryDatabasePath}/${maintenenceEntry._id}`; - - const result = await requestRest(path, { method: "DELETE" }); - return result || null; - } -} - -export const maintenenceService = new MaintenenceService(); -export default maintenenceService; \ No newline at end of file diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src/utils/timeUtils.ts b/sdnr/wt/odlux/apps/maintenanceApp/src/utils/timeUtils.ts deleted file mode 100644 index cdb31e698..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src/utils/timeUtils.ts +++ /dev/null @@ -1,39 +0,0 @@ -/** - * ============LICENSE_START======================================================================== - * ONAP : ccsdk feature sdnr wt odlux - * ================================================================================================= - * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved. - * ================================================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - * ============LICENSE_END========================================================================== - */ -export function convertToGMTString(dateString: string): string { - const date = new Date(dateString); - const pad = (n: number) => (n < 10) ? '0' + n : n; - - return date.getUTCFullYear() + - '-' + pad(date.getUTCMonth() + 1) + - '-' + pad(date.getUTCDate()) + - 'T' + pad(date.getUTCHours()) + - ':' + pad(date.getUTCMinutes()) + - '+00:00'; -} - -export function convertToLocaleString(rawDate: string| number): string { - const date = new Date(rawDate); - const pad = (n: number) => (n < 10) ? '0' + n : n; - - return date.getFullYear() + - '-' + pad(date.getMonth() + 1) + - '-' + pad(date.getDate()) + - 'T' + pad(date.getHours()) + - ':' + pad(date.getMinutes()); -} \ No newline at end of file diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src/views/maintenenceView.tsx b/sdnr/wt/odlux/apps/maintenanceApp/src/views/maintenenceView.tsx deleted file mode 100644 index d68205cd8..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src/views/maintenenceView.tsx +++ /dev/null @@ -1,226 +0,0 @@ -/** - * ============LICENSE_START======================================================================== - * ONAP : ccsdk feature sdnr wt odlux - * ================================================================================================= - * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved. - * ================================================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - * ============LICENSE_END========================================================================== - */ -import * as React from 'react'; - -import { Theme, createStyles, WithStyles, withStyles, Tooltip } from '@material-ui/core'; - -import { faBan } from '@fortawesome/free-solid-svg-icons'; -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; - -import AddIcon from '@material-ui/icons/Add'; -import EditIcon from '@material-ui/icons/Edit'; -import RemoveIcon from '@material-ui/icons/RemoveCircleOutline'; - -import Button from '@material-ui/core/Button'; -import IconButton from '@material-ui/core/IconButton'; - -import connect, { IDispatcher, Connect } from '../../../../framework/src/flux/connect'; -import MaterialTable, { MaterialTableCtorType, ColumnType } from '../../../../framework/src/components/material-table'; -import { IApplicationStoreState } from '../../../../framework/src/store/applicationStore'; - -import { loadAllMountedNetworkElementsAsync } from '../../../connectApp/src/actions/mountedNetworkElementsActions'; - -import { loadAllMainteneceEntriesAsyncAction } from '../actions/maintenenceActions'; -import { MaintenenceEntry, spoofSymbol } from '../models/maintenenceEntryType'; - -import EditMaintenenceEntryDialog, { EditMaintenenceEntryDialogMode } from '../components/editMaintenenceEntryDialog'; -import { convertToLocaleString } from '../utils/timeUtils'; - -const styles = (theme: Theme) => createStyles({ - button: { - margin: 0, - padding: "6px 6px", - minWidth: 'unset' - }, - spacer: { - marginLeft: theme.spacing.unit, - marginRight: theme.spacing.unit, - display: "inline" - } -}); - -const MaintenenceEntriesTable = MaterialTable as MaterialTableCtorType; - -const mapProps = (state: IApplicationStoreState) => ({ - maintenenceEntries: state.maintenance.maintenenceEntries.entries, - busy: state.maintenance.maintenenceEntries.busy -}); - -const mapDispatcher = (dispatcher: IDispatcher) => ({ - onLoadMenteneceEntries: async () => { - await dispatcher.dispatch(loadAllMountedNetworkElementsAsync) - dispatcher.dispatch(loadAllMainteneceEntriesAsyncAction); - } -}); - -const emptyMaintenenceEntry: MaintenenceEntry = { - _id: '', - mountId: '', - description: '', - start: convertToLocaleString(new Date().valueOf()), - end: convertToLocaleString(new Date().valueOf()), - active: false, -}; - -type MaintenenceViewComponentProps = Connect & WithStyles & { - -} - -type MaintenenceViewComponentState = { - maintenenceEntryToEdit: MaintenenceEntry; - maintenenceEntryEditorMode: EditMaintenenceEntryDialogMode; -} - -class MaintenenceViewComponent extends React.Component { - - constructor (props: MaintenenceViewComponentProps) { - super(props); - - this.state = { - maintenenceEntryToEdit: emptyMaintenenceEntry, - maintenenceEntryEditorMode: EditMaintenenceEntryDialogMode.None, - }; - - } - - render() { - const { classes } = this.props; - const addMaintenenceEntryAction = { - icon: AddIcon, tooltip: 'Add', onClick: () => { - const startTime = (new Date().valueOf()); - const endTime = startTime; - this.setState({ - maintenenceEntryToEdit: { - ...emptyMaintenenceEntry, - start: convertToLocaleString(startTime), - end: convertToLocaleString(endTime), - }, - maintenenceEntryEditorMode: EditMaintenenceEntryDialogMode.AddMaintenenceEntry - }); - } - }; - const now = new Date().valueOf(); - return ( - <> - ( - rowData.active && (Date.parse(rowData.start).valueOf() <= now) && (Date.parse(rowData.end).valueOf() >= now) && || null - ) - }, - { property: "active", title: "Activation State", type: ColumnType.boolean, labels: { "true": "active", "false": "not active" }, }, - { property: "start", title: "Start Date", type: ColumnType.text }, - { property: "end", title: "End Date", type: ColumnType.text }, - { property: "actions", title: "Actions", type: ColumnType.custom, customControl : ({ rowData })=>( - <> -
- - -
-
- this.onOpenEditMaintenenceEntryDialog(event, rowData)} > - this.onOpenRemoveMaintenenceEntryDialog(event, rowData)} > -
- - ) }, - ] - } idProperty={'_id'}>
- - - ); - } - - componentDidMount(){ - this.props.onLoadMenteneceEntries(); - } - - private onOpenPlus1hEditMaintenenceEntryDialog = (event: React.MouseEvent, entry: MaintenenceEntry) => { - event.preventDefault(); - event.stopPropagation(); - const startTime = (new Date().valueOf()); - const endTime = startTime + (1 * 60 * 60 * 1000); - this.setState({ - maintenenceEntryToEdit: { - ...entry, - start: convertToLocaleString(startTime), - end: convertToLocaleString(endTime), - }, - maintenenceEntryEditorMode: EditMaintenenceEntryDialogMode.EditMaintenenceEntry - }); - } - - private onOpenPlus8hEditMaintenenceEntryDialog = (event: React.MouseEvent, entry: MaintenenceEntry) => { - event.preventDefault(); - event.stopPropagation(); - const startTime = (new Date().valueOf()); - const endTime = startTime + (8 * 60 * 60 * 1000); - this.setState({ - maintenenceEntryToEdit: { - ...entry, - start: convertToLocaleString(startTime), - end: convertToLocaleString(endTime), - }, - maintenenceEntryEditorMode: EditMaintenenceEntryDialogMode.EditMaintenenceEntry - }); - } - - private onOpenEditMaintenenceEntryDialog = (event: React.MouseEvent, entry: MaintenenceEntry) => { - event.preventDefault(); - event.stopPropagation(); - const startTime = (new Date().valueOf()); - const endTime = startTime ; - this.setState({ - maintenenceEntryToEdit: { - ...entry, - ...(entry.start && endTime) - ? { start: entry.start, end: entry.end } - : { start: convertToLocaleString(startTime), end: convertToLocaleString(endTime)} - }, - maintenenceEntryEditorMode: EditMaintenenceEntryDialogMode.EditMaintenenceEntry - }); - } - - private onOpenRemoveMaintenenceEntryDialog = (event: React.MouseEvent, entry: MaintenenceEntry) => { - event.preventDefault(); - event.stopPropagation(); - const startTime = (new Date().valueOf()); - const endTime = startTime; - this.setState({ - maintenenceEntryToEdit: { - ...entry, - ...(entry.start && endTime) - ? { start: entry.start, end: entry.end } - : { start: convertToLocaleString(startTime), end: convertToLocaleString(endTime) } - }, - maintenenceEntryEditorMode: EditMaintenenceEntryDialogMode.RemoveMaintenenceEntry - }); - } - - private onCloseEditMaintenenceEntryDialog = () => { - this.setState({ - maintenenceEntryToEdit: emptyMaintenenceEntry, - maintenenceEntryEditorMode: EditMaintenenceEntryDialogMode.None, - }); - } -} - -export const MaintenenceView = withStyles(styles)(connect(mapProps, mapDispatcher)(MaintenenceViewComponent)); -export default MaintenenceView; \ No newline at end of file diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src2/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/bundles/MyOdluxBundle.java b/sdnr/wt/odlux/apps/maintenanceApp/src2/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/bundles/MyOdluxBundle.java deleted file mode 100644 index 1e882fc69..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src2/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/bundles/MyOdluxBundle.java +++ /dev/null @@ -1,68 +0,0 @@ -/******************************************************************************* - * ============LICENSE_START======================================================================== - * ONAP : ccsdk feature sdnr wt - * ================================================================================================= - * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved. - * ================================================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - * ============LICENSE_END========================================================================== - ******************************************************************************/ -package org.onap.ccsdk.features.sdnr.wt.odlux.bundles; - -import org.onap.ccsdk.features.sdnr.wt.odlux.model.bundles.OdluxBundle; -import org.onap.ccsdk.features.sdnr.wt.odlux.model.bundles.OdluxBundleLoader; - -public class MyOdluxBundle extends OdluxBundle { - - @Override - public void initialize() { - super.initialize(); - } - - @Override - public void clean() { - super.clean(); - } - - @Override - public String getResourceFileContent(String filename) { - return super.getResourceFileContent(filename); - } - - @Override - public boolean hasResource(String filename) { - return super.hasResource(filename); - } - - @Override - public void setBundleName(String bundleName) { - super.setBundleName(bundleName); - } - - @Override - public void setLoader(OdluxBundleLoader loader) { - super.setLoader(loader); - } - - @Override - public String getBundleName() { - return super.getBundleName(); - } - - @Override - public OdluxBundleLoader getLoader() { - return super.getLoader(); - } - - public MyOdluxBundle() { - super(); - } -} diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src2/main/resources/OSGI-INF/blueprint/blueprint.xml b/sdnr/wt/odlux/apps/maintenanceApp/src2/main/resources/OSGI-INF/blueprint/blueprint.xml deleted file mode 100644 index 2dd79d781..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src2/main/resources/OSGI-INF/blueprint/blueprint.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src2/test/java/org/onap/ccsdk/features/sdnr/wt/odlux/bundles/test/TestBundleRes.java b/sdnr/wt/odlux/apps/maintenanceApp/src2/test/java/org/onap/ccsdk/features/sdnr/wt/odlux/bundles/test/TestBundleRes.java deleted file mode 100644 index d0fbe63c0..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src2/test/java/org/onap/ccsdk/features/sdnr/wt/odlux/bundles/test/TestBundleRes.java +++ /dev/null @@ -1,46 +0,0 @@ -/******************************************************************************* - * ============LICENSE_START======================================================================== - * ONAP : ccsdk feature sdnr wt - * ================================================================================================= - * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved. - * ================================================================================================= - * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except - * in compliance with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software distributed under the License - * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express - * or implied. See the License for the specific language governing permissions and limitations under - * the License. - * ============LICENSE_END========================================================================== - ******************************************************************************/ -package org.onap.ccsdk.features.sdnr.wt.odlux.bundles.test; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; -import org.junit.Test; -import org.onap.ccsdk.features.sdnr.wt.odlux.OdluxBundleLoaderImpl; -import org.onap.ccsdk.features.sdnr.wt.odlux.bundles.MyOdluxBundle; - -public class TestBundleRes { - - @Test - public void test() { - OdluxBundleLoaderImpl loader = OdluxBundleLoaderImpl.getInstance(); - MyOdluxBundle b = new MyOdluxBundle(); - b.setLoader(loader); - b.setIndex(0); - b.setBundleName("abc"); - b.initialize(); - assertTrue(loader.getNumberOfBundles()==1); - assertNotNull(b.getLoader()); - assertEquals("abc",b.getBundleName()); - assertTrue(b.hasResource("test.js")); - assertNotNull(b.getResourceFileContent("test.js")); - b.clean(); - assertTrue(loader.getNumberOfBundles()==0); - } - -} diff --git a/sdnr/wt/odlux/apps/maintenanceApp/src2/test/resources/test.js b/sdnr/wt/odlux/apps/maintenanceApp/src2/test/resources/test.js deleted file mode 100644 index b47fdc39f..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/src2/test/resources/test.js +++ /dev/null @@ -1,5 +0,0 @@ -asdac sad -as -d -sad - sadfa \ No newline at end of file diff --git a/sdnr/wt/odlux/apps/maintenanceApp/tsconfig.json b/sdnr/wt/odlux/apps/maintenanceApp/tsconfig.json deleted file mode 100644 index a66b5d828..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/tsconfig.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "compilerOptions": { - "baseUrl": "./src", - "outDir": "./dist", - "sourceMap": true, - "forceConsistentCasingInFileNames": true, - "allowSyntheticDefaultImports": false, - "allowUnreachableCode": false, - "allowUnusedLabels": false, - "noFallthroughCasesInSwitch": true, - "noImplicitAny": true, - "noImplicitReturns": true, - "noImplicitThis": true, - "strictNullChecks": true, - "pretty": true, - "newLine": "LF", - "module": "es2015", - "target": "es2016", - "moduleResolution": "node", - "experimentalDecorators": true, - "jsx": "preserve", - "lib": [ - "dom", - "es2015", - "es2016" - ], - "types": [ - "prop-types", - "react", - "react-dom" - ] - }, - "exclude": [ - "dist", - "node_modules" - ] -} diff --git a/sdnr/wt/odlux/apps/maintenanceApp/webpack.config.js b/sdnr/wt/odlux/apps/maintenanceApp/webpack.config.js deleted file mode 100644 index 325e70380..000000000 --- a/sdnr/wt/odlux/apps/maintenanceApp/webpack.config.js +++ /dev/null @@ -1,140 +0,0 @@ -/** - * Webpack 4 configuration file - * see https://webpack.js.org/configuration/ - * see https://webpack.js.org/configuration/dev-server/ - */ - -"use strict"; - -const path = require("path"); -const webpack = require("webpack"); -const CopyWebpackPlugin = require("copy-webpack-plugin"); -const TerserPlugin = require('terser-webpack-plugin'); - -// const __dirname = (path => path.replace(/^([a-z]\:)/, c => c.toUpperCase()))(process.__dirname()); - -module.exports = (env) => { - const distPath = path.resolve(__dirname, env === "release" ? "." : "../..", "dist"); - const frameworkPath = path.resolve(__dirname, env === "release" ? "../../framework" : "../..", "dist"); - return [{ - name: "App", - - mode: "none", //disable default behavior - - target: "web", - - context: path.resolve(__dirname, "src"), - - entry: { - maintenanceApp: ["./plugin.tsx"] - }, - - devtool: env === "release" ? false : "source-map", - - resolve: { - extensions: [".ts", ".tsx", ".js", ".jsx"] - }, - - output: { - path: distPath, - filename: "[name].js", - library: "[name]", - libraryTarget: "umd2", - chunkFilename: "[name].js" - }, - module: { - rules: [{ - test: /\.tsx?$/, - exclude: /node_modules/, - use: [{ - loader: "babel-loader" - }, { - loader: "ts-loader" - }] - }, { - test: /\.jsx?$/, - exclude: /node_modules/, - use: [{ - loader: "babel-loader" - }] - }] - }, - - optimization: { - noEmitOnErrors: true, - namedModules: env !== "release", - minimize: env === "release", - minimizer: env !== "release" ? [] : [new TerserPlugin({ - terserOptions: { - warnings: false, // false, true, "verbose" - compress: { - drop_console: true, - drop_debugger: true, - } - } - })], - }, - - plugins: [ - new webpack.DllReferencePlugin({ - context: path.resolve(__dirname, "../../framework/src"), - manifest: require(path.resolve(frameworkPath, "vendor-manifest.json")), - sourceType: "umd2" - }), - new webpack.DllReferencePlugin({ - context: path.resolve(__dirname, "../../framework/src"), - manifest: require(path.resolve(frameworkPath, "app-manifest.json")), - sourceType: "umd2" - }), - ...(env === "release") ? [ - new webpack.DefinePlugin({ - "process.env": { - NODE_ENV: "'production'", - VERSION: JSON.stringify(require("./package.json").version) - } - }), - ] : [ - new webpack.DefinePlugin({ - "process.env": { - NODE_ENV: "'development'", - VERSION: JSON.stringify(require("./package.json").version) - } - }), - new CopyWebpackPlugin([{ - from: 'index.html', - to: distPath - }]), - ] - ], - - devServer: { - public: "http://localhost:3100", - contentBase: frameworkPath, - - compress: true, - headers: { - "Access-Control-Allow-Origin": "*" - }, - host: "0.0.0.0", - port: 3100, - disableHostCheck: true, - historyApiFallback: true, - inline: true, - hot: false, - quiet: false, - stats: { - colors: true - }, - proxy: { - "/restconf": { - target: "http://localhost:3000", - secure: false - }, - "/database": { - target: "http://localhost:3000", - secure: false - } - } - } - }]; -} -- cgit 1.2.3-korg