* add search method to object api
* use object api search
* do not index objects that have a provided search capability
* provide indexed search for objects without a search provider
Changes how object mutation works behind the scenes in order to keep objects in sync automatically when their model changes.
* The way that objects are mutated and observed has not changed, openmct.objects.mutate and openmct.objects.observe should still be used in the same way that they were before.
* Behind the scenes, domain objects that are mutable are wrapped in a new MutableDomainObject that exposes mutator and observer functions that allow objects to be mutated in such a way that all instances can be kept in sync.
* It is now possible to retrieve MutableDomainObjects from the API, instead of regular domain objects. These are automatically updated when mutation occurs on any instance of the object, replacing the need for "*" listeners. Note that the view API now provides objects in this form by default. Therefore, you do not need to do anything differently in views, the domain objects will just magically keep themselves up to date.
* If for some reason you need to retrieve an object manually via openmct.objects.get (you should ask why you need to do this) and you want it to magically keep itself in sync, there is a new API function named openmct.objects.getMutable(identifier). Note that if you do this you will be responsible for the object's lifecycle. It relies on listeners which must be destroyed when the object is no longer needed, otherwise memory leaks will occur. You can destroy a MutableDomainObject and its (internal) listeners by calling openmct.objects.destroyMutable(mutableDomainObject). Any listeners created by calls to openmct.objects.observe need to be cleaned up separately.
* If the composition of a MutableDomainObject is retrieved using the Composition API, all children will be returned as MutableDomainObjects automatically. Their lifecycle will be managed automatically, and is tied to the lifecycle of the parent.
Any MutableDomainObject provided by the Open MCT framework itself (eg. provided to view providers by the View API, or from the composition API) will have its lifecycle managed by Open MCT, you don't need to worry destroying it.
* WIP
* Reverting some files
* reverting
* using type from model, instead of passing in separately
* reverting to remove query lite from search aggregator, as it is no longer necessary
* removing erroneous properties from legacy search results
* removed unnecessary parameters for type since it is included in the model and we have acces too that
* missed one
* removed empty space
* removed unneccessary code
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
* WIP: added new move action plugin, added to default plugins in mct.js
* WIP: removed old move action and references, added new root action, working, needs tess
* added tests for move action
* removing focused tests
* WIP
* using composition collection now, optimized some calls
* removed test for removed function
* minor spec change, format only
* updated for new action registration and 3 dot
* removing comments
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
* WIP: refactoring legacy dulicate action
* WIP: debugging duplicate duplicates...
* WIP: fixed duplicate duplicates issue
* added unit tests
* removing old legacy copyaction and renaming duplicate action
* removing fdescribe
* trying to see if a done callback fixes testing issues
* fixed tests
* testing autoflow tests on server
* tweaked autoflow tests to stop failing
* minor updates for new 3 dot menu
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
* working proto for font size
* wip
* Font styling
- Base classes for font-size and font;
- WIP!
* working data attribute for fontsize
* Font styling
- Add `js-style-receiver` to markup, refine style targeting JS for
better application of styles;
- Refinements to font and size CSS;
- WIP!
* Font styling
- Redo CSS to use `data-*` attributes;
- New `u-style-receiver` class for use as font-size and font-family CSS
selector target;
- New `js-style-receiver` class for use as JS target by ObjectView.vue;
- New classes added to markup in all Open MCT views;
- Changed font-size values from 'is-font-size--*' to just the number;
- Some refinement to individual views to account for font-sizing
capability;
- Removed automatic font-size 13px being set by SubobjectView.vue;
- WIP!
* working mixed styles
* Font styling
- Added `u-style-receiver` to TelemetryView.vue;
- Added `icon-font-size` to Font Size dropdown button;
- TODO: better font-size icon;
* working font-family
* Font styling
- Art for `icon-font-size` glyph updated;
- Redefined glyph usage in some Layout toolbar buttons;
- Updated font-size and font dropdown menus options text;
* Font styling
- Refined font-size and font dropdown values;
- Fixed toolbar-select-menu.vue to remove 'px' from non-specific option
return;
* dont allow font styling on layouts that contain other layouts
* fix lint warning
* add sizing row
* fix bug with column width sizing
* fix bug with header style
* add saved styles inspector view
* WIP
* add vue component for selector
* WIP styles manager to communicate between vue components
* WIP saving and persisting styles
* no duplicate styles prevention
* fix props syntax
* WIP can apply conditional styles
* static styles do not work yet
* display border color in saved styles swatch
* allow deleting styles except default style
* WIP apply static style works but also to layout...
* prevent additional StylesView from being created
* delete style message
* change save order
* move applystyle to selector component
* rename for consistency
* naming refactor
* add style description
* update style properties only if they exist and do not erase properties
* refactor singleton usage
refactor save method
* show save and delete only on hover
* do not show delete icon if not in edit mode
* normalize styles before saving
prevent apply style if conditional and static styles are simultaneously selected
* remove default style
tweak selector display
* allow conditional and static styles to have saved style applied
limit saved styles to 20
* refactor styles manager
remove openmct dependency
use provide/inject
* resolve merge conflicts
* lint fix
* reorganize styles
* add font style editor to styles view
* save and display border correctly in saved styles view
* WIP add font styling controls to inspector styles view
* add font constants
* WIP refactor to provide reactive props
fix locked for edit
* WIP display consolidated font styles for selection in editor
* WIP font styles saved to layout
* WIP persisting font styles from inspector works
* fix styleable check
* move logic up to stylesview because save is two part
* apply font style to thumb
* there can be only one
* show font style for native views
* linting fix
* push stylesManager work to StylesView
* move method to computed
* move constant definition outside of function call
* Styling for saved styles functionality WIP
- Simplified and removed unnecessary markup;
- Standardized style applied to saved style element and toolbar control;
- Removed saved style expand arrow and description, replaced with item
title / tooltip approach;
- Standardized width of `c-style-thumb` element;
- Moved font size and style controls to the designed location;
* Styling for saved styles functionality WIP
- Layout and CSS normalization between style editor control and saved
style preview element;
- Control alignment refined;
- Moved font size and style controls to the designed location;
* Styling for saved styles functionality WIP
- Update font size icon art to normalize size;
- Sanding, tweaking, alignin and layout in style controls area of
Inspector;
* Styling for saved styles functionality WIP
- Hide the font size and style menu buttons unless the user is editing;
* remove font controls from toolbar
* turn styles tab into multipane element
* lint fix
* no font style should not be viewed as non-specific
* delete saved style by index not style
* cleanup
* view and inspector view updates on initial font change
* revert computed back to method
* set initial height
* fix test after removing 2 buttons from toolbar
* fix hidden lint error
* fix lint
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
Co-authored-by: charlesh88 <charlesh88@gmail.com>
* Strip mct namespace from ids when getting models from cache
* Revert PersistenceCapability to use legacy code
Enforce empty namespace for LegacyPersistenceAdapter for new object providers
* Reverts change to caching provider
* CouchObject provider is registered with the mct space.
When saving objects via the persistence capability use the mct space to find the couchdb object provider
* Update persistence capability to use object api get
* Getting objects using the legacy object service provider will use the defaultSpace if necessary
* (WIP) Adds Plan view and visualization of activities on different rows
* Updates to show activities in the right rows
* Improve algorithm to get activityRow for next activity
* When activities have names that are longer than their width, show the name outside the activity rectangle
* Remove Activity component as we don't need it right now
* Use canvas to draw activities instead of svg for performance
* Retain SVG version if needed
* Include text when calculating overlap
* Fix padding, text positioning
* Add colors for activities
* Fixed bug - Rectangle was shrinking as time passed
Draw using SVG
* Adds performance activities
* [WIP] Refactoring code to be more readable
* Fix issues with activity layout
* Adds draft for groups
* Adds x-offset for groups
* Draw a "now" marker for the canvas
* Fix formatting for the timeline
* Adds now line for the timeline
* Add ability to upload a plan json file.
* Add tests for the Plan view
* Fix issue with File Type checking
add resizing for timeline view plans
* Refactor code to be more readable
* Fix tests that are failing on circleCI
* Fix icon for timeline view
* update generic search compostion load to new version for testing
* logging
* removing logging adding check for undefined child
* reverting genericsearchprovider
* testing using object service instead of modelservice for search
* modified the animations for sliding children in and out to be more reliable, pr updates
* removing unneccessary code
* upgrade to ESLintv7, added overrides for rules violated
* removed overrides for spec files
* fixed no-prototype-builtins issues
* added rules for default-case-last, default-param-last, grouped-accessor-pairs, no-constructor-return, and added override for one violation
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
* Updated library versions
* Use Karma alternative spec loading
* Fixed memory leak in URLTimeSettingsSynchronizer
* Introduce mock DataTransfer object to fix issue with firefox headless
* make resetApplicationState return a promise
* Remove BeforeAll
* Do not throw an error if root returns no children
* Adding missing parameters to ES tests
* Fixed TransactionService bug
* bump test coverage up to 64%
* no-implicit-coercion and no-unneeded-ternary
* End every line with a semicolon
* Spacing and formatting
* Enabled semi-spacing
* Applies npm run lint:fix to code after master merge
* Fix merge issues
* Switched operator-linebreak to 'before'
Co-authored-by: Joshi <simplyrender@gmail.com>
- Added min-width and min-height to Display Layout lines to allow
easier selection and move when line is purely vertical or horizontal;
- Fixed spacing, size and icon of overlay close button;
* UI enhancements for #3176
- Large overlay now displays fullscreen;
* UI enhancements for #3176
- Adding new ".is-in-small-container" CSS - VERY WIP!
- TODO: fix table implementation;
* UI fixes for NIRVSS client #170
- Hide table header filter inputs when table is in small container;
* UI fixes for NIRVSS client #170
- Fixing legends and plot layout when small, and within a stacked plot;
- Add new `hideLegendWhenSmall` property;
- Remove 'hidden' from plot legend position options;
- Reduced opacity of tabular headers in Espresso theme;
- VERY, VERY WIP right now!
* UI fixes for NIRVSS client #170
- Fixing legends and plot layout when small, and within a stacked plot;
- Cleanups, indention, removed commented CSS;
- Tightened up spacing in plot Y axis;
* UI enhancements for #3176
- Move local controls for plots and imagery, prevent overlapping with
view large button when in a hidden frame in a layout;
- Finesse local control styling for increased legibility;
- Move l-state-indicators to avoid overlap with repositioned local
controls, finesse styling;
* UI enhancements for #3176
- Tweak large overlay close button for better visual alignment;
* UI enhancements for #3176
- Significant improvements to lines in Display Layouts;
- Increased border-width for lines and boxes;
- Code enhanced for proper handling of horizontal and
vertical lines - but still isn't working properly;
- Renamed box-view.scss to box-and-line-views.scss;
- VERY WIP!
* Fixed incorrect grid array reference
* UI enhancements for #3176
- Fixed final issue with Display Layout line drawing object, thank you
@deeptailor!;
* UI enhancements for #3176
- Contrast enhancements and markup normalization for `c-object-label`
elements in main view, Layout frames, Inspector and overlay;
- Enhanced `l-overlay-large` layout;
- Tightened up margins and spacing in plots;
- Refined `is-paused` styling in Telemetry Tables;
- Now hide Telemetry Tables 'Export Data' button if rows are selected,
which use a separate export button;
- Layout frames now hide button's text labels when small;
- Layout frames spacing tightened up and improved;
* UI enhancements for #3176
- Tweak Snow theme constants;
* UI enhancements for #3176
- Fixed ObjectFrame getOverlayElement method, added a wrapper div
around the viewed object to properly control resulting layout in the
overlay;
- Simplified preview CSS to remove background, border and padding;
- Layout tweaks to add space between scrollbar and thumbs in Imagery
view;
- Removed dev "-info" element in LineView.vue;
* UI enhancements for #3176
- Improved styling for 'edit lock' button;
* UI enhancements for #3176
- Show Display Layout frame "-move" bar on hover, rather than select, to
make it easier to select items with hidden frames, and only show -move
bar's drag grippy when that frame is selected;
- `pointer-events: none` applied to table's body and plot's plot areas
when placed in a Layout and being edited, prevents distracting
interactions (plot zoom/pan, table row selection) when selecting and
moving elements in a Layout;
- Refined hover styles for c-button to use $filterHov, simplified and
normalized hover styling;
- Converted a number of old `<a>` tags to `<buttons>` to normalize
styling and use the appropriate control;
- Edit lock button is now colored when locked;
* Fix linting issue
* Minor tweaks
- Tweaked control positioning;
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
* Implement 'save' method in Object API
* Refactor legacy persistence code to work with new save object API
* Added 'isPersistable' check to object API
* Fixed incompatibility between object API changes and composition policies
* Make save method private
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
* Missing objects styling WIP
- Grabbing prior work from `missing-items` branch;
* Missing objects styling WIP
- Grabbing prior work on hover and missing theme constants from
`missing-items` branch;
- Refined theme constants values;
- Renamed relevant mixins and classes from "isUnknown" to "isMissing";
- Applied new hover and missing/unknown styling to Folder-view grid
items;
* Missing objects styling WIP
- Significant refinements and additions to `is-missing`;
- Normalize object type icons as a markup `*__type-icon` to support
styling and positioning of `is-missing__indicator` as a markup element;
- Application to tree items, l-browse-bar in main view, c-object-label,
grid view;
- Change hover approach in grid-items and tree to use filters;
* Missing objects styling WIP
- Styles added to object-name component in Inspector, markup simplified;
- Styles added to Tabs view;
* Missing objects styling WIP
- Simplified and consolidated `is-missing` approach into
`.c-object-label` class;
- Modded `.c-object-label` class to use flex 1 1 auto, instead of 0 1
auto - be on the outlook for regression problems!;
- TODO: wire up `is-missing` for real and Folder List view;
* Missing objects styling WIP
- Added `is-missing` styling to Folder list view;
- Cleanups, simplification and normalization with tree items in
list-item and list-view.scss;
- Using `c-object-label` now in Folder list view;
- Removed too-broad `<a>` color definition in table.scss;
* Missing objects styling WIP
- `is-missing` added to layout frames, with support for hidden
frames and telemetry views.
- Further styles enhancement;
- Continued added wiring points into markup;
* Missing objects styling WIP
- `is-missing` added to mct-plot;
- Significant improvements for cursor lock indicators in plots;
* Missing objects styling WIP
- Plot legend fixes, added overflow scrolling for collapsed and expanded
legends;
- Removed conmmented code;
* Wire up 'is-missing'
- Added property checks on domainObject for status 'missing';
* Fix linting issues
* remove carat from eslint package
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
* working lock and unlock
* prevent flexible layout drop hints from showing
* fix lint issue
* wip
* disable mousedown when not editing in DisplayLayout
* continued wip
* Cherrypick new glyphs from add-new-glyphs-062320
* More new glyphs, updated art
- New glyphs: icon-unlocked and icon-target;
- Updated art for icon-lock glyph;
* Edit toggle refinements WIP
- Markup, CSS in BrowseBar.vue;
* More new glyphs, updated art
- New glyphs: icon-unlocked and icon-target;
- Updated art for icon-lock glyph;
* Edit toggle refinements
- Replaced toggle switch with button;
* prevent styling changes when locked
* fix lint issues
* fix tests
* make reviewer suggested changes
Co-authored-by: charlesh88 <charlesh88@gmail.com>
[Notifications] Need a clear all notifications option #3006
* create new notifications indicator in vue, and sunset old one
* add notifications list overlay
* working notifications
* add support for progress notifications
* update percentage on mounted
* Markup cleanups in new Vue Notifications files
- Removed unneeded markup and class wrappers;
- Removed unneeded inline styling;
* remove example notifications
* fix lint errors
* make reviewer requested changes, remove old not needed files, add test
* update testTools to testUtils
Co-authored-by: charlesh88 <charlesh88@gmail.com>
* Upgrades lodash
* Replaces some usage of lodash with native functions.
* Adds linting to catch cases where native functions could be used instead of lodash functions
* Renamed testTools to testUtils
Co-authored-by: Joshi <simplyrender@gmail.com>
Co-authored-by: David Tsay <david.e.tsay@nasa.gov>
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
* successfully upgraded to v1.6 with $compileProvider.preAssignBindingsEnabled(true)
* removed $compileProvider.preAssignBindingsEnabled(true), wrapped constructors for plot and chart inside onInit function
Co-authored-by: Andrew Henry <akhenry@gmail.com>
* Save and Finish blocking modal dialog Refactor and Styles #2500
* created new template for ProgressDialogComponent
* Tweaks for #2501
- Normalized dialog icon size;
- Enhanced text formatting in dialog;
- Changed "Saving..." to remove ellipsis;
* Initial commit of telemetry table spec
* Fix errors found by running Open MCT app headless
* Do not double install import-export plugin
* Changes to allow Open MCT to be initialized more than once without binding to window.document
* Remove table spec accidentally added
* Misc UI 10
- Add .c-input--sm CSS class for VISTA auto-clear input;
* Misc UI 10
- WIP!
- Add new glyohs: suitcase and clear data;
- Change icon-database to icon-suitcase;
- Need to unit test!
* Misc UI 10
- Refinements to shell__head Indicators layout;
- Refinements to collapse-buttons;
- Better color for Snow theme caution;
* Misc UI 10
- Better Open MCT logo for Snow theme;
- Renamed logo-app.svg to logo-openmct.svg;
- Removed unused image files;
* Misc UI 10
- Remove title attr from Angular indicator, interferes with hover
element;
* Misc UI 10
- Fix favicons, updated art;
- Removed favicon.ico;
* Misc UI 10
- Rebuild of Icomoon JSON file, which appeared to have gotten
damaged, probably due to merging;
- Font files updated, added .svg font back to repo;
- Font metrics modified to now use 20% baseline height;
* Misc UI 10
- Fix class in plot for control-bar element;
- Fix CSS in ObjectFrame.vue;
* Misc UI 10
- Rename folder styles-new to styles;
* Misc UI 10
- Remove unused src/fonts folder;
* Misc UI 10
- Symbols font now using baseline of 20%;
* first proto of global clear, working on tables
* global clear works on plots
* styling
* Status bar migration to top of layout, WIP
- Refine and remove legacy styles for Indicators;
- Significant cleanup in Indicator markup;
- Remove unnecessary wrapper component StatusBar.vue;
- Move collapse-button styles to a more general location in _controls
.scss;
- New hasMenu mixin to allow easier application of disclosure control
styling;
* Status bar migration to top of layout, WIP
- Refine styles and markup for Indicators;
- Better separation of styles for clickable and non-clickable
Indicators;
* Status bar migration to top of layout, WIP
- Added tracking style to indicator-template;
- Moved click action to button in label of globalClearIndicator;
- Removed unnecessary markup in Indicators.vue;
- Commented out __head collapse button for now in Layout.vue;
* Status Bar Migration WIP
- Significant progress styling Indicators and their hover bubbles;
- Pull back from clickable Indicators to hover approach;
- Better theme-based constants for Indicator menu-related colors;
* Status Bar Migration WIP
- Significant refactor of label element naming in multiple indicator
markup files;
- Refactor label-related CSS;
- Better class naming: no-collapse > no-minify;
- Refactor example *-launch files to use buttons instead of <a> tags;
- Significant progress on expanding shell head and button styling;
* Status Bar Migration WIP
- Cleanups, sanding on Indicator CSS;
- Added local storage retention for head expanded state;
- Adjust dark theme colors for $colorWarningHi for better legibility;
- Other minor tweaks and fixes;
* Status Bar Migration WIP
- Suppress background in Indicators;
- Restore Snow as default theme;
* add a local clear action, rename plugin
* objectViews extends eventemitter, table view provider provides an onClearData function that is called from ObjectView when clear event is emitted. TODO - support plots
* add support for plots via legacy view provider
* add test for clearDataAction
* remove focus from test file
* install the following plugins by default:
Import Export
Folder View
Tabs View
Flexible Layout
LAD Table
Go To Original Action
* update test to include plugin level tests
* remove focus from unit test
* check composition policy before importing into parent
* use alert icon and improve message
* add a but in message
* change alert message to a more generic sentence:
* add a period