Files
openmct/e2e/tests/functional
Scott Bell 98a5b223d2 Derived Telemetry Prototype (#7815)
* skeleton for comps

* more scaffolding

* more drafts

* worker ready

* telemetry is null for some reason

* can add two sin waves

* adding works

* exact values enabled

* subscriptions work

* slowing adding gui

* fix plots

* rudimentary expression editor

* correctly persist

* parameters

* can take arbitrary expressions

* styles and timing for loading worker

* ui works kinda

* need to figure out ranger

* works with time

* timesystem works

* get rid of batch for now

* gui still leaking data

* memory conserved

* styles

* fix initial load

* expression validator

* fix test data

* do not persist

* persist after adding

* fix editing issues

* mutate when parameters or expression changes

* implement output format

* implement output format

* be consistent with output key

* add icons and fix errant telemetry

* lint

* lint

* use key instead of name

* Style enhancements for Derived Telemetry object
- Closes #7823
- Font files updated - do not merge!
- New glyph and data URI background for object.

* Style enhancements for Derived Telemetry object
- Closes #7823
- Tweak to object description.

* Enhancements for Derived Telemetry object
- Closes #7823
- Added new `ObjectPathString.vue` UI component, based on `ObjectPath.vue`.

* Style enhancements for Derived Telemetry object
- Closes #7823
- Significant mods for style and CSS classing. Still WIP, more coming.

* Enhancements for Derived Telemetry object
- Closes #7823
- Code cleanup and tweaks.

* do not apply test data when edit mode changes to false

* Revert "do not apply test data when edit mode changes to false"

This reverts commit eac4676cad.

* trying this again without blowing away the very pretty styling

* clean up composition effects

* allow deleting of parameters

* can chain and plot derived data

* can delete properly

* Enhancements for Derived Telemetry object
- Closes #7823
- Updated Derived Telemetry glyph design.
- Set `CompsViewProvider.js` to use the correct icon.

* handle arrays and add skeleton tests

* Enhancements for Derived Telemetry object
- Closes #7823
- Final sanding and polishing.
- New discrete item style `c-output-featured` added to controls.scss
  - Applied to 'Current Output' section of both Derived Telemetry and Condition Sets.
- TODOs:
  - [ ] Check for low-risk regressions in Condition Sets browse and edit modes.
  - [ ] New tests for ObjectPathString.vue component.

* add tests

* ensure output format propagates

* add output format test

* add some basic object path label tests

* good job code scanner. changing to or condition

* refactor aria labeling

* pass options on request to underlying collections

* ensure derived DERIVED telemetry loads in the proper order. also have telemetry collections prioritize request options over clock

* fix domains

* ensure we only ask for latest for comp editor

* improvement in loading

* fix slow loading errors

* more telemetry collection changes to acommodate bound changes

* more debug just in case

* stacked plots are overriding telemetry object configurations

* some changes

* add new flag to deal with plots asking for zoomed out data that should be ignoring clock

* works

* add sample size

* check if sample size greater than zero

* ensure number for sample size

* ensure we have a reference value before we slice

* can do derived derived accumulated comps now

* ensure we are checking for not equal

* add a few more awaits

* allow blank test values for arrays

* check for blank test values

* change to just value

* impute requested data properly

* fix output and add accumulation label

* update output when comp changes

* remove unused function

* add placeholder

* support lambda values

* reduce size

* widen size to accomodate sample size

* removing debug statements for PR review

* Closes #7823
- Markup/CSS sanding and shimming for derived telemetry front-end.
- Toggle switch CSS improved to use `gap` instead of left margin.

* Update package lock for new package versions

* Move composition policy to it's own file. Fix expression evaluation bug for truthy/falsy

* fix lint spelling

* Use the telemetry collection's timeKey for timestamps

* Revisit code to use bounds provided by options to telemetryCollections

* Refactor bounds handling to clarify intent. Remove TelemetryCollection.load() returning a promise and use event handlers instead.

* destroy and reload the telemetry collection on reload

* Update package-lock.json:

* Fix lint error

* Clean rebuild of package-lock.json

* Update e2e package lock as well

* Don't use method calls in vue templates

* fix linting issue

* Change plugin name to Derived Telemetry

* Install the derived telemetry plugin for tests before running them

* Tweaks to spacing to correct visual regression.

---------

Co-authored-by: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Co-authored-by: Scott Bell <scott@cynthia-macbook.fritz.box>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Shefali <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <andrew.k.henry@nasa.gov>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2026-02-25 13:33:17 -08:00
..