* docs: fix type imports in openmct.js
* docs: fix type imports
* docs: fix types for eventHelpers
* docs: types for TypeRegistry
* docs: types for StatusAPI
* docs: fix ObjectAPI types and docs
* docs: more types
* docs: improved types for main entry
* docs: improved types
* fix: unbreak the linting
* chore: remove EventEmitter webpack alias as it hide types
* fix: return type
* fix: parameter type
* fix: types for composables
* chore: add webpack consts to eslintrc
* fix: remove usage of deprecated timeAPI methods and add a ton of docs and types
* docs: update README.md
* lint: clean up API.md
* chore: upgrade eventemitter to v5.0.2
* refactor: update imports for EventEmitter to remove alias
* format: lint
* docs: update types for Views and ViewProviders
* docs: expose common types at the base import level
* docs(types): remove unnecessary tsconfig options
* docs: ActionAPI
* docs: AnnotationAPI
* docs: import common types from the same origin
* docs: FormsAPI & TelemetryAPI types
* docs: FormController, IndicatorAPI
* docs: MenuAPI, ActionsAPI
* docs: `@memberof` is not supported by `tsc` and JSDoc generation so remove it
* docs: RootRegistry and RootObjectProvider
* docs: Transaction + Overlay
* lint: words for the word god
* fix: review comments
* fix(#7791): tc form shouldn't submit bounds changes on dismiss
* test(e2e): add tests for validating time conductor popup
- update appAction for setting time conductor in fixed mode
- add a11y to time conductor in fixed mode
- update tests using `setTimeConductorBounds`
* fix(#7791): actually fix the problem. Also, add a test.
* test: add annotation to regression test
* docs: comments
* test: fix the reset image button flake ONCE AND FOR ALL
- wait for the rightmost image thumbnail to be in the viewport :D
* test: add tests for `setTimeConductorMode` and `setTimeConductorBounds`
* DRAFT - alignment for axes
* Use alignmentContext to manage tick widths instead of passing around as props
* Remove log statements
* Add ability to remove alignment widths for a given y axis
* Fix computation of left margin and width of plan when in the timestrip
* Remove excess padding when there is no left y axis
* Use alignment composable to adjust left margin and width of time system axis
* Fix now marker visibility
* refactor: use built in `Map()` data structure
* refactor: improve readability and conciseness
* docs: improve jsdocs
* refactor: move jsdoc typedefs to bottom of file
* refactor: axis to use vue reactivity
* fix: return alignment as an object of refs
* alignmentMap needs to be shared state, move it out of the useAlignment composable.
* Fix now marker offset
* Add new visual test for time strips
* update with animation stabilization
* Fix failing test due to changed injected property (path -> objectPath)
* change injected property from path to objectPath
* Fix spelling
* Remove unused arguments to function call
---------
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Hill, John (ARC-TI)[KBR Wyle Services, LLC] <john.c.hill@nasa.gov>
* For telemetry that cannot have it's own configuration, ensure that it is correct initialized by the parent.
* stacked plot test checks that config properties for immutable telemetry points are applied correctly
* add tab navigation to inspector tabs
* add accessibility metadata to this component
* Update title to be on the correct component. Add expand/collapse logic
* clean up test
* refactor: better a11y for plot forms, fix "expand by default" test, refactor out `plotActions.js`
* a11y: aria label for plotOptionsItem
* refactor(a11y): PlotOptionsBrowse structure to have better a11y
* fixed tests
* address comment
* reverted to match previous commit
---------
Co-authored-by: Hill, John (ARC-TI)[KBR Wyle Services, LLC] <john.c.hill@nasa.gov>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* update imagery to be static
* bump versions
* doesn't do anything
* does this do anything
* undo only
* update the hardcoded urls
* add ignore CI logs push
* downgrade to test
* update the package lock
* Add some more noise reduction
* move to elements tab so that there is no time-based component
* stability
* re-enable main test
* Enable tests and fix some failing ones
* revert accidental changes
* test(a11y): on failure, take a screenshot to disk
* test(visual): wait for the snapshot indicator to stop flashing
* Fix all failing tests
* test: disable a11y checks for planning suite
* lint:fix
* fix pathing issues
* build: increase visual-a11y parallelism from 2 to 4
* test: darkmatter theme a11y checks + snapshots-- ACTIVATE!
* test: fix file name and path
* fix(#7317): scott bell prophecy
* jk no credit for u
* chore: disable parallelism until we figure out what's going on
* chore: set parallelism to 2 in hopes it fixes percy
---------
Co-authored-by: Hill, John (ARC-TI)[KBR Wyle Services, LLC] <john.c.hill@nasa.gov>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
* Use setMode API to set the time span as well as the bounds instead of the old bounds time API.
* Add test for synchronized time conductor via plots
* Fix linting issue
* If we're paused, don't purge data out of bounds
* Refactor auto scale utility functions for reuse
* Create new test spec for plot controls
* Move plot related actions into it's own file
* Fix typo for imports
* Remove named exposedFunction as it is causing errors when the method is used on the same page more than once.
* Fix spelling
* clear any staleness subscriptions before viewing a new object
* add checkbox to options for createDomainObjectWithDefaults, update swg staleness provider to use new time api, add test
* revert
* modified for simplification and to remove the need to update helper methods
* consistent naming convention
* Update e2e/tests/functional/staleness.e2e.spec.js
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* adding back vars that were removed
---------
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* chore: upgrade eventemitter to v5.0.2
* fix: pass context to eventHelpers
* fix: no need to destroy router as it is destroyed during openmct teardown
* fix: register `CreateAction` and retrieve it from the registry
* test: fix tests
* refactor: import action key consts
* fix: update usage. don't use getters
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
---------
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
* run scroll method to scroll to top after initial load of historical data
* clarifying comment
* added e2e test to make sure tables auto scroll on mount
* adding descriptive comments
* adding in ascending check as well
* added new appAction for navigating to/in realtime, using it in table scroll test
* lint
---------
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
* this is 2024. `*` observers no more.
* add edit and save domain object helper functions
* add aria-labels and fix e2e tests to use new labels
* generate and save in local storage a condition set with telemetry and condition
* rename const
* move creation code out of generateLocalStorage since it is immutable
* remove function abstractions
* remove @localStorage test label
* Update e2e/tests/functional/plugins/conditionSet/conditionSet.e2e.spec.js
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* Update e2e/tests/functional/plugins/conditionSet/conditionSet.e2e.spec.js
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* Update e2e/tests/functional/plugins/conditionSet/conditionSet.e2e.spec.js
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* Update e2e/tests/functional/plugins/conditionSet/conditionSet.e2e.spec.js
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* remove unneccesary aria text
* remove unneccessary aria text
* use recommended playwright locators
* lint fix
* remove unneccesary steps now that child created directly in parent
---------
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* initial theme plugin setup, changes to layout frames
* update visual tests
* Changes to gauge, layout borders, and background
* Make background image a DIY theme variable. Fixes made to gauges. Deleted custom font.
* More changes to overall background colors. Added glass layer effect to menus
* changes to menu
* Fix to make theme easy to run
* Fix tab colors and add glass background to menus
* make highlightd corners longer
* Initial changes to font styles
* Add temporary numeric font style. Test numeric font in gauges.
* Initial changes to alphanumerics in layouts
* Updated variables
* update plugin.js file
* Fix highlighted corners on frames such that it uses outermost frame
* renaming theme plugin and rename branch
* fix button colors to be more readable
* change background image
* Fix bad merges from other theme files. Fix gauge and alphanumerics such that they dont have darkmatter borders
* more fixes
* Fix where mixin is used such that when an object's frame is hidden, highlgihts disappear
* remove blur from meter gauges
* Add comment about this theme being in beta mode
* Delete draft .scss file that is no longer needed
* Fix major accessibility issues
* Fix PR review comments
* ✨ fix: Correct import file name for DarkMatter theme.
* Fix other theme code that was failing e2e tests
* Revert index.html
* Fix linting error
* Fix for failing percy test regarding padding
* Fix for failing percy test regarding padding part 2
* Fix for failing percy test regarding padding part 3
* Remove mixin that may be causing percy issue
* Another fix to resolve percy issue
* Add back some code that was deleted during debugging, and create new variables for the object padding
* Fix gradient clipping in inspector
* Restructure all constants-.scss files
* Change bg image to be square and NASA official picture
* Final fixes to darkmatter variable layouts
* Address PR comments
* Change darkmatter to darkmatterTheme
---------
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
* Closes#7635
- More specific approach to CSS class application for column vs. row layouts.
- Added layout direction CSS classing to `c-fl-container__frames-holder`.
- Switched toolbar icon and titling for better parity with
'toggle' approach used elsewhere.
- Cleaned up duped property def in mixin.
* Addressing PR change requests
- Updated e2e test.
- New computed properties for layout direction.
- CSS code cleanup.
* fix selector in test
* fix more bad selectors
* fix changed title
---------
Co-authored-by: David Tsay <david.e.tsay@nasa.gov>
* add progress bar
* improves performance a lot
* fix test
* remove old function
* fix legit bug from test - well done tests
* add constant, better comments
---------
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* chore: remove all usage of deprecated Time API methods
* test: update unit test
* docs: Fix spacing and add clarity to TimeConductorBounds definition.
* test: add unit test coverage for new time api methods
* enable eval source maps for debugging
* split image and text paste handling
better event handling
* change back source maps
* image takes precedence over text
* break up notebook entry functions for re-use
* create hotkeys utils
add clipboard functions
* add notebook paste test
* add test for pasting to selected but not editing entry
* link tests to issue
* jsdoc addition
* jsdocs
* no need to import then export
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* fix changed path
---------
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
* Handle the case where the pasted data is not an image or it is image AND text
* Change method name for paste handling
---------
Co-authored-by: Andrew Henry <akhenry@gmail.com>
* source maps
* do not persist if obj is not persistable
* nope
* prevent mutation of configuration
* static roots are read only by nature
* helps to use functions correctly
* update persistModeChange logic
* remove debug
* remove unnecessary change
* fix: remove mystery webpack code
* fix: remove type:module and specify exports
- we aren't a module... yet
* fix: rename webpack*.js to webpack*.mjs so we can use import/export. fix imports
* fix: exports format
* fix: woops, need to add `start` script back
* chore: split e2e into its own module
* fix: use normal Painterro import
* fix: update e2e pathing
* fix: copy over helper functions
* chore: specify `cwd` for playwright configs so that openmct npm commands work as intended in any environment
* chore: add pretest script to e2e package.json
* chore: don't package e2e
* refactor: tidy up webpack common config
* chore: compile types to a single file
* chore: fix visual test npm scripts
* chore: fix import pathing
* chore: define package exports, move test specific dependencies to the subpackage
* chore: export test framework from openmct-e2e
* chore: export baseFixtures also
* chore: let `openmct` and `openmct-e2e` share `node_modules/`
* chore: use `--workspace`, remove pretest script
* Revert "fix: remove mystery webpack code"
This reverts commit eb14d52569ffa27ab1a090b883694f4707b59cd0.
* chore: update package-lock
* chore: add `.npmignore`
* fix: *js -> mjs
* fix: resize conductor properly
* refactor: more computed properties, unregister listener
* fix: beforeUnmounted hook
* test(visual): add time conductor visual test for fixed mode
* fix: initialize to `null`
* feat: extend the base `screenshot` function to mask elements which will always create variance in an Open MCT screenshot
* docs: add types for fixtures
* fix: remove unneeded await
* chore: add sinon timers types package back
* docs: remove unused docs
* doc: remove unused docs
* test: add visual realtime url, update imports
* feat: provide wrapped page.screenshot fixture that applies defaults
* test: add basic timeConductor snapshot tests
* chore: update eslint config
* lint: remove unused disable directives
* test: remove redundant navigation
* fix: remove listeners
* fix: maybe stabilize unit tests
* docs: remove
* fix: provide sourcemaps in unit tests
* test: add regression snapshot test for time conductor axis
* lint: remove unused imports
* feat(e2e): add fixture to manually tick the clock and use it
* test: reactivate test now that we don't use deploysentinel :(
* test: update snapshots
* test: add test for clockOptions and tick fixtures
* test: add afterEach stub and fixme
* test: try and stabilize fault management flake
* lint: defy the word gods
* chore: ignore `*-darwin.png` screenshots
* chore: remove darwin screenshot binaries
* docs: markdownlint
* docs: remove MacOS specific instructions from snapshot testing
* fix: remove a11y
* chore: update tsconfig to target modern ES
* docs: update UserProvider
* docs: update UserAPI, make openmct private
* docs: update StatusAPI
* refactor: convert ViewRegistry to ES6 class
* docs: finish type imports for openmct api
* docs: minor doc improvements
* docs: add UserIndicator readme
* docs: add User API section to API docs
* docs: document Mission Status
* docs(JSDoc): primitive types should be lowercase, otherwise TitleCase