* Fixed#4975 - Compact Time Conductor styling
* Fixed#5773 - Ubiquitous global clock
* Mode functionality added to TimeAPI
* TimeAPI modified to always have a ticking clock
* Mode dropdown added to independent and regular time conductors
* Overall conductor appearance modifications and enhancements
* TimeAPI methods deprecated with warnings
* Significant updates to markup, styling and behavior of main Time Conductor and independent version.
---------
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Shefali <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Scott Bell <scott@traclabs.com>
* Add additional test roles to example user
* Add session storage and role to user indicator
* Update example user provider
* Added selection dialog to overlays and implemented for operator status
* Display role in user indicator
* Updates to broadcast channel lifecycle
* Update comment
* Comment width
* UserAPI role updates and UserIndicator improvement
* Moved prompt to UserIndicator
* Reconnect channel on error and UserIndicator updates
* Updates to status api canPRovideStatusForRole
* Cleanup
* Store status roles in an array instead of a singular value
* Added success notification and cleanup
* Lint
* Removed unused role param from status api call
* Remove default status role from example user plugin
* Removed status.getStatusRoleForCurrentUser
* Cleanup
* Cleanup
* Moved roleChannel to private field
* Separated input value from active role value
* More flight like status role names and parameter names
* Update statusRole parameter name
* Update default selection for roles if input is not chosen
* Update OperatorStatusIndicator install to hide if an observer
* console.log
* Return null instead of undefined
* Remove unneccesary filter on allRoles
* refactor: format with prettier
* Undid merge error
* Merge conflict extra line
* Copyright statement
* RoleChannelProvider to RoleChannel
* Throw error on no provider
* Change RoleChannel to ActiveRoleSynchronizer and update method calls to match
* iconClass to alert
* Add role selection step to beforeEach
* example-role to flight
* Dismiss overlay from exampleUser plugin which affected menu api positioning
---------
Co-authored-by: Scott Bell <scott@traclabs.com>
* New option to show/hide stacked plot aggregate legend - defaulted to not show.
Use the Plot component in the StackedPlotItem component for simplicity and show/hide sub-legends as needed.
* Fix position and expanded classes when children are showing their legends
* Fix broken tests and ensure gridlines and cursorguides work.
* Adds e2e test for new legend configuration for stacked plot
* Address review comments - Remove commented out code, optimize property lookup, fix bug with staleness
* Remove the isStale icon in the legend when a plot is inside a stacked plot.
---------
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
* de-dupe method
* there can be only one... input per label
* there can be only one... id but we need none
* there can be only one... input
* create test and add multiple images to display
* WIP test written but not passing
* fix test
* Update e2e/tests/functional/plugins/imagery/exampleImagery.e2e.spec.js
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* Update e2e/tests/functional/plugins/imagery/exampleImagery.e2e.spec.js
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* remove await from synchronous code
* linting
---------
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* test: add appActions, stabilize overlayPlot test
- Adds `waitForPlotsToRender`, a function that waits for all active `.plot` elements on the page to load and draw their series data
- Adds `getCanvasPixels`, a function that takes a canvas selector and retrieves an array of canvas pixel data.
- Modifies `getCanvasPixels` to use `page.evaluateHandle()` so that the canvas handle lifetime exists throughout the test (this was causing flakiness before)
* test: refactor and stabilize `plotRendering` tests
* test: remove redundant test suite
* test: stabilize plot legend color swatch test
* docs: mention `waitForPlotsToLoad()` in e2e docs
* refactor: have getCanvasPixels return actual rgba values
* docs: fix typo
* test: use appAction and fix reload wait condition
* docs: add additional context for `waitForPlotsToRender()`
* refactor: one-liner
* docs: tidy up docs
* Refactor string to stream
* add to restricted notebooks and allow for blank users
* forgot to add notebook
* use better types and fix test
* move streamToString
* add export group
* catch blank pages
* add simple prototype
* tags and metadata now exported
* add form for options
* revert notebook
* add simple e2e test
* add test stubs
* death to debug
* Closes#6321
- Set `user-select: none` on LAD Table td elements.
- Added hover effect to LAD Table rows as affordance of the Action
menu's availability.
* Add test to ensure rows cannot be selected but do show context menus
---------
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
* free plot on search selection and remove rectangles when resuming
* add test
* remove rectanges
* update test
* more reliable way to load annotations
* use event to wait for axes and update tests
* restore test
* cancel selection in plots if clicking outside plot
* Revert "cancel selection in plots if clicking outside plot"
This reverts commit 82ea50152b.
* Listen to the navigation triggered selection of the target object before selecting the annotations for the object
* remove commented out code
* check if we've already navigated to the object
---------
Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
Co-authored-by: Shefali <simplyrender@gmail.com>
* Only use default if we've evaluated as default
* Add e2e test for conditional sets
---------
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
* fix: inspector view tab priority
- fixes issue where inspector view priorities were not being passed to the view registry
* chore: run lint:fix
- eslint sez no danglin' commas! EVER!
* fix: update more viewProviders
---------
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
* Changed tooltip text to be Shift+Alt drag to pan
* Updated e2e test to match alt text change
* Updated panHotKey to match changed alt text
---------
Co-authored-by: John Hill <john.c.hill@nasa.gov>
* allow lad tables rows to be selected
* rows now clickable and previewable
* trying to add type column
* aggregate and telemetry
* if aggregate, use blank for value and timestamps
* remove extraneous path lookup
* cleanup css
* add tests
* allow hiding of type column
* adjust tests to include type column
* adding lad table configuration, specifically column visibility
* making sure units column checkbox is updated when lad tables are removed from lad table sets
* fixes based on PR feedback, copyright, consts, code, oh my!
* added a test for column hiding
* remove .only
* add a notification for inspector view that must be editing, move selection logic to vue component as it was not being triggered after navigating away in the inspector tabs
* Closes#6354 Notebook Enter key adds new lines
- Removed enter key handlers from Vue component.
- Added "Save" button.
* entry must be selected before editing
* focus on newly created entry
* Closes#6354 Notebook Enter key adds new lines
- Removed enter key handlers from Vue component.
- Added "Save" button.
* do not allow edit unless entry is selected
* remove css for disabled cass
---------
Co-authored-by: David Tsay <david.e.tsay@nasa.gov>
* framework for all inspector views being provided
* move elements view to plugin
* move location view into plugin
* move styles view into plugin
* move properties view into plugin
* install inspector views in index.html
* rename filters inspector view provider for tab
* finish elements view as plugin
* finish location view as plugin
* finish properties view as plugin
* finish styles view as plugin
* point main styles to new plugins
* finish inspector tab and views components
* fix paths for styles views
* fix path issues
* rename fault management inspector view
fix unit test
* fix paths for unit tests
* rename bar graph inspector view
fix unit test
* rename plots inspector view
fix unit test
* inspector views installed in mct.js
* sort inspector views by priority
* make name required for inspector tabs
* priority changes
* only show filters tab if filters exist
* object renamed to domainObject
* remove dead code
* select first tab if selected tab becomes hidden
* bandaid fix to get e2e working
* also apply bandaid to this test
* [a11y] Basic ARIA tab role for Inspector panels
* test(e2e): better selectors for scatterPlot test
* test(e2e): fix search test selector
* pass key and glyph to views
* use key for tabs identification
* high + 1 priority for object specific views
* Closes#6118
- Significant layout and behavior refinements to Inspector tabs.
- New theme constants for tabs.
- Tabs in Tab Views updated to use theme constants.
* Closes#6118
- Refinement to look of Inspector tabs.
- Shortened names in many *InspectorViewProvider.js files.
- WIP adding glyph capability, display not yet wired up.
* Closes#6118
- Tightened H2 spacing in Inspector.
* move annotations into plugin
* register annotations view provider
* move tags inside annotations
* fix paths
* move element item group into plugin
* move PlotElementsPool view into plugin
* plots has a different element view
* fix paths for plot elements pool
* fix: `role=` instead of `aria-role=` 🤦♂️
* test(e2e): fix tab locators
* move location views into properties tab view
* include location.scss
* move location into properties tab
* fix html for location within properties view
* retain selected tab on new selection
* refresh view of same tab with new selection
* add browse mode inspector view for alphanumerics
* fix prop passing
* removed vestigial code
* fix inspector tab selection
* remove timeouts and unnessecary awaits
* test: assert checkbox status before checking
* add selectInspectorTab to general app actions
* use selectInspectorTabs from appActions
* need to pass page to playwright function
* select the correct tab
* fix plan unit test
* fix plots tests by clicking on correct tab
---------
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Scott Bell <scott@traclabs.com>
* freeze if annotation is selected
* add test
* add stacked plot test
* actually test ticket issue
* wait for canvas to stabalize
* wait for canvas to stabalize
* address PR comments
* fix: ensure Vue can react to stacked plot item reorders
- Use Vue.$set instead of assignment so Vue can pick up StackedPlot composition reorders immediately
* test(e2e): add test for stacked plot item reorder
* docs: specify plot item order in comments
* fix: correct page.goto() url
* Decouple removing the context for a view from refreshing the context of views to get their upstream contexts
* Add test for clicking on an item in the elements pool for a preview
* Add test to ensure independent time context for items with no parents works as expected
* fix: show yAxis properties when series is moved
- Shows the correct yAxis properties immediately when a series is moved to another yAxis
* test: check for correct yAxis properties
- refactor test to use unique autogenerated object names
- update Elements pool pane handle selector
* test: fix goto and move to beforeEach
* test: ☠️ disable GrandSearch and ApplicationRouterSpec ☠️
---------
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
* Fix typo when saving the user specified range
* Ensure range is specified when autoscale is turned off
* Don't redraw unless absolutely necessary
* Add 'stats' to the handled attributes for redrawing plots
* Handle x axis displayRange, marker shape and size to redraw
* If there are is no closest data point for a plot, skip annotation gathering
* Ensure that min and max user defined ranges are valid when autoscale is disabled. Otherwise, enable autoscale to true.
* Fix autoscale e2e test
* updated snapshot
* Update e2e/README.md
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* Add cancel adding tag mechanism and fix persistent options visible
* Add functional test for cancel adding a tag
* Create addtag.visual.spec.js and move createNotebookAndEntry to appActions.js
* Remove createDomainObjectWithDefaults function from tags.e2e.spec.js
* Integrate Percy snapshots and remove assertions
* Move createNotebookAndEntry function back to tags.e2e.spec.js
* Update locator of Annotations tab, split helper function and add test.beforeEach
* Fix selections for different scenarios
* Ensure plot selection in stacked plots works when there are no selected or found annotations
* Adds e2e test for stacked plot selection and fixes the old e2e test which was testing overlay plots instead.
* Fix selection of plots while in Edit mode
* Improve tests for stacked plots
* refactor: remove unnecessary `await`s
* a11y: move aria-label to StackedPlotItem
* refactor(e2e): combine like tests, unique object names
- Use unique object names in `text=` selectors
- Combine like tests to reduce execution time
- Use `getByRole` selectors where able
* docs(e2e): add comments to test
* fix: add class back for unit test selector
---------
Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
* Ensure enabling log mode does not reset series that don't belong to that yaxis.
propagate both left and right y axes widths so that plots can adjust accordingly
* Revert code
Handle second axis resizing
* Fixes issue where logMode was getting initialized incorrectly for multiple y axes
* Get the yAxisId of the series from the model.
* Address review comments - rename params for readability
* Fix number of log ticks expected and the tick values since we reduced the number of secondary ticks
* Fix log plot test
* Add guard code during destroy
* Add missing remove callback
* removing dupe nb install, adding whitelist nb init script, testing whitelist urls
* updating from copy
* addressing PR comments for cleaner tests
* removing .only
* added a secure url test and a subdomain url test and simplified some code
* not messin with protocols atm
* update variable name
* Add listeners to remove stacked plot series and make keys unique
* don't add overlay plots to stacked plot legends
* Ensure series colors are drawn correctly in the plot legend
* Remove legend from mct plot. Remove series reactivity from stackd plot and add them to the legend instead.
* Clean up stacked plots so that the plot legend needs fewer props
Also make sure that plot selection inside a stacked plot works - this had regressed due to plot annotations
* Fix console error in plot elements pool and plot legend - reset arrays to empty
* Ensure color in the y axis swatch updates correctly
* Fix small issues with removing objects from STacked plots
* Fix selection for annotations and also select stacked plot child items
* fix notebook tagging
* remove unused annotation editor and change selection to single object
* remove reference to deleted css
* fix e2e tests
* Fix small typos into the selection context for Notebooks.
* Add a typ that identifies that an annotation selection is coming from a search result
---------
Co-authored-by: Scott Bell <scott@traclabs.com>
* Fixed composition
* Remove unnecessary guard code
* Removing deprecated code
* Use valid key for stacked plot v-for
* Fixed object API specs to expect old values as well as new values in mutation callbacks
* Fixed existing tests
* Added E2E test
* Fixed linting error
---------
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
* style: add `visibility` to tree expand triangles
- The purpose of this is so that Playwright can perform actionability checks on the tree items. This will make operations involving expanding tree items much easier to perform in e2e.
* feat(e2e): Add AppAction to expand the entire tree
* fix: wait for loading indicator
* test: add test for `expandEntireTree`
* test: update `expandEntireTree` and tree selectors
- Use dynamic aria-label for different tree implementations
- Get rid of CSS ids which are only for testing
- Update percy tree scope selector
* chore(lint): remove unused variable
* refactor(e2e): update tree locators
Co-authored-by: John Hill <john.c.hill@nasa.gov>