diff --git a/app.js b/app.js index bf8e65c0c2..07ee786438 100644 --- a/app.js +++ b/app.js @@ -16,7 +16,7 @@ const request = require('request'); // Defaults options.port = options.port || options.p || 8080; -options.host = options.host || options.h || 'localhost' +options.host = options.host || options.h || 'localhost'; options.directory = options.directory || options.D || '.'; // Show command line options diff --git a/index.html b/index.html index ff3a38cfe3..0a315e4f9d 100644 --- a/index.html +++ b/index.html @@ -75,6 +75,7 @@ })); openmct.install(openmct.plugins.SummaryWidget()); openmct.install(openmct.plugins.Notebook()); + openmct.install(openmct.plugins.FolderView()); openmct.time.clock('local', {start: -THIRTY_MINUTES, end: 0}); openmct.time.timeSystem('utc'); openmct.start(); diff --git a/src/plugins/folderView/FolderGridView.js b/src/plugins/folderView/FolderGridView.js new file mode 100644 index 0000000000..e8b4149d04 --- /dev/null +++ b/src/plugins/folderView/FolderGridView.js @@ -0,0 +1,67 @@ +/***************************************************************************** + * Open MCT, Copyright (c) 2014-2018, United States Government + * as represented by the Administrator of the National Aeronautics and Space + * Administration. All rights reserved. + * + * Open MCT is 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. + * + * Open MCT includes source code licensed under additional open source + * licenses. See the Open Source Licenses file (LICENSES.md) included with + * this source code distribution or the Licensing information page available + * at runtime from the About dialog for additional information. + *****************************************************************************/ + +define([ + './components/GridView.vue', + 'vue' +], function ( + GridViewComponent, + Vue +) { + function FolderGridView(openmct) { + return { + key: 'grid', + name: 'Grid Vue', + cssClass: 'icon-thumbs-strip', + canView: function (domainObject) { + return domainObject.type === 'folder'; + }, + view: function (domainObject) { + let component; + + return { + show: function (element) { + component = new Vue({ + components: { + gridViewComponent: GridViewComponent.default + }, + provide: { + openmct, + domainObject + }, + el: element, + template: '' + }); + }, + destroy: function (element) { + component.$destroy(); + component = undefined; + } + }; + }, + priority: function () { + return 1; + } + }; + } + return FolderGridView; +}); diff --git a/src/plugins/folderView/FolderListView.js b/src/plugins/folderView/FolderListView.js new file mode 100644 index 0000000000..d1b93c0004 --- /dev/null +++ b/src/plugins/folderView/FolderListView.js @@ -0,0 +1,70 @@ +/***************************************************************************** + * Open MCT, Copyright (c) 2014-2018, United States Government + * as represented by the Administrator of the National Aeronautics and Space + * Administration. All rights reserved. + * + * Open MCT is 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. + * + * Open MCT includes source code licensed under additional open source + * licenses. See the Open Source Licenses file (LICENSES.md) included with + * this source code distribution or the Licensing information page available + * at runtime from the About dialog for additional information. + *****************************************************************************/ + +define([ + './components/ListView.vue', + 'vue', + 'moment' +], function ( + ListViewComponent, + Vue, + Moment +) { + function FolderListView(openmct) { + return { + key: 'list-view', + name: 'List Vue', + cssClass: 'icon-list-view', + canView: function (domainObject) { + return domainObject.type === 'folder'; + }, + view: function (domainObject) { + let component; + + return { + show: function (element) { + component = new Vue({ + components: { + listViewComponent: ListViewComponent.default + }, + provide: { + openmct, + domainObject, + Moment + }, + el: element, + template: '' + }); + }, + destroy: function (element) { + component.$destroy(); + component = undefined; + } + }; + }, + priority: function () { + return 1; + } + }; + } + return FolderListView; +}); diff --git a/src/plugins/folderView/components/GridView.vue b/src/plugins/folderView/components/GridView.vue new file mode 100644 index 0000000000..f303979bd9 --- /dev/null +++ b/src/plugins/folderView/components/GridView.vue @@ -0,0 +1,207 @@ + + + + + diff --git a/src/plugins/folderView/components/ListView.vue b/src/plugins/folderView/components/ListView.vue new file mode 100644 index 0000000000..12ef2f5afb --- /dev/null +++ b/src/plugins/folderView/components/ListView.vue @@ -0,0 +1,215 @@ + + + + + \ No newline at end of file diff --git a/src/plugins/folderView/plugin.js b/src/plugins/folderView/plugin.js new file mode 100644 index 0000000000..8a46f9ee27 --- /dev/null +++ b/src/plugins/folderView/plugin.js @@ -0,0 +1,36 @@ +/***************************************************************************** + * Open MCT, Copyright (c) 2014-2018, United States Government + * as represented by the Administrator of the National Aeronautics and Space + * Administration. All rights reserved. + * + * Open MCT is 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. + * + * Open MCT includes source code licensed under additional open source + * licenses. See the Open Source Licenses file (LICENSES.md) included with + * this source code distribution or the Licensing information page available + * at runtime from the About dialog for additional information. + *****************************************************************************/ + +define([ + './FolderGridView', + './FolderListView' +], function ( + FolderGridView, + FolderListView +) { + return function plugin() { + return function install(openmct) { + openmct.objectViews.addProvider(new FolderGridView(openmct)); + openmct.objectViews.addProvider(new FolderListView(openmct)); + }; + }; +}); diff --git a/src/plugins/plugins.js b/src/plugins/plugins.js index 84922015ba..2d98437c63 100644 --- a/src/plugins/plugins.js +++ b/src/plugins/plugins.js @@ -34,7 +34,8 @@ define([ './plot/plugin', './telemetryTable/plugin', './staticRootPlugin/plugin', - './notebook/plugin' + './notebook/plugin', + './folderView/plugin' ], function ( _, UTCTimeSystem, @@ -49,7 +50,8 @@ define([ PlotPlugin, TelemetryTablePlugin, StaticRootPlugin, - Notebook + Notebook, + FolderView ) { var bundleMap = { LocalStorage: 'platform/persistence/local', @@ -159,6 +161,7 @@ define([ plugins.TelemetryMean = TelemetryMean; plugins.URLIndicator = URLIndicatorPlugin; plugins.Notebook = Notebook; + plugins.FolderView = FolderView; return plugins; }); diff --git a/src/plugins/telemetryTable/components/table.vue b/src/plugins/telemetryTable/components/table.vue index 6bf02d5c61..b22f443a19 100644 --- a/src/plugins/telemetryTable/components/table.vue +++ b/src/plugins/telemetryTable/components/table.vue @@ -9,7 +9,7 @@ -
+
@@ -68,48 +68,22 @@