* Added click event to simple indicator
* Moved operator status plugin to Open
* Implementing user role status API
* Support adding indicators asynchronously
* Adding user status API
* Updated example user provider
* Update icon with status
* Adding admin indicator
* Apply config options
* Set status class on indicator. Clear all statuses
* Show poll question in op stat indicator
* Implementing status summary
* Get statuses from providers. Reset statuses when poll question set
* Styling for operator status
- New icon glyph - IMPORTANT: OVERRIDE ANY MERGE CONFLICTS USING THIS COMMIT!
- Fixed erroneous font glyph mapping;
- Added default color for indicator icon;
- Changed user indicator to display response when set to other than "NO_STATUS".
- Standardized icon display.
* Cherrypick symbols font updates from restricted-notebook branch. This is the most full and complete version of the symbols font - OVERRIDE ANY MERGE CONFLICTS WITH THIS COMMIT!
* Fix positioning of popups
* Also fix positioning of status indicator
* Get roles by status instead of users
* Refactor how status summary is determined to simplify API
* Re-fetch status summary on status change
* Implemented status reset
* Move status into separate API
* Refactor user status to its own sub-API
* Create RAF utility class
* Error handling
* Add copyright notices
* Fix test issues
* Added jsdocs
* Additional tests for raf utility function
* Move status style configuration into Open
* Move styling from the API into the view
* Added some docs
* Added some unit tests and fixed a bug found in the process. Tests work\!
Co-authored-by: Andrew Henry <akhenry@gmail.com>
* Release 2.0.3
* Fix tick values for plots ticks in log mode and null check (#5119)
* [2297] When there is no display range or range, skip setting the range value when auto scale is turned off.
* If the formatted value is a number and a float, set precision to 2 decimal points.
* Fix value assignment
* Use whole numbers in log mode
* Revert whole numbers fix - need floats for values between 0 and 1.
* Handle scrolling to focused image on resize/new data (#5121)
* Scroll to focused image when view resizes - this will force scrolling to focused image when going to/from view large mode
* Scroll to the right if there is no paused focused image
* [LAD Tables] Use Telemetry Collections (#5127)
* Use telemetry collections to handle bounds checks
* added telemetry collection to alphanumeric telemetry view (#5131)
* Added animation styling for POS and CAM; adjusted cutoff for isNewImage (#5116)
* Added animation styling for POS and CAM; adjusted cutoff for isNewImage
* Remove animation from POS and CAM
* Fix transactions overwriting latest objects with stale objects on save (#5132)
* use object (map) instead of set to track dirty objects
* fix tests due to internals change
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
* Gauge edit enabled 2.0.3 (#5133)
* Gauge plugin #4896, add edit mode
* Dynamic dial-type Gauge sizing by height and width (#5129)
* Improve sizing strategy for gauges.
* Do not install gauge by default for now
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Jamie Vigliotta <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
* [Telemetry Collections] Include data with start and end bounds (#5145)
* Reverts forced precision for log plots axis labels (#5147)
* Condition Widgets trigger hundreds of persistence calls (#5146)
Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Michael Rogers <contact@mhrogers.com>
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: unlikelyzero <jchill2@gmail.com>
* Correctly use creatable attribute and persistability when working with domainObjects (#4898) (#4936)
* making move action location check persistability
* adding persistence check instead of creatability for styles
* added check for link action to make sure parent is persistable
* debug
* adding parent to link action and move action form location controls so they can be used in the form
* adding parent persistability check for duplicate
* updating multilple actions appliesTo methods to check for persistability
* updated the tree to not require an initial selection if being used in a form
* remove noneditable folder plugin
* added persistence check for the parent, in the create wizard
* minor name change
* removing noneditabl folder from default plugins as well
* checking the correct parent for persistability in create wizard
* importing file-saver correctly
* updated tests for import as json
* changes addressing PR review: using consts, removing comments, removing unneccessary code
Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Scott Bell <scott@traclabs.com>
* Fix display layout items getting cut off on the bottom (like plots) (#4903)
* Fix display layout items getting cut off on the bottom (like plots)
Also fix Vue warnings
* Add partial e2e test for this bug fix. WIP.
* Address review comments
Co-authored-by: John Hill <john.c.hill@nasa.gov>
* Link action fix (#4945)
* handling edge case for linking a root item
* added location to viper plans (couch search folder) set to ROOT, added a check to remove action for alias (so you can remove linked nonpersistable items)
* added check for no parent in remove action (which means it is a root item)
* updating test
* Update time conductor inputs realtime (#4877)
* Update time conductor inputs realtime
* Update moveObjects.e2e.spec.js
* Update importAsJson.e2e.spec.js
* Update default.spec.js
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
* touch every file on earth to update copyright
* update one more
* pick up 2017 2018 2019
* revert fuchs copyright
* revert other bundle copyrights
* somehow missed one
* Show condition set label for condition widgets
* CSS changes
* Ensure condition set output as labels also works when condition widget is part of a display layout
* Adds tests for conditionWidget
* Tests for condition label output. Fix breaking tests.
* Don't remove event listeners when conditionset changes
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
* Remove legacy bundles
* Replace legacy format management with vanilla JS
* Redefine legacy formats in plugins instead of bundles
* Remove 'draft' from API documentation
* Remove focus from test spec
* Register local time system using new API
* Fixed broken custom formatter test spec
* Make capitalization consistent
* Rewrite test for terse formatting for time conductor
* Make dependency on UTCTimeFormat explicit
Co-authored-by: John Hill <john.c.hill@nasa.gov>
* Transaction fix (#4421) (#4461)
* When transaction is active, objects.get should search in dirty object first.
* Bugfix/create tree node (#4472)
* Transaction fix (#4421)
* When transaction is active, objects.get should search in dirty object first.
* find insert location prior to adding item to tree
* no need to resort
* add item should only add to direct descendants
* remove unused function
* copy composition before sorting
* remove unused var
* remove master pollution
* Revert "remove master pollution"
* add item to correct location
* Changed descending to ascending in sort order method (#4480)
* adding RAF to display layout alphanumerics (#4486)
* [Tabs] Sizing of offscreen tabs causing issues (#4444)
* [LAD Tables] Use RAF for updating template (#4500)
* Fixes LAD rows for string telemetry (#4508)
* Fixes LAD rows for string telemetry
* saving the object if it was missing (#4471)
* 4328 - Maintain reference to a focusedImage if the bounds change (#4545)
* WIP: adding assertions to catch negative index state
* just testing the flow
* SUpdate the image history index to previous selected image
* Cleaning up spacing and log statements
* Converted focusedImageIndex assignment to ternary and general cleanup
* imported objects are not persisting (#4477)
* imported objects are not persisting #4470
* disabled karma spec reporter suppressErrorSummary
* update version number
* Delete importFromJsonAction directory since it was empty
* Form refactor (#3816)
* New form API and associated form controls
* Actions updated to use new form API.
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: charlesh88 <charles.f.hacskaylo@nasa.gov>
* Reimplementation of import export json (#4171)
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: charlesh88 <charles.f.hacskaylo@nasa.gov>
Co-authored-by: Henry Hsu <hhsu0219@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
* if default section/page is missing then clear default notebook and hide option from dropdown.
* handle edge case when section is null/undefined.
* refactored notebook localstorage data + fixed some edge cases when default section/page gets deleted.
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
* [Imagery] Click on image to get a large view #3582
* Created new viewLargeAction.
* Changes in view registry to add parent element property inside view object.
* Separate class for views and added missing changes for LadTableSet.
* Renamed callBack to onItemClicked.
Co-authored-by: Andrew Henry <akhenry@gmail.com>
* Styling for plot limits and colors
* Updates to limit provider and css
* Change limits related CSS "*--upper" and "*--lower" to "*--upr" and
"*--lwr" for better parity with legacy naming;
* Refactor limit class to util
* Use new classes for sine wave generator for red-low and yellow-high
* Added modifier classes for right and below-aligned labels;
* Prevent label overlap of limits as much as possible
* Add border colors to limit labels for better visual ties to their lines
* Add documentation for limit level specification API change
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
* fix isMutable error when domainobject is undefined
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
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.
* 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>
* Defers legacy mutation of object till after a creation happens.
* Fixes display layout to defer actions until objects.save returns
* Revert back to localStorage... big oops!
* 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%
* Display layout plugin test coverage to 20% or more
Resolves#3157
* Changes address original issue? Yes
* Unit tests included and/or updated with changes? Yes
* Command line build passes? Yes
* Changes have been smoke-tested? Yes
* Testing instructions included? Yes
* Add disable-dev-shm-usage flag to ChromeHeadless launcher config in karma
* Adding disable dev shm usage flag to chromeheadless launcher and setting log level to debug
* Adding np activity timeout to 60000
* Adding no-sandbox flag for headless chrome
* Run tests without headless chrome to see if that fixes the fonts issue
* Fix typo
* Trying chrome headless with increased memory
* Reset karma.conf back to master
* Trying karma chrome launcher 3.1.0
* Revert to master code for package.json and karma.conf.js
* Trying node 12 browsers
* Revert back to node:13 browsers
* Revert to 10.2.1-browsers circle ci node browsers variant image for docker
* Rebuild node-sass for node 10.x
* Upgrading to 13.14.0 node
* Remove node options
* Don't restore cache before npm install
* Comment out tests with setTimeout
* Trying node 8-browsers
* Try firefox headless
* Firefox version typo
* Revert focused tests
* Exclude setTimeout tests
* Increase browser connectivity timeout
* Trying large timeout with Chromeheadless
* Going back to Firefox and setting browser timeout to 1.5 mins
* Fixes linting issues
* Fix broken tests and add some null checks in the code
* Change double quotes to single quotes