
This change allows Airship UI to be integrated with external dashboards (i.e. ceph-mgr dashboard, Octant, Horizon, openATTIC) by specifying their service URLs in $HOME/.airshipui/plugins.json Change-Id: I1d2fe9f558f0455cf3df6fef4cad2f2690d62b94
71 lines
2.2 KiB
JavaScript
Executable File
71 lines
2.2 KiB
JavaScript
Executable File
/*
|
|
Copyright (c) 2020 AT&T. 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
|
|
|
|
https://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.
|
|
*/
|
|
const { app, BrowserWindow } = require('electron')
|
|
|
|
function createWindow () {
|
|
// Create the browser window.
|
|
const win = new BrowserWindow({
|
|
webPreferences: {
|
|
nodeIntegration: true,
|
|
webviewTag: true
|
|
},
|
|
show: false
|
|
})
|
|
|
|
// start electron maximized
|
|
win.maximize();
|
|
win.show();
|
|
|
|
// disable the default menu bar
|
|
//win.setMenu(null);
|
|
|
|
// and load the index.html of the app.
|
|
win.loadFile('index.html')
|
|
|
|
// Open the DevTools.
|
|
// win.webContents.openDevTools()
|
|
}
|
|
|
|
// This method will be called when Electron has finished
|
|
// initialization and is ready to create browser windows.
|
|
// Some APIs can only be used after this event occurs.
|
|
app.whenReady().then(createWindow)
|
|
|
|
// Quit when all windows are closed.
|
|
app.on('window-all-closed', () => {
|
|
// On macOS it is common for applications and their menu bar
|
|
// to stay active until the user quits explicitly with Cmd + Q
|
|
if (process.platform !== 'darwin') {
|
|
app.quit()
|
|
}
|
|
})
|
|
|
|
app.on('activate', () => {
|
|
// On macOS it's common to re-create a window in the app when the
|
|
// dock icon is clicked and there are no other windows open.
|
|
if (BrowserWindow.getAllWindows().length === 0) {
|
|
createWindow()
|
|
}
|
|
})
|
|
|
|
// SSL/TSL: not a great idea, but this will allow linking to external dashboards
|
|
// that use self-signed certs for dev purposes. Electron will simply show a blank
|
|
// page with no errors in the console log if it encounters a self-signed cert
|
|
app.on('certificate-error', (event, webContents, url, error, certificate, callback) => {
|
|
event.preventDefault();
|
|
callback(true);
|
|
})
|