Compare commits

...

5724 Commits

Author SHA1 Message Date
204ad0b0e9 Merge branch 'master' into eval-source-maps 2024-11-05 11:53:24 -08:00
2010f2e377 chore: bump @playwright/test to v1.48.1 (#7913) 2024-10-21 17:03:54 -07:00
3241e9ba57 chore: remove release.yml (#7907) 2024-10-18 15:43:57 -07:00
057a5f997c Encode urls for css background images (#7906)
* Add new utility to encode urls.
Use the encode urls utility to encode all background images in css

* need a commit to pull exampleimagery from

* skip and fix on otherside

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-10-18 19:59:02 +00:00
078cd341a5 Bump references to support node22 (#7901)
* Bump references to support node22

* strings!

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2024-10-18 10:07:26 -07:00
518b55cf0f fix(vipergc-660): identify axis keys upon adding object to composition (#7897)
* fix: identify axis keys upon adding object to composition

* fix: set yKey to 'none' if nonArrayValues
2024-10-17 15:08:52 -07:00
3e23dceb64 fix(#7892): restore "now" (marcus bains) line to planning views (#7898)
* Initialize alignment offset to 0. (it was undefined). Also handle a small bug with swimlane configuration not getting replaced when the plan used by a gantt chart was changed

* lint: fix

* test: update visual tests to mock clock and show now line

---------

Co-authored-by: Mazzella, Jesse D. (ARC-TI)[KBR Wyle Services, LLC] <jesse.d.mazzella@nasa.gov>
2024-10-17 14:24:26 -07:00
7f8b5e09e5 Fix gantt chart swimlane order (#7895)
* Use the planObject to get ordered swimlane names

* If there is no plan object, don't try to render the chart

---------

Co-authored-by: Jamie V. <jamie.j.vigliotta@nasa.gov>
2024-10-17 17:28:55 +00:00
7c2bb16bfd Bugfix/7873 time conductor input validation (#7886)
* validate on change because input is too aggressive
* validate logical bounds on submit
* perfection
2024-10-16 18:57:56 -07:00
890ddcac4e Revert d8c5095ebb (#7894) 2024-10-16 09:57:24 -07:00
d8c5095ebb add environment variable check 2024-10-16 09:08:34 -07:00
ccf7ed91af fix(vipergc-574): Use selected shelve duration for fault management (#7890)
* refactor: `Indefinite` -> `Unlimited`
* refactor: remove unused const
* fix: use the selected shelveDuration
* fix: set and use default if none selected
* fix: bad optional chaining
* fix: handle the case of no provider
* fix: don't assign defaults if no provider
2024-10-15 23:26:57 +00:00
2b8673941a Don't persist current tab when display is locked (#7882)
Check if a display is locked before saving current tab. 

---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2024-10-11 16:17:29 -07:00
703186adf1 Add script to lock object sub-tree and fix object locking bugs (#7855)
* Script for locking an object tree

* Show lock button if locked

* Do not allow properties editing of locked objects

* Remove package-lock.json

* Added p-debounce

* Allow duplication of locked objects

* Better user feedback

* Add semaphores to prevent file handle exhaustion

* Leverage official Apache Couch library - nano. Clean up dependencies. Default to environment variables for couch config. Simplify batching mechanism to make it synchronouse

* Added lock user attribution

* Remove unused code

* Modify open script for adding auth design doc

* Added script for creating auth design doc

* Add css class for disallow unlock

* Add user attribution to lock button

* Fix import

* Typo

* User it was locked by, not current user. Wow.

* Closes #7877
- Front-end sanding and shimming: displays <span> instead of button when domainObject.disallowUnlock.

* Fixed bug where lock is shown even if object is not locked

---------

Co-authored-by: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2024-10-10 15:09:39 -07:00
c43ef64733 [Telemetry Tables] Fix sort issues (#7875)
* Issue where immutable objects sort order was not being set correctly in telemetry tables. 
* Configuration couldn't be saved and the sort order was not being saved in memory. 
* Telemetry was not being re-requested when the sort order of a table was changed and the table was in performance (limited) mode.
* We've moved sort order to both configuration and in-memory and we will re-request telemetry if changing sort order in performance mode.

---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2024-10-10 14:24:31 -07:00
f4cf9c756b test(visual): Stabilize compass per timestamp (#7866)
* feat: add function to generate a seeded random value

* fix: produce the same compass orientation per timestamp
- helps for consistent visual tests

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-10-10 10:52:42 -07:00
4415fe7952 Fix complex displays not loading (#7858)
Clock
* pass in default timeContext in request options
* observe for clock tick, instead of polling, to determine if clock has time set

Progress Bars
* use scale instead of move animation

Plan
* use a ResizeObserver instead of polling for size changes

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2024-10-08 13:10:35 -07:00
83e4a124e2 Fix table sorting in descending order (#7863)
When adding sorted arrays to the beginning, make sure to insert them in the same order and not accidentally reverse them while inserting.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-10-08 13:56:28 +00:00
47f0b66c7e [CI] Fix flake with clocks and state generators (#7867)
* add two appActions

* replace with appAction

* replace with determinsitic appAction

* fix lint

* speed
2024-10-04 15:47:25 -07:00
55c023d1eb chore: it is 2024. (#7864) 2024-10-03 06:28:26 -07:00
37b2660f27 [Conditionals] Increase performance, switch to TelemetryCollections (#7841)
* adding telemetry collections to condition manager

* handling telemetry collection data not datum

* adding from maaster

* addressing PR comments

* update unit test to work with telemetry collections

* fixing tests

* removing unnecessary addition

* removing focused describe

* removing focused it

* fix weird test bleed

* adding test for conditional styling

* removing some auto fix es-lint

* got a bit overzealous

* clarification

* using raf utility which handles it correctly and moving visiblity handling into the raf for consistency and performance

* using raf correctly

* removing raf, was causing issues

* move the test and add some determinism

* oops only

* missed lint

* got it!

* fix comments

* test(condStyling): stabilize test

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2024-10-02 14:14:15 -07:00
43cc963328 chore: bump @playwright/test to 1.47.2 (#7859) 2024-10-01 21:01:02 +00:00
ad30a0e2d0 feat(Fault Management): allow fault providers to define shelve durations (#7849)
* refactor: clean up FaultManagementView code

* feat: providers can now provide "Shelve Duration" options

* fix(exampleFaultSource): support `getShelveDurations`

* a11y: aria label for fault management list item

* a11y(FaultManagement): more labels

* refactor: eliminate some faultUtils and refactor locator() out of tests

* docs: add some more docs to fault management api

* refactor: make for loop more readable

* test: use static faults when testing

* fix: set a timestamp for static faults and subtract so we get faults in order

* refactor: autoformat

* chore: add missing copyright header

* fix: use as default parameter to get value as method is called

* refactor: make magic number a const

* fix(codecov): use codecov github action to upload

* fix: generate the report

* build: update circleci yml to use codecov orb

* build: remove codecov scripts and package

* build: don't use the orb because things can't be easy

- nasa org disallows "third party" orbs

* build: only use `sudo` if we ain't da root user

---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2024-10-01 10:41:18 -07:00
29f1956d1a Improve telemetry buffering implementation (#7837)
* Simplifies the implementation of telemetry buffering in Open MCT.
* Switches from per-parameter buffering to a shared queue. Per-parameter buffering is too easily overwhelmed by bursts of telemetry from high-frequency parameters. A single shared buffer has more overhead to grow when a burst arrives without overflowing, because the buffer is shared across all parameters.
* Removes the need for plugins to pass serialized code to a worker.
* Switched to a "one-size-fits-all" batching strategy removing the need for plugins to define a batching strategy at all.
* Captures buffering statistics for display in the PerformanceIndicator.
2024-09-30 14:36:40 -07:00
c498f7d20c Fix bad color value for Gauge 'Needle' type (#7821)
* Closes #7820
- Fix 0 opacity fill in theme constants files for Gauge type needle.

* move gauge plugin to its own suite

* add two more snapshots

* driveby: fix some flake

* bug: update linting rule

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2024-09-28 09:17:32 -07:00
a8fbabe695 fix(#7825): imagery pause (#7842)
* more readable

* unpause explicitly

* fix jsdoc

* e2e testing multiple image removal

* prettier

* fix to remove multiple images from history

* move tests that use playwright clock api into own file

* fix playwright clock tests

* add aria-label to element

* prevent straggler debounced function call on unmount

* clean up and fix tests

* update paths

* lint fix

* lint fix

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-09-27 14:32:14 -07:00
e792403788 Bar graphs should only get latest historical datum (#7811)
* Only as for latest historical telemetry

* Add test for size 1 request when a bar graph is loaded

* Use strategy latest instead of size 1 for historical request

* Fix linting issues

* Add size and strategy

* Remove bar graph tests

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2024-09-25 09:37:38 -07:00
de122b91c2 [Build] Update tsconfig to explicitly set target and module options (#7845)
* bugfix: update tsconfig to set module to NodeNext and exclude openmct/e2e

* chore: remove unnecessary paths from exclude

- the `exclude` option only excludes files in the context of the `include` paths, if there are any. We can remove some of these because they don't match anything in the include paths.

* chore: fix capitalization for consistency

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2024-09-16 23:23:56 +00:00
fa8efa858b [Build] Update package lock to reference correct version of package and also update the browserlist (#7843)
chore: update package lock to 4.1.0-next and update browserlist
2024-09-13 07:52:58 -07:00
26578e849d chore: bump version to 4.1.0-next (#7832)
chore: bump version to 4.1.0-next
2024-09-10 23:14:22 +00:00
fccae3bd49 Don't change sort order when changing performance mode (#7810)
* adding an option to no swap order to initiatSort

* debug

* defaulting to desc order for requests if there is not saved order

* adding some common constants

* replace all got into a comment

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2024-09-10 02:28:05 +00:00
440474b2e3 fix(conditional styling): conditional visibility for images and alpha-numerics in display layouts (#7824)
* fix: apply `is-style-invisible` className to image and alphanumeric items

* test: generate storagestate file with basic condition set

* refactor: small a11y additions for Toolbars

* test: add suite for display layout conditional styling

* fix: make condition true half of the time

* fix: use a period of 5 so tests are more stable

* test: mark as slow

* test: use inline base64 image text instead of a url

* fix: use vue reactivity system to conditionally show these objects

* test: use tiny base64 image

* fix: condition for v-show

* fix: use both v-if and v-show to toggle visibility

* refactor: convert to ES6 class

* fix: remove focused test

* fix: switch back to a div due to visual artifacts. settle for an aria role instead

- IT'S CALLED COMPROMISE!
2024-09-09 22:41:29 +00:00
21a4335c4e chore: re-enable perf/mem tests on PR + fix broken locator in imagery perf test (#7806)
* test: fix broken locator in imagery perf test

* Prevent this from happening

* make rule explicit

* test: maintain `locator()` pattern for contract tests

* test(couchdb): try some new techniques to stabilize the test

* Revert "test(couchdb): try some new techniques to stabilize the test"

This reverts commit 9aa1ea95a1.

* chore: revert to `networkidle` and disable eslint rule

* test: add `@network` annotation for tests with real network requests

---------

Co-authored-by: Hill, John (ARC-TI)[KBR Wyle Services, LLC] <john.c.hill@nasa.gov>
2024-08-13 21:55:57 +00:00
0413e77d8a test(e2e): Major refactor and stabilization of e2e tests (#7581)
* fix: update broken locator

* update eslint package

* first pass of lint fixes

* update package

* change ruleset

* update component tests to match linting rules

* driveby

* start to factor out bad locators

* update gauge component

* update notebook snapshot drop area

* Update plot aria

* add draggable true to tree items

* update package

* driveby to remove dead code

* unneeded

* unneeded

* tells a screenreader that this is a row and a cell

* adds an id for dragondrops

* this should be a button

* first pass at fixing tooltip selectors

* review comments

* Updating more tests

* update to remove expect expect given our use of check functions

* add expand component

* move role around

* update more locators

* force

* new local storage

* remove choochoo steps

* test: do `lint:fix` and also add back accidentally removed code

* test: add back more removed code

* test: remove `unstable` annotation from tests which are not unstable

* test: remove invalid test-- the "new" time conductor doesn't allow for millisecond changes in fixed time

* test: fix unstable gauge test

* test: remove useless asserts-- this was secretly non-functional. now that we've fixed it, it makes no sense and just fails

* test: add back accidentally removed changes

* test: revert changes that break test

* test: more fixes

* Remove all notion of the unstable/stable e2e tests

* test: eviscerate the flake with FACTS and LOGIC

* test: fix anotha one

* lint fixes

* test: no need to wait for save dialog

* test: fix more tests

* lint: fix more warnings

* test: fix anotha one

* test: use `toHaveLength` instead of `.length).toBe()`

* test: stabilize tabs view example imagery test

* fix: more tests be fixed

* test: more `toHaveCount()`s please

* test: revert more accidentally removed fixes

* test: fix selector

* test: fix anotha one

* update lint rules to clean up bad locators in shared fixtures

* update and remove bad appActions

* test: fix some restricted notebook tests

* test: mass find/replace to enforce `toHaveCount()` instead of `.count()).toBe()`

* Remove some bad appActions and update text

* test: fix da tree tests

* test: await not await await

* test: fix upload plan appAction and add a11y

* Updating externalFixtures with best practice locators and add missing appAction framework tests

* test: fix test

* test: fix appAction test for plans

* test: yum yum fix'em up and get rid of some dragon drops

* fix: alas, a `.only()` got my hopes up that i was done fixing tests

* test: add `setTimeConductorMode` test "suite" which covers most TC related appActions

* test: fix arg

* test(couchdb): fix some network tests via expect polling

* Stabalize visual test

* getCanasPixels

* test: stabilize tooltip telemetry table test, better a11y for tooltips

* chore: update to use `docker compose` instead of `docker-compose`

* New rules, new tests, new me

* fix sort order

* test: add `waitForPlotsToRender` framework test, passthru timeout override

* test: remove `clockOptions` test as we have `page.clock` now

* test: refactor out `overrideClock`

* test: use `clock.install` instead

* test: use `clock.install` instead

* time clock fix

* test: fix timer tests

* remove ever reference to old base fixture

* test: stabilize restricted notebook test

* lint fixes

* test: use clock.install

* update timelist

* test: update visual tests to use `page.clock()`, update snapshots

* test: stabilize tree renaming/reordering test

* a11y: add aria-label and role=region to object view

* refactor: use `dragTo`

* refactor: use `dragTo`, other small fixes

* test: use `page.clock()` to stabilize tooltip telemetry table test

* test: use web-first assertion to stabilize staleness test

* test: knock out a few more `page.click`s

* test: destroy all `page.click()`s

* refactor: consistently use `'Ok'` instead of `'OK'` and `'Ok'` mixed

* test: remove gauge aria label

* test: more test fixes

* test: more fixes and refactors

* docs: add comment

* test: refactor all instances of `dragAndDrop`

* test: remove redundant test (covered in previous test steps)

* test: stabilize imagery operations tests for display layout

* chore: remove bad unicorn rule

* chore(lint): remove unused disable directives

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2024-08-07 21:36:14 +00:00
4ee68cccd6 docs: better docs and types for the API (#7796)
* 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
2024-07-31 10:46:16 -07:00
e3fcbe1a35 fix(#7791): tc form shouldn't submit bounds changes on dismiss (#7792)
* 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`
2024-07-25 23:55:50 +00:00
689f7cc815 test(e2e): stabilize flaky imagery tests (#7765) 2024-07-23 20:41:07 -07:00
1fae0a6ad5 fix(#6812): Align Plot and Plan X-Axes in Time Strips (#7744)
* 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>
2024-07-22 16:05:21 -07:00
762762945d chore: bump playwright to 1.45.2 (#7785)
* chore: bump playwright to `1.45.2`

* chore: update package-lock
2024-07-16 18:51:44 +00:00
c763937455 chore: disable codeql scanning for e2e/ folder (#7784) 2024-07-16 11:26:35 -07:00
db808b4d54 Plots correctly use configuration set on the parent if they can't their own (#7770)
* 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>
2024-07-16 10:57:12 -07:00
6983148aba fix(package.json): consistent props (#7768) 2024-07-15 22:09:42 +00:00
92e5cba6d3 test(visual): skip flaky visual test (#7776) 2024-07-15 13:28:29 -07:00
0215a5b693 chore: bump playwright to version 1.45.0 (#7762) 2024-07-02 21:04:39 +00:00
291c0997a6 chore(cspell): grammar fixes (#7735)
* chore(cspell): grammar fixes

* chore: remove valid words

* fix(cspell): resolve linting errors

* fix(naming): change filename

* fix(cspell): resolve linting errors

* fix(spelling): remove wrong word

* fix(review): redundant wording
2024-07-01 10:38:26 -07:00
393da7dc62 chore(deps): bump ws, engine.io and socket.io-adapter (#7761)
Bumps [ws](https://github.com/websockets/ws), [engine.io](https://github.com/socketio/engine.io) and [socket.io-adapter](https://github.com/socketio/socket.io-adapter). These dependencies needed to be updated together.

Updates `ws` from 8.11.0 to 8.17.1
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/8.11.0...8.17.1)

Updates `engine.io` from 6.5.4 to 6.5.5
- [Release notes](https://github.com/socketio/engine.io/releases)
- [Changelog](https://github.com/socketio/engine.io/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/engine.io/compare/6.5.4...6.5.5)

Updates `socket.io-adapter` from 2.5.4 to 2.5.5
- [Release notes](https://github.com/socketio/socket.io-adapter/releases)
- [Changelog](https://github.com/socketio/socket.io-adapter/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io-adapter/compare/2.5.4...2.5.5)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: indirect
- dependency-name: engine.io
  dependency-type: indirect
- dependency-name: socket.io-adapter
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-25 05:36:49 -07:00
448750ca59 Fix some flaky percy behavior (#7756)
* 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
2024-06-25 05:08:01 +00:00
554f77c42f [a11y] re-enable and fix all failing plan tests (#7753)
* enable planning a11y tests

* Fix all a11y failing tests

* drive-by: missed clean

* test: attempt to fix parallelization

* split the test 3 ways

* lint

---------

Co-authored-by: Hill, John (ARC-TI)[KBR Wyle Services, LLC] <john.c.hill@nasa.gov>
2024-06-21 16:37:36 -07:00
a5770817cc chore: re-enable a11y checks in visual suite (#7747)
* 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>
2024-06-19 01:16:54 +00:00
34b4091204 fix(#7680): no index.html on npm pack (#7699) 2024-06-05 19:11:54 +00:00
6360bc4b6c Ensure time conductor mode is set when synchronizing time range (#7731)
* 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
2024-06-03 16:17:41 +00:00
c354e1c2f1 If display bounds are out of sync with time conductor, don't purge data out of bounds (#7732)
* 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
2024-06-03 15:46:05 +00:00
eba6f0f505 fix(#7670): Ensure objects unsubscribe from staleness when destroyed (#7736)
* 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>
2024-05-31 20:46:59 +00:00
017380bb6a chore: upgrade eventemitter to v5.0.2 (#7709)
* 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>
2024-05-14 21:51:33 +00:00
810d580b18 [Telemetry Tables] Make sure tables auto scroll correctly on first load (#7720)
* 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>
2024-05-09 11:53:11 -07:00
977792fae8 this is 2024. * observers no more. (#7715)
* 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>
2024-05-09 11:19:55 -07:00
a69e300f1c chore: bump playwright to v1.44.0 (#7716) 2024-05-09 08:20:31 -07:00
17bc6cb722 chore(webpack): destruct version from pkgJson (#7713) 2024-05-07 08:52:41 -07:00
adc6f8edd5 Merge branch 'master' into eval-source-maps 2024-05-02 10:34:23 -07:00
b3d3465734 [Darkmatter] Create new darkmatter theme (#7682)
* 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>
2024-04-25 16:06:07 -07:00
fb0d74e87f chore(deps-dev): bump vue from 3.4.19 to 3.4.24 (#7702)
Bumps [vue](https://github.com/vuejs/core) from 3.4.19 to 3.4.24.
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/compare/v3.4.19...v3.4.24)

---
updated-dependencies:
- dependency-name: vue
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-22 13:19:00 -07:00
a961d7e3bf Fix nested Flexible Layout direction problem (#7637)
* 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>
2024-04-18 23:38:11 +00:00
11fe7537df Merge branch 'master' into eval-source-maps 2024-04-18 10:19:48 -07:00
5a06b51c5a refactor: remove the final .bounds() call (#7695)
 refactor: Use getBounds method instead of bounds in IndependentTimeContext.
2024-04-17 16:19:21 +00:00
ef8b353d01 Improve performance of JSON import and add progress bar (#7654)
* 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>
2024-04-16 21:23:31 +00:00
6c5b925454 chore: remove all usage of deprecated Time API methods (#7688)
* 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
2024-04-16 21:12:09 +00:00
e91aba2e37 Handle paste events for images and text properly (#7679)
* 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>
2024-04-16 13:54:40 -07:00
b18aa48141 Revert "Handle the case where the pasted data is not an image" (#7668)
Revert "Handle the case where the pasted data is not an image (#7628)"

This reverts commit d33da65dae.
2024-04-04 15:03:45 -07:00
d33da65dae Handle the case where the pasted data is not an image (#7628)
* 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>
2024-04-04 21:30:12 +00:00
e3adeb6a75 Do not add unused created attribute to metadata of couch documents on create (#7656)
this isn't used anywhere

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2024-04-04 13:33:36 -07:00
de3dad02b5 [Telemetry Tables] Don't mutate configuration if object is not able to be persisted (#7626)
* 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
2024-04-04 00:38:59 +00:00
311ad0b87a fix(e2e): specify .nyc_output path as custom config setting (#7658)
* fix: specify .nyc_output path as custom config setting

* fix: coverage for mobile suite

* fix: pathing in playwright configs
2024-04-01 18:29:47 +00:00
f98eb31956 fix: move file to correct folder (#7652) 2024-03-28 17:32:46 -07:00
1671a585fb Mct7636 (#7645)
* setting order for sort to descending if in performance mode and no sort set

---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2024-03-28 17:32:03 -07:00
a3fb84ad43 chore: remove type: module, create openmct-e2e subpackage (#7590)
* 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
2024-03-28 14:49:00 -07:00
a5c6b141a6 chore(deps-dev): bump express from 4.18.3 to 4.19.2 (#7646)
Bumps [express](https://github.com/expressjs/express) from 4.18.3 to 4.19.2.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.18.3...4.19.2)

---
updated-dependencies:
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-27 13:12:48 -07:00
46823ec225 chore(gha): run prcop workflow on milestone (#7647)
chore: run prcop workflow on milestone
2024-03-27 09:09:57 -07:00
5b4ee1949f fix(#7623): Resize ConductorAxis properly (#7624)
* 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
2024-03-26 23:52:33 +00:00
7e926ccbb7 chore(deps-dev): bump webpack-dev-middleware from 7.0.0 to 7.1.1 (#7634)
Bumps [webpack-dev-middleware](https://github.com/webpack/webpack-dev-middleware) from 7.0.0 to 7.1.1.
- [Release notes](https://github.com/webpack/webpack-dev-middleware/releases)
- [Changelog](https://github.com/webpack/webpack-dev-middleware/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-middleware/compare/v7.0.0...v7.1.1)

---
updated-dependencies:
- dependency-name: webpack-dev-middleware
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-26 15:23:17 -07:00
6e264517f8 docs: Mission Status and more (#7521)
* 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
2024-03-26 19:11:00 +00:00
986da5782b Disable reload in preview (#7639)
disable reload in preview

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2024-03-26 16:58:47 +00:00
539138437b For an existing View in a Preview, ensure we pull the same ActionCollection (#7632)
* ensure action collection returned is the cached one from the same view

* add test

* use async await
2024-03-26 14:11:23 +00:00
493b31d0b9 fix(#7633): add missing await (#7643)
* fix(#7633): add missing `await`

* test: add LAD table e2e suite + test
2024-03-26 10:14:25 +00:00
cc58dbd5e7 Merge branch 'master' into eval-source-maps 2024-03-25 11:12:17 -07:00
d68ac31ab5 chore: bump @playwright/test to 1.42.1 (#7627)
* chore: bump `@playwright/test` to `1.42.1`

* chore(circleci): don't try to re-run individual percy tests
2024-03-21 09:27:41 -07:00
f504ee29cc fix: 🤖 beep boop beep, you forgot an await 🤖 (#7630)
* fix: 🤖 beep boop beep, you forgot an `await` 🤖

* add e2e test

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
2024-03-20 20:20:48 +00:00
1d5ddc545e chore(deps-dev): bump @types/lodash from 4.14.192 to 4.17.0 (#7610)
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.14.192 to 4.17.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-19 22:57:38 -07:00
42085a4b70 [CI] Parallelize visual test runs (#7618)
* rename suite and add parallelism

* use test sharding

* expect 2 parallel runs

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
2024-03-19 20:50:14 -07:00
b2b0837592 Handle empty namespaces in import (#7619)
* handle blank namespaces in import

---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2024-03-19 13:05:14 -07:00
e305b46d88 Ensure a request for telemetry happens in Condition Sets (#7592)
* request telemetry when subscribing to data in case we have cached subscription

* change back to >=

* revert

* update tests

* fixing tests

* add metadata

* fix test

* another mock required

* one more function needed

* attempt to fix some afterall errors

* add fixme for e2e test

* fail fast on request

---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2024-03-19 10:44:50 -07:00
fb396ac194 [Telemetry Table] Telemetry mode bug fixes (#7601)
* source maps

* any tables without configuration will default to either default options or configured options

* prevent double unsubscribese

* remove source maps

* update coment

* moving defaults to plugin level

* whoops

* missed a spot, updated omment

* adding config values

* lint

* typos

* fixing broken ref

* fixing broken ref

* actually fixing ref

* setting rowLimit so initial change does not trigger a resubscribe of telemetry that was not subscribed yet
2024-03-19 02:34:00 +00:00
a01f21017f For the setTimeConductorMode, use the close time popup button rather than the submit button to dismiss time popup (#7613)
Use the close time popup button rather than the submit button as the submit button triggers network requests.
2024-03-18 23:48:33 +00:00
b7b9ccbe65 [TC Popup] Fix Calendar so it is not cutoff (#7596) 2024-03-18 23:28:09 +00:00
f189a4d602 Resize plans properly (#7597)
* resize firing

* ensure watcher fires

* remove unneeded const

* add small visual test resizing plan

* use browser with null viewport

* lint
2024-03-18 15:13:19 -07:00
4027eae299 chore(deps-dev): bump follow-redirects from 1.15.5 to 1.15.6 (#7603)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.5 to 1.15.6.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.5...v1.15.6)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-17 06:53:20 -07:00
d4695178bc remove reference to LGTM (#7591) 2024-03-16 11:33:55 -07:00
c19c4e7065 Merge branch 'master' into eval-source-maps 2024-03-15 10:41:14 -07:00
5fc5c13314 [Plot] Fix plot swatch behavior when vertical space is small (#7493)
Add overflow: hidden such that when vertical space is small, no autoscroll happens on the axis
2024-03-14 16:49:36 +00:00
ceeb761d94 [build] Re-enable package lock (#7584)
* include package lock
* migrate to npm ci
* remove cache busting doc and replace with npm run clean

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2024-03-14 16:27:31 +00:00
10eb749d32 Prevent Metadata Time System Error for Missing Objects (#7565)
https://github.com/nasa/openmct/pull/7565 Modified Stacked Plots to not show Missing Objects. Added a check in Telemetry Collections for missing objects before displaying telemetry metadata time system error.
2024-03-14 09:05:23 -07:00
faed27c143 fix(#7552): Fix notebook snapshot image annotations (#7555)
* fix: painterro import

* test(snapshotAnnotation): add minimal e2e test

* chore: add e2e test annotation

* fix: notebook snapshot test

* refactor: put `v-else` on template

* small changes to the test and a visual one

* additional a11y

* fix: html structure

* test(e2e): fix notebook snapshot tests

* Update documentation for file download and JSON testing

* Update stubs and add jpg/png export

* refactor(TimelistComponent): tidy up

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-13 20:27:49 +00:00
3bb4df8d39 enable eval-source-maps 2024-03-13 12:34:29 -07:00
18e976ad12 allow inspector pane content to scroll vertically (#7567)
* allow content to scroll vertically

* add framework for inspector content scrollable e2e test

* fix paths and spelling error

* add aria-label to properties list

* add scroll check to test

* use click, which scrolls if needed

* use scrollbar to scroll

* Closes #7566
- Fixed scrolling to only apply to the area below the Inspector tabs.
- Removed unneeded padding in pane.scss.
- Alignment fixes to related scroll elements in tree.

* cspell: ignore this file because it doesn't understand latin

* fix selectors and test

* lint fix

* driveby: wait for thumbnail bar to finish scrolling before taking snapshot

---------

Co-authored-by: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2024-03-13 19:04:02 +00:00
64862634f3 [Telemetry Table] Address issues found during testing Table Performance (#7529)
Fix exporting from Limited Mode: #7268 (comment)
Fix UI issues: #7268 (comment)
Apply configuration changes made in Edit Properties.

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2024-03-13 09:25:51 -07:00
cb4c59a464 fix(#7015): Generate source maps for generating code coverage metrics (#7582)
* fix(?): the robot says to do this...

* refactor: remove unused env var

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-12 17:02:41 -07:00
5f0bd10c61 Request batch when idle (#7526)
See https://github.com/nasa/openmct/pull/7526 for details
2024-03-12 20:46:06 +00:00
8c2558bfe0 fix(#7524): Open in New Tab action from a sub-object in a layout (#7542)
* refactor: url tools use named exports

* fix: refactor method and remove customUrlParams

* test(e2e): verify bounds are preserved in data pivoting

* test: remove test as feature is no longer needed

- dataVisualization logic has moved from MMGIS plugin to the open source. As such, we can just use the time conductor bounds

* refactor: autoformat keeps changing this so i'mma just commit it

* refactor: remove unnecessary code

* refactor: simplify, add docs

* Revert "refactor: remove unnecessary code"

This reverts commit 87aef35c510230835fb682b80e89a6006ef2d923.

* a11y: improve aria labels for ITC

* fix: simplify url method

* fix: update ITC app actions

* test: add test to generate test data for display layout w/ overlay plot + ITC enabled

* test(e2e): add suite + test for open in new tab from subobject

- needs cleanup

* a11y: various a11y improvement drivebys

* a11y: clock indicator needs to be quiet

* a11y: add `aria-live` to SuperMenu details

* a11y: greatly improve a11y of Menus and SuperMenus

* test(e2e): clean up test

* fix: improve a11y for context menus, fix test

* chore: remove nop-longer-recommended extension

* feat: provide one more bound option for example data viz

* fix: no need for `mount`, use dynamic rendering instead

* Revert "fix: simplify url method"

This reverts commit b24c7dabc783a9a1c3f2460eada99f452259f566.

* fix: correct time conductor bounds when opening in a new tab from a plot in the inspector

* test: fix e2e tests

* Revert "test: remove test as feature is no longer needed"

This reverts commit 759ebd4667bffb1979d5f62af6b47f349dcd9f77.

* test: move 2p annotation to test

* test: fix e2e

* fix: no words for the word god today

* test: fix e2e

* fix: e2e test

* test: fix test

* driveby: fix perf test

* fix: revert required prop change

---------

Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-11 16:39:38 -07:00
0eadc7a4ae chore(deps-dev): bump copy-webpack-plugin from 11.0.0 to 12.0.2 (#7574)
Bumps [copy-webpack-plugin](https://github.com/webpack-contrib/copy-webpack-plugin) from 11.0.0 to 12.0.2.
- [Release notes](https://github.com/webpack-contrib/copy-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/copy-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/copy-webpack-plugin/compare/v11.0.0...v12.0.2)

---
updated-dependencies:
- dependency-name: copy-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-11 16:33:15 -07:00
cad4652a08 chore(deps-dev): bump karma-webpack from 5.0.0 to 5.0.1 (#7575)
Bumps [karma-webpack](https://github.com/webpack-contrib/karma-webpack) from 5.0.0 to 5.0.1.
- [Release notes](https://github.com/webpack-contrib/karma-webpack/releases)
- [Changelog](https://github.com/codymikol/karma-webpack/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/karma-webpack/compare/v5.0.0...v5.0.1)

---
updated-dependencies:
- dependency-name: karma-webpack
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-11 16:03:50 -07:00
8379f2d073 chore(deps-dev): bump imports-loader from 4.0.1 to 5.0.0 (#7576)
Bumps [imports-loader](https://github.com/webpack-contrib/imports-loader) from 4.0.1 to 5.0.0.
- [Release notes](https://github.com/webpack-contrib/imports-loader/releases)
- [Changelog](https://github.com/webpack-contrib/imports-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/imports-loader/compare/v4.0.1...v5.0.0)

---
updated-dependencies:
- dependency-name: imports-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-11 16:03:12 -07:00
8ed112a4a8 chore(deps-dev): bump sass from 1.68.0 to 1.71.1 (#7577)
Bumps [sass](https://github.com/sass/dart-sass) from 1.68.0 to 1.71.1.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.68.0...1.71.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-11 15:42:05 -07:00
14c58c4410 chore(deps-dev): bump npm-run-all2 from 6.1.1 to 6.1.2 (#7579)
Bumps [npm-run-all2](https://github.com/bcomnes/npm-run-all2) from 6.1.1 to 6.1.2.
- [Release notes](https://github.com/bcomnes/npm-run-all2/releases)
- [Changelog](https://github.com/bcomnes/npm-run-all2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bcomnes/npm-run-all2/compare/v6.1.1...v6.1.2)

---
updated-dependencies:
- dependency-name: npm-run-all2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-11 15:40:13 -07:00
87ba9fcbc0 [Mobile] Make Time Conductor Usable Again (#7515)
* Initial changes to refactor Time Conductor

* Finish refactor using grid-template

* Finish total refactor of Time Conductor

* Initial mobile changes

* Fix TC on mobile by changing grid template

* Fix more mobile stuff

* Add ellipsize to TC popup options and rearrange popup inputs and labels

* Small final changes so TC is adaptive to extreme cases

* Add e2e mobile test

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-08 12:22:09 -08:00
ab49f3f3a1 fix(#7215)[Fault Management]: Fix shelving and acknowledging faults with single and bulk actions (#7559)
* refactor: merge FaultManagementListView into FaultManagementView

* refactor: make `selectedFaults` a computed property

* refactor: use named exports

* fix: reset fault map AFTER selectedFaults have been acknowledged

* a11y: add aria labels for fault management toolbar buttons

* refactor: use named import/exports

* a11y: add label

* a11y: add aria label for checkboxes

* fix: acknowledging or shelving single fault from context menu should only apply to selected fault

* refactor: use change event instead of input event for checkbox

* test: fix e2e tests, remove expect.softs

* test: stabilize fault management e2e tests
2024-03-06 15:28:38 -08:00
df969722d1 d3 implementation of progress pie chart (#7485)
* d3 implementation of progress pie chart

* Handle 0% and 100% cases

* PR #7485
- Minor tweaks to `s-selected` styling.

* add in-progress class for compact view

* Fix issue where updating progress for pie chart wasn't working till at least one clock tick.
Write tests for progress pie

* update documentation for clock annotation

* Update clock annotation in tests

* split long testfile

* driveby missing test

* driveby fix flake

* temp: fix flake and prep for visual test

* Fix linting errors

* this should be resolved

* these keep popping up

* moving some of this around

* moving this around

* the test

* Fix imports for tests

* no longer need constant

* move to front

* Stabalize name

* test(missionStatus): fix visual test

---------

Co-authored-by: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2024-03-05 14:45:28 -08:00
ef62633df1 chore(deps-dev): bump sass-loader from 14.0.0 to 14.1.1 (#7512)
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 14.0.0 to 14.1.1.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v14.0.0...v14.1.1)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-04 19:10:15 -08:00
597dc58eb7 chore: minor formatting fix for PR template (#7550)
Minor formatting nitpick
2024-03-04 19:09:33 -08:00
5d00d642f3 [CI] Temp disable flakefinder as we it's generating too many GHA minutes (#7548)
Temp disable flakefinder as we it's generating too many GHA minutes
2024-03-04 18:32:12 -08:00
39ab81c3d0 fix(overlay plot): legend updates correctly when removing element via remove action (#7531)
* fix: remove duplicate listeners
* fix: if no series found, don't splice
* test(e2e): update legend a11y and add test
2024-03-05 02:07:44 +00:00
0bdd0963a4 Limit lines handle plot resizing (#7151)
* Fix error when removing staleness subscription due to incorrect parameter

* On resize, clear the drawing API to reset the height and width for point calculation.

* Add e2e test to test limit lines after resizing the plot view.

* We need to update viewport when drawing limits in case there is no data for plots.

* Address review comments. change event naming convention and reduce debounce time.

* Use limit line and label seriesKeys to make ids unique

* Improve locator for limit lines checkbox

* Add a check for network requests when limit lines are redrawn
2024-03-04 17:02:30 -08:00
eae51356c8 chore(deps-dev): bump plotly.js-basic-dist-min from 2.20.0 to 2.29.1 (#7523)
Bumps [plotly.js-basic-dist-min](https://github.com/plotly/plotly.js) from 2.20.0 to 2.29.1.
- [Release notes](https://github.com/plotly/plotly.js/releases)
- [Changelog](https://github.com/plotly/plotly.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.js/compare/v2.20.0...v2.29.1)

---
updated-dependencies:
- dependency-name: plotly.js-basic-dist-min
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-04 16:22:18 -08:00
a36ad3f5e7 chore(deps-dev): bump webpack-dev-server from 4.15.1 to 5.0.2 (#7544)
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 4.15.1 to 5.0.2.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v4.15.1...v5.0.2)

---
updated-dependencies:
- dependency-name: webpack-dev-server
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-04 16:11:50 -08:00
307ededd19 chore(deps-dev): bump eslint-plugin-vue from 9.18.1 to 9.22.0 (#7545)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.18.1 to 9.22.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.18.1...v9.22.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-04 15:57:12 -08:00
d7ecfdf10f chore(deps-dev): bump webpack from 5.89.0 to 5.90.3 (#7546)
Bumps [webpack](https://github.com/webpack/webpack) from 5.89.0 to 5.90.3.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.89.0...v5.90.3)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-04 13:42:26 -08:00
a1c36f314d chore(deps-dev): bump sanitize-html from 2.11.0 to 2.12.1 (#7539)
Bumps [sanitize-html](https://github.com/apostrophecms/sanitize-html) from 2.11.0 to 2.12.1.
- [Changelog](https://github.com/apostrophecms/sanitize-html/blob/main/CHANGELOG.md)
- [Commits](https://github.com/apostrophecms/sanitize-html/compare/2.11.0...2.12.1)

---
updated-dependencies:
- dependency-name: sanitize-html
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-04 13:20:17 -08:00
86e636cbce chore(deps-dev): bump @axe-core/playwright from 4.8.2 to 4.8.5 (#7496)
Bumps [@axe-core/playwright](https://github.com/dequelabs/axe-core-npm) from 4.8.2 to 4.8.5.
- [Release notes](https://github.com/dequelabs/axe-core-npm/releases)
- [Changelog](https://github.com/dequelabs/axe-core-npm/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/dequelabs/axe-core-npm/commits/v4.8.5)

---
updated-dependencies:
- dependency-name: "@axe-core/playwright"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-03 09:06:49 -08:00
0d2b36ae82 chore(deps-dev): bump vue-eslint-parser from 9.3.2 to 9.4.2 (#7471)
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 9.3.2 to 9.4.2.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v9.3.2...v9.4.2)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-03 08:55:45 -08:00
95072da257 chore(deps-dev): bump marked from 11.2.0 to 12.0.0 (#7467)
Bumps [marked](https://github.com/markedjs/marked) from 11.2.0 to 12.0.0.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/.releaserc.json)
- [Commits](https://github.com/markedjs/marked/compare/v11.2.0...v12.0.0)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-03 08:41:49 -08:00
faa2621e26 chore(deps-dev): bump css-loader from 6.8.1 to 6.10.0 (#7466)
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 6.8.1 to 6.10.0.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v6.8.1...v6.10.0)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-03-03 08:29:37 -08:00
73eead6b72 [Mobile] Center Confirmation Dialog Texts (#7492)
* Make overlay messages centered

* Fix changes so that only dialogs and not forms are affected

* Fix buttons such that they are right-aligned

* Reduce to one worker for stability

* Add test to cover new capabilities

* lint fixes

* Closes #7343
- Fixed an oversight that caused the top of form dialogs to
be scrolled out of view by default.
- Fixed approach to vertical centering for `-fit` type confirmation dialogs.
- Reduced size of confirmation dialog icons.
- Smoke tested in Chrome mobile emulator in a large variety of mobile
viewport sizes and orientations.

* Closes #7343
- Removes extra margin unintentionally added to `l-overlay-large`.

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
2024-03-03 16:14:45 +00:00
e449fd0eda Fix visible toolbar overflow (#7037)
* Closes #7036
- CSS fix to prevent toolbar overrun of main view area.

* a11y: add label to pane handles

* test(visual): toolbar overflow

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-02-29 11:26:51 -08:00
7d25c967a5 Allow test data toggle to be clicked (#7479)
* Add the disabled class instead of the disabled property

* Add test for condition set test data

* Use computed property for css class

* Use array syntax for class instead of computed value

* Fix .getByTitle locators to use .getByLabel instead

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-02-28 19:44:37 +00:00
dc9bd8bcb1 Remove all logic around auto centering and scrolling the timelist (#7474) 2024-02-22 17:56:54 +00:00
29d83e9c6d fix(#7456): allow children of Overlay Plots to be removed (#7516)
* fix(#7456): check if object is an identifier

* refactor: use v-show, remove unnecessary deep copy, set yAxes array to empty in a way that preserves reactivity

* refactor: use ESM exports

* refactor: use ESM imports

* test(e2e): add test for element item removal from overlay plot

* a11y: add accessible name for object labels

* refactor: move overlayPlot creation to beforeAll, use getByLabel
2024-02-21 16:07:48 -08:00
6393a77c19 [Mobile] Add Global Search to Mobile (#7477)
* Add status area back to mobile

* Make search results responsive to width

* Make clear search button always visible, regardless of hover

* Make clear search button visible, and fix weird margin in top left corner

* Fix input width, add logic to make close button work properly, fix margin on results so there is room for close button, fix various landscape mode issues

* update mobile testing

* Fix dropdown sizes, remove shadows and corners to make it look less like a popup and more full screen

* Add animation and persist search bar in mobile

* Fix linting issues

* Fix padding in Desktop

* fix padding in status area

* fix bad merge

* lint fixes

* fix bad merge... again

* again

* fixes to mobile

* update tests

* lint fix

* test fixes

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-02-21 15:29:38 -08:00
6bbabf9c45 chore(deps-dev): bump vue from 3.3.8 to 3.4.19 (#7511)
Bumps [vue](https://github.com/vuejs/core) from 3.3.8 to 3.4.19.
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/compare/v3.3.8...v3.4.19)

---
updated-dependencies:
- dependency-name: vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2024-02-21 15:13:02 -08:00
f18d1d2a51 Add Collapse to Recent Objects (#7502)
* initial functional implementation

* removing vestigial code

* Fix styles for button bar

* Remove bound for :persist-position

* Revert "Remove bound for :persist-position"

This reverts commit ce2ea422d7.

* test(e2e): modify existing test to verify collapse/expand recent objects pane

---------

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2024-02-21 21:28:29 +00:00
5894c66df1 docs(release.yml): make plural (#7517) 2024-02-20 14:58:44 -08:00
6ff8c42041 docs: Update release.yml and docs (#7514)
Attempt one
2024-02-20 14:29:00 -08:00
9870a6bc9c Check role when receiving status updates in the Operator Status Indicator (#7509)
* check role when receiving status updates

* pass role to get status
2024-02-16 21:45:04 +00:00
317ea8c275 docs: Add openmct type hints (#7247)
* Add setAssetPath method to MCT type information

* Add TypeRegistry to OpenMCT typedef
2024-02-16 16:56:13 +00:00
bc36a93b9b chore: bump version to 4.0.0-next (#7506)
Bump to 4.0.0
2024-02-15 13:49:04 -08:00
847232d64b style: ensure legacy indicators align with Vue indicators (#7458)
* style: ensure legacy indicators align with Vue indicators

* fix: move logic to `vueWrapHtmlElement` and use `u-contents` class
2024-02-15 20:22:52 +01:00
4fbccd4c91 Ensure object specific actions load in previews (#7504)
* add actions after element has had chance to render

* add test

* remove test.only
2024-02-15 18:00:04 +00:00
cd560bceed Bypass cache/dirty when canceling transaction (#7503)
* force remote/non-cached when canceling transaction

* add test

* update unit test
2024-02-15 09:26:45 -08:00
e08633214e Misc memory leak fixes (#7224)
* fix(leak): remove font listeners

* fix(leak): release componentInstance

* fix(perf): remove unused emit

* fix(perf): only emit if tickWidth changes

* fix: warnings and undefined keys

* fix: remove unused bind

* fix: restore MctTicks component
2024-02-14 23:49:02 +00:00
a9ad0bf38a When plan view is used in a gantt chart, handle the domain object differently. (#7473)
Rename for readability. Track plan changes if object is a plan.
2024-02-14 22:32:50 +00:00
5f8d6899d2 Plot legends expand by default when enabled (#7453)
* expanded legend showing, but malformed

* fix legends

* add e2e test and aria labels for controls

* fix tests

* remove focused test

* make plot legend items dynamic

* expand legend immediately when changing default

* Ensure stacked plots show cumulative legend (#7481)

* simplify config loading logic

* wip

* fixed stacked plot legend issue

* fix legend

* remove console.debugs

* remove extraneous prop

* add test

* fix legend

* use props
2024-02-07 18:35:19 +00:00
cd6adbadde Upgrade prettier and eslint compatibility libraries to latest (#7478)
* chore: upgrade prettier and eslint libraries to latest

- upgrade prettier
- upgrade eslint
- upgrade eslint-plugin-prettier
- upgrade eslint-config-prettier

* chore: run lint:fix

* chore: add `prettier-eslint` devDependency

- The `prettier-eslint` vscode plugin sinc v6.0.0 no longer provides this package so we must install it as a devDependency so that autoformat works.

* chore: add recommended extensions file for vscode users

* Update extensions.json

* Revert "Update extensions.json"

This reverts commit 942f341a75.

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-02-07 00:16:22 +00:00
539b43325a test(e2e): add e2e and visual tests for Mission Status (plus a11y) (#7462)
* feat: enable mission status in example user

* test: add initial missionStatus suite

* test(WIP): mission status e2e suite

* test(e2e): add e2e and visual tests for mission status + a11y

* test(a11y): scan for a11y violations

* a11y: remove labels for non-interactive elements
2024-02-06 21:44:01 +00:00
eeb8e9704b Ensure previews work for plots (#7459)
* fix large view in tree

* remove existing view concept

* fix plots in overlays

* remove debug and actually remove overlays when dismissed

* add test

* improve tests

* move test
2024-02-06 08:16:31 +01:00
0aceb4b590 Filter values as a string not an object (#7448)
* Push the value of a property to the activity as a string if it is not undefined.

* Add documentation for sourceMap filterMetadata

* Allow . for filtering. Check for null values
2024-02-05 18:38:37 +00:00
82fa4c1597 feat: Mission Status for Situational Awareness (#7418)
* refactor: `UserIndicator` use vue component directly

* style(WIP): filler styles for user-indicator

* feat(WIP): working on mission status indicators

* feat: support mission statuses

* feat(WIP): can display mission statuses now

* feat(WIP): add composables and dynamically calculate popup position

* feat(WIP): dismissible popup, use moar compositionAPI

* Closes #7420
- Styling and markup for mission status control panel.
- Tweaks and additions to some common style elements.

* feat: set/unset mission status for role

* refactor: rename some functions

* feat: more renaming, get mission role statuses working

* refactor: more method renaming

* fix: remove dupe method

* feat: hook up event listeners

* refactor: convert to CompositionAPI and listen to events

* fix: add that back in, woops

* test: fix some existing tests

* lint: words for the word god

* refactor: rename

* fix: setting mission statuses

* style: fix go styling

* style: add mission status button

* refactor: rename `MissionRole` -> `MissionAction`

* test: fix most existing tests

* test: remove integration tests already covered by e2e

- These tests are going to be wonky since they depend on the View. Any unit tests depending on Vue / the View will become increasingly volatile over time as we migrate more of the app into the main Vue app. Since these LOC are already covered by e2e, I'm going to remove them. We will need to move towards a more component / Vue-friendly testing framework to stabilize all of this.

* docs: add documentation

* refactor: rename

* fix: a comma

* refactor: a word

* fix: emit parameter format

* fix: correct emit for `missionStatusActionChange`

---------

Co-authored-by: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-02-02 22:50:16 +00:00
ee5081f807 test(visual): add unclipped activity names visual tests + a11y fixes (#7454)
* test: add unclipped activity names visual tests + a11y fixes

* lint: add additional dictionaries
2024-02-02 19:47:52 +00:00
3cbaa7bf07 Have countdowns in the Timelist use a - symbol (#7452)
* fix issue

* add test

* remove debugger

* expanded legend showing, but malformed

* Revert "expanded legend showing, but malformed"

This reverts commit b954f00257.
2024-02-02 09:37:37 +01:00
18e4b9da65 Add Expanded view for Time List (#7378)
* Add activity states domain object and interceptor to auto create one

* Add activity state inspector option

* Only save status if we have a unique ids for activities

* Include the id in the activity properties

* Don't show activity state section in the inspector if multiple activities are selected

* Display activity properties when an activity row is selected in the timelist

* Add compact view for timelist

* Add inspector configuration for compact view

* Set colors based on time relation of activity

* Use activity id as key if it is available

* Ensure the correct option is selected for activity states

* Closes #7377
- Markup and CSS sanding and polishing.
- Still WIP!

* Closes #7377
- Markup and CSS sanding and polishing.
- Still WIP!

* Add status label

* Rename to Expanded view and isExpanded as properties. Add display style dropdown configuration in the inspector.

* Refactor activity selection. Display activity properties

* Closes #7377
- Label formatting Todo notes about states.
- Computed values and `v-ifs` added to control display for progress pie and countdown 'hero'.
- Still WIP!

* Closes #7377
- Add svg icons and some stubbed in logic.
- Still WIP!

* Remove activity states plugin. Move the activity states interceptor to the plan plugin.

* Change activity states interceptor parameters to options

* Rename constants

* Fix activity states test

* Addresses review comments making code more readable.

* Closes #7377
- Significant adds for large Time List element styling for activity states.
- `$color*` Time List-related theme constants remapped and significantly enhanced.
- Code cleanup and removal of stubbed-in SCSS vars.

* Closes #7377
- Unit testing and colors in Snow in progress.
- Fixed erroneous checkin in ExpandedViewItem.vue.

* Remove ExpandedView component and pull the ExpandedViewItem up to the top level.
Same for ListView, pulling the ListItem up one level.

* Fix sorting for compact view.
Hardcode options for switching compact/expanded views.

* Closes #7377
- Snow Time List colors finalized and smoke tested.
- New graphic SVG for skipped activity.
- Added aria labels to SVG graphics.

* Closes #7377
- Fixed div with no class.

* Add e2e test for activity states feature.

* Address review comments. Rename variables, documentation.

* No shallow copy

* Merge updates to activity-state

* Sync with activity states PR

* Draft of progress-pie

* - Add `s-selected` styling for Expanded Time List elements.

* Add 2 new date formats

* Look and feel enhancements for pie, zero duration events and start and end time formats

* Fix pie show/hide condition

* Final touches to the pie and labels

* Refactor label logic

* Closes #7377
- Added `sweep-hand` animation element to progress pie graphic SVG.

* Remove use of ListView - no point passing arrays around since we are already using sortedItems and itemProperties for expandedViewItems

* We addded a new column for duration and changed the previous duration to countdown. This required adjustment of the test

* Fix expanded view for timelist tests

* Closes #7377
- Fixed display logic for inferred execution states.

* Closes #7377
- Fixed a bug that threw console errors when a value was undefined.

* Optimize rendering of timelist activities

* Remove focused test

* Address review comments

* Remove reactive selection for plan activities

* destructure props into individual item properties for render performance benefits

* Use local variables and remove JSON utility methods

* Change cancelled to skipped

* Focus the activity tab when shown

* Fix label updates

* Add countup to cspell

* Remove progress pie due to licensing unknowns

---------

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
2024-01-30 16:30:57 -08:00
d42aa545bb Add support for multiple CouchDB databases, multiple namespaces, and readOnly configurations (#7413)
* two namespaces appear

* works with two databases

* try to batch requests

* fix indicators

* add option to omit root for myitems

* ready for review

* ready for review

* ready for review

* typo in README

* spelling

* spelling

* update readme

* fix tests

* Update src/plugins/persistence/couch/README.md

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* remove omitRoot

* remove omitRoot

* fix my items to check for namespace when intercepting

* update readme

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2024-01-30 15:10:31 -08:00
69b81c00ca [e2e] Steps to reduce flakiness in test reporting (#7436)
* flakefinder gha

* Update e2e-flakefinder.yml

* driveby

* skip visual

* first attempt at sharding with circle

* Updated config.yml

* fixes

* missing quote

* re-enable old jobs and update to 7x

* max failures

* destructure the npm script

* missing quote

* revert

* uncomment and re-add 7 parallel

* add unit tests

* add p flag

* skip the flaky test
2024-01-30 14:21:52 -08:00
068ac4899d Fix constrast for accessibility (#7315)
* Closes #7304
- Change colors to increase contrast.
- New base level theme color var: `$colorBodyFgSubtle`.
- Minor CSS cleanups.
- WARNING: this appears to have added a regression in selects
that colors the arrow black in Espresso.

* Closes #7304
- Fix dropdown arrow colors, whew.
- Normalize font sizes in Status area.
- More color changes for contrast, including new theme constants.
- TODO: compare and sync Espresso with other themes.
- TODO: check for regressions!

* disable ruleset

* Closes #7304
- Normalize font sizes in multiple spots.
- More color changes for contrast, including more new theme constants.
- TODO: compare and sync Espresso with other themes.
- TODO: check for regressions!

* Closes #7304
- Reorganize CSS files for more uniformity.

* Closes #7304
- CSS normalized across all themes via Google Sheet at https://docs.google.com/spreadsheets/d/1SEEtuNSq6I7gvVHKpHW8_fp8Ltc-HOAWxrSAkUzS6Kw/edit?usp=sharing

* Closes #7304
- Color tweaks, normalization.

* Closes #7304
- Color tweaks, normalization.
- Search layout, contrast and font-size improvements.
- Added '+' icons to collapsed pane buttons.

* Closes #7304
- Shell head layout improvements.

* Update ColorKey for Take Snapshot Failures and Opacity labels. Also fix create menu

* Closes #7410
- CHERRY PICK FROM event-colors-7410.
- Event display approach modified to include background color.
- Theme colors modified and constrast verified via Wave a11y browser plugin.

* Closes #7304
- Set back to install Espresso theme by default.

* temporarily skip

* remove comment

* lint

* Update default colors

* update snapshot

* missed

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2024-01-29 21:30:55 -08:00
f8d936a834 Use different root for renderWhenVisible (#7415)
* attempt to fix

* reenable test

* going to revert most of this, but works

* slowly reverting changes

* further reversions to the mean

* reversion to the mean

* revert

* change to use openmct element

* reference issue

* reference issue

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-01-29 15:33:47 -08:00
5c21c34568 Support telemetry batching and move WebSocket handling to worker (#7391)
* Support subscription batching from API, Tables, and Plots

* Added batching worker

* Added configurable batch size and throttling rate

* Support batch size based throttling

* Default to latest strategy

* Don't hide original error

* Added copyright statement

* Renamed BatchingWebSocketProvider to BatchingWebSocket

* Adding docs

* renamed class. changed throttling strategy to be driven by the main thread

* Renamed classes

* Added more documentation

* Fixed broken tests

* Addressed review comments

* Clean up and reconnect on websocket close

* Better management of subscription strategies

* Add tests to catch edge cases where two subscribers request different strategies

* Ensure callbacks are invoked with telemetry in the requested format

* Remove console out. Oops

* Fix linting errors
2024-01-29 15:17:55 -08:00
0eea2e0bbc chore(deps-dev): bump marked from 11.1.0 to 11.2.0 (#7427)
Bumps [marked](https://github.com/markedjs/marked) from 11.1.0 to 11.2.0.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/.releaserc.json)
- [Commits](https://github.com/markedjs/marked/compare/v11.1.0...v11.2.0)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-01-29 12:32:06 -08:00
61acc91200 chore(deps-dev): bump sass-loader from 13.3.2 to 14.0.0 (#7428)
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 13.3.2 to 14.0.0.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v13.3.2...v14.0.0)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-01-29 12:31:36 -08:00
a52982d2bf chore(deps-dev): bump moment from 2.29.4 to 2.30.1 (#7425)
Bumps [moment](https://github.com/moment/moment) from 2.29.4 to 2.30.1.
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.29.4...2.30.1)

---
updated-dependencies:
- dependency-name: moment
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-29 12:27:25 -08:00
1d40b134b6 Make Tabs eager loading configurable but default to false (#7199)
* convert tabs plugin to use es6 import/export

* default of eager load is false but configurable

* change true/false select to toggleSwitch

* add and clean up unit tests

* Update test

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-01-29 12:08:38 -08:00
735c8236e5 Skip some tests, fix a mislabeled test, and add default condition for tabs (#7422)
* wrong format

* skip the flake for now

* Add Tabs test

* one more flake
2024-01-28 16:28:49 -08:00
dc5a3236b3 Activity state display for plans in Gantt and Time list views (#7370)
* Add activity states domain object and interceptor to auto create one

* Add activity state inspector option

* Only save status if we have a unique ids for activities

* Include the id in the activity properties

* Don't show activity state section in the inspector if multiple activities are selected

* Display activity properties when an activity row is selected in the timelist

* Use activity id as key if it is available

* Ensure the correct option is selected for activity states

* Add status label

* Refactor activity selection. Display activity properties

* Remove activity states plugin. Move the activity states interceptor to the plan plugin.

* Change activity states interceptor parameters to options

* Rename constants

* Fix activity states test

* Add e2e test for activity states feature.

* Address review comments. Rename variables, documentation.

* No shallow copy

* Suppress lint warning for conditionals

* Remove check for abort controller

* Move classes to components

* number primitive

* Closes #7369
- WIP tweaks to simplify the Inspector view.

* Ensure 'notStarted' is the default state for activities

* Remove extra quotes

* Closes #7369
- Mod to `s-selected` styling to allow selection visiblity on Time List rows.

* Use generated key for vue

* Fix e2e tests

* Fix timelist test

---------

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-01-28 15:46:10 -08:00
60e1eeba8e Add filtering by metadata (#7388)
* Add filtering by metadata. Add new sourceMap property to get a list of properties for metadata filtering.

* Change filter label names

* Add aria-labels

* Closes #7389
- Added a "No filters applied" message for both input areas.
- Added additional detail about how it works in the hint text visible while editing.

* Restore valid state if there is an error

* Fix linting error

* Tests for filtering by metadata

---------

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2024-01-28 18:04:52 +00:00
1fc6056c51 Set disabled items to use disabled property (#7342)
* Closes #7322
- New CSS for `aria-disabled = true` property.
- Changed multiple items to use aria-disabled instead of .disabled, including:
  - Action menu
  - Super menu
  - Notebook drag area
- Tree item style modded to only italicize when is-navigated and is being edited.

* Closes #7322
- New CSS for `aria-disabled = true` property.
- Changed multiple items to use aria-disabled instead of .disabled, including:
  - Action menu
  - Super menu
  - Notebook drag area
- Tree item style modded to only italicize when is-navigated and is being edited.
- Create button sets itself to `disabled` when the editor is in use.

* Closes #7322
- Create button now _actually_ sets itself to `aria-disabled` when the editor is in use.
- CSS removes selector for `.is-editing`.

* fix conflict

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-01-26 14:55:13 -08:00
b9df97e2bc Table performance paging (#7399)
* dereactifying the row before passing it to the commponent

* debouncin

* i mean... throttle

* initial

* UI functionality, switching between modes, prevention of export in performance mode, respect size option in swgs

* added limit maintenance in table row collectins, autoscroll respecting sort order

* updating the logic to work correctly :)

* added handling for overflow rows, this way if an object is removed, we can go back to the most recent rows for all remaining items and repopulate the table if necessary

* removing debug row numbers

* Closes #7268
- Layout and style sanding and polishing.
- Added title to button.
- More direct button labeling.

* Closes #7268
Partially closes #7147
- Removed footer hover behavior: table footer now always visible.
- Tweaks to style, margin etc. to make footer more compact.

* moved row limiting out of table row collections and into telemetry collections, table row collections will only limit what they return in getRows, handling sorting when in different modes

* have swgs return enough data to fill the requested bounds

* support minmax in swgs

* using undefined for more clarity

* clearing up boolean typo

* Address lint fixes

* removing autoscroll for descending, it is not necessary

* update snapshots

* lint

---------

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2024-01-26 13:24:24 -08:00
b985619d16 Table CPU Performance Improvements (#7392)
* dereactifying the row before passing it to the commponent

* debouncin

* i mean... throttle
2024-01-26 10:40:16 -08:00
3e31bbef97 Get actions collection on Preview Container update (#7385)
* Get actions collection on Preview Container update

* Added fixme and link to initial ticket

* Stubbed out preview mode e2e test

* Lint fix

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2024-01-26 17:35:52 +00:00
3e5ada8f5f Fix actions menu on display layout alphanumerics (#7414)
* remove errant action

* add e2e test
2024-01-25 16:26:03 +01:00
2b2c74da9c New action to reload an individual view and all of its children (#7362)
* add reload action plugin

* checking for domain object before reloading

* check if objects are equal before refreshing

* add test

* lint

* change to label

* ensure object styles are initialized

* resubscribe to staleness too

* add better labels for tabels

* ensure tab uses exact for label now due to table aria changes

* fix table tests

* make tabs exact

* update conflicts

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2024-01-25 05:36:44 +00:00
450cab428f move performance tests to GHA (#7412)
* move performance tests to GHA

* no need for chrome beta

* Add baseline imagery test

* skip flaky app

* lint
2024-01-24 21:26:48 -08:00
0340fe18fa Change Imagery positional freshness label from 'POS' to 'ROV' (#7409)
Closes #7404
- Change 'POS' to 'ROV'.
2024-01-25 05:18:29 +00:00
114864429a feat(#7394): Incorporate Status Indicators into the main Vue app (#7395)
* feat(IndicatorAPI): accept Vue components

- Adds a new property to Indicators, `component`, which is a synchronous or asynchronous Vue component.
- Adds `wrapHtmlElement` utility function to create anonymous Vue components out of `HTMLElement`s (for backwards compatibility)
- Refactors StatusIndicators.vue to use dynamic components, allowing us to dynamically render indicators (and keep it all within Vue's ecosystem).

* refactor(indicators): use dynamic Vue components instead of `mount()`

- Refactors some indicators to use Vue components directly as async components

* refactor: use Vue reactivity for timestamps in clock indicator

* fix(test): fix unit tests and remove some console logs

* test(e2e): stabilize ladSet e2e test

* test: mix in some Vue indicators in indicatorSpec

* refactor: cleanup variable names

* docs: update IndicatorAPI docs

* fix(e2e): wait for async status bar components to load before snapshot

* a11y(e2e): add aria-labels and wait for status bar to load

* test(e2e): add exact: true

* fix: initializing indicators

* fix(typo): uhhh.. how did that get there? O_o

* fix: use synchronous components for default indicators

* test: clean up, remove unnecessary `nextTick()`s

* test: remove more `nextTick()`s

* refactor: lint:fix

* fix: `on` -> `off`

* test(e2e): stabilize tabs test

* test(e2e): attempt to stabilize limit lines tests with `toHaveCount()` assertion
2024-01-23 23:15:22 +00:00
4cf63062c0 Mct7367-tests (#7387)
* refactor(ExportAsJSONAction): use private methods

* refactor: remove unnecessary webpack alias

* refactor: lint

* fix: tests for `ExportAsJSONAction`

* test: stabilize `InspectorStylesSpec` tests

* docs: fix jsdocs

* chore: remove dead / redundant code

* refactor(LocalStorageObjectProvider): use `getItem()` and `setItem()`

* refactor(ExportAsJSONAction): use `Promise.all` where applicable

* refactor(MenuAPI): one-liner

* feat: add percentage ProgressBar to ExportAsJSONAction

* fix(ProgressBar.vue): v-if conditionals

* test(fix): update mockLocalStorage

* test: fix locators

* test: remove unneeded awaits

* fix: example imagery urls (moved after NASA wordpress migration)

* Revert "refactor(LocalStorageObjectProvider): use `getItem()` and `setItem()`"

This reverts commit 4f8403adab.

* test(e2e): fix logPlot test

* Revert "Revert "refactor(LocalStorageObjectProvider): use `getItem()` and `setItem()`""

This reverts commit 0de66401cd.

* test(e2e): remove waitForNavigations

* driveby and fixes

* aria improvement

* getting tests back oline

* more tests

* add last test

* Add a11y

* lint

* lint

* driveby

* review comments

* driveby rename

* fix selectors and break up test suites

* add test for snapshot in header

* last lint fixes

* stable

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2024-01-22 21:41:56 -08:00
43ae3cf655 Provide renderWhenVisible to LadTableSets (#7384)
* Provide renderWhenVisible for LadTables

* fix open in new tab

* add test for open in new tab

* fix test to include renderWhenVisible

* refactor test

* fix tests

* fix tests

* having timing issues now
2024-01-19 09:47:44 +01:00
01434ff2d5 feat(#7367): ProgressBar for ExportAsJSONAction (#7374)
* refactor(ExportAsJSONAction): use private methods

* refactor: remove unnecessary webpack alias

* refactor: lint

* fix: tests for `ExportAsJSONAction`

* test: stabilize `InspectorStylesSpec` tests

* docs: fix jsdocs

* chore: remove dead / redundant code

* refactor(LocalStorageObjectProvider): use `getItem()` and `setItem()`

* refactor(ExportAsJSONAction): use `Promise.all` where applicable

* refactor(MenuAPI): one-liner

* feat: add percentage ProgressBar to ExportAsJSONAction

* fix(ProgressBar.vue): v-if conditionals

* test(fix): update mockLocalStorage

* test: fix locators

* test: remove unneeded awaits

* fix: example imagery urls (moved after NASA wordpress migration)

* Revert "refactor(LocalStorageObjectProvider): use `getItem()` and `setItem()`"

This reverts commit 4f8403adab.

* test(e2e): fix logPlot test

* Revert "Revert "refactor(LocalStorageObjectProvider): use `getItem()` and `setItem()`""

This reverts commit 0de66401cd.

* test(e2e): remove waitForNavigations
2024-01-18 12:21:36 +01:00
70f5ba9ca8 Clear active role if no longer in available roles (#7345)
* if role is removed from user, reprompt

* add some basic user login tests

* add more robust user tests

* add more robust user tests

* resolve PR comments

* setup event listener earlier
2024-01-16 17:57:57 +01:00
11f3ce9470 fix(#7055): Expand on image with double click (#7308)
* Add double click event to expand image view

* Add performance tests for large view and close
button

* Add example imagery in flexible layout to test double-click functionality

* Remove click event listener in ImageryView.vue

* Move test to 'Example Imagery in Flexible layout'

* Refactor exampleImagery.e2e.spec.js

* Remove unnecessary code for opening and closing
large view in imagery.contract.per.spec.js

* Replace pageSelector with getByRole on double-click image test

* Add role and aria-label to focused image

* Remove unnecessary code and role attribute from ImageryView.vue

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2024-01-14 15:55:11 -08:00
6ce340cebd [e2e] Update remaining tests and add missing comparison coverage (#7363) 2024-01-11 14:47:00 -08:00
6fd7b6f7a3 Add right click actions on imagery to allow high resolution download (#7371)
* action stubs in place

* first draft of actions

* delete copy

* add test

* remove console.debug
2024-01-11 19:57:04 +01:00
3ff2f029eb chore: update copyright end year to 2024 (#7364) 2024-01-09 13:31:51 -08:00
67a1094a1f Timelist centering algorithm change and duration formatting change (#7194)
* Change the centering algorithm for timelist
Make duration formatting better

* test: add time list countdown and countup test

* test: respond to comments

* chore: lint fix

* fix: lint errors and visual suite failures

* Change parameters to options object

* Fix regression with auto scroll. Improve code readability

* Add defaults for getPreciseDuration options object

* Defaults for options

* Add missing await

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2024-01-08 23:14:33 +00:00
64d4ddd80e Set location hash if query parameters or path have changed (#7306)
* refactor to es6 class

* change URL on path or params change

* add test for url

* put into edit mode for test

* es6 module export

* a11y: add `status` role to clock component

* a11y: add label to overlay

* a11y: update roles for search results

* a11y: add `dialog` role and label for PreviewContainer

* refactor(e2e): get rid of a bunch of `page.locator()`s

* refactor(e2e): spruce up locators

* test: fix unit tests

* fix tests with new aria labels

* fix tests with new aria labels

* fix tests with new aria labels

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2024-01-08 20:29:01 +01:00
dfba4e23c5 fix(#7338): Persisted styles correctly apply to StackedPlotItems on mount (#7341)
* refactor: use `Plot` component directly in `StackedPlotItem` template

* test(e2e): fix style test for stackedplot

* test(e2e): add annotation back in

* test: fix unit tests

* refactor: tidy up

* fix: move const, remove eslint ignore

* fix: apply staleness styling properly

* refactor: remove unused data()

* refactor: remove unused `isMissing`

* refactor: remove debug statements
2024-01-08 10:19:41 -08:00
70de7363d8 [Flexible Layouts] Flexible Layout styling fixes (#7319) 2024-01-03 17:11:35 -08:00
6f3bb5fc6f chore(deps-dev): bump @vue/compiler-sfc from 3.3.10 to 3.4.3 (#7332)
Bumps [@vue/compiler-sfc](https://github.com/vuejs/core/tree/HEAD/packages/compiler-sfc) from 3.3.10 to 3.4.3.
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/commits/v3.4.3/packages/compiler-sfc)

---
updated-dependencies:
- dependency-name: "@vue/compiler-sfc"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-02 17:46:40 +00:00
b220c2bad5 chore(deps-dev): bump typescript from 5.2.2 to 5.3.3 (#7335)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.2.2 to 5.3.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.2.2...v5.3.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-02 09:04:52 -08:00
74f30789ca chore(deps-dev): bump @babel/eslint-parser from 7.22.5 to 7.23.3 (#7232)
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.22.5 to 7.23.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.3/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-02 08:22:06 -08:00
fce98a1c47 refactor: migrate to ESM (#7331)
* refactor: move package.json to type: module

this is where the fun begins

* chore: move webpack common and prod to esm

* chore: move webpack to esm, eslint to explicit cjs

* refactor: migrate all files to esm

* style: lint

* refactor: begin moving karma to cjs, use dynamic esm import

* refactor: move index-test to cjs

* refactor: begin moving e2e to ESM

this was manual. I'm committing this because I'm about to try the `cjstoesm` tool

* refactor: move all to esm

* fix: make all e2e tests use .js imports

* refactor: begin moving exports to esm

* refactor: use URL transforms instead of __dirname

* fix: use libraryExport: default to properly handle openmct

* fix: export all playwright configs as modules

* refactor: move all instances of __dirname to import.meta.url

* refactor: lint, drop unnecessary URL call

* fix: use correct URL path on helper/addNoneditableObject.js

* fix: more incorrect URL resolve issues

* fix: parse json after reading it
2024-01-02 07:24:22 -08:00
68e60e332e fix: cleanup from #7029 (#7328)
* refactor: fix issues arose from #7029

* refactor: move replaceAll -> replace in makeKeyString

* fix: move order of escape to backslash first

* style: lint
2023-12-28 12:39:28 -08:00
5af491382e chore: watch mode improvements (#7326) 2023-12-27 21:48:14 -08:00
2e03bc394c feat: AMD -> ES6 (#7029)
* feat: full amd -> es6 conversion

* fix: move MCT to ES6 class

* fix: default drop, correct imports

* fix: correct all imports

* fix: property typo

* fix: avoid anonymous functions

* fix: correct typo

scarily small - can see why this e2e coverage issue is high priority

* fix: use proper uuid format

* style: fmt

* fix: import vue correctly, get correct layout

* fix: createApp without JSON

fixes template issues

* fix: don't use default on InspectorDataVisualization

* fix: remove more .default calls

* Update src/api/api.js

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* Update src/plugins/plugins.js

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* Update src/plugins/plugins.js

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* fix: suggestions

* fix: drop unnecessary this.annotation initialization

* fix: move all initialization calls to constructor

* refactor: move vue dist import to webpack alias

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-12-27 12:15:51 -08:00
715a44864e Reduce bundle size (#7246)
* chore: use ESModule imports for d3 libraries

* chore: add d3 types

* chore: use minified plotly

* chore: use ESModule style imports for printj

* chore: use `terser-webpack-plugin` to minimize

* Revert "chore: use minified plotly"

This reverts commit 0ae9b39d41b6e38f0fe38cd89a2cd73869f31c36.

* Revert "Revert "chore: use minified plotly""

This reverts commit 08973a2d2e6675206907f678d447717ac6526613.

* fix: use default minification options

* test: stabilize notebook image drop e2e test

* test(fix): remove .only()

* refactor: convert TelemetryValueFormatter to es6 class

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
2023-12-20 11:23:24 -08:00
0d97675a0a [CI] Add a11y checks to our visual testing suite (#7047)
* Add a VISUAL_URL constant and remove all vestiges of hide inspector and tree

* hide timer and add concurrency

* turn off concurrency

* factor out old appAction

* Add expand button to panes

* remove old slow annotations

* fix fault

* update domcontentloaded

* missed refactor

* driveby: setTimeBounds private

* add comments to the percyCSS

* suggest MISSION_TIME

* more notes

* regen

* clean up test

* driveby: clean up order

* restructure

* add new suite now that i'ts hidden

* use mission time everywhere possible

* driveby

* rerun generatedata

* comments

* lint fix

* add inital pass of a11y tests

* first pass for fixing a11y problems

* update build

* add copyright

* check for slashes

* rename files

* update testcases

* update to latest

* updates

* section 508

* final version

* remove leftover

* comments

* documentation

* bad merge

* comment

* use current ruleset

* typo

* feedback

* remove time conductor due to false positives

* default to closed tabs

* add some more accessiblity checking

* change to a condition widget and update search

* lint fix

* turns this into a single function

* update doc to match single function

* update to single function

* update to new function

* lint

* update locator for search input

* fix extra page

* why

* comments

* comments

* refacotr

* wrong paths and fixes
2023-12-19 14:16:08 -08:00
ec910dcbdc Add tests for inspector data pivoting (#7282)
* inspector view needs renderWhenVisible function

* add a default visualization source

* add plugin to exercise data pivotting

* use correct key string

* test skeleton

* add e2e test

---------

Co-authored-by: David Tsay <david.e.tsay@nasa.gov>
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
2023-12-19 04:33:50 -06:00
0ce36c8297 [CI] Remove unneeded parameterization and increase parallelism (#7310)
* remove unneeded parameterization and increase parallelism

* wrong scripts

* rename

* refactor: rename job

* fix: woops

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-12-18 16:48:13 -08:00
3fccac0bfc Automatically check additional views for memory leaks on navigation (#7300)
* add new objects for navigation testing

* add test for remaining objects

* cleanup plotly on dismount

* lint

* remove vestigial object

* do not need to call destroy here

* do not need to call destroy here

* refactor: ensure path to test file always resolves

* refactor: better locators

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-12-15 10:13:41 +01:00
2675220452 Defer intersection monitoring until needed to prevent race conditions (#7278)
* defer visibility rendering until actually used to prevent race conditions

* remove extrace space
2023-12-15 09:40:36 +01:00
4075a31d96 PR Cop 2.0 (#5815)
* PR Cop

* Update the PR Template

* address review comments
2023-12-14 10:55:51 -08:00
7f95325816 Add CodeQL badge to readme (#6803)
Because we're passing and we should be proud of that!

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-12-14 07:31:31 -08:00
e07ba61c4c chore(deps-dev): bump marked from 9.1.5 to 11.1.0 (#7299)
Bumps [marked](https://github.com/markedjs/marked) from 9.1.5 to 11.1.0.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/.releaserc.json)
- [Commits](https://github.com/markedjs/marked/compare/v9.1.5...v11.1.0)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-14 07:29:27 -08:00
97bffc554f Fix Notebook entry hover problem (#7106)
Closes #7105
- Removed `:not(:focus)` CSS check for hover.
- New theme constant for a more subdued hover effect to differentiate
from active editing mode.

Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-12-14 06:39:09 -08:00
250db8d7f9 Allow specification of swimlanes via configuration (#7200)
* Use specified group order for plans

* Allow groupIds to be a function

* Fix typo in if statement

* Check that activities are present for a given group

* Change refresh to emit the new model

* Update domainobject on change

* Revert changes for domainObject

* Revert groupIds as functions. Check if groups are objects with names instead.

* Add e2e test for plan swim lane order

* Address review comments - improve if statement

* Move function to right util helper

* Fix path for imported code

* Remove focused test

* Change the name of the ordered group configuration
2023-12-14 06:19:42 -08:00
3520a929a9 chore(deps): bump github/codeql-action from 2 to 3 (#7296)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2 to 3.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-14 14:03:20 +00:00
800b03ad60 fix: define main entry point in package.json (#7298) 2023-12-14 05:50:17 -08:00
902ed0274a Update API Readme to indicate renderWhenVisible function is optional (#7285)
* using less normative languange

* grammar
2023-12-13 09:57:48 +00:00
9ed8d4f5a5 Provide own renderWhenVisible function since manually creating an object view (#7281)
inspector view needs renderWhenVisible function
2023-12-08 18:33:49 +01:00
93e5219917 Handle aborted get requests and null domain objects when using ObjectAPI (#7276)
* handle null domain objects

* add some test coverage for aborting search results

* to make test independent
2023-12-05 17:43:49 +00:00
2d9c0414f7 Inconsistent behavior with multiple annotations in imagery (#7261)
* fix opacity issue

* wip, though selection still weird

* remove debugging

* plots still have issue with last tag

* add some better tests

* Apply suggestions from code review

Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>

* remove hardlined classnames

* case sensitivity

* good job tests finding issue

---------

Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-12-04 19:12:24 -08:00
a3e0a0f694 chore(deps-dev): bump @vue/compiler-sfc from 3.3.8 to 3.3.10 (#7270)
Bumps [@vue/compiler-sfc](https://github.com/vuejs/core/tree/HEAD/packages/compiler-sfc) from 3.3.8 to 3.3.10.
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/commits/v3.3.10/packages/compiler-sfc)

---
updated-dependencies:
- dependency-name: "@vue/compiler-sfc"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-12-04 19:29:58 -05:00
5ec155c7ce chore: bump version to 3.3.0-next (#7273)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-12-04 15:58:43 -08:00
cfb190fb68 wrote an e2e test for can create a notebook object (#7236)
* wrote an e2e test for can create a notebook object

* made suggested changes to notebook.e2e.spec.js

* made suggested changes to notebook.e2e.spec.js

* made changes to newly created notebook

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-12-04 22:15:55 +00:00
72e0621ecd When searching, build the path objects asynchronously while returning the results (#7265)
* build paths as fast as we can

* fix tests

* add abort controllers and async load tags
2023-12-04 13:40:28 -08:00
e7b9481aa9 Destroy canvas in plots if not visible (#7263)
* first draft

* add some more debugging

* add test and remove debug

* Remove debug function

* consolidate destroy

* add better canvas name and handle if gl has gone missing

* extra check for extension
2023-12-04 21:28:24 +00:00
2dc1388737 chore(package.json): fix warning during npm publish (#7253)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-12-01 09:44:03 -08:00
41bee3111c Update API documentation for Visibility-Based Rendering (#7262)
update API with documentation for Visibility-Based Rendering
2023-12-01 10:35:41 +01:00
97cb783c4b chore: bump d3-scale and use ESModule imports (#7245)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-11-28 14:07:34 -08:00
39a31617b8 [Build] Update to Node 20 and remove 16 (EOL) (#7260)
attempt one
2023-11-28 13:05:28 -08:00
415b65237b Prevent rubber-banding in Telemetry Table filter input (#7248)
* should debounce the filtering of the telemetry, not the setting of the input

* add some laggy typing to check for debouncing issues

* revert test
2023-11-28 17:39:34 +01:00
28bfc90036 chore(deps-dev): bump eslint from 8.53.0 to 8.54.0 (#7250)
Bumps [eslint](https://github.com/eslint/eslint) from 8.53.0 to 8.54.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.53.0...v8.54.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-21 12:35:42 -08:00
7ce3ed5597 Provide visibility based rendering as part of the view api (#7241)
* first draft

* in preview mode, just show it

* fix unit tests
2023-11-20 09:19:00 -08:00
b9ae461b7d fix(#7234): Fix frame deletion in Flexible Layouts (#7244)
* fix: use the correct event name for frame deletion

* test: add test for frame removal

* refactor: update test locators, add a11y

* test: upgrade locator

* test: assert dialog text
2023-11-17 18:02:58 +00:00
15ee8303e4 Gauge fixes for NaN and composition policy (#5608)
* Closes #5536, #5538
- Significant changes to code flow for better handling of missing telemetry values; closes #5538.
- Changes to flow to handle range display when updating composition and when ranges are set by limits.
- Added `GaugeCompositionPolicy.js`; closes #5536.

* Closes #5536, #5538
- Code cleanup, linting.

* Closes #5538
- Linting fixes.

* Closes #5538
- Added test for 'Gauge does not display NaN when data not available'.

* Closes #5538
- Refined test.

* Closes #5538
- Refined 'NaN' test.
- Added test for 'Gauge enforces composition policy';

* Closes #5538
- Fix linting issues.

* Closes #5538
- Suggested changes from PR review.

* Closes #5538
- Suggested changes from PR review.

* Update e2e/tests/functional/plugins/gauge/gauge.e2e.spec.js

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* chore: lint:fix

---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-11-16 10:40:48 -08:00
a914e4f1f7 Only show marquee for selected item (#7180)
* only show marquee for selected item

* Revert "only show marquee for selected item"

This reverts commit d17af210c2.

* revert change made in #6767

* create framework for displayLayout visual test

* WIP create display layout for test

* only show marquee for selected

* fix selection of object in nested layout

* fix grid and code cleanup

* add child layouts side by side

* code cleanup

* externalize setup for reuse in multiple tests

* write marquee and grid tests

* fix object in layout locator

* fix nested layout selector

* add aria label to layouts

* fix layout locator

* add jsdoc for test setup function

* make test more efficient

* cleanup and linting

* update locator

* update locators

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-11-16 10:31:35 -08:00
cdd772aa87 fix(#7234): 'Remove Container' button not working in Flexible Layout toolbar (#7240)
* refactor: rename prop for clarity

- `orientation` -> `dragOrientation`

* fix(#7234): fix event name for flexible layout toolbar action

* test(e2e): add tests for flexible layout toolbar actions

* test: add `@localStorage` tags
2023-11-16 09:21:23 -08:00
7f8262b882 Changed global time to use time context current value for ITC (#7191)
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-11-13 15:42:54 -06:00
deacd91078 Defer rendering for inactive tabs in open mct tabbed view (#7149)
* simple prototype

* add a few examples

* revert to original

* only check first element

* only print when we're firing

* need to return status

* ignore polling logic if not visible

* convert to es6 classes

* add private variables

* remove debug code

* revert on this branch webgl changes

* fix draw loader import

* do not use v-model for search component

* remove flakey unit tests and add e2e tests for same behavior

* remove fdescribe

* add test word

* add simple functional test for tabs

* add performance test for tabs

* make tab selection more explict

* better describe expects

* lint

* switch back to fixed time

* fix perf test for webpacked version

* lint

* relax condition

* relax condition

* resolve PR comments

* address PR review comments

* typo on role vs locator
2023-11-13 18:27:50 +00:00
29b7c389ad fix(index.html): use defer and move script to head (#6999) 2023-11-09 14:13:24 -08:00
591b5745a8 chore(deps-dev): bump vue from 3.3.4 to 3.3.8 (#7214)
Bumps [vue](https://github.com/vuejs/core) from 3.3.4 to 3.3.8.
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/compare/v3.3.4...v3.3.8)

---
updated-dependencies:
- dependency-name: vue
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-11-09 11:27:49 -08:00
4b0abdf54f chore(deps-dev): bump eslint-plugin-unicorn from 48.0.1 to 49.0.0 (#7218)
Bumps [eslint-plugin-unicorn](https://github.com/sindresorhus/eslint-plugin-unicorn) from 48.0.1 to 49.0.0.
- [Release notes](https://github.com/sindresorhus/eslint-plugin-unicorn/releases)
- [Commits](https://github.com/sindresorhus/eslint-plugin-unicorn/compare/v48.0.1...v49.0.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-unicorn
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-09 08:06:08 -08:00
0c19260028 chore(deps-dev): bump webpack from 5.88.0 to 5.89.0 (#7186)
Bumps [webpack](https://github.com/webpack/webpack) from 5.88.0 to 5.89.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.88.0...v5.89.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-09 08:05:46 -08:00
2cc00271b1 [CI] Add CI Troubleshooting doc (#6988)
* document how to bust cache

* Update TESTING.md

Co-authored-by: David 'Epper' Marshall <epper.marshall@gmail.com>

* add approapriate link

* Update missing troublehshooting doc and combine code-cov docs

* comments

---------

Co-authored-by: David 'Epper' Marshall <epper.marshall@gmail.com>
2023-11-09 08:04:52 -08:00
3c933eaa19 chore(deps-dev): bump @types/jasmine from 4.3.4 to 5.1.2 (#7219)
Bumps [@types/jasmine](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jasmine) from 4.3.4 to 5.1.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jasmine)

---
updated-dependencies:
- dependency-name: "@types/jasmine"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-09 07:51:38 -08:00
b829735d64 [CI] Dependabot skip rebasing on every merge (#7216)
Skip rebasing on every merge
2023-11-08 15:28:32 -08:00
51eb2a4f59 Add static limit values to LAD tables (#7193)
* limits shown

* use more verbose way for uniqueness

* when adding items, check for what columns we need

* make header logic much simpler

* add test coverage

* fix test and lint

* Update e2e/tests/functional/plugins/lad/lad.e2e.spec.js

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* Update e2e/tests/functional/plugins/lad/lad.e2e.spec.js

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* change to getByTitle

* lint and change to getByLabel

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-11-08 17:56:59 +00:00
09b7873fbd chore(deps-dev): bump eslint from 8.48.0 to 8.53.0 (#7211)
Bumps [eslint](https://github.com/eslint/eslint) from 8.48.0 to 8.53.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.48.0...v8.53.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-07 17:16:08 +00:00
c3eef44beb chore(deps-dev): bump @percy/cli from 1.26.0 to 1.27.4 (#7212)
Bumps [@percy/cli](https://github.com/percy/cli/tree/HEAD/packages/cli) from 1.26.0 to 1.27.4.
- [Release notes](https://github.com/percy/cli/releases)
- [Commits](https://github.com/percy/cli/commits/v1.27.4/packages/cli)

---
updated-dependencies:
- dependency-name: "@percy/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-07 07:56:06 -08:00
34d3ba0cff chore(deps-dev): bump eslint-plugin-you-dont-need-lodash-underscore from 6.12.0 to 6.13.0 (#7213)
chore(deps-dev): bump eslint-plugin-you-dont-need-lodash-underscore

Bumps [eslint-plugin-you-dont-need-lodash-underscore](https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore) from 6.12.0 to 6.13.0.
- [Release notes](https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/releases)
- [Commits](https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/compare/v6.12.0...v6.13.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-you-dont-need-lodash-underscore
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-07 07:41:02 -08:00
5fd24cb689 [Dependency] Update to skip regular releases of marked (#7209)
* update to latest

* skip major versions
2023-11-06 16:19:12 -08:00
a64faae394 docs: add warning about deploying devServer to prod environment (#7203)
* docs: add warning about using dev server in
production environment

* docs: fix formatting
2023-11-06 16:12:10 -08:00
d44e06d598 docs: add related repos section to README.md (#7111)
* docs: add related repos section to README.md

* docs: update related repos section
2023-11-06 16:10:37 -08:00
bfcab6b327 chore(deps-dev): bump webpack-merge from 5.9.0 to 5.10.0 (#7205)
Bumps [webpack-merge](https://github.com/survivejs/webpack-merge) from 5.9.0 to 5.10.0.
- [Changelog](https://github.com/survivejs/webpack-merge/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/survivejs/webpack-merge/compare/v5.9.0...v5.10.0)

---
updated-dependencies:
- dependency-name: webpack-merge
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-07 00:09:51 +00:00
1f24cbed1f chore(deps-dev): bump @vue/compiler-sfc from 3.3.4 to 3.3.8 (#7208)
Bumps [@vue/compiler-sfc](https://github.com/vuejs/core/tree/HEAD/packages/compiler-sfc) from 3.3.4 to 3.3.8.
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/commits/v3.3.8/packages/compiler-sfc)

---
updated-dependencies:
- dependency-name: "@vue/compiler-sfc"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-06 15:52:17 -08:00
da7d0df736 chore(deps-dev): bump uuid from 9.0.0 to 9.0.1 (#7207)
Bumps [uuid](https://github.com/uuidjs/uuid) from 9.0.0 to 9.0.1.
- [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v9.0.0...v9.0.1)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-06 15:33:06 -08:00
8e7c02069e chore: bump Playwright to v1.39.0 (#7201) 2023-11-04 17:20:35 -07:00
4dbca9cb09 chore(deps): bump actions/checkout from 3 to 4 (#7034)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-11-02 16:39:54 -07:00
bc0c0d63c1 chore(deps-dev): bump npm-run-all2 from 6.0.6 to 6.1.1 (#7185)
Bumps [npm-run-all2](https://github.com/bcomnes/npm-run-all2) from 6.0.6 to 6.1.1.
- [Release notes](https://github.com/bcomnes/npm-run-all2/releases)
- [Changelog](https://github.com/bcomnes/npm-run-all2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bcomnes/npm-run-all2/compare/v6.0.6...v6.1.1)

---
updated-dependencies:
- dependency-name: npm-run-all2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-02 15:37:38 -07:00
0d27938843 docs: update Telemetry Formats section (#7173) 2023-11-02 14:35:36 -07:00
02f1013770 fix: DisplayLayout and FlexibleLayout toolbar actions only apply to selected layout (#7184)
* refactor: convert to ES6 function

* fix: include `keyString` in event name

- This negates the need for complicated logic in determining which objectView the action was intended for

* fix: handle the case of currentView being null

* fix: add keyString to flexibleLayout toolbar events

* fix: properly unregister listeners

* fix: remove unused imports

* fix: revert parameter reorder

* refactor: replace usage of `arguments` with `...args`

* fix: add a11y to display layout + toolbar

* test: add first cut of layout toolbar suite

* test: cleanup a bit and add Image test

* test: add stubs

* fix: remove unused variable

* refactor(DisplayLayoutToolbar): convert to ES6 class

* test: generate localStorage data for display layout tests

* fix: clarify "Add" button label

* test: cleanup and don't parameterize tests

* test: fix path for recycled_local_storage.json

* fix: path to local storage file

* docs: add documentation for
utilizing localStorage in e2e

* fix: path to recycled_local_storage.json

* docs: add note hyperlink
2023-11-02 20:42:37 +00:00
bdff210a9c chore(deps-dev): bump eslint-plugin-vue from 9.17.0 to 9.18.1 (#7188)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.17.0 to 9.18.1.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.17.0...v9.18.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-02 18:08:58 +00:00
ae22920576 Refine display options and add Independent Time Conductor option for Time List view (#7161)
* Apply sort settings immediately - even when in edit mode.

* Adds test for sort order

* Enable independent time conductor for time list view

* Remove time frame duration options.

* Remove immediate sorting in edit mode.

* Closes #7113
- Color of current events changed to bring more in-line with color conventions.
- Changed Time List rgba colors to solids.
- Removed bolding on current events text.

* Fix tests to include new changes

---------

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2023-11-01 15:47:43 +00:00
a0fd1f0171 Removed errant brace in ObjectAPI Error (#7192)
Removed errant brace
2023-10-31 07:28:20 -07:00
c7fd584b58 chore(deps-dev): bump @braintree/sanitize-url from 6.0.2 to 6.0.4 (#7190)
Bumps [@braintree/sanitize-url](https://github.com/braintree/sanitize-url) from 6.0.2 to 6.0.4.
- [Changelog](https://github.com/braintree/sanitize-url/blob/main/CHANGELOG.md)
- [Commits](https://github.com/braintree/sanitize-url/compare/v6.0.2...v6.0.4)

---
updated-dependencies:
- dependency-name: "@braintree/sanitize-url"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-30 23:05:33 +00:00
16ca994cfa chore(deps-dev): bump sinon from 15.1.0 to 17.0.0 (#7155)
Bumps [sinon](https://github.com/sinonjs/sinon) from 15.1.0 to 17.0.0.
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md)
- [Commits](https://github.com/sinonjs/sinon/compare/v15.1.0...v17.0.0)

---
updated-dependencies:
- dependency-name: sinon
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-29 09:13:09 -07:00
ebe5323f82 chore(deps-dev): bump painterro from 1.2.78 to 1.2.87 (#7165)
Bumps [painterro](https://github.com/devforth/painterro) from 1.2.78 to 1.2.87.
- [Release notes](https://github.com/devforth/painterro/releases)
- [Changelog](https://github.com/devforth/painterro/blob/master/Release.md)
- [Commits](https://github.com/devforth/painterro/compare/v1.2.78...v1.2.87)

---
updated-dependencies:
- dependency-name: painterro
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-29 15:55:57 +00:00
7a8a6d3649 chore(deps-dev): bump eslint-plugin-unicorn from 44.0.2 to 48.0.1 (#7163)
Bumps [eslint-plugin-unicorn](https://github.com/sindresorhus/eslint-plugin-unicorn) from 44.0.2 to 48.0.1.
- [Release notes](https://github.com/sindresorhus/eslint-plugin-unicorn/releases)
- [Commits](https://github.com/sindresorhus/eslint-plugin-unicorn/compare/v44.0.2...v48.0.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-unicorn
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-29 06:55:09 -07:00
25e7a16c77 chore(deps-dev): bump cspell from 7.3.6 to 7.3.8 (#7162)
Bumps [cspell](https://github.com/streetsidesoftware/cspell) from 7.3.6 to 7.3.8.
- [Release notes](https://github.com/streetsidesoftware/cspell/releases)
- [Changelog](https://github.com/streetsidesoftware/cspell/blob/main/CHANGELOG.md)
- [Commits](https://github.com/streetsidesoftware/cspell/compare/v7.3.6...v7.3.8)

---
updated-dependencies:
- dependency-name: cspell
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-28 14:57:47 +00:00
141939295a chore(deps): bump actions/setup-node from 3 to 4 (#7166)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3 to 4.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-10-24 16:52:17 -07:00
2c1040c7c0 chore(deps-dev): bump sass from 1.63.4 to 1.68.0 (#7086)
Bumps [sass](https://github.com/sass/dart-sass) from 1.63.4 to 1.68.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.63.4...1.68.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rukmini Bose (Ruki) <48999852+rukmini-bose@users.noreply.github.com>
2023-10-24 16:26:27 -07:00
d94fe8806b [Plots] Gracefully handle Float32Array breaking values (#7138)
* WIP

* guaranteeing float32breaking values for swgs when option is set

* cleaning up and clarity

* more clarity

* removing randomization of float breaking number, as it is not necessary

* logging the values that could not be plotted for awareness

* remving auto-added imports

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-10-24 23:07:43 +00:00
7bf983210c [Filters] Fix view based filters when string input is enabled (#7050)
* de-reactifying some objects for clarity, handling strings for filters, some vue 3 formatting

* removing debug, fixing string value persistence

* remove unnecessary change

* removing vue utils from non vue files

* nipping proxy objects in the bud

* linting

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-10-24 15:33:08 -07:00
8f92cd4206 [Tooltips] Finish tests for gauges, telemetry tables, recently viewed items, and time strips (#7145)
Finish tests for gauge, telemetry tables, recently viewed items, and time strips

Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
2023-10-24 22:06:40 +00:00
13311b9fc8 Prevent infinite loop when updating a table row in place (#7154)
* bump index on update row in place

* add test

* Removing problematic test

* spelling
2023-10-23 09:22:13 -07:00
2daec448da chore: bump version to 3.2.0-next (#7117)
chore: bump version to 3.2.0-next

Co-authored-by: Scott Bell <scott@traclabs.com>
2023-10-23 12:23:34 +02:00
5bd8d17592 chore(deps-dev): bump jasmine-core from 5.0.0 to 5.1.1 (#7008)
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 5.0.0 to 5.1.1.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v5.0.0...v5.1.1)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-20 23:20:32 +00:00
954c72b100 chore(deps-dev): bump eslint-plugin-vue from 9.15.0 to 9.17.0 (#6907)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.15.0 to 9.17.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.15.0...v9.17.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-20 19:01:12 +00:00
43338f3980 chore: remove vue/compat and complete Vue 3 migration (#7133)
* chore: remove custom `compatConfig` settings

* chore: remove `vue-compat` and adjust webpack config

* chore: explicitly define Vue feature flags

* fix: `_data` property moved to `_.data`

* fix(e2e): revert to original test procedures

* refactor: replace final instances of `$set`

* refactor: remove `Vue` imports from tests

* refactor: `Vue.ref()` -> `ref()`

* refactor: actually push the changes...

* test: replace unit test with e2e test

* test: remove test as it's already covered by e2e

* fix(test): use `$ref`s instead of `$children`

* test(fix): more `$refs`

* fix(test): more `$refs`

* fix(test): use `$refs` in InspectorStyles tests

* fix(SearchComponent): use `$attrs` correctly

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
2023-10-19 09:08:39 -07:00
1414f54c17 chore(deps-dev): bump vue-eslint-parser from 9.3.1 to 9.3.2 (#7125)
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 9.3.1 to 9.3.2.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v9.3.1...v9.3.2)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-18 15:49:29 +00:00
9849e0398e fix(#7143): add eslint-plugin-no-sanitize and fix errors (#7144) 2023-10-16 09:26:12 -07:00
76889cf60d Rename all configuration inspector tabs to Config (#7140) 2023-10-12 13:48:13 -07:00
26d3bd1e69 When dropping an unsupported file onto a notebook entry, tell the user it isnt supported (#7115)
* handle unknown files and deal with copy/paste

* add some nice errors if couch pukes

* added how to adjust couchdb limits

* throw error on anntotation change

* keep blockquotes

* add test for blockquotes

* allow multi-file drop of images too

* add test for big files

* spell check

* check for null

* need to ignore console errors

* reorder tests so we can ignore console errors

* when creating new entry, ready it for editing

* fix tests and empty embeds

* fix tests

* found similar issue from notebooks in plots
2023-10-12 07:34:32 +02:00
a16a1d35b6 do not store state in singleton action (#7121)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-10-10 15:49:45 -07:00
97b2ebc0bb Fix remaining vue-compat warnings (#6966)
* PascalCase files

* emit warnings

* minor updates

* merge conflict resolve pt 1

* part 2

* update to eventbus

* eventbus spelling

* fix: import

* fix: eventBus injection

* fix: import

* fix(test): provide eventBus in overlay plot tests

* refactor: EventBus as composable

* chore: lint:fix

* chore: require vue event hyphenation

* fix: revert event renames

* refactor: use PascalCase name

* fix: ensure `$attrs` are properly bound

* fix: emit `click` event from SearchComponent

* chore: remove rules already included in `vue/vue3-recommended` ruleset

* fix: remove `Vue` import

* chore: remove unused files

* fix: fix lint scripts and make them cross-platform

* refactor: rename `DataImagery.vue` -> `ImageryInspectorView.vue`

* refactor: rename `NumericData.vue` -> `NumericDataInspectorView.vue`

* refactor: rename components

* refactor: rename `GeneralIndicators.vue` -> `StatusIndicators.vue`

* refactor: rename components

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-10-10 13:29:01 -07:00
6b32c63039 [Staleness] Fix issue with object view staleness styles not being reset on clock change (#7122)
Add logic to un/re-subscribe when clock changes to object view
2023-10-06 15:26:05 -07:00
084784a409 Handle negative height & width in image annotations (#7116)
* add fix

* remove debug code

* add test for unholy rectangles

* make test a bit more forgiving

* address pr review
2023-10-06 19:08:42 +02:00
734a8dd592 [Staleness] Fix staleness on clock change (#7088)
* Update staleness mixin
* Fix listeners and add guard
* Add check to make sure staleness only shows for correct clock
* Add guard for time api
* Cleanup the setting of isStale in ObjectView
* Cleanup use of combinedKey on LadTableSet
2023-10-04 13:39:20 -07:00
5eed5de3bb chore(cspell): use --quiet flag (#7110)
chore(cspell): use `--quiet` flag
2023-10-04 14:47:49 +02:00
ce59c0f50a Check realtime mode in remote clock interceptor (#6985)
* Revert Date.now() purge change
Check that the request is using realtime before using the remote-clock start and end timestamps for telemetry requests
* docs: clarify comment

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-10-03 20:41:02 +00:00
d53d8d562e Eagerly lose WebGL context on DrawWebGL.destroy() (#7080)
* test default for preserveDrawingBuffer
* fix: delete WebGL resources on destroy
* fix: eagerly lose WebGL contexts on destroy
- Recommended by Mozilla's [WebGL best practices]-(https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/WebGL_best_practices#lose_contexts_eagerly).

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-10-03 19:33:51 +00:00
d973140906 [Documentation] Time API docs update new/deprecated functionality (#7107)
* update time api docs to reflect recent changes

* clarify what mode openmct starts in and update setMode arguments
2023-10-03 18:42:35 +00:00
b1169ffd7d chore(deps-dev): bump eslint-plugin-compat from 4.1.4 to 4.2.0 (#7104)
Bumps [eslint-plugin-compat](https://github.com/amilajack/eslint-plugin-compat) from 4.1.4 to 4.2.0.
- [Release notes](https://github.com/amilajack/eslint-plugin-compat/releases)
- [Changelog](https://github.com/amilajack/eslint-plugin-compat/blob/main/CHANGELOG.md)
- [Commits](https://github.com/amilajack/eslint-plugin-compat/compare/v4.1.4...v4.2.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-compat
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-10-03 16:56:06 +00:00
ede93d881c Ensure CouchDB changes for plans trigger updates in the view (#7099)
Listen to ALL changes for a plan since couchdb feed updates does not trigger a property only event. It triggers a catchall '*' event.

Co-authored-by: Scott Bell <scott@traclabs.com>
2023-10-02 23:26:13 +00:00
6947c912a7 Add markdown to notebook entries (#7084)
* try marked out

* fix url validation

* now rendering blockquotes properly

* add abbrv, link titles, and strikethrough

* fix tests and lint

* Closes #6060
- CSS resets and styling for markdown-related HTML markup in Notebook entries.
- Better styling and cursor affordances for Notebook entry selection and editing interaction flow.

* add line breaks option

* Closes #6060
- Tab

* Closes #6060
- Conversion of contenteditable-div to textarea started.
- Stubbed in textarea with styles.

* have it markdown with a textarea and adjust size automatically

* Closes #6060
- Padding added back to text `div` area.

* Closes #6060
- Styles added to support Shift Log and hover behavior for entries on locked pages.
- Removed `--major` styling from Shift Log Commit Entries button
to reduce confusion with entry commit button.
- CSS code cleanups.

* two step focus/edit. also scroll into view for editing

* add markdown, strip all tags, and truncate

* lint

* remove unneeded code

* fix notebook entry, selected page may also be null

* fix existing notebook tests

* lint

* fix whitelist

* readd whitelist

* lint

* fix link tests

* fix tests

* fix tagging test

* add some markdown test

* get rid of pause

* add another sanitization step

---------

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-10-02 22:28:02 +00:00
2243381d52 Protect against prototype pollution in import action (#7094) 2023-10-02 14:50:53 -07:00
3c7d3397d6 chore(deps-dev): bump cspell from 7.1.1 to 7.3.6 (#7067)
Bumps [cspell](https://github.com/streetsidesoftware/cspell) from 7.1.1 to 7.3.6.
- [Release notes](https://github.com/streetsidesoftware/cspell/releases)
- [Changelog](https://github.com/streetsidesoftware/cspell/blob/main/CHANGELOG.md)
- [Commits](https://github.com/streetsidesoftware/cspell/compare/v7.1.1...v7.3.6)

---
updated-dependencies:
- dependency-name: cspell
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-10-02 17:38:42 +00:00
9f8338124f Catchall for bug fix PRs and add performance category (#7096)
* Catchall for bug fix PRs and add performance category

* Move Bug fixes to the bottom

* Fix performance label
2023-09-29 17:17:14 +00:00
ab0e2d2c96 Hide image controls when tagging, and hide compass HUD by default (#7028)
* make compass HUD configurable and hide image controls when tagging

* lint fixes

* address PR comments

* change prop to inject

---------

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-09-28 03:58:24 +00:00
c3b5e4e1e3 chore: add release.yml (#7090)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-09-27 12:18:19 -07:00
8fc5aa6ed5 Revert "fix(templates): move to own folder" (#7092)
Revert "fix(templates): move to own folder (#7000)"

This reverts commit 5592d20ab1.
2023-09-26 16:02:48 -05:00
5592d20ab1 fix(templates): move to own folder (#7000)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-09-26 13:37:55 -07:00
ce2305455a Add script to delete annotations (#7069)
* add script

* add package.json and script to delete annotations

* amend help

* fix issues

* added explicit runs

* add design document and index creation to script

* update tests to wait for url to change

* i think we can remove this deprecated function now
2023-09-25 10:15:00 -07:00
ff2c8b35b0 🙅🚮␡ Removeopenmct.components🚮🙅 (#7075)
🙅🚮␡`openmct.components`␡🚮🙅

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-09-21 14:05:35 -07:00
482f1f68dd Have annotations work with domain objects that have dots (#7065)
* migrating to new structure - wip

* notebooks work, now to plots and images

* resolve conflicts

* fix search

* add to readme

* spelling

* fix unit test

* add search by view for big search speedup

* spelling

* fix out of order search

* improve reliability of plot tagging tests
2023-09-21 13:50:08 -07:00
05c7a81630 Fix mojibake (#7073)
Add charset preamble to generated css
2023-09-21 01:01:30 +00:00
b8949db767 Memory leak fixes for several views (#7057)
* Change the mount utility to use Vue's createApp and defineComponent methods

* Fix display layout memory leaks caused by `getSelectionContext`

* fix some display layout leaks due to use of slots

* Fix imagery memory leak (removed span tag). NOTE: CompassRose svg leaks memory - must test on firefox to see if this is a Chrome leak.

* Fix ActionsAPI action collection and applicable actions leak.

* Fix flexible layout memory leaks - remove listeners on unmount. NOTE: One type of overlay plot (Rover Yaw) is still leaking.

* pass in the el on mount

* e2e test config and spec changes

* Remove mounting of limit lines. Use components directly

* test: remove `.only()`

* Fix display layout memory leaks

* Enable passing tests

* e2e README and appActions should be what master has.

* lint: add word to cspell list

* lint: fixes

* lint:fix

* fix: revert `el` change

* fix: remove empty span

* fix: creating shapes in displayLayout

* fix: avoid `splice` as it loses reactivity

* test: reduce timeout time

* quick fixes

* add prod mode and convert the test config to select the correct mode

* Fix webpack prod config

* Add launch flag for exposing window.gc

* never worked

* explicit naming

* rename

* We don't need to destroy view providers

* test: increase timeout time

* test: unskip all mem tests

* fix(vue-loader): disable static hoisting

* chore: run `test:perf:memory`

* Don't destroy view providers

* Move context menu once listener to beforeUnmount instead.

* Disconnect all resize observers on unmount

* Delete Test vue component

* Use beforeUnmount and remove splice(0) in favor of [] for emptying arrays

* re-structure

* fix: unregister listener in pane.vue

* test: tweak timeouts

* chore: lint:fix

* test: unskip perf tests

* fix: unregister events properly

* fix: unregister listener

* fix: unregister listener

* fix: unregister listener

* fix: use `unmounted()`

* fix: unregister listeners

* fix: unregister listener properly

* chore: lint:fix

* test: fix imagery layer toggle test

* test: increase timeout

* Don't use anonymous functions for listeners

* Destroy objects and event listeners properly

* Delete config stores that are created by components

* Use the right unmount hook. Destroy mounted view on unmount.

* Use unmounted, not beforeUnmounted

* Lint fixes

* Fix time strip memory leak

* Undo unneeded change for memory leaks.

* chore: combine common webpack configs

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-09-20 10:34:05 -07:00
61e7050391 chore(deps-dev): bump typescript from 5.1.3 to 5.2.2 (#7007)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.1.3 to 5.2.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.1.3...v5.2.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-09-18 18:45:24 +00:00
3f51516da9 chore(deps-dev): bump eslint-config-prettier from 8.8.0 to 9.0.0 (#6897)
Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 8.8.0 to 9.0.0.
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-config-prettier/compare/v8.8.0...v9.0.0)

---
updated-dependencies:
- dependency-name: eslint-config-prettier
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-18 18:24:20 +00:00
541a022f36 Embedding images in notebook entries (#7048)
* initial drag drop, wip

* images work as snapshots, but need to disable navigate to actions

* embed image name

* works now with images, need to be refactor so can duplicate code for entries too

* works dropping on entries too

* handle remote images too

* add e2e test

* spelling

* address most PR comments
2023-09-18 10:56:49 -07:00
c7b5ecbd68 Allow Data Visualization in inspector based on current selection (#7052)
* visualize data in inspector per selection

---------

Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-09-15 12:30:58 -07:00
6776cc308f PascalCase files (#6955)
* PascalCase files

* git mv for file name change

* renamed files

* merge changes from master

* fix: template name

* sort imports

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-09-14 09:55:44 -07:00
95ac919ddf chore(deps): bump docker/login-action from 2 to 3 (#7053)
Bumps [docker/login-action](https://github.com/docker/login-action) from 2 to 3.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-12 16:17:23 -07:00
2a1064cbab [CI] Stabilize visual tests, remove appAction, and update pane buttons (#7033)
* Add a VISUAL_URL constant and remove all vestiges of hide inspector and tree

* hide timer and add concurrency

* turn off concurrency

* factor out old appAction

* Add expand button to panes

* remove old slow annotations

* fix fault

* update domcontentloaded

* missed refactor

* driveby: setTimeBounds private

* add comments to the percyCSS

* suggest MISSION_TIME

* more notes

* regen

* clean up test

* driveby: clean up order

* restructure

* add new suite now that i'ts hidden

* use mission time everywhere possible

* driveby

* rerun generatedata

* comments

* lintfix
2023-09-11 23:33:46 +00:00
8e917b2679 Remove large series models from reactive data in plots (#6961)
* remove series object from highlights

* remove series models from legend reactive data

* drawing all annotations at once is way faster

* fix multi annotations

* lots of reactive things depending on config

* make annotation lookup faster

* lint

* readd perf test

* address PR comments

* fix highlight typo

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-09-06 09:32:36 -07:00
0be106f29e Fix and re-enable disabled unit test suites (#6990)
* fix: register event listeners etc in `created()` hook

* fix: initialize `stalenessSubscription` before composition load and in `created()` hook

* refactor(test): make `openmct` const

* refactor: update overlayPlot spec to Vue 3 and fix tests

* refactor: fix eslint errors

* refactor: move initialization steps to `created()` hook

* test: re-enable and fix stackedPlot test suite

* fix: `hideTree=true` hides the tree again

* fix: add back in check on mount

* test: fix Layout tests

* fix: BarGraph test

* fix: plot inspector tests

* fix: reenable grand search tests

* fix: inspectorStyles test suite

* fix: re-enable most timeline tests

* fix: no need to hideTree in appactions

* fix: re-enable more tests

* test: re-enable more tests

* test: re-enable most plot tests

* chore: `lint:fix`

* test: re-enable timelist suite

* fix(#7016): timers count down or up to a target date

* test: add regression tests to cover disabled unit tests

* refactor: lint:fix

* refactor: no need for momentjs here

* fix: timerAction missed refactor

* fix: ensure timestamp is always UTC string

* test: use role selectors

* docs: add instructions for clock override in e2e

* docs: update

* Update readme

* lint

* spelling fixes

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-09-05 08:53:03 +00:00
9f7b3b9225 fix(#7022): remove ProgressBar artifacts from Notifications (#7024)
* fix: check for null or undefined

* refactor: `lint:fix`

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
2023-09-04 12:51:32 +00:00
e9b94c308b chore: pin vue package versions (#7032) 2023-09-03 15:14:54 +00:00
64740e133f chore(deps-dev): bump eslint from 8.43.0 to 8.48.0 (#7010)
Bumps [eslint](https://github.com/eslint/eslint) from 8.43.0 to 8.48.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.43.0...v8.48.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-01 23:33:24 +00:00
c27ad469f6 feat(eslint): sort import rule (#6939)
* feat(eslint): sort import rule

* chore(deps): pin dep

* refactor: sort imports

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-08-31 13:40:00 -07:00
e09a7aebae feat(linting): concurrent linting (#6969) 2023-08-30 23:12:06 +00:00
b87459dfd7 ProgressBar null not undefined (#6953)
* ProgressBar null not undefined

* notification banner null

* update progress dialog

* docs: update type

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-08-29 23:49:31 +00:00
ca06a6a047 docs: update staticRootPlugin README (#7014) 2023-08-29 23:09:28 +02:00
95e3ab25a4 fix(dialog): empty description (#6986)
* fix(dialog): empty description

* tests(e2e): adds roleview test

* tests(e2e): test in beforeEach

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-08-28 15:54:49 -07:00
f9db6433a1 docs(readme): indent correctly (#6996)
* fix(readme): indent correctly

* fix(readme): review

* fix(readme): review

* chore(docs): revise

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* docs: tidy up a bit

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-08-28 19:59:25 +00:00
cbac2c1c82 docs(readme): note sections (#6997)
* fix(readme): note sections

* fix: notes

* fix: notes

* fix(readme): better markdown

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-08-28 19:50:20 +00:00
a8678aa739 Imagery layer checkbox should match layer visiblity (#7003)
Set layer visibility to false if layer visibility cannot be persisted
2023-08-28 10:32:37 -07:00
244e3b7938 [Aborts] Abort Telemetry Collections requests on Navigation, Add abort functionality to getLimits (#6872)
* debug

* abort any pending requests on router "change:path" event, this should catch cases where the UI is bogged down and doesnt destroy the tc first

* english

* cant always be on

* adding abort to limits requests

* finally-ing off the promise

* need to just return the object not the property

* sticking with the try/catch structure we use elsewhere

* removing abort on nav, as views should be calling destroy

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-08-24 21:17:58 +00:00
42b13c4dfb Fix couchdb setup and add a note on how to remove the container (#6915)
* discrete steps

* update script to remove couchdb

* address comments and add shellcheck linting

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-08-22 11:11:07 -07:00
351800b32a chore(npm): dont generate lockfile (#6970)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-08-21 15:39:52 -07:00
6db390a71a Add strategy latest and timeContext to auto flow tabular and gauge views (#6960) 2023-08-21 14:09:39 -07:00
9ece4e55dc chore(package.json): add fields (#6971)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-08-21 20:32:07 +00:00
0a497483f2 fix(html): minor fixes from validation (#6962)
* fix(html): minor fixes from validation

* chore(html): Update index.html

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-08-21 09:58:06 -07:00
a52577e729 feat(tooling): adds nvm (#6938)
* feat(tooling): adds nvm

* fix(ci): nodev16 -> nodev18

* chore(node): dont modify ci config

* feat(nvm): add lts

* docs(readme): add section on nvm

* fix(docs): revise section

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-08-19 13:16:26 -07:00
a495e86231 fix(#6516): Progress Bar does not show progress percentage (#6952)
MCT 6516

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-08-18 22:54:58 +00:00
bada228b8f Ensure that dynamically created vue components are destroyed. (#6948) 2023-08-17 23:24:02 +00:00
3f80b53ea6 [Tooltips] Fixes for dictionary objects and self-referential objects (#6916)
* Fix getTelemetryPath to handle cases where parent is the same as the child, handle yamcs aggregate telemetry, and fix how identifiers are passed in

* Cleanup getTelemetryPath

* Switch to filter instead of forEach

* Get path item names

* Remove tooltips on scroll of tree

* Remove handing for scroll

* Allow break-words

* Cleanup
2023-08-17 16:18:25 +00:00
99a3e3fc32 Recent objects do not update when object names are changed (#6927)
* fix tree name issue

* add name to key, and name observers to recent objects

* no need to change key

* make more of app reactive to name changes

* fix browse bar and document title

* listen in properties for name changes

* add tests for renaming

* yeah spelling linter

* add semantic tags to forms and fixup tests

* change purpose

* actually delete the listener

* ensuring deletion

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-08-16 21:38:09 +00:00
2d92223e16 fix(package.json): add author (#6941)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-08-16 14:10:24 -07:00
f21685e216 fix(e2e): Stabilize ITC tests (#6933)
* fix(ITC): initialize ITC in `created()` hook

* fix(e2e): stabilize ITC tests

* docs: add JSDocs

* refactor: lint:fix

* test(e2e): add comment and assertion

* refactor: lint:fix
2023-08-16 19:02:09 +00:00
6c92e31036 fix(#6942): Toggling FlexibleLayout toolbar options reflects immediately in the view (#6943)
* fix: restore reactivity of config settings

- move initialization steps to `created()` hook

- remove unnecessary `:key` binds

- fix comments

* refactor: clean up

* refactor: clean up

* refactor: lint:fix

* test(e2e): add regression test and cleanup suite

* refactor: consistency is key!

* test(fix): fix unit tests, further cleanup
2023-08-16 17:52:23 +00:00
82b1760b0e chore: bump version to 3.1.0-next and update docs (#6921)
* chore: bump version to `3.1.0-next`

* docs: update version.md

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-08-16 16:15:30 +00:00
87feb0db34 Condition sets now provide the timeContext they're using when sending requests (#6929)
* Send in the timeContext for requests

* Fix failing test

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
2023-08-15 17:32:30 +00:00
c53073b339 Fix remote clock subscription (#6919)
* If there are no listeners for this clock then don't bother subscribing after getting the domain object details

* Comment explaining the fix
2023-08-14 21:51:52 +00:00
57743e5918 fix: use loadDelay generator setting in subscriptions as well (#6918)
* refactor: use `getBounds()` instead of `bounds()`

* fix: use `loadDelay` in generator subscription

* refactor: fix up e2e test

* fix: remove `.only()`

* refactor: lint

* Start to fix up conditionSet test with comments

* test: edit conditionSet to add delay value

* test: tests the case where telemetry is available

* fix: remove `.only()`

* test: add comments, clarify assertion

* refactor: lint:fix

* test: fix conditionSet default condition name test

* test: add assertions to stabilize tags tests

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-08-14 19:04:01 +00:00
f3b819a786 chore: add vue3 to eslint, fix errors, and modify lint script (#6910) 2023-08-14 17:03:19 +00:00
50694f600c Light refactor of visual tests (#5585) 2023-08-11 17:18:08 -07:00
10f3e13e4d chore: modify cspell config and fix all typos (#6908) 2023-08-10 16:20:16 +00:00
9be9c5e28e Check for null in DuplicateAction (#6904)
check for null before checking before hasOwnProperty
2023-08-09 11:38:17 -07:00
58aeac94ac Feat(tooling): add cspell (#6892)
* feat(tooling): add cspell

* fix: pin dep

* ci(linting): add spelling
2023-08-09 08:34:45 -07:00
1e3097f54b chore: bump Playwright to 1.36.2 (#6901)
* chore: bump Playwright to `1.36.2`

* chore: remove `playwright/core` dependency

* chore: temporarily disable cacheing step

* chore: temp disable cacheing for e2e-couchdb run

* chore: restore cacheing step

* chore: remove `--prefer-offline` option
2023-08-08 10:44:16 -07:00
6a9ff91d93 Dismiss the independent time conductor popup on unmount (#6859)
* Don't set conductor popup to null unless the view is being destroyed

* Replace beforeDestroy with beforeUnmount

* Propagate plot tick widths to timeline view

* Check if conductor popup exists before trying to remove it from the dom

* Fix imagery e2e test

* Revert accidental commit

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-08-07 23:19:13 +00:00
accfbc96ab Fix Plan View duplicate scrollbars (#6865)
* Closes #6864
- CSS fixes to remove problematic duplicate overflow handling.

* fix(e2e): stabilize autoscale test

* fix(e2e): mark overlay plot tagging test as slow

* fix(e2e): stabilize ITC e2e test

* fix(e2e): don't use hard wait

* fix: remove .only 😳

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-08-07 22:48:29 +00:00
9942bbbc0f chore: move indexTest to kebab-case (#6860) 2023-08-06 12:54:36 -07:00
4287cd5413 [CI] Update docker login step to work across forks and non-nasa-users (#6891)
Continue on error
2023-08-05 15:05:40 -07:00
ee6ca11558 Only load annotations in fixed time mode or frozen (#6866)
* fix annotations load to not happen on start

* remove range checking per annotated point

* back to local variable

* reduce tagging size to improve reliability of test

* remove .only

* remove .only

* reduce hz rate for functional test and keep high frequency test in performance

* remove console.debugs

* this test runs pretty fast now

* fix network request tests to match new behavior
2023-08-03 09:40:52 -07:00
676bb81eab Synchronize timers between multiple users (#6885)
* created a throttle util and using it in timer plugin to throttle refreshing the timer domain object

* Simplify timer logic

* Clarify code a little

* refactor: lint:fix

* Fix linting issue

---------

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-08-02 16:30:51 -07:00
c6305697c0 Set the raw series limits so that we can get the raw series limits (#6877)
* Set the raw series limits so that we can get the raw series limits

* fix: `toRaw()` the other gets/sets/deletes

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-08-02 09:50:03 -07:00
0421936874 fix: suppress deprecation warnings to once per unique args (#6875) 2023-08-02 09:11:41 -07:00
95e686038d fix: toggling markers, alarm markers, marker style + update Vue.extend() usage to Vue 3 (#6868)
* fix: update to `defineComponent` from `Vue.extend()`
* fix: unwrap Proxy arg before WeakMap.get()
* refactor: `defineComponent` not needed here
2023-08-01 14:07:59 -07:00
f705bf9a61 Wait for bounds change to reset telemetry collection data (#6857)
* Reset and re-request telemetry only after receiving bounds following a mode change

* Don't check for tick - just in case the mode is set without bounds

* Use the imagery view timeContext to get related telemetry.

---------

Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
2023-07-31 18:15:08 +00:00
50559ac502 Don't allow editing line more when not editing display layout (#6858) 2023-07-31 10:16:52 -07:00
f0ef93dd3f fix: remove tree-item-destroyed event (#6856)
* fix: remove `tree-item-destroyed` event

- Composition listeners should only be removed if the item has been deleted or its parent has been collapsed. Both are handled by `mct-tree` already, so doing this additionally when tree-items unmount is redundant.

- In addition to that, any time the `visibleTreeItems` array changes, all tree-items will unmount, so this just doesn't work as intended-- it will unregister all composition listeners whenever the tree changes!

* test: stabilize imagery test

- Use keyboard gestures to navigate

* fix: lint:fix
2023-07-31 11:57:11 -05:00
3ae14cf786 Revert "[CI] Temporarily disable some tests" (#6853)
* Revert "[CI] Temporarily disable some tests (#6806)"

This reverts commit 85974fc5f1.

* fix(e2e): fix visual tests

* refactor: lint:fix

* fix: revert localStorage data changes

---------

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-07-28 17:20:06 -07:00
194eb43607 fix(#6854): [LADTableSet] prevent compositions from becoming reactive (#6855)
* fix: prevent compositions from becoming reactive
2023-07-28 12:35:11 -07:00
3c2b032526 Plan rendering inside a timestrip (#6852)
* Use the width and height of the container of the plan to set the activity widths and now markers

* Use the right parent to determine height and width

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-07-28 10:24:48 -07:00
d4e51cbaf1 Use the current timestamp from the global clock (#6851)
* Use the current timestamp from the global clock. Use mode changes to set if the view is fixed time or real time

* Reload the page after adding a plan and then change the url params.
2023-07-28 09:37:11 -07:00
7c58b19c3e Switch staleness provider for SWG to use modeChanged instead of clock (#6845)
* Switch staleness provider for SWG to use modeChanged instead of clock
2023-07-28 05:04:42 +00:00
16e1ac2529 Fixes for e2e tests following the Vue 3 compat upgrade (#6837)
* clock, timeConductor and appActions fixes

* Ensure realtime uses upstream context when available
Eliminate ambiguity when looking for time conductor locator

* Fix log plot e2e tests

* Fix displayLayout e2e tests

* Specify global time conductor to fix issues with duplicate selectors with independent time contexts

* a11y: ARIA for conductor and independent time conductor

* a11y: fix label collisions, specify 'Menu' in label

* Add watch mode

* fix(e2e): update appActions and tests to use a11y locators for ITC

* Don't remove the itc popup from the DOM. Just show/hide it once it's added the first time.

* test(e2e): disable one imagery test due to known bug

* Add fixme to tagging tests, issue described in 6822

* Fix locator for time conductor popups

* Improve how time bounds are set in independent time conductor.
Fix tests for flexible layout and timestrip

* Fix some tests for itc for display layouts

* Fix Inspector tabs remounting on change

* fix autoscale test and snapshot

* Fix telemetry table test

* Fix timestrip test

* e2e: move test info annotations to within test

* 6826: Fixes padStart error due to using it on a number rather than a string

* fix(e2e): update snapshots

* fix(e2e): fix restricted notebook locator

* fix(restrictedNotebook): fix issue causing sections not to update on lock

* fix(restrictedNotebook): fix issue causing snapshots to not be able to be deleted from a locked page

- Using `this.$delete(arr, index)` does not update the `length` property on the underlying target object, so it can lead to bizarre issues where your array is of length 4 but it has 3 objects in it.

* fix: replace all instances of `$delete` with `Array.splice()` or `delete`

* fix(e2e): fix grand search test

* fix(#3117): can remove item from displayLayout via tree context menu while viewing another item

* fix: remove typo 

* Wait for background image to load

* fix(#6832): timelist events can tick down

* fix: ensure that menuitems have the raw objects so emits work

* fix: assign new arrays instead of editing state in-place

* refactor(timelist): use `getClock()` instead of `clock()`

* Revert "refactor(timelist): use `getClock()` instead of `clock()`"

This reverts commit d888553112.

* refactor(timelist): use new timeAPI

* Stop ticking when the independent time context is disabled (#6833)

* Turn off the clock ticket for independent time conductor when it is disabled

* Fix linting issues

---------

Co-authored-by: Khalid Adil <khalidadil29@gmail.com>

* test: update couchdb notebook test

* fix: codeQL warnings

* fix(tree-item): infinite spinner issue

- Using `indexOf()` with an object was failing due to some items in the tree being Proxy-wrapped and others not. So instead, use `findIndex()` with a predicate that compares the navigationPaths of both objects

* [Timer] Remove "refresh" call, it is not needed (#6841)

* removing an unneccessary refresh that waas causing many get requests
* lets just pretend this never happened

* fix(mct-tree): maintain reactivity of all tree items

* Hide change role button in the indicator in cases where there is only… (#6840)

Hide change role button in the indicator in cases where there is only a single role available for the current user

---------

Co-authored-by: Shefali <simplyrender@gmail.com>
Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: David Tsay <david.e.tsay@nasa.gov>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2023-07-28 02:06:41 +00:00
4885c816dc Migrate to Vue 3 Migration Build (#6767)
* Replacing all instances of the new Vue() component creation pattern
* In Vue 3, components cannot be created on the fly and mounted off-DOM. The suggested fix from Vue is to use createApp, but in the context of Open MCT this means dozens of Vue apps being created and destroyed at any given moment. Instead, we have used a community hack for creating individual components.
* beforeDestroy() -> beforeUnmount()
* destroyed() -> unmounted()
* The addition of deep: true option on Array listeners is now required to detect Array changes
* Open MCT is now mounted on a child div instead of directly on document.body


---------

Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-07-19 11:22:23 -07:00
42b545917c [Time] Conductors and API Enhancements (#6768)
* 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>
2023-07-18 17:32:05 -07:00
85974fc5f1 [CI] Temporarily disable some tests (#6806)
Temporarily disable some tests
2023-07-17 14:03:47 -07:00
761d4ce7e4 chore: bump version to 3.0.0-SNAPSHOT (#6800) 2023-07-15 08:26:56 -07:00
5b1298f221 Adds limits subscription to the Telemetry API (#6735)
* Add subscription for limits for domain objects
---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-07-14 17:09:05 -07:00
662d14354c Suppress role selection if no roles available (#6802) 2023-07-14 16:22:25 -07:00
e386036dbf Enhance telemetry tables to allow in place updates for data (#6694)
* cherry-pick(#6602) : [ExportAsJson] Multiple Aliases in Export and Co… (#6658)

cherry-pick(#6602) : [ExportAsJson] Multiple Aliases in Export and Conditional Styles Fixes (#6602)

Fixes issues that prevent import and export from being completed successfully. Specifically:

* if multiple aliases are detected, the first is created as a new object and and added to it's parent's composition, any subsequent aliases of the same object will not be recreated, but the originally created one will be added to the current parent's composition, creating an alias.

* Also, there are cases were conditionSetIdentifiers are stored in an object keyed by an item id in the configuration.objectstyles object, this fix will handle these as well.

* Replaces an errant `return` statement with a `continue` statement to prevent early exit from a recursive function.

---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>

* chore: bump version to `2.2.3` (#6685)

* Add configuration detection to update table rows in place

* Fix typo for datum access

* First add new rows to the table and then update rows in place

* Each row much be checked for in place updates and inserted as needed

* Fix typo. Remove unused code.

* Update datum only. And don't allow undefined values for columns

* Fix typo

* Rename function for clarity

* Use telemetry metadata to indicate datum property to use for in place updates

* Fix typo for method call

* Fix typo for return value

* fullDatum is the datum BEFORE normalizing.

---------

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-07-14 14:51:23 -07:00
6e79e5e2b0 [Timelist] Fixed Time use Now as start time - 5772 (#6497)
* Selectively filter activities only for realtime

* Remove unnecessary logic

* Adjust hideAll and showAll flags for non-realtime mode

* Filter out past events for fixed time

* Set the timestamp on bounds change

* Cleanup

* Removed duplicated listing since handled by different method

* Inverted variable

* removed setting showAll flag

* Remove unusued showAll value

* Removed noCurrent state and isCurrent logic check based on noCurrent

* Set formatted start / end to utc mode to synchronize with current time counductor value

* Add missed file

* Lint fixes

* Formatter improvements to use the Time API and lint fix

* Updated test to use Time API formatter instead of moment directly

* Linting fix to pluginSpec

* Prettier one line

---------

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-07-14 15:19:33 -05:00
32529ff6b2 Role selection for operator status roles (#6706)
* 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>
2023-07-14 19:10:58 +00:00
92329b3d8e Tree item abort (#6757)
* adding abortSignal back to composition load
* suppress AbortError console.errors from couch, delay requests for test to trigger abort
---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-07-14 17:49:10 +00:00
cde8fbbb0d [Tooltips] Add tooltips on hover (#6756)
* Add tooltip api, extend object api to add telemetry composition lookups, and add tooltips to gauges/notebook embeds/plot legends/object frames/object names/time strips/recent objects/search results/object tree

* Add tooltips to telemetry/lad tables

* Styling normalization, sanding and polishing.

* Add tooltips for Conditional widgets and Tab Views

* Add tests

* Switch to using enum-ish consts for tooltip locations

* Trim LAD table row name to account for spacing required by linting rules

---------

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2023-07-13 21:37:59 -07:00
795d7a7ec7 Fix couchdbsearchfolder and allow clocky reports (#6770)
* Fix CouchDBSearchFolder plugin to have unique identifiers.
Allow ttt-reports to be viewed as web pages

* Remove ttt-report type from WebPage view provider. This is being moved to the viper-openmct repo instead

* Adds check for classList

* Add WebPage to the components list

* Remove uuid and use the folder name as the identifier instead

* Remove focused test

---------

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2023-07-13 19:50:52 +00:00
5031010a00 Add role attribution to notebook entries and export (#6793)
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2023-07-13 19:09:00 +00:00
ac22bebe76 Batch Couch DB create calls (#6779)
* Implement persistence batching for Couch DB

* Add tests for persistence batching

---------

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-07-12 04:36:00 +00:00
d08ea62932 Toggle between showing aggregate stacked plot legend or per-plot legend (#6758)
* 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>
2023-07-11 23:16:46 +00:00
293f25df19 [CI] Update Github Actions to combine deploysentinel PR reports and driveby (#6784)
* include git hash

* skip a test
2023-07-11 14:31:23 -07:00
9c22bcfb3e [CI] Fix couchdb e2e trigger and run nightly, part 3 (#6782)
* Run nightly, fix triggers

* contains

* driveby: remove github reporter

* update tests to match

* redo opened logic

* don't run pr:e2e and pr:platform
2023-07-08 13:03:14 -07:00
3b0e05ed14 chore(deps-dev): bump sanitize-html from 2.10.0 to 2.11.0 (#6766)
Bumps [sanitize-html](https://github.com/apostrophecms/sanitize-html) from 2.10.0 to 2.11.0.
- [Changelog](https://github.com/apostrophecms/sanitize-html/blob/main/CHANGELOG.md)
- [Commits](https://github.com/apostrophecms/sanitize-html/compare/2.10.0...2.11.0)

---
updated-dependencies:
- dependency-name: sanitize-html
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-28 11:39:24 -07:00
ff7f55574d chore(deps-dev): bump flatbush from 4.1.0 to 4.2.0 (#6762)
Bumps [flatbush](https://github.com/mourner/flatbush) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/mourner/flatbush/releases)
- [Commits](https://github.com/mourner/flatbush/compare/v4.1.0...v4.2.0)

---
updated-dependencies:
- dependency-name: flatbush
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-27 08:12:02 +00:00
58f869b21b chore(deps-dev): bump webpack from 5.86.0 to 5.88.0 (#6764)
Bumps [webpack](https://github.com/webpack/webpack) from 5.86.0 to 5.88.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.86.0...v5.88.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-26 23:47:38 +00:00
834a19f996 chore(deps-dev): bump sass from 1.63.3 to 1.63.4 (#6743)
Bumps [sass](https://github.com/sass/dart-sass) from 1.63.3 to 1.63.4.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.63.3...1.63.4)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-06-22 13:07:33 -07:00
1d7cd64652 chore(deps-dev): bump @babel/eslint-parser from 7.21.8 to 7.22.5 (#6747)
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.21.8 to 7.22.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.22.5/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-22 16:09:44 +00:00
68ed7bf0e5 chore(deps-dev): bump eslint-plugin-vue from 9.14.1 to 9.15.0 (#6746)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.14.1 to 9.15.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.14.1...v9.15.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-21 16:23:11 -07:00
4b39ef3235 chore(deps): bump docker/login-action from 1 to 2 (#6754)
Bumps [docker/login-action](https://github.com/docker/login-action) from 1 to 2.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-21 16:15:46 -07:00
b685b9582e [CI]Add docker and npm caching (#6748) 2023-06-21 20:54:14 +00:00
d8ac209a96 Fix race condition in image annotations loading and drawing them on the canvas (#6751)
fix race condition between annotation loading and drawing the annotations
2023-06-21 20:20:35 +02:00
f254d4f078 chore: bump version to 2.2.6-SNAPSHOT (#6752)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-06-21 10:16:36 -07:00
c75a82dca5 chore(deps-dev): bump eslint from 8.42.0 to 8.43.0 (#6744)
Bumps [eslint](https://github.com/eslint/eslint) from 8.42.0 to 8.43.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.42.0...v8.43.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-21 16:54:20 +00:00
9423591e4d chore(deps-dev): bump sass-loader from 13.3.1 to 13.3.2 (#6728)
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 13.3.1 to 13.3.2.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v13.3.1...v13.3.2)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-21 15:57:01 +00:00
5a7174bf2a Annotations for imagery prototype (#6624) 2023-06-20 17:12:45 +00:00
d305443445 chore(deps-dev): bump @types/jasmine from 4.3.1 to 4.3.4 (#6745)
Bumps [@types/jasmine](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jasmine) from 4.3.1 to 4.3.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jasmine)

---
updated-dependencies:
- dependency-name: "@types/jasmine"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-20 09:39:27 -07:00
bd5cb8139c Fix controls scope to only the current image (#6710)
* 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>
2023-06-16 22:14:38 +00:00
022dffd419 Timelist bug fixes (#6661)
* Ensure timelist scrolling happens correctly for clock as well as fixed time

* If an activity has already started, show the duration as time to/since the end of the activity

* Addresses review comments: Reverse +/- indicators, removes milliseconds from times.

* Fix linting issues

* Add e2e test for timelist display

* Scroll to 'now' if available
2023-06-16 19:45:59 +00:00
4c5de37cff [Build] Update package engine version range to block on node 20 (#6736)
We have a dependency which is not
2023-06-16 08:03:56 -07:00
fb5bbde154 Batch annotation requests (#6719)
* batching, but query is messed up

* batching requests

* remove debug statement

* add test

* revert couchdb change
2023-06-15 17:08:34 -07:00
9a01cee5fa feat: Annotation API changes to support Geospatial (Map) annotations (#6703)
* feat: `getAnnotations` can take an `abortSignal`

* feat: add `MAP` annotationType

* fix: handle `MAP` annotations in search results

* fix: have `loadAnnotationForTargetObject` take an `abortSignal`

* fix(#5646): abort pending annotations requests on nav away from notebooks or plots

* fix: handle AbortErrors gracefully

* fix: remove redundant `MAP` annotation type

* docs: add comment

* fix: navigate before selection for geospatial results

* feat: comparators for annotation target equality

- Adds `addTargetComparator()` to the Annotation API, allowing plugins to define additional comparators for certain annotation types.
- Update usage of `_.isEqual()` for targets to use the `areAnnotationTargetsEqual()` method, which uses any additional comparators before falling back to a deep equality check.
- Handle aborted `getAnnotations()` calls gracefully in the AnnotationInspectorView

* test: add unit tests for target comparators

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
2023-06-14 19:33:26 +00:00
8b2d3b0622 chore(deps-dev): bump sass from 1.62.1 to 1.63.3 (#6729)
Bumps [sass](https://github.com/sass/dart-sass) from 1.62.1 to 1.63.3.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.62.1...1.63.3)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 21:23:06 +00:00
60df9e79c1 chore(deps-dev): bump @percy/cli from 1.24.2 to 1.26.0 (#6727)
Bumps [@percy/cli](https://github.com/percy/cli/tree/HEAD/packages/cli) from 1.24.2 to 1.26.0.
- [Release notes](https://github.com/percy/cli/releases)
- [Commits](https://github.com/percy/cli/commits/v1.26.0/packages/cli)

---
updated-dependencies:
- dependency-name: "@percy/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 20:27:43 +00:00
5a1e544a4c chore(deps-dev): bump webpack-dev-server from 4.13.3 to 4.15.1 (#6723)
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 4.13.3 to 4.15.1.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v4.13.3...v4.15.1)

---
updated-dependencies:
- dependency-name: webpack-dev-server
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 20:16:09 +00:00
040ef0b998 chore(deps-dev): bump webpack from 5.85.1 to 5.86.0 (#6726)
Bumps [webpack](https://github.com/webpack/webpack) from 5.85.1 to 5.86.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.85.1...v5.86.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 03:30:43 +00:00
f77287530b chore(deps-dev): bump vue-eslint-parser from 9.3.0 to 9.3.1 (#6722)
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 9.3.0 to 9.3.1.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v9.3.0...v9.3.1)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-12 20:22:28 -07:00
3cc93c0656 Add time context for telemetry collections (#6543)
* add time context for telemetry collections

* move time context to options

* clean up jsdoc

* clean up jsdoc

* Update src/api/telemetry/TelemetryAPI.js

* clean up comments

* use time context bounds if defined for start and end

* refactor: format with prettier
2023-06-09 17:21:44 +00:00
d71287b318 chore(deps-dev): bump mini-css-extract-plugin from 2.7.5 to 2.7.6 (#6702)
Bumps [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin) from 2.7.5 to 2.7.6.
- [Release notes](https://github.com/webpack-contrib/mini-css-extract-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/mini-css-extract-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/mini-css-extract-plugin/compare/v2.7.5...v2.7.6)

---
updated-dependencies:
- dependency-name: mini-css-extract-plugin
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-05 20:02:59 -07:00
943a40680f chore(deps-dev): bump sass-loader from 13.2.2 to 13.3.1 (#6714)
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 13.2.2 to 13.3.1.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v13.2.2...v13.3.1)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-05 17:10:13 -07:00
351e6a0fbf chore(deps-dev): bump css-loader from 6.7.3 to 6.8.1 (#6712)
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 6.7.3 to 6.8.1.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v6.7.3...v6.8.1)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-05 17:02:22 -07:00
1f514dde3d chore(deps-dev): bump webpack from 5.85.0 to 5.85.1 (#6717)
Bumps [webpack](https://github.com/webpack/webpack) from 5.85.0 to 5.85.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.85.0...v5.85.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-05 15:31:15 -07:00
47121cfbe8 chore(deps-dev): bump typescript from 5.0.4 to 5.1.3 (#6715)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.0.4 to 5.1.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.0.4...v5.1.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-05 15:15:12 -07:00
44c4d4ff47 chore(deps-dev): bump eslint from 8.41.0 to 8.42.0 (#6713)
Bumps [eslint](https://github.com/eslint/eslint) from 8.41.0 to 8.42.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.41.0...v8.42.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-05 15:03:24 -07:00
dc1d046822 chore(deps-dev): bump style-loader from 3.3.2 to 3.3.3 (#6698)
Bumps [style-loader](https://github.com/webpack-contrib/style-loader) from 3.3.2 to 3.3.3.
- [Release notes](https://github.com/webpack-contrib/style-loader/releases)
- [Changelog](https://github.com/webpack-contrib/style-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/style-loader/compare/v3.3.2...v3.3.3)

---
updated-dependencies:
- dependency-name: style-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-02 21:47:13 +00:00
cdb20b9950 chore(deps-dev): bump webpack-merge from 5.8.0 to 5.9.0 (#6701)
Bumps [webpack-merge](https://github.com/survivejs/webpack-merge) from 5.8.0 to 5.9.0.
- [Changelog](https://github.com/survivejs/webpack-merge/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/survivejs/webpack-merge/commits)

---
updated-dependencies:
- dependency-name: webpack-merge
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-02 09:48:10 -07:00
a9158a90d5 Support filtering by severity for events tables (#6672)
* hide tab if not editing and fix issue where configuration is null

* show filters tab if editing

* works with dropdown

* add a none filter to remove 'filters applied' styling'

* pass appropriate comparator

* openmct side is ready

* clear filter still not working

* fix clearing of procedures

* add filters

* add some basic documentation

* add some basic documentation

* add some basic documentation

* fix grammar issues and convert away from amd pattern

* convert to permanent links

* refactor: format with prettier

* add aria labels for selects
2023-06-01 14:26:14 -07:00
07373817b0 chore(deps-dev): bump webpack from 5.84.0 to 5.85.0 (#6704)
Bumps [webpack](https://github.com/webpack/webpack) from 5.84.0 to 5.85.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.84.0...v5.85.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-01 12:59:47 -07:00
9247951456 chore: bump version to 2.2.5-SNAPSHOT (#6705)
chore: bump snapshot version to 2.2.5-SNAPSHOT
2023-05-31 16:50:41 -07:00
47c5863edf chore(deps-dev): bump @percy/cli from 1.24.0 to 1.24.2 (#6699)
Bumps [@percy/cli](https://github.com/percy/cli/tree/HEAD/packages/cli) from 1.24.0 to 1.24.2.
- [Release notes](https://github.com/percy/cli/releases)
- [Commits](https://github.com/percy/cli/commits/v1.24.2/packages/cli)

---
updated-dependencies:
- dependency-name: "@percy/cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-31 23:32:56 +00:00
295bfe9294 chore(deps-dev): bump eslint-plugin-vue from 9.13.0 to 9.14.1 (#6696)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.13.0 to 9.14.1.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.13.0...v9.14.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-31 23:16:31 +00:00
1c6214fe79 chore(deps-dev): bump eslint from 8.40.0 to 8.41.0 (#6700)
Bumps [eslint](https://github.com/eslint/eslint) from 8.40.0 to 8.41.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.40.0...v8.41.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-31 15:54:37 -07:00
4cab97cb4b chore(deps-dev): bump sinon from 15.0.1 to 15.1.0 (#6683)
Bumps [sinon](https://github.com/sinonjs/sinon) from 15.0.1 to 15.1.0.
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md)
- [Commits](https://github.com/sinonjs/sinon/compare/v15.0.1...v15.1.0)

---
updated-dependencies:
- dependency-name: sinon
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-24 17:57:44 +00:00
0bafdad605 chore(deps-dev): bump webpack from 5.81.0 to 5.84.0 (#6692)
Bumps [webpack](https://github.com/webpack/webpack) from 5.81.0 to 5.84.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.81.0...v5.84.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-24 17:45:50 +00:00
4d375ec765 chore(deps-dev): bump webpack-cli from 5.0.2 to 5.1.1 (#6653)
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 5.0.2 to 5.1.1.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/webpack-cli@5.0.2...webpack-cli@5.1.1)

---
updated-dependencies:
- dependency-name: webpack-cli
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-24 10:35:28 -07:00
47b44cebba chore(deps-dev): bump jasmine-core from 4.5.0 to 5.0.0 (#6666)
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 4.5.0 to 5.0.0.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v4.5.0...v5.0.0)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-24 16:22:50 +00:00
fea68381a7 fix: unlisten to annotation event beforeDestroy (#6690)
* fix: unlisten to annotation event beforeDestroy

* refactor: `npm run lint:fix`

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
2023-05-24 09:29:19 +00:00
356c90ca45 chore(deps-dev): bump @babel/eslint-parser from 7.19.1 to 7.21.8 (#6648)
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.19.1 to 7.21.8.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.21.8/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-23 18:21:33 +00:00
7e12a45960 chore(deps-dev): bump vue-eslint-parser from 9.2.1 to 9.3.0 (#6671)
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 9.2.1 to 9.3.0.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v9.2.1...v9.3.0)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-19 14:34:42 -07:00
804dbf0cab chore: add prettier (3/3): update .git-blame-ignore-revs file (#6684)
Update `.git-blame-ignore-revs` file
2023-05-18 22:08:13 +00:00
caa7bc6fae chore: add prettier (2/3): apply formatting, re-enable lint ci step (#6682)
* style: apply prettier formatting

* fix: re-enable lint ci check
2023-05-18 21:54:46 +00:00
172e0b23fd chore: add prettier (1/3): add packages, configurations, fix lint issues (#6382)
* fix: remove redundant eslint rules

* chore: bump `prettier` to v2.8.7

* docs: vue files to use html comments for licenses

- Prettier's Vue parser freaks out if it sees a *.js style comment in a *.vue file.

* docs: more licenses for vue files

* fix: don't ignore *.vue files

* fix: use defaults for tabWidth and printWidth

* simplify .prettierignore

* enforce a printWidth of 100

* fix: use `eslint-plugin-prettier`, remove conflicting rules

* test: fix gauge tests (for real)

* test: fix notebook test selectors

* test: fix restrictedNotebook test selectors

* test: remove useless assignment

* lint: __dirname as global

* lint: revert eslint config + whitespace changes, commit new config

* style: remove unnecessary string concat of literals

* test: fix missed gauge test

* fix: use new eslint rules

* feat: add blank `.git-blame-ignore-revs` file

* docs: update to mention Prettier and format.

* Revert "test: fix gauge tests (for real)"

This reverts commit 6afad450389edc2f16ff0d00c9524621a7ba53bc.

* Revert "test: fix notebook test selectors"

This reverts commit 17fe1cbbff02e9298f041b5ea0fea5494fe54d94.

* Revert "test: fix restrictedNotebook test selectors"

This reverts commit 97e0ede826b7dd61c5443845443d806a56f3f305.

* Revert "test: fix missed gauge test"

This reverts commit e2398fc38ca94beff2066cc253173412ad47f8b9.

* test: fix gauge tests (no formatting)

* test: update notebook e2e selectors (no formatting)

* test: update restrictedNotebook e2e selectors (no formatting)

* fix: temporarily disable lint check
2023-05-18 21:29:20 +00:00
5df7971438 [Plots] Fix wrapping of Y Axis when height is small (#6264)
* New branch to fix y-axis icons

* test: fix locator

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-05-17 18:32:05 +00:00
b39d5e8bcc chore(deps-dev): bump eslint-plugin-vue from 9.11.0 to 9.13.0 (#6674)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.11.0 to 9.13.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.11.0...v9.13.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-16 15:45:50 -07:00
c5188397e4 chore: bump version to 2.2.4-SNAPSHOT (#6673)
chore: bump version to 2.2.4-SNAPSHOT
2023-05-16 13:50:58 -07:00
225fa22c72 Fix Locator in Move and Link dialogs (#6663)
Closes #6654
- Corrected form builder configurations.
2023-05-16 09:50:42 -07:00
2c3b6fa540 [ExportAsJson] Multiple Aliases in Export and Conditional Styles Fixes (#6602)
Fixes issues that prevent import and export from being completed successfully. Specifically:

* if multiple aliases are detected, the first is created as a new object and and added to it's parent's composition, any subsequent aliases of the same object will not be recreated, but the originally created one will be added to the current parent's composition, creating an alias.

* Also, there are cases were conditionSetIdentifiers are stored in an object keyed by an item id in the configuration.objectstyles object, this fix will handle these as well.

* Replaces an errant `return` statement with a `continue` statement to prevent early exit from a recursive function.

---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-05-11 17:11:09 +00:00
496ab4d5a3 chore(deps-dev): bump vue-eslint-parser from 9.1.0 to 9.2.1 (#6651)
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 9.1.0 to 9.2.1.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v9.1.0...v9.2.1)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-09 16:48:39 +00:00
aad9e51262 chore(deps-dev): bump eslint from 8.39.0 to 8.40.0 (#6650)
Bumps [eslint](https://github.com/eslint/eslint) from 8.39.0 to 8.40.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.39.0...v8.40.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-08 15:06:29 -07:00
ba4353aacb fix: Gantt Chart displays draft status of Plan in composition (#6642)
* fix: setStatus when add/replace a plan in composition

* test: add regression test

* chore: lint:fix

* test: add visual tests for plan and gantt chart drafts
2023-05-05 23:48:34 +00:00
9f079255f1 Free findSubscriptionProvider! (#6547)
free `findSubscriptionProvider`
2023-05-05 16:41:07 -07:00
f5eacc504b [Couchdb] Update couchdb init script and bump version to latest (#6643)
* chatty

* bad linebreak

* bump to 3.3.2

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-05-05 19:24:54 +00:00
26fa1653e3 Synchronize versions of common devDependencies with openmct-yamcs (#6627)
* Update @babel/eslint-parser, eslint, webpack, webpack-cli versions

* Increase eventemitter3 version from 1.2.0 to 4.0.7

* Downgrade eventemitter3 to 1.2.0

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-05-05 17:27:01 +00:00
b7c68f715b [LAD Table][Browse Bar] Visual test and title attributes for actions (#6640) 2023-05-03 18:11:01 -07:00
549a579bf3 fix: remove pr:e2e:couchdb label on run completion (#6628)
* fix: trigger e2e-couchdb run on sync

* fix: remove `e2e-couchdb` label if present after run

* fix: remove `synchronize` trigger

- this is intended behavior

* refactor: update GHA to use octokit action

* docs: add note about GHA warnings

* fix: remove `pr:e2e` label after run

* fix: use github-script
2023-05-03 10:24:41 -07:00
fe677fa359 [LAD Tables] Persist view modified configuration (#6637)
* chore: bump version to `2.2.2` (#6615)

* persisting lad configuration in the view when it changes

---------

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-05-02 16:19:23 -07:00
1bbc3789ec chore(deps-dev): bump sass from 1.62.0 to 1.62.1 (#6630) 2023-05-02 12:20:00 -07:00
636849885b chore(deps-dev): bump webpack from 5.80.0 to 5.81.0 (#6634)
Bumps [webpack](https://github.com/webpack/webpack) from 5.80.0 to 5.81.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.80.0...v5.81.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-02 09:02:46 -07:00
6f2b20eee9 Retain styling on condition widgets when adding or removing a url (#6625)
* fix spelling error
* apply changes after dynamic component updates
* remove * listener
* react to url change
* es6 mode
* fix html structure
* Closes #6614
- CSS fixes for revised widget approach.
* include url prop for vue component reactivity
* disable a tag overriding font color
* provide a reactive object for component reactivity

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2023-04-28 20:17:14 +00:00
e38821cc1f chore(deps-dev): bump @percy/cli from 1.23.0 to 1.24.0 (#6618)
Bumps [@percy/cli](https://github.com/percy/cli/tree/HEAD/packages/cli) from 1.23.0 to 1.24.0.
- [Release notes](https://github.com/percy/cli/releases)
- [Commits](https://github.com/percy/cli/commits/v1.24.0/packages/cli)

---
updated-dependencies:
- dependency-name: "@percy/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-25 16:26:37 -07:00
4345d216f7 chore(deps-dev): bump karma-chrome-launcher from 3.1.1 to 3.2.0 (#6619)
Bumps [karma-chrome-launcher](https://github.com/karma-runner/karma-chrome-launcher) from 3.1.1 to 3.2.0.
- [Release notes](https://github.com/karma-runner/karma-chrome-launcher/releases)
- [Changelog](https://github.com/karma-runner/karma-chrome-launcher/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma-chrome-launcher/compare/v3.1.1...v3.2.0)

---
updated-dependencies:
- dependency-name: karma-chrome-launcher
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-25 22:43:41 +00:00
84a12c7833 chore(deps-dev): bump karma from 6.3.20 to 6.4.2 (#6616)
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.20 to 6.4.2.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.20...v6.4.2)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-25 22:30:58 +00:00
ad8445114f chore(deps-dev): bump webpack-cli from 5.0.0 to 5.0.2 (#6622)
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 5.0.0 to 5.0.2.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/webpack-cli@5.0.0...webpack-cli@5.0.2)

---
updated-dependencies:
- dependency-name: webpack-cli
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-25 15:10:04 -07:00
bcd50dfa35 chore(deps-dev): bump webpack from 5.79.0 to 5.80.0 (#6620)
Bumps [webpack](https://github.com/webpack/webpack) from 5.79.0 to 5.80.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.79.0...v5.80.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-25 14:40:29 -07:00
a798ddf05e chore(deps-dev): bump eslint from 8.37.0 to 8.39.0 (#6617)
Bumps [eslint](https://github.com/eslint/eslint) from 8.37.0 to 8.39.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.37.0...v8.39.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-25 09:29:54 -07:00
7af7e68779 refactor: add appActions and stabilize overlayPlot and plotRendering e2e test suites (#6612)
* 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
2023-04-20 14:36:58 -07:00
c200999659 test(e2e): fix overlay plot element preview test flake (#6609)
test: wait for plot to be drawn before assertions
2023-04-19 13:40:44 -07:00
ddeeff4822 Fix test flake and playwright version in couchdb circleci test (#6608)
* test: wait for `domcontentloaded` on reload

* chore: playwright `1.32.3` in circleci couchdb test

* test: simplify(why was this creating a clock??)
2023-04-19 19:11:09 +00:00
5610846147 chore(deps-dev): bump @deploysentinel/playwright from 0.3.3 to 0.3.4 (#6606)
Bumps @deploysentinel/playwright from 0.3.3 to 0.3.4.

---
updated-dependencies:
- dependency-name: "@deploysentinel/playwright"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-19 17:17:57 +00:00
88fde47932 Add @types/lodash to dependabot semver ignore list (#6604)
Add lodash types to ignore list
2023-04-19 09:23:16 -07:00
2a0faba35f chore(deps-dev): bump eslint-plugin-vue from 9.10.0 to 9.11.0 (#6597)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.10.0 to 9.11.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.10.0...v9.11.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-18 16:41:58 -07:00
a47abf5f96 chore(deps-dev): bump webpack-dev-server from 4.11.1 to 4.13.3 (#6596)
* chore(deps-dev): bump webpack-dev-server from 4.11.1 to 4.13.3

Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 4.11.1 to 4.13.3.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v4.11.1...v4.13.3)

---
updated-dependencies:
- dependency-name: webpack-dev-server
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix: disable webpack overlay for runtime errors

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-04-18 16:33:43 -07:00
968eee6698 chore: bump Playwright to v1.32.3 (#6511)
* chore: bump Playwright to v1.32.1

* test: fix locators, remove unnecessary awaits

* chore: bump Playwright in ci workflows

* test: better selectors for yAxis configs

- fix tests

* chore: bump Playwright to 1.32.3

* refactor: ensure openmct starts after plugins install

* fix: wait for domcontentloaded on initial nav

* test: fix autoscale snapshot test

* test: fix `--max-failures` argname typo

* test: update old locators

* test(fix): add missing await

* test: fix typo 😅
2023-04-18 22:32:29 +00:00
43d56a68bb Bump for 2.2.3 (#6600)
Update package.json

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-04-18 21:13:05 +00:00
f055a8a0c7 fix(e2e): remove unnecessary wait for networkidle and fix selectors (#6370) 2023-04-18 20:25:43 +00:00
2820237d60 Fixes the way we start and stop couchdb on bare metal CI agents (#6589) 2023-04-17 14:26:13 -07:00
dbdc9bb4e2 fix(#6549): [StaticRootPlugin] Remap non-empty root namespaces and non-root namespaces correctly (#6583)
* fix: preserve truthy namespaces and unmapped values

- Fixes the issue of the Static Root provider overriding existing namespaces, such as those from a telemetry dictionary
- Fixes the issue of keys of child objects NOT present in the idMapping (such as those from a telemetry dictionary) being overwritten as undefined
- TODO: This will not work for objects exported from an environment that has the "MyItems" namespace defined to anything other than an empty string. Need to figure out how to handle this.

* fix: handle the case of rootId having a namespace !== ""

* refactor: use `parseKeyString`

* fix: StaticRootPlugin object mapping for non-empty namespaces

* fix: use index, fix location identifiers

* tets: add non-empty namespace tests (wip)

* refactor: rename and move test files

* test: update StaticModelProvider tests

* fix: remap to identifiers for config, not keystring

---------

Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
2023-04-14 18:31:04 -05:00
a9a98380f2 test(visual): add theme to notification banner test name (#6450)
* test(visual): add theme to notification banner test name

* test: rename file

* test: switch to small example plan

* test: snapshot object-view only

* test: fix selectors

* refactor: chain locators together
2023-04-13 10:02:56 -07:00
e3ab085dd5 chore(deps-dev): bump webpack from 5.78.0 to 5.79.0 (#6588)
Bumps [webpack](https://github.com/webpack/webpack) from 5.78.0 to 5.79.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.78.0...v5.79.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-12 15:38:59 -07:00
519135527b chore(deps-dev): bump sass from 1.61.0 to 1.62.0 (#6587)
Bumps [sass](https://github.com/sass/dart-sass) from 1.61.0 to 1.62.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.61.0...1.62.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-12 13:44:16 -07:00
fc37f6e05b Move Dependabot to weekly to reduce frequency of changes and reduce CI Bill (#6585)
Update dependabot.yml
2023-04-12 11:11:41 -07:00
ab1df89396 chore(deps-dev): bump webpack from 5.77.0 to 5.78.0 (#6559)
Bumps [webpack](https://github.com/webpack/webpack) from 5.77.0 to 5.78.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.77.0...v5.78.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-11 12:25:59 -07:00
9ee5ab96f3 chore(deps-dev): bump sass from 1.59.3 to 1.61.0 (#6569)
Bumps [sass](https://github.com/sass/dart-sass) from 1.59.3 to 1.61.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.59.3...1.61.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-11 12:09:45 -07:00
8b2c6e3fb3 chore(deps-dev): bump @percy/cli from 1.22.0 to 1.23.0 (#6578)
Bumps [@percy/cli](https://github.com/percy/cli/tree/HEAD/packages/cli) from 1.22.0 to 1.23.0.
- [Release notes](https://github.com/percy/cli/releases)
- [Commits](https://github.com/percy/cli/commits/v1.23.0/packages/cli)

---
updated-dependencies:
- dependency-name: "@percy/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-11 08:15:48 -07:00
b8b0a08eeb Add Code Coverage Doc and some other drive-bys (#5724) 2023-04-10 12:25:17 -07:00
633b6be2fd chore(deps-dev): bump typescript from 4.9.5 to 5.0.4 (#6574)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.9.5 to 5.0.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.9.5...v5.0.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-10 11:21:16 -07:00
4963aff8a0 Only decrement and save if there is composition but no child object reference (#6568)
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
2023-04-07 06:17:52 +00:00
6786be54fa Add safari as well as iOS safari browserlist check (#6567)
* Add safari as well as iOS safari browserlist check

* Update package.json

* math
2023-04-06 16:51:28 -07:00
b081389e68 chore(deps-dev): bump @percy/cli from 1.21.0 to 1.22.0 (#6565)
Bumps [@percy/cli](https://github.com/percy/cli/tree/HEAD/packages/cli) from 1.21.0 to 1.22.0.
- [Release notes](https://github.com/percy/cli/releases)
- [Commits](https://github.com/percy/cli/commits/v1.22.0/packages/cli)

---
updated-dependencies:
- dependency-name: "@percy/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-06 14:34:59 -07:00
7a3ec3a241 Fix ExportAsJSONAction to not lose layout configurations on linked objects (#6562) 2023-04-05 23:03:23 -07:00
c0c383bf18 First attempt at DeploySentinel and fix couchdb notebook tests (#6398)
* First attempt

* Remove commented pattern

* Add deploysentinel to github action

* drive by

* Stablization

* remove only

* entries now selected on creation

* select previous entry on deletion

* add deletion test

* wip

* fix adding focus selection

* remove previous entry selection logic

* null check for event

* address review comments

* address review comments

* refactor tests a bit

* typo

* Add some determinism to avoid console errors

* refactor and use methods

* stabilize

* remove debug

* remove only

* combine clean commands

* comments

* change to expects

* test: await toBeHidden() assertion

* test: use `myItemsFolderName` instead of 'My Items'

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-04-05 06:25:28 -07:00
fe1c99de12 First attempt at DeploySentinel and fix couchdb notebook tests (#6398)
* First attempt

* Remove commented pattern

* Add deploysentinel to github action

* drive by

* Stablization

* remove only

* entries now selected on creation

* select previous entry on deletion

* add deletion test

* wip

* fix adding focus selection

* remove previous entry selection logic

* null check for event

* address review comments

* address review comments

* refactor tests a bit

* typo

* Add some determinism to avoid console errors

* refactor and use methods

* stabilize

* remove debug

* remove only

* combine clean commands

* comments

* change to expects

* test: await toBeHidden() assertion

* test: use `myItemsFolderName` instead of 'My Items'

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-04-05 06:24:57 -07:00
2e60da0401 Ensure annotations on empty entries in notebook are not lost (#6525)
* entries now selected on creation

* select previous entry on deletion

* add deletion test

* wip

* fix adding focus selection

* remove previous entry selection logic

* null check for event

* address review comments

* address review comments

* refactor tests a bit

* typo

* remove clicking on entries
2023-04-04 14:37:38 -07:00
bc3a5408b4 fix(#6503): Recently Viewed Items - Disable button if no items (#6533)
* add e2e test

* fix: remove slow function

* test: After deactivating the button, new objects must be inserted and the button becomes active again

* test: ensure clear recent objects button is active or inactive

* add an event to notify when an object is inserted in the recents list

* add an event to notify when an object is inserted in the recents list

* fix: adjusting function name and add validation for triggering the event

* fix: add event to disable button only when user click ok to clear list of recents

* test: fix failing e2e + better assertions

---------

Co-authored-by: Jesse Mazzella <jessemazzella@gmail.com>
2023-04-03 23:56:03 +00:00
344bf8eed3 [CI] Stop taking patch releases for moment-timezone (#6553)
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-04-03 17:20:09 +00:00
cbb3368937 chore: bump version to 2.2.2-SNAPSHOT (#6552)
Update package.json
2023-04-03 09:06:24 -07:00
b7a671d392 Allow Restricted Notebooks to export text (#6542)
* 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
2023-04-01 07:08:22 +02:00
4f10a93ef5 Use node-version: 'lts/gallium' (#6540)
* Update e2e-couchdb.yml

* this really doesn't like it

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-03-31 11:55:20 -07:00
f8186e4b4e chore(deps-dev): bump karma-sourcemap-loader from 0.3.8 to 0.4.0 (#6290)
Bumps [karma-sourcemap-loader](https://github.com/demerzel3/karma-sourcemap-loader) from 0.3.8 to 0.4.0.
- [Release notes](https://github.com/demerzel3/karma-sourcemap-loader/releases)
- [Changelog](https://github.com/demerzel3/karma-sourcemap-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/demerzel3/karma-sourcemap-loader/commits/0.4.0)

---
updated-dependencies:
- dependency-name: karma-sourcemap-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-31 02:53:09 -07:00
4e0c364d89 chore(deps-dev): bump sass-loader from 13.2.1 to 13.2.2 (#6513)
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 13.2.1 to 13.2.2.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v13.2.1...v13.2.2)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-31 04:04:35 +00:00
f3bed9c651 chore(deps-dev): bump webpack from 5.76.3 to 5.77.0 (#6520)
Bumps [webpack](https://github.com/webpack/webpack) from 5.76.3 to 5.77.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.76.3...v5.77.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-30 20:54:11 -07:00
4d93907d58 chore(deps-dev): bump eslint-plugin-compat from 4.1.1 to 4.1.2 (#6352)
Bumps [eslint-plugin-compat](https://github.com/amilajack/eslint-plugin-compat) from 4.1.1 to 4.1.2.
- [Release notes](https://github.com/amilajack/eslint-plugin-compat/releases)
- [Changelog](https://github.com/amilajack/eslint-plugin-compat/blob/main/CHANGELOG.md)
- [Commits](https://github.com/amilajack/eslint-plugin-compat/compare/v4.1.1...v4.1.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-compat
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-03-30 15:37:59 -07:00
6f656a6783 [Build]Remove Node14LTS from supported versions and update our pipelines (#6527)
* bump minimumum and pin drivebys

* move to 16 and remove 14

* remove 14

* update to latest
2023-03-30 20:53:44 +00:00
767fb6c5fd fix: remove redundant request on FaultManagement mount (#6502)
* fix: remove redundant update request

* fix: handle case where request returns no faults

* test: fix fault management tests

* docs: clean up FaultManagement API types

---------

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2023-03-30 18:43:55 +00:00
b0a0b4bb58 chore(deps-dev): bump eslint from 8.36.0 to 8.37.0 (#6521)
Bumps [eslint](https://github.com/eslint/eslint) from 8.36.0 to 8.37.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.36.0...v8.37.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-03-30 11:15:36 -07:00
340f4a9e79 chore(deps-dev): bump @percy/cli from 1.17.0 to 1.21.0 (#6439)
Bumps [@percy/cli](https://github.com/percy/cli/tree/HEAD/packages/cli) from 1.17.0 to 1.21.0.
- [Release notes](https://github.com/percy/cli/releases)
- [Commits](https://github.com/percy/cli/commits/v1.21.0/packages/cli)

---
updated-dependencies:
- dependency-name: "@percy/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-03-30 11:05:32 -07:00
3007b28b0f Simple text export of Notebook (#6510)
* add simple prototype

* tags and metadata now exported

* add form for options

* revert notebook

* add simple e2e test

* add test stubs

* death to debug
2023-03-30 19:44:12 +02:00
20789601b4 Add contextual domain object back for contextual row actions (#6524)
* re-enable historical row action
2023-03-30 10:08:09 -07:00
a56cfed732 Remove ticker and rely solely on the clock ticks to update the timelist durations (#6495)
* Remove ticker for timelist and rename a function for readability

* Use formatting for remote clock if available.

* throttle updates to the timestamp and listing activities

---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-03-29 15:16:52 -07:00
7ec2c4475b LAD Tables now disallow user-select (#6322)
* 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>
2023-03-28 14:38:52 -07:00
8f59b16465 chore(deps-dev): bump @types/lodash from 4.14.191 to 4.14.192 (#6512)
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.14.191 to 4.14.192.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-28 16:09:39 +00:00
36cfb1d515 [Condition Widgets] Keep styles for widgets with a URL (#6515)
* call update style after view is update with current style rule manager styles for components (namely condition widget) that have DOM changes after the element is grabbed to style

* target blank yo

---------

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-03-28 15:58:15 +00:00
2ff7132e90 use relative path (#6518) 2023-03-27 23:52:54 +00:00
d0ca398e01 [Plots, Multiple-Y Axis] Fix for rectangle drawn on each axis (#6490)
* Change logic so that the rectangle is only drawn on one axis

* Filter firstDrawableAxis before the rest of the logic

* Update to filter yAxisIds by the canDraw function
2023-03-24 13:46:10 -07:00
59278e8a06 chore: bump version to 2.2.1-SNAPSHOT (#6501) 2023-03-23 16:27:31 -07:00
c8377f392b chore(deps-dev): bump eslint-plugin-vue from 9.9.0 to 9.10.0 (#6500)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.9.0 to 9.10.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.9.0...v9.10.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-03-23 15:54:10 -07:00
29df748f2b fix(#6457): Tags disappear after resizing then dismissing the Add Tag select (#6499) 2023-03-23 14:48:56 -07:00
665ba6dae1 fix(#6347): Searching a Notebook with whitelisted links for '.' exposes some html (#6396) 2023-03-23 21:23:49 +00:00
f39f8df4e2 Suppress annotations tab if no annotations defined (#6498)
* fix bad copy paste

* suppress annotations inspector tab if no tags
2023-03-23 14:00:46 -07:00
4aa572d489 Button to clear the recent objects list (#6327) 2023-03-23 19:53:01 +00:00
0b24c4f2c5 fix(#6488): better determination of child tree items when collapsing a parent (#6489)
Splits the parent and child navigationPaths into arrays of keystrings and then checks to ensure that every keystring in the parent path is included in the child path in order
2023-03-23 19:02:44 +00:00
e4657f79cd chore(deps-dev): bump plotly.js-basic-dist from 2.17.0 to 2.20.0 (#6438)
Bumps [plotly.js-basic-dist](https://github.com/plotly/plotly.js) from 2.17.0 to 2.20.0.
- [Release notes](https://github.com/plotly/plotly.js/releases)
- [Changelog](https://github.com/plotly/plotly.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.js/compare/v2.17.0...v2.20.0)

---
updated-dependencies:
- dependency-name: plotly.js-basic-dist
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-03-22 22:09:15 +00:00
f2059406e0 chore(deps-dev): bump webpack from 5.76.2 to 5.76.3 (#6494)
Bumps [webpack](https://github.com/webpack/webpack) from 5.76.2 to 5.76.3.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.76.2...v5.76.3)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-22 13:35:24 -07:00
3e3dc7dd83 chore(deps-dev): bump webpack from 5.74.0 to 5.76.2 (#6440)
Bumps [webpack](https://github.com/webpack/webpack) from 5.74.0 to 5.76.2.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.74.0...v5.76.2)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-22 19:22:53 +00:00
50742c4f82 Hide Flexible Layout header buttons when frame is hidden (#6486)
- Hide nested frame header buttons for Flexible Layouts as well as Display Layouts.
- Adjust z-index of frame control header buttons.
2023-03-21 17:24:41 -07:00
2f04add2a3 fix(#6408): Zooming in the corner of an image makes it fly away (#6410)
* fix(#6480): Zooming in the corner of an image makes it fly away

* fix: keeping layers in the right place even when zoomed in
2023-03-22 00:15:02 +00:00
0ce5060246 Fix Imagery local controls z-index (#6482)
- Corrected z-index for imagery local controls.
2023-03-22 00:02:34 +00:00
00353cdccf Cancel annotation selections if you click outside the plot component (#6476)
* resolve conflicts

* resolve conflicts

* more selectively add listeners

* add and fix tests

* address PR review comments

* test(e2e): stabilize flaky overlayPlot test

---------

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2023-03-21 16:53:24 -07:00
a1ac209d74 chore(deps-dev): bump plotly.js-gl2d-dist from 2.17.1 to 2.20.0 (#6441)
Bumps [plotly.js-gl2d-dist](https://github.com/plotly/plotly.js) from 2.17.1 to 2.20.0.
- [Release notes](https://github.com/plotly/plotly.js/releases)
- [Changelog](https://github.com/plotly/plotly.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.js/compare/v2.17.1...v2.20.0)

---
updated-dependencies:
- dependency-name: plotly.js-gl2d-dist
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-21 13:57:59 -07:00
bdd8477b54 chore(deps-dev): bump sass from 1.57.1 to 1.59.3 (#6442)
Bumps [sass](https://github.com/sass/dart-sass) from 1.57.1 to 1.59.3.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.57.1...1.59.3)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-21 19:27:17 +00:00
f690f36bfb chore(deps-dev): bump sass-loader from 13.2.0 to 13.2.1 (#6480)
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 13.2.0 to 13.2.1.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v13.2.0...v13.2.1)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-03-21 12:11:42 -07:00
e174f075df Don't initialize the selected condition style when a view is loaded (#6478)
* Don't initialize the selected condition style when a view is loaded

* Ensure selection of styles in Edit mode works as expected. When out of edit mode, only a computed style should be chosen to display.
2023-03-20 17:06:10 -07:00
8cf12db104 Add a view action button to toggle on class to control fixed layout (#6465)
* Add a view action buttons to toggle on class to control fixed layout
* Add configuration watcher and initial view action
* Added next tick in mount and updated action key
* Updated the view action key
2023-03-17 15:30:35 -07:00
453b1f3009 fixes to entries (#6464)
* fixes to entries
fix delete first notebook entry
fix select unfocused on create
* do not blur if nothing is focused
2023-03-17 22:14:15 +00:00
201c669328 fix(#6455): fix Create modal tree infinite loop (#6462)
* fix(#6455): fix infinite loop

- When the Create modal is opened, it defaults the object selected in the tree to the parent of the currently selected object. However, if this object is static, it can sometimes have a weird navigationPath and an edge case where we try to infinitely walk up the path to find the parent.

- This adds a fail-safe to verify that the navigationPath by this point contains `/browse/mine` (thus is within a creatable path). If not, it sets the default selected tree item to the "My Items" folder

---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-03-17 22:03:23 +00:00
1b7fb9b952 Ensure that datum that is of type array is formatted as such (#6467)
* Ensure that datum that is of type array is formatted as such
* Ensure the requestEnded event is emitted even when historicalData is empty.
2023-03-17 14:22:51 -07:00
a3c5450205 Improvements to reduce repainting (#5876) 2023-03-17 20:07:57 +00:00
8831b75c5d Clicking a plot annotation should pause the plot (#6446)
* 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>
2023-03-17 20:12:52 +01:00
8fe0472af2 chore(deps-dev): bump mini-css-extract-plugin from 2.7.2 to 2.7.5 (#6463)
Bumps [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin) from 2.7.2 to 2.7.5.
- [Release notes](https://github.com/webpack-contrib/mini-css-extract-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/mini-css-extract-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/mini-css-extract-plugin/compare/v2.7.2...v2.7.5)

---
updated-dependencies:
- dependency-name: mini-css-extract-plugin
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-03-17 09:44:28 -07:00
6cb5c47f3a Conditional set output is wrong (#6244)
* 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>
2023-03-17 15:58:09 +00:00
eff0cc96b9 Add check for minimized notification (#6431) 2023-03-17 15:46:09 +00:00
6ac7f24c63 Event limit severity css classes (#6445)
* Duplicated event limit css classes

* Closes akhenry/openmct-yamcs#287
- New theme constant values for event styling.
- CSS def for `is-event*` classes moved to correct location.

---------

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2023-03-17 15:24:35 +00:00
39463c515f [Greedy LAD] Add new functionality for Latest Available Data views (#6432)
* adding greedyLAD logic to telemetry collections
---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-03-16 19:12:11 -07:00
25c0dab346 [Remove Action][Move Action] Update logic when working with locked, aliased domain objects (#6384)
* Allow move action for locked shift logs.
* Allow remove action for links to locked shift logs.
---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-03-16 13:53:25 -07:00
3714958627 Set table to fixed layout and ellipted overflowing cells (#6453) 2023-03-16 15:16:46 -05:00
270a3d4f49 chore(deps-dev): bump eslint from 8.35.0 to 8.36.0 (#6420)
Bumps [eslint](https://github.com/eslint/eslint) from 8.35.0 to 8.36.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.35.0...v8.36.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-16 18:43:25 +00:00
1dc137f95e [Time] use clock current value instead of end bounds for current time (#6405)
* use clock current value instead of end bounds for current time

* add unit test
2023-03-16 17:55:01 +00:00
ff3a20e446 feat: configurable Plan Views for reducing vertical scroll distance (#6415)
* refactor: convert Type API to ES6 module

- Another AMD module bites the dust 🧹

* feat: add initial configurable plan type

- Name change TBD

* feat: add `clipActivityNames` property

- refactor: initialize data to `null`

* refactor: general code cleanup

* feat(WIP): name clipping via clipPath elements

* feat: compose a Gantt Chart using a Plan

- Allows Plans to be dragged into Gantt Charts (name tentative) to create a configurable Activity View

- Clip/Unclip activity names by editing domainObject property

* feat: replace Plan if another is dragged in

- SImilar to Gauges or Scatter Plots, launch a confirmation dialog to replace the existing Plan with another, if another Plan is dragged into the chart.

* test: fix tests, add basic tests for gantt

* tes(e2e): fix plan test

* docs: add TODO

* refactor: clean up more string literals

* style: remove `rx`, increase min width

- round widths to nearest integer

* refactor: extract timeline creation logic

- extracts the logic for creating the timeline into its own component, `ActivityTimeline.vue`. This will save us a lot of re-renders, as we were manually creating elements / clearing them on each tick

* style: fix text y-pos and don't round

* fix: make activities clickable again

* docs: add copyright docs

* feat: swimlane visibility

- configure plan view from inspector

fix: update plans when file changes

- fix gantt chart display in time strips

- code cleanup

* fix: gantt chart embed in time strip

* remove viewBox for now

* fix: make `clipPath` ids more unique

* refactor: more code cleanup

* refactor: more code cleanup

* test: fix existing Plan unit tests

* refactor: rename variables

* fix: respond to code review comments

- Move config manipulation to PlanViewConfiguration.js/.vue

- Variable renames, code refactoring

* fix: unique, reproducible clipPathIds

* fix: only mutate swimlaneVisibility once on init

* fix: really make clipPathId unique this time

* refactor: use default config

* Closes #6113
- Refined CSS class naming and application.
- Set cursor to pointer for Activity elements.
- Added <title> node to Activity elements.
- Styling for selected Activities.
- Better Inspector tab name.

* fix: make Plan creatability configurable and false by default

* test: fix existing tests and add a couple new ones

* Closes #6113
- Now uses SVG <symbol> instead of rect within Activity element.
- Passes in `rowHeight` as a prop from Plan.vue.
- SWIMLANE_PADDING const added and used to create margin at top and bottom
edges of swimlanes.
- Refined styling for selected activities.
- New `$colorGanttSelectedBorder` theme constant.
- Smoke tested in Espresso and Snow themes.

* fix: default swimlaneWidth to clientWidth

* test: fix test

* feat: display selected activity name as header

* fix: remove redundant listener

* refactor: move `examplePlans.js` into `test-data/`

* docs: remove copyright header

* refactor: move `helper.js` into `helper/`

* refactor: `helper.js` -> `planningUtils.js`

* fix: update pathing

* test: add tests for gantt/plan

- add visual tests for gantt / plan

- add test for clicking a single activity and verifying its contents in the inspector

---------

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2023-03-16 10:34:31 -07:00
0b3e0e7efd do not show loaded tabs before showing current tab (#6424)
* do not show loaded tabs before showing current tab

* clean up logic to show added tabs

* fix unit tests

* remove unnecessary mocks

* handle objects current tab when last tab removed

---------

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-03-15 22:29:27 +00:00
22cc28d733 fix(#6413): Inspector View tab priority (#6414)
* 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>
2023-03-15 14:47:40 -07:00
006fa0bcc7 fix(#6391): refresh object composition before expanding a tree item (#6437)
* fix(#6391): refresh composition on treeItem open

- On treeItem open, gets the latest composition from persistence

- Composition was being refreshed, but only within the same instance (mutables)

* test: regression tests for localStorage and couch

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
2023-03-15 17:17:48 +00:00
817d8da3e4 Allow tag cancelation (#6436)
* add e2e test

* remove visual test as we can cover this with functional tests
2023-03-15 18:08:54 +01:00
8df81f0ea9 Changed tooltip text to be Shift+Alt drag to pan (#6417)
* 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>
2023-03-14 20:42:31 -07:00
1f30706d27 Differentiate aggregate telenmetry in LAD tables (#6406)
* 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
2023-03-15 01:31:15 +00:00
600890c4a6 [Missing Object] Notifications are shown as minimized (#6416)
* Add minimize to the notification model and minimize missing object notifications

* Add test

* Short circuit telemetry api functions if passed in domainObject is missing/type unknown

* Clear notifications properly after test
2023-03-14 13:36:45 -05:00
b5002e166a [LAD Table/Table Sets] Configurable hidden columns (#6386)
* 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
2023-03-11 13:01:33 +01:00
39cff51db0 Fix Notebook enter key 6354 (#6365)
* 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>
2023-03-10 11:00:01 -08:00
73734d99ea fix(#6338): LimitLines persist when series is moved to another Y Axis (#6367)
* fix: remove unnecessary emit

* refactor: fix parameter names

* fix: update limit lines on axis reset

* Revert "fix: remove unnecessary emit"

This reverts commit b9a92e5e96.

* refactor: adjust parameter names

* test: add test for limit lines visibility

* refactor: convert to one-liner

---------

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-03-08 00:19:16 +00:00
1d4cf1ff06 feat: Inspector tabs (#6137)
* 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>
2023-03-06 14:11:25 -08:00
f388d9a548 fix(#5975): Transaction-ify the CreateAction (#6306)
* fix: Transaction-ify the CreateAction
* test: add regression test and update tree locators
* test: make object search test less flaky
* test: revert locator
2023-03-06 22:01:25 +00:00
8040b275fc Update copyright date (#6395)
update copyright date
2023-03-06 21:58:18 +04:00
0dd12bce85 Freeze plot automatically when adding tags (#6377)
* 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
2023-03-02 18:42:25 +01:00
9c9e0442f1 chore(deps-dev): bump sanitize-html from 2.8.1 to 2.10.0 (#6360)
Bumps [sanitize-html](https://github.com/apostrophecms/sanitize-html) from 2.8.1 to 2.10.0.
- [Release notes](https://github.com/apostrophecms/sanitize-html/releases)
- [Changelog](https://github.com/apostrophecms/sanitize-html/blob/main/CHANGELOG.md)
- [Commits](https://github.com/apostrophecms/sanitize-html/compare/2.8.1...2.10.0)

---
updated-dependencies:
- dependency-name: sanitize-html
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-28 09:32:14 +01:00
d49f057698 [Tags] Fix jumping of tags on hover (#6358) 2023-02-27 18:02:58 -08:00
c74ad1279c chore(deps-dev): bump moment-timezone from 0.5.40 to 0.5.41 (#6375)
Bumps [moment-timezone](https://github.com/moment/moment-timezone) from 0.5.40 to 0.5.41.
- [Release notes](https://github.com/moment/moment-timezone/releases)
- [Changelog](https://github.com/moment/moment-timezone/blob/develop/changelog.md)
- [Commits](https://github.com/moment/moment-timezone/compare/0.5.40...0.5.41)

---
updated-dependencies:
- dependency-name: moment-timezone
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-27 23:44:34 +00:00
470a451956 chore(deps-dev): bump eslint from 8.34.0 to 8.35.0 (#6374)
Bumps [eslint](https://github.com/eslint/eslint) from 8.34.0 to 8.35.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.34.0...v8.35.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-02-27 15:20:37 -08:00
fa6cbb6f4d fix(#6158): StackedPlotItem reorders are reflected on the plot in real time (#6346)
* 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
2023-02-27 14:35:02 -08:00
52c00cfaef Ignore focus mouseover event when composed in layout (#6373)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-02-27 21:57:15 +00:00
96d723a424 Changed opacity from 0.5 to 0.7 (#6194) 2023-02-27 13:45:23 -08:00
fb4b80862e Supress LAD Table View from ConditionSet (#6372)
* add test and fix

* remove premature test

* PR comments
2023-02-27 21:37:42 +00:00
bb2c8cfa63 fix(#6330): Clicking Add Tag and then removing an existing tag causes the Add Tag button to disappear (#6371) 2023-02-27 13:14:43 -08:00
ceffee9f22 docs: Remove LGTM badge from README (#6072)
Update README.md

remove LGTM-Badge - Sadly, LGTM.com is no longer available
2023-02-22 23:09:31 +00:00
a08ccd80dc chore: bump version to 2.2.0-SNAPSHOT (#6341)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-02-15 21:17:21 +00:00
3509eacdec Debounce search results (#6259)
* throttle search results to one a second

* changed to use custom debounce due to async

* attempt to fix flakey test

* attempt to fix flakey test

* revert test changes

* reduce debounce time and add e2e test

* allow canceling of timeout

* removed debug

* make search result e2e tests more stable

* make drop down selector a constant

* address pr comments
2023-02-15 21:50:03 +01:00
d4496cba41 [Notebook] Links, Restricted Notebook Links, Search links (#6344)
* big simplification and enhancement to highlight component and added formatting for locked notebooks as well

* fix typo, fix logic
2023-02-15 11:05:28 -08:00
64f300d466 Emit indices of out of order telemetry collection items (#6342)
* Emit the indices of items added by the telemetry collections
* Handle added item indices for imagery
2023-02-14 15:25:23 -08:00
8de24a109a Have clicking on annotation search result use the preview action if in edit mode (#6331)
* fix preview issue

* reenabled test suite after testing 30x in parallel

* add e2e test and disable unit tests for search

* change to const
2023-02-14 11:29:18 -08:00
6d62e0e73c Decouple removal of independent time context for a view from refreshing context for other views (#6334)
* 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
2023-02-13 21:19:26 +00:00
5da1c9c0d7 Compass rose fix (#6318)
* won't mount if cameraAngleOfView undefined

* fix non-gimbling camera azimuth

correct pan to azimuth

* reorganize shared props passing

* enable hud for non-gimbling cameras

* fix unit tests

* rotate function needs to work with numbers

* avoid -0

* fix: don't delete imagery size, update related telemetry on focusedImage change

* refactor: remove unused prop

* fix: ensure thumbnail key is unique

* fix: watch `focusedImage`, not `focusedImageIndex`

- Corrects a false assumption that if the `focusedImageIndex` changes, the `focusedImage` has changed. This was causing us to mistakenly reset a lot of display props that control whether or not the Compass shows.

- For example, if an image falls out of bounds, the `focusedImageIndex` will change as the old image is removed from the array.

---------

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-02-13 19:28:00 +00:00
4fa9a9697b chore(deps-dev): bump eslint from 8.32.0 to 8.34.0 (#6325)
Bumps [eslint](https://github.com/eslint/eslint) from 8.32.0 to 8.34.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.32.0...v8.34.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-13 18:52:09 +00:00
bf48a6e306 chore(deps-dev): bump eslint-plugin-compat from 4.0.2 to 4.1.1 (#6311)
Bumps [eslint-plugin-compat](https://github.com/amilajack/eslint-plugin-compat) from 4.0.2 to 4.1.1.
- [Release notes](https://github.com/amilajack/eslint-plugin-compat/releases)
- [Changelog](https://github.com/amilajack/eslint-plugin-compat/blob/main/CHANGELOG.md)
- [Commits](https://github.com/amilajack/eslint-plugin-compat/compare/v4.0.2...v4.1.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-compat
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-13 10:34:36 -08:00
00ad452930 chore(deps-dev): bump typescript from 4.9.4 to 4.9.5 (#6233)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.9.4 to 4.9.5.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.9.4...v4.9.5)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-13 10:16:33 -08:00
8df1f6406b docs: fix docker command and formatting (#6329)
- Fixes an inconsistency in the docs with regards to the docker command for spinning up a Playwright container

- Closes an unclosed markdown code block
2023-02-13 18:09:55 +01:00
a50960d66c Remove console warn (#6320) 2023-02-10 13:47:46 -08:00
e3a69c8856 [Notebook] Fix link formatting on load, remove duplicate snapshot indicator (#6317)
* adding urlWhitelist to data so when/if it is updated it triggers link formatting

* removing dupe notebook and restricted notebook checks and just moving it to base notebook functionality install checks

* nullthing to see here
2023-02-10 12:08:58 -08:00
672cb7e621 Prevent tabbing into Notebook entries (#6315)
Closes #6312
- Set entry inputs to `tabindex="-1"` to prevent tabbing into entry inputs.

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2023-02-09 23:51:38 +00:00
7dcccee1ae [TimeAPI] Fix independent time context check (#6308)
* Fix independent time context to check first object in path (self) for upstream content instead of last object in path

* Revert changes that don't allow unregistering independent time context

---------

Co-authored-by: Shefali <simplyrender@gmail.com>
2023-02-09 15:34:17 -08:00
302dbe7359 fix(#6268): show correct yAxis options upon series drag to another yAxis (#6301)
* 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>
2023-02-09 11:58:03 -08:00
b4df01965e Fix router test flakes (#6309)
* resolve conflicts
* disable flaky tests
2023-02-09 11:34:34 -08:00
5a8f1d542e Allow tags files to define namespace to save annotations (#6274)
* allow tags files to define namespace to save annotations

* add tests

* typo in test name

* lint

* change param to objects object and remove debug
2023-02-08 14:48:03 +00:00
10decda94e When auto scale is turned off, handle user specified range correctly (#6258)
* 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>
2023-02-07 15:19:50 -08:00
5b1f8d0eac Add cancel adding tag mechanism and fix persistent options visible (#6273)
* 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
2023-02-07 17:24:37 +00:00
2f6e1b703a [Staleness] Handle Overlay Plots in Stacked Plots and removing LAD Tables from LAD Table Sets (#6281)
* add handling for composition items (ex overlay plot) in stacked plots, fix swg staleness provider isStale method response

* typo

* removing staleness listeners when ladtable is remove

* addressing pr comments for this component

* address changes requested for lad table sets

* had to update is-stale for the row since we used combined keys in lad table sets now
2023-02-06 14:08:14 -08:00
5384022a59 fix: DisplayLayout shapes can be selected and manipulated again (#6289)
fix: handle case where parentObject is undefined

- Fixes manipulation of parentless display layout objects such as shapes and lines
2023-02-06 12:49:50 -08:00
b57974b462 [ObjectAPI] Cleanup code and remove possible memory leak (#6269)
* Destroy mutable after refresh
* Check if domainObject supports mutation before getting mutable
2023-02-06 18:53:06 +00:00
3c36ba9a71 Fix keys duplication error (#6243)
* Update key value of notification-message

* Add 'Notifications can be dismissed individually' test
2023-02-06 17:59:26 +00:00
2ac463de90 test(e2e): Add tests for Recent Objects (#6270)
* test(e2e): add test for recent objects target

* test(e2e): Add RecentObjects tests

- Test for 'target button' scroll and animation

- Test for persistence on refresh

- Test for displaying objects and aliases uniquely

* test(e2e): add test for recent objects limit

* refactor: compress to a single line

* test(e2e): recents max limit test nests objects

- Do deep nesting of objects instead of flat objects

- Collapse the tree completely and then test the "target" button for the most deeply nested item

* test(e2e): update locator to not use `nth(i)`
2023-02-04 00:15:42 +00:00
be38c3e654 Fix stacked plot child selection (#6275)
* 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>
2023-02-03 23:56:50 +00:00
0f312a88bb [Notebook] Sanitize entries before save for extra protection (#6255)
* Sanitizing before save as well to be be doubly safe

---------

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-02-03 02:16:45 +00:00
422b7f3e09 Compass rose rotation fixes (#6260) 2023-02-02 17:18:41 -08:00
800062d37e fix: remove 1px padding and re-enable autoscale snapshot test (#6271)
* style: remove 1px padding from plot legend item

* test: re-enable autoscale snapshot test
2023-02-02 15:50:37 -08:00
c1e8c7915c [Staleness] Fix removed object error and clean up (#6241)
* fixing error from plots when removing swg and making methods and props private for swg staleness provider

* removing unsubscribes from destroy hooks if the item has been removed already and reverting an unneccesary change

* checking for undefined staleness response

* removed un-neccesary code
2023-02-01 14:06:54 -08:00
c1c1d87953 Fix multiple y axis issues (#6204)
* 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
2023-02-01 21:46:15 +00:00
0382d22f7f [Notebook] Entry links tests (#6190)
* 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
2023-02-01 11:55:08 -08:00
f570424357 Fix stacked plots legend (#6199)
* 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>
2023-02-01 10:14:02 -08:00
393c801426 Closes #6215 (#6222)
- Markup cleanups, CSS placement improvements for tags.
- Better approach to tag layout.
- CSS prop migrated to _constants.scss.
- Style and layout improvements for `.c-autocomplete*` input.

Co-authored-by: Scott Bell <scott@traclabs.com>
2023-02-01 11:29:51 +01:00
6d63339b23 fix: Navigating from Recent Objects breadcrumb correctly updates the URL hash (#6234)
* fix: provide hashUrl for ObjectPath breadcrumbs

* a11y: add `navigation` role and aria-label to breadcrumb

* test(e2e): add regression test for breadcrumb nav

---------

Co-authored-by: Scott Bell <scott@traclabs.com>
2023-02-01 11:11:44 +01:00
66d7c626e1 Replace structuredClone with JSON.parse (#6237) 2023-01-31 15:10:13 -08:00
2246f33023 Color fix for Recently Viewed items (#6227)
- Normalized color styles.

Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
2023-01-31 19:42:15 +00:00
871362d469 Fix plot composition (#6206)
* 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>
2023-01-31 06:01:00 +00:00
cc1bf47f5a fix(recents): fix vue warnings after target animation (#6203) 2023-01-31 01:45:08 +00:00
9c784398b3 fix(e2e): temp fix for appAction test flake (#6226) 2023-01-30 18:55:24 +00:00
21ce013df2 path change (#6224) 2023-01-29 13:49:00 -08:00
d20c2a3e3c fix: ensure MoveAction always saves transaction (#6196)
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2023-01-26 22:18:46 +00:00
8d1a2e6716 Make tree items more actionable and add AppAction for expanding the object tree (#5997)
* 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>
2023-01-26 17:25:15 +00:00
01f724959d Ensure limit lines for both the old and new y axes are redrawn when a series moves from one y axis to another (#6181)
Optimize initialization of Plot configuration
Ensure the the y axis form correctly saves any changes to the configuration
Fix excluded limits test
2023-01-26 17:11:13 +00:00
3ae6290ec3 Visual tweaks to Recently Viewed items (#6183)
- Reduced size of icon.
- Tightened spacing.
2023-01-25 14:15:50 -08:00
ba5ed27e74 fix: skip if no yAxisId exists on persistedConfig (#6188) 2023-01-25 19:18:26 +00:00
ca737d8afa fix(elementItemGroup): 🚫👶📜📊 (#6171)
- translation: remove the baby scroll bars from element item groups
2023-01-24 23:48:49 +00:00
33a275e8bc fix(multiYAxis): get yRange for yAxis of the series (#6170)
* fix: get yRange for the yAxis of the series

* refactor: use collection methods, define as vars
2023-01-24 14:22:48 -08:00
60e808689c Mct6157 creating annotations for plots on multiple yaxes (#6161)
* First pass

* Get bounding box min and max values based on the y axis that a series belongs to.
Handle removal of telemetry from an overlay plot
Handle addition of telemetry after annotations have been saved to an overlay plot

* Fix showing the rectangle for a given target's bounding box.

* remove invalid comment

Co-authored-by: Scott Bell <scott@traclabs.com>
2023-01-24 11:00:45 +00:00
8847c862fa [Staleness] API and Component Functionality (#6108)
* initial telemetry api updates for staleness support

* modifying staleness to a subsription style

* fixing variable name

* debuggin

* put the subscribe in the wrong place

* stale class for object views

* temp cyan border for testing

* added staleness to swg, working on stacked plot staleness

* WIP: stacked plot staleness

* reverting, going a different route

* staleness on stacked plots

* plot legend staleness

* remove debug code

* staleness for alphanumerics

* lad table and table set staleness

* overlay plot staleness

* remove debug code

* hardened lad staleness functionality fixed plots without composition bug

* adding staleness to gauges

* renaming telemetry age check functionality so it does not conflict with new staleness functionality

* couple one-off fixes here and there, and WIP for condition sets, moving to telemetry tables to facilitate styling of completed components

* small fix on lad tables, added staleness functionality to tables

* finishing up condition sets

* some cleaning up

* adding border to condition sets when an item is stale

* fixing dub sub

* addressing PR comment, moving repeated code to a function

* robustified the SWG stalenes provider, little fixes here and there as far as cleaning up listeners and... whatnot

* removing debug code

* typo fixes

* cleanin up debug code

* created a simple stalenes mixin for more basic usage in components

* more robustification, if a new staleness subscription happens, will now send the current staleness value if we have it, beefed up example stalenes swg provider

* beefed up staleness mixin a bit to give it more use

* copyright

* cleanin up ladtable code

* cleanin up ladtable code

* cleaning up lad table sets

* some minor updates

* Closes #6109
- New staleness glyph and font CSS added.

* Closes #6109
- Normalized staleness colors as theme constants.
- New mixins for staleness application to view elements.
- Applied staleness styling to all relevant view elements.
- TODO: smoke-test in Show theme.

* adding staleness utils helper, mixin and isStale functionalirty for telemtry api

* Closes #6109
- Refined style for Snow theme.

* need to have one domainObject per stalenes utility

* making sure we handle domains correctly while dealing with staleness

* couple fixes

* moving abort controller logic to a spot where it makes more sense

* added some more info for the StalenesProvider interface docs

* returning undefinded for ifStale requests with no provider

* debuggin

* debuggin

* missed "isStale" call in condtioncollections

* removing debug code and using mixin unsubscribe in gauge

* fixing tests

* more targeted tree item click

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Scott Bell <scott@traclabs.com>
2023-01-23 10:27:04 -08:00
1b71a3bf33 Multiple Y-Axes for Overlay Plots (#6153)
Support multiple y-axes in overlay plots

Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Rukmini Bose <rukmini.bose15@gmail.com>
2023-01-23 15:34:26 +00:00
9980aab18f 5834 stacked plot removing objects from a stacked plot will not remove them from the legend (#6022)
* Add listeners to remove stacked plot series and make keys unique

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-01-22 10:38:05 -08:00
5e530aa625 feat: Support thumbnails in ImageryView and ImageryTimeView (#6132)
* fix: get image thumbnail formatter

* refactor: ImageryView cleanup

* docs: add comment

* feat: Support thumbnails in ImageryView

- Prefer an image's thumbnail URL if its available

* feat: Support thumbnails in ImageryTimeView

* refactor: rename variable

* test(WIP): add thumbnail unit test, not working yet

* test: temp disable test

* feat: imagery thumbnail urls for example imagery

* test: add unit test for imagery thumbnails

* test(e2e): check for thumbnail urls

- Update imagery view tests to check for use of thumbnail urls
2023-01-21 11:25:35 -08:00
986c596d90 Imagery compass rose enhancements (#6140)
* Fixes 6139
- Markup changes and improvements in CompassRose.vue.
- Improved sun and edge gradients.
- Related CSS styles updated.
- Changed compass key color from cyan to white to avoid conflict with staleness color.

* change var def to avoid collision

* compass rose should size itself based on image

* allow heading or camera pan for fixed cameras

* suppress HUD if no camera pan

* allow image to display compass rose for other cams

* update example imagery to accept transformations

* remove comments

Co-authored-by: David Tsay <david.e.tsay@nasa.gov>
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
2023-01-20 23:21:57 -08:00
4d84b16d8b [Notebook] Convert full links in entries, into clickable links (#6090)
* Automatically promote urls to hyperlinks if matches whitelist
* Disable v-html lint warning for notebook entries
* Check whether domain endswith given partial

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-01-20 18:27:19 -08:00
20c7b23a4f [Notebook] Embed enhancements (#5809)
* added new menu and actions to notebook embed as well as new information on embed

* fix method name case

* Add action messages. Fix margins

* Added bg icons. Change sizing of icons and thumbnails. Add scrolling to overflow embeds

* Rename embed wrapper

* adding dynamce class for scrolling the embeds wrapper based on need

* Add styling to embed scrolling container

* Change tag margin for better spacing between rows. Class rename. Minor styling changes to embed container. Change supermenu icon size

* Change action menu size

* Fix inner shadows. Revert tag code change. Create new theme constants. Make embed container constant

* Fix scroll and snow theme colors

* Fix overflow bug in entries and embed container. Refactor code so that containers optimize space of each entry

* Fix lint error

* Fix so embed container goes full width

* Fix input container to extend full width. Fix margin between notebook elements

* Addressed PR review comments.

* Address PR changes. Fix text overflow for long words.

* address pr review comments

* fixing tests

* first pass

* i've wasted too much time on this

Co-authored-by: Rukmini Bose <rukmini.bose15@gmail.com>
Co-authored-by: rukmini-bose <48999852+rukmini-bose@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2023-01-21 00:53:37 +00:00
d1c7d133fc 5853 plot annotations prototype (#6000)
* Implement new search and tagging for notebooks
* Add inspector and plot annotations
* Clean up inspector for plots and other views
* Bump webpack defaults for windows
* Notebook annotations are shown in inspector now
* Only allow annotations if plot is paused or in fixed time. also do not mutate if immutable
* Key off local events instead of remote (for now)
2023-01-20 14:34:12 -08:00
edbbebe329 [CLA on File] style: added padding to object & icon button labels (#6036) 2023-01-20 11:07:56 -08:00
f98a2cdd6b feat: Recent Objects (#6103)
* clicking recent objects selects that object
* clicking target navigates to but does not select that object
* max 20 recent objects
2023-01-20 10:27:09 -08:00
22621aaaf8 6098 operator status indicator v11 improvements (#6112)
* Added clear poll button to clear all statuses
* Clear current poll question
* Added table for operator status

Co-authored-by: Michael Rogers <contact@mhrogers.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2023-01-19 18:56:46 -08:00
e0ca6200bb Handle pausing of imagery from viewLargeAction - 3647 (#5901)
* get imagery view context and externally set pause and thumbnail index

* Test pause/play state in realtime mode

* Created an onPreviewMode change handler to be invoked from view large

* Add optional chaining to method invocation

* Change onItemClicked to invoke to resolve repeat large view action error
2023-01-19 18:45:40 -08:00
70074c52c8 Fix Notifications Overlay that opens automatically (#6133)
* Show NotificationIndicator also if NotificationsList is shown

* Create Notification Overlay Regression Test

* Move notification regression test under notification.e2e.spec.js

* Update selector of Notification Banner

* Rename test to "Notification Overlay"
2023-01-18 22:20:47 +00:00
d5adaf6e8c Bump eslint-plugin-playwright from 0.11.2 to 0.12.0 (#6125)
Bumps [eslint-plugin-playwright](https://github.com/playwright-community/eslint-plugin-playwright) from 0.11.2 to 0.12.0.
- [Release notes](https://github.com/playwright-community/eslint-plugin-playwright/releases)
- [Commits](https://github.com/playwright-community/eslint-plugin-playwright/compare/v0.11.2...v0.12.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-playwright
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-17 22:00:58 +00:00
8125632728 Allow form file input to accept other MIME types (#6089)
* allow non json raw files upload

* add e2e test

* compress image
2023-01-17 14:25:18 -06:00
14c9dd0a32 Bump plotly.js-gl2d-dist from 2.14.0 to 2.17.1 (#6104)
Bumps [plotly.js-gl2d-dist](https://github.com/plotly/plotly.js) from 2.14.0 to 2.17.1.
- [Release notes](https://github.com/plotly/plotly.js/releases)
- [Changelog](https://github.com/plotly/plotly.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.js/compare/v2.14.0...v2.17.1)

---
updated-dependencies:
- dependency-name: plotly.js-gl2d-dist
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2023-01-17 10:32:14 -08:00
9ae58f8441 tooling(webpack): base paths of rootfolder (#6123) 2023-01-17 08:05:34 -08:00
4889284335 Bump eslint from 8.31.0 to 8.32.0 (#6124)
Bumps [eslint](https://github.com/eslint/eslint) from 8.31.0 to 8.32.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.31.0...v8.32.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-16 15:25:19 -08:00
c2183d4de2 Bump @percy/cli from 1.16.0 to 1.17.0 (#6110)
Bumps [@percy/cli](https://github.com/percy/cli/tree/HEAD/packages/cli) from 1.16.0 to 1.17.0.
- [Release notes](https://github.com/percy/cli/releases)
- [Commits](https://github.com/percy/cli/commits/v1.17.0/packages/cli)

---
updated-dependencies:
- dependency-name: "@percy/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-13 22:39:46 -08:00
902d80c214 [CLA Approved] Remove notification independently (#6079)
* Add closeOverlay and notifications-count attributes to notification-message

* Add "Dismiss notification" button to NotificationMessage

* Add aria-labels to Alert Banner

* Add aria-modal and role dialog to OverlayComponent

* Add ARIA roles to NotificationMessage and NotificationsList

* Add ARIA role alert to NotificationBanner

* Create Notification E2E Test for dismissing the 'Save successful' dialog

* refactor: fix up types for NotificationAPI

* test: Add `createNotification` appAction

* test: add basic test for `createNotification`

* test: add stub for notification functional test

* Create clock using createDomainObjectWithDefaults

* Replace text-selection with button-selection

* Uninstall @types/eventemitter3

* Revert "Uninstall @types/eventemitter3"

This reverts commit 37e4df9a75.

* fix: remove duplicate dependency

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2023-01-14 02:12:08 +00:00
22ce817443 Bump eslint-plugin-vue from 9.8.0 to 9.9.0 (#6117)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.8.0 to 9.9.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.8.0...v9.9.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-13 16:36:47 -08:00
cdb202d8ba tooling(webpack): move webpack to its own folder (#6076) 2023-01-12 11:46:35 -08:00
905373f294 Bump sass-loader from 13.0.2 to 13.2.0 (#5968)
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 13.0.2 to 13.2.0.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v13.0.2...v13.2.0)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-09 16:57:54 -08:00
60c07ab506 Bump sass from 1.56.1 to 1.57.1 (#6068)
Bumps [sass](https://github.com/sass/dart-sass) from 1.56.1 to 1.57.1.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.56.1...1.57.1)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rukmini Bose (Ruki) <48999852+rukmini-bose@users.noreply.github.com>
2023-01-09 16:45:50 -08:00
7336abc111 Bump css-loader from 6.7.1 to 6.7.3 (#6056)
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 6.7.1 to 6.7.3.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v6.7.1...v6.7.3)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-09 16:34:24 -08:00
8fe9da89a3 Bump eslint from 8.30.0 to 8.31.0 (#6091)
Bumps [eslint](https://github.com/eslint/eslint) from 8.30.0 to 8.31.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.30.0...v8.31.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-06 08:56:14 -08:00
e6bdaa957a Bump plotly.js-basic-dist from 2.14.0 to 2.17.0 (#6078)
Bumps [plotly.js-basic-dist](https://github.com/plotly/plotly.js) from 2.14.0 to 2.17.0.
- [Release notes](https://github.com/plotly/plotly.js/releases)
- [Changelog](https://github.com/plotly/plotly.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.js/compare/v2.14.0...v2.17.0)

---
updated-dependencies:
- dependency-name: plotly.js-basic-dist
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-03 16:27:54 -08:00
93b5519c4b Bump karma-spec-reporter from 0.0.34 to 0.0.36 (#6058)
Bumps [karma-spec-reporter](https://github.com/tmcgee123/karma-spec-reporter) from 0.0.34 to 0.0.36.
- [Release notes](https://github.com/tmcgee123/karma-spec-reporter/releases)
- [Commits](https://github.com/tmcgee123/karma-spec-reporter/compare/v0.0.34...v0.0.36)

---
updated-dependencies:
- dependency-name: karma-spec-reporter
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-03 13:32:19 -08:00
04ef4b369c chore: bump version to 2.1.6-SNAPSHOT (#6092) 2023-01-03 09:50:28 -08:00
5424a62db5 [Notebook] Handle conflicts properly (#6067)
* making a revert on failed save more clear

* only notify conflicts for non sync items in object api, spruce up notebook with better transaction tracking and observing and unobserving during transactions, structuredClone backup in monkeypatch

* WIP

* WIP debuggin

* fresh start

* dont observe in transaction objects, small changes to notebook vue to indicate saving/prevent spamming, added forceRemote flag to objects.get

* updating readability of code as well as fix issue of stuck transaction for same value entry edits

* once entry is created, click out to blur

* quick revert
;

* click outside of entry to blur and commit

* switched to enter... as suggested :)

* removing unused variable

* initializing transaction to null as we are using that now for no transaction

* fix: ensure EventSource is closed so it recovers

- Make sure to close the CouchDB EventSource as well, so that it can recover in the case where two tabs or windows are on Open MCT and one refreshes. The check on line 81 was preventing recovery since the EventSource was not closed properly.

* enhance, enhance, enhance readability

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-12-29 14:11:08 -08:00
9ed9e62202 Use the current clock's timestamp to show the now line in the timestrip (#6082) 2022-12-28 22:18:47 +00:00
327fc826c1 fix(imagery): Unblock 'latest' strategy requests for Related Telemetry in realtime mode (#6080)
* fix: use ephemeral timeContext for thumbnail metadata requests

* fix(TEMP): use `eval-source-map`

- **!!! REVERT THIS CHANGE BEFORE MERGE !!!**

* fix: only mutate if object supports mutation

* fix: pass identifier instead of whole domainObject

* fix: add start and end bounds to request

* Revert "fix(TEMP): use `eval-source-map`"

This reverts commit 7972d8c33a.

* docs: add comments
2022-12-28 19:12:00 +00:00
a9e3eca35c chore: bump Playwright to v1.29 (#6004)
* chore: bump Playwright to 1.28.0

* chore: bump playwright to v1.29.0

* fix: remove `|| true` shim for codecov

* Revert "fix: remove `|| true` shim for codecov"

This reverts commit ca3766fb5a.

* docs: add instructions for upgrading Playwright
2022-12-27 14:46:19 -08:00
cbecd79f71 Do not register time system listener until we have resolve remote clock object (#6063) 2022-12-20 14:01:47 -08:00
3deb2e3dc2 Bump moment-timezone from 0.5.38 to 0.5.40 (#6050)
Bumps [moment-timezone](https://github.com/moment/moment-timezone) from 0.5.38 to 0.5.40.
- [Release notes](https://github.com/moment/moment-timezone/releases)
- [Changelog](https://github.com/moment/moment-timezone/blob/develop/changelog.md)
- [Commits](https://github.com/moment/moment-timezone/compare/0.5.38...0.5.40)

---
updated-dependencies:
- dependency-name: moment-timezone
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2022-12-20 13:50:57 -08:00
d6e80447ab Mutables for the Tree 🎄 + clean up TreeItem observers and mutables properly (#6032)
* fix: refresh object after conflict error

* fix: recover from error thrown during create

- Ensure that the "Saving" modal dialog is closed

- Notify user of the error, and also print to console to catch in e2e

* fix: default selector tree item to 'mine' folder

- If create fails due to a conflict or otherwise, and the user immediately tries to "Create" again, default the selector tree's selected item to the "mine" folder (which we know exists).

* fix: don't listen to composition if Selector Tree

* refactor: remove dead code

* fix: use MutableDomainObjects in the tree

- Only use mutables and observers if NOT a SelectorTree

- Properly clean up observers and mutables when a parent item is removed from the tree

* test: verify conflicts don't break object creation

* test: verify dialog closes and object is created

* refactor(e2e): update test

- Error notification on 'My Items' folder missing was removed, so don't check for it

* test: increase timeout

* refactor(e2e): use Promise.any()

* refactor(e2e): use Promise instead of polling

* test: add 2p annotation

* test: use `waitForRequest` instead of promise

- tidy up test, add comments describing our pattern

* docs(e2e): add best practices for network tests

* refactor(e2e): avoid using Promise.any

* fix: de-reactify observer and mutable maps

* fix: destroy by path on treeItem close

* fix: don't refresh for synchronized objects

* docs: fix a typo 🔥

* fix: remove existing mutable before adding

* fix: fail fast if these aren't functions

- Remove check for typeof 'function' to not hide any potential coding errors

* fix: walk up navigationPath if item not found

* chore: fix lint errors

* fix: parse conflicted object name correctly

* fix: re-throw conflict error

* fix: Cancel edit mode on conflict
2022-12-20 13:27:51 -08:00
1a4bd0fb55 Bump eslint from 8.29.0 to 8.30.0 (#6066)
Bumps [eslint](https://github.com/eslint/eslint) from 8.29.0 to 8.30.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.29.0...v8.30.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-20 00:42:32 +00:00
80f89c7609 fix: no deleted objects in locator search (#6038)
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2022-12-19 15:21:24 -08:00
b82649772f Bump sinon from 14.0.1 to 15.0.1 (#6057)
Bumps [sinon](https://github.com/sinonjs/sinon) from 14.0.1 to 15.0.1.
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md)
- [Commits](https://github.com/sinonjs/sinon/compare/v14.0.1...v15.0.1)

---
updated-dependencies:
- dependency-name: sinon
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-12-19 11:21:27 -08:00
7f2ed27106 [CLA Approved] Add rows refractor (#5284)
* addRows Refractor

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-12-19 18:13:53 +00:00
57e02db6b5 Prevent scrolling the window area on new image thumb telemetry - 5867 (#5961)
* Setup a scroll handler to avoid using scrollIntoView when in a layout

* Implement a separate scroll to action when in layouts

* Simplified scroll reset event and logic

* Adjust test to capture new scroll handler

* Remove done invocation after converting to async fn

* Prevent default for arrow keys to avoid scrolling layoyut

* await scrollToFocused

* Logical or to nullish coalescing

* Removed set in favor of using isNavigatedObject api

* Apply animation style after image history has length

* Lint fixes

Co-authored-by: Scott Bell <scott@traclabs.com>
2022-12-16 10:06:16 +01:00
d54335d21c Bump version to 2.1.5-SNAPSHOT (#6052) 2022-12-12 15:57:03 -08:00
e0ed0bb6e2 [Plots] Ignore Infinity when autoscaling y-axis (#5907)
* Change approach to filter positive and negative infinity values when updating stats

* Change filter when there are no plot stats and a positive/negative infinity value occurs

* Add check for negative infinity

* Name the unplottable values array and move it to the constructor

* Add option to render infinity values

* Add e2e test to render plot with infinity values

* Add accessibility labels to help locate items in tests
Refactor tests

* refactor(e2e): stabilize plotRendering test

Co-authored-by: Shefali <simplyrender@gmail.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-12-12 11:51:57 -08:00
ed3fd8f965 Bump babel-loader from 9.0.0 to 9.1.0 (#5947)
Bumps [babel-loader](https://github.com/babel/babel-loader) from 9.0.0 to 9.1.0.
- [Release notes](https://github.com/babel/babel-loader/releases)
- [Changelog](https://github.com/babel/babel-loader/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel-loader/compare/v9.0.0...v9.1.0)

---
updated-dependencies:
- dependency-name: babel-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-08 22:45:25 +00:00
e6d59c61d1 Bump typescript from 4.9.3 to 4.9.4 (#6046)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.9.3 to 4.9.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.9.3...v4.9.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-08 14:33:49 -08:00
b74b27c464 docs: fixed punctuation & grammar in summary section (#6037) 2022-12-06 23:59:54 +00:00
d35e161701 Bump @types/jasmine from 4.3.0 to 4.3.1 (#6040)
Bumps [@types/jasmine](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jasmine) from 4.3.0 to 4.3.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jasmine)

---
updated-dependencies:
- dependency-name: "@types/jasmine"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-06 18:08:24 +00:00
653cb62f9c Bump mini-css-extract-plugin from 2.6.1 to 2.7.2 (#6043)
Bumps [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin) from 2.6.1 to 2.7.2.
- [Release notes](https://github.com/webpack-contrib/mini-css-extract-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/mini-css-extract-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/mini-css-extract-plugin/compare/v2.6.1...v2.7.2)

---
updated-dependencies:
- dependency-name: mini-css-extract-plugin
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-06 11:00:34 +01:00
19b3232fa0 Bump eslint from 8.28.0 to 8.29.0 (#6041)
Bumps [eslint](https://github.com/eslint/eslint) from 8.28.0 to 8.29.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.28.0...v8.29.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-05 16:56:58 -08:00
19892aab53 [MMGIS] Modify Independent time contexts, open in new tab action, and expose overlay plots to support MMGIS pivoting (#6025)
* Expose overlay plot so that it can be imported by an external plugin

* If the current object has an independentContext, ignore any upstream independentContext

* Accept any custom url param in open in new tab action
2022-12-02 17:03:43 -06:00
a168ce25cf Bump eslint-plugin-vue from 9.7.0 to 9.8.0 (#6012)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.7.0 to 9.8.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.7.0...v9.8.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-02 21:44:49 +00:00
189c58f952 Remove Go To Original when in edit mode (#5966)
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
2022-12-02 21:16:36 +00:00
0dfc028e1b Bump @types/lodash from 4.14.190 to 4.14.191 (#6027)
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.14.190 to 4.14.191.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-01 13:32:36 -08:00
77e93f1aee Bump eslint from 8.27.0 to 8.28.0 (#6002)
Bumps [eslint](https://github.com/eslint/eslint) from 8.27.0 to 8.28.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.27.0...v8.28.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-11-30 22:29:47 +00:00
394fbbe61b Bump @types/lodash from 4.14.189 to 4.14.190 (#6010)
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.14.189 to 4.14.190.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-30 18:18:36 +00:00
40afb04f0c Merge release/2.1.3 into master (#6015)
* Bump version to `2.1.3` (#5973)
* Preserve Gauge configuration changes on create/edit (#5986)
* fix(#5985): deep merge on create/edit properties
- Perform a deep merge of old and new properties on Create/Edit properties actions
* refactor(e2e): improve selector in appActions
* test(e2e): add tests for gauges
- test creating a non-default gauge (checks only for console errors)
- test updating a gauge (checks only for console errors)
* fix(e2e): use pluginFixtures for gauge tests
* fix(e2e): prevent fail if testNotes is undefined
* Make the tree key unique (#5989)

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-11-29 17:51:43 -08:00
be73b0158a Remove link to retired live demo (#6008)
* Remove link to retired live demo
Closes https://github.com/nasa/openmct/issues/6006
Remove link to retired live demo
* Added screenshot
2022-11-28 17:06:55 +00:00
625205f24b do not use dev source maps in prod (#6007) 2022-11-28 12:00:18 -05:00
a706a8b73e Bump @percy/cli from 1.13.0 to 1.16.0 (#6011) 2022-11-24 13:02:02 -08:00
1ddf5e5137 feat(imagery): show viewable area when zoomed (#5877)
* feat: viewable area

* chore: add test

* fix: get image ref when real-time

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-11-21 13:06:12 -08:00
a79646a915 Bump typescript from 4.8.4 to 4.9.3 (#5988)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.8.4 to 4.9.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/commits)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-19 00:04:16 +00:00
d5266e7ac7 Bump webpack-cli from 4.10.0 to 5.0.0 (#5996)
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 4.10.0 to 5.0.0.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/webpack-cli@4.10.0...webpack-cli@5.0.0)

---
updated-dependencies:
- dependency-name: webpack-cli
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-18 19:25:36 +00:00
05de7ee2e0 Bump @braintree/sanitize-url from 6.0.0 to 6.0.2 (#5970)
Bumps [@braintree/sanitize-url](https://github.com/braintree/sanitize-url) from 6.0.0 to 6.0.2.
- [Release notes](https://github.com/braintree/sanitize-url/releases)
- [Changelog](https://github.com/braintree/sanitize-url/blob/main/CHANGELOG.md)
- [Commits](https://github.com/braintree/sanitize-url/compare/v6.0.0...v6.0.2)

---
updated-dependencies:
- dependency-name: "@braintree/sanitize-url"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-17 09:48:23 -08:00
dad88112c4 Bump @types/lodash from 4.14.188 to 4.14.189 (#5987) 2022-11-15 13:42:48 -08:00
202d6d8c5d Bump version to 2.1.4-SNAPSHOT (#5974) 2022-11-14 10:48:36 -08:00
e70bcc414c revert persisted time to last actual persisted time on save error (#5971) 2022-11-10 15:25:35 -08:00
7bb4a136d7 Use Composition API to add/remove from composition (#5941)
* Use composition API in RemoveAction

* refactor: ScatterPlotView to use composition API

* fix: initialize transaction to null and reset

* fix: remove seriesKey and correct found condition

* refactor: Gauge to use composition API

* refactor: DisplayLayout to use composition API

* test: RemoveAction starts and ends transactions

* test: add ScatterPlot add/remove telemetry test

* test: fix e2e test and add annotation

* test: remove unnecessary awaits

* test: make some displayLayout tests stable

* test{displayLayout}: navigate to objects via url

* test(gauge): add test for add/remove telemetry

* fix(#3117): init layoutItems within transaction

* refactor: add clearSelection() method

* test: remove unstable tag

* fix(#3117): init frames and use transactions

- fixes #3117 for flexible layouts by syncing frames and composition

- also uses transactions now to avoid race condition

* test(flexibleLayout): removing items via context menu

- add test for removing items via context menu while focusing the layout

- add test for removing items via context menu while not focusing the layout

* fix(e2e): use pluginFixtures

* refactor(e2e): improve selectors

* refactor: use async/await for saving transactions

* docs(e2e): fix comments

* test: use soft expects

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2022-11-10 20:06:13 +00:00
8af3b4309f Add 'View type' label to Display Layout toolbar (#5909)
Addresses #5480

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-11-10 11:38:05 -08:00
bed3d83fd7 Bump moment-timezone from 0.5.37 to 0.5.38 (#5881)
Bumps [moment-timezone](https://github.com/moment/moment-timezone) from 0.5.37 to 0.5.38.
- [Release notes](https://github.com/moment/moment-timezone/releases)
- [Changelog](https://github.com/moment/moment-timezone/blob/develop/changelog.md)
- [Commits](https://github.com/moment/moment-timezone/compare/0.5.37...0.5.38)

---
updated-dependencies:
- dependency-name: moment-timezone
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-10 17:06:52 +00:00
efda42cf6d Make package public - master (#5967)
* Update package.json

* Update npm-prerelease.yml
2022-11-10 08:45:55 -08:00
e8ee5b3fc9 fix test flake: calculate persisted time last (#5923)
* fix: calculate persisted time last
2022-11-10 08:40:09 -08:00
393cb9767f Bump sass from 1.55.0 to 1.56.1 (#5963) 2022-11-10 16:26:19 +00:00
8b5daad65c feat: sort interceptors by priority, ensure myItemsInterceptor runs first (#5965)
* feat: sort interceptors by priority

* fix(#5914): high priority for MyItemsInterceptor

* fix: create myItems if object is falsy

* test(e2e): update snapshots

Co-authored-by: Scott Bell <scott@traclabs.com>
2022-11-10 08:00:29 -08:00
fabfecdb3e Check for null plot wrapper on plot resize (#5960)
* check for null plot wrapper first

* make code clearer with short circuit up front
2022-11-08 16:11:46 -08:00
a2d8b13204 Bump eslint from 8.26.0 to 8.27.0 (#5955)
Bumps [eslint](https://github.com/eslint/eslint) from 8.26.0 to 8.27.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.26.0...v8.27.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-08 18:14:08 +00:00
4b14d2d6d2 [e2e][couchdb] Add test coverage for mct5616 (#5913)
* [e2e][couchdb] Add test for mct5616

- Add test to verify that modifying object properties generates a single persistence operation with CouchDB

* [e2e] Poll for 1 sec to allow time for request

* [e2e] ignore expected console error

* add comments

* add `aria-label`s to form select fields

* add `aria-label` for clock format select

* [e2e] Improve selector

* make property name less ambiguous

* refactor(e2e): use default object name
2022-11-07 16:04:02 -08:00
d545124942 test(e2e): unique names for created objects by default (#5945)
* feat(e2e): default unique names for new objects

* refactor(e2e): reference generated object names

- Fixes the tests that were locating "Unnamed <object_type>" to use the generated unique names

* feat(e2e): add testInfo into domainObject notes

- adds info about the currently running test and its project to notes

* fix(e2e): fix selector for notes section

* feat: ARIA: menu role for menus and SuperMenus

- Implements the [ARIA: menu role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/roles/menu_role) for Menus and SuperMenus,

* refactor(e2e): use role selectors for menu items

* refactor(e2e): better selectors for "OK" button

* refactor(e2e): better selectors for menu items

* refactor(e2e): improve selector

* refactor(e2e): update test to use appActions

* refactor(e2e): update test to use object name

* refactor(e2e): improve selectors for menu items

* test(e2e): fix search test

* refactor(e2e): update more plain 'text=' selectors

* fix: resolve codeQL error

- remove superfluous argument

* refactor(e2e): move testNotes to `pluginFixtures` and update imports

* refactor(e2e): remove unused fixture from test

* refactor: add dynamic id to form textareas

* refactor(e2e): improve notes textarea selector

* refactor(e2e): remove unused fixture
2022-11-07 23:50:33 +00:00
6abdbfdff0 skip one mo (#5958) 2022-11-07 23:39:01 +00:00
500e655476 Bump jasmine-core from 4.4.0 to 4.5.0 (#5934) 2022-11-04 17:14:07 +00:00
5e1f026db2 Bump @types/lodash from 4.14.186 to 4.14.188 (#5950) 2022-11-04 10:07:49 -07:00
d9efae98c8 Bump @percy/cli from 1.11.0 to 1.13.0 (#5942) 2022-11-04 16:50:42 +00:00
091f6406a8 Merge release/2.1.2 into master (#5946)
* Bump version to `2.1.2`

* Ensure properties stay in sync and are committed only once (#5717)

* Ensure form properties stay in sync
* Separate out overlay based forms and custom forms
* Use a transaction to save properties
* Fix GaugeController to not depend on event emitted from FormsAPI
* refactor showForms to call showCustomForm

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>

* Fix persistence timestamp (#5916)

* Calculate persisted timestamp last
* Added regression tests
* Correct transaction handling code
* Code cleanup

* Fix typo for publish (#5936)

* Add e2e tests to npm package (#5930)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-11-03 13:49:03 -07:00
42a0e503cc Bump eslint-plugin-vue from 9.6.0 to 9.7.0 (#5932)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.6.0 to 9.7.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.6.0...v9.7.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-01 16:41:03 +00:00
4697352f60 Fix now marker for time system axis in timestrips and plans (#5911)
* Ensure the now marker spans the height of the plan.
* Set height for timestrip for the now marker
* Fix linting issues
* Fix failing test
2022-10-31 23:56:52 +00:00
015c764ab3 Update dependabot.yml (#5935) 2022-10-31 21:58:12 +00:00
8fe465d9fc Bump eslint from 8.25.0 to 8.26.0 (#5908)
Bumps [eslint](https://github.com/eslint/eslint) from 8.25.0 to 8.26.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.25.0...v8.26.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-28 21:57:31 +00:00
9c1368885a Bump babel-loader from 8.2.5 to 9.0.0 (#5920) 2022-10-27 14:51:01 -07:00
391c0b2e7c Bump version to 2.1.3-SNAPSHOT (#5904) 2022-10-27 17:29:41 +00:00
2ae061dbcd Bump sinon from 14.0.0 to 14.0.1 (#5831)
Bumps [sinon](https://github.com/sinonjs/sinon) from 14.0.0 to 14.0.1.
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md)
- [Commits](https://github.com/sinonjs/sinon/compare/v14.0.0...v14.0.1)
Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-10-25 11:42:08 -07:00
41fc502564 Generate type declarations for CompositionAPI and publish with OpenMCT (#5838)
* add typescript

* update tsconfig

* convert to es6 class

* Convert more stuff to es6 class

* skip checking libs, test files

* more es6 classes!

* Fix some jsdocs

* Rename file

* Improve jsdoc types

* Rename references as well

* more types

* types for CompositionAPI

* Types for CompositionCollection

* Types for CompositionProvider

* type

* types for api

* nvm

* cleanup MCT

* Fix API type definition

* Generate types before publish

* fix openmct 👀

* rename PublicAPI -> OpenMCT and document methods

* try and fix visual test ?

* Make private methods private

* more private methods!!

* import all es6 api's so we get more types for free

* convert Selection to es6 class

* remove redundant docs

* fix Branding types

* fix openmct.start() types

* Remove useless `@memberof`

* Add parameter name

* [docs] Add a section on Types

* markdownlint

* word

* Add section on limitations / contibuting types

* Let these methods be private

* make private members private, fix a type

* fix another type

* Make method private

* Update docs for `skipMutate` and related methods

* Rename file and fix references

* `DefaultCompositionProvider` extends `CompositionProvider`

* Make private members private

* Type for `AbortSignal`

* `domainObject` must be accessible for perf tests

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-10-21 17:29:52 -07:00
b4554d2fc1 User attribution (#5827)
* initial changes adding modified and created by fields to domain objects and updating properties inspector
* adding created date to object creation
* added a test for created timestamp
* updating remove action to hold the transaction and disregard edit state when handling transactions, also updated object api to return transaction when starting and ignore edit state when determining if transaction is active
* updating docs for object api "startTransaction"
* updating incorrect use of edit and transaction in our appActions for testing

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Shefali <simplyrender@gmail.com>
2022-10-21 17:05:59 -07:00
feba5f6d3b use full identifier instead of key (#5891) 2022-10-21 16:45:52 -07:00
4357d35f4a Centre and wrap Condition Widget label (#5886)
* [ConditionWidget] Center label text

Addresses #5799

* [ConditionWidget] Wrap label text

Addresses #5799

* [ConditionWidget] Add padding to label

Addresses #5799

* [ConditionWidget] Use interiorMargin value for padding

Addresses #5799
2022-10-21 16:35:59 -07:00
5041f80e5b Update version to 2.1.2-SNAPSHOT (#5897) 2022-10-21 12:16:46 -07:00
9e23f79bc8 Add time context to telemetry requests (#5887)
* add time context to telemetry requests

* change to empty array

* refactor telemetry api to use time context

* removed unused function

* add tests

* add test, rename function

* make function public
2022-10-21 20:25:24 +02:00
bd1e869f6a fix timing issue (#5896) 2022-10-21 20:19:41 +02:00
e4a36532e7 Bump @types/lodash from 4.14.178 to 4.14.186 (#5892) 2022-10-19 20:40:30 +00:00
2bc2316613 Bump @types/jasmine from 4.0.1 to 4.3.0 (#5893) 2022-10-19 13:34:44 -07:00
2fa36b2176 Delete lighthouse.yml (#5885) 2022-10-18 16:10:09 -07:00
efa38d779e Remove two types from package and pin others (#5883)
* Update package.json

* Update package.json

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-10-18 21:17:30 +00:00
951cc6ec0d Bump eslint-plugin-vue from 9.3.0 to 9.6.0 (#5837)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.3.0 to 9.6.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.3.0...v9.6.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-18 16:31:01 +00:00
ef4b8a9934 Bump @percy/cli from 1.10.3 to 1.11.0 (#5846) 2022-10-17 17:52:11 -07:00
c14b48917e Plan documentation (#5871)
* Plan documentation
2022-10-13 20:04:51 -07:00
26165d0a99 Bump eslint from 8.24.0 to 8.25.0 (#5861)
Bumps [eslint](https://github.com/eslint/eslint) from 8.24.0 to 8.25.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.24.0...v8.25.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-10-13 16:53:05 +00:00
f7cf3f72c2 Add playwright-core to dependabot ignore list (#5863) 2022-10-10 15:35:40 -07:00
cb8e09c9f9 Master 2.1.1 (#5858)
* Update version

* Don't delete annotations if there aren't any (#5829)

* don't delete annotations if there aren't any

* add test and align playwright-test

* align core with test

* added annotation describing test

* Add `aria-label` for time conductor history button (#5830)

* [Overlay Plot] Inspector series and legend sync fix (#5835)

* fixed overlay plots to react to series removals correctly, added alias visual to elements pool aliased items

* Keep transaction open on failed editor save (#5840)

* do not end a transaction on a failed editor save
* add unit tests for successful editor save and unsuccessful editor save

* If no matching tags, do not attempt tag search (#5839)

* do not attempt search if no matching tags

* fix timing on test

* commit again in hopes that github will run checks

* add back null tag check

* add some better documentation to tests

Co-authored-by: Andrew Henry <akhenry@gmail.com>

* Update version for  master

Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-10-08 09:04:38 -07:00
026eb86f5f 4417 fix codeql issues (#5793)
* Add release to codeql and queries to match lgtm

* Add lgtm config file

* Custom codeQL config to ignore app.js

* Custom config for lgtm

* Remove query filter for lgtm

* Updated the security test docs

* Remove lgtm.yml and delete app.js references

* Update codeql-config.yml

Co-authored-by: Alize Nguyen <alizenguyen@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-10-07 16:30:09 +00:00
866859a937 [CouchDB] Re-establish feed connection if EventSource is closed due to error (#5845)
* Re-establish feed connection if EventSource is closed due to error

* Use keepAlive timer

* Get rid of magic numbers and add comment
2022-10-06 21:41:38 +02:00
afc54f41f6 Publish example layouts json (#5842) 2022-10-05 14:17:36 -07:00
72c980f991 Have webpack-dev-server write webpack assets to disk (#5836)
* create the files not webpacked and watch css

* removing trailing slash
2022-10-04 10:53:44 -07:00
9bf39a9cd4 Bump eslint from 8.23.1 to 8.24.0 (#5807)
Bumps [eslint](https://github.com/eslint/eslint) from 8.23.1 to 8.24.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.23.1...v8.24.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-10-03 11:02:01 -07:00
33fd95cb2b Revert "[User Attribution] "createdBy" and "modifiedBy" fields for domainObjects (#5741)" (#5826)
This reverts commit 8c92178895.
2022-09-30 16:53:49 -07:00
8c92178895 [User Attribution] "createdBy" and "modifiedBy" fields for domainObjects (#5741)
* Implementation of user attribution of object changes
* Adds created date to object creation
* Updating remove action to wait for save before navigationg

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-09-30 13:47:10 -07:00
35bbebbbc7 Fix plot resize handling (#5637)
* Imagery thumbnail regression fixes - 5327 (#5591)

* Add an active class to thumbnail to indicate current focused image

* Differentiate bg color between real-time and fixed

* scrollIntoView inline: center

* Added watcher for bounds change to trigger thumbnail scroll

* Resolve merge conflict with requestHistory change to telemetry collection

* Split thumbnail into sub component

* Monitor isFixed value to unpause playback status

Co-authored-by: Khalid Adil <khalidadil29@gmail.com>

* [e2e] Improve appActions (#5592)

* update selectors to use aria labels

* Update appActions

- Create new function `getHashUrlToDomainObject` to get the browse url to a given object given its uuid

- Create new function `getFocusedObjectUuid`... self explanatory :)

- Update `createDomainObjectWIthDefaults` to make use of the new url generation

- Update `createDomainObject...`'s arguments to be more organized, and accept a parent object

- Update some docs, still need to clarify some

* Update appActions e2e tests

- Refactor for organization

- Test our new appActions in one go

* Update existing usages of `createDomainObject...` to match the new API

* fix accidental renamed export

* Fix jsdoc return types

* refactor telemetryTable test to use appActions

* Improve selectors

* Refactor test

* improve selector

* add clock mode appActions

* lint

* Fix jsdoc

* Code review comments

* mark failing visual tests as fixme temporarily

* Update package.json (#5601)

* Fix menu style in Snow theme (#5557)

* Include the plan source map when generating the time list/plan hybrid object (#5604)

* Search should indicate in progress and no results states, filter orphaned results (#5599)

* no matching result implemented

* now filtering annotations that are orphaned

* filter object results without valid paths

* add progress bar

* added e2e tests

* removed extraneous click

* fix typos

* fix unit tests

* lint

* address pr comments

* fix tests

* fix tests, centralize logic to object api, check for root instead

* remove debug statement

* lint

* fix documentation

* lint

* fix doc

* made some optimizations after talking with akhenry

* fix test

* update docs

* fix docs

* Have in-memory search indexer use composition API (#5578)

* need to remove tags and objects on composition removal
* had to separate out emits from load as it was causing memory indexer to loop upon itself

* Add parsing for areIdsEqual util to consistently remove folders (#5589)

* Add parsing util to identifier for ID comparison

* Moved firstIdentifier to top of function

* Lint fix

Co-authored-by: Andrew Henry <akhenry@gmail.com>

* Revert "Have in-memory search indexer use composition API (#5578)" (#5609)

This reverts commit 7cf11e177c.

* [e2e] Tests for Display Layout and LAD Tables and telemetry (#5607)

* Check for circular references in originalPath - 5615 (#5619)

* check for circular references

* add test

* fix test

* address PR comments by making comments better

* fix docs...again

* Don't request data if there is a mouse click with no action
Don't request data if width gets smaller or if the change is less than the threshold of 50.

* Update version number

* Prevent cyclic references in link & move actions (#5635)

* do not create circular refs

* add negative validation test

* move to plugin

* add link test too

* fix docs

* refactored per john request

* fix path

* use appAction lib

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* [Fault Management] New Example Provider, Unit and e2e tests (#5579)

* added unit tests for fault management plugin

* modified the example fault provider to work out of the box

* updating for new e2e folder structure

* part of the e2e tests

* WIP

* Imagery thumbnail regression fixes - 5327 (#5569)

* Add an active class to thumbnail to indicate current focused image

* Differentiate bg color between real-time and fixed

* scrollIntoView inline: center

* Added watcher for bounds change to trigger thumbnail scroll

* Resolve merge conflict with requestHistory change to telemetry collection

* Split thumbnail into sub component

* Monitor isFixed value to unpause playback status

* updated search to include name, namespace and description added some more e2e tests

* added rest of e2e tests

* fixed my init script, had to disable lint for no-force because it was not working without it, saw online this may be a pw bug

* fix: removing maelstrom theme from application (#5600)

* added some tests for no faults

* visual tests

* added visual tests for fault management

* created utils file for shared functionality between function and visual tests

* updating to 2.0.8

* tryin to remove imagery changes from master

* trying to trigger a refresh

* tryin to refresh

* updated search to include name, namespace and description added some more e2e tests

* added rest of e2e tests

* fix: removing maelstrom theme from application (#5600)

* fixed my init script, had to disable lint for no-force because it was not working without it, saw online this may be a pw bug

* added some tests for no faults

* visual tests

* added visual tests for fault management

* created utils file for shared functionality between function and visual tests

* updating to 2.0.8

* no clue

* still no clue

* removing imports and chaning to requires

* updating utils file to work with require

* fixing paths

* fixing a test I had messed up when adding static exmaple faults

* ONE LAST PATH FIX... hopefully

* typo in files fix

* fix folder typo

* thought I got this one, but apparently not, well I did now! who is laughing now!?

Co-authored-by: Michael Rogers <contact@mhrogers.com>
Co-authored-by: Vitor Henckel <vitor@henckel.com.br>

* Sort tree items locally on rename (#5643)

* fix typo

* Sort the tree items locally on object rename

* Use the navigationPath as a key

- This ensures that objects AND linked objects will be sorted

* add 'tree' and 'treeitem' roles to mct-tree

* WIP tree item reordering test

* Select the first object that matches

* Test that all object links are also reordered

* Get the final uuid before queryParams as notebook sections have uuids

* Make `openObjectTreeContextMenu` more deterministic and update usage

* Add `expandPathToTreeItem` and `expandTreeItemByName` appActions

* add `#tree-pane` id for the tree view

* Add tree visual component test suite and bump percy-cli

* Remove tree appActions

* Better variable name

Co-authored-by: Scott Bell <scott@traclabs.com>

* Mct5549 fix indexer composition error (#5610)

* [Display Layout] Composition and configuration sync (#5669)

LGTM

* [e2e] Stabilize notebook tag tests (#5681)

* Use more deterministic selector

* Hover first to "slow down" e2e actions while in headless mode

* Moves condition set fix into 2.0.8 (#5673)

* Remove flag that determines if data should be reloaded on interactions.
Separate logic to clear history and reload data.

* Rename method to clarify intention

* Set Focused Image index after a imagery is selected from a timestrip - 5632 (#5664)

* Set focused image when timestamp prop is passed in

* Unused var

* Create timestrip with imagery child

* Add equality check for hovered image and view large image url

* Cleanup

* Time List 5534 for release/2.0.8 (#5678)

* Changes to Time List view. Closes #5534.
- Compacted table row spacing.
- Set all timeframes to display by default when creating a new Time List.
- Removed 'Upload plan' file button from properties.

* Changes to Time List view. Closes #5534.
- Better hint text for editing Timeframe Inspector section.

Co-authored-by: Andrew Henry <akhenry@gmail.com>

* [CI] Enable couchdb e2e testing in open source (#5655)

* Reduce threshold to 10px - Chrome resizes to about 7 pixes and Firefox to 0.

* boilerplate for coverage

* add stubs

* Update version

* Remove debugging code

* [Flexible Layout] Fix draggable status for layout items while in browse mode (#5750)

* Modify flexible layout pages to make them not draggable in browse mode and add e2e test

* Don't destroy mutable if the domain object is not ready yet (#5695)

* Check if the domain object is set (mounted is done) before trying to destroy the mutable

* Use optional chaining. Add mutable promise check to prevent memory leaks

* Don't request data if there is a mouse click with no action
Don't request data if width gets smaller or if the change is less than the threshold of 50.

* Remove flag that determines if data should be reloaded on interactions.
Separate logic to clear history and reload data.

* Rename method to clarify intention

* Reduce threshold to 10px - Chrome resizes to about 7 pixes and Firefox to 0.

* boilerplate for coverage

* add stubs

* Remove debugging code

* Remove unused import

* Request priority (#5737)

* Set priority of couch requests to high
* Set priority of image requests to low
* Add e2e test for low-priority images

* Add test for re-requests on clicking a plot

* Adding new tests for testing plot requests for historical data

* Clean up e2e test for plot requesting historical data

* Write tests to ensure resizing the plot makes requests for data appropriately

* Remove fdescribe

* Fix resizing plot tests

Co-authored-by: Michael Rogers <contact@mhrogers.com>
Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Alize Nguyen <alizenguyen@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Vitor Henckel <vitor@henckel.com.br>
2022-09-30 20:04:19 +00:00
ce463babff 5734 synchronization for new tags on notebook entries (#5763)
* trying this again

* wip

* wip

* wip

* one annotation per tag

* fixed too many events firing

* syncing works mostly

* syncing properly across existing annotations

* search with multiple tags

* resolve conflicts between different tag editors

* resolve conflicts

* fix annotation tests

* combine search results

* modify tests

* prevent infinite loop creating annotation

* add modified and deleted

* revert index checkin

* change to standard couch deleted flag

* revert throwing of error

* resolve conflict issues

* work in progress, but load annotations once from notebook

* works to add

* attempt 1

* wip

* last changes

* listening works, though still getting conflicts

* rename to annotationLastCreated

* use local mutable again

* works with new tags syncing

* listeners wont fire if modification is null

* clean up code

* fixed local search

* cleaned up log messages

* remove on more log

* add e2e test for network traffic

* lint

* change to use good old for each

* add some local variables for clarity

* Update src/api/objects/ObjectAPI.js

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* Update src/api/objects/ObjectAPI.js

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* Update src/plugins/notebook/components/Notebook.vue

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* press enter for last entry

* add test explanation of numbers

* fix spread typo

* add some nice jsdoc

* throw some errors

* use really small integer instead

* remove unneeded binding

* make method public and jsdoc it

* use mutables

* clean up tests

* clean up tests

* use aria labels for tests

* add some proper tsdoc to annotation api

* add undelete test

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-09-30 10:32:11 -07:00
27c30132d2 4386 - In time conductor history, show them on hover if only milliseconds have changed - tooltip (#5783)
* 4386 - In time conductor history, show them on hover if only milliseconds have changed

* [e2e] Add quick test

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-09-30 10:16:35 -07:00
2bdac56505 Replace app.js with webpack-dev-server (#5797) 2022-09-30 08:17:02 -07:00
35c42ba43d Reviewer to smoke test PRs before merge (#5771)
* Reviewer to smoke test PRs before merge

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

Changes based on feedback

* Update PULL_REQUEST_TEMPLATE.md

Tweaking the language slightly for clarity.

* Update PULL_REQUEST_TEMPLATE.md

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-09-28 17:13:41 -07:00
6bdb8c9e1c Bump eslint-plugin-playwright from 0.11.1 to 0.11.2 (#5804)
* Bump eslint-plugin-playwright from 0.11.1 to 0.11.2

Bumps [eslint-plugin-playwright](https://github.com/playwright-community/eslint-plugin-playwright) from 0.11.1 to 0.11.2.
- [Release notes](https://github.com/playwright-community/eslint-plugin-playwright/releases)
- [Commits](https://github.com/playwright-community/eslint-plugin-playwright/compare/v0.11.1...v0.11.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-playwright
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix new lint error

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-09-26 10:00:51 -07:00
4a5467aba7 Bump sass from 1.54.9 to 1.55.0 (#5800) 2022-09-23 10:50:22 -07:00
b85238d7d0 Update version for sprint 2.1.1 (#5796)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-09-21 00:11:23 +00:00
410b3d6036 Misc UI 5640 (#5762)
* Closes #5640
- Layout frame edit handle visually tweaked, no longer resizes frame contents on hover when editing.
- Gauge now centers in its container instead of left flush.
- Added large bg-icon for aggregate telemetry.
- Removed 'no class' single wrapper div in mct-tree.vue.
- Refinements to appearance of locator in save/edit overlay dialog.
- Better styling for search in progress and 'no results' messaging.
- Revised art and glyph for `icon-tabular-scrolling`.
- Change TelemetryTableType to use icon-tabular-scrolling icon and bg-icon.
- Fix bad/erroneous descriptions for Telemetry Table, LAD Table and LAD Table Set.
- Fix descriptions for multiple view types.
- Removed unused .bg-icon class.
- Fixed bad value check that was causing panes not to collapse when dragged
(by design) to a very narrow width.
- Visual style for grippy adjusted for better clarity on some monitors.
- Normalize size of alphanumeric's labels and values in Display Layouts.
- Fix margin strategy for object label in main view.
- Fixed Locator to dynamically size itself to use available vertical space.
- Added new `l-overlay-dialog` size parameter.
- Better approach to overlay sizing to make Properties dialogs larger vertically
and fullscreen overlays more apparent to the user.
- Normalized approach to numeric inputs to fix cross-browser
inconsistency with input spinners.
- Fixed layout problem in `Datetime.vue` component due to
numeric input spinners changes.
- Added object types for Display Layout drawing objects.
- Code modded in `ObjectName.vue` to grab layout object cssClass from
layoutItem.type.
- Big thanks to @jvigliotta for the assist with this!
- update snapshots

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-09-20 23:40:16 +00:00
9a727cac2e [Notebook] Dropping item into "drop area" in notebook not working (#5791)
* notebook embed visual test initial

* waiting for createNewEmbed util function to finish before adding embed

* removing debug code

* adding unstable tag to visual test

* added e2e embed tests for existing and new entriesupdated some test utils as well

* removing test artifacts

* removing more test artifacts

* adding test data back in

* removing debug code

* adding back in test artifacts

* updated test I broke

* removing focused test

* removing unsed variable

* fix lint issues

* adding unstable tag for new e2e tests
2022-09-20 17:43:48 -05:00
be5472ebdb Ignore patch of eslint-plugin-vue (#5786) 2022-09-19 10:41:43 -07:00
f39419bc84 2.1.0 backmerge into master (#5784)
* Update version

* [Flexible Layout] Fix draggable status for layout items while in browse mode (#5750)

* Modify flexible layout pages to make them not draggable in browse mode and add e2e test

* Don't destroy mutable if the domain object is not ready yet (#5695)

* Check if the domain object is set (mounted is done) before trying to destroy the mutable

* Use optional chaining. Add mutable promise check to prevent memory leaks

* Request priority (#5737)

* Set priority of couch requests to high
* Set priority of image requests to low
* Add e2e test for low-priority images

* Timelist views support fixed time - 5629 (#5726)

* Initialize full view for fixed time

* Clean up

* Add back in ticker after merge

* Check for undefined clock instead of timestamp

* Cleanup

* Initialize full view for fixed time

* Clean up

* Add back in ticker after merge

* Check for undefined clock instead of timestamp

* Cleanup

* Update timestamp method and remove from beforeDestroy

* Shorten ternary to optional chaining

* Cleanup unused var

* Moved duplicated logic to method

* Reorder methods

* Update Timelist.vue

Set timestamp to clock start when in fixed time

* Added blank line

* Lint fix

* Update pluginSpec.js

* Invoke currentValue method properly

Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Michael Rogers <contact@mhrogers.com>
2022-09-19 10:18:20 -07:00
07bf85a623 Bump @percy/cli from 1.7.2 to 1.10.3 (#5780) 2022-09-16 16:22:42 -07:00
425e662d6e Show version information for Plans if available (#5703)
* Show document version if it is available
* Add test for plan version display in the inspector
2022-09-16 11:36:04 -07:00
2a689b896f [Build] Add @babel/eslint-parser to ignore list (#5759)
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-09-14 21:29:03 +00:00
ffe6fd1941 Update our Browser Support Matrix documentation (#5756)
* docs for chrome

* Tidy up formatting, spelling/grammar, update snippet

* more readme fixes

* Update example test suite

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-09-14 14:16:20 -07:00
cae579f5b3 Add baseUrl, outDir, and exclude options (#5757)
- Fixes erroneous TS language server warnings showing up in the VSCode terminal

- Ensures TypeScript language server features (such as refactor) are able to work properly by excluding build files
2022-09-14 10:05:41 -07:00
a073649e64 Bump sass from 1.54.4 to 1.54.9 (#5739)
Bumps [sass](https://github.com/sass/dart-sass) from 1.54.4 to 1.54.9.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.54.4...1.54.9)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-13 22:55:27 +00:00
f40e14cb2c Bump webpack-hot-middleware from 2.25.1 to 2.25.2 (#5648)
Bumps [webpack-hot-middleware](https://github.com/webpack-contrib/webpack-hot-middleware) from 2.25.1 to 2.25.2.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-09-13 22:28:42 +00:00
4629fbf115 Bump webpack from 5.68.0 to 5.74.0 (#5561)
Bumps [webpack](https://github.com/webpack/webpack) from 5.68.0 to 5.74.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.68.0...v5.74.0)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-09-13 22:24:36 +00:00
500e3bc583 Fix legend color to be in sync with plot color on change (#5371)
* Update name and color for legend when series changes

Co-authored-by: Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-09-13 22:10:21 +00:00
a65757d197 A couple of fixes for percy flakiness (#5752)
* deflake

* disable percy temporarily

* lower concurrency

* doc some changes

* Revert "disable percy temporarily"

This reverts commit 46f2bcf9c4.
2022-09-13 11:18:12 -07:00
f20bb4de10 Bump eslint from 8.23.0 to 8.23.1 (#5748)
Bumps [eslint](https://github.com/eslint/eslint) from 8.23.0 to 8.23.1.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.23.0...v8.23.1)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-13 10:33:41 +00:00
1c762f506f Bump vue-eslint-parser from 9.0.2 to 9.1.0 (#5744)
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 9.0.2 to 9.1.0.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v9.0.2...v9.1.0)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-13 12:28:28 +02:00
7d900a80b5 Bump style-loader from 1.3.0 to 3.3.1 (#5016) 2022-09-12 20:14:56 -07:00
8a06dedf9d Fix typo in CONTRIBUTING.md (#5719)
inheritence -> inheritance

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-09-12 14:14:38 -07:00
15ab0dae50 [e2e] Clean up example imagery tests, fix display layout test (#5685)
* Clean up imagery tests, fix display layout test

(cherry picked from commit 7d6699fcecb34cf98bac4aa8f9a1b2996736325c)

* Code review comments, more cleanup

* Add Tabs View suite, extract common actions to functions

* Add missing await

* remove unnecessary wait

* lint

* [e2e] playwright v1.25.0 -->v1.25.2

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-09-12 09:19:24 -07:00
a7ea5afa59 Fix Independent Time Conductor for Plans within Time Strips (#5671)
* Update `IndependentTimeContext` only if its `objectPath` differs

* Ensure independent time conductor, fixed and realtime inputs have the right objectPath

* [e2e] Add Plan creation test

* [e2e] add Create TimeStrip test

* mark new faultManagement suite with @unstable

* Upgrade to @playwright/test v1.25.0

* Extract `createPlanFromJSON` to appActions

* [e2e] Add TimeStrip test for Plans, Independent Time Contexts

* [e2e] Move test annotation to the top

* [e2e] fix timestrip test

* Update docker image so the tests run

* update playwright on GHA as well

* [e2e] Fix menu test

* Error if no objectPath provided

Co-authored-by: Shefali <simplyrender@gmail.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-09-09 17:31:03 -07:00
c231c2d7cb [e2e] Fix intermittent visual test timeouts (#5743)
* try fix visual test failure

* disable actionTimeout

* increase percy loglevel

* comment

* Remove `@percy/cli` dependency as it may be conflicting

* Upgrade `percy/cli` to 1.10.2

* drop percy/cli version down to 1.7.2

* enable timeouts for actions again
2022-09-09 16:29:03 -04:00
47fb81ff1c Bump uuid from 8.3.2 to 9.0.0 (#5732) 2022-09-06 10:42:36 -07:00
0efc6987a5 Bump jasmine-core from 4.3.0 to 4.4.0 (#5733) 2022-09-06 10:29:26 -07:00
79d1df39b7 Add check to hide any old popup items when showing a new one (#5680)
* Add check to hide any old popup items when showing a new one

* Use more deterministic selector

* Hover first to "slow down" e2e actions while in headless mode

* Add notebook tests

* Combine the section tests

* Set focused image when timestamp prop is passed in

* Unused var

* Create timestrip with imagery child

* Add equality check for hovered image and view large image url

* Cleanup

* add annotation and checks

* [e2e] Minor locator improvements

* Update button title

* skipping with context

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-08-31 17:11:09 +00:00
0c9ea26888 Swallow abort errors in search (#5650)
* Imagery thumbnail regression fixes - 5327 (#5591)

* Add an active class to thumbnail to indicate current focused image

* Differentiate bg color between real-time and fixed

* scrollIntoView inline: center

* Added watcher for bounds change to trigger thumbnail scroll

* Resolve merge conflict with requestHistory change to telemetry collection

* Split thumbnail into sub component

* Monitor isFixed value to unpause playback status

Co-authored-by: Khalid Adil <khalidadil29@gmail.com>

* [e2e] Improve appActions (#5592)

* update selectors to use aria labels

* Update appActions

- Create new function `getHashUrlToDomainObject` to get the browse url to a given object given its uuid

- Create new function `getFocusedObjectUuid`... self explanatory :)

- Update `createDomainObjectWIthDefaults` to make use of the new url generation

- Update `createDomainObject...`'s arguments to be more organized, and accept a parent object

- Update some docs, still need to clarify some

* Update appActions e2e tests

- Refactor for organization

- Test our new appActions in one go

* Update existing usages of `createDomainObject...` to match the new API

* fix accidental renamed export

* Fix jsdoc return types

* refactor telemetryTable test to use appActions

* Improve selectors

* Refactor test

* improve selector

* add clock mode appActions

* lint

* Fix jsdoc

* Code review comments

* mark failing visual tests as fixme temporarily

* Update package.json (#5601)

* Fix menu style in Snow theme (#5557)

* Include the plan source map when generating the time list/plan hybrid object (#5604)

* Search should indicate in progress and no results states, filter orphaned results (#5599)

* no matching result implemented

* now filtering annotations that are orphaned

* filter object results without valid paths

* add progress bar

* added e2e tests

* removed extraneous click

* fix typos

* fix unit tests

* lint

* address pr comments

* fix tests

* fix tests, centralize logic to object api, check for root instead

* remove debug statement

* lint

* fix documentation

* lint

* fix doc

* made some optimizations after talking with akhenry

* fix test

* update docs

* fix docs

* Have in-memory search indexer use composition API (#5578)

* need to remove tags and objects on composition removal
* had to separate out emits from load as it was causing memory indexer to loop upon itself

* Add parsing for areIdsEqual util to consistently remove folders (#5589)

* Add parsing util to identifier for ID comparison

* Moved firstIdentifier to top of function

* Lint fix

Co-authored-by: Andrew Henry <akhenry@gmail.com>

* Revert "Have in-memory search indexer use composition API (#5578)" (#5609)

This reverts commit 7cf11e177c.

* [e2e] Tests for Display Layout and LAD Tables and telemetry (#5607)

* Check for circular references in originalPath - 5615 (#5619)

* check for circular references

* add test

* fix test

* address PR comments by making comments better

* fix docs...again

* Update version number

* Prevent cyclic references in link & move actions (#5635)

* do not create circular refs

* add negative validation test

* move to plugin

* add link test too

* fix docs

* refactored per john request

* fix path

* use appAction lib

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* swallow abort errors in search

* [Fault Management] New Example Provider, Unit and e2e tests (#5579)

* added unit tests for fault management plugin

* modified the example fault provider to work out of the box

* updating for new e2e folder structure

* part of the e2e tests

* WIP

* Imagery thumbnail regression fixes - 5327 (#5569)

* Add an active class to thumbnail to indicate current focused image

* Differentiate bg color between real-time and fixed

* scrollIntoView inline: center

* Added watcher for bounds change to trigger thumbnail scroll

* Resolve merge conflict with requestHistory change to telemetry collection

* Split thumbnail into sub component

* Monitor isFixed value to unpause playback status

* updated search to include name, namespace and description added some more e2e tests

* added rest of e2e tests

* fixed my init script, had to disable lint for no-force because it was not working without it, saw online this may be a pw bug

* fix: removing maelstrom theme from application (#5600)

* added some tests for no faults

* visual tests

* added visual tests for fault management

* created utils file for shared functionality between function and visual tests

* updating to 2.0.8

* tryin to remove imagery changes from master

* trying to trigger a refresh

* tryin to refresh

* updated search to include name, namespace and description added some more e2e tests

* added rest of e2e tests

* fix: removing maelstrom theme from application (#5600)

* fixed my init script, had to disable lint for no-force because it was not working without it, saw online this may be a pw bug

* added some tests for no faults

* visual tests

* added visual tests for fault management

* created utils file for shared functionality between function and visual tests

* updating to 2.0.8

* no clue

* still no clue

* removing imports and chaning to requires

* updating utils file to work with require

* fixing paths

* fixing a test I had messed up when adding static exmaple faults

* ONE LAST PATH FIX... hopefully

* typo in files fix

* fix folder typo

* thought I got this one, but apparently not, well I did now! who is laughing now!?

Co-authored-by: Michael Rogers <contact@mhrogers.com>
Co-authored-by: Vitor Henckel <vitor@henckel.com.br>

* Sort tree items locally on rename (#5643)

* fix typo

* Sort the tree items locally on object rename

* Use the navigationPath as a key

- This ensures that objects AND linked objects will be sorted

* add 'tree' and 'treeitem' roles to mct-tree

* WIP tree item reordering test

* Select the first object that matches

* Test that all object links are also reordered

* Get the final uuid before queryParams as notebook sections have uuids

* Make `openObjectTreeContextMenu` more deterministic and update usage

* Add `expandPathToTreeItem` and `expandTreeItemByName` appActions

* add `#tree-pane` id for the tree view

* Add tree visual component test suite and bump percy-cli

* Remove tree appActions

* Better variable name

Co-authored-by: Scott Bell <scott@traclabs.com>

* Mct5549 fix indexer composition error (#5610)

* [Display Layout] Composition and configuration sync (#5669)

LGTM

* [e2e] Stabilize notebook tag tests (#5681)

* Use more deterministic selector

* Hover first to "slow down" e2e actions while in headless mode

* flush hash in case other requests are awaiting debounce

* flush hash in case other requests are awaiting debounce

* the debounce will cause this resolve function to never fire, so force a flush

* lint

* remove debug statements

* add a comment

* Moves condition set fix into 2.0.8 (#5673)

* Set Focused Image index after a imagery is selected from a timestrip - 5632 (#5664)

* Set focused image when timestamp prop is passed in

* Unused var

* Create timestrip with imagery child

* Add equality check for hovered image and view large image url

* Cleanup

* Time List 5534 for release/2.0.8 (#5678)

* Changes to Time List view. Closes #5534.
- Compacted table row spacing.
- Set all timeframes to display by default when creating a new Time List.
- Removed 'Upload plan' file button from properties.

* Changes to Time List view. Closes #5534.
- Better hint text for editing Timeframe Inspector section.

Co-authored-by: Andrew Henry <akhenry@gmail.com>

* [CI] Enable couchdb e2e testing in open source (#5655)

* Handle couch db not found errors so that interceptors are still invoked. (#5654)

* Fix tests for interceptors
* [e2e] Add test for 'mine' folder initialization
* [e2e] don't fail on expected console errors

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>

* [Docs] Update CouchDB local install documentation (#5692)

* Update local CouchDB install docs to include docker workflow

* reformat to source configuration scripts where possible

* correct couchdb case

Co-authored-by: John Hill <john.c.hill@nasa.gov>

* [Time Conductor] History not working correctly (#5687)

* the check for fixed time vs realtime was not updating, have fixed this

* merging in related changes from master pr #4414

* lint fixes

* Update src/plugins/timeConductor/ConductorHistory.vue

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* setting time mode directly on load

* fixing issue where realtime history was being wiped on reloads while viewing fixed time

* formatting

* stubbed in some tests

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* Only index if provider does not support search - mct5690 (#5693)

* only index if provider does not support search

* add some tests

* fix tests

* [e2e] Add search couchdb test for duplicates

* [e2e] Modify existing search test instead

* lint

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>

* fixed flakey test maybe?

* fixed flakey test maybe?

* fail on console errors

* turn on console errors for search

* revert karma code cov change

* couchdb scripting artifacts gitignore

* keep couchdb tests separate

* remove console true as this is the default

* cleanup tests

* [e2e][couchdb] fix docker-compose command

* [e2e][couchdb] ensure script is run using bash

* [e2e][couchdb] try to debug curl in gha

* [e2e][couchdb] try 0.0.0.0

* [e2e][couchdb] add debug step

* [e2e][couchdb] try -L option

* [e2e][couchdb] try 127.0.0.1

* [e2e][couchdb] add http

* [e2e][couchdb] provide initial config

* [e2e][couchdb] bind to 0.0.0.0

* [e2e][couchdb] debug

* [e2e][couchdb] wait for couchdb to start, remove failed hacks

* fix typo

Co-authored-by: Michael Rogers <contact@mhrogers.com>
Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Alize Nguyen <alizenguyen@gmail.com>
Co-authored-by: Shefali <simplyrender@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Vitor Henckel <vitor@henckel.com.br>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-08-31 10:25:00 +02:00
153538b6bf Bump eslint from 8.22.0 to 8.23.0 (#5720)
Bumps [eslint](https://github.com/eslint/eslint) from 8.22.0 to 8.23.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.22.0...v8.23.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-29 13:46:16 -07:00
798e2d4337 Bump moment-timezone from 0.5.34 to 0.5.37 (#5714) 2022-08-25 14:38:27 -07:00
e3770dc701 [e2e] Enable CORS for CouchDB in CI (#5702) 2022-08-25 12:19:37 -07:00
0f12aa1eae Update getting started readme (#5712)
Co-authored-by: John <jchill2@gmail.com>
2022-08-24 14:19:15 -07:00
c17efcc157 Audit test.fixmes (#5711)
- Replace `test.fixme` with the `@unstable` annotation for tests with contents

- Replace `test.fixme` with `test.skip` for conditionally skipped tests
2022-08-24 12:31:26 -07:00
90662ce4a7 Merge release/2.0.8 into master (#5709)
* Imagery thumbnail regression fixes - 5327 (#5591)

* Add an active class to thumbnail to indicate current focused image

* Differentiate bg color between real-time and fixed

* scrollIntoView inline: center

* Added watcher for bounds change to trigger thumbnail scroll

* Resolve merge conflict with requestHistory change to telemetry collection

* Split thumbnail into sub component

* Monitor isFixed value to unpause playback status

Co-authored-by: Khalid Adil <khalidadil29@gmail.com>

* [e2e] Improve appActions (#5592)

* update selectors to use aria labels

* Update appActions

- Create new function `getHashUrlToDomainObject` to get the browse url to a given object given its uuid

- Create new function `getFocusedObjectUuid`... self explanatory :)

- Update `createDomainObjectWIthDefaults` to make use of the new url generation

- Update `createDomainObject...`'s arguments to be more organized, and accept a parent object

- Update some docs, still need to clarify some

* Update appActions e2e tests

- Refactor for organization

- Test our new appActions in one go

* Update existing usages of `createDomainObject...` to match the new API

* fix accidental renamed export

* Fix jsdoc return types

* refactor telemetryTable test to use appActions

* Improve selectors

* Refactor test

* improve selector

* add clock mode appActions

* lint

* Fix jsdoc

* Code review comments

* mark failing visual tests as fixme temporarily

* Update package.json (#5601)

* Fix menu style in Snow theme (#5557)

* Include the plan source map when generating the time list/plan hybrid object (#5604)

* Search should indicate in progress and no results states, filter orphaned results (#5599)

* no matching result implemented

* now filtering annotations that are orphaned

* filter object results without valid paths

* add progress bar

* added e2e tests

* removed extraneous click

* fix typos

* fix unit tests

* lint

* address pr comments

* fix tests

* fix tests, centralize logic to object api, check for root instead

* remove debug statement

* lint

* fix documentation

* lint

* fix doc

* made some optimizations after talking with akhenry

* fix test

* update docs

* fix docs

* Have in-memory search indexer use composition API (#5578)

* need to remove tags and objects on composition removal
* had to separate out emits from load as it was causing memory indexer to loop upon itself

* Add parsing for areIdsEqual util to consistently remove folders (#5589)

* Add parsing util to identifier for ID comparison

* Moved firstIdentifier to top of function

* Lint fix

Co-authored-by: Andrew Henry <akhenry@gmail.com>

* Revert "Have in-memory search indexer use composition API (#5578)" (#5609)

This reverts commit 7cf11e177c.

* [e2e] Tests for Display Layout and LAD Tables and telemetry (#5607)

* Check for circular references in originalPath - 5615 (#5619)

* check for circular references

* add test

* fix test

* address PR comments by making comments better

* fix docs...again

* Update version number

* Prevent cyclic references in link & move actions (#5635)

* do not create circular refs

* add negative validation test

* move to plugin

* add link test too

* fix docs

* refactored per john request

* fix path

* use appAction lib

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* [Condition Set] Add check for empty string being passed to the makeKeyString util by TelemetryCriterion (#5636) (#5663)

* Check telemetry is defined before using makeKeyString util

* Add optional chaining in the check

* Add e2e test

* Add check for undefined

Co-authored-by: Khalid Adil <khalidadil29@gmail.com>

* [Fault Management] New Example Provider, Unit and e2e tests (#5579)

* added unit tests for fault management plugin

* modified the example fault provider to work out of the box

* updating for new e2e folder structure

* part of the e2e tests

* WIP

* Imagery thumbnail regression fixes - 5327 (#5569)

* Add an active class to thumbnail to indicate current focused image

* Differentiate bg color between real-time and fixed

* scrollIntoView inline: center

* Added watcher for bounds change to trigger thumbnail scroll

* Resolve merge conflict with requestHistory change to telemetry collection

* Split thumbnail into sub component

* Monitor isFixed value to unpause playback status

* updated search to include name, namespace and description added some more e2e tests

* added rest of e2e tests

* fixed my init script, had to disable lint for no-force because it was not working without it, saw online this may be a pw bug

* fix: removing maelstrom theme from application (#5600)

* added some tests for no faults

* visual tests

* added visual tests for fault management

* created utils file for shared functionality between function and visual tests

* updating to 2.0.8

* tryin to remove imagery changes from master

* trying to trigger a refresh

* tryin to refresh

* updated search to include name, namespace and description added some more e2e tests

* added rest of e2e tests

* fix: removing maelstrom theme from application (#5600)

* fixed my init script, had to disable lint for no-force because it was not working without it, saw online this may be a pw bug

* added some tests for no faults

* visual tests

* added visual tests for fault management

* created utils file for shared functionality between function and visual tests

* updating to 2.0.8

* no clue

* still no clue

* removing imports and chaning to requires

* updating utils file to work with require

* fixing paths

* fixing a test I had messed up when adding static exmaple faults

* ONE LAST PATH FIX... hopefully

* typo in files fix

* fix folder typo

* thought I got this one, but apparently not, well I did now! who is laughing now!?

Co-authored-by: Michael Rogers <contact@mhrogers.com>
Co-authored-by: Vitor Henckel <vitor@henckel.com.br>

* Sort tree items locally on rename (#5643)

* fix typo

* Sort the tree items locally on object rename

* Use the navigationPath as a key

- This ensures that objects AND linked objects will be sorted

* add 'tree' and 'treeitem' roles to mct-tree

* WIP tree item reordering test

* Select the first object that matches

* Test that all object links are also reordered

* Get the final uuid before queryParams as notebook sections have uuids

* Make `openObjectTreeContextMenu` more deterministic and update usage

* Add `expandPathToTreeItem` and `expandTreeItemByName` appActions

* add `#tree-pane` id for the tree view

* Add tree visual component test suite and bump percy-cli

* Remove tree appActions

* Better variable name

Co-authored-by: Scott Bell <scott@traclabs.com>

* Mct5549 fix indexer composition error (#5610)

* [Display Layout] Composition and configuration sync (#5669)

LGTM

* [e2e] Stabilize notebook tag tests (#5681)

* Use more deterministic selector

* Hover first to "slow down" e2e actions while in headless mode

* Moves condition set fix into 2.0.8 (#5673)

* Set Focused Image index after a imagery is selected from a timestrip - 5632 (#5664)

* Set focused image when timestamp prop is passed in

* Unused var

* Create timestrip with imagery child

* Add equality check for hovered image and view large image url

* Cleanup

* Time List 5534 for release/2.0.8 (#5678)

* Changes to Time List view. Closes #5534.
- Compacted table row spacing.
- Set all timeframes to display by default when creating a new Time List.
- Removed 'Upload plan' file button from properties.

* Changes to Time List view. Closes #5534.
- Better hint text for editing Timeframe Inspector section.

Co-authored-by: Andrew Henry <akhenry@gmail.com>

* [CI] Enable couchdb e2e testing in open source (#5655)

* Handle couch db not found errors so that interceptors are still invoked. (#5654)

* Fix tests for interceptors
* [e2e] Add test for 'mine' folder initialization
* [e2e] don't fail on expected console errors

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>

* [Docs] Update CouchDB local install documentation (#5692)

* Update local CouchDB install docs to include docker workflow

* reformat to source configuration scripts where possible

* correct couchdb case

Co-authored-by: John Hill <john.c.hill@nasa.gov>

* [Time Conductor] History not working correctly (#5687)

* the check for fixed time vs realtime was not updating, have fixed this

* merging in related changes from master pr #4414

* lint fixes

* Update src/plugins/timeConductor/ConductorHistory.vue

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* setting time mode directly on load

* fixing issue where realtime history was being wiped on reloads while viewing fixed time

* formatting

* stubbed in some tests

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* Only index if provider does not support search - mct5690 (#5693)

* only index if provider does not support search

* add some tests

* fix tests

* [e2e] Add search couchdb test for duplicates

* [e2e] Modify existing search test instead

* lint

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>

* Don't re-request historical data on ticks (#5701)

Don't rerequest telemetry on ticks.

* Fix duplicate declaration from merge

Co-authored-by: Michael Rogers <contact@mhrogers.com>
Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Alize Nguyen <alizenguyen@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Vitor Henckel <vitor@henckel.com.br>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-08-24 11:08:17 -07:00
84c1526f5e Bump eslint-plugin-playwright from 0.10.0 to 0.11.1 (#5697)
* Bump eslint-plugin-playwright from 0.10.0 to 0.11.1

Bumps [eslint-plugin-playwright](https://github.com/playwright-community/eslint-plugin-playwright) from 0.10.0 to 0.11.1.
- [Release notes](https://github.com/playwright-community/eslint-plugin-playwright/releases)
- [Commits](https://github.com/playwright-community/eslint-plugin-playwright/compare/v0.10.0...v0.11.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-playwright
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Resolve new playwright lint warnings

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-08-24 08:51:39 -07:00
d73cb2ef70 [CLA Approved] Fix references to telemetry data "unit" in the plot LEGEND form, top legend display and documentation (#5546)
* [Plot] Rename the `units` attribute to `unit` (#5540)

Rename the `units` attribute to `unit` when referencing the telemetry
data "unit" within:
- the legend-form vue for setting the `valueToShowWhenCollapsed` and
  `showUnitsWhenExpanded` and displaying the available choices in write
  mode,
- the plot-options-browse vue for displaying the selected choices
  within the form in read mode,
- the plot-legend-item-collapsed when checking which field to display.

* [Documentation] Update API documentation (#3562)
2022-08-23 17:06:23 +00:00
07bdbe5108 Bump @percy/cli from 1.7.2 to 1.10.0 (#5689) 2022-08-22 13:19:22 -07:00
291e62687e Master 2.0.7 (#5672) 2022-08-22 11:41:38 -07:00
efadf9036f 5413 - [Notebook] Various visual issues with renaming sections/pages (#5475)
* 5413 - [Notebook] Various visual issues with renaming sections/pages

* 5413 - [Notebook] Various visual issues with renaming sections/pages - 3rd Expectation

* 5413 - [Notebook] Various visual issues with renaming sections/pages - requested changes

* 5413 - [Notebook] Various visual issues with renaming sections/pages - remove a magic number (ENTER)

* 5413 - [Notebook] Various visual issues with renaming sections/pages - key codes

* 5413 - [Notebook] Various visual issues with renaming sections/pages - Separate selectability and editability actions for `Section` and `Page` components

* Fix layout of Notebook nav item to align affordance arrow

* Add e2e test stubs

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-08-18 17:58:34 +00:00
ca928370a4 Bump sass from 1.52.2 to 1.54.4 (#5644) 2022-08-18 08:41:23 -07:00
6820e0d044 Remove lighthouse, jsdoc, and bourbon dependencies (#5081)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-08-18 16:20:05 +02:00
b8fa89af6e Bump plotly.js-basic-dist from 2.12.0 to 2.14.0 (#5645)
* Bump plotly.js-basic-dist from 2.12.0 to 2.14.0

Bumps [plotly.js-basic-dist](https://github.com/plotly/plotly.js) from 2.12.0 to 2.14.0.
- [Release notes](https://github.com/plotly/plotly.js/releases)
- [Changelog](https://github.com/plotly/plotly.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.js/compare/v2.12.0...v2.14.0)

---
updated-dependencies:
- dependency-name: plotly.js-basic-dist
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Also update plotly gs2d dist version

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Shefali <simplyrender@gmail.com>
2022-08-15 21:14:12 +00:00
bbb84c695d Bump plotly.js-gl2d-dist from 2.12.0 to 2.14.0 (#5667)
Bumps [plotly.js-gl2d-dist](https://github.com/plotly/plotly.js) from 2.12.0 to 2.14.0.
- [Release notes](https://github.com/plotly/plotly.js/releases)
- [Changelog](https://github.com/plotly/plotly.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/plotly/plotly.js/compare/v2.12.0...v2.14.0)

---
updated-dependencies:
- dependency-name: plotly.js-gl2d-dist
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-15 14:09:01 -07:00
f979e170ee Bump eslint from 8.18.0 to 8.22.0 (#5666)
Bumps [eslint](https://github.com/eslint/eslint) from 8.18.0 to 8.22.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.18.0...v8.22.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-08-15 20:55:28 +00:00
1d875cb8ca 4386 - In time conductor history, show them on hover if only milliseconds have changed (#4414)
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-08-15 13:01:45 -07:00
a584766618 Bump imports-loader from 0.8.0 to 4.0.1 (#5658) 2022-08-12 15:29:44 -07:00
a671be726b [CI] Update dependabot ignore list for dependencies which will always fail (#5652) 2022-08-12 15:02:15 +00:00
10ff4e1781 fix: removing maelstrom theme from application (#5600) 2022-08-09 13:06:43 -07:00
f1c85933c3 Imagery thumbnail regression fixes - 5327 (#5569)
* Add an active class to thumbnail to indicate current focused image

* Differentiate bg color between real-time and fixed

* scrollIntoView inline: center

* Added watcher for bounds change to trigger thumbnail scroll

* Resolve merge conflict with requestHistory change to telemetry collection

* Split thumbnail into sub component

* Monitor isFixed value to unpause playback status
2022-08-02 12:29:49 -05:00
f2ed518300 Bump @babel/eslint-parser from 7.18.2 to 7.18.9 (#5530)
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.18.2 to 7.18.9.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.18.9/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-31 14:36:52 -07:00
bf8d1561ae Bump @percy/cli from 1.6.4 to 1.7.2 (#5583)
Bumps [@percy/cli](https://github.com/percy/cli/tree/HEAD/packages/cli) from 1.6.4 to 1.7.2.
- [Release notes](https://github.com/percy/cli/releases)
- [Commits](https://github.com/percy/cli/commits/v1.7.2/packages/cli)

---
updated-dependencies:
- dependency-name: "@percy/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-31 13:41:15 -07:00
2e1ede1427 Add Visual Test for Snow Theme and add visual tests to PR execution (#5570) 2022-07-29 17:35:43 -07:00
fc3614dfbd [e2e] More VIPER compatibility fixes (#5582) 2022-07-29 16:50:40 -07:00
22924f18fc Better handling of persistence errors (#5576)
* conflict errors in particular
2022-07-29 14:29:34 -07:00
60f20c64d5 Fix multi user notebook (#5563)
* Detect remote changes to notebook object and re-render entries. Detect changes to tags as well

* Do not throw an error when getCurrentUser is called, just return undefined. Code needs a way of testing whether there is a valid user

* Support remote sync of annotations for notebook entries

* Fix bug in notebook spec that prevented multi-user notebook regression being detected

* Fixes edge case where an annotation does not initially exist

* Use structuredClone instead of JSON functions. Fix logical error in entry modification attribution. Address magical value

Co-authored-by: Scott Bell <scott@traclabs.com>
2022-07-29 11:14:09 +02:00
8dc8a1c0a9 Bump jasmine-core from 4.2.0 to 4.3.0 (#5553)
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 4.2.0 to 4.3.0.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v4.2.0...v4.3.0)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-07-28 20:19:13 -07:00
710259b5f0 Bump eslint-plugin-vue from 9.1.1 to 9.3.0 (#5554)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.1.1 to 9.3.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.1.1...v9.3.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-07-28 13:56:04 -07:00
e774eb01f3 5211 tests arent using source maps master (#5566)
* removed unused require
* simplify config

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-07-28 11:23:41 -07:00
c83ee95d9c [e2e] Add eslint rule for max nested describes (#5565) 2022-07-28 15:50:31 +00:00
161fca98d5 5469 search results sometimes show the wrong contextual path or no path at all master (#5567)
* use identifier from domain object to tell vue to rerender, also show object in annotations

* fix annotation result clicks

* use key string instead

* add nice e2e test

* add some more search types

* added negative expect
2022-07-28 10:41:21 +02:00
f493f031df [e2e] Refactor and document our extension of existing Playwright API and RFE features (#5537) 2022-07-27 14:31:18 -07:00
71c43dee65 Bump eslint-plugin-playwright from 0.9.0 to 0.10.0 (#5559)
* Bump eslint-plugin-playwright from 0.9.0 to 0.10.0

Bumps [eslint-plugin-playwright](https://github.com/playwright-community/eslint-plugin-playwright) from 0.9.0 to 0.10.0.
- [Release notes](https://github.com/playwright-community/eslint-plugin-playwright/releases)
- [Commits](https://github.com/playwright-community/eslint-plugin-playwright/compare/v0.9.0...v0.10.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-playwright
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Fix new lint warning

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-07-26 11:33:42 -07:00
c10e9ad14c Bump css-loader from 4.0.0 to 6.7.1 (#4927)
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 4.0.0 to 6.7.1.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v4.0.0...v6.7.1)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-25 16:16:10 -07:00
075ca1f87d Form customizations (#5026)
* configuration to hide cancel button in forms
* only show required fields message if form has required fields
* save should handle non-dialog forms
2022-07-25 15:28:58 -07:00
7e1337447f [e2e] Update tests to be compatible with viper #5513 (#5520)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-07-25 20:21:41 +00:00
7e854f078e Added tests that check what arguments will cause the toggleClass function to throw, as well as tests that validate whether the function will add/remove classes from elements under different scenarios. (#5525)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-07-25 20:04:51 +00:00
2cfd7ac5b6 fix: update search results selector based on layout (#5552) 2022-07-23 19:57:55 -07:00
6c90798905 [E2E] Add search tests 4667 (#5171)
* Add e2e search tests
2022-07-23 09:15:10 -07:00
2fa053e80c Bump jsdoc from 3.5.5 to 3.6.11 (#5541)
Bumps [jsdoc](https://github.com/jsdoc/jsdoc) from 3.5.5 to 3.6.11.
- [Release notes](https://github.com/jsdoc/jsdoc/releases)
- [Changelog](https://github.com/jsdoc/jsdoc/blob/3.6.11/CHANGES.md)
- [Commits](https://github.com/jsdoc/jsdoc/compare/3.5.5...3.6.11)

---
updated-dependencies:
- dependency-name: jsdoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-21 11:12:43 -07:00
488cd82ae1 Uppercase-X checkboxes are also valid (#5527) 2022-07-18 18:38:12 +00:00
d85be3b88e Remove exampleImagery suite from CI (#5529) 2022-07-18 11:01:49 -07:00
4d48cf3180 Add TBD Readme (#5514)
* Add TBD Readme

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-07-16 12:21:40 -07:00
413cb13edf [e2e] Fix flaky exampleImagery zoom tests (#5517)
* extract zoom logic to functions and update test

* Refactor other tests to use new button zoom fns

* e2e:ci ++exampleImagery

* try polling

* try wait for animations

* code review comments

* fix syntax
2022-07-15 16:39:55 -07:00
70115be727 Removing flaky test from CI runs (#5511)
* Removing flaky test from CI runs

* Update package.json

* Update package.json

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-07-15 11:49:58 -07:00
97f5528dfc Last of the post-2.0.6 band-aid removal (#5512)
* back out changes

* Ensure that coverage is generated in all tests
2022-07-15 08:58:03 -07:00
0e1cc5dc30 Upgrade to karma-jasmine 5.1.0 and fix unit tests (#5503) 2022-07-14 17:16:50 -07:00
0062191416 Update moment (#5509)
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
2022-07-14 22:36:42 +00:00
eedc523078 Use webpack.dev.js if NODE_ENV is not set (#5498) 2022-07-14 15:21:17 -07:00
db97acb61e 2.0.5 Backmerge (#5505)
* Bump d3-selection from 1.3.2 to 3.0.0

Bumps [d3-selection](https://github.com/d3/d3-selection) from 1.3.2 to 3.0.0.
- [Release notes](https://github.com/d3/d3-selection/releases)
- [Commits](https://github.com/d3/d3-selection/compare/v1.3.2...v3.0.0)

---
updated-dependencies:
- dependency-name: d3-selection
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Remove snapshot

* Fix imagery filter slider drag in flexible layouts (#5326) (#5350)

* Dont' mutate a stacked plot unless its user initiated (#5357)

* Port grid icons and imagery test to release 2.0.5 from master (#5360)

* Port grid icons to release 2.0.5 from master

* Port imagery test to release/2.0.5

* Restrict timestrip composition to time based plots, plans and imagery (#5161)

* Restrict timestrip composition to time based plots, plans and imagery

* Adds unit tests for timeline composition policy

* Addresses review comments
Improves tests

* Reuse test objects

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>

* Include objectStyles reference to conditionSetIdentifier in imports (#5354)

* Include objectStyles reference to conditionSetIdentifier in imports

* Add tests for export

* Refactored some code and removed console log

* Remove workarounds for chrome 'scrollTop' issue (#5375)

* Fix naming of method (#5368)

* Imagery View does not discard old images when they fall out of bounds (#5351)

* change to using telemetry collection

* fix tests

* added more unit tests

* Cherrypicked commits (#5390)

Co-authored-by: unlikelyzero <jchill2@gmail.com>

* [Timer] Update 3dot menu actions appropriately (#5387)

* Call `removeAllListeners()` after emit

* Manually show/hide actions if within a view

* remove sneaky `console.log()`

* Add Timer e2e test

* Add to comments

* Avoid hard waits in Timer e2e test

- Assert against timer view state instead of menu options

* Let's also test actions from the Timer view

* 5391 Add preview and drag support to Grand Search (#5394)

* add preview and drag actions

* added unit test, simplified remove action

* do not hide search results in preview mode when clicking outside search results

* add semantic aria labels to enable e2e tests

* readd preview

* add e2e test

* remove commented out url

* add percy snapshot and add search to ci

* make percy stuff work

* linting

* fix percy again

* move percy snapshots to a visual test

* added separate visual test and changed test to fixtures

* fix fixtures path

* addressing review comments

* 5361 tags not persisting locally (#5408)

* fixed typo

* remove unneeded lookup

* fix tags adding and deleting

* more reliable way to remove tags

* break tests up for parallel execution

* fixed notebook tagging test

* enable e2e tests

* made schedule index comment more clear and fix uppercase/lowercase issue

* address e2e changes

* add unit test to bump coverage

* fix typo

* need to check on annotation creation if provider exists or not

* added fixtures

* undo silly couchdb commit

* Plot progress bar fix for 2.0.5 (#5386)

* Add .bind(this) to stopLoading() in loadMoreData()

* Replace load spinner with progress bar for plots

* Add loading delay prop to swg

* fix linting errors

* match load order

* Update accessibility

* Add Math.max to timeout to handle negative inputs

* Moved math.max to load delay variable

* Add loading fix for stacked plots

* Move loadingUpdate func into plot item for update

* Merge conflict resolve

* Check if delay is 0 and send, put post in a func

* Put obj directly to model, removed computed prop

* Lint fix

* Fix template where legend was not displayed

* Remove commented out template

* Fixed failing test

Co-authored-by: unlikelyzero <jchill2@gmail.com>

* Make plans non editable. (#5377)

* Make plans non editable.

* Add unit test for fix

* [CouchDB] Better determination of indicator status (#5415)

* Add unknown state, remove maintenance state

* Handle all CouchDB status codes

- Set unknown status if we receive an unhandled code

* Include status code in error messages

* SharedWorker can send unknown status

* Add test for unknown status

* Gauge fixes for Firefox and units display (#5369)

* Closes #5323, #5325. Parent branch is release/2.0.5.
- Significant work refactoring SVG markup and CSS for dial gauge;
- Fixed missing `v-if` to control display of units for #5325;
- Fixed bad `.length` test for limit properties;

* Closes #5323, #5325
- Add 'value out of range' indicator

* Closes #5323, #5325
- More accurate element naming;
- Fix cross-browser problems with current value display in dial gauge;
- Refinements to "out of range" indicator approach;
- Fixed size of "Amplitude" input in Sine Wave Generator;

* Closes #5323, #5325
- Styles and stubbed in code to support needle meter type;

* Closes #5323, #5325
- Stubbed in markup and CSS for needle-style meter;

* Closes #5323, #5325
- Fixed missing `js-*` classes that were failing npm run test;

* Closes #5323, #5325
- Fix to not display meter value bar unless a data value is expected;

* Addressing PR comments
- Renamed method for clarity;
- Added null value check in method `valueExpected`;

* [Static Root] Return leafValue if null/undefined/false (#5416)

* Return leafValue if null/undefined/false

* Added a null to the test json

* Show a better default poll question (#5425)

* 5361 Tags not persisting when several notebook entries are created at once (#5428)

* add end to end test to catch multiple entry errors

* click expansion triangle instead

* fix race condition between annotation creation and mutation

* make sure notebook tags run in e2e

* address PR comments

* Handle missing objects gracefully  (#5399)

* Handle missing object errors for display layouts
* Handle missing object errors for Overlay Plots
* Add check for this.config
* Add try/catch statement & check if obj is missing
* Changed console.error to console.warn
* Lint fix
* Fix for this.metadata.value is undefined
* Add e2e test
* Update comment text
* Add reload check and @private, verify console.warn
* Redid assignment and metadata check
* Fix typo
* Changed assignment and metadata check
* Redid checks for isMissing(object)
* Lint fix

* Backmerge e2e code coverage changes and fixes into release/2.0.5 (#5431)

* [Telemetry Collections] Respect "Latest" Strategy Option (#5421)

* Respect latest strategy in Telemetry Collections to limit potential memory growth.

* fix sourcemaps (#5373)

Co-authored-by: John Hill <john.c.hill@nasa.gov>

* Debounce status summary (#5448)

Co-authored-by: John Hill <john.c.hill@nasa.gov>

* No gauge (#5451)

* Installed gauge plugin by default
* Make gauge part of standard install in e2e suite and add restrictednotebook

Co-authored-by: Andrew Henry <akhenry@gmail.com>

* [CouchDB] Always subscribe to the CouchDB changes feed (#5434)

* Add unknown state, remove maintenance state

* Handle all CouchDB status codes

- Set unknown status if we receive an unhandled code

* Include status code in error messages

* SharedWorker can send unknown status

* Add test for unknown status

* Always subscribe to CouchDB changes feed

- Always subscribe to the CouchDB changes feed, even if there are no observable objects, since we are also checking the status of CouchDB via this feed.

* Update indicator status if not using SharedWorker

* Start listening to changes feed on first request

* fix test

* adjust test to hopefully avoid race condition

* lint

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Scott Bell <scott@traclabs.com>

* Fix for Fault Management Visual Bugs  (#5376)

* Closes #5365
* General visual improvements

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>

* fix pathing (#5452)

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* [Static Root] Static Root Plugin not loading (#5455)

* Log if hitting falsy leafValue

* Add some logging

* Remove logs and specify null/undefined

Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* Allow endpoints with a single enum metadata value in Bar/Line graphs (#5443)

* If there is only 1 metadata value, set yKey to none. Also, fix bug for determining the name of a metadata value
* Update tests for enum metadata values

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>

* [Remote Clock] Wait for first tick and recalculate historical request bounds (#5433)

* Updated to ES6 class
* added request intercept functionality to telemetry api, added a request interceptor for remote clock
* add remoteClock e2e test stub

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>

* Fix for missing object for LADTableSet (#5458)

* Handle missing object errors for display layouts

Co-authored-by: Andrew Henry <akhenry@gmail.com>

* removing the call for default import now that TelemetryAPI is an ES6 class (#5461)

* [Remote Clock] Fix requestInterceptor typo (#5462)

* Fix typo in telemetry request interceptor

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>

* Lock model (#5457)

* Lock event Model to prevent reactification

* de-reactify all the things

* Make API properties writable to allow test mocks to override them

* Fix merge conflict

* Added plot interceptor for missing series config (#5422)

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>

* Remove performance marks (#5465)

* Remove performance marks

* Retain performance mark in view large. It doesn't happen very often and it's needed for an automated performance test

* Use timeKey for time comparison (#5471)

* Fix couchdb no response (#5474)

* Update the creation date only when the document is created for the first time

* If there is no response from a bulk get, couch db has issues

* Check the response - if it's null, don't apply interceptors

* Fix shelved alarms (#5479)

* Fix the logic around shelved alarms

* Remove application router listener

* Release 2.0.5 UI and Gauge fixes (#5470)

* Various UI fixes
- Tweak to Gauge properties form for clarity and usability.
- Fix Gauge 'dial' type not obeying "Show units" property setting, closes #5325.
- Tweaks to Operator Status UI label and layout for clarity.
- Changed name and description of Graph object for clarity and consistency.
- Fixed CSS classing that was coloring Export menu items text incorrectly.
- Fixed icon-to-text vertical alignment in `.c-object-label`.
- Fix for broken layout in imagery local controls (brightness, layers, magnification).

Co-authored-by: Andrew Henry <akhenry@gmail.com>

* Stacked plot interceptor rename (#5468)

* Rename stacked plot interceptor and move to folder

Co-authored-by: Andrew Henry <akhenry@gmail.com>

* Clear data when time bounds are changed (#5482)

* Clear data when time bounds are changed
Also react to clear data action
Ensure that the yKey is set to 'none' if there is no range with array Values

* Refactor trace updates to a method

* get rid of root (#5483)

* Do not pass onPartialResponse option on to upstream telemetry (#5486)

* Fix all of the e2e tests (#5477)

* Fix timer test

* be explicit about the warnings text

* add full suite to CI to enable CircleCI Checks

* add back in devtool=false for CI env so firefox tests run

* add framework suite

* Don't install webpack HMR in CI

* Fix playwright version installs

* exclude HMR if running tests in any environment

- use NODE_ENV=TEST to exclude webpack HMR

- deparameterize some of the playwright configs

* use lower-case 'test'

* timer hover fix

* conditionally skip for firefox due to missing console events

* increase timeouts to give time for mutation

* no need to close save banner

* remove devtool setting

* revert

* update snapshots

* disable video to save some resources

* use one worker

* more timeouts :)

* Remove `browser.close()` and `page.close()` as it was breaking other tests

* Remove unnecessary awaits and fix func call syntax

* Fix image reset test

* fix restrictedNotebook tests

* revert playwright-ci.config settings

* increase timeout for polling imagery test

* remove unnecessary waits

* disable notebook lock test for chrome-beta as its unreliable

- remove some unnecessary 'wait for save banner' logic

- remove unused await

- mark imagery test as slow in chrome-beta

* LINT!! *shakes fist*

* don't run full e2e suite per commit

* disable video in all configs

* add flakey zoom comment

* exclude webpack HMR in non-development modes

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>

* lint fix

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joshi <simplyrender@gmail.com>
Co-authored-by: Jesse Mazzella <ozyx@users.noreply.github.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Alize Nguyen <alizenguyen@gmail.com>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
Co-authored-by: rukmini-bose <48999852+rukmini-bose@users.noreply.github.com>
Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-07-14 14:52:28 -07:00
43a4bf9606 Update circleCI to run more frequently during Build 6 (#5427)
* Update circleCI to run more frequently during Build 6

* Updated config.yml
2022-07-03 10:31:08 -07:00
0f352087f5 e2e Code Coverage and all test fixes (#5328)
Add e2e code coverage and fix all tests
2022-06-30 11:50:47 -07:00
8ce15521de Bump painterro from 1.2.56 to 1.2.78 (#5195)
Bumps [painterro](https://github.com/devforth/painterro) from 1.2.56 to 1.2.78.
- [Release notes](https://github.com/devforth/painterro/releases)
- [Changelog](https://github.com/devforth/painterro/blob/master/Release.md)
- [Commits](https://github.com/devforth/painterro/compare/v1.2.56...v1.2.78)

---
updated-dependencies:
- dependency-name: painterro
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-30 08:52:11 -07:00
c0b0c44dc2 Bump babel-loader from 8.2.3 to 8.2.5 (#5266)
Bumps [babel-loader](https://github.com/babel/babel-loader) from 8.2.3 to 8.2.5.
- [Release notes](https://github.com/babel/babel-loader/releases)
- [Changelog](https://github.com/babel/babel-loader/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel-loader/compare/v8.2.3...v8.2.5)

---
updated-dependencies:
- dependency-name: babel-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-29 00:17:12 +00:00
b9a644cd4f Bump eslint from 8.13.0 to 8.18.0 (#5400)
Bumps [eslint](https://github.com/eslint/eslint) from 8.13.0 to 8.18.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.13.0...v8.18.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-28 16:45:56 -07:00
1afc5ef245 Bump sass-loader from 12.6.0 to 13.0.2 (#5396)
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 12.6.0 to 13.0.2.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v12.6.0...v13.0.2)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-28 09:48:58 -07:00
34442c53c6 Update version for 2.1.0 (#5364)
* Bump d3-selection from 1.3.2 to 3.0.0

Bumps [d3-selection](https://github.com/d3/d3-selection) from 1.3.2 to 3.0.0.
- [Release notes](https://github.com/d3/d3-selection/releases)
- [Commits](https://github.com/d3/d3-selection/compare/v1.3.2...v3.0.0)

---
updated-dependencies:
- dependency-name: d3-selection
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Prepare for sprint 2.1.0

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-21 10:10:52 -07:00
451ca075fe Bump mini-css-extract-plugin from 2.6.0 to 2.6.1 (#5352)
Bumps [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin) from 2.6.0 to 2.6.1.
- [Release notes](https://github.com/webpack-contrib/mini-css-extract-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/mini-css-extract-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/mini-css-extract-plugin/compare/v2.6.0...v2.6.1)

---
updated-dependencies:
- dependency-name: mini-css-extract-plugin
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-15 20:07:52 +00:00
84f1a61a8d Allow dragging of imagery filter sliders when embedded in flexible layout (#5342)
* Fix imagery filter sliders within flexible layout

* Add image filter value checks to e2e test

- Tests if filter values are updated correctly when dragging contrast/brightness sliders on imagery embedded in a flexible layout

* More e2e tests, add aria-role and update selectors

- Add 'toolbar' role for Image controls
2022-06-13 15:24:44 -07:00
ea041aaaf9 Bump webpack-cli from 4.9.2 to 4.10.0 (#5344)
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 4.9.2 to 4.10.0.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/webpack-cli@4.9.2...webpack-cli@4.10.0)

---
updated-dependencies:
- dependency-name: webpack-cli
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-06-13 21:57:56 +00:00
ac9420bfa1 Bump eslint-plugin-vue from 9.1.0 to 9.1.1 (#5343)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 9.1.0 to 9.1.1.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v9.1.0...v9.1.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-13 14:53:30 -07:00
0ebab10578 Bump jasmine-core from 4.1.1 to 4.2.0 (#5332)
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 4.1.1 to 4.2.0.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v4.1.1...v4.2.0)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-13 16:50:46 +00:00
cbdb9fc437 Fix test:watch -- begone, infinite watch loop! (#5337) 2022-06-13 08:40:37 -07:00
63d2246345 Created Example Imagery in Flexible layout test (#5239)
* Created Example Imagery in Flexible layout test

* Updated test to have describe and rebased

* added image to flexview

* Removed old comments

* Cant figure out how to zoom once in flexable layout

* Zoom in and pan left, right, up and down

* Finished

* Lint indentation fix

* Removed dangle comma

* DRY up tests made functions

* Fix lint errors

* Functions failing

* Zoom and pan functions

* Replaced zoom in with function

* Fixed lint errors

* white space

* Removed xpath using css for flexable layout click
2022-06-11 06:45:09 -07:00
78002f0a24 Fixed bug which prevented historical images from loading. (#5271)
* Fixed bug which prevented historical images from loading.

imageLoadDelay variable would be initialized as a string when it's supposed to be initialized as an integer.

* Updated image load delay in E2E test.

* Implemented suggested tweak for parsing image delay.

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-06-09 14:25:33 -07:00
f08fd58486 Add test for imagery filter reset (#5318) 2022-06-09 14:15:21 -07:00
730272e165 Fixes #5303 (#5314)
- Fixed scrambled SVG definitions;
- Removed some unused artwork;

Co-authored-by: Scott Bell <scott@traclabs.com>
2022-06-09 11:54:15 +02:00
0f0c6a7b17 2.0.4 merge into master (#5297)
* 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>

* Update version for 2.0.4 (#5255)

* Eliminate NaN conditions and clear stale duration (#5248)

* Temp source map fix 2.0.4 (#5267)

* use dev mode for production

* mode -> production

* added extra devtool options

* wip

* Imagery Fixes for release/2.0.4 (#5282)

* Fallback for height

* Remove duplicated requestHistory call since setDataTimeContext already invokes it on mount

* Inverted datumIsNotValid and refactored requestHistory

* Remove old datumIsNotValid func

* Return false if datum is falsy

* Corrected brightness/contrast input

* Clone default values to avoid mutation

* Changed index of imageTelemetry to an item within bounds

* Implement clearData test for imagery differently

* x-out clearData tests

Co-authored-by: Joshi <simplyrender@gmail.com>

* Imagery test fixes (#5293)

* Fallback for height

* Remove duplicated requestHistory call since setDataTimeContext already invokes it on mount

* Inverted datumIsNotValid and refactored requestHistory

* Remove old datumIsNotValid func

* Return false if datum is falsy

* Corrected brightness/contrast input

* Clone default values to avoid mutation

* Changed index of imageTelemetry to an item within bounds

* Implement clearData test for imagery differently

* x-out clearData tests

* Set bounds on each test rather than the wrapper

Co-authored-by: Michael Rogers <contact@mhrogers.com>

* Imagery validation fix (#5295)

* Remove check for duplicate images
* Remove commented out code and add TODO

* lint fix

* Add missing tests

* Use the master version and ignore release/2.0.4 changes

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>
2022-06-09 01:06:31 +00:00
370e6a0c37 fixing non functioning render test, boost cov also (#5311) 2022-06-08 17:39:43 -07:00
815506cf17 Demote notebook tests (#5313)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-06-09 00:17:41 +00:00
bdb1867c73 Selection of stacked plot items and customizing them (#5198)
* Adds stacked plot inspector view provider for non subObjects

* Initialize config for telemetry objects that cannot be persisted with the config in the stacked plot
Use events to save telemetry object config changes to the stacked plot
Remove changes that weren't relevant anymore

* Ensure the telemetry objects that cannot be persisted are initialized correctly

* Fixes for selection indication in Stacked Plots
- Better theme constant colors.
- Fixed broken selectors.
- Changes also improve selection editing UI for Display and Flex Layouts.

* Ensure unique colors for stacked plot if they are auto assigned

* Fix bug hiding legend when viewing plots nested within a stacked plot

* Move stacked plots tests to it's own pluginSpec to simplify tests

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Rukmini Bose <rukmini.bose15@gmail.com>
2022-06-08 22:17:40 +00:00
e288fdffea Fixes #3756 (#5192)
- Tweaks to image CSS to allow context click access.
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-06-08 21:47:51 +00:00
194060f30a [Flexible Layout] Unit test for rendering the view (#5308)
* flex layout render test to boost coverage
2022-06-08 13:58:49 -07:00
45bc317a59 [e2e] Add clarity to console.error failures (#5304)
- Create a separate assert for each message

- Format the `ConsoleMessage` to provide location, line, and col numbers
2022-06-08 13:05:08 -07:00
e103ea44d8 [Fault Management] Fix class case issue not showing icon (#5298)
* fixing capital class name not triggering fault severity icon

* using computed value
2022-06-08 19:45:39 +02:00
d13d7dc8f3 Allows drag and dropping plans into timelist (#5300)
* Bump d3-selection from 1.3.2 to 3.0.0

Bumps [d3-selection](https://github.com/d3/d3-selection) from 1.3.2 to 3.0.0.
- [Release notes](https://github.com/d3/d3-selection/releases)
- [Commits](https://github.com/d3/d3-selection/compare/v1.3.2...v3.0.0)

---
updated-dependencies:
- dependency-name: d3-selection
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Don't require a plan file for timelist
Allow dropping a plan to timelist

* Rename methods and remove unused code

* Fix typo

* Boost test coverage to get over 52%

* Adds tests for webPage plugin

* Adds more tests for filtering

* Adds more filtering tests

* Removes one test

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-08 09:41:25 -07:00
05e3303828 Fault management (#5212)
* Implements Fault Management

Co-authored-by: Rukmini Bose <rukmini.bose15@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2022-06-06 13:43:20 -07:00
aa0fc70e54 Add CouchDB Status Indicator (#5276)
* Add CouchStatusIndicator

* Remove stray console log

* convert `request()` to async

* refactor

* Fix typo

* Instantiate indicator outside of object provider

- Add 'Maintenance' CouchDB status

- Add text and description for all CouchDB statuses

- Some code cleanup

* Update comments

* Add default cases to switches, make method private

* Small status text change

* Make jsdoc @private methods actually private

* Handle commonly encountered CouchDB errors

- Handle 400, 401, 404, 412, 500 status codes

- Remove `MAINTENANCE` status from this logic since that can only be assumed if receiving a 404 status from GET `{db}/_up`

* Fix tests: avoid directly calling private method

* Add some tests for indicator status

* Update docs for `CouchStatusIndicator`

* Update docs for new `CouchObjectProvider` method

* Make method private

* fix the oopsie

* Add test for 'pending' state

Co-authored-by: Scott Bell <scott@traclabs.com>
2022-06-06 18:49:47 +02:00
9fbb695379 [Restricted Notebook] Creating new Restricted Notebook type (#5173)
* added/removed status for locked, will not work with current one status per domain object setup
* setting restricted right away based on nb type
* added confirmation dialog for locking a page

* Styling for restricted Notebook
- Markup, CSS and content changes for lock button and locked message.
- Removed "Note book Type" property from NotebookType.js.
* have a version of entry template that has no listeners for locked items
* cleaning up page and section components
* making sure basic notebook stuff is installed at least once
* updating data transfer values for locked page entries, fixing page and section selection from edits
* adding locked flag to search result entries
* fixing uneditable section/page names
* cleaning up updateName function for page/section names
* removing install of restricted notebook
* updating confirmation dialog
* updating tests for new export structur
- New symbols glyph and SVG for the Shift Log. IMPORTANT: OVERRIDE ANY MERGE CONFLICTS WITH THIS COMMIT!

* made create button items dynamic each time the button is clicked, this will pick up any new types added after the create menu is created

* removing dynamic create menu list

* found a way to add the plugin before openmct.start is called
* making create items dynamic to include types added after openmct is started
* more e2e tests for restricted notebook

* updates from PR reviews, also fixed error in mct-tree thrown by not checking for an element

* plain notebook tests

* More testcase definition

* actually removing notebook object to test

* removing dupes

* checking if agent exists before relying on it... it was breaking tests with errors

* updating for new browser agent code

* fixing linting errors

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-06-04 09:06:07 -07:00
584d11a2ef Expose Stacked Plot view (#5290) 2022-06-04 00:39:23 -05:00
162cc6bc77 Support for spectral plots via existing bar graphs (#5162)
Spectral plots support

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>
2022-06-03 19:32:32 -07:00
111b0d0d68 Imagery layers (#4968)
* Moved imagery controls to a separate component
* Zoom pan controls moved to component
* Implement adjustments to encapsulate state into ImageryControls
* Track modifier key pressed for layouts
* image control popup open/close fix
* Styling for imagery local controls

Co-authored-by: Michael Rogers <contact@mhrogers.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Jamie Vigliotta <jamie.j.vigliotta@nasa.gov>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-06-04 01:24:43 +00:00
59c0da1b57 Add units to Gauges (#5196)
* Fixes #3197
- Code and styling to allow units display.

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-06-03 21:34:03 +00:00
3c70cf1767 Search & Notebook Tagging - Mct4820 (#5203)
* implement new search and tagging for notebooks
* add example tags, remove inspector reference
* include annotations in mct
* fix performance tests


Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-06-03 13:12:42 -07:00
2aec1ee854 Bump eslint-plugin-vue from 8.5.0 to 9.1.0 (#5287)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 8.5.0 to 9.1.0.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v8.5.0...v9.1.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-06-03 19:59:10 +00:00
ab60e3c3bd Bump vue-eslint-parser from 8.3.0 to 9.0.2 (#5262)
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 8.3.0 to 9.0.2.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v8.3.0...v9.0.2)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-06-03 19:52:04 +00:00
4445d7116a Expose components (#5289)
* export components

* add components to openmct

* add unit tests

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-06-03 12:29:08 -07:00
93abc18001 Bump @babel/eslint-parser from 7.16.3 to 7.18.2 (#5286)
Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.16.3 to 7.18.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.18.2/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-06-03 18:46:57 +00:00
7fb37de721 Bump sass from 1.49.9 to 1.52.2 (#5285)
Bumps [sass](https://github.com/sass/dart-sass) from 1.49.9 to 1.52.2.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.49.9...1.52.2)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-03 10:56:28 -07:00
1c525f50c8 Display Layout toolbar refinements for units (#5197)
* Fixes #3197
- Moved position of hide/show units toggle button.
- Added labels to many toolbar buttons, including hide/show units, hide/show frame, edit text, more.
- Added label to toolbar-toggle-button.vue.
- Added separator between stackOrder button and position inputs.

* Fixes #3197
- Removed unwanted margin in alphanumerics when label is hidden.

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-06-03 16:53:21 +00:00
40a7451064 Fix stackplots static style (#5045)
* [4864] Fixes cancelling edit properties console error
* Get the style receiver when the styleRuleManager is initialized. This prevents any ambiguity about which element should receive the style

* Don't subscribe if the styleRuleManager has been destroyed

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Andrew Henry <andrew.k.henry@nasa.gov>
2022-06-03 16:46:27 +00:00
04ee6f49d6 Remove all non legacy usage of zepto (#5159)
* Removed Zepto
* Added utility functions for compiling HTML templates and toggling classes on and off

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-06-02 15:47:14 -07:00
f5796c984e Operator status (#5179)
* 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>
2022-06-02 13:46:13 -07:00
50b642fabe Updated the dependency injection syntax to use v4 instead of default (#5279) 2022-06-02 18:42:11 +00:00
dfb726b924 Unpause telemetry table on user bounds change (#5186)
* Unpause telemetry table on user bounds change (#5113)

* Add tests for table pause and unpause (#5113)

* Add test (#5113)

- Add test for scenario where table is paused by button but unpaused by user bounds change

* Add test (#5113)

- Add test for table does not unpause on a bounds change caused by a tick

* Add e2e test (#5113)

- Add test for scenario where table is paused by button but unpaused by user bounds change

* Add test (#5113)

- Correctly simulate clock tick

- Exclude datum with new bounds and ensure the correct tableRow count

* Remove 'wait for save banner' logic from e2e test

* Use augmented `test` object in e2e test

- Imports `test` object from `fixtures.js`

* e2e: Add workarounds for chromium issue

* Refactor per code review comments

- Simplify `userBoundsChanged()` logic, get rid of duplicate code

* Just get rid of the unnecessary method

* Respond to code review comments

- `destroyed()` --> `beforeDestroy()`

- Rename `unpausedByButton` parameter to include user bounds change condition

- Remove unused parameter
2022-06-02 10:27:49 -07:00
8d761f729b Add visual test for create menu and display layout icon (#5278)
Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-06-02 07:43:40 -07:00
d88ead502c Sprint 2.0.5 (#5272)
* Bump d3-selection from 1.3.2 to 3.0.0

Bumps [d3-selection](https://github.com/d3/d3-selection) from 1.3.2 to 3.0.0.
- [Release notes](https://github.com/d3/d3-selection/releases)
- [Commits](https://github.com/d3/d3-selection/compare/v1.3.2...v3.0.0)

---
updated-dependencies:
- dependency-name: d3-selection
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Prep for release 2.0.5

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-31 11:15:02 -07:00
c46849b166 MCT 3930 (#4372)
* MCT 3930

* temp push

* fix merge conflicts

* update font size

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-05-27 08:24:55 -07:00
6c71fa01f5 Fix existing eslint warnings, configure eslint to fail on warning (#5258)
* [e2e] Remove unnecessary step with force click

* `test.skip()` -> `test.fixme()`

* Bypass `no-wait-for-timeout` rule for visual tests

* Fail lint step if warnings > 0

* Set default value for `imageUrl`

- Resolves `vue/require-default-prop` warning

* Disable eslint rule `you-dont-need-lodash-underscore/get`

- Disable the rule for now as the implementation they suggest doesn't match lodash `_.get()` functionality, and fails a bunch of our tests. See https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/issues/311 and https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/issues/294

* Disable `no-wait-for-timeout` warning for `visual` folder

* Add rule exception and comments in logPlot test

- Add exception and FIXME for timeout

- Add comment on fixme test to discourage community contribution

* clean up tests

- remove unnecessary awaits

- update locators to use data-testid where possible

- remove unnecessary wait

* Wait for image count condition instead of timeout

* code review comments: use expect.poll()

* readability

* .fixme() + comment instead of .skip()

* disable `.skip()` warning for memleak test suite
2022-05-26 09:45:16 -07:00
c56d458ecb Performance tests, notebook tests, and sharding (#5236)
* Renamed test files
* temp push of performance branch
* comma
* stash
* final
* rename to imagery
* remove old
* stash
* fix name
* Add plain notebook e2e and perf test
* Shard and add perf to ci
* Import fixtures
* 3
* also off by one?
* forgive me, father
* update perf test name
* SHARD
* one mo shot
* add suites
* failfast
* remove allure
* add more testsuites
* full
* skip
* ignore glob
* headless?
* skip audit to save ci time
* temp push
* remove allure
* remove doubled test and update snapshots
* update snapthos 2
* back to ci
* update comments
* remove notebook
* updates
* remove npx playwright install
* Prevent deleting browsers
* circleci comment
* re-enable audit
* Add html reporter
* speed up execution
* speed up CI
* Add performance line to bug report
* PR Comments
* change dir of report
* remove test
* Update Tracepath. Update playwright-percy
* Remove shim
* Improve stability and move html report
* fix space
* Add more slowdown for moveObjects
* Get rid of navigation event
* fix missing events
* review comments
* last change!

Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-05-25 15:45:11 -07:00
f74a35f45a Bump uuid from 3.3.3 to 8.3.2 (#5170) 2022-05-25 16:09:08 -05:00
d9ac0182c3 Remove languages from bug report as we don't need it (#5213)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-05-24 20:10:14 +00:00
7bb108c36b Bump webpack-dev-middleware from 5.3.1 to 5.3.3 (#5242)
Bumps [webpack-dev-middleware](https://github.com/webpack/webpack-dev-middleware) from 5.3.1 to 5.3.3.
- [Release notes](https://github.com/webpack/webpack-dev-middleware/releases)
- [Changelog](https://github.com/webpack/webpack-dev-middleware/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-middleware/compare/v5.3.1...v5.3.3)

---
updated-dependencies:
- dependency-name: webpack-dev-middleware
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-05-24 19:28:04 +00:00
77804cff75 Bump @percy/cli from 1.0.4 to 1.2.1 (#5244)
Bumps [@percy/cli](https://github.com/percy/cli/tree/HEAD/packages/cli) from 1.0.4 to 1.2.1.
- [Release notes](https://github.com/percy/cli/releases)
- [Commits](https://github.com/percy/cli/commits/v1.2.1/packages/cli)

---
updated-dependencies:
- dependency-name: "@percy/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-05-24 19:06:32 +00:00
2d73296b36 Do not install Chart plugin by default (#5163)
* Do not install Chart plugin by default (#5088)

* Install Chart plugin in development mode (#5088)

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-05-24 19:00:39 +00:00
405418b9d5 Preserve local clock offsets on mode switch, fall back to defaults (#5217) 2022-05-23 14:10:59 -07:00
f999b9e12b Bump sinon from 13.0.1 to 14.0.0 (#5243)
Bumps [sinon](https://github.com/sinonjs/sinon) from 13.0.1 to 14.0.0.
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md)
- [Commits](https://github.com/sinonjs/sinon/compare/v13.0.1...v14.0.0)

---
updated-dependencies:
- dependency-name: sinon
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-05-23 16:37:01 +00:00
664ba399ea Bump karma from 6.3.18 to 6.3.20 (#5241)
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.18 to 6.3.20.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.18...v6.3.20)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-05-23 16:12:59 +00:00
c6078a234a Bump lighthouse from 9.5.0 to 9.6.1 (#5230)
Bumps [lighthouse](https://github.com/GoogleChrome/lighthouse) from 9.5.0 to 9.6.1.
- [Release notes](https://github.com/GoogleChrome/lighthouse/releases)
- [Changelog](https://github.com/GoogleChrome/lighthouse/blob/v9.6.1/changelog.md)
- [Commits](https://github.com/GoogleChrome/lighthouse/compare/v9.5.0...v9.6.1)

---
updated-dependencies:
- dependency-name: lighthouse
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-05-21 11:07:23 -07:00
17c16eba50 Added visual test for capturing the Save Successful Banner (#5237)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-05-20 22:11:32 +00:00
9f9c69ee68 Gauge limits (#5156)
* 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.
* Reverts forced precision for log plots axis labels (#5147)
* [Gauge Plugin] Limits and Composition Issues #5155
* default current value as '--'
* updated as per review comments.
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-05-20 20:28:56 +00:00
037886aa01 Better detection of device orientation based on browser feature availability (#5172)
* Update Agent.isPortrait() utility method (#4875)
* Properly feature detect for orientation APIs (#4875)
* Use Agent to detect device orientation (#4875)
* Tests for display orientation detection (#4875)

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-05-20 19:31:59 +00:00
48916564e4 Refactor plot actions to save space (#5201)
* Move image export actions to 3-dot menu
* Move cursor guide and toggle grid lines to local controls for plots (on hover)
* toggle cursor and gridlines affect all plots in a stacked plot
* Fix tests
* Better message when exporting plots, fixed typo

Co-authored-by: Joe Pea <trusktr@gmail.com>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2022-05-20 18:41:01 +00:00
1ca5271c3e e2e test for image thumbnail visibility and size - 5106 (#5232)
* e2e test for timage thumbnail visibility and size

* Lint fix

* Remove URL comment

* Added comment and assigned selectors to var
2022-05-20 17:26:54 +00:00
6521b888d6 Enable lint enforcement on e2e tests and fix the existing errors (#5229)
* Add `e2e` folder to lint scripts

* Fix or add exceptions to all new linting errors

* fix an oopsie 👀
2022-05-19 16:09:22 -07:00
85fce3c456 Bump jasmine-core from 4.0.1 to 4.1.1 (#5225)
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 4.0.1 to 4.1.1.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v4.0.1...v4.1.1)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-05-19 15:03:41 -07:00
8d577a8958 Removed requestHistory call from mount and clearData method (#5223)
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2022-05-19 20:07:20 +00:00
9c8ee09960 Rename a file tree object trigger an alphabetical reordering (#5187)
* Add observers to domain object and update tree func

* Remove unused argument

Co-authored-by: Michael Rogers <contact@mhrogers.com>
2022-05-19 11:21:33 -04:00
9568da9d5f Fix Example imagery 5158 (#5183)
* Created new project file

* click previous image button

* Zooms left, right, up, down

* Rebased and added my tests back

* Removed expected pause from zoom

* printing var

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-05-19 15:11:12 +00:00
2aa3b810ba Scatter plots (#4881)
* New view for plot underlays
* Update to show markers from data
* Add scatter plot x and y axes configuration
* Add color properties for scatter plots
* Add x and y axis min and max to work with underlays
* Use request API for telemetry (telemetry collections bug)
* Allow zero values
* Add pan and zoom functionality

* Glyphs and text changes for Scatter Plots
IMPORTANT: ANY MERGE CONFLICTS WITH FONT FILES SHOULD OVERRIDE USING THIS COMMIT - DO NOT MERGE CHANGES!
- Changed name to 'Scatter Plot', refined description;
- New icon glyph and SVG bg for `icon-plot-scatter`, font-files updated;
- More clarity added to underlay min/max form labels for clarity;

* Glyphs and text changes for Scatter Plots
- Add updated Icomoon file;

* Inspector refinements for Scatter Plots
- Consolidated Inspector section layout;
- Improved ColorSwatch.vue code using <template> tags to allow less brittle CSS styling;
- Improved Inspector CSS to remove overly specific selectors for `grid-row` elements;

* Enable indeendent time conductor
* Add button to remove scatter plot underlay
* Adds tests for scatter plot
* Modded look and icon of file remove button

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>
2022-05-19 14:01:33 +00:00
1cdbb34e21 Notebook entry tweaks for #4954 (#5036)
* Notebook entry tweaks for #4954
- Standardized entry layout;
- Colors, styles and padding refinements for entry elements;

Co-authored-by: Andrew Henry <andrew.k.henry@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-05-18 12:08:15 -07:00
95299336d0 New forms code needs tests #4539 (#4758)
* New forms code needs tests #4539

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Joshi <simplyrender@gmail.com>
2022-05-18 09:25:11 -07:00
b8ff5c7f33 Pan/Zoom persistence and pause handling improvements - 5068 (#5188)
* Remove pause on pan/zoom wheel or button input

* Test to ensure that pause mode is not activated during zoom

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-05-18 01:44:16 +00:00
9ede023cfa Bump copy-webpack-plugin from 10.2.0 to 11.0.0 (#5208)
Bumps [copy-webpack-plugin](https://github.com/webpack-contrib/copy-webpack-plugin) from 10.2.0 to 11.0.0.
- [Release notes](https://github.com/webpack-contrib/copy-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/copy-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/copy-webpack-plugin/compare/v10.2.0...v11.0.0)

---
updated-dependencies:
- dependency-name: copy-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-17 13:45:38 -07:00
308e621b5d 4863 - Object.hasOwn unsupported (#4920)
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2022-05-17 11:23:51 -07:00
e6b5870234 Update PR Template to include cases which ignore testing instructions (#5204)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-05-17 18:07:59 +00:00
03e7d912be Warn user if telemetry not all telemetry metadata matches time system (#4996)
* warn user if telemetry not all telemetry metadata matches time system
* create spec file for telemetry collections
* Add tests (#4999)
- Test for warn if metadata does not match active TimeSystem
- Test for no warn if metadata matches active TimeSystem
* unset timeKey if no matching domain found
* Extract errors to constants file and update tests

Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov>
2022-05-16 11:58:36 -07:00
09da373d1c Add console error checking to our e2e suite (#5177)
Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-05-13 10:55:34 -07:00
b8d9e41c01 Bump karma-coverage from 2.1.1 to 2.2.0 (#5181)
Bumps [karma-coverage](https://github.com/karma-runner/karma-coverage) from 2.1.1 to 2.2.0.
- [Release notes](https://github.com/karma-runner/karma-coverage/releases)
- [Changelog](https://github.com/karma-runner/karma-coverage/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma-coverage/compare/v2.1.1...v2.2.0)

---
updated-dependencies:
- dependency-name: karma-coverage
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-10 03:37:05 +00:00
815e7d169c Bump @percy/playwright from 1.0.2 to 1.0.3 (#5174)
Bumps [@percy/playwright](https://github.com/percy/percy-playwright) from 1.0.2 to 1.0.3.
- [Release notes](https://github.com/percy/percy-playwright/releases)
- [Commits](https://github.com/percy/percy-playwright/compare/v1.0.2...v1.0.3)

---
updated-dependencies:
- dependency-name: "@percy/playwright"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-09 20:26:35 -07:00
58387e0902 Prepare for release 2.0.4 (#5176)
* Bump d3-selection from 1.3.2 to 3.0.0

Bumps [d3-selection](https://github.com/d3/d3-selection) from 1.3.2 to 3.0.0.
- [Release notes](https://github.com/d3/d3-selection/releases)
- [Commits](https://github.com/d3/d3-selection/compare/v1.3.2...v3.0.0)

---
updated-dependencies:
- dependency-name: d3-selection
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Prepare for sprint 2.0.4

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-05-09 21:38:49 +00:00
0a0826f87e Bump plotly.js-basic-dist from 2.5.0 to 2.12.0 (#5153)
* Bump plotly.js-basic-dist, plotly-gl2d from 2.5.0 to 2.12.0

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-05-09 21:28:43 +00:00
e063442d8c Bump d3-selection from 1.3.2 to 3.0.0 (#5009)
* Bump d3-selection, d3-scale and d3-axis from 1.3.2 to 3.x.x

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joshi <simplyrender@gmail.com>
2022-05-09 20:58:12 +00:00
6a5823ab5c Fix all e2e tests (#5168)
Fix all e2e tests
2022-05-09 20:25:21 +00:00
0493e5ae3c Bump moment from 2.29.1 to 2.29.3 (#5109)
Bumps [moment](https://github.com/moment/moment) from 2.29.1 to 2.29.3.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/2.29.3/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.29.1...2.29.3)

---
updated-dependencies:
- dependency-name: moment
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-05-07 09:40:10 -07:00
24f13b6249 Time conductor real time 4914 (#5169)
* Created Time counductor input fields real-time mode

* Added click timespan button and click local clock button

* Click time offset button, input time offset in seconds

* Click the check button

* Verify time was updated on start time offset, click preceding now button

* Verify time was updated on preceding time offset button

* Added testing instructions as comment as testcase guide

* Typo in test name

* Updated Verify time was updated on time offset button to awaits

* Updated  Verify time was updated on preceding time offset button to awaits
2022-05-07 16:05:22 +00:00
221fb4d6bf [e2e] Update playwright eslint rules (#5141)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-05-06 15:42:49 +00:00
257742b45b Update the path of local.ini (#5165)
Modified the instructions to reference the homebrew location of `local.ini`

Co-authored-by: Scott Bell <scott@traclabs.com>
2022-05-05 13:09:22 -05:00
44edec4f04 [e2e]: added test for creating and moving objects (#5128)
* added test for creating and moving objects

* Refactored and cleaned up test code

* Removed extra await in expect

* Clean up playwright default text in waits and nav

* Finished test file with second test

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-05-05 10:39:33 -07:00
ab4d0dd37f [e2e] Fix some of the plot tests (#5158)
* small general fixes

* Rename testsuite and use snapshot alias

* remove only

* Add some more determinism by waiting for Save Banner

* rename

* reduce time to fail

* add determinism

* log the process

Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-05-04 09:15:39 -07:00
c089a4760d 2.0.3 merge to master (#5157)
* 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>
2022-05-03 11:09:12 -07:00
b77a4066f2 Use navigator platform to display separate for Linux OS - 4848 (#5115)
* Regex match the linux platform and display separate message

* Added test for different alt test based on OS in userAgent

* Simplify to use full navigator string instead of navigator.platform or userAgentData.platform

* Use userAgent string

* Test.skip depending on OS

* Remove .only after confirming test

* Adjust the skip logic

* Fix Flake

* halfbaked implementation

* Updated test to use os specific hotkeys and check for correct text

* Remove test.only

* Delete old tests

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-05-03 17:18:06 +00:00
20d7e80502 Bump github/codeql-action from 1 to 2 (#5110)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 1 to 2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-03 15:31:51 +00:00
d63fec51a7 [Build] Update CircleCI Dependency to fix flakey downloads (#5123) 2022-05-02 17:34:07 -07:00
d30c4fcb53 Add Gauge plugin #4896, add edit mode (#5118)
* Add Gauge plugin #4896, add edit mode
2022-04-26 14:32:23 -07:00
fff3ce0acf [Telemetry Collection] Telemetry table excluding start and end bound values #5095 (#5096) 2022-04-23 01:49:38 +00:00
db5cb2517f Telemetry Table performance marks (#5107)
Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
2022-04-22 17:49:50 -07:00
5236f1c796 Sort and merge incoming telemetry (#5042)
* use sort and merge sorted strategy for incoming data
* add shortcut for merging to beginning or end of existing rows

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-04-22 23:51:47 +00:00
1ed253cb07 Show image thumbnails in layout views - 4884 (#5099)
* Only show thumbnails if image view is > 400px high

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2022-04-22 16:14:59 -07:00
a6553ba010 Delete gauge.e2eSpec.js (#5105)
Deletes the erroneously committed e2e spec for gauges.

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-04-22 22:20:15 +00:00
cf6bc5be2d Search fix identifier (#4947)
* use identifier not key for object get calls
* re-index on composition or name changes only
* search should account for namespaces

Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2022-04-22 15:15:37 -07:00
a53a3a0297 Add gauge 4896 (#4919)
* Add new Gauge component

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-04-22 14:58:08 -07:00
402cd15726 Log plots 2 / custom ticks (#4931)
* add some types to XAxisModel

* Add UI to toggle log mode.

* handle autoscale toggle for logMode

* add log plot tests

* test log ticks work after refresh

* add an initial manually-created visual snapshot test of log plot chart

* update plot unit tests for log mode

* remove scale variable for now

* make v-for keys unique per template to avoid a small performance hazard of v-for markup in the same subtree of a template having clashing keys (Vue quirk)

Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-04-20 14:28:46 -07:00
a5580912e3 fix a couple flaky tests (#5061)
* fix: forgot to increase maxDiffPixels for one snapshot test, making it more chance to flake. let's see if this work

* hopefully fix PerformanceIndicator test flakes

* hopefully actually fix PerfIndicator test this time

* ok, *finally* fix PerfIndicator test... hopefully...

* simplify PerfIndicator test to check only for positive fps value
2022-04-20 10:41:09 -07:00
54d1b8991c [Build] Add support for node18 (#5091) 2022-04-19 15:05:08 -07:00
7b6acee793 Bump karma-spec-reporter from 0.0.33 to 0.0.34 (#5086)
Bumps [karma-spec-reporter](https://github.com/tmcgee123/karma-spec-reporter) from 0.0.33 to 0.0.34.
- [Release notes](https://github.com/tmcgee123/karma-spec-reporter/releases)
- [Commits](https://github.com/tmcgee123/karma-spec-reporter/compare/v0.0.33...v0.0.34)

---
updated-dependencies:
- dependency-name: karma-spec-reporter
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-04-19 21:21:23 +00:00
04e1c60e5c Prepare for 2.0.3 release (#5087)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-04-19 18:53:38 +00:00
91bcd78d40 fix preview by checking before accessing key, fix delay of resize, by using leading:true option of debounce (#5054) 2022-04-19 18:34:26 +00:00
a3c0e073c8 Plots y axis and legend fixes (#5062)
* [5058] Change the unit if the yKey changes after initialization

* [5057] Show y axis label when more than one series is present with the same range value

* Fix typo for model length check

Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
2022-04-19 17:37:01 +00:00
21ae9f45c1 Bump resolve-url-loader from 4.0.0 to 5.0.0 (#4870)
Bumps [resolve-url-loader](https://github.com/bholloway/resolve-url-loader/tree/HEAD/packages/resolve-url-loader) from 4.0.0 to 5.0.0.
- [Release notes](https://github.com/bholloway/resolve-url-loader/releases)
- [Changelog](https://github.com/bholloway/resolve-url-loader/blob/v5/packages/resolve-url-loader/CHANGELOG.md)
- [Commits](https://github.com/bholloway/resolve-url-loader/commits/5.0.0/packages/resolve-url-loader)

---
updated-dependencies:
- dependency-name: resolve-url-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Nikhil Mandlik <nikhil.k.mandlik@nasa.gov>
2022-04-18 15:48:03 -07:00
0a40c8dd0b Bump moment-duration-format from 2.2.2 to 2.3.2 (#5010)
Bumps [moment-duration-format](https://github.com/jsmreese/moment-duration-format) from 2.2.2 to 2.3.2.
- [Release notes](https://github.com/jsmreese/moment-duration-format/releases)
- [Commits](https://github.com/jsmreese/moment-duration-format/compare/2.2.2...2.3.2)

---
updated-dependencies:
- dependency-name: moment-duration-format
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-04-17 20:18:13 +00:00
ef1ea8e712 Bump actions/upload-artifact from 2 to 3 (#5049)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2 to 3.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-04-17 19:53:45 +00:00
5c4fad77ff Bump karma from 6.3.17 to 6.3.18 (#5071)
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.17 to 6.3.18.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.17...v6.3.18)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-16 10:26:40 -07:00
dbac9e6cd2 Bump vue-eslint-parser from 8.2.0 to 8.3.0 (#5065)
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 8.2.0 to 8.3.0.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v8.2.0...v8.3.0)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-14 17:22:30 -07:00
4b7bcf9c89 Bump eslint from 8.11.0 to 8.13.0 (#5056)
Bumps [eslint](https://github.com/eslint/eslint) from 8.11.0 to 8.13.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.11.0...v8.13.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-04-14 16:39:07 +00:00
2b42abd495 Update package.json (#5050)
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2022-04-14 09:10:02 -07:00
1f2102b845 Fix duration to milliseconds converter (#5064) 2022-04-14 08:27:38 -07:00
2ccb90aa41 De-reactify tables (#5046) 2022-04-11 14:34:52 -07:00
525496fbca fix: autoscale turned off could cause errors (#5040)
* fix: autoscale turned off could cause errors

* remove commented code

* add tests for plot ticks

* make sure autoscale tests use a certain window size so they work consistently

* add commented code to use once playwright snapshot testing is fixed

* default the user selected range to the current range prior to when they turn off autoscale

* add snapshot tests for plots autoscale turned off test
2022-04-11 11:22:44 -07:00
47099786cb release 2.0.2 merge to master (#5044)
* Fix version number

* temp remove e2e-ci until percy fix (#5032)

* [Imagery] Improve View Large Action Performance (#5024)

* added the ability to pass the element you would like to enlarge to the view large action
* Example of performance marks (#5027)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Andrew Henry <andrew.k.henry@nasa.gov>

* [Notebooks] Transactions for entry creation/editing (#4917)

* adding transactions to notebook entry editing

Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Andrew Henry <andrew.k.henry@nasa.gov>

* Revert "temp remove e2e-ci until percy fix (#5032)" (#5047)

This reverts commit 5b4ba7772a.

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Andrew Henry <andrew.k.henry@nasa.gov>
2022-04-08 11:35:34 -07:00
3a11291a3b Set flex direction to row reverse to right-align imagery thumbnails (#4934)
* Set flex direction to row reverse so thumbnails are right-aligned

* Flex direction to justify content

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-04-06 11:45:01 -05:00
476f1b2579 Freshness Indicators (#5002)
* Added animation-delay and animation-duration properties to inline styles

* Accept config options from plugin

* Lint fix

* Lint remove trailing space

* Lint: blank line

* Make default values consistent

* Removal of default css and cleanup

* Updated the default values for image freshness

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-04-06 16:26:00 +00:00
6153ad8e1e Add new timelist view and plugin (#4766)
* Add new timelist view and plugin
* Add inspector properties
* calculate list bounds to show/hide events
* Add timer to track 'Now' for timelist
* Styling for Timelist view

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2022-04-05 14:48:32 -07:00
77c0b16050 [Build] Update broken transitive percy package and override core-js (#5030)
* Update package.json

* Update package.json

* Update package.json

* override percy/cli install and move core-js

* Update package.json

* published fix

* Attempt without specific dependency

* Attempt without specific dependency

* revert

Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-04-05 13:41:33 -07:00
d19088cec6 Conditional styles for stacked plots (#4965) 2022-03-31 14:47:58 -07:00
43afb39e56 Added soft assertion for exampleImagery e2e (#5021) 2022-03-30 14:16:59 -07:00
cd8c332fb5 Bump @types/jasmine from 3.10.4 to 4.0.1 (#5018)
Bumps [@types/jasmine](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jasmine) from 3.10.4 to 4.0.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jasmine)

---
updated-dependencies:
- dependency-name: "@types/jasmine"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-30 21:11:51 +00:00
b899475939 Bump mini-css-extract-plugin from 2.4.5 to 2.6.0 (#4926)
Bumps [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin) from 2.4.5 to 2.6.0.
- [Release notes](https://github.com/webpack-contrib/mini-css-extract-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/mini-css-extract-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/mini-css-extract-plugin/compare/v2.4.5...v2.6.0)

---
updated-dependencies:
- dependency-name: mini-css-extract-plugin
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2022-03-30 13:03:12 -07:00
cc1f7659f9 Bump sass-loader from 12.4.0 to 12.6.0 (#4871)
* Bump sass-loader from 12.4.0 to 12.6.0

Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 12.4.0 to 12.6.0.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v12.4.0...v12.6.0)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* update sass": "1.49.9"

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2022-03-30 18:04:40 +00:00
0d5539be96 Bump moment-timezone from 0.5.28 to 0.5.34 (#5005)
Bumps [moment-timezone](https://github.com/moment/moment-timezone) from 0.5.28 to 0.5.34.
- [Release notes](https://github.com/moment/moment-timezone/releases)
- [Changelog](https://github.com/moment/moment-timezone/blob/develop/changelog.md)
- [Commits](https://github.com/moment/moment-timezone/compare/0.5.28...0.5.34)

---
updated-dependencies:
- dependency-name: moment-timezone
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-30 11:00:07 -07:00
0a511e6155 remove file loader as dependency (#5012) 2022-03-30 18:58:26 +02:00
47b6d19de8 Bump webpack-dev-middleware from 3.7.3 to 5.3.1 (#4829)
* Bump webpack-dev-middleware from 3.7.3 to 5.3.1

Bumps [webpack-dev-middleware](https://github.com/webpack/webpack-dev-middleware) from 3.7.3 to 5.3.1.
- [Release notes](https://github.com/webpack/webpack-dev-middleware/releases)
- [Changelog](https://github.com/webpack/webpack-dev-middleware/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-middleware/compare/v3.7.3...v5.3.1)

---
updated-dependencies:
- dependency-name: webpack-dev-middleware
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Fixed config to support updated webpack-dev-middleware

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-03-30 00:58:49 +00:00
3fd93f47bc Remove html-loader (#4991)
* Bump html-loader from 0.5.5 to 3.1.0

Bumps [html-loader](https://github.com/webpack-contrib/html-loader) from 0.5.5 to 3.1.0.
- [Release notes](https://github.com/webpack-contrib/html-loader/releases)
- [Changelog](https://github.com/webpack-contrib/html-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/html-loader/compare/v0.5.5...v3.1.0)

---
updated-dependencies:
- dependency-name: html-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix asset loading and make clean idempotent

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-03-29 23:11:15 +00:00
651e61954c Type annotations (#4789)
* add some types to XAxisModel

* some more type defs and small code tweaks while getting familiar with plots

* more type annotations and a few small tweaks

* more type annotations and small tweaks to make types show

* add mocha types

* Add karma and jasmine, too

* further simplify plot canvas creation

* further simplify plot canvas creation

* update types, avoid runtime behavior in type definition that breaks SeriesCollection

* undo the changes to MctChart, improve it later

* lint fix

Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2022-03-29 14:39:49 -07:00
d30ec4c757 Bump sass from 1.49.0 to 1.49.9 (#4985)
Bumps [sass](https://github.com/sass/dart-sass) from 1.49.0 to 1.49.9.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.49.0...1.49.9)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Henry <andrew.k.henry@nasa.gov>
2022-03-28 21:01:11 -07:00
3c24733476 Update package.json (#5004) 2022-03-28 17:32:05 -07:00
04d00fac3d relax text assertion to be any number (#5001) 2022-03-28 11:20:55 -07:00
150909d4b9 [Build] Remove testing and support for node12 (#4963)
* Remove all node12 testing other than platform

* add lighthouse to our deps now that 12 is deprecated

* removing 12 from platform pr

* Updated config.yml

Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-03-25 18:11:41 +00:00
2b599a7ff4 Fix Cursor Grab while panning (#4957)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-03-25 11:07:05 -07:00
824a597825 remove raw-loader as a dependency (#4998)
* remove raw-loader as a dependency

* move clock to correct dir and response to canvas clicking
2022-03-25 09:13:10 -07:00
cf5edf2db0 [clock] Timezone dropdown will collapse when clicked outside or on dropdown icon again (#4956)
* Fix timezone dropdown collapse issue

* Dropdown should collapse when click outside

* Fix Lint error

* add e2e test for autocomplete

* updates based of code review

* Typo fixed

* Modification based on review

Co-authored-by: Scott Bell <scott@traclabs.com>
2022-03-24 13:10:32 +01:00
0705d321da invert npmignore to include what we want (#4605)
* invert npmignore to include what we want
* remove line for no-longer-existent src/**/*.spec.js files from npmignore
* cleanup npmignore comments
* remove platform dirs from npmignore, they were removed from the repo
* remove one more platform reference from npmignore
* publish example/ and app.js, at least for now

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2022-03-23 22:37:36 +00:00
dad0768d57 Prepare for sprint 2.0.2 (#4990)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-03-23 22:32:37 +00:00
9643dbe918 Bump @percy/cli from 1.0.0-beta.75 to 1.0.0-beta.76 (#4989)
Bumps [@percy/cli](https://github.com/percy/cli/tree/HEAD/packages/cli) from 1.0.0-beta.75 to 1.0.0-beta.76.
- [Release notes](https://github.com/percy/cli/releases)
- [Commits](https://github.com/percy/cli/commits/v1.0.0-beta.76/packages/cli)

---
updated-dependencies:
- dependency-name: "@percy/cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-03-23 22:00:32 +00:00
594f9d3e9a 2.0.1 release merged into master (#4971)
* 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>
2022-03-23 14:53:39 -07:00
0f9e727675 34 - Image Pan and Zoom (#4736) 2022-03-23 21:10:50 +00:00
0cf30940c8 Bump karma-chrome-launcher from 3.1.0 to 3.1.1 (#4987)
Bumps [karma-chrome-launcher](https://github.com/karma-runner/karma-chrome-launcher) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/karma-runner/karma-chrome-launcher/releases)
- [Changelog](https://github.com/karma-runner/karma-chrome-launcher/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma-chrome-launcher/compare/v3.1.0...v3.1.1)

---
updated-dependencies:
- dependency-name: karma-chrome-launcher
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-03-23 19:37:49 +00:00
3a2381b90b Bump webpack-hot-middleware from 2.22.3 to 2.25.1 (#4969)
Bumps [webpack-hot-middleware](https://github.com/webpack-contrib/webpack-hot-middleware) from 2.22.3 to 2.25.1.
- [Release notes](https://github.com/webpack-contrib/webpack-hot-middleware/releases)
- [Commits](https://github.com/webpack-contrib/webpack-hot-middleware/compare/v2.22.3...v2.25.1)

---
updated-dependencies:
- dependency-name: webpack-hot-middleware
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-23 18:30:55 +00:00
94def56bcb Bump request from 2.69.0 to 2.88.2 (#4982)
Bumps [request](https://github.com/request/request) from 2.69.0 to 2.88.2.
- [Release notes](https://github.com/request/request/releases)
- [Changelog](https://github.com/request/request/blob/master/CHANGELOG.md)
- [Commits](https://github.com/request/request/commits)

---
updated-dependencies:
- dependency-name: request
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-03-23 16:21:04 +00:00
93a796353d Bump printj from 1.2.1 to 1.3.1 (#4981)
Bumps [printj](https://github.com/SheetJS/printj) from 1.2.1 to 1.3.1.
- [Release notes](https://github.com/SheetJS/printj/releases)
- [Commits](https://github.com/SheetJS/printj/commits)

---
updated-dependencies:
- dependency-name: printj
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-23 08:03:37 -07:00
18ff16052a Bump jasmine-core from 4.0.0 to 4.0.1 (#4980)
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v4.0.0...v4.0.1)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-22 21:00:28 -07:00
f1c7fa337d Bump raw-loader from 0.5.1 to 4.0.2 (#4978)
Bumps [raw-loader](https://github.com/webpack-contrib/raw-loader) from 0.5.1 to 4.0.2.
- [Release notes](https://github.com/webpack-contrib/raw-loader/releases)
- [Changelog](https://github.com/webpack-contrib/raw-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/raw-loader/commits/v4.0.2)

---
updated-dependencies:
- dependency-name: raw-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-03-23 03:29:04 +00:00
557f29f9bb bump git-rev-sync and add tests (#4959)
Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-03-22 20:20:39 -07:00
255ebc9a37 Bump core-js from 3.20.3 to 3.21.1 (#4970)
Bumps [core-js](https://github.com/zloirock/core-js) from 3.20.3 to 3.21.1.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/compare/v3.20.3...v3.21.1)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-22 18:03:09 -07:00
ca7fbe58e3 code coverage with babel istanbul (#4649)
* WIP add instanbul code coverage to vue files

* move webpack coverage config to a separate file for test:coverage, pin dependencies, remove istanbul-instrumenter-loader

* dont include node_modules in babel config, it breaks istanbul for some reason

* ignore spec files from coverage

* document coverage files, remove unused karma config

* use test instead of test:coverage in config.yml, disable code and link to issue to enable coverage in Vue <template>s
2022-03-22 16:04:23 -07:00
b347f35892 Bump file-loader from 6.1.0 to 6.2.0 (#4834)
Bumps [file-loader](https://github.com/webpack-contrib/file-loader) from 6.1.0 to 6.2.0.
- [Release notes](https://github.com/webpack-contrib/file-loader/releases)
- [Changelog](https://github.com/webpack-contrib/file-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/file-loader/compare/v6.1.0...v6.2.0)

---
updated-dependencies:
- dependency-name: file-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-03-22 13:33:02 -07:00
28d5d72834 Event Generator now shows data in fixed time mode (#4883)
* fixed issue and added tests
* exclude leaky test
* ignore case when looking for testing instructions
2022-03-21 15:37:49 -07:00
0df33730f7 on route change, calling showTab (#4955) 2022-03-21 16:29:47 -05:00
7b2ff8fa15 [Docs] add browserlist and linting capability (#4811)
* add browserlist to package.json

* add browserlist linting

* add eslint compat package

* Add blurb about browser support

* add ios safari

* remove node

* add comment and simple disable

Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Scott Bell <scott@traclabs.com>
2022-03-21 20:27:18 +01:00
d80b692354 Update eslint (#4554)
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 7.20.0 to 8.0.3.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v7.20.0...v8.0.3)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
* bump eslint to 8.11.0
* bump eslint-plugin-vue to 8.5.0
* disable eslint rule for multi-word component names. TODO enable it and follow conventions

Co-authored-by: Nikhil Mandlik <nikhil.k.mandlik@nasa.gov>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-03-21 11:40:35 -07:00
4205abdc80 Add Example Generator end to end test (#4949)
* add test

* added name to test and changed comment
2022-03-18 06:57:50 -07:00
492ff2fa64 [e2e] Persistence tests (#4943)
* initial setup for createButton e2e test

* insignificant change

* export as json

* import tests

* added first of two tests

* add stub

* fixme

* move objects

* added test for menu options for non persistable items

* removing "only" for debuggin test

* removing debug code

* soft assertion for multiple expects

Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-03-17 14:30:45 -07:00
93a81a1369 [CI] Update GHA to include a specific playwright dependency version (#4944)
* Update e2e-pr.yml

* Update e2e-pr.yml

* Update e2e-pr.yml

* visual

Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2022-03-16 22:05:50 +00:00
482d8f392c Domain object properties validation not working always (#4893)
* Domain object properties validation not working always #4849

* stub of a test

* set local execution to chrome

* skip visual test

* use input event for changes and throttle update.

* moved file to correct location

* fixed e2e tests.

Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-03-16 21:53:58 +00:00
67234c70a4 [Build] 🐰🐰🐰 Remove the last carrots 🐰🐰🐰 (#4941)
* [Build] 🐰🐰🐰 Remove the last carrots 🐰🐰🐰

* Update package.json

Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
2022-03-16 21:44:41 +00:00
e9680e975f Form validation error messages are not being displayed properly (#4887)
* Form validation error messages are not being displayed properly #4697

* e2e Tests

* fixed element.checkValidity test

* remove comment

* adding timeconductor tests

* rename

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-03-16 13:54:46 -07:00
e691a89682 Correctly use creatable attribute and persistability when working with domainObjects (#4898)
* 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>
2022-03-14 21:20:06 +01:00
bcd668594d Add source maps to map plan properties to expected properties (#4933) 2022-03-11 10:40:05 -08:00
5471e13d9e Bump @braintree/sanitize-url from 5.0.2 to 6.0.0 (#4928)
Bumps [@braintree/sanitize-url](https://github.com/braintree/sanitize-url) from 5.0.2 to 6.0.0.
- [Release notes](https://github.com/braintree/sanitize-url/releases)
- [Changelog](https://github.com/braintree/sanitize-url/blob/main/CHANGELOG.md)
- [Commits](https://github.com/braintree/sanitize-url/compare/v5.0.2...v6.0.0)

---
updated-dependencies:
- dependency-name: "@braintree/sanitize-url"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-09 19:53:39 -08:00
dae446808e Update with CRUD Operation (#4930)
Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-03-09 06:45:10 -08:00
ee9e47f487 Bump @playwright/test from 1.19.1 to 1.19.2 (#4905)
Bumps [@playwright/test](https://github.com/Microsoft/playwright) from 1.19.1 to 1.19.2.
- [Release notes](https://github.com/Microsoft/playwright/releases)
- [Commits](https://github.com/Microsoft/playwright/compare/v1.19.1...v1.19.2)

---
updated-dependencies:
- dependency-name: "@playwright/test"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-03-08 18:49:48 -08:00
003b1ffede Bump actions/setup-node from 2 to 3 (#4900)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2 to 3.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-07 18:33:18 -08:00
16cb5f3911 [CI] Remove warning output for eslint on platform workflow (#4906) 2022-03-03 14:07:54 -08:00
74b83903c9 Bump actions/checkout from 2 to 3 (#4904)
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-02 09:59:13 -08:00
6a470fba1a Static root plugin not loading after namespace/key changes in OpenMCT #4684
Static root plugin not loading after namespace/key changes in OpenMCT
2022-02-28 11:51:34 -08:00
4e7debabb1 [Notebook] Add active user to entries (#4764)
* if user provider, user added to notebook enntries and snapshot entries, updated code to work with asynnc nature of user api

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2022-02-22 12:37:47 -08:00
384e36920c 3175 - Enable listening to clearData action for Imagery (#4733)
* Add clearData listener for imageryData module

* Remove commented out code

* Updated imagery clear data test

* Adjusted telemetry stub to return empty array if data cleared

* Remove forced test

* Restub telemetry before

* Cleanup and reset clear data boolean after

* Remove double blank line

Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-02-18 08:48:48 -06:00
d4429f9686 Bump cross-env from 6.0.3 to 7.0.3 (#4837)
Bumps [cross-env](https://github.com/kentcdodds/cross-env) from 6.0.3 to 7.0.3.
- [Release notes](https://github.com/kentcdodds/cross-env/releases)
- [Changelog](https://github.com/kentcdodds/cross-env/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kentcdodds/cross-env/compare/v6.0.3...v7.0.3)

---
updated-dependencies:
- dependency-name: cross-env
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-17 10:34:14 -08:00
0b2d08078b [CI] Add windows OS and Mac OS to CI testing (#4840)
* Update e2e tests to run on windows and linux

* Add pr-platform to run against all supported archictures

* Update dependabot to run pr:platform

* Update to run in fail-fast false

* remove x86

* Update pr-platform.yml

Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-02-17 14:52:46 +00:00
3bbc9e1582 [CI] Enable Per PR Lighthouse CI Execution, Run nightly (#4817)
* [CI] Add lighthouse to our deps to track with dependabot

lighthouse ci is still actively maintained and will be following a traditional release model. We should continue to use this package until it's functionality is replaced in playwright

* Add lighthouse to dependencies to track with dependabot

* Allow lighthouse to be triggered from PRs

* Update lighthouse.yml

* add lhci scrript

* bump to 16

* remove from deps until node 18

* document steps and add caching. Revert to 14

* ignore exit codes

* add secret for app

* remove env for baseline

Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2022-02-16 17:12:00 -08:00
af0420361b [CI] Update playwright to 1.19.1 (#4873)
* [CI] Update playwright to 1.19.1

* Update config.yml
2022-02-16 15:12:09 -08:00
896f0ca3f4 Bump moment from 2.25.3 to 2.29.1 (#4869)
Bumps [moment](https://github.com/moment/moment) from 2.25.3 to 2.29.1.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.25.3...2.29.1)

---
updated-dependencies:
- dependency-name: moment
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-16 11:22:51 -08:00
28c5405a01 Bump actions/github-script from 5 to 6 (#4853)
Bumps [actions/github-script](https://github.com/actions/github-script) from 5 to 6.
- [Release notes](https://github.com/actions/github-script/releases)
- [Commits](https://github.com/actions/github-script/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/github-script
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-15 15:31:06 -08:00
d114353556 [CI] Update PR Cop to run on more events (#4855)
* [CI] Update PR Cop to run on more events

* Update prcop.yml

* Update prcop.yml

* Update e2e PR

* Update e2e-visual.yml
2022-02-15 14:13:52 -08:00
f40398807e [CI] Update CI to use node16 by default (#4868)
* Update node versions to 16

* New Line

Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-02-15 14:08:53 -08:00
81f440e1e6 [Docs] Update Github Bug Report Template with envinfo (#4858)
* [Docs] Update Github Bug Report Template with envinfo

* Moving Impact Checklist to bottom so that folks can file and click without markdown x

* Add to npm run scripts
2022-02-15 14:00:37 -08:00
c6d6400131 [CI] Bump playwright to 1.19.0 (#4856)
* bump playwright

* remove playwright dependency and leave playwrite/test

Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-02-15 10:57:24 -06:00
55828af1ec Bump file-saver from 1.3.8 to 2.0.5 (#4830)
* Bump file-saver from 1.3.8 to 2.0.5

Bumps [file-saver](https://github.com/eligrey/FileSaver.js) from 1.3.8 to 2.0.5.
- [Release notes](https://github.com/eligrey/FileSaver.js/releases)
- [Changelog](https://github.com/eligrey/FileSaver.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eligrey/FileSaver.js/commits)

---
updated-dependencies:
- dependency-name: file-saver
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix paths

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Scott Bell <scott@traclabs.com>
2022-02-15 14:07:58 +01:00
34b951f4c6 Bumped dependency versions to fix build issues in Node 16 and later (#4866)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-02-14 17:15:21 -08:00
a7d4006fee Sprint 2.0.1 (#4861)
* Prep for release 1.8.6

* Update version to 2.0.1
2022-02-14 13:00:32 -08:00
a71485f820 Prep for release 1.8.6 (#4859) 2022-02-14 10:13:08 -08:00
058259278c Remove legacy codebase (#4844)
* Remove legacy codebase

* Remove legacy docs

* Fixed memory leak in timer spec

* Remove Angular dependency

* Removed adapter layer

* Removed legacy support plugin from main Open MCT repo

* Restored TelemetryAPI.js which had been inexplicably deleted?

* Fix linting error

* Drop line coverage threshold due to removed code

* Added a section on Open MCT 2.0.0 to the readme
2022-02-11 11:09:58 -08:00
345285b966 [Build] Enforce engine at build time (#4846)
* lock engine

* pin jsdoc to latest to support larger node range

Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-02-10 11:04:30 -08:00
ce98c10145 Separate out object name checking from the sorting function (#4677) 2022-02-09 17:59:56 +00:00
22604220de Bump sinon from 12.0.1 to 13.0.1 (#4835)
Bumps [sinon](https://github.com/sinonjs/sinon) from 12.0.1 to 13.0.1.
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/master/docs/changelog.md)
- [Commits](https://github.com/sinonjs/sinon/compare/v12.0.1...v13.0.1)

---
updated-dependencies:
- dependency-name: sinon
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-08 10:59:21 -08:00
548afda6d7 Bump karma from 6.3.13 to 6.3.15 (#4824)
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.13 to 6.3.15.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.13...v6.3.15)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-08 10:55:26 -08:00
88c96675e4 Bump karma-coverage from 2.1.0 to 2.1.1 (#4823)
Bumps [karma-coverage](https://github.com/karma-runner/karma-coverage) from 2.1.0 to 2.1.1.
- [Release notes](https://github.com/karma-runner/karma-coverage/releases)
- [Changelog](https://github.com/karma-runner/karma-coverage/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma-coverage/compare/v2.1.0...v2.1.1)

---
updated-dependencies:
- dependency-name: karma-coverage
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-08 10:47:16 -08:00
10b97d83ab Bump eslint-plugin-you-dont-need-lodash-underscore from 6.10.0 to 6.12.0 (#4833)
Bumps [eslint-plugin-you-dont-need-lodash-underscore](https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore) from 6.10.0 to 6.12.0.
- [Release notes](https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/releases)
- [Commits](https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore/compare/v6.10.0...v6.12.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-you-dont-need-lodash-underscore
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-02-08 18:43:22 +00:00
7c48ff9088 Bump @playwright/test from 1.18.0 to 1.18.1 (#4825)
Bumps [@playwright/test](https://github.com/Microsoft/playwright) from 1.18.0 to 1.18.1.
- [Release notes](https://github.com/Microsoft/playwright/releases)
- [Commits](https://github.com/Microsoft/playwright/compare/v1.18.0...v1.18.1)

---
updated-dependencies:
- dependency-name: "@playwright/test"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-02-08 18:02:30 +00:00
839e210ac1 Fixes #4810 (#4815)
- Add objectTypeClass property to allow new CSS selector to target Plan object types in Timestrip views.;

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-02-07 21:57:46 +00:00
7209104d05 Fix code scanning alert - Client-side URL redirect #4757 (#4790)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-02-07 13:45:14 -08:00
869c2ab16c [CI] Dependabot to run on all packages. Pin Packages. Remove unused packages (#4795)
* [CI] Dependabot to run on all packages
* Pin dependencies
Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-02-07 12:53:08 -08:00
e434b294b9 Bump karma from 6.3.11 to 6.3.13 (#4816)
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.11 to 6.3.13.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.11...v6.3.13)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-01 12:15:09 -08:00
48b66e0af2 [CI] Update playwright to 1.18.1 (#4805)
* Update package.json
* Update config.yml
2022-01-31 16:19:41 -08:00
54ef9a830e Show all options when clicking arrow in autocomplete form - Mct4578 (#4708)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2022-01-28 13:24:04 -08:00
cd38545267 [Build]npm run clean uses absolute node_modules directory instead of relative (#4801) 2022-01-27 11:00:01 -08:00
8aed21d670 [CI] Update github actions automation to work across forks (#4799)
* Update e2e-pr.yml

* Update e2e-pr.yml
2022-01-27 08:41:33 -08:00
b27f24cc30 Merge release 1.8.4 into master (#4797)
* Update version number (#4759)

* update copyright (#4775)

* Observe changes to sub-objects in flexible layouts. (#4780)

* Get child of flex layout as mutable if possible

* Fix bug when no default notebook defined

* Follow domain object changes for Independent time conductor (#4783)

* Track if domain object changes when independent time conductor is in use.

* fix typo when using fallback template (#4784)

Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-01-27 06:32:47 -08:00
a7df8bf168 Bump eslint-plugin-playwright from 0.7.1 to 0.8.0 (#4792)
Bumps [eslint-plugin-playwright](https://github.com/playwright-community/eslint-plugin-playwright) from 0.7.1 to 0.8.0.
- [Release notes](https://github.com/playwright-community/eslint-plugin-playwright/releases)
- [Commits](https://github.com/playwright-community/eslint-plugin-playwright/compare/v0.7.1...v0.8.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-playwright
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-26 12:34:39 -08:00
ff269ac390 [Docs] Update PR Template warning (#4791)
* [Docs] Update PR Template warning
2022-01-26 19:55:55 +00:00
cdee5e8102 [CI] Update PR Template to remove the colon from Closes (#4785) 2022-01-26 11:34:07 -08:00
159457a52d [Build] Update minimum node12 version (#4779) 2022-01-25 14:06:15 -08:00
d637420da1 Mct4467 (#4468)
* dynamic grid display
* add one more guard
2022-01-25 12:56:51 -08:00
eb4da293c6 [CI]Update dependabot rules again (#4762)
* Update dependabot rules again

* update safeword

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-01-25 14:10:00 +00:00
738fac64b8 Bump vue-eslint-parser from 8.1.0 to 8.2.0 (#4770)
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 8.1.0 to 8.2.0.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v8.1.0...v8.2.0)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-24 15:57:30 -08:00
7703ec0a61 Bump vue-eslint-parser from 8.0.1 to 8.1.0 (#4761)
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 8.0.1 to 8.1.0.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v8.0.1...v8.1.0)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-21 13:36:26 -08:00
52466999b8 Prepare for sprint 1.8.5 (#4760) 2022-01-20 18:57:29 -08:00
45373c56f7 [MCT Tree] Enhance to be used as selection tree as well (#4734)
* removed selector tree, using mct-tree for selctor now, updated style view to use new forms api, update mct-tree to be a selector if need be

* added some extra calculations for height when the tree is being used as a selector in forms

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-01-21 02:46:40 +00:00
91e909bb4a Fix notebook sync (#4738)
* Do not keep fetching default notebook

* Fixes issue where notebooks would stop listening for remote changes.

* Fix issue with notebook merge conflicts
2022-01-20 18:43:17 -08:00
556f762d20 Fix CouchDB search duplicates - Mct4667 (#4688)
* added separate search provider
* add unit test
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-01-20 16:00:06 -08:00
e14b7cd0e2 [UserAPI] [UserIndicator Plugin] [ExampleUserProvider Plugin] New user api and related functionality (#4538)
* Implements User API and example user plugin

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-01-20 13:56:17 -08:00
b1cffd0df3 [CI] Dependabot and PR Cop have conflicts (#4756)
This updates the PR to include a "safe word" for pr cop to ignore PRs opened by the dependabot user
2022-01-20 13:25:57 -08:00
09f25bc525 Bump makaroni4/prcop from 1.0.31 to 1.0.35 (#4755)
Bumps [makaroni4/prcop](https://github.com/makaroni4/prcop) from 1.0.31 to 1.0.35.
- [Release notes](https://github.com/makaroni4/prcop/releases)
- [Commits](https://github.com/makaroni4/prcop/compare/v1.0.31...v1.0.35)

---
updated-dependencies:
- dependency-name: makaroni4/prcop
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-01-20 20:56:33 +00:00
bd406d1a73 update playwright dependencies (#4749)
Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-01-20 20:33:01 +00:00
03380e1846 Snapshot tray is sometimes obscured by long notebooks #4746
also fixes one of the issue mentioned in #3529

Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2022-01-20 12:05:29 -08:00
dcaad40064 release 1.8.3 - master (#4752)
* Fix object creation (#4675)

* Save the object before adding it to the parent so that transaction committing works properly
* Fix object creation - composition policy changes

* use relative path (#4683)

* Notebook Snapshotting to the default Notebook isn't working (#4475)

* Notebook Snapshotting to the default Notebook isn't working #4469

* Check for ref when trying to get the style receiver. (#4687)

Also ensure that the property being displayed in Properties is actually a part of the domainObject.

* Mct 4555 rebased v3 (#4689)

* Preserve the previousFocusedImage for subscription updates, bound change for local and fixed time

* Only preserve previous focused image if paused

* Forcibly reset imageContainer size to prevent aspect ratio distortion

* Remove unneccesary mixin invocation

* Use image history instead of imagehistory size for watcher. Revert other changes

* Added check if last image index is selected

* isPaused instead of paused

Co-authored-by: Michael Rogers <contact@mhrogers.com>

* Snapshot notice link not navigating as expected #4194 (#4686)

* Fix Link Action to accept the right input for validation (#4696)

* Remove snapshot from release version (#4721)

Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Michael Rogers <contact@mhrogers.com>
2022-01-20 11:09:46 -08:00
cf47f7c1b2 Task automation and test improvement (#4673)
* Run full regression suite on PR
* Limit concurrency to 2 workers
* Update PULL_REQUEST_TEMPLATE.md
* Added prcop config

Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-01-20 10:31:06 -08:00
ba2a6030c2 Re-implement the event generator as a new-style plugin - Mct4552 (#4620)
Updates Event Generator to ES6 classes and current API.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-01-20 10:23:40 -08:00
384af89d4c Address marked Security Vulnerability (#4725)
More information here https://github.com/advisories/GHSA-5v2h-r2cx-5xgj

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-01-20 06:17:40 -08:00
324318793d Include note about node version support in the intro install guide (#4732) 2022-01-19 11:45:57 -08:00
f211d3fab0 Reset independent time when domain object changes (#4723) 2022-01-18 12:25:50 -08:00
6aaf4a2c06 Add projects to local config and comment out ipad (#4727)
Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2022-01-18 11:53:05 -08:00
4a9744e916 touch every file on earth to update copyright (#4729)
* 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
2022-01-18 11:27:28 -08:00
05b73bb654 Script to update all copyright dates - Mct4532 (#4715)
* wrote little script

* wrote little script

* added script to update copyright

* include html

* include md

* update script

* captures all copyright now

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-01-18 09:52:24 -08:00
19b3be7ec0 [e2e] Update Playwright config to include MMOC and Ipad (#4717)
Co-authored-by: unlikelyzero <jchill2@gmail.com>
2022-01-14 14:47:35 -08:00
c39593b065 Bump karma from 6.3.10 to 6.3.11 (#4718)
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.10 to 6.3.11.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.10...v6.3.11)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-01-14 10:42:25 -08:00
f62d834384 Update version for sprint (#4724) 2022-01-14 07:43:03 -08:00
7a7202f75b Exclude Spec files from CodeCov - mct4563 (#4714) 2022-01-13 17:07:57 -08:00
6bcc9bfd84 turn off errors from type checking in IDEs by default. Turn it on locally to type check (#4705)
Co-authored-by: Joe Pea <joe.pea@nasa.gov>
2022-01-11 11:40:51 -08:00
f42f291790 Mct4307 Clear data and condition widget tests (#4597)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2022-01-11 10:17:43 -08:00
176e8167f0 Update all playwright dependencies to 1.17.2 (#4706)
* Update config.yml

* Update package.json

* pin colors

* remove colors.js
2022-01-11 07:27:29 -08:00
87d58904b4 Bump karma-spec-reporter from 0.0.32 to 0.0.33 (#4703)
Bumps [karma-spec-reporter](https://github.com/mlex/karma-spec-reporter) from 0.0.32 to 0.0.33.
- [Release notes](https://github.com/mlex/karma-spec-reporter/releases)
- [Commits](https://github.com/mlex/karma-spec-reporter/compare/v0.0.32...v0.0.33)

---
updated-dependencies:
- dependency-name: karma-spec-reporter
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-10 14:56:12 -08:00
ae629a6c8b Bump karma from 6.3.9 to 6.3.10 (#4704)
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.9 to 6.3.10.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.9...v6.3.10)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-10 22:51:19 +00:00
3f575f0ec0 saving sort and timeframe config (#4701) 2022-01-10 12:24:04 -08:00
b3ab56cb57 Move off node10 and add intellisense (#4643)
* Move off node10 and bring in node16

* Update engine lock

* update webpack and add the output.hashFunction option to avoid a potential issue with Node 17 in case the config changes closer to defaults

At the moment there is no error with Node 17 because the config strays from the defaults and avoids the common case.

Also add a tsconfig.json file that enables VS Code and other IDEs to perform type checking on the side. For example now the webpack config file is type checked. This does not impact any existing processes, our build scripts are left untouched and only IDEs will use it for live intellisense and type checking when viewing files (f.e. showing helpful red squiggly underlines on type errors)

* mini-css-extract-plugin

* Update webpack.prod.js

* Update webpack.prod.js

* 15

* Update config.yml

* Updated config.yml

* Updated config.yml

* Updated config.yml

* Update package.json

* comment and EOF

Co-authored-by: Joe Pea <joe.pea@nasa.gov>
Co-authored-by: Joe Pea <trusktr@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-01-07 11:39:25 -08:00
f6934a43c9 Enable independent time conductor for stacked plot and overlay plot and bar graphs (#4646)
* Enable independent time conductor for stacked plot and overlay plot.

* Lint fixes

* Fixes for #4503 and #4606
- Added `flex: 0 0 auto` to toggle switch when in ITC to prevent
element from being crunched when window or frame is very small;

* Add independent time conductor to bar graphs

* Add timeContext to bar graphs

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2022-01-07 10:17:20 -08:00
22a7537974 Fix default plot color palette (#4621) 2022-01-06 11:19:51 -08:00
3620760991 Condition set output label (#4233)
* 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>
2022-01-05 13:54:11 -08:00
88a94c80be Unable to create domain objects (#4672)
* Run full regression suite on PR
* rename job
* specify new testsuites to run
* use newer objects types
* Limit concurrency to 2 workers
* CI!
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: John Hill <jchill2.spam@gmail.com>
2022-01-05 09:57:25 -08:00
2fc0d34b8f [Root Objects] Order by specified priority (#4658)
* Updated objectAPI to support root priority
* Updated to new ES6 module for root registry and updated docs for new priority API and root object priority
* Set "My Items" to default priority of low, for root object order

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2022-01-04 16:34:48 -08:00
d53ca3ec9a grid toggle (#4632)
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Joe Pea <trusktr@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-01-04 15:46:11 -08:00
86e5d10fc1 Add npm badge for the lazy (#4619)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-01-04 11:41:19 -08:00
936b88363c Disable legacy support in openmct dev (#4660)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-01-04 08:32:47 -08:00
38fec73a33 4588 - Removed summary widget creatability and updated composition policy (#4609)
* Removed summary widget creatability and updated composition policy

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-01-04 07:40:09 -08:00
43c2c8543e Fixes for #4623 (#4624)
- New `c-object-view` class;
- Removed CSS class special-casing in ObjectView.vue;
- Removed unused `l-shell__main-object-view` class;
- Fixed CSS selector for Condition Widget display in main view;

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-01-04 06:00:14 -08:00
e8e719e7f7 Update Bug Report format to make visual bug distinction clearer (#4662)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2022-01-04 05:49:14 -08:00
26e70d82b7 Move action issue fix #4663 (#4664) 2022-01-03 17:27:14 -08:00
3a65f75d21 Move all support for the legacy API into a plugin (#4614)
* Make legacy support optional
* Fix order of legacy plugin registration
* Added 'supportComposition' function
* Add composition policy to check that parent supports composition
* Fix memory leaks in timer
2022-01-03 14:21:19 -08:00
51e4c0c836 Actually install the correct version of node (#4655)
Co-authored-by: Joe Pea <trusktr@gmail.com>
2022-01-03 13:44:57 -08:00
bb9c225f23 Lock vue-loader to 15.9.8 to fix build issues (#4653)
* Use a fixed version number for vue-loader to avoid a webpack build issue in some system configurations

* Ask dependabot to keep an eye out for vue-loader updates

Co-authored-by: John Hill <john.c.hill@nasa.gov>
2022-01-03 13:39:51 -08:00
19ec98af79 Bump jasmine-core from 3.99.0 to 4.0.0 (#4651)
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 3.99.0 to 4.0.0.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v3.99.0...v4.0.0)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-03 13:20:45 -08:00
23ead2ceaa [My Items] Make folder name customizable (#4627)
* making my items folder name customizable

Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2021-12-30 16:27:51 -08:00
6a8f4b5d9c webpack stats changed to 'errors-warnings' (#4644) 2021-12-29 17:39:07 -08:00
464bb3b885 [Build] webpack5 upgrade (#4242) 2021-12-30 00:18:48 +00:00
4775c88909 [Snapshots] Blank PNG/JPG image generated for snapshots #4526 (#4612) 2021-12-29 06:41:01 -08:00
722e2e2bb1 Bump babel-eslint from 10.0.3 to 10.1.0 (#4637)
Bumps [babel-eslint](https://github.com/babel/babel-eslint) from 10.0.3 to 10.1.0.
- [Release notes](https://github.com/babel/babel-eslint/releases)
- [Commits](https://github.com/babel/babel-eslint/compare/v10.0.3...v10.1.0)

---
updated-dependencies:
- dependency-name: babel-eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2021-12-28 21:47:05 +00:00
333aa1d6db Bump vue-eslint-parser from 7.11.0 to 8.0.1 (#4636)
Bumps [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser) from 7.11.0 to 8.0.1.
- [Release notes](https://github.com/vuejs/vue-eslint-parser/releases)
- [Commits](https://github.com/vuejs/vue-eslint-parser/compare/v7.11.0...v8.0.1)

---
updated-dependencies:
- dependency-name: vue-eslint-parser
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-28 13:42:43 -08:00
5e92c69fe2 Update the regex on dependabot (#4635) 2021-12-28 09:43:56 -08:00
8ddba2b06f Prepare for sprint 1.8.3 (#4570)
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2021-12-28 07:45:53 -08:00
6f9241c0b1 New import export json action test (#4225)
Co-authored-by: Henry Hsu <henry.hsu@nasa.gov>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: charlesh88 <charles.f.hacskaylo@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
2021-12-27 12:29:57 -08:00
d84808aa68 Bump eslint-plugin-playwright from 0.7.0 to 0.7.1 (#4633)
Bumps [eslint-plugin-playwright](https://github.com/playwright-community/eslint-plugin-playwright) from 0.7.0 to 0.7.1.
- [Release notes](https://github.com/playwright-community/eslint-plugin-playwright/releases)
- [Commits](https://github.com/playwright-community/eslint-plugin-playwright/compare/v0.7.0...v0.7.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-playwright
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-24 10:27:19 -08:00
0df672e470 condition widget (#4628) 2021-12-22 14:24:59 -08:00
c9bc390355 Condition set visual test (#4625)
* ensure we're running one worker at a time for visual tests

* New test for condition sets

* Update testcase name and notes
2021-12-22 14:02:06 -08:00
5b1664f073 Bump eslint-plugin-playwright from 0.6.0 to 0.7.0 (#4622)
Bumps [eslint-plugin-playwright](https://github.com/playwright-community/eslint-plugin-playwright) from 0.6.0 to 0.7.0.
- [Release notes](https://github.com/playwright-community/eslint-plugin-playwright/releases)
- [Commits](https://github.com/playwright-community/eslint-plugin-playwright/compare/v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-playwright
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2021-12-22 12:19:55 -08:00
e634e09e32 [Persistability] Various checks in actions (Edit Properties, ImportFromJSON) (#4587)
Co-authored-by: Joshi <simplyrender@gmail.com>
2021-12-21 14:30:31 -08:00
8e3947e48d Condition set e2e (#4604)
New Condition set test
2021-12-20 12:01:16 -08:00
b1ea6efd45 [OpenMCT Tutorial] Using only Realtime (no historical data) telemetry issue #3641 (#4346)
* Reject promise if telemetryService is undefined
* added error and reformatted
* added notification and error if provider is missing
2021-12-17 17:08:37 -08:00
70f2fad243 1.8.2 merge into master - the version of open mct after the last but equally as important (#4611)
* Release 1.8.2

* Trasactions tests are ids equal fix 1.8.2 (#4593)

* test fix

* return promise on 'onSave'

* "Export as JSON" yielding corrupted data #4577 (#4585)

https://github.com/nasa/openmct/issues/4577

* Fix date picker default time setting (#4581)

Fix mode dropdown position
Fix unlistening of upstream events

* Bar graph composition policy fix to allow condition set creation. (#4598)

* Use image timestamp instead of image index to show large view (#4591)

* Use image timestamp instead of image index to show large view

* Fix failing test

Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2021-12-17 12:57:49 -08:00
2d64813a4f Rewrite local storage (#4583)
* Reimplementation of Local Storage provider

* Added tests

* Remove identifierService mocks from all test specs

* Do not persist identifiers in couch

* Constant rename

* Fix broken test

* Clean up mock window functions

* Updated copyright notice

* Fixed bug in in-memory search indexer
2021-12-17 12:14:35 -08:00
fd0e89ca05 Remove legacy formats (#4531)
* 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>
2021-12-17 09:11:13 -08:00
01d02642e8 Remove legacy type service usage from modern Open MCT codebase (#4534)
* Remove type service from the DefaultMetadataProvider
* Added tests
* Move unknown types to new type registry
* Migrate legacy type telemetry information to new types to obviate need to use type service from new API
* Remove default object, it's not needed any more
* Remove injector from spec
2021-12-15 19:36:01 -08:00
1f588a2a6e Mct4041 - Reimplement in-memory search (#4527)
Re-implements the in-memory search index sans Angular

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: John Hill <jchill2.spam@gmail.com>
2021-12-15 16:13:41 -08:00
e18c7562ae test fix (#4569) 2021-12-14 17:15:01 -08:00
08b1c4ae74 [CI] CircleCI refactor for stability and to simplify troubleshooting (#4566)
* Run more in nightly, jump off of node10 where possible
* Updated config.yml
2021-12-14 13:43:44 -08:00
2488072d6b Independent time contexts follow upstream contexts as needed (#4556)
* Update independent time context APIs to follow upstream time contexts as necessary
* Removes boilerplate from views.
2021-12-13 13:28:17 -08:00
82ea23e20c Legacy dialogservice form fix (#4564)
* Replace all remaining usage of the legacy dialogService under /src/ #4551
* fixed DefaultRootNamePlugin tests
* fix importFromJSONAction tests
2021-12-13 12:42:47 -08:00
a0b02c9684 Transactions tests (#4522)
Adds tests for transactions API

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2021-12-13 12:36:11 -08:00
bba29b083f Merge 1.8.1 into master (#4562)
* 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
2021-12-13 11:19:54 -08:00
7c4258d720 String in our yaml (#4550)
need to specify these lines as strings

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2021-12-08 14:49:32 -08:00
95d30f75ac docs: fix typo (#3544)
* docs: fix typo

transtion -> transition

* docs: fix more typos

Imperitive -> Imperative
persitence -> persistence
specificy -> specify
Imperitive -> Imperative

Signed-off-by: Hollow Man <hollowman@hollowman.ml>

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-12-08 09:16:47 -08:00
db3cfd33af Ignore tests in codecov (#4548)
At the moment, codecov is reporting on missing coverage in Spec.js files, themselves. This should ignore those files
2021-12-08 07:19:30 -08:00
85fe838c04 Remove MCT-Template component (#4537) 2021-12-07 14:07:25 -08:00
6bdea20f9a [4483] Safely lowercase strings for case insensitive comparison (#4499) 2021-12-07 14:01:27 -08:00
159563ce5c Run Percy Nightly and on PR (#4540)
Previously this was only running on wednesdays
2021-12-07 13:07:56 -08:00
0d88bc8531 [Inspector] Display notes in the inspector if there are notes found on the domainObject (#4520)
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2021-12-07 12:47:10 -08:00
8acbcadd5d topic-form-refactor (#4478)
* 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>
2021-12-07 12:27:23 -08:00
e20c7a17d6 Don't package tests or Infra tooling (#4528) 2021-12-07 08:04:56 -08:00
035a1be57d Bump karma-coverage from 2.0.3 to 2.1.0 (#4524)
Bumps [karma-coverage](https://github.com/karma-runner/karma-coverage) from 2.0.3 to 2.1.0.

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-12-06 14:17:45 -08:00
09b49f31ab Forbid condition sets on bar graphs and add a test (#4434)
* forbid condition sets on bar graph
2021-12-06 13:49:28 -08:00
e1e2cf9be8 remove WorkerService (#4484)
* Use bare bones search worker using native Worker
* Remove worker service
* remove unused workers pulled into search bundle

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-12-06 13:27:06 -08:00
84e82d3bda Use Server-Sent Events in the Couch DB adapter (#4427)
* Use SSE instead of chunked HTTP response.

Co-authored-by: Joshi <simplyrender@gmail.com>
2021-12-06 13:22:30 -08:00
7b53cad2c5 [Actions] Update to use isPersistable API Method (#4432)
* added persistance check to edit properties action
* adding persistence check in browse bar as well as reverting passing in openmct in bundle and now passing it in through appliesTo method
* adding other actions that need to be persistable
* adding persistance check to set primary location action

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-12-06 12:42:22 -08:00
420edb75f8 4390 - [UTCTimeFormat] Convert to ES6 Plugin (#4412)
* 4390 - [UTCTimeFormat] Convert to ES6 Plugin

* Added test for the plugin

* change the key propery name from ISO_KEY to UTC_KEY

Co-authored-by: John Hill <john.c.hill@nasa.gov>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2021-12-06 12:29:05 -08:00
749e84611e [Telemetry] Implement Abort Request (#4504)
* Add a requestAbortController for the telemetryAPI and trigger an abort of all requests on navigation via the router.
* Check for the rejection and make sure it's not an abort error to show the error
2021-12-06 12:14:14 -08:00
8eba3a81f3 Add canView logic for telemetry and composition (#4426)
* Add canView logic for telemtry and compositon

* AUse PriorityAPI to set high priority for LADTable views

* Changed high to constant case

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2021-12-06 11:56:17 -08:00
63fabe576c [Code cleanup] Remove legacy about dialog #4038 (#4368)
* WIP plan icon

* MCT 4038

* removed other changes

* added remvoed line

* Update _constants.scss

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2021-12-06 11:29:08 -08:00
11c96796c0 MCT 4087 removed buildInfo (#4392) 2021-12-06 11:26:23 -08:00
5caa5e1a50 [MCT3739] Updating document title when domainObject name mutates (#4367)
* Change document title on BrowseBar or PropertiesDialog change

* Revert update name title mutation

* Added listener for object name mutation

* Remove properties action approach and scope to * instead of name

* Remove extra line break
2021-12-06 10:19:12 -08:00
b9b0cfe0ef Move prerelease deployment to workflow directory (#4523) 2021-12-03 16:44:52 -06:00
bee0527acb npm-prerelease.yml automated workflow (#4108)
* npm-prerelease.yml

Workflow to automatically publish an npmjs package when a Github pre-release is created

* Changes to name and jobs

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-12-01 10:14:02 -08:00
ed3c2f6a56 Missing Token (#4518) 2021-11-30 09:55:25 -08:00
b1c97e51e5 Always check and/or install latest browsers (#4517) 2021-11-30 09:10:55 -08:00
16786a64c1 Bump karma from 6.3.4 to 6.3.9 (#4515)
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.4 to 6.3.9.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.4...v6.3.9)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Hill <john.c.hill@nasa.gov>
2021-11-29 20:47:26 -08:00
e3ad2c98ca Bump karma-firefox-launcher from 2.1.1 to 2.1.2 (#4514)
Bumps [karma-firefox-launcher](https://github.com/karma-runner/karma-firefox-launcher) from 2.1.1 to 2.1.2.
- [Release notes](https://github.com/karma-runner/karma-firefox-launcher/releases)
- [Changelog](https://github.com/karma-runner/karma-firefox-launcher/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma-firefox-launcher/compare/v2.1.1...v2.1.2)

---
updated-dependencies:
- dependency-name: karma-firefox-launcher
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-29 20:35:19 -08:00
0a0d3b20c2 Dependabot cannot run two different npm scans (#4513) 2021-11-29 17:25:54 -08:00
02c2fb5655 Implement e2e functional smoke testing and visual regression testing with playwright (#4456)
* First example of playwright

* Move config

* set junit output

* fix config and update version

* staged changes

* new files

* update to remote dir

* remove remote

* smoke

* Update smoke.spec.js

* Add eslint for playwright

* Add dependabot rule for playwright

* Add adhoc GHA for playwright

* Update tests and fix eslint

* move playwright eslint config to e2e dir

* Add to circle config

* store artifacts

* wrong location for storing artifacts

* slash?

* build before start

* increase timeouts in circle

* remove duplicate build step

* timeout values

* add retries

* reduce retries

* add percy emblem

* added percy

* Adds GHA for adhoc trigger and baseline visual

* Bump and Rev dependabot separte from karma

* update e2e label for additional pr logic

* Ignore playwright changes for codeql

* Update documentation

* Add ability to run all tests on pr label

* eof

* yamlamlaml

* issue instead of pull api

* archive results and include a link in the PR comment

* log context and attempt string concat

* concat fix

* add success/failure options

* add alure reporting

* lock playwright image

Co-authored-by: unlikelyzero <jchill2@gmail.com>
2021-11-29 16:34:47 -08:00
0b02b083c3 Plan state (#4310)
* Add plan state indicators
* Changes to simplify timeline view
* Styling for draft plans
* Adds status to Plan.vue
* Adds tests
* Mods for #4309
- New font and icomoon JSON file - when merging, please override with this version if any conflicts!
- New glyph and bg-icon svg style for plan;
- Updated glyph and bg-icon svg style for timestrip;
- Modified visual approach, glyph, color for `is-status--draft`;
- Updated icon usage for Plan views;
- Updated description for Plan and Timestrip views;

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Michael Rogers <michael@mhrogers.com>
2021-11-29 15:24:11 -08:00
25b3431131 saving the object if it was missing (#4471) 2021-11-16 17:34:11 -08:00
c8723da098 Transaction fix (#4421)
* When transaction is active, objects.get should search in dirty object first.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-11-15 14:20:02 -08:00
933ce7aa3c [#4378] Ensure navigated object check works correctly when path is modified (#4433)
* [#4378] Emit event when router path is set. Handle the event when creating an object

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-11-15 15:35:59 -06:00
8ef3869325 Notebook Objects cannot be created with CouchDB enabled (#4425)
* added null check
* added test coverage for exception that caused bug

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-11-15 14:55:04 -06:00
53f5fdabe5 Mct4207 (#4366)
* MCT 4207
* fix lint

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2021-11-15 11:25:57 -08:00
d10561fc7f Fix security policy typo, and duplicate security issue template entries (#4447)
* Tiny typo
* Remove duped security issue entries
2021-11-10 15:38:13 -08:00
566469e691 [Task] Update our top level security policy (#4429)
* Create SECURITY.md

* Remove unused template

* Add security template to our issue chooser

* Add new issue type for maintenance

* eslint changes

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-11-10 13:33:22 -08:00
6d4a324fca [Timer] Re-implement Timer object in Vue.js (#4311)
* Re-implemented timer and clock and installed as a plugin
* Clock indicator is installed as configuration to clock plugin
* Uses moment

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2021-11-09 14:41:42 -08:00
b8fabb7e73 [MyItems Plugin] Migrate/remove legacy MyItems code into new plugin (#4107)
* removed legacy my items, created my items plugin, moved relevant code to new plugin
* added object api method for checking if a domainObject is a missing object

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-11-05 11:17:49 -07:00
1680c3cc1b example imagery refactor to have configurable image urls and IMAGE_DELAY (#4024)
*Imagery refactor to have configurable image urls and IMAGE_DELAY.
2021-11-05 10:54:12 -07:00
61dd85c704 Sort MyItems alphabetically when building the tree #1717 (#4376)
* Sort MyItems alphabetically when building the tree

* Fixed brace indentation

* Modified tree-item to accept is-new prop for initial highlighting

* Adjusted sort function and properly sort children before splicing treetItems

* Mods for #1717
- Refined color and timing, color is now theme-compliant;
- Added new theme color constants;
- Smoke tested in Espresso and Snow themes;

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2021-11-04 13:35:10 -07:00
980777691a [CI] Add npm audit to the nightly (#4431) 2021-11-04 06:53:55 -07:00
a50c1704e5 [CI] Firefox needs to be defined as FirefoxHeadless (#4415)
* [ci] Firefox needs to be defined as FirefoxHeadless

* Update job names and comments

* Fix circleCI config yaml
2021-11-01 13:21:08 -07:00
98080784a3 [CI] Update dependabot regex to use ruby rules (#4411)
Need to use ruby regex matching. Added more dependencies to monitor.
2021-11-01 10:19:57 -07:00
bf7b672957 [CI] Disable html unit test reporting to increase CI Speed (#4416)
* [CI] Disable html unit test reporting to increase CI Speed

* remove package

* Remove istanbul html reports

* clean up errors

* Update README.md
2021-11-01 09:02:32 -07:00
5dadf6f6fc Prep version for sprint 1.8.1 (#4405) 2021-10-29 18:47:03 -05:00
555db60bf7 1.8.0 merge into master (#4404) 2021-10-29 15:43:11 -07:00
1972ca9ea7 Run Codecov in informational mode (#4409) 2021-10-29 15:09:33 -07:00
1e11bbc2ad Add codecov.io and make general CircleCI Improvements (#4375) 2021-10-29 09:52:47 -07:00
c4a87ae5d7 Dependabot for linting and GHA (#4397)
* Dependabot for linting and GHA

* Update dependabot.yml

* Real-time updates were removed from dependabot beta

* label GHA bumps

* Ignore yaml changes on security scans
2021-10-29 09:22:02 -07:00
4e325fb165 [Tabs] Fix "Eager Load Tabs" option (#4371)
* If eager load is checked, tabs are pre-fetched and kept alive.
* If eager load is not checked, tabs are not pre-fetched, and are not kept alive
2021-10-28 19:09:44 -07:00
e59e4efdf0 Inspect PRs (#4395) 2021-10-28 12:57:48 -07:00
f17fda53a0 Save the object before adding it to the parent so that transaction committing works properly (#4388) 2021-10-28 09:35:53 -07:00
f2dbe6d816 Setting snapshot version for 1.8.0 (#4379) 2021-10-26 15:04:06 -07:00
510d3bd333 1.7.8 master (#4373)
* Notebook conflict auto retry 1.7.7 (#4230)
* Use timeFormatter.parse to get the timestamp of imagery since the source could be something other than key (#4238)
* If there is a pending create request for an id, queue a duplicate request. (#4243)
* [Telemetry Tables] Handling Request Loading (#4245)

* Fix file selection on pressing enter key (#4246)

* starting loading as false, since that makes sense (#4247)

* Hide independent time conductor mode if only 1 mode option is available. (#4250)

* Fix bargraph color selection (#4253)

* snapshot clicked while in edit mode should open in preview mode #4115 (#4257)

* Fix missing object handling in several vues (#4259)

* Flexible Layouts display Condition Sets as their editing/browsing interface (#4179)

* Flexible Layouts display Condition Sets as their editing/browsing interface #4141

* [Telemetry Table] Progress bar tests (#4249)

* Remove alert styling and hide pause button if in Fixed Time mode. (#4263)

* [Table/Collection Fixes] Clearing correctly, no mutating options, no duplicate requests (#4261)

* Condition sets only persist if actively editing (#4262)

* Imagery views should follow time context (#4264)

* Equal stacked plot y widths for all it's sub-plots (#4267)

* Fix Bar Graph related CSS (#4270)

* Bar graph review comment fixes (#4232)

* Mct4196 - Fixes Conditional Styling not being applied when editing a Condition Widget (#4255)

* Fix plot zoom when child of time strip (#4272)

* Resume plot if no pan, zoom, or drag action is taken (#4138) (#4256)

* [Telemetry Collection] No duplicate requests on load (#4274)

* doing the easy thing first (#4278)

* Bargraph time metadata should consider 'source' (#4289)

* Show clicked image in large view (#4280)

* added icon for inspector (#4275)

* Bar graph style nullcheck (#4291)

* Stacked plots need to align the Y axis  (#4286)

* Duplicate Request Fixes (#4295)

* Add braintree sanitize url lib and sanitize form urls (#4296)

* Mct4177 fix for telemetry endpoints with '.' in the key (#4308)

* Remove additional request to load plots when mounted. (#4314)

* Fix plots dup requests (#4324)

* Merging 1.7.8 into master.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Michael Rogers <michael@mhrogers.com>
2021-10-26 13:35:23 -07:00
a908eb1d65 Mct4170 - Give indicators priorities (#4322)
* added priority api with an enum for sane priority defaults
openmct.priority.LOW: -1000. Should always run last.
openmct.priority.DEFAULT: 0. This is the default unless you specify something else.
openmct.priority.HIGH: 1000. Should always run first.

* allow indicators to be sorted by priority
2021-10-25 14:24:03 -07:00
c0bda64927 Mct4337 - CouchDB installation instructions (#4340)
* added rough first draft on installing and configuring couchdb

* second draft of couchdb manual

* made explict the roles to delete

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-10-25 14:07:27 -07:00
d0c5731287 Implement transactions in Object API and retire legacy transactions #4089 (#4195)
* Implement transactions in Object API and retire legacy transactions #4089
* Added `objectAPI.refresh`

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-10-25 13:13:17 -07:00
5eaf222f88 Test time conductor history 4287 (#4321)
Added some extra test for the new implementation of Time Conductor History on PR 4287
* Refractor on testing and Time Conductor
* Update duration.js
Refractor on getPreciseDuration()
2021-10-22 12:21:28 -07:00
0249ab4df5 [StackedPlots] Destroy programmatically created component instances (#4345) 2021-10-22 10:54:46 -07:00
4f8cba160d Router test fix (#3973)
* removed DEPRECATION warnings
* test fixes
* added spec reporter to debug failing tests  and fixed couple specs
* disabled failFast to see all failing tests
* disabled fail test and  change timeoutInterval to 5000
* removed unused debounce import

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-10-21 16:55:34 -07:00
c269e089da Condition Widgets multiple fixes (#4335) 2021-10-21 10:16:41 -07:00
4873f40614 Add clarity to PR Template (#4336)
* Add clarity to PR Template

* one more time

* Update PULL_REQUEST_TEMPLATE.md
2021-10-20 13:13:41 -07:00
10bb9173ec enable lint on circle ci (#4312)
* enable lint on circle ci

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-10-18 15:17:17 -05:00
ea8c9c7cc8 The Object API should propagate out fresh model to any observers when .get() is called #4305 (#4325) 2021-10-18 13:01:41 -07:00
4c9c084eec #4197 - make time conductor history more readable (#4287) 2021-10-13 17:02:47 -07:00
b64ee10812 Fix #4299 (#4300) 2021-10-13 16:42:45 -07:00
ee1ecf43db Fix leftover lint errors/warnings (#4316) 2021-10-13 16:15:23 -07:00
4d8db8eb7c Update Conductor.vue (#4150)
* checking for NaN on pan

Lint resolved

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2021-10-12 14:04:58 -07:00
1b13965200 Fix #3981 (#4302)
* Fix #3981
- Mods to markup and CSS for better approach to overflowing and min-heights;
- WIP!

* Fix #3981
- Refinements to min-height approach;
- CSS cleanups;

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2021-10-07 14:50:54 -05:00
38db8f7fe5 Fix #4090 (#4298)
- HTML/CSS mods to remove button holding element that was blocking clicks,
instead position buttons independently;
- Disabled style now handled better in `show-on-hover` class;
- Removed overly-specific size and positioning defs from cArrowButtonBase mixin;
2021-10-07 10:41:39 -07:00
4ba8f893a6 authors should think about backwards compatibility (#4223)
* authors should think about backwards compatibility

* Add reviewer check for breaking changes
2021-09-23 10:45:07 -05:00
c4b9be18f1 Support for Bar Graphs (#4221)
* Adds new types for Bar Graphs (#4168)
* Adds new spectral test data

Co-authored-by: Scott Bell <scott@traclabs.com>
Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-09-18 13:00:16 -07:00
eabdf6cd04 Independent time conductor (#3988)
* Independent time API implementation
* Independent time conductor in plan view

Co-authored-by: charlesh88 <charles.f.hacskaylo@nasa.gov>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-09-18 09:53:35 -07:00
e56c673005 [Telemetry Collections] Add process method to historical request options (for yield requests) (#4201)
* added processor generator to request options in the telemetry API. Allows progressive yielding of request results.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-09-17 19:50:53 -05:00
dad9f12a5c Imagery view for time strip (#4114)
* Imagery view for time strip

Co-authored-by: charlesh88 <charles.f.hacskaylo@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2021-09-17 20:05:40 -04:00
aa5edb0b83 Flexible inspector properties (#4109)
* inspector properties can be passed in through context
* defaults to the currently hard-coded details (title, type, modified or created)
2021-09-17 16:20:22 -07:00
b315803180 Add linear progress bar to tables (#4204)
* Add linear progress bar to tables
- Stubbed in markup;
- Better CSS anim for clarity;

* Indeterminate progress bar for telemetry tables
- Significant refinements to use ProgressBar.vue component;
- Stubbed in temp computed property for `progressLoad`;
- Better animation approach for indeterminate progress;
- Refined markup and CSS for `c-progress-bar`;

* Indeterminate progress bar for telemetry tables
- Refinements for determinate progress as shown in notification banners;
- Refined look of progress bar for clarity;
- Vue component now uses progressPerc === undefined instead of 'unknown';
- Animation tweaked;

* Changed progress-bar v-if test
- Per PR change suggestion, replace `v-if=progressLoad.progressPerc !== 100`
to `v-if=loading`;
2021-09-17 15:53:00 -07:00
b27317631b Add new glyphs for Bar Chart and Map views (#4219)
- New glyph and background classes for `icon-bar-chart` and
`bg-icon-bar-chart`;
- New glyph and background classes for `icon-map` and
`bg-icon-map`;
2021-09-17 13:11:09 -07:00
953a9daafb Fixes resizing handler error - adds null check (#4218) 2021-09-16 16:10:48 -07:00
63f9cd449f Refactor Angular Clock and Clock Indicator as plugin (#4106)
* clock and clock indicator installed as a plugin
* { enableIndicator: true } to install indicator
* Vue for views
2021-09-15 11:01:40 -07:00
54220f547b WIP (#4213)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-09-14 20:18:33 -04:00
93d967c2b3 Snapshot notice link not navigating as expected #4194 (#4199)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2021-09-14 15:17:31 -07:00
1226459c6f View Large overlay doesn't allow taking Snapshots (#4091)
* Added NotebookMenuSwitcher in preview header
* Use preview component inside viewLargeAction
* Added autoHide flag to overlay API that allows developers to specify whether an overlay should remain visible if other overlays are subsequently triggered (eg. the snapshot overlay)
* When in edit mode, disable navigation link to notebook entry.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-09-13 19:36:14 -05:00
d7c9c9cb98 Snapshot images should use the namespace of the notebook they are being saved to or LocalStorage (#4020)
* Snapshot images should use the namespace of the notebook they are being saved to, or LocalStorage #4007

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2021-09-13 13:44:38 -07:00
2131ef2397 Clear data for objects clears data for all objects
Clear data for objects clears data for all objects #4065
2021-09-10 11:30:54 -07:00
48c22369a1 Fixed memory leak in import-export plugin (#4061) 2021-09-02 15:45:11 -07:00
6506077f4d refactor panes (#4125)
* remove router listeners
* remove some hard-coding
2021-09-02 14:11:05 -07:00
b1b4266ff3 Add automated security scanning to our repo (#4166) 2021-08-30 15:44:25 -07:00
42b0148f93 Add new icon for aggregate telemetry (#4163) 2021-08-30 11:19:47 -07:00
9461ad8edd Add new Ellipse drawing object in Display Layouts (#4153)
* Add new ellipse drawing object to Display Layouts
- Fix test and linting issues;

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2021-08-30 13:29:05 -04:00
40055ba955 Prepare for sprint 1.7.8 (#4156) 2021-08-27 04:55:30 -07:00
9cb85ad176 1.7.7 merge into master (#4155)
* Merge 1.7.7 sprint branch into master

Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Khalid Adil <khalidadil29@gmail.com>
2021-08-27 04:44:23 -07:00
f2b2953a5d [Display Layout] Right click on item acts as sticky move (#4126)
* Added a left click filter to the mousedown events
* Moved ternary logic out of the template
* Move defauts into function params
2021-08-23 16:15:57 -07:00
62de310686 fix: typo spelling grammar (#4095)
* fix: typo spelling grammar
2021-08-23 15:43:58 -07:00
4b9ff67e49 [Notebook] Create Snapshot directly from any frame in a layout #3300 (#4099) 2021-08-23 14:03:49 -07:00
d5e32ec494 [Telemetry Collection] Fixes: abort requests, naming, bindings, errors, time system handling (#4128)
* naming signal correctly for aborint
* updating api call for requesting telemetry collections

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-08-19 17:21:35 -07:00
38880ba3d1 Update job names to be more explicit (#4137)
It's still not clear which jobs pass/fail on tests. This change will update the name of the job which is run to be more explicit that it only pass/fails on the build step
2021-08-19 13:25:07 -07:00
a99ce7733c changed from window resize event, to element ResizeObserver for more accurate tracking of tree size (#4132) 2021-08-18 16:38:48 -07:00
9f48764210 Add Nightly CI Job to Circle to identify flake on master (#4032)
* Nightly job
* Unique job names
2021-08-18 13:16:15 -07:00
a1aaa0dd41 Refractor (#3836)
* Refractor
* Update AgentService.js
* Update ExportAsJSONActionSpec.js
2021-08-18 11:57:47 -07:00
bee15e98c8 Added .npmrc to silence log messages < WARN (#3649)
* Added .npmrc to silence log messages < WARN
2021-08-18 09:31:53 -07:00
092bbe547d Prepare for sprint 1.7.7 (#4127) 2021-08-18 11:56:12 -04:00
6cbe05317c 3788 - Re-implement DeviceClassifier in vanilla JS (#3837)
* Changed AgentService to Agent and exposed in utils
* removed MCTDevice
2021-08-17 10:21:50 -07:00
3b92fcdf6c Prevent extra loading of plots data (#4120) 2021-08-17 09:51:53 -07:00
6dde54bd25 Fix plots performance (#4092)
* Fix no mutating props violation for Browsebar and StyleEditor
* Separate plot series data from the configuration (like it should be!)
2021-08-16 14:21:09 -07:00
359e7377ac Notebook Snapshot menu is only updating section and page names for the editor's view #3982 (#4002)
* 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>
2021-08-12 13:29:01 -07:00
9f4190f781 [Linting] Fix linting errors (#4082) 2021-08-11 15:11:17 -07:00
f3fc991a74 [Telemetry Collections] Add Telemetry Collection Functionality to Telemetry API (#3689)
Adds telemetry collections to the telemetry API

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-08-10 10:36:33 -07:00
2564e75fc9 [Notebook] Example Imagery doesn't capture images #2942 (#2943)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-08-10 10:26:51 -07:00
f42fe78acf 1.7.6 master merge (#4097)
* remove can edit from hyperlink (#4076)

* Add check for stop observing before calling it (#4080)

* Set the yKey value on the series when it's changed (#4083)

* [Imagery] Click on image to get a large view #3582 (#4085)

fixed issue where large imagery view opens only once.

Co-authored-by: Henry Hsu <hhsu0219@gmail.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2021-08-10 07:00:13 -07:00
fe928a1386 [Imagery] Click on image to get a large view #3582 (#4077)
fixed issue where large imagery view opens only once.
2021-08-04 12:57:48 -07:00
b329ed6ed5 Couch object provider performance improvement using SharedWorker (#3993)
* Use the window SharedWorker instead of the WorkerService
* Use relative asset path for Shared Workers
* Remove beforeunload listener on destroy
2021-07-30 15:23:02 -07:00
9b7a0d7e4c Reimplement hyperlink vue (#4062)
* added vue hyperlink plugin
* remove angular code. update target attribute
* Polishing on form styles
- Remove `display: flex` from `.l-shell__main-container` and
`.c-so-view__object-view` CSS - IMPORTANT: NEEDS REGRESSION TESTING!
- Improvements to `.c-hyperlink` CSS;
- Markup cleanups and simplification;
- Remove duped CSS in object-frame.scss, probably result of prior bad
past merge;
* Fixes for object-frame and preview.scss
* Refinement to make hyperlink button have same display behavior as
Condition Widget;
* refactor layout template. update tests
* remove legacy hyperlink
* Updating firefox launcher

Co-authored-by: Henry Hsu <henry.hsu@nasa.gov>
Co-authored-by: charlesh88 <charles.f.hacskaylo@nasa.gov>
2021-07-30 13:49:31 -07:00
5c15e53abb Mct4039 (#4057)
Re-implements ImageExportService as ES6 class instead of Angular managed service.

Co-authored-by: John Hill <jchill2.spam@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-07-29 22:05:18 -07:00
f58b3881f2 Not everything fits into the two types of issue (#4064)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-07-29 17:17:51 -07:00
071a13b219 [Imagery] Click on image to get a large view (#3770)
* [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>
2021-07-29 09:19:07 -07:00
ca66898e51 [Plugin] Remote Clock based off Telemetry (#3998)
* Remote-clock plugin
* Added a default clock class that can be extended by other classes
* Updated local clock to use the parent default clock class
* added a period check to make sure its been a certain amount of time before emitting
Co-authored-by: John Hill <jchill2.spam@gmail.com>
2021-07-28 16:46:08 -07:00
94c7b2343a Add Enhancement request template (#4063)
* Add Enhancement request template

* Link to github discussions

* Update config.yml
2021-07-27 15:02:30 -07:00
c397c336ab [Telemetry Tables] Observe for changes in table configuration (#4053) 2021-07-27 14:08:44 -07:00
eea23f2caf Fix typo in template (#4059) 2021-07-27 11:05:02 -07:00
6665641c02 Update issue templates (#4058)
Add a bug report directly to the project
2021-07-27 10:38:24 -07:00
c3ebf52dd2 Prepare for sprint 1.7.6 (#4052) 2021-07-26 14:04:26 -07:00
f8f2e7da9b Remove deprecated timeline bundle (#4048) 2021-07-23 13:51:32 -07:00
240f58b2d0 [Telemetry API] wrap limits function return in promise if needed (#4044) 2021-07-20 07:25:43 -07:00
7d3baee7b5 URL Params to hide tree and inspector (#3951)
* Add checks and hide panes accordingly, toggle hide params when toggling panes, add params on change event
* add tests

Co-authored-by: Henry Hsu <henry.hsu@nasa.gov>
Co-authored-by: John Hill <jchill2.spam@gmail.com>
2021-07-19 10:01:05 -07:00
1f5cb7ca42 Prevent default on click events for conductor delta buttons (#4022)
* Prevent default on click events for conductor delta buttons
2021-07-15 14:46:53 -07:00
4a7ebe326c Plot view policy fix (#3995)
* deny plot view for non-numeric telemetry

* revert plot type for backwards compatibility
2021-07-14 18:12:26 -07:00
10da314a4a Add resize event and disable pointer events on iframes on trigger of resize (#4016) 2021-07-14 17:32:45 -07:00
b3ceccd7fb temporarily skip test on chrome (#4021) 2021-07-14 15:58:44 -07:00
1bde4c9a0c Update all unit test packages, set node engine rules, new circleci workflow, pin to stable (#3957)
* Update all unit test packages, set node engine rules, new circleci workflow

Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-07-14 09:26:38 -07:00
4b85360446 1.7.4 stable master (#4015) 2021-07-13 13:59:37 -07:00
41b860a547 Fixes for Imagery Snapshotting #3963 (#4001)
* refactored compass structure and code.
* resize image wrapper
* center image properly
* Refactor imagery compass rose as SVG
* Suppress prev/next image arrows from Snapshot

Co-authored-by: Nikhil Mandlik <nikhil.k.mandlik@nasa.gov>
2021-07-09 18:03:11 -07:00
254b3db966 added mock values to compass for example imagery. (#3999) 2021-07-09 15:13:54 -07:00
cbb3f32d1e 1.7.4 into master (#3985)
catching any errors from a user canceling from dialog (#3968)
Fix navigation errors (#3970)
Only add listeners to observables on creation
Do not double destroy mutable objects
Disallow pause and play in time strip view for plots. (#3972)
Update version

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-06-29 09:40:30 -07:00
e3bf72e77f New time conductor popups should be closed by hitting ESC key (#3978) 2021-06-29 09:03:58 -07:00
0b63b782cf Image thumbs autoscroll resumption functionality (#3892)
* add logs for testing

* check autoScroll value

* Add auto scroll button at thumbnails

* add auto scroll button functionality

* turn on auto scroll whenever scroll bar is not at the right end

* check if scroll right when the page load

* update scroll to right condition

* remove resetScroll method, refactor scrollToRight and some cleaning

* check initial status

* remove logs

* Styling for imagery thumbs 'autoscroll resume' button

- Refined look and feel of the approach;
- CSS classes now assigned at the wrapper level;
- Markup changed to allow wrapping of scroll area and button;
- TODO: prevent a drag resize of the main view area from forcing
autoscroll to pause;

* Add tests for auto scroll

* add resize observer for thumb wrapper

* reset scroll bar position when window is resized

* Revert "upgrade to webpack5 (#3871)" (#3907) (#3908)

This reverts commit e1e0eeac56.

Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>

* Check for getlimits api (#3910)

* add debounce and resizing observer to thumbwrapper

* handling resizing window and auto scroll

* 1.clean up comments and logs 2.make variable names more descriptive 3.add scroll to right for play button

* fix eslint formate issue

* update class name in test

* fix eslint format error

* remove a couple variables that were created but not used.

Co-authored-by: Henry Hsu <henry.hsu@nasa.gov>
Co-authored-by: Henry Hsu <hhsu0219@gmail.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
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>
2021-06-29 07:52:27 -07:00
da39fd0c70 Overlay fixes and improvements (#3901)
* Overlay-related fixes
- Prevent navigation when a folder's grid or list view is displayed in
an overlay;

* Overlay-related fixes
- Get rid of theme-based special overlay coloring that was making the
overlay hard to use;
- Add margin to `l-overlay-large` to make it clearer that user is in an
overlay when interacting with that view;
- Refinements to colors and layout in About screens;
2021-06-28 14:35:35 -07:00
96dd581a67 Timestrip plan Inspection (#3863)
* Stub in static HTML for Timestrip Activity Inspection
- Added static markup with placeholder values and display logic;
- Refined approach for Links;
* Refactor duration formatting
* Display activity name when it's available
* Don't use indices for keys
* Don't show properties with no labels
2021-06-28 10:04:54 -07:00
2a1e322230 adding link to discussions in readme to encourage users to showcase their use of Open MCT (#3933)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2021-06-22 09:34:36 -07:00
300b98bd54 Disallow pan, zoom and pause/play controls in time strip view (#3936)
* Disallow pan and zoom when in time strip view

* Disable plot controls in time strip view
2021-06-22 09:25:12 -07:00
c946609d13 Added LGTM code quality badge (#3960)
We score an A, we should flaunt it! (We should also aim for A+).
2021-06-22 09:10:08 -07:00
7ca559fbe4 [Styles] add unit tests (#3557)
* unit tests for inspector styles feature
* add mock capability for local storage

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-06-22 06:50:49 -07:00
71392915c1 Mct3834 (#3962)
* remove redundant code

Co-authored-by: Henry Hsu <henry.hsu@nasa.gov>
2021-06-21 17:23:42 -07:00
2889e88a97 Styling for plot limits (#3917)
* 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>
2021-06-21 16:22:28 -07:00
d56d176aac Issue #3834 Reimplement New Tab action in vanilla JS (#3876)
* [Reimplement] create new action plugin for issue #3834

Co-authored-by mariuszr mariusz.rosinski@gmail.com
Co-authored-by: Henry Hsu <henryhsu@henrys-air.lan>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-06-21 16:11:31 -07:00
925518c83f [Notebooks] Don't save images on the object (#3792)
* Create and store image data into new domain object of type 'notebookSnapshotImage'
* Reduced thumbnail size to 30px
* Image migration script for old notebooks.
* Saves thumbnail image on notebook instead of new object.
2021-06-21 15:42:33 -07:00
fa5aceb7b3 Bind method to 'this' so that its listeners are correctly unbound on destroy (#3948)
* Bind method to 'this' so that its listener can work correctly
* Bind this for toggling subscriptions as well
2021-06-21 10:44:59 -07:00
6755ef4641 Support for remote mutation of Notebooks with Couch DB (#3887)
* Update notebook automatically when modified by another user
* Don't persist selected and default page and section IDs on notebook object
* Fixing object synchronization bugs
* Adding unit tests
* Synchronize notebooks AND plans
* Removed observeEnabled flag

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2021-06-21 10:25:17 -07:00
333e8b5583 [Testing] Resolve all promises (#3829)
* all promises in test specs should be returned

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-06-18 16:06:15 -07:00
9d8a8b36d2 Move duplicate fixes (#3947)
* Changed text of form labels;
* Corrected case of "Location" in Duplicate action;
* changed from objects.mutate to objects.save for duplicate action name change
* handling cancel of move

Co-authored-by: charlesh88 <charles.f.hacskaylo@nasa.gov>
2021-06-17 14:04:47 -07:00
b484a4a959 Initial LighthouseCI Commit (#3906)
* Initial LighthouseCI Commit

Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2021-06-16 11:37:37 -07:00
64e7c62d98 [Style] check if there is an element to style before applying style (#3950)
* check if there is an element to style

* add mmgis (external plugin) type to style exclusion list

* revert b919cf9 to be fixed properly

* reduce code
2021-06-15 16:03:23 -07:00
6483fe2402 Prepare master for Sprint 1.7.4 (#3925) 2021-06-07 11:37:49 -07:00
a123889d6a Pre release for Sprint 1.7.3 (#3924)
* Revert "upgrade to webpack5 (#3871)" (#3907) (#3908)
* [Navigation Tree] Fix composition on closed folders and scrolling for items NOT in tree (#3920)
* Update package.json version and version documentation to include tags for npmjs

Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2021-06-07 11:25:58 -07:00
a40867d544 Revert "upgrade to webpack5 (#3871)" (#3907)
This reverts commit e1e0eeac56.
2021-06-02 07:04:40 -07:00
dbed9262c0 Tree revert refactor (#3886)
* Reverts object tree to expand/collapse tree model
* Retains expanded/collapsed state 
* Adds collapse all feature
2021-06-01 15:47:21 -07:00
43ac66233e [Issue] remove FollowTimerAction, followIndicator and tests (#3855)
Co-authored-by: Henry Hsu <henryhsu@Henrys-MacBook-Air.local>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-05-28 16:06:09 -07:00
04e85c176a Update templates (#3904) 2021-05-28 14:55:36 -07:00
8274c23129 Plots limit lines (#3882) 2021-05-28 14:51:29 -07:00
5fafde5f23 Updates to recognize issue template config (#3902)
* issue template config

* Update PR Template

Co-authored-by: unlikelyzero <jchill2@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-05-28 14:16:56 -07:00
80a6e7f719 Fix erroneously checked in dev code (#3897)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2021-05-28 13:22:11 -07:00
2c13aeecce Make legend configuration properties reactive (#3889)
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2021-05-28 13:13:57 -07:00
ac015c3e45 Updates to the sprint cycle and end of sprint release process (#3878)
* Updates to the sprint cycle and end of sprint release process

* Adds reviewer checklist item for labelling an issue as a bug

* Update Cycle doc with test process changes.

* Update static.md references, add Issue templates

* Updated criticality definition

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: John Hill <jchill2.spam@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-05-28 12:24:14 -07:00
ae1a4bcc6a A change in the parent container's size for plots re-requests telemetry (#3890)
* Use resize obeserver to detect a change in the parent container's size for plots and re-request telemetry
2021-05-28 11:44:56 -07:00
e1e0eeac56 upgrade to webpack5 (#3871)
Upgrade to webpack 5
Changes dependencies to work with webpack 5 as well.
2021-05-27 15:16:03 -07:00
c90dfb2a1f Fix the browser back button in Open MCT (#3526)
Fixes Open MCT back button.

Co-authored-by: Joshi <simplyrender@gmail.com>
2021-05-26 17:00:36 -07:00
1dfa5e5b8c Prepare snapshot for sprint 1.7.3 (#3877)
Co-authored-by: John Hill <jchill2.spam@gmail.com>
2021-05-24 10:54:51 -07:00
99896b72ea Small typo (#3838)
Looks like there is a small typo: `this this object`.

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2021-05-21 15:57:53 -07:00
979ba77c8e Normalize "OK" to uppercase in all dialogs; (#3850)
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2021-05-21 15:38:29 -07:00
aebb5df611 Check that mutation happens only if model has changed (#3751)
* When a mutation is requested, the LegacyObjectAPIInterceptor triggers a second mutatation request - ensure that the model for this 2nd request has some diff from the current model before saving the object.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-05-20 10:01:14 -07:00
605eeff9d7 Plots - remove legacy code (#3814)
* Remove Lecacy plot code
* Adds tests for plots inspector
* Set range max and min to undefined instead of 0
2021-05-20 09:08:50 -07:00
a83ee1f90f Allow context click on Imagery to invoke browser-level Save As... (#3857)
- `pointer-events: none` added to `c-compass` wrapper (which was
blocking the image from catching mouse events), and
`pointer-events: all` added to `c-direction-rose` element;
- Unit tested locally in main view and both types of layouts;
- Fixed indention spacing in file;
2021-05-18 14:42:18 -07:00
fe899cbcc8 New Time Conductor time input for real-time (#3409)
* Time Conductor Real Time input popup

Co-authored-by: Jamie Vigliotta <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-05-12 11:54:10 -07:00
633bac2ed5 Sync time conductor with plots time range (#3843)
* Adds play and pause functionality for plots (not for legacy plots)

* Add time conductor sync gesture to actions. Also fix status css.

Co-authored-by: charlesh88 <charles.f.hacskaylo@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-05-12 10:57:54 -07:00
dacec48aec Update condition sets in fixed timespan mode if the datum's timestamp is valid (#3852) 2021-05-11 19:25:56 -07:00
3ca133c782 Pass objectPath as property to LAD rows (#3870)
Includes some code cleanup
2021-05-11 18:58:17 -07:00
12416b8079 Dynamic sizing for compass rose based on image size (#3826)
* Dynamic sizing for compass rose based on image size

- Compass rose now sizes and positions proportionally to the containing
image, with min and max sizes;
- Refactored computed `compassDimensionsStyle` as
`sizedImageDimensions` for reusability;
- Tweaked sizing of compass ordinals text and North arrow for better
legibility;
- Minor tweaks to element positioning and opacity for better legibility;
- TODO: add unit tests;

* Fix linting and code style

- Fixed lint errors;
- Better variable names;

* Address comments from PR #3826 review:

- Renamed `compassRoseSizing` to `compassRoseSizingClasses` and fixed
function logic;
- Fixed line breaks for code style;
2021-05-11 12:07:44 -07:00
9920e67c83 Regex search tables (#2956)
Support regex searches in table columns

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-05-05 17:50:14 -07:00
0e80a5b8a0 [NIRVSS] Encode imagery metadata into image file names (#3759)
* [NIRVSS] Encode imagery metadata into image file names

* added image name metadata to example.imagery plugin.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-05-05 17:24:31 -07:00
05f9202fe4 Return promise correctly for get calls (#3862) 2021-05-05 15:23:49 -07:00
0da35a44b0 Plots inspector using Vue (#3781) 2021-05-03 12:33:19 -07:00
2305cd2e49 Check if an object is mutable before destroying the mutable (#3825) 2021-04-22 15:33:08 -07:00
b30b6bc94e [Conductor] Add durations to history (#3820)
* added durations to conductor history

* removing commented out moment import

* removing unneccary const

* little change

* reusing code

* addressing pr comments, change 24 hours to one day :) and some formatting issues

* better formatting and deduping

* name change

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2021-04-22 06:38:20 -07:00
564f254652 Implement Couch Search and Request Batching (#3798)
* Implemented search in couch provider

* Promises, not await

* Batch requests

* Only batch if > 1

* Remove legacy Couch adapter

* Cleaned up couch request batching code

* Added test cases

* Code cleanup

* Changes to new and legacy objects API to remove redundant persists due to mutation of modified and persisted timestamps

* Cleaned up couch unit tests

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2021-04-22 06:29:28 -07:00
9fa71244ea [#3789] Destroy mutable objects only if needed (#3799)
* [#3789] Don't observe objects if they are already mutable objects. Add some null checks.
* Don't destroy mutable in Selection.js if it wasn't created in that context.
* Remove * listeners and add null checks
* Don't delete _observers and _globalEventEmitters on $destroy. Pop all items off the _observers list for a mutable domain object.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-04-20 16:47:36 -07:00
8157cdc7e9 Fix importing from JSON file where some property values are null (#3813) 2021-04-20 15:50:29 -07:00
721bdd737a [VIPEROMCT-41] When new telemetry data arrives, don't evaluate criteria that are defined for a different telemtry endpoint. (#3797) 2021-04-20 14:51:44 -07:00
1b57999059 [TextHighlight] Fixed, "not updating when text string changes" (#3796)
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
2021-04-09 12:38:59 -07:00
b7460cef41 Update master to snapshot version of next sprint (#3786) 2021-04-08 12:55:17 -07:00
46f7f6dd04 [Notebook] Fixing pages with no entries breaking search (#3791)
* also added result count to search results
2021-04-06 17:17:38 -07:00
cf2b8b3c8a [Notebook] Search includes sections/pages with no initial entries (#3777) 2021-03-30 19:05:39 -07:00
ac0e1d3161 [Notebook] Improve Search and [TextHighlight] Ability to highlight text (#3760) 2021-03-29 13:47:25 -07:00
f9bd31deee [Menu API] All our drop down menus should use the new menu api #3607 (#3620)
* [Menu API] All our drop down menu's now use the new menu api #3607

Co-authored-by: charlesh88 <charles.f.hacskaylo@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-03-29 10:49:49 -07:00
cf3566742b Updates copyright year to 2021 (#3699)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-03-29 09:56:52 -07:00
b4a87dd07f Add lookahead padding to the plan time axis (#3419)
* Adds 50% padding to the viewBounds.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-03-29 09:08:29 -07:00
e83cfa24c2 Tests for flexible layouts and tabs views (#3768) 2021-03-26 11:50:40 -07:00
86ebd14ae7 "Import as JSON" dialog is not intuitive #3761 (#3763)
* "Import as JSON" dialog is not intuitive #3761

* Fixed styling in Angular form builder

- Fixed select file button;
- Fixed required asterisk color in hint text;
- Updated markup and refined CSS selector;

Co-authored-by: charlesh88 <charles.f.hacskaylo@nasa.gov>
2021-03-26 11:43:02 -07:00
b042d9098d doing correct comparison to find page to delete (#3754) 2021-03-12 15:49:58 -08:00
325f2c4860 Pinch to zoom and wheel zoom work the same way (#3752) 2021-03-12 12:22:22 -08:00
74a516aa9e [Date Picker] Highlight Selected Date (#3678)
* WIP: added color, was not sure correct sass variable, charles... take it from here!

* adding charles name to the comment for posterity

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2021-03-11 10:25:30 -08:00
28e26461cc Change master to 1.6.3 SNAPSHOT (#3749) 2021-03-10 10:40:30 -08:00
cfaaf6b1fe [Imagery] Update to be compatible with VIPER (#3744)
* heading, sun heading, and camera pan  are all absolute directions
* removing roll and pitch keys as they will not be necessary
* proofing against empty historical or realtime ids from config
* adding checks in imagerylayout for missing properties

Co-authored-by: Jamie Vigliotta <jamie.j.vigliotta@nasa.gov>
2021-03-08 15:27:35 -08:00
bffe79ecbd Pass object path when getting views during object creation (#3736) 2021-03-04 10:17:14 -08:00
94d9852339 Force Vue to look for the reactive property and recompute views (#3733)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2021-03-03 15:42:55 -08:00
905e397d3f making sure ALL telemetry for a given indicator is fresh (#3734) 2021-03-03 15:37:49 -08:00
e70a636073 Accept plans from a file OR from JSON object (couchDB) (#3729)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2021-03-03 14:50:48 -08:00
03abb5e5de [Abort Search] Completely Abort Search (#3728)
* added new spacecraftPosition keys and changed old spacecraft keys to spacecraftOriention keys, updated how freshness is determined

* due to tests, added some checks for missing related telemetry before acting on it

* lint fixes

* pr comments, change simple if to Boolean

* checking if search aborted before aggregating search results, which calls getOriginalPath, which calls more gets

* removing erroneous abort signal check
2021-03-03 14:05:17 -08:00
ac20c01233 Fix method name in Plan.vue (#3726) 2021-03-03 13:34:07 -08:00
b8ded0a16e Hide vue plots from showing up in the view-switcher and in the preview window (#3725)
* Hide vue plots from showing up in the view-switcher and in the preview window.
2021-03-03 11:33:31 -08:00
b68f79f427 [Elements Pool][Flexible Layout] Improvements (#3694)
* fix flexible-layout bug

* abstract element item from elements pool

* improve dragging of elements pool

* better dragover handling in elements pool

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2021-03-03 09:50:48 -08:00
221d10d3e6 [Imagery Freshness] Update Telemetry for Imagery Freshness (#3723)
* added new spacecraftPosition keys and changed old spacecraft keys to spacecraftOriention keys, updated how freshness is determined

* due to tests, added some checks for missing related telemetry before acting on it

* lint fixes

* pr comments, change simple if to Boolean
2021-03-02 16:55:27 -08:00
22d32eed1d Tweak plan view (#3724)
* Plan view final sanding for Build 4

- Removed unused selector;
- Changed class pointer for "no-activites" labels, refined text;

* Plan view final sanding for Build 4

- Removed unused selector;
- Changed class pointer for "no-activites" labels, refined text;
2021-03-02 15:36:23 -08:00
5d656f0963 [Abort Search] Ability to Cancel Search Requests (#3716)
* adding first triggers for aborting search

* adding abort capabilities to the path a search request takes through the code

* switching empty args from null to undefined

* adding abortSignal to couchdb provider request function

* minor syntax tweak

* fixing accidental change of code

* simplifying the assignment of fetch options

* add finally to search promises to delete abort controller just in case it is still there

* passing signal in to provider.get not getProvider

* moving the couchdb doc creation out of the argument for request

* removing console log for aborted search error

* lint fix

* adding interceptors to objects.search

* removing the options object and replacing with abort signal

* removing unused variable leftover

* had accidentally removed stringifying the body of the request if present... added back in

* created an applyGetInterceptors function for search and get to use

* created an applyGetInterceptors function for search and get to use

* fixed bug that our TESTS FOUND!!!!
2021-03-02 15:21:34 -08:00
201d622b85 Style Timestrip and Plan views (#3715)
* Time Strip styling WIP

- Plan activity rects now don't use corner radius if smaller than the
radius, and use a minimum width of 1;
- Visual refinements to time axis and swimlanes;
- Refactored CSS-related class names and file `swim-lane` to `swimlane`;

* Compute row span dynamically

* Remove activities only in the current plan when refreshing

* Time Strip styling WIP

- Refinement and consolidation of CSS between c-plan and c-timeline;
- CSS cleanups;

* Time Strip styling WIP

- Added calculated activity text coloring based on background fill
color;

* Fix timestrip time bounds syncing

* Unlisten for bounds

* Update name of css file

* Adds test for time system axis in timestrip

Co-authored-by: Joshi <simplyrender@gmail.com>
2021-03-01 10:15:53 -08:00
3571004f5c Use mutable object for plans (#3712)
* Use mutable object for plans so that they can sync even in time strip views
Allow the name of couch search folder to be configurable

* Move observing of couchdb changes to the _toMutable function

* Fix unit tests

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2021-02-25 15:14:31 -08:00
16249c3790 do not show sun into compass rose if sun heading is undefined (#3713) 2021-02-25 13:22:59 -08:00
5377f0d0b3 moved image info from telemetry datum to separate object with already formatted or calculated properties (#3703) 2021-02-24 19:16:19 -08:00
15778b00a0 Handled chunked response from CouchDB for search results (#3701) 2021-02-24 15:59:41 -08:00
169eec0a51 Time strip view to show different components within a given timeline (#3654)
* Initial commit of plot refactor for vuejs

* Use es6 classes instead of using extend

* Use classList api to add and remove classes

* Remove angular specific event mechanisms

* Refactor plot legend into smaller components

* Refactor moving config into MctPlot component. Fix Legend issues.

* Refactor XAxis and YAxis into their own components

* Remove commented out code

* Remove empty initialize method

* Fix grid lines and initialize function revert.

* Check that plots views are available only to domainObjects that have range and domain

* Make css class a computed property

* Remove unnecessary legacyObject conversion

* Remove comments and commented out code

* Remove use of private for vue methods

* Remove console logs

* Fixes Y-axis ticks display

* Add plots and plans to the time strip view

* Adds stacked plots and overlay plots

* Fix css for stacked plots

* Disable Vue plots

* Rename Stacked plot item component

* Make the time axis a component
Ensure plans and timelines use the time axis component and it is displayed correctly
ensure plots don't display specific controls when in compact mode

* Add missing file

* Revert change to state generator metadata

* Address Review comment: Remove unnecessary event emitted

* Address review comments: Add a note about why nextTick is needed

* Display time systems in time strip view
Update look and feel (css)

* Fix bug with legend when multiple plots are being displayed

* Don't show action buttons for stacked plots

* Changes to plan view to render as a css grid

* Change LinearScale to a class

* Remove duplicated comment

* Adds missing copyright info

* Revert change to stackedplotItem

* Styling for Timestrip view WIP

- Significant mods to markup and CSS to use CSS grid;
- CSS class names changed;

* Styling for Timestrip view WIP

- Temp mods to illustrate design desires for the appearance of the time
axis;

* Layout changes for plan in timestrip view

* Increase style height to match number of stacked plot items

* Fix ticks

* Fix removal of activities

* Remove event listeners on destroy

* Styling for Timestrip view WIP

- VERY WIP trying to make the plan component work properly when dropped
into a Timestrip view, lots of badness that needs to be fixed;
- Refined classes in acivity bars to differentiate between the rect and
its text;

* Show Vue plots only in timestrip view.
Reorder and Remove now works for timestrip objects

* Make swim lanes a component to be reused by time strip and plan views
Rewrite svg rendering to use javascript rather than d3.
Write a prototype of foreign object for svg to render text

* Don't show left and right edges when start or end is out of bounds

* Descriptive name for Plan views

* Adds plan icon and name

* Fixes linting issues

* Adds basic tests

* Fixes broken test.

* Adds new test

* Fix linting errors. Adds tests

* Adds tests

* Adds tests for stacked plots

* Adds more tests

* Removes fdescribe

* Adds tests for y-axis ticks

* Tests for addition of series to plots

* Adds more tests

* Adds cursor guides test

* Adds tests for interceptors

* Adds more plots tests for x and y scale

* Use config store

* Adding goToOriginalAction tests

* Fix tests for plan and time strip views

* Fixes height of SVG

* Fixes broken tests

* Address review comments: remove view options API change.

* Remove commented out code

* Fix tests

* Use the clientWidth of the plan if it's available

* Account for the width of labels in the client width

* Remove unnecessary test code

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-02-24 09:40:57 -08:00
f789775b1c Fixes isMutable error when domainobject is undefined (#3690)
* 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>
2021-02-23 16:51:50 -08:00
fc59a4dce4 [Imagery Plugin] Enhancements - Compass, HUD, Freshness (#3675)
* Adds a compass rose component showing spacecraft and camera pointing direction in images, as well as sun location.
* Adds a "heads up display" component that shows heading at the top of images, as well as sun direction
* Adds freshness indicators for spacecraft and camera position

Co-authored-by: Jamie Vigliotta <jamie.j.vigliotta@nasa.gov>

Co-authored-by: David Tsay <david.e.tsay@nasa.gov>
Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: charlesh88 <charles.f.hacskaylo@nasa.gov>
Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
2021-02-23 11:46:09 -08:00
29128a891d Couchdb object synchronization (#3674)
* Implements ObjectAPI changes to refresh objects when an update is received from the database.
* Populates a virtual folder of plans from CouchDB
* Fixes bug with supportsMutation API call parameters
2021-02-22 18:35:11 -08:00
dd3d4c8c3a remove localStorage from mct-tree (#3696)
* Removed local storage of navigated path in tree
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.com>
2021-02-22 10:33:09 -08:00
4047c888be Mct3528 (#3682)
* MCT-3528: Add Condition Manager changes

its been smoke tested

* Fix bounds getter and amend unit test

* Change fdescribe back to describe

* [Object API] add object provider search (#3610)

* 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

* Upgrades to eslint-plugin-vue 7.5.0 (#3685)

* Preparing for sprint 1.6.2 (#3663)

* [NonEditable Folder Plugin] Default Install, Browse Bar Update, StyleGuide Use (#3676)

* default noneditable folder plugin, change styleguide folders to uneditable folder types, browse bar object name no longer input box if not createable

* moved plugin to mct.js instead of index.html

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>

* Fixes [Flexible Layout] bug with composition (#3680)

* fix delete and composition load
* remove unused remove action
* remove star listener and use computed property

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.com>

* Notebook saved link (#2998)

* https://github.com/nasa/openmct/issues/2859

* create and store link to default notebook in storage and pass it to notification.

* [Notebook] Add link to notebook inside 'Saved to Notebook' notification #2860

* Added custom autoDismissTimeout for into notifications.

* Backwards compatibility fix for old notebook model without link in metadata.

* lint fixes

* added JS Doc description for API changes + changed property names to appropriate function.

* fixed bug due to merging.

* fixed url update loop

Co-authored-by: Andrew Henry <akhenry@gmail.com>

Co-authored-by: David Tsay <3614296+davetsay@users.noreply.github.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-02-22 09:54:01 -08:00
1499286bee Plots refactor to use Vue and es6 instead of angular (#3586)
* Initial commit of plot refactor for vuejs

* Use es6 classes instead of using extend

* Use classList api to add and remove classes

* Remove angular specific event mechanisms

* Refactor plot legend into smaller components

* Refactor moving config into MctPlot component. Fix Legend issues.

* Refactor XAxis and YAxis into their own components

* Remove commented out code

* Remove empty initialize method

* Fix grid lines and initialize function revert.

* Check that plots views are available only to domainObjects that have range and domain

* Make css class a computed property

* Remove unnecessary legacyObject conversion

* Remove comments and commented out code

* Remove use of private for vue methods

* Remove console logs

* Fixes Y-axis ticks display

* Adds stacked plots and overlay plots

* Fix css for stacked plots

* Disable Vue plots

* Rename Stacked plot item component

* Address Review comment: Remove unnecessary event emitted

* Address review comments: Add a note about why nextTick is needed

* Fix bug with legend when multiple plots are being displayed

* Change LinearScale to a class

* Remove duplicated comment

* Adds missing copyright info

* Revert change to stackedplotItem

* Adds basic tests

* Fixes broken test.

* Adds new test

* Fix linting errors. Adds tests

* Adds tests

* Adds tests for stacked plots

* Adds more tests

* Removes fdescribe

* Adds tests for y-axis ticks

* Tests for addition of series to plots

* Adds more tests

* Adds cursor guides test

* Adds tests for interceptors

* Adds more plots tests for x and y scale

* Use config store

* Adding goToOriginalAction tests

* Modified tests to increase coverage, and added teardown for application router

* Fixed linting issues

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-02-19 06:48:17 -08:00
6226763c37 [Navigation Tree] Move "nav up" arrow down one item (#3581)
* moved nav up arrow down one tree item and updated icon
* cleaned up css to be more targeted for up arrow

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
Co-authored-by: charlesh88 <charlesh88@gmail.com>
2021-02-18 09:55:54 -08:00
7623a0648f [Notebook] Press Enter to save notebook entries (#3580)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2021-02-18 09:31:45 -08:00
b7085f7f62 Notebook saved link (#2998)
* https://github.com/nasa/openmct/issues/2859

* create and store link to default notebook in storage and pass it to notification.

* [Notebook] Add link to notebook inside 'Saved to Notebook' notification #2860

* Added custom autoDismissTimeout for into notifications.

* Backwards compatibility fix for old notebook model without link in metadata.

* lint fixes

* added JS Doc description for API changes + changed property names to appropriate function.

* fixed bug due to merging.

* fixed url update loop

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2021-02-17 11:16:45 -08:00
55c851873c Fixes [Flexible Layout] bug with composition (#3680)
* fix delete and composition load
* remove unused remove action
* remove star listener and use computed property

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.com>
2021-02-16 14:05:39 -08:00
2b143dfc0f [NonEditable Folder Plugin] Default Install, Browse Bar Update, StyleGuide Use (#3676)
* default noneditable folder plugin, change styleguide folders to uneditable folder types, browse bar object name no longer input box if not createable

* moved plugin to mct.js instead of index.html

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2021-02-16 11:51:44 -08:00
9405272f3b Preparing for sprint 1.6.2 (#3663) 2021-02-12 13:58:26 -08:00
a9be9f1827 Upgrades to eslint-plugin-vue 7.5.0 (#3685) 2021-02-12 13:46:53 -08:00
abb1a5c75b [Object API] add object provider search (#3610)
* 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
2021-02-12 12:48:34 -08:00
5e2fe7dc42 improve tab loading logic and fix delete tab issue (#3671) 2021-02-09 11:02:11 -08:00
e4d6e90c35 fix preview and navigate on click (#3668) 2021-02-04 17:36:30 -08:00
84d9a525a9 [Maintenance] remove dead code (#3640)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2021-02-03 21:18:11 -08:00
0aca0ce6a6 [Non-Editable Folder Plugin] Created new non-editable folder plugin (#3617)
* new non-edtiable folder plugin as well as updates for folder views to accept this type

* tests for new plugin

* remove fdescribe

* correcting a test expectation

* added a constnats file for folder view types

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2021-02-03 10:00:34 -08:00
c0742d521c Notification api tests (#3651) 2021-01-25 11:50:45 -08:00
92737b43af [API] Changes to mutation API (#3483)
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.
2021-01-17 14:15:09 -08:00
8b0f6885ee Conductor performance improvements (#3622)
* Throttle conductor updates

* Tweak to animation steps

- Changed `steps(12)`` to 15 to align better with clock index positions;

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2021-01-14 13:28:38 -08:00
9af2d15cef Fix tree click preview in edit mode (#3645)
* fix non preview issue
* fix lint warnings that were left over in master
2021-01-14 11:45:28 -08:00
e60d8d08a4 Changing master to 1.6.1-SNAPSHOT (#3642) 2021-01-13 11:14:57 -08:00
3e9b567fce [Navigation Tree] Whole tree item clickable (#3638)
* passing click and context click on tree item down to object label, making the whole tree item interactive

* removed unnecessary code

* WIP: removing propagation prop from view control and just stopping all propagation

* capturing click on tree item and then calling the click handler on objectLabel, this prevents multiple events and handles all clicks in the tree-item

* removing unnecessary ref

* ignoring clicks for view control so it can handle them itself

* made view control class a constant

* replaced class-based checks with ref-based checks

* removing old leftover code
2021-01-11 16:25:29 -08:00
6f51de85db Fix for changed approach to 'type' object (#3636) 2021-01-08 15:27:00 -08:00
f202ae19cb [Search] Index domain object type and provide query lite (index only) option (#3416)
* 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>
2021-01-08 14:16:01 -08:00
668bd75025 Revert "[Navigation Tree] Whole tree item clickable (#3632)" (#3635)
This reverts commit e6e07cf959.
2021-01-08 12:57:39 -08:00
e6e07cf959 [Navigation Tree] Whole tree item clickable (#3632)
* passing click and context click on tree item down to object label, making the whole tree item interactive

* removed unnecessary code
2021-01-08 11:55:43 -08:00
2f8431905f [Navigation Tree] Fixes initial load navigation request breaks if children haven't loaded in yet (#3630)
* changed logic so people cant navigate up tree til initial load has happened, thus ensuring ancestors have been populated for the first time
2021-01-08 09:38:09 -08:00
23aba14dfe [Notebook] Do not persist notebook objects in notebook Local Storage (#3295)
* [Notebook] Do not persist domain objects on notebooks or snapshots #3291
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2021-01-06 15:30:57 -08:00
b0fa955914 [openmct-YAMCS] TelemetryTableRow refactor createNormalizedDatum to include extra datum #3613 (#3614) 2021-01-06 11:38:45 -08:00
98207a3e0d Context click should add a class to tree item (#3619)
* add ability to pass onDestroy callback to menu api show

* fix lint issues

* remove fdescribe

* rename event and variables to contextClickActive

* rename variable to active

* Sanding and polishing CSS related to context-click visual feedback

- Changed CSS `border` approach to `box-shadow` to avoid jumping;
- Removed unwired code and CSS styles for Folder grid and list views;

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: charlesh88 <charlesh88@gmail.com>
2021-01-04 12:57:18 -08:00
26b81345f2 Various Conditionals bug fixes (#3611)
* Don't apply styles on destroy as destroy should not have any side effects

* Don't show undefined if trigger for condition is not available yet

* Force recalculation of condition result if telemetry is removed

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2021-01-04 10:02:43 -08:00
ac2034b243 Adds a simple indicator to display FPS (#3624)
* Adds a simple indicator to display FPS

* ratchet up test coverage threshold
2020-12-28 19:57:36 -08:00
351848ad56 only edit name in browse bar if obj creatable (#3616) 2020-12-22 11:31:30 -08:00
cbac495f93 [LocalTimeSystem] Plugin tests (#3478) 2020-12-18 10:38:02 -08:00
15ef5b7623 [Testing] [Notebook] fix failing notebook tests from three-dot-menu-proto (#3577) 2020-12-18 10:26:20 -08:00
46c7ac944f [Testing] Imagery Plugin Tests (#3606)
* imagery tests initial

* imagery plugin tests

* removing unused code

* added in key events, as well as a utility function for key events

* PR updates
2020-12-18 09:55:51 -08:00
aa4bfab462 Problem copying unitless telemetry values to notebook #3574 (#3589)
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-12-18 09:49:08 -08:00
f5cbb37e5a Fix Inspector-based font size and style controls and menus (#3497)
- Moved CSS rule that was pushing the font style control to the right
side of the Inspector to `l-shell__toolbar` rule definition;
- Fixed `menus-to-left` CSS rule and applied to font size and style
menu controls;
- Added a new `menus-no-icon` style for menus that don't have icons,
applied to font size and style menu controls;
2020-12-17 18:43:58 -08:00
8d9079984a [Verve Imagery] Missing JS imagery class (#3603)
* replacing class that was accidentally deleted

* moved to correct div... aye aye ayeee
2020-12-14 15:42:45 -08:00
41783d8939 Fixed minor issues in Code Guidelines (#3596)
There was a missing semi-colon in a code example (oops!) and incorrect capitalization of the `const` keyword (overzealous word processor).
2020-12-11 15:13:51 -08:00
441ad58fe7 Prepare for sprint 1.5.0 (#3594) 2020-12-11 14:12:52 -08:00
06a6a3f773 [Notebook] Link to snapshot should not be a fully qualified url #3445 (#3576)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2020-12-11 09:41:35 -08:00
52fab78625 [Testing] Fixes console errors while running npm test (#3593)
* ERROR: Error: [$injector:unpr] Unknown provider: exportImageServiceProvider <- exportImageService
* [Vue warn]: Injection "stylesManager" not found
* [Vue warn]: Error in mounted hook: "TypeError: identifier is undefined"
2020-12-10 19:44:51 -08:00
5eb6c15959 [Duplicate Action] Fix Display Layout unwanted duplication issue (#3591)
* 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

* WIP bug fixing

* WIP debugging

* WIP more debuggin

* WIP using parent namespace for all duped objs

* WIP

* WIP
;
;

* cleaning up debugging code

* fixed linting issues

* fixed layout configuration items issue

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-12-10 09:09:25 -08:00
ce8c31cfa4 [Stacked plots] fixes scroll issue and removed redundant calls to backend (#3585)
* fixes scroll issue and removed redundant calls to backend

* change scroll to auto
2020-12-08 10:10:50 -08:00
d80c0eef8e [Actions] Duplicate Action bug fixes (#3578)
* 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

* WIP bug fixing

* WIP debugging

* WIP more debuggin

* WIP using parent namespace for all duped objs

* WIP

* WIP
;
;

* cleaning up debugging code

* fixed linting issues

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-12-07 10:15:41 -08:00
55829dcf05 [Conductor] Remove 24 hour default limit in time conductor (#3512) 2020-12-04 10:34:19 -08:00
d78956327c Action API unit tests (#3527)
* add tests

* add tests for ActionCollection

* add tests for getVisibleActions and getStatusBarActions

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2020-12-02 12:53:34 -08:00
4a0728a55b Navigating to a Notebook snapshot not working #3538 (#3569) 2020-12-02 12:40:35 -08:00
2e1d57aa8c only update selection if selectable has changed (#3573) 2020-12-02 12:00:30 -08:00
1c2b0678be [Notebook] snapshots on plots are empty #3566 (#3567) 2020-12-01 14:14:59 -08:00
6f810add43 replace dots with underscores in save as filenames (#3565) 2020-12-01 11:18:13 -08:00
12727adb16 fix export marked data as csv (#3563) 2020-12-01 09:44:17 -08:00
9da750c3bb Add object interceptor API to allow missing model and missing my-items handling (#3522)
* Extends Object API to allow adding interceptors

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-11-30 10:50:24 -08:00
176226ddef Don't allow Move and Duplicate actions on non creatable objects (#3518)
* Prevent copy and move actions for non creatable objects

* Remove unneeded code

* Remove prototype typo

* Allow duplicating an object only if it is creatable

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-11-25 14:23:12 -08:00
acea18fa70 Move action (#3356)
* 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>
2020-11-24 14:37:28 -08:00
d1656f8561 Notebook localstorage issue (#3545)
* Unable to edit Notebooks (Firefox) #3534
Unable to take a snapshot - snapshot dropdown not working #3533

* Navigating to a Notebook snapshot not working #3538

Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2020-11-24 14:21:36 -08:00
87751e882c Fixed problem preventing alphanumerics from being font styled (#3550)
- Applied missing `u-style-receiver` to markup;
2020-11-24 11:26:20 -08:00
dff393a714 [Actions] New Duplicate Action (#3410)
* 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>
2020-11-23 12:55:27 -08:00
fd9c9aee03 Mod classes to fix default Notebook indicator (#3541)
- Simplified `is-status--*` mixins;
- Cleaned up CSS;
- Removed unused grid-item.scss file;
- Added specific styling for default Notebook grid item;

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-11-23 12:46:56 -08:00
59bf981fb0 Sanding and polishing CSS related to 3 Dot Menu (#3542)
- Increased opacity of `c-icon-button` labels;
- Fixed CSS selector targeting no-icon menu items;
- Hide overflow in `c-so-view` header element to prevent icons extending
 outside very small layout frames;
2020-11-23 12:41:04 -08:00
4bbdac759f check if domainobejct before listening for status (#3539) 2020-11-20 15:27:57 -08:00
13fe7509de [Notebook] can not add snapshots to default notebook #3530 (#3531) 2020-11-20 13:40:59 -08:00
6fd8f6cd43 [VISTA] custom format tokens (#3469)
* [VISTA] custom format tokens #3468

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-11-20 12:17:18 -08:00
6375ecda34 Three Dot Menu Prototype (#3325)
* Three dot menu implementation

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2020-11-19 09:53:06 -08:00
d232dacc65 [Notebook] new entries on brand new notebook not rendered (#3496)
* [Notebook] new entries on brand new notebook not rendered #3488

* Refactored code to 'mutateObject'  from one place only, add page to newly created section immediately,  update entries copy then call mutate to update it inside domainObject.

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-11-19 08:38:14 -08:00
59946e89ef Unset the displayRange when updating yAxis (#3504)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-11-16 11:39:20 -08:00
d75c4b4049 Render grouped activities correctly and redraw without browser refresh when a new file is uploaded. (#3516)
* Ensure that overlap checking only looks at activities within it's own group. This is done by assuming that any rows less than a group's starting row belong to another group.
Observe for changes to a plan and update the plan view accordingly.

* Address review comments

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-11-16 06:20:40 -08:00
30ca4b707d Fix Imagery-related issue for VERVE #301 (#3520)
- Add 'display: flex' where needed to get main image to display in
preview overlay;
2020-11-13 16:09:01 -08:00
27704c9a48 [Testing] Test UTC Time System at plugin level (#3517) 2020-11-13 14:25:58 -08:00
b0203f2272 Preparing master for the next sprint v1.4.1-SNAPSHOT (#3508) 2020-11-09 13:10:50 -08:00
77b720d00d Fix Imagery for VERVE #266 (#3507)
* Fairly extensive refactoring to fix layout in Safari for VERVE #266

- VERY WIP at this time!
- Many instances of `height: 100%` converted or amended to include
`flex: 1 1 auto`;
- Some high-use containers like `c-so-view__object-view` converted to use
flex layout;
- Views fixed generally for sub-object view, and specifically for
Conditionals, Folder grid view and Imagery;
- Imagery background image holder converted to use absolute positioning;
- TODO: Notebook has a problem where the side nav pane isn't overlaying
in Safari - it's a JS thing, c-drawer--push isn't be replaced with
c-drawer--overlays as it should;

* CSS and markup refactoring to support addition of 'suspect' telemetry

- Remove commented code;
2020-11-09 09:33:25 -08:00
ba982671b2 Quick idea on a splash screen that will not increase load time (#3376)
* New splash screen

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-11-06 13:58:57 -08:00
5df7d92d64 [Navigation Tree] Fix tree loading issue (#3500)
* added resize observer for FIRST load of mainTree

* new Promise driven height calculation test

* cleaning up code, sticking with promise height caclcuations

* more cleanup

* returning from the initialize function
2020-11-03 12:06:49 -08:00
a8228406de [Inspector] Allow styles (including font and font size) to be saved and reused (#3432)
* 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>
2020-11-02 12:35:43 -08:00
2401473012 [#3465] Intercept drag start event for imagery controls (#3485) 2020-11-02 11:26:33 -08:00
e502fb88fa Fix Imagery brightness and contrast controls (#3473)
* Fix imagery #3467

- Move location of imagery controls in markup;
- Refine vertical placement;

* Fix imagery #3467

- Fix Firefox-related slider problems: bring over slider fixes and
markup from branch `imagery-view-layers`;

* Fix imagery #3467

- Fix linting problem;

Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2020-11-02 08:38:13 -08:00
37a52cb011 Notebook fixes for NT10 'click-to-edit entry' (#3475)
* Notebook fixes for NT10 'click-to-edit entry'

- Hovering over entries now displays a subtle background change, and
only displays the 'inline input' look when clicked into;
- Changed default styling and behavior to not apply default text
content: new entries now start with a blank entry, and do not include
'placeholder' formatting;
- Refactored styles associated with `c-input-inline`, `c-ne__input` and
`reactive-input` mixin;
- New mixin `inlineInput`;
- Removed unused CSS classes, general cleanups;

* fixed defaultText as blank issue and some cleanup

* Update _mixins.scss

- Remove commented code;

Co-authored-by: Nikhil Mandlik <nikhil.k.mandlik@nasa.gov>
2020-10-30 16:47:29 -07:00
04fb4e8a82 [Tables] Object names should appear in tables (#3466)
* [Tables] Object names should appear in tables #3312

* updated tests to include name header.

* fixed lint issue.

* Removed Name from data.

* renamed 'addColunmName'  to 'addNameColumn'.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-10-30 15:10:31 -07:00
5646a252f7 [Navigation Tree] Simplify logic (#3474)
* added new navigation method for tracking, lots of optimizations

* updated indicator logic, tweaked objectPath/navigationPath, removed old code

* added temporary ancestors variable to be used while building new tree ui during navigation

* removed observer for ancestors, all handled in composition watch now

* updates from PR comments

* fixing testing errors

* checking for older format of saved path, update if old
2020-10-29 11:58:45 -07:00
0e6ce7f58b [Time Conductor] Realtime presets and history tracking (#3270)
Time conductor realtime preset/history updates

Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-10-28 17:46:28 -07:00
8cd6a4c6a3 [Notebook] Link to snapshot should not be a fully qualified url #3445 (#3460)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-10-28 16:46:54 -07:00
02fc162197 Save subobject styles to container/layout if the object cannot be persisted (#3471)
* styles for Subobjects that can't be persisted should be saved on the container/layout

* Add tests for suboject styles that should be saved on the display layout
2020-10-26 15:58:42 -07:00
84d21a3695 [Display Layout] User should be able to set outer dimensions (#3333)
* Display Layout grid toggle and dimensions

- Added toggle grid button;
- Added Layout 'size' properties;
- Very WIP!

* Display Layout grid toggle and dimensions

- Cleanup toolbar;

* new configuration layoutDimensions

* add outer dimensions

* content dimensions not needed

* show/hide layout dimensions based on selection

* push non-dynamic styles to class definition

* remove grid code for other display layout feature

* reorder to match master

* layoutDimensionsStyle computed prop should return an object

* Styling for Display Layout dimensions box

- Mods to markup and SCSS;
- New ``$editDimensionsColor` theme constant;

* Styling for Display Layout dimensions box

- Refined styling;
- Fixed selector for nested sub-layouts;

* Styling for Display Layout dimensions box

- Added v-if that now only displays the dimensions indicator if both
width and height are greater than 0;

* fix lint issues

* fix merge issues

* fix display layout dimensions logic

* fix display layout dimensions check

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-10-23 12:19:16 -07:00
1a6369c2b9 [Display Layout] Grid lines should show and hide appropriately for nested layouts (#3330)
* change selector from sibling to same element

* hide gridlines for selected layout if is multi selection
2020-10-23 10:02:18 -07:00
463c44679d [Display Layout] User should be able to toggle grid lines (#3331)
* Display Layout grid toggle and dimensions

- Added toggle grid button;
- Added Layout 'size' properties;
- Very WIP!

* Display Layout grid toggle and dimensions

- Cleanup toolbar;

* new configuration layoutDimensions

* extract display layout grid to own vue component

* split toolbar structure into two structures

* allow toggling grid when editing display layout

* toggle grid icon show/hide state on click

* grid be shown on starting edit mode

* remove dimensions code for other display layout feature

* toggle icon after method completes

* change icon names

* update spec to include new action and separator

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-10-23 09:32:35 -07:00
c1f3ea4e61 fixed windows scss load time issues (#3361)
Co-authored-by: MUDKIP-9560\sanch <sanchit.singhal@mandsconsulting.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2020-10-22 16:17:41 -07:00
142b767470 [Notebook] new notebook entry causes console error #3440 (#3443)
* [Notebook] new notebook entry causes console error #3440

* using 'makeKeyString' to compare notebook identifiers

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-10-19 17:57:57 -07:00
184b716b53 [Telemetry Table] Row counts (#3428)
* add marked rows and total rows in tables

* Styling for table row counts addition

- Main styles for new `.c-table-indicator` and elements;
- Refined main layout spacing;
- Layout for table footer elements;
- Hover behavior for footer when table in Display Layout;

* Styling for table row counts addition

- Refined `.c-filter-indication` styles;
- Refined `.c-table-indicator` styles;
- Added dynamic tooltips for total and marked rows count elements;

* fix lint issues

Co-authored-by: charlesh88 <charlesh88@gmail.com>
2020-10-19 11:48:10 -07:00
e53399495b Legacy and new object providers work together (#3461)
* 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
2020-10-19 10:17:18 -07:00
d27f73579b [Plots] Toggle grid lines (#3313)
* add toggle button

* enable toggle grid lines in plots

* fix merge issue

* change to new glyphs

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-10-19 10:07:51 -07:00
1ae8199e89 Changing master version for new sprint (#3456) 2020-10-14 15:52:27 -07:00
2deb4e8474 Duplicate tree ancestors fix (#3454)
* block nav when "syncing" tree only, where most of the problems popped up
* not populating ancestors on navigation until current directory children loaded

Co-authored-by: Jamie Vigliotta <jamie.j.vigliotta@nasa.gov>
2020-10-14 10:52:45 -07:00
7f10681424 block nav when "syncing" tree only, where most of the problems popped up (#3451) 2020-10-13 10:01:16 -07:00
c756adad6f Move tests to their own describe block (#3447) 2020-10-09 14:29:52 -07:00
f3d593bc1e Cache gets (#3437)
* Cache gets

* Added test
2020-10-08 20:30:23 -07:00
b637307de6 [Notebook] Clicking new entry does not work as expected #3423 (#3434)
* [Notebook] Clicking new entry does not work as expected #3423

Co-authored-by: Joshi <simplyrender@gmail.com>
2020-10-08 16:56:37 -07:00
b6e0208e71 Reverting when cancelling out of edits works for both legacy and new object providers (#3435)
* Update persistence capability to use object api get
* Getting objects using the legacy object service provider will use the defaultSpace if necessary
2020-10-08 16:48:26 -07:00
631876cab3 Add missing APIs to legacy persistence adapter (#3433)
* Sends new style object to the object API for save when calling it from legacy persistence adapter

* Adds createObject and deleteObject methods to LegacyPersistenceAdapter
2020-10-08 10:45:06 -07:00
a192d46c2b Sends new style object to the object API for save when calling it from legacy persistence adapter (#3431)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-10-07 16:44:20 -07:00
6923f17645 [Navigation Tree] Race condition on checking document readystate (#3430)
* checking if state is already ready, as this is a subcomponent, that could be the case

* optimizing readystate checks
2020-10-07 16:38:54 -07:00
87a45de05b Fix scroll issues in tree overflow state (#3385)
* Fixes #3383 - Tree scrolling area should not display horizontal scroll.
* Includes various additional improvements to the object tree.
Co-authored-by: Jamie Vigliotta <jamie.j.vigliotta@nasa.gov>
2020-10-07 11:29:42 -07:00
ab76451360 Imagery Age to be displayed for realtime mode in Imagery View (#3308)
* fix linting errors

* removing testing units

* WIP: stubbe in age in template, adding getAge function

* WIP: stubbed in age in template, dummy function to start

* added image age for realtime mode, ready for styling

* reverting unnecesarry telemetryview file changes, not needed for this issue

* checking for age tracking conditions on mount

* Image age styling and changes

- Cleaned up code in ImageryPlugin to use const instead of var, changed
image delay time into a const

* Image age styling and changes

- WIP!
- Layout changes for Imagery control-bar;
- New animation effect, WIP;

* Image age styling and changes

- Markup and CSS updates for Imagery view;
- Final layout for age indicator;

* parsing image timestamp in case it is a string

* using moment for human readable durations above 8 hours

* UTC based timesystem check

* reset "new" css class on image age when "time" updates

* WIP: debuggin weird imagery plugin issue for first selection of image in thumbnails

* fixing pause overwriting clicked images selection

* making isImageNew a computed value

* WIP: pr updates

* WIP: tabling PR edits to focus on lower hanging PR edits for testathon

* WIP

* overhaul of imagery plugin logic for optimization PLUS imagery age

* adding next/prev functionality to refactored plugin

* added arrow left and right keys to navigate next and previous

* added arrow key scrolling and scrolling thumbnail into view and hold down scrolling

* adding in missing class

* component based key listening, PR updates

* refactor to use just imageIndex to track focused image, utilized more caching, PR comment edits

Co-authored-by: David Tsay <david.e.tsay@nasa.gov>
Co-authored-by: charlesh88 <charlesh88@gmail.com>
2020-10-06 16:01:47 -07:00
a91179091f [Imagery Plugin] Data integration facilitation (#3397)
* added data attrs for keystring and timestamp as well as class for targeting

* rename js class

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-10-05 11:02:04 -07:00
5f7e34ce6c Tracking navigation requests, if multiple, only finish on latest (#3403) 2020-10-05 10:41:49 -07:00
db33f0538a Fixes for Testathon 08-03-20 issues (#3269)
* Fixes #3268

 - Moved `pointer-events: none` to apply to proper element in table and
 qualified selector to only apply when the table is within a layout
 frame;

* Tabs View mods, fixes #3265

 - Restored missing `c-object-label` markup to display type icon;
 - Removed unused code;
 - Refined alignment in `c-object-label` CSS;

* Fix mistakenly left port change

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Jamie V <jamie.j.vigliotta@nasa.gov>
2020-10-02 15:43:33 -07:00
257a8e2e2d Format ISO datetime to allow text wrapping in Imagery view thumbs (#3415)
Format ISO datetime to allow text wrapping
2020-10-02 13:43:32 -07:00
baa8078d23 Plan view to display activities (#3413)
* (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
2020-10-02 11:13:04 -07:00
ee60013f45 Notebook refactor (#2883)
* Code refactoring per https://github.com/nasa/openmct/issues/2825
2020-10-01 15:42:32 -07:00
505796d9f0 [Search] SearchProvider and Tree Search enhancements/fixes (#3400)
* 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
2020-09-29 10:06:58 -07:00
56120ba1bb [Navigation Tree] Handling deleted ancestors correctly (#3401)
* added location observers for ancetors in nav tree to handle ancestor deletions

* tracking current ancestors and handling deletions

* minor method name change on call

* removed redundant code
2020-09-28 11:41:33 -07:00
225b235059 Legacy read object should correctly return the model and not a promise (#3395) 2020-09-23 12:15:45 -07:00
de614ff606 [Legacy Persistence Adapter] readObject to handle possibility of two arguments (#3392)
* check for two arguments to catch cases where key and namespace are sent in separately

* method will always receive two arguments, updated to reflect that

* removing object utils, no longer used
2020-09-22 16:41:46 -07:00
7879752f47 [#3389] Set the persisted timestamp to date.now rather than the domain object's modified timestamp (#3390) 2020-09-22 11:34:06 -07:00
08b2940eb6 Defers legacy mutation of object till after a creation happens. (#3379)
* 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!
2020-09-17 13:53:45 -07:00
67749dd2bb Merge pull request #3374 from nasa/object-create-fix-9152020
Use ObjectAPI.save in Display Layout and New folder action
2020-09-15 13:02:36 -07:00
56c203d9ca Merge branch 'master' into object-create-fix-9152020 2020-09-15 12:54:11 -07:00
54ce86eff3 [Navigation Tree] Animation fixes (#3375)
* added padding for loading indicator, updated no items logic and is loading logic, adding checks for loading to prevent navigation during loading

* updating style name that is used in more than one way

* moving indicator offset style to computed value

* lint fix
2020-09-15 12:52:52 -07:00
9713ca74c7 Merge branch 'object-create-fix-9152020' of https://github.com/nasa/openmct into object-create-fix-9152020 2020-09-15 09:46:32 -07:00
81ed9169f1 update unit tests 2020-09-15 09:46:17 -07:00
e60462c221 Merge branch 'master' into object-create-fix-9152020 2020-09-15 09:32:26 -07:00
09c4e610af use objects.save in display layouts and new folder 2020-09-15 09:29:37 -07:00
4a576321e3 [Display Layout] Exclude layout objects from 'missing' object check (#3369)
* safe check for domainObject status

* clarifying comment
2020-09-14 13:03:05 -07:00
24c5dc03de Merge pull request #3255 from nasa/ladtableset-name-clarity
Ladtableset naming clarity
2020-09-14 12:56:59 -07:00
d8291ddc17 Merge branch 'master' into ladtableset-name-clarity 2020-09-14 12:43:55 -07:00
1b75d828d8 [Imagery Plugin] Prev/Next functionality (#3282)
* Prev/next buttons for #3209

- Stubbed in buttons to ImageryViewLayout.vue;
- Initial CSS classes stubbed in;

* Prev/next buttons for #3209

- Significant additions to cArrowButtons mixin;
- local-controls classes added to markup;

* WIP inital changes for adding arrows

* adding arrow functionality to imagery plugin

* catching one more edge case for disabling prev button

* lint fixes

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2020-09-14 12:40:15 -07:00
966e583978 Merge branch 'master' into ladtableset-name-clarity 2020-09-14 12:33:48 -07:00
e52f60fdf0 Update the versioning process to include publishing to npmjs registry (#3354) 2020-09-14 12:23:16 -07:00
b4c44c6d49 Do not display tooltip when item description exists (#2628) 2020-09-14 12:05:22 -07:00
0f6215da9d Merge branch 'master' into ladtableset-name-clarity 2020-09-14 11:41:28 -07:00
7d0b323dab more clear variable name 2020-09-14 11:33:56 -07:00
14114781fc Add new glyphs (#3365)
* icon-3-dots
* icon-grid-on
* icon-grid-off
*icon-camera
2020-09-14 11:31:38 -07:00
97694fa29c Bump copyright year to 2020 (#3169) 2020-09-14 11:17:31 -07:00
9f6bfa2351 Merge pull request #3364 from nasa/create-namespace-fix
Update namespace of object after location selected
2020-09-14 09:28:50 -07:00
b842cbc83d Merge branch 'master' into create-namespace-fix 2020-09-14 09:19:50 -07:00
0da5409092 [Plots] Allow changing x-axis metadata (#3177)
* allow change of x-axis metadata in single plots
* only enable x key toggle when appropriate
* prevent x-axis toggle if data does not exist for new x-axis key
* reset x-axis selection on bounds change
2020-09-14 08:14:24 -07:00
888afd88b8 Update namespace of object after location selected 2020-09-10 19:11:14 -07:00
35692ae4b9 Merge branch 'master' into ladtableset-name-clarity 2020-09-10 10:22:03 -07:00
18b2a270c9 modifying root name (#3350)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-09-04 10:20:13 -07:00
6f2d8e6ce3 change time conductor bounds on zoom end (#3345) 2020-09-03 09:23:26 -07:00
91d1681698 [Navigation Tree] Prevent showing "no items" while still loading (#3341)
* no  showing "no items" if still loading

* added additional no items variable to handle dictionary composition loading race conditions

* code cleanup

* more descript variable name
2020-08-31 11:23:50 -07:00
efd97de743 [Conditionals] Ensure correct conditions are updated after reordering (#3336)
* Use id of condition instead of index to ensure
2020-08-28 11:54:52 -07:00
c4cd725c9a [Navigation] Properly handle overflow in conditional style selection tree (#3338) 2020-08-28 11:46:03 -07:00
23e5efbb19 Merge pull request #3243 from nasa/iso-date-format
Merging new ISODateFormatter
2020-08-28 11:13:09 -07:00
4e995c10da Merge branch 'master' into iso-date-format 2020-08-28 11:05:38 -07:00
b5cf157c40 cleaning up tests 2020-08-28 10:54:45 -07:00
ac082e9f58 removing openmct from tests as it is not required 2020-08-28 10:46:05 -07:00
9f7799b44f Couchdb object provider (#3245)
* Added legacy persistence service adapter
* Use new couch provider
* Added queuing of requests
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-08-27 15:21:06 -07:00
cdf9c50b8a Merge branch 'master' into iso-date-format 2020-08-26 11:12:29 -07:00
7c4e9cef87 Merge branch 'master' into ladtableset-name-clarity 2020-08-26 11:11:01 -07:00
ffb3b302c7 [MCT Tree] Testathon Fixes (#3324)
* WIP: testing backwards compatibility checks

* added new localstorage key for expanded tree node, delete old one if detected

* removing obsolete backwords compatibility code

* fixed going up the tree items not showing, going down the tree "ghost" image showing

* removing console log

* removed duplicate functionality
2020-08-25 14:15:28 -07:00
278f48f65c backwards compatible fix and switching between multi to single root children fix (#3319) 2020-08-24 15:00:11 -07:00
4801dc4f32 New tree refactor (#3098)
* revised new tree refactor, moved most of the logic to mct-tree instead of tree-item

* scrollTo set for sync, bug fixes, window resize handling

* removing console logs

* checking domainobject composition for length to verify children instead of composition object itself

* added scrollTo on load if in viewed objects directory

* loading, sync bug, search issues, opitmization

* initial PR review updates

* modified so search now uses the same container and virtual scroll

* eslint fix

* Adding new glyphs

- Multiple new glyphs cherrypicked from branch `add-new-glyphs-062320`;

* Styling for new-tree-refactor WIP

- WIP!
- New glyphs, markup changes in BrowseBar.vue;
- Refinements to tree items, WIP;
- TODO: move hard-coded CSS values into _constants, make
theme-compatible;

* Styling for new-tree-refactor WIP

- WIP!
- Added new `c-click-link` CSS class;
- Move tree sync button into tree pane area;
- Added named "controls" slot to pane.vue;
- _up and _down arrows now use visibility instead of opacity to prevent
accidental clicks;

* Styling for new-tree-refactor WIP

- WIP!
- Significant mods and simplification in pane.vue and assoc CSS for
expand/collapse functionality;
- Wait spinner when in tree: cleanups, simplification;

* More new glyphs, updated art

- New glyphs: icon-unlocked and icon-target;
- Updated art for icon-lock glyph;

* remove arrows for search results, hightlight "my items" correctly, added empty folder notic

* Styling for new-tree-refactor WIP

- WIP!
- Refinements to "empty" object element;
- Changed sync-tree icon glyph;

* Styling for new-tree-refactor WIP

- Nav up arrows now left-align properly;

* Styling for new-tree-refactor

- Significant consolidation and cleanups in mct-tree.scss;
- Normalize base and hover styles across new tree, legacy tree,
list-items (used in Notebook) and Folder List View;
- Class naming normalization, change `c-list-item__name-value` to
`c-list-item__name`;
- Add styling to override and remove `<a> outline: dotted` coming from
normalize-min;
- Removed too-broad `<a>` coloring in tables;

* Styling for new-tree-refactor

- Fix styles for Snow theme;
- Sync Maelstrom and Espresso themes;
- Remove too-broad `<a>` hover styling from global.scss;
- Disallow pointer-events on `is-navigated` object's label (click on
c-nav__down element still allowed);

* Styling for new-tree-refactor

- Normalizing status area expand/collapse iconography to match new
approach in panes;

* Adding new glyphs

- Added `icon-items-collapse` and `icon-items-expand`;

* Styling for new-tree-refactor

- Using new glyphs for items expand/collapse in Status area;

* dynamic item height for desktop and mobile views

* lint fixes

* updated addChild and removeChild functions as they were not working at all

* some PR comment updates!;

* Remove unneeded hard-coded CSS color property

* fixed issues when multiple root children exist, added plugin to change the name of the default root object

* removing "my other items" testing references

* linting fixes

* updating karma timeouts for testing purposes

* eslint fixes

* WIP: fixing linting issues

* updating for testing

* set root object provider to update root registry if called more than once

* tweaking tests so that it passes both locally and on the serve tests

* removing old css code preventing context clicks on active menu items

* fixing testing errors

* backwards compatible storage fix

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-08-24 13:47:56 -07:00
9e8f845fbe Fix plot axis separator line color and hash colors (#3314)
* Fixes for NIRVSS UI spectral plot view

- Fixes Y axis 2 vertical line color in spectral plot;

* Fixes for NIRVSS UI spectral plot view

- Fixes Y axis 2 vertical line color in spectral plot;
- Tweaks to themed plot hash line colors;
2020-08-21 15:22:26 -07:00
b4d1cdaae8 Fixes for NIRVSS UI spectral plot view (#3310)
- Fixed Plotly axis label title font sizing;
- Fixed Plotly axis vertical line color;
- Removed styling that caused `c-button` within
`h-local-controls--overlay-content` to be background on background
color;
2020-08-20 12:27:25 -07:00
f9d3af2724 Version 1.3.0 snapshot (#3307)
* Updating version to 1.2.4 for end of sprint.

* Update master to 1.3.0-SNAPSHOT sprint version
2020-08-18 12:19:49 -07:00
ac6ed5dd01 more more lint fixes 2020-08-14 10:55:01 -07:00
6e0c1cc674 more lint fixes 2020-08-14 10:46:56 -07:00
33c37ebf19 linting fixes 2020-08-14 10:44:02 -07:00
c33c29b6f3 linting fixes 2020-08-14 10:27:56 -07:00
37debefadc Stop evaluation of conditions when one evaluates to true (#3276)
* Stop evaluation of conditions when one evaluates to true

* Fix broken test

* Fixes broken tests

* Addresses review comments - Rename getResult to updateResult

* Rename condition getResult to updateResult

* Renames condition getResult to updateResult
2020-08-14 10:09:35 -07:00
891fe0a36b Merge pull request #3154 from nasa/remove-action-tests
Remove action tests
2020-08-13 13:31:08 -07:00
4b6de59b03 Merge branch 'master' into remove-action-tests 2020-08-13 09:52:35 -07:00
6a5b902365 copyright stuff 2020-08-11 13:51:08 -07:00
270f07ebd5 Compare the enum value to the input, not the index of the enumeration (#3277) 2020-08-11 13:19:38 -07:00
52500f6097 lint fixes 2020-08-11 13:11:08 -07:00
2fa8a8d61d Merge branch 'master' into iso-date-format
Merg'n master
2020-08-11 13:07:10 -07:00
69a6cd20af linting 2020-08-11 13:01:54 -07:00
28eb268af1 Merge branch 'remove-action-tests' of https://github.com/nasa/openmct into remove-action-tests
More merg'n
2020-08-11 12:57:26 -07:00
045bb443cb Merge branch 'master' into remove-action-tests
Merg'n master
2020-08-11 12:57:02 -07:00
c6ca912f2b ESLint one-var, no-var rules (#3239)
* fixed issues for eslint one-var and no-var rules

Co-authored-by: Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-08-10 12:13:23 -07:00
78c7484d54 Merge branch 'master' into remove-action-tests 2020-08-10 11:57:06 -07:00
4d560086dd ESLint upgrade, implement additional rules (#3230)
* 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>
2020-08-10 11:23:35 -07:00
ef965ebdfd ESLint rules: array-callback-return, no-invalid-this, func-style (#3151)
* satisfied array-callback-return rule
* satisfying no-invalid-this rule
* fixed invalid-this issues
* changed isNotEqual to arrow function
* added rule func-style
* added return false to satisfy array-callback-return rule

Co-authored-by: Joel McKinnon <jmckinnon@apple.com>
Co-authored-by: Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-08-10 10:59:18 -07:00
0b4a843617 ESLint rules: rules requiring minor changes (#3139)
* implemented trivial code changes necessary batch of rules

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-08-10 10:35:40 -07:00
7e7141a5a0 Fixes to enable testing again (#3275)
* 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%
2020-08-10 09:47:04 -07:00
b3fd6c9b85 Merge branch 'master' into iso-date-format 2020-08-03 14:34:38 -07:00
deb0511b43 Merge branch 'master' into remove-action-tests 2020-08-03 13:43:40 -07:00
e32f465f7a Display layout plugin test coverage to 20% or more (#3158)
* 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
2020-08-03 13:41:57 -07:00
abc458cef4 [Time conductor] Better persistence handling for history (#3246) 2020-08-03 11:56:29 -07:00
2198a4780b Merge branch 'master' of https://github.com/nasa/openmct into remove-action-tests 2020-08-03 09:47:42 -07:00
b76d4b76cb Merge pull request #3228 from nasa/telemetry-table-config-updates
Update TelemetryTable config to allow disable multiselect
2020-07-31 14:41:49 -07:00
9ebb013f22 Merge branch 'master' into remove-action-tests 2020-07-31 14:30:14 -07:00
5a4cba0226 Merge branch 'master' into telemetry-table-config-updates 2020-07-31 14:23:12 -07:00
f03bfdebb4 [Telemetry Tables][Plots] Display units where applicable (#3198)
* added unit columns in telemetry tables

* added unit column hiding in telemetry tables, added units to lad tables and sets

* added units to plots and plot legends
2020-07-31 13:13:58 -07:00
7c1550ced7 Merge branch 'master' into remove-action-tests 2020-07-31 12:46:40 -07:00
a09da30768 New eslint rules auto fix (#3058)
* 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>
2020-07-31 12:11:03 -07:00
66bb938fc4 renamed methods and variables for clarity 2020-07-31 11:48:23 -07:00
0d478d5dfc making hasUnits computed value more clear 2020-07-30 17:48:32 -07:00
2a9b431c50 WIP: cleaning up hasUnits computed in sets 2020-07-30 15:55:41 -07:00
756e7e5372 making plot series name with unit a dynamic function 2020-07-30 15:38:32 -07:00
573a63d359 [Snapshots] Are holding on to outdated domainObjects when clicking on preview #3078 (#3240)
* [Snapshots] Are holding on to outdated domainObjects when clicking on preview #3078

* #3250 :  [Preview] Preview window should not have any context menu actions

* cleanup: removed redundant code
2020-07-29 16:33:39 -07:00
3f2ad2be0c PR updates 2020-07-29 11:05:28 -07:00
fd3be63805 classic eslint fix 2020-07-28 13:58:31 -07:00
ad8ed419de removing old references in legacy code (accident) and adding tests for new formatter 2020-07-28 13:45:45 -07:00
8b4f07c2e0 added ISOTimeFormat plugin and format 2020-07-28 11:23:56 -07:00
e667b22b3c remove modified and persisted keys from duplicates (#3241) 2020-07-28 11:05:55 -07:00
9198effafe adding ISO Time Formatter to be used with openmct-yamcs 2020-07-27 10:32:22 -07:00
7d51d9c1eb parsing datum itself rather than specific key of datum, let telemetry api do the work (#3235) 2020-07-24 13:34:26 -07:00
de6eceb98b parsing datum itself rather than specific key of datum, let telemetry api do the work 2020-07-24 11:37:41 -07:00
72f7ec1481 removing checkforunits function 2020-07-24 10:51:52 -07:00
13ff0c368d Merge branch 'master' into telemetry-table-config-updates 2020-07-24 10:46:02 -07:00
9124f4f566 allow table row to control object path for context menu actions (#3232)
Need for changes in VISTA
2020-07-24 10:41:36 -07:00
5e21f98309 Merge branch 'master' into adding-units
Merg'n master
2020-07-24 10:41:17 -07:00
26069dac79 final changes from PR comments 2020-07-24 10:11:46 -07:00
b7d2402434 Update TelemetryTable config to allow disable multiselect. 2020-07-23 14:11:44 -07:00
d9baa94970 UI enhancement fixes 2 (#3225)
- Fixed incorrect CSS naming: `c-frame-edit__move` changed to
 `c-frame__move-bar`;
 - Fixed `display: contents` that was erroneously applied to
 `u-angular-object-view-wrapper` and preventing styling from being
 applied to plots, renamed class to `.l-angular-ov-wrapper`;
 - Removed commented CSS;
2020-07-22 20:20:17 -07:00
afeb89a51a [VIPEROMCT-16] Creates a closure for telemetryObject so that requests can resolve correctly even if the telemetryObject is destroyed (#3210)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-07-22 15:22:31 -07:00
07992f0b2a [Tabs View] add ability to remove tabs from tabs view interface (#3147) (#3148)
* add ability to remove tabs from tabs view interface (#3147)

* an "X" on each tab is visible in edit mode

* replaced custom removeDialog with openmct.overlays.dialog

* Minor mods to markup and CSS

- Changed tab from button to div to allow a cleaner approach to the
nested close button;
- Changed close "icon-x" span to a button and added `c-click-icon` style
tag;
- Tweaked class naming to simplify and align with a more functional/
descriptive approach;

* use ES6 arrow func to avoid self=this

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
Co-authored-by: charlesh88 <charlesh88@gmail.com>
2020-07-22 15:17:35 -07:00
a5c4508578 add minified vue to production (#3183)
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2020-07-22 14:47:46 -07:00
a4fab3ce8a UI enhancement fixes (#3222)
- 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;
2020-07-22 11:35:06 -07:00
97d80f57cc UI enhancements (#3217)
* 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>
2020-07-21 21:01:38 -07:00
41138a1731 Merge pull request #3205 from nasa/data-dropout-fixes
### Reviewer Checklist

1. Changes appear to address issue? Y
2. Appropriate unit tests included? Y
3. Code style and in-line documentation are appropriate? Y
4. Commit messages meet standards? Y
5. Has associated issue been labelled `unverified`? (only applicable if this PR closes the issue) Y
2020-07-21 10:08:31 -07:00
a54a2f8f84 Merge branch 'master' into data-dropout-fixes 2020-07-21 10:01:01 -07:00
5bbe710552 Merge pull request #3215 from nasa/circle-ci-chromeheadless-test-failure
Removing use of ChromeHeadless and using FirefoxHeadless for Circle CI builds
2020-07-21 09:53:40 -07:00
f2d34d7c33 For the short term, removing use of ChromeHeadless and using FirefoxHeadless instead. (added npm dependency)
Also increasing browserNoActivityTimeout to 90000

Resolves #3214
2020-07-20 15:12:53 -07:00
8fa1770885 Merge branch 'master' into data-dropout-fixes 2020-07-20 15:01:11 -07:00
7221dc1ac6 make clear data indicator a configurable option (#3206) 2020-07-17 16:48:14 -07:00
25bb9939d6 Merge pull request #3193 from nasa/fix-safari-3192
Fix Safari display issues for #3192
2020-07-17 15:59:38 -07:00
e7e12504f2 Merge branch 'master' into fix-safari-3192 2020-07-17 15:19:32 -07:00
68eb5e6286 pr edits 2020-07-17 15:10:17 -07:00
63bf856d89 Enable persistence operations from Object Providers (#3200)
* 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>
2020-07-17 09:58:03 -07:00
e3dcd51f8d Disallow editor Edit mode when object is locked (#3208)
* Don't allow editor edit if object is locked

* Adds log statement

* Use capture phase for onDragOver

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-07-17 09:23:51 -07:00
cb63f4eca1 Fix is-missing layout problem #3194 (#3195)
- Fixes related to `is-missing` including fixes for Display Layout
alphanumeric views and Tabs view tabs;
2020-07-16 12:43:37 -07:00
3f60c3c0f1 Merge branch 'master' into data-dropout-fixes 2020-07-16 11:55:02 -07:00
16bb22e834 Added regression test 2020-07-16 11:50:03 -07:00
d2b9a7754f linting 2020-07-15 16:35:55 -07:00
70125afa9d reworked logic for add/remove unit detection 2020-07-15 16:12:24 -07:00
551364ad8c fixing implementation for telemetry view items in display layout 2020-07-15 14:45:03 -07:00
7f7518bb9d added units to plots and plot legends 2020-07-15 10:47:03 -07:00
b1467548da Fix Safari display issues #3192
- Tweaks to fix `c-tab` elements, fix clip-path for webkit;
- Fix Notebook Snapshots header;
2020-07-14 23:40:42 -07:00
baa7c0bc58 Fix Safari display issues #3192
- Tweak to Status area indicator hover bubbles;
2020-07-14 21:51:22 -07:00
73b81e38e7 Fix Safari display issues #3192
- Fix collapsed Status area indicators width problem;
2020-07-14 19:22:18 -07:00
8b088b7a2c Fix Safari display issues #3192
- Fix Status area indicators width problem;
- Also fixes collapsing-status-area-indicator-bubbles transition problem
 as well!;
2020-07-14 18:53:30 -07:00
894da25461 Fix Safari display issues #3192
- Fix Inspector `__content` to properly use flex column layout;
- Change `u-angular-object-view-wrapper` to `display: contents`;
- Fix `gl-plot` to properly use `flex: 1 1 auto` instead of width and
height;
2020-07-14 18:42:52 -07:00
8c8a14af7b added unit column hiding in telemetry tables, added units to lad tables and sets 2020-07-14 13:20:42 -07:00
3735a85c69 Merge branch 'master' into adding-units
Merg'n main branch
2020-07-14 10:25:39 -07:00
79c4dc9272 typo fix! and using object assign where appropriate 2020-07-13 14:42:01 -07:00
d7c266d70f unit coluns in telem tables, need to add config options for those columns 2020-07-13 14:24:51 -07:00
87d63806b9 [Plots] Better Pan/Marquee handling (#3165)
* check for alt key pressed on mouse events

* allows for release of alt key during drag

* eliminates non-browser event states like alt-tab switching apps in windows

* do not listen to plot mouse events on browser context (ctrl) click

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-07-13 12:39:37 -07:00
f0e7f8cfc0 Fix incorrect property inspection (#3180)
- Fixed Folder grid and list views;
- Fixed plot collapsed and expanded legends;

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-07-13 11:36:21 -07:00
db597e1e93 [Tabs View] Fix tab not being added (#3160) 2020-07-13 10:24:22 -07:00
98db273f5d Remove unsubscribe callback 2020-07-10 15:10:33 -07:00
8a6f944655 Missing items (#3125)
* 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>
2020-07-10 15:08:14 -07:00
bacad24811 Delete telemetry cache only when count reaches 0 2020-07-10 13:27:30 -07:00
8cc58946cf Remove Karma Report that was accidentally checked in (#3097)
* remove karma report

* add report.*.json to gitignore

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2020-07-10 12:47:52 -07:00
3338bc1000 upgrade painterro to +1.00.35 (#3172) 2020-07-09 13:41:52 -07:00
80c20b3d05 [Plots] Allow user to change marker style (#3135)
* lineWidth is not supported in modern browsers

* allow marker shape selection in plot inspector

add shapes for canvas2d - point, cross, star

* change line style to line method in anticipation of adding true line style attribute

* add canvas2d circle marker shape

* allow point shapes for webGL plots

add circle shape

* refactor for clarity

* refactor shape to shape code

* add missing semi-colon

* helper function for marker options display in inspector

refactor for clarity

* access correct file

* add diamond marker shape

* add triangle shape to canvas

* add webgl draw triangle marker shape

* refactor fragment shader for clarity
2020-07-09 13:14:32 -07:00
0d9558b891 Merge pull request #3162 from nasa/display-layout-fix-3161
Fixes issue created when removing Lodash function
2020-07-07 16:54:54 -07:00
c29c3c386f fix issue created by lodash upgrade 2020-07-07 15:39:21 -07:00
e1d0c22071 removing fdescribe 2020-07-06 15:27:38 -07:00
7dee6344b0 updating spec statements to be more broad 2020-07-06 14:14:57 -07:00
731ab89561 added some tests for remove action as well as another mock object "folder" 2020-07-06 14:05:32 -07:00
9ceb3c5b1e Merge pull request #3130 from nasa/display-layout-fix-3128
[Display Layouts] Prevent duplicate from being added when composition 'add' is fired
2020-07-06 11:36:25 -07:00
6bd0246db6 Merge branch 'master' into remove-action-tests
Merging master
2020-07-02 12:53:43 -07:00
bee3a9eedf Merge branch 'master' into display-layout-fix-3128 2020-07-02 10:48:53 -07:00
e515d19acd Merge pull request #3144 from nasa/switching-type-error
Fix for non working switch from alpha to tables and plots
2020-07-02 10:38:01 -07:00
dd13efe065 Merge branch 'master' into switching-type-error 2020-07-02 10:26:13 -07:00
99aa5c7b7b few more tests, not ready yet though 2020-07-02 10:14:14 -07:00
b5dfbe268c Merge pull request #3146 from nasa/new-folder-action-fix-07012020
Added unnamed folder and made it required
2020-07-01 16:48:10 -07:00
a9b9107cc3 change icon and action name 2020-07-01 16:30:03 -07:00
cfda4e4214 added unnamed folder and required 2020-07-01 16:20:33 -07:00
0a657de4b2 Fix for non working switch from alpha to tables 2020-07-01 16:09:05 -07:00
8153edb9cb Update any/all criterion when telemetry is removed (#3138)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-07-01 12:22:47 -07:00
22ca339fb9 [LADTable] Lad bounds listener FIX (#3114)
* added bounds listener, moved history request to function, checking for race conditions

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-07-01 09:50:18 -07:00
7f8764560b Add new glyphs 062320 (#3140)
* Adding new glyphs for multiple branches

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-06-30 16:19:45 -07:00
4411bb0a2d UI fixes for NIRVSS #170 (#3141)
* UI fixes for NIRVSS client #170
2020-06-30 16:12:28 -07:00
4ecd264d93 [Time Conductor] add history and select range features (#2932)
* basic brush prototype visible

* require alt pressed for grab handle. display only

* pan and zoom now co-exist

* revert selection to times

* make LocalTimeSystem UTCBased (Earth based)

* add LocalTimeSystem

* make isTimeFixed check reusable

* linting

* zoom axis sets start and end times

* pass isFixed as props so we can watch for change from parent

* disable cursor for local time and enable for fixed time

* linting

* resize brush on window resize

* just use d3-brush instead of entire d3 package

* WIP prototyping conductor history

* set global bounds before emitting change event

* WIP conductor history

* WIP save history to and pull history from local storage

* WIP persistence works

* reset axis height after prototyping

* conductor history functionality complete

* clean up refactoring

* add presets

code cleanup

* axis visual tuning

* remove unused function calls

* change tick to timespan to avoid confusion

* fix bounds to use for timespans on pan axis

* linting

* linting

* more linting

* linting

* change realtime end bound to 30 secondes

* add max duration validation

* Tweaks to Time Conductor History menu

- Enhanced styles for `.c-menu`;
- Added hint messaging and separator;
- Reversed displayed history array so that latest entry is always first;

* refactor to use browser mouse events instead of d3brush

* Styling Time Conductor axis area

- Styles for `is-zooming` state and brush;
- Styles for `is-alt-key-down` for panning;
- Styles for hover modified;

* resolve merge conflicts

* Styling Time Conductor axis and inputs

- Moved panning and zooming styles up into `conductor.scss`;
- Stubbed in :class names in Conductor.vue;
- New theme constants;

* fix merge conflict

* move zoom/pan styling up to conductor

* WIP almost there

* fix zoom

* move altPressed up to parent

* handle no drag on pan

* rename inMode vars for clarity

* Styling for Time Conductor zoom and pan

- Minor fix to hover cursor for alt-pressed panning;

* add configurable bounds limit to time conductor

* add presets and records

* fixes for history

* remove lodash

* add default configurables for examples

* do not install local time system

* cleanup

* fix indentation

remove logging

* remove comments

* section-hint without section-separator styling

* provide reasonable defaults for conductor configuration

* specify input to check validation on

* improve validation

* first check both inputs for valid formats

* clear each valid input on new entry

* tear down listeners

* add user instructions

* allow preset bounds to be declared as callback function

* set this.left on resize

code refactoring

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-06-30 12:10:35 -07:00
16677c99c9 Add staleness evaluation to conditions. (#3110)
* Add staleness evaluation to conditions.
Add supporting tests
Resolves #3109

* Fix broken test

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-06-29 14:13:44 -07:00
6ab468086a Lock views and prevent editing (#3094)
* 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>
2020-06-29 13:14:42 -07:00
9d2991ee10 [Snapshots] Add download as PNG and JPG buttons (#3123)
* working export

* fix lint errors
2020-06-26 17:34:36 -07:00
dadb6120c2 fix lint error 2020-06-26 14:00:39 -07:00
d9a94db59d prevent composition from adding a dupe into layout 2020-06-26 13:51:03 -07:00
6dd8d448df Merge pull request #3116 from nasa/new-folder-action
New folder action
2020-06-25 13:27:28 -07:00
ef2db1edaf Merge branch 'master' into new-folder-action 2020-06-25 13:13:06 -07:00
3748927e87 Display layout fixes 062320 (#3111)
* fix for persisting new domainObject

* convert stacked plot to alpha
2020-06-25 11:03:31 -07:00
7e4aac028b Merge branch 'master' into new-folder-action 2020-06-25 10:08:26 -07:00
8e54b8a819 LAD Table (Set) Composition Policy (#2962)
* added LAD Table composition policy, with a check for lad table sets, child can only be lad table
Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-06-24 13:26:22 -07:00
9e5eddec9b [Plots] y-axis width fix (#3112)
* remove lodash

native implementation of lodash max

* remove unused lodash imports

* add 'missing' semi-colon

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-06-24 11:44:40 -07:00
c46e4c5dad Merge branch 'master' into new-folder-action 2020-06-24 09:51:39 -07:00
f0dc928230 Imagery Bug Fixes (Future Date Issues) (#3107)
[Example Imagery] Console error on pause when start and end date is in future #3103

* added some checks for no image

* some code style updates and removing a nested if statement

Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2020-06-24 09:47:04 -07:00
6f674930d9 remove fdescribe 2020-06-23 18:34:19 -07:00
8675fc3fa6 add a few more tests 2020-06-23 18:33:51 -07:00
25434342f3 remove unused imports 2020-06-23 16:20:44 -07:00
8044dfe726 fix tests 2020-06-23 16:20:28 -07:00
cd6c7fdc5e fix broken tests 2020-06-23 15:54:10 -07:00
7ff85dc396 remove report 2020-06-23 15:30:37 -07:00
fb4877924a remove fdescribe 2020-06-23 15:23:00 -07:00
4b13cbdb33 add test 2020-06-23 15:22:43 -07:00
51c9328dfd working new folder action 2020-06-23 14:39:19 -07:00
31ac67b393 Do not respond to bounds tick changes (#3106)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-06-23 13:14:17 -07:00
0399766ccd Merge pull request #3074 from nasa/testing-guidelines
Added guidelines to testing documentation
2020-06-23 10:53:39 -07:00
18ab034147 Merge branch 'master' into testing-guidelines 2020-06-23 10:40:58 -07:00
8a4bc2a463 bumped angular to >=1.8.0 (#3100) 2020-06-22 14:56:06 -07:00
771fb9c044 [Display Layout] Allow multiple selection, duplication, and changing types (#3083)
* enable multiple selection

* enable object duplication

* enable copy styles

* enable converting plots and tables to alpha numerics

* enable merging multiple alpha numerics

* change icon for viewSwitcher

* allow users to merge overlay plots into a stacked plot

* New glyph for alphanumeric

Co-authored-by: charlesh88 <charlesh88@gmail.com>
2020-06-19 11:44:17 -07:00
055cf2b118 Lad testing (#3045)
* Added tests for LAD Tables and LAD Table Sets

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2020-06-17 17:25:34 -07:00
e9cf337aac Merge branch 'master' into testing-guidelines 2020-06-17 15:38:56 -07:00
04a18248c7 Added reference to Angular memory leak best practices 2020-06-17 15:38:17 -07:00
d462db60de Add note on convenience function for test cleanup 2020-06-17 15:31:35 -07:00
67ebcf4749 Update testing plan document with description of testathon process (#3022)
* Update testing plan document with description of testathon process
* Add instructions on unverified issues + link to instructions on pull requests.

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
2020-06-17 15:05:02 -07:00
38dbf2ccab Addresses review comments for conditionals code (#2978)
Conditionals code refactoring

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-06-17 14:56:36 -07:00
e9968e3649 Replace Angular code that synchronizes URL parameters with Time API (#3089)
* Added new test to telemetry tables to check that telemetry data is correctly rendered in rows

* Added test tools for mocking builtins

* Changed order that promises are resolved to address race condition

* Remove duplicate installation of UTC Time System

* Added additional test telemetry

* Start Open MCT headless

* Added headless mode start option. Fixes #3064

* Added new non-angular URL handler

* Removed legacy Angular TimeSettingsURLHandler

* Added function to testTools to reset application state

* Use resetApplicationState function from telemetry table spec

* Added new TimeSettingsURLHandler to plugins

* Added missing semicolons

* #2826 Refactored code into separate class

* Handling of hash-relative URLs

* Refactoring URL sync code

* Refactored to external class

* Moved utils to new 'utils' directory. Refactored location util functions from class to exported functions

* Added test specs for openmctLocation

* Added new function to destroy instances of Open MCT between test runs

* Ensure test specs are cleaning up after themselves

* Added test spec for new URLTimeSettingsSynchronizer

* Removed use of shell script as it doesn't work in windows

* Pushed test coverage to 100%

* Added missing copyright statement

* Removed debugging output

* Fixed linting error

* Upgrade node version

* Clear cache

* Re-enabled tests

Co-authored-by: Melanie Lean <melanielean@Melanies-MacBook-Pro.local>
Co-authored-by: Shefali Joshi <simplyrender@gmail.com>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-06-17 13:58:25 -07:00
d9fafd2956 Tweaked code standards for ternaries and return statements (#3082)
* Tweaked code standards for ternaries and return statements

* Tweaked language slightly

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-06-17 10:52:30 -07:00
b5aba7ce8f Merge pull request #3096 from nasa/revert-3095-patch-1
Revert "Update API.md"
2020-06-12 10:12:56 -07:00
0db5648e10 Revert "Update API.md" 2020-06-12 10:07:49 -07:00
83325da738 Merge pull request #3095 from willmendil/patch-1
Update API.md
2020-06-12 08:50:23 -07:00
4d1b2f3456 Update API.md
typo
2020-06-12 17:42:39 +02:00
6137700c82 Merge pull request #3092 from nasa/contributor-guide-grammar
Fixes a grammatical issue in the wording of the contributor's guide
2020-06-10 11:06:59 -07:00
91a1b3f31d Fixes a grammatical issue in the wording of the contributor's guide 2020-06-10 10:29:47 -07:00
357b25a76b LAD views should respond to conductor bounds changes (#2946)
Added bounds listener, moved history request to function, checking for race conditions
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-06-09 16:51:32 -07:00
bab53ad9bd Fix static styles bug - adding null checks. (#3084)
* Fix static styles bug - adding null checks. Fixes #3076

* Adds tests for updating conditional and static styles for layout drawing items

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-06-05 15:30:35 -07:00
d0d4579f13 Give users the option to hide table headers (#3085)
* working hide header config

* Simplified Inspector UI layout

* fix lint errors

Co-authored-by: charlesh88 <charlesh88@gmail.com>
2020-06-05 15:09:59 -07:00
02b537580c Merge pull request #3057 from nasa/code-standards-update
Updated code standard
2020-06-02 13:31:21 -07:00
7073b0717f Merge branch 'master' into code-standards-update 2020-06-02 13:05:32 -07:00
d6bb1b2a12 Added note about requiring a single return statement. 2020-06-02 13:05:15 -07:00
c256696790 Image view should react to time conductor changes - 2712 (#2934)
Image view reacts to time conductor changes
Fixes #2712
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-06-02 12:27:55 -07:00
d5480e7524 Multiple item conditional styles (#3017)
Conditional Styles for multiple items #3076

* Preview condition styles on selecting that condition or one of it's styles
Do not evaluate conditional styles in edit mode

* Conditions styling tweaked

- Condition match `is-current` styling for browse and edit modes;
- Disallowed pointer events on Conditions to prevent selection in
Inspector when not editing;

* Highlight current condition in conditionSet view

* Addresses review comments.

* Condition matching highlighting tweaked

- Enable match highlighting during Editing;
- Tweaks to `is-current` styling;

* Don't reset the callback on destroy

* Combine multiple and single selection styling of objects

* Fix issue with applying styles in edit mode

* Fix item styles bug

* Remove comment

* Adds back visibility toggle

* Set isEditing on initialization.

* Addresses review comments - removes use of lodash.

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-06-01 12:40:40 -07:00
ab463e93fe Refactor Notifications to use Vue, and add clear all option (#3068)
[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>
2020-06-01 11:45:33 -07:00
8962b0c88b Merge branch 'master' into testing-guidelines 2020-05-28 15:48:12 -07:00
8363c65312 [Notebook] display bounds change notification only if bounds changed (#3062) Resolves (#3051)
* display bounds change notification only if bounds changed

* avoid empty notification messages.
2020-05-28 12:29:32 -07:00
04598b6cf1 Bug fixes for plots (#3019) (#3069)
* prevent plots from breaking when more than one NaN is received.

* fix y axis label issue

* dont emit a viewport change event when marquee doesnt happen
2020-05-28 09:58:22 -07:00
3876151a4b Added guidelines to testing documentation
Migrating our testing guidelines into the open source repository in the interests of transparency, and to assist contributors to the project.
2020-05-27 13:57:46 -07:00
43628ad9d6 Lodash upgrade and cleanup (#2990)
* 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>
2020-05-27 10:59:02 -07:00
67bea86bc8 Added headless mode start option (#3065)
* Added headless mode start option. Fixes #3064
2020-05-26 11:39:55 -07:00
4eb4cbfffc Merge pull request #3020 from nasa/updated-checklists
Add details about pull requests to contributing guide
2020-05-19 09:30:05 -07:00
eda01abcbc Merge branch 'master' into updated-checklists 2020-05-18 12:12:26 -07:00
2fa29124bf Merge branch 'master' into code-standards-update 2020-05-18 11:45:27 -07:00
694b8f4666 provide format for name metadata (#3054) 2020-05-18 11:40:05 -07:00
33faeafa98 New proposed ESLint rules that require no code changes 2020-05-16 16:19:36 -07:00
a40ff07353 Updated guidance on anonymous functions 2020-05-16 16:11:42 -07:00
41dc9c794d Fixed capitalization on CONST 2020-05-16 16:08:43 -07:00
f1faf3965d Changed reference to constructors to classes 2020-05-16 16:07:49 -07:00
da2ecbbcad Fixed formatting issues, removed outdated example code. 2020-05-16 16:06:59 -07:00
32c892fe98 Updated code standards 2020-05-16 15:56:30 -07:00
bbb271a678 clarify value hints (#2673)
remove confusing comments regarding domain - input and range - output
2020-05-15 14:48:25 -07:00
fec1438806 dont emit a viewport change event when marquee doesnt happen (#3036)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-05-15 14:35:13 -07:00
28f19ec310 [Notebook] Clicking on an embed in a notebook entry does not result in bounds change #3034 (#3042) 2020-05-14 14:56:41 -07:00
f934454c25 Fixes computation of result when telemetry is not used by an object (#3040)
* Resolves issue #30307
Don't compute the result of a condition if telemetry datum is not being used by that condition

* Adds tests for condition results
2020-05-13 14:30:45 -07:00
eb49ffae02 Update CONTRIBUTING.md 2020-05-13 09:21:00 -07:00
5751012872 Update CONTRIBUTING.md 2020-05-13 09:20:03 -07:00
aa041e04cf Merge remote-tracking branch 'origin/update-contributing-guidelines' into updated-checklists 2020-05-11 17:13:53 -07:00
24e7ea143a Added more details on the process around pull requests 2020-05-11 17:12:25 -07:00
79d5d9c4d0 Update CONTRIBUTING.md 2020-05-11 16:15:17 -07:00
b5bfdc4418 Update CONTRIBUTING.md 2020-05-11 15:56:49 -07:00
59730c60ec Update CONTRIBUTING.md 2020-05-11 15:54:25 -07:00
4a87a5d847 Show object styles in preview modal (#3018)
* Adds conditional styles to Preview window
2020-05-11 14:25:39 -07:00
421c09ec2c Allow users to lazy load Tabs (#2958)
* lazy load tabs

* remove listener on destroy

* fix lint error

* Store current tab position on domainObject

* remove lodash dependency and use keystring
2020-05-08 10:36:13 -07:00
0679b246b8 [Notebook]: Remove default section/page from localstorage on notebook delete (#2900)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-05-07 16:13:32 -07:00
83f9c6c528 improve plot gestures - and clean up (#3013) 2020-05-06 10:33:59 -07:00
a5f3ba6259 Use evalAsync instead of digest() (#3001)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-05-05 12:23:41 -07:00
a70facf0c8 Merge pull request #3000 from nasa/upgrade-moment
Upgrade moment to 2.25.3
2020-05-05 11:01:39 -07:00
447fe94325 Merge branch 'upgrade-moment' of https://github.com/nasa/openmct into upgrade-moment 2020-05-05 10:36:43 -07:00
8e2b666766 Upgraded moment version to 2.25.3 2020-05-05 10:36:33 -07:00
dcbfbdbb89 Merge branch 'master' into upgrade-moment 2020-05-05 10:12:50 -07:00
4c76bf34ab Highlight currently winning Condition in Condition Set Edit and Read-only views (#2936)
* Preview condition styles on selecting that condition or one of it's styles

Co-authored-by: charlesh88 <charlesh88@gmail.com>
2020-05-05 09:55:42 -07:00
81b7a9d3e0 Merge branch 'master' into upgrade-moment 2020-05-01 16:47:26 -07:00
dc573c479c Upgrade moment to 2.24.0 2020-05-01 16:25:49 -07:00
23303c910e Don't allow recursive Preview actions #2775 (#2869)
* Don't allow recursive Preview actions #2775

* actionsToBeIncluded and actionsToBeSkipped passed in as options object.

* Revert "actionsToBeIncluded and actionsToBeSkipped passed in as options object."

This reverts commit f501d0b4ba.

* Revert "Don't allow recursive Preview actions #2775"

This reverts commit 5563cbea3a.

* Don't allow recursive Preview actions

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-05-01 09:33:10 -07:00
3282934cf6 fix test coverage. (#2951)
* fix test coverage.

* changes per comments + added test-coverage script to increase max-old-space-size of V8
ref: https://nodejs.org/api/cli.html#cli_max_old_space_size_size_in_mbytes

* renamed test:coverage and test:debug.

* circle-ci to use test:coverage.

* reduced test coverage thresholds.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-30 16:57:53 -07:00
c157fab081 [Notebook] Save snapshot dropdown should be available from "view large" overlay #2922 (#2926)
* [Notebook] Save snapshot dropdown should be available from "view large" overlay #2922\
* Significant improvements to Snapshot styling
* [Notebook] Embed links aren't navigating #2979

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-30 16:39:20 -07:00
7c07b66cc9 [Notebook] : Error in event handler for "updateSection": "TypeError: Cannot read property 'id' of undefined" #2921 (#2924)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-30 16:30:09 -07:00
7a906ccf5c Preview condition styles on selecting that condition or one of it's styles (#2925)
* Preview condition styles on selecting that condition or one of it's styles
* Do not evaluate conditional styles in edit mode

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-30 13:00:43 -07:00
ff7debfb81 [Notebook] Entries and Embeds need to use the same timesystem #2920 (#2923)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-30 11:56:08 -07:00
92ba103f45 modified eslint script and fixed errors found (#2905)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-30 11:53:07 -07:00
2c2d8d6b56 [Notebook]: Unnecessary notification "Time bounds changed to fixed timespan mode" #2843 (#2866)
* [Notebook]: Unnecessary notification "Time bounds changed to fixed timespan mode" #2843

* removed stopclock call.

Co-authored-by: Andrew Henry <akhenry@gmail.com>
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-04-30 10:47:49 -07:00
cfadb9f4fd Fixes #2901 (#2902)
- Mod PreviewAction to prevent folders from being previewed;

Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-30 09:48:16 -07:00
396817b2d1 handle non-valid requests (#2984)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-04-29 15:24:12 -07:00
96eb6d6b74 [Conditionals] evaluation fixes (#2981)
* change single output to state and value

* do not send telemetryObjects to telemetry api request cal

* normalize data on requests

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-04-29 14:56:07 -07:00
cb5d47f66f Use only the values required for description (#2919)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-28 16:58:58 -07:00
ea90d02d66 Show the Styles tab for non creatable layout objects including condition sets (#2975) 2020-04-28 13:10:29 -07:00
95f73d8eb8 [Conditionals] fix #2961 in master (#2969)
* use correct id for telemetry requests

* request and subscription data cache should be mutually exclusive

use latest timestamp for any/all requests

* do not add prop to datum

remove unnecessary if check

Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-04-28 13:02:23 -07:00
a37c686993 Merge pull request #2968 from nasa/revert-2885-lodash-upgrade-test
Revert "Lodash upgrade"
2020-04-24 11:55:44 -07:00
f12166097c Revert "Lodash upgrade (#2885)"
This reverts commit d103a22fa0.
2020-04-24 11:53:31 -07:00
d103a22fa0 Lodash upgrade (#2885)
* upgraded lodash, changed method names
* native implementations as requested
2020-04-23 10:38:44 -07:00
04a60cfcbb fixes #2713 (#2928)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-22 15:22:11 -07:00
8d723960f4 removed acorn from package.json (#2906)
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-21 15:50:45 -07:00
6d3cd2c699 Upgrade angular from 1.4.14 to 1.7.9 (#2955)
* 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>
2020-04-21 15:34:12 -07:00
87bf94fe0a Updated year in index.html (#2930) 2020-04-21 15:28:10 -07:00
af93823b6f Elasticsearch support for change to typeless API (#2941)
* added elasticsearch to bundlemap
2020-04-21 15:23:43 -07:00
4a39ddf425 Check for any and all criteria (#2948) 2020-04-16 15:01:14 -07:00
83c273b976 Remove telemetry from criteria when not editing a condition set (#2933) 2020-04-16 12:32:32 -07:00
7dd81beb03 Remove telemetry data cache if a telemetry endpoint is removed (#2916) 2020-04-10 16:49:29 -07:00
1842d3923c [Conditionals] Only provide telemetry for incoming telemetry that is used (#2914)
* Ensures that results for a specific datapoint are evaluated atomically.

* Removes timestamp based evalutation from conditionManager

* Remove unused code

* remove generating timestamp for telemetry data

* get results directly instead of using events

* remove unused listeners, events, and helpers

* linting

* remove commented code

* telemetry criterion stores its own result

* refactor all/any telemetry criterion to use new evaluator

* tie in requests and eliminate unused code

* use current timesystem to compare latest

* scope function names

* AllTelemetryCriterion extends TelemetryCriterion

* fix telemetrycriterion and unit testing

* fix unit tests

* check if telemetry is used at condition manager level

* move check to condition manager

* remove whitespace

Co-authored-by: Joshi <simplyrender@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-10 16:45:09 -07:00
26838635b6 Ensures correct results are returned for conditions and criteria for a given telemetry datapoint (#2904)
* Ensures that results for a specific datapoint are evaluated atomically.
* Remove generating timestamp for telemetry data
* Get results directly instead of using events
* Refactor all/any telemetry criterion to use new evaluator
* Use current timesystem to compare latest
* AllTelemetryCriterion extends TelemetryCriterion

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>
2020-04-10 15:57:38 -07:00
11f2c35bb2 [Notebook]: Entries filter #2820 (#2864)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-10 15:33:50 -07:00
766f48c1ba Handles static and mixed styles for multiple items in a layout (#2907)
* Show non specific styles when updating multiple item styles
* Save sub object styles to it's domain object
* Layout UI tweak
* Fixes flexible layout bug.
* Fixes font size bug in telemetry view
* Fixes issues with newly places TVOs including transparent properties.
* Fixes #2908
* Say NO to 'transparent' === '__no_value'
- Fixes #2895;
* Ensure styles are correctly applied to domain objects and drawing objects when selected individually
* Ensure none treatment is correctly applied to objects when multple selecting
* Fix intial box border
* Tweaks to c-text-view layout
- Vertically center text;
- Normalize padding;
- Overflow: hidden;

* Tweaks to Clock and Timer layout
- Fixes #2893;
- Vertically center text;
- Normalize padding;
- Overflow: hidden;
- `position: absolute` when in Layout;

Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-10 15:22:47 -07:00
da7b93f9b3 Notebook context menu (#2888)
Notebook popup menu fix
Co-authored-by: charlesh88 <charlesh88@gmail.com>
Co-authored-by: Andrew Henry <akhenry@gmail.com>
2020-04-10 15:17:01 -07:00
99c095a69f Fixed condition-improve-reorder branch (#2912)
* wip: changing to condition as drag target

* wip

* wip

* wip

* fixed dragging issues

* fixed dragging classes and added temp border on condition with dragging class

* Conditionals sanding and shimming

- CSS and `all-dragging`;

* wip

* fixed drag end issue and changed dragging class to go on parent condition h

* drag with counter

* wip

* wip

* wip

* return to logic in ConditionCollection.vue

* wip

* completed js part with highlighted c-condition-h on dragover

* restored grippy as draggable elem, improved isValidTarget

* fixed drag text bug

* added moveIndex prop in Condition.vue

* Conditionals drag reorder styling

- Moved `.is-drag-target` class up to conditions-h element;
- Renamed `.all-dragging` to `is-active-dragging`;
- Styling for `__drop-target` elements;

* fixed incorrect default for moveIndex in condition collection, unnecessary reset in condition

* fixed downward move reorder

* removed prevent from dragenter and drag leave, changed @blur to @change for name and output fields

* removed console log

* Repair merge-damaged conditionals.scss

- Manual merge from latest master;

* Test data layout tweaked

- Prevent c-cs__test-data__controls from collapsing;

Co-authored-by: Joel McKinnon <joel.g.mckinnon@nasa.gov>
Co-authored-by: Joel McKinnon <JoelMcKinnon@users.noreply.github.com>
2020-04-10 15:04:04 -07:00
f885e83505 Merge pull request #2911 from nasa/revert-2818-condition-improve-reorder
Revert "Condition improve reorder"
2020-04-10 14:35:41 -07:00
928bc4c68a Revert "Condition improve reorder (#2818)"
This reverts commit 46fedc1a30.
2020-04-10 14:32:48 -07:00
d5539c7ae4 Merge pull request #2898 from nasa/fix-enum-comparison
Fixes enum comparisons
2020-04-10 14:03:05 -07:00
c86a104fb6 Merge branch 'master' into fix-enum-comparison 2020-04-10 13:54:04 -07:00
46fedc1a30 Condition improve reorder (#2818)
* wip: changing to condition as drag target

* wip

* wip

* wip

* fixed dragging issues

* fixed dragging classes and added temp border on condition with dragging class

* Conditionals sanding and shimming

- CSS and `all-dragging`;

* wip

* fixed drag end issue and changed dragging class to go on parent condition h

* drag with counter

* wip

* wip

* wip

* return to logic in ConditionCollection.vue

* wip

* completed js part with highlighted c-condition-h on dragover

* restored grippy as draggable elem, improved isValidTarget

* fixed drag text bug

* added moveIndex prop in Condition.vue

* Conditionals drag reorder styling

- Moved `.is-drag-target` class up to conditions-h element;
- Renamed `.all-dragging` to `is-active-dragging`;
- Styling for `__drop-target` elements;

* fixed incorrect default for moveIndex in condition collection, unnecessary reset in condition

* fixed downward move reorder

* removed prevent from dragenter and drag leave, changed @blur to @change for name and output fields

* removed console log

Co-authored-by: charlesh88 <charlesh88@gmail.com>
2020-04-10 10:02:33 -07:00
3b6ef9b44b Refactor duplicate code into functions 2020-04-09 15:33:52 -07:00
c68edd9b7d Fixes enum comparisons
Adds check for undefined
2020-04-09 09:14:31 -07:00
11574b7c40 Merge pull request #2861 from nasa/fix-telemetryview-styles
Styles for telemetry are stored on their container domain objects
2020-04-08 15:19:15 -07:00
abc2cd2413 Merge branch 'master' into fix-telemetryview-styles 2020-04-08 14:40:54 -07:00
5d74882646 Merge pull request #2871 from nasa/dave/conditionals-own-results
[Conditionals] Request and subscription results are mutually exclusive
2020-04-08 14:21:31 -07:00
9fe7f230e6 Merge branch 'master' into dave/conditionals-own-results 2020-04-08 14:16:50 -07:00
de4c5b3729 Disables conditional and static styles for hyperlinks and summary widgets. (#2887) 2020-04-08 12:30:59 -07:00
2a7901914a Merge branch 'master' into fix-telemetryview-styles 2020-04-08 11:57:33 -07:00
73b0fc6f79 Removes preventNone as per conversation with UX designer. 2020-04-08 11:46:12 -07:00
ddef16795c Conditionals and Notebook UI fixes (#2868)
- Significant fixes for Safari-compatible Flex layout in Condition Set
view;
- Changed visual approach to current-value section;
- Firefox scrollbar coloring
- Fix layout issues in Firefox;
- Consolidate Conditionals styles into single scss file;
- Fix test datum elements layout, better wrapping;
- Better approach to presence/absence of URL property in Condition
Widget;
- Fixes #2853;
- Fix errors in URL property handling in Condition Widget;
- Fixes #2853;
- Fixes #2867 - hide the View Switcher when an object is being edited;
- Refined titling on View Switcher and Notebook menu button;
- Cleaned up styles in l-browse-bar and moved into
ui/layout/layout.scss;
- Removed styles/_layout.scss;
- Hide the main view Edit button when in mobile
2020-04-08 09:36:23 -07:00
d188b9a056 do not mutate function args for criteria results either 2020-04-07 13:22:03 -07:00
f510f3edd0 Removes missed code 2020-04-07 11:59:24 -07:00
e05b0bb562 Address review comments:
Fixes telemetry view visibility and styling issue
Removes none option for border and background styles for drawing objects
2020-04-07 11:34:48 -07:00
713c5e9fb7 Merge branch 'master' into dave/conditionals-own-results 2020-04-06 18:56:08 -07:00
17bca04560 do not mutate function args 2020-04-06 18:53:48 -07:00
61bdadc33c Fixes #2878 (#2879)
- Remove background from `elementStatusColors` mixin;
- Change Indicators to use more correct style of `.s-status-on`;
2020-04-06 15:36:52 -07:00
e0c5bca47d fix unit tests 2020-04-06 14:25:55 -07:00
cdc7c1af64 Removes unused data 2020-04-06 14:04:11 -07:00
3158baa998 Merge branch 'fix-telemetryview-styles' of https://github.com/nasa/openmct into fix-telemetryview-styles 2020-04-06 14:02:45 -07:00
698508fde4 Use the subobject view type to determine where styles should be saved 2020-04-06 14:02:06 -07:00
68a96989e1 Merge branch 'master' into fix-telemetryview-styles 2020-04-06 13:57:41 -07:00
46a6a43234 Merge branch 'master' of https://github.com/nasa/openmct into fix-telemetryview-styles 2020-04-06 13:56:30 -07:00
d41fc27b55 subscriptions should use latest timestamp 2020-04-06 11:17:59 -07:00
24bb96cc90 WIP detach request data from subscription data
extract getLatestTimestamp function
2020-04-03 18:39:26 -07:00
483ee173d6 pass correct args into off listener 2020-04-02 16:34:40 -07:00
469e93d916 Merge pull request #2865 from nasa/criterion-delete
Criterion delete
2020-04-02 10:51:12 -07:00
f96dfcc942 Reassign ids for criteria when we clone conditions 2020-04-02 10:45:37 -07:00
063a6c0e51 Merge branch 'criterion-delete' of https://github.com/nasa/openmct into criterion-delete 2020-04-02 10:40:57 -07:00
7c289d76b6 Revert object.assign change 2020-04-02 10:40:39 -07:00
c617a440eb Merge branch 'master' of https://github.com/nasa/openmct into criterion-delete 2020-04-02 10:40:32 -07:00
8f81a45b9b Removes coverage branch 2020-04-02 10:30:23 -07:00
666459be87 Merge branch 'master' of https://github.com/nasa/openmct into fix-telemetryview-styles 2020-04-02 10:30:07 -07:00
53df89aa5d Merge branch 'master' into criterion-delete 2020-04-02 10:26:57 -07:00
8f553f6327 Merge pull request #2848 from nasa/fix-any-telemetry
Fix LAD requests for any/all telemetry
2020-04-02 10:23:26 -07:00
f91a64483b Adds missing id during create condition 2020-04-02 10:18:41 -07:00
de8d63c09d Merge branch 'master' of https://github.com/nasa/openmct into criterion-delete 2020-04-02 10:11:42 -07:00
58b4a6ebf5 Merge branch 'master' into fix-any-telemetry 2020-04-02 10:06:37 -07:00
9d45080526 Merge pull request #2858 from nasa/dave/conditionals-request-default
request LAD for default condition
2020-04-02 10:05:42 -07:00
d3fe2a6811 Merge branch 'master' of https://github.com/nasa/openmct into fix-telemetryview-styles 2020-04-01 15:52:55 -07:00
97b37edce4 Store telemetry styles on their container domain objects. 2020-04-01 15:51:40 -07:00
d3443518d6 reverted changes unrelated to id 2020-04-01 15:08:31 -07:00
c33314a4bf added uuid to addCriteria, cloneCriteria, changed key of v-for to criteria.id 2020-04-01 14:56:32 -07:00
59eb034ab4 Merge branch 'master' into dave/conditionals-request-default 2020-04-01 14:42:21 -07:00
67d53fb62b [Notebook]: When notebook is not default new entry button does not add new entry #2841 (#2855)
Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
2020-04-01 14:28:52 -07:00
0fd637c0e9 [Notebook]: Error in nextTick: "TypeError: Cannot read property 'focus' of null" #2845 (#2857) 2020-04-01 14:22:11 -07:00
169cc6617a added uuid() in conditionManager 2020-04-01 13:58:58 -07:00
a946325e95 request LAD for default condition 2020-04-01 13:58:27 -07:00
1beba78111 removed call to checkTelemetry in computed prop, removed if in persist(), changed key in v-for for criteria 2020-04-01 13:34:17 -07:00
2edfeaa606 added checkTelemetry call in inputCount computed prop 2020-04-01 12:15:02 -07:00
2a1f9fd063 removed recursive call 2020-04-01 11:10:10 -07:00
63fe92f8ea Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into criterion-delete 2020-04-01 10:37:01 -07:00
35f303ffa4 changed inputCount to computed property 2020-04-01 10:35:49 -07:00
dd70bb470f Merge branch 'master' of https://github.com/nasa/openmct into fix-telemetryview-styles 2020-04-01 10:18:30 -07:00
250fee125a Merge pull request #2854 from nasa/notebook-preview-action-fix
[Notebook] Embed preview action fix
2020-04-01 10:13:01 -07:00
956029c786 Merge branch 'fix-any-telemetry' of https://github.com/nasa/openmct into fix-any-telemetry 2020-04-01 10:11:30 -07:00
b9ab599c35 Fix description and errors for all/any telemetry 2020-04-01 10:10:31 -07:00
5a690932e9 Merge branch 'master' of https://github.com/nasa/openmct into notebook-preview-action-fix 2020-04-01 09:59:57 -07:00
b00757150e use objectPathJSON 2020-04-01 09:58:30 -07:00
8515a411bd Merge branch 'master' of https://github.com/nasa/openmct into fix-any-telemetry 2020-04-01 09:55:55 -07:00
3034ec016a Merge branch 'master' into fix-any-telemetry 2020-04-01 09:55:03 -07:00
a81af1ce34 check format first (#2851)
default to number
2020-03-31 21:04:52 -07:00
64c5725687 pass correct object path, and remove notebook snapshot button from preview 2020-03-31 20:59:20 -07:00
72a3248123 Fix LAD requests for any/all telemetry 2020-03-31 16:48:59 -07:00
ee4a81bdfd Conditionals feature (#2830)
Introduces conditional styling feature.
2020-03-31 15:56:06 -07:00
b90eb80584 Addresses review comments: Rename file, change copyright year, remove commented out code 2020-03-31 15:50:30 -07:00
ebaf702c59 Topic conditionals master merge (#2833)
- Restore updated symbols font file for Condition Widget icon glyph;
- Change "All telemetry | Any telemetry" to all lowercase;
- Fix cursor styles for Condition Widget;
- Fix Safari layout problems with Condition Set/section styles;
2020-03-31 15:36:50 -07:00
3956cd1c06 Merge pull request #2829 from nasa/topic-conditionals-master-merge
Topic conditionals master merge
2020-03-31 14:25:16 -07:00
064cf6747e Adds copyright text 2020-03-31 14:21:30 -07:00
8512b634c7 Merge branch 'master' of https://github.com/nasa/openmct into topic-conditionals 2020-03-31 12:54:12 -07:00
4220a8a68a [Conditionals] default condition handling (#2827)
* Sisplay default condition output by... default
2020-03-31 12:32:06 -07:00
e7e5116773 [Notebook] V2.0 development #2666 (#2755)
* Notebook v2.0
Co-authored-by: charlesh88 <charlesh88@gmail.com>
2020-03-31 12:11:11 -07:00
079201273e Merge branch 'master' into topic-conditionals 2020-03-31 12:02:37 -07:00
e4c9f156a7 Merge pull request #2800 from nasa/any-all-telemetry
Any all telemetry option for conditions.
2020-03-31 11:49:23 -07:00
42eeeea374 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into any-all-telemetry 2020-03-31 11:00:00 -07:00
7b060509f5 c-object-label changes brought over from topic-conditionals (#2823)
- SCSS mods;
- Markup in select objects
2020-03-30 17:30:53 -07:00
3ca9e9ae56 When view params change, get a new copy of the domainObject (#2813)
Update browseObject on object change
2020-03-30 17:27:10 -07:00
984bede43b Removed image properties button from display layouts toolbar (#2809)
Removed image properties button from display layouts toolbar
2020-03-30 16:58:46 -07:00
87d838c690 [Tables] Use parsed data to sort (#2785)
* Use parsed values when sorting
2020-03-30 16:57:20 -07:00
072bf361de Store styles for telemetry on domain objects 2020-03-30 16:20:22 -07:00
4e39d9fb84 Test data for condition sets (#2807)
* Test Data
* Persist testData and apply it to the conditionSet
* Do not persist the applied flag, but persist test data
Co-authored-by: charlesh88 <charlesh88@gmail.com>
2020-03-30 15:45:07 -07:00
14eaf4e899 Addresses comments: Fixes dropdown logic 2020-03-30 12:17:49 -07:00
a31d10e708 Adds NOT and XOR triggers for conditions (#2816)
* Adds XOR and NOT triggers for conditions
* Adds unit tests and fixes linting issues
2020-03-30 12:09:50 -07:00
f9e88321a3 Condition Widget refinements (#2814)
* New Condition Widget
* Add new glyphs and symbols font files
2020-03-30 11:59:27 -07:00
9e12203b86 Merge branch 'master' into topic-conditionals 2020-03-30 11:19:45 -07:00
a5326a7b95 Merge pull request #2810 from nasa/toolbar-fixes-32720
[Toolbar] fix errors when navigated away from a layout that uses toolbar
2020-03-30 11:13:17 -07:00
84874f22e6 Cast number inputs to a Number so that operations evaluate correctly (#2799)
* Cast number inputs to a Number so that operations evaluate correctly
2020-03-30 10:37:55 -07:00
d00e8b68a5 Merge pull request #2802 from nasa/clone-condition-issues
Clone condition, criteria issues
2020-03-30 09:40:00 -07:00
2907d6d79c moved opy to cloneCondition 2020-03-30 07:13:15 -07:00
a5a4bb87c5 Removed extra if statement, copied only config 2020-03-30 07:06:03 -07:00
389589d7f7 Merge pull request #2806 from nasa/preserve-user-input
Preserve user input when changing criterion comparison
2020-03-29 15:59:31 -07:00
c02cbd1ba7 Merge pull request #2804 from nasa/criterion-type-change
Criterion field change causing incorrect input type
2020-03-29 15:46:18 -07:00
90b475e17b addressed review comments 2020-03-29 14:03:49 -07:00
89a298f5b3 Removes name string fix 2020-03-27 15:25:24 -07:00
f990a14a3c Remove duplicate metadata options 2020-03-27 15:22:50 -07:00
6b00af6ece fix errors when navigated away from a layout that uses toolbar 2020-03-27 10:15:09 -07:00
5ec8ac95c1 Fixes linting issues 2020-03-27 09:42:18 -07:00
5f061001d6 fixed updateOperations, clearDependentFields, removed unnecessary ref 2020-03-27 08:52:23 -07:00
ef3c4ccf47 clear dependent fields when field selector is changed 2020-03-27 08:09:04 -07:00
1a86204637 used lodash cloneDeep for criteria, conditions 2020-03-27 07:31:41 -07:00
0a1959df38 Fixes linting issues 2020-03-26 23:00:59 -07:00
03a690a158 Fixes import 2020-03-26 22:56:39 -07:00
459a055455 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into any-all-telemetry 2020-03-26 22:55:44 -07:00
502d29dd25 Add all and any options for telemetry 2020-03-26 16:44:44 -07:00
bf947a8835 reverted to espresso (#2797) 2020-03-26 15:12:43 -07:00
f0fd0a9cc7 Use parsed telemetry data values for condition evaluations (#2783)
* Use parsed telemetry data values for condition evaluations

* Addresses comments - handles undefined value and implements format and validate formatter methods

* Merge topic-conditionals
2020-03-26 15:11:29 -07:00
7282792da1 fixed refs and ev bugs 2020-03-26 14:57:55 -07:00
ec0291c54d Implement any telemetry and all telemetry options 2020-03-26 14:01:02 -07:00
4413c29abb Merge pull request #2793 from nasa/new-widget
Add Condition Widget
2020-03-26 13:26:47 -07:00
91e1a144ed Merge branch 'master' of https://github.com/nasa/openmct into topic-conditionals 2020-03-26 13:22:59 -07:00
53440c31d5 Handles remove telemetry from condition set - this resets criterion properties (#2791)
Handles remove condition from a condition set that's being used in a conditional style.
Fixes a small bug with stye rule manager request lad results
2020-03-26 13:12:22 -07:00
5128af2531 New Condition Widget, WIP
- Remove temp test styling;
2020-03-26 13:08:44 -07:00
eedc0f13bc adds formatting for strings (#2792) 2020-03-26 13:08:28 -07:00
4172fdf1d5 Merge pull request #2788 from nasa/criterion-enum-persist
Criterion enum persist
2020-03-26 12:58:25 -07:00
7c200df4c4 resolved merge conflict 2020-03-26 12:39:50 -07:00
d1b28e079a Merge branch 'topic-conditionals' into new-widget 2020-03-26 12:34:56 -07:00
23ec838643 Merge pull request #2764 from nasa/condition-persist
Telemetry stickiness issue
2020-03-26 12:34:37 -07:00
271c619c63 Merge pull request #2789 from nasa/fix-description
Fixes description for enums
2020-03-26 12:23:40 -07:00
0552769670 change back to refs 2020-03-26 11:30:00 -07:00
99a9f5b3ba Merge pull request #2790 from nasa/telemetry-metadata-manager-fix-32620
[Metadata] Fails when trying to apply reasonable defaults to an undefined values array
2020-03-26 10:41:29 -07:00
4b535ade31 metadataManager should check for a values array
before calling map on it
2020-03-26 10:25:04 -07:00
de8f8088e2 Merge pull request #2786 from nasa/issue-2773
[Conditions] cleanup subscriptions in style rule manager
2020-03-26 09:53:16 -07:00
32c16416d3 Fixes description for enums 2020-03-26 09:45:44 -07:00
0cf27c349b Merge pull request #2768 from nasa/conditionset-multi-value-operations
Implements two new operations - is one of and is not one of
2020-03-26 09:43:08 -07:00
015aa8c637 Checks for input before processing it. 2020-03-26 09:37:52 -07:00
4a07ddbefc added persist call to change enum input 2020-03-26 09:03:32 -07:00
a81009541c Merge branch 'condition-persist' of https://github.com/nasa/openmct into criterion-enum-persist 2020-03-26 08:22:59 -07:00
1b680cfaca moved persist call into change event method and removed check on $ref 2020-03-26 08:10:35 -07:00
311ff003c0 Merge pull request #2784 from nasa/fix-conditionals
Fixes error while getting metadata when telemetry is not yet available for a criterion
2020-03-25 21:39:45 -07:00
0cae61444d New Condition Widget, WIP
- Refine base styling;
- Fix so that edited properties are reactive;
2020-03-25 19:47:21 -07:00
28a603def8 New Condition Widget, WIP
- Add condition-widget.scss file;
- Add type definitions to control display behaviors in layouts;
- Refine widget structure;
2020-03-25 18:24:14 -07:00
d2b7407674 add request for LAD data 2020-03-25 17:41:33 -07:00
fff89a6384 delete unsubscribe method on destroy 2020-03-25 17:36:27 -07:00
953b95f79c Merge branch 'topic-conditionals' into new-widget 2020-03-25 17:22:43 -07:00
6ff5ce78e1 Merge remote-tracking branch 'origin' into new-widget 2020-03-25 17:16:23 -07:00
0857fd95a7 New Condition Widget, WIP
- Rename `c-object-view` to `u-angular-object-view-wrapper` and fix to
allow style settings to be applied to it;
2020-03-25 17:15:56 -07:00
a1f2608e7c Merge pull request #2782 from nasa/conditionals-ch-fixes-032420
Misc Conditionals fixes
2020-03-25 17:14:08 -07:00
b7cea7b955 New Condition Widget, WIP
- Normalize usage of `c-object-label` across components;
2020-03-25 16:34:11 -07:00
32da19a486 New Condition Widget, WIP
- Add new Vue components, mod configs;
2020-03-25 16:19:46 -07:00
39d7dc8372 Adds unit tests for isOneOf and isNotOneOf 2020-03-25 15:50:16 -07:00
f76f537be7 removed extraneous emits and handlers 2020-03-25 15:27:48 -07:00
a681d67e05 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into conditionset-multi-value-operations 2020-03-25 14:14:23 -07:00
0a634eb490 Fixes unit tests 2020-03-25 14:08:33 -07:00
fcca8fa8d9 Fixes error while getting metadata when telemetry is not yet available for a criterion 2020-03-25 13:44:26 -07:00
829eecf1ae resolved merge conflicts 2020-03-25 13:24:43 -07:00
dc7f83754a Adds parse treatment for string format.
Adds format property to sine wave generator's name metadata
2020-03-25 12:05:24 -07:00
51498c0e75 Merge pull request #2781 from nasa/global-filters-no-request-bug-fix
Global Filters not re-requesting on value change
2020-03-25 11:57:30 -07:00
6dbdebbe05 Merge branch 'master' into global-filters-no-request-bug-fix 2020-03-25 11:54:45 -07:00
c994227d5d Merge pull request #2769 from nasa/telemetry-table-duplicate-request-fix
[Telemetry Tables] Duplicate requests when users change time system
2020-03-25 11:42:34 -07:00
761ca7ad56 remove console log 2020-03-25 11:16:25 -07:00
7f49a7bc99 Conditionals fixes and tweaks
- Fixes #2772;
- Remove styling toolbar icons in Display Layouts;
- Fix regression error in tree items that was only allowing clicks on
the name to navigate;
2020-03-25 11:12:54 -07:00
ca022b8a28 make a copy of filters before checking isEqual
- to prevent using same pointer
2020-03-25 11:11:17 -07:00
6f500d0d0b Resolves ##2741
Uses parsed telemetry data values for comparisons
2020-03-25 10:45:28 -07:00
07d101ac1c Conditionals fixes and tweaks
- Legacy wrapper fixes to allow color styling to be applied as expected;
- New `$mainViewPad` constant;
- Fix `c-control-bar` element spacing in plots;
- TODO: check for regressions, particularly with plot views;
- Fixes #2772: better `is-style-invisible` css for `c-style-thumbs`;
2020-03-24 23:45:25 -07:00
cdf0dd0c10 Conditionals fixes and tweaks
- Fixes multiple items in #2772;
- Fix missing wrapping markup, convert empty span to template;
- Add INPUT_TYPES object to allow proper setting of 'text' input type;
- Fix padding on <selects> for better inline alignment with other input
types;
2020-03-24 19:41:31 -07:00
c27c347d29 Conditionals fixes and tweaks
- Fixes #2778;
2020-03-24 18:17:13 -07:00
dc54eef2c9 Resolves #2776
Adds null checks for telemetry and domain object configuration
2020-03-24 15:40:33 -07:00
57a68a24de Apply condition sets to drawing objects in a layout + Static styling for objects. (#2767)
* Hardcoded prototype - conditional styles for display layout or generator domain objects only.
Needs Architectural review

* Updates to ConditionalStylesView

* Adds background colors list

* Show conditional styles for subObjectViews and telemetryViews

* Uses telemetry provider to determine which style is active
Removes hardcoded conditionSet work used for prototype

* Fixes failing test

* Add default styles to conditionalStyles when a condition set is added to the domain object.

* Use EventEmitter alias instead of eventEmitter3 in imports
Change variable name for better readability and clarity
Remove unused code

* Change StyleRuleManager to accept conditionStyle objects instead of domainObjects

* Uses a map for conditional styles instead of a list in order to improve performance

* Use in-built api to check for identifier equality
Pass missing arguments

* Removes unnecessary object get call.

* Conditionals styling WIP

- Tweaks for layout/overflow issues;
- Better header alignment;
- Much better approach to "accordion" spacing;

* Adds conditional styles for drawing objects

* Fixes small bugs while adding or removing nested conditional styling

* Removes hard coded conditionSetIdentifier

* Fixes small conditionManager bug

* WIP - Adds condition set selection dialog

* WIP - Add condition set

* Styling for tree dialog in selector

- New `.c-selector` class;
- Markup added to tree-item.vue to fix missing `c-object-label` wrapper;

* Adds image url to styles inspector view

* Adds highlight for selected conditionSet in selection dialog.

* Conditionals Inspector styling WIP

- Simplified Inspector markup;
- Refined `.c-inspector` layout strategy;
- Refined `.l-multipane` classes for better layout and scroll handling;
- TODOs: styling for 'styles' section; unit test, find regressions, fix;

* Read-only mode changes for the styles inspector

* Adds basic styling for styles inspector view

* Removes unused code

* Displays condition set name

* Display description for conditions

* Conditionals Inspector styling WIP

- Add new ObjectName component to Inspector;
- Add supporting styles;

* Conditionals Inspector styling WIP

- Refactor for better usage of c-object-label;
- Refactor `c-properties` classes to `c-inspect-properties`;

* Conditionals Inspector styling WIP

- Introduce `c-inspect-styles` class;
- Markup refined in ConditionalStylesView.vue;

* Conditionals Inspector styling WIP

- Fix unintended regression in `c-object-label`;

* Makes inspector view tabs sticky.
Shows errors if either telemetry or conditions are missing
Refresh conditionStyles when styles inspector is loaded to show new conditions that might be added to the conditionSet

* Conditionals styling WIP

- Added title to Condition Set selector dialog;

* Conditionals styling WIP

- CSS and markup changes;

* Conditionals styling WIP

- Markup changes;

* Componentize conditional style editor, condition description and condition error

* Conditionals styling WIP

- Conditional styling elements in Inspector, significant refinements;
- Condition description formatting;
- Significant markup simplification in StyleEditor.vue;
- Moved `.c-inspect-styles` into conditional-styles.scss;

* Conditionals styling WIP

- Added menu positioning css;

* Conditionals styling WIP

- Display images in StyleEditor `c-style-thumb` element;

* Use the condition description component to show the condition description in condition set views

* Conditionals styling WIP

- New `u-alert` and `u-error` classes and mixin;
- New $colorError theme constants;

* Conditionals styling WIP

- Fixed background: cover or c-style-thumbs;

* Conditionals styling WIP

- Add navigate-or-preview functionality to attached Condition Set used
for conditional styling (thank you Deep!);
- Better theme-compliant box-shadowing on c-style-thumb;
- Added default color property to cClickIcon SCSS mixin;

* Fixes ConditionDescription and ConditionErrors views

* Allow static styles for domain Objects and display layout items

* Consolidate handling of 'none' style to the object styles mixin

* Adds visibility option to child items

* Conditionals styling WIP

- Add `is-style-invisible` class;
- Better color approach for table headers to support domain object
styling;

* Change visibility to isInvisible class

* Fixes visibility for object views and telemetry views

* Fixes selection of condition set from tree view

* Conditionals styling WIP

- Added new $glyph-icon-eye-disabled font symbol and related class;
- Modded glyphs used for visibility toggle button;
- Modded StyleEditor thumb preview to reflect visibility setting;
- Tweaked `is-style-invisible` opacity property;
- Code cleanup;

* Conditionals styling WIP

- Display disabled toolbar for Inspector styles in Browse mode;
- Better approach to 'is-style-invisible' `c-style-thumb` with new
bgCheckerboard mixin;
- Moved `$controlDisabledOpacity` into a theme constant;
- Refined spacing in Inspector grid;

* Fixes linting issues

* Fixes telemetry metadata name

* criterion descriptions is now an array of strings

* Fixes spacing

* Removes commented out code.

* Remove v-if

Co-authored-by: charlesh88 <charlesh88@gmail.com>
2020-03-24 13:09:21 -07:00
2c1b4b4cfc Merge pull request #2759 from nasa/dave/conditions-telemetry
[Conditions] Request, Subscribe to, and Provide Telemetry
2020-03-24 11:43:09 -07:00
437e8a0263 always load composition 2020-03-24 11:15:58 -07:00
0a2e912091 removed refs from dom elements and added index to call to isLastCriterion 2020-03-24 09:43:54 -07:00
87513a14b7 removed log 2020-03-23 17:47:35 -07:00
168c040f3c fix sticky telemetry selection issue 2020-03-23 16:16:58 -07:00
78487a48f6 restrict conditionManager instances to one per domainObject 2020-03-23 16:04:37 -07:00
a5a197680d remove debug 2020-03-23 15:58:01 -07:00
d42bd44485 remove logging statement 2020-03-23 15:24:24 -07:00
77b705ecc8 add telemetry object back for criterion 2020-03-23 15:21:51 -07:00
48af39a584 Merge branch 'topic-conditionals' into dave/conditions-telemetry 2020-03-23 14:58:32 -07:00
ec978f3a35 when a time system is changed, it emits a timeSystem update as well as a bounds update, this caused telemetry table to request data twice when users changed time systems 2020-03-23 14:21:46 -07:00
f13714e0c4 rename telemetry subscription calls 2020-03-23 13:53:19 -07:00
42ac3ef9af Implements two new operations - is one of and is not one of that evaluates to true if telemetry matches one of many values 2020-03-23 13:21:22 -07:00
26ffe8efde remove comment 2020-03-23 13:05:48 -07:00
87b4000b12 Merge pull request #2763 from nasa/dave/conditions-views
[Conditions] Enable dropping Condition Sets into overlay plots
2020-03-23 12:44:48 -07:00
f790c9bd39 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into topic-conditionals 2020-03-23 11:55:33 -07:00
096c9688d5 Merge branch 'master' of https://github.com/nasa/openmct into topic-conditionals 2020-03-23 11:55:12 -07:00
1f19f480ce fix unit tests 2020-03-20 17:38:29 -07:00
44f48a3e2a moved persist calls to events, used emit to save name and fieldname props 2020-03-20 17:37:48 -07:00
60fce4a003 remove completed TODO comments 2020-03-20 17:08:55 -07:00
f04b5b689e suppress plot view on view condition sets 2020-03-20 17:08:23 -07:00
05d981768e change string output to enum for plot views 2020-03-20 17:07:51 -07:00
e4a6c21101 load composition using less code 2020-03-20 15:08:45 -07:00
d51dd8b7d0 fix broken tests 2020-03-20 15:00:24 -07:00
aed5377ad2 use existing var instead of recalculating
on listener should be off in destroy()
2020-03-20 11:44:05 -07:00
459b2060a5 Merge pull request #2727 from nasa/swg-randomness
Adds customizable randomness factor to sine wave generator
2020-03-20 10:25:17 -07:00
cbeb25c583 request telemetry from all conditions
if conditions have no criteria (isDefault) then nothing will be requested
2020-03-20 10:16:02 -07:00
b38a9ad4ce exclude default condition when requesting telemetry 2020-03-20 10:12:02 -07:00
ecf3e19f16 remove listener on destroy 2020-03-19 20:30:27 -07:00
3b82fd5d8b Merge branch 'topic-conditionals' into dave/conditions-telemetry 2020-03-19 20:28:40 -07:00
e08b4ff0ab Merge pull request #2751 from nasa/fix-enum-metadata
Handles enum meta data for criteria
2020-03-19 20:18:35 -07:00
1f3ec77bf1 Merge branch 'topic-conditionals' into fix-enum-metadata 2020-03-19 20:15:05 -07:00
3f61db2067 pass telemetry down to criteria. criteria listens to corresponding endpoints. 2020-03-19 17:30:02 -07:00
ce1fdbddda Merge pull request #2757 from nasa/conditions-set-cleanup
[Conditions] Condition Set cleanup
2020-03-19 15:19:13 -07:00
5332d136b7 Fix small bug with inputCount 2020-03-19 15:16:12 -07:00
983ed7f0e7 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into fix-enum-metadata 2020-03-19 14:06:25 -07:00
11978cd869 remove straggler call
linting fix
2020-03-19 10:22:48 -07:00
00d1b5e69f avoid multiple instantiations of condtionManager if possible 2020-03-19 10:18:57 -07:00
6731283cf8 Merge pull request #2734 from nasa/condition-description
Condition dynamic summary description based on criteria
2020-03-18 15:25:19 -07:00
6b4cd25417 Merge branch 'topic-conditionals' into dave/conditions-telemetry 2020-03-18 10:58:17 -07:00
0cd2799d00 added isLastCriterion comp method 2020-03-18 10:24:43 -07:00
243b9cac24 subscribe to telemetry 2020-03-18 10:21:53 -07:00
316e0f24cf added fieldName prop to telemetry object, computed props for canEvaluateCriteria, getConjunction, simplified getRule method 2020-03-18 10:18:42 -07:00
05f94edb49 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into topic-conditionals 2020-03-18 09:29:10 -07:00
e22458f09e Merge branch 'master' of https://github.com/nasa/openmct into topic-conditionals 2020-03-18 09:28:53 -07:00
cc2df8401b vue style render of description 2020-03-17 17:36:55 -07:00
43a82ec05f Conditional styles for drawing objects (#2740)
* Hardcoded prototype - conditional styles for display layout or generator domain objects only.
* Adds background colors list
* Show conditional styles for subObjectViews and telemetryViews
* Uses telemetry provider to determine which style is active
* Removes hardcoded conditionSet work used for prototype
* Add default styles to conditionalStyles when a condition set is added to the domain object.
* Use EventEmitter alias instead of eventEmitter3 in imports
* Change StyleRuleManager to accept conditionStyle objects instead of domainObjects
* Uses a map for conditional styles instead of a list in order to improve performance
* Use in-built api to check for identifier equality
* Removes unnecessary object get call.
* Adds conditional styles for drawing objects
* Removes hard coded conditionSetIdentifier
* Fixes small conditionManager bug
2020-03-17 14:42:15 -07:00
fe2e29d69b Merge pull request #2753 from nasa/remove-ConditionSetView-telemetry
Remove telemetry subscription from conditionSet edit view
2020-03-17 13:49:25 -07:00
60aecfe27e Merge branch 'topic-conditionals' into dave/conditions-telemetry 2020-03-17 12:00:57 -07:00
5d21a8b6fe Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into remove-ConditionSetView-telemetry 2020-03-17 11:06:51 -07:00
500ab52476 Merge pull request #2754 from nasa/conditions-observables
[Conditions] Remove uneccessary update function
2020-03-17 11:05:46 -07:00
b0bb723357 resolve merge, address review comments 2020-03-17 10:31:19 -07:00
b7fffeab1c conditionManager controls subscriptions 2020-03-16 21:57:42 -07:00
e339d743ed remove uneccessary update call 2020-03-16 16:01:12 -07:00
84f0d49d6f code is documentation 2020-03-16 15:35:13 -07:00
090e89d524 remove testing aid 2020-03-16 15:34:12 -07:00
90dd53e954 Merge branch 'topic-conditionals' into dave/condition-telemetry-request 2020-03-16 15:31:19 -07:00
6ab60ab52e ConditionSet view listens to a listener from conditionCollection to display current output. 2020-03-16 15:00:16 -07:00
8975bc8c55 Handles enum meta data for criteria
Ensures metadata with sources are also handled correctly
2020-03-16 13:36:33 -07:00
55e5c49f6e Merge pull request #2747 from nasa/conditions-do-refactor
Conditions refactor - not domain objects anymore
2020-03-16 10:59:31 -07:00
f090f7ffe7 Removes comment. 2020-03-16 10:51:33 -07:00
94b5617e63 Since we're observing for changes to the conditionSet domain object, we don't need to re-fetch it with persist. 2020-03-16 10:50:11 -07:00
41c79c6032 [Conditions] ConditionManager should observe its own mutations (#2748)
* change blur listener to change listener to watch for immediate updates to input

* move observe ConditionManager logic into ConditionManager
2020-03-16 10:14:46 -07:00
83c648cc26 Addresses comments 2020-03-13 14:24:47 -07:00
76e7fec1a0 Ensures the conditionManager is in sync with outside changes so that composition is not thrown away. 2020-03-13 14:08:14 -07:00
09bfd80f69 Fix bug with telemetry disappearing 2020-03-13 12:50:06 -07:00
15a7d03e74 rename function for clarity 2020-03-13 09:36:17 -07:00
1dc9743484 remove unecessary get call 2020-03-13 09:26:46 -07:00
8f05c57d1a Fixes clone condition bug 2020-03-13 09:09:50 -07:00
81caa27cba Fixes failing tests 2020-03-12 14:38:39 -07:00
74a7ef2565 Fix bug with removeCondition 2020-03-12 14:06:43 -07:00
649575fd2d Moves domain object observe logic to the condition set telemetry provider 2020-03-12 13:29:50 -07:00
b75b7a958a added input types and fixed bug for isDefined, isUndefined comparisons 2020-03-12 13:14:54 -07:00
625b39d722 Fix typo 2020-03-12 13:06:56 -07:00
65f80f4c45 Resubscribe to the conditionSet telemetry provider when the condition set domain object changes. 2020-03-12 13:05:03 -07:00
02cd3048c8 Removed conditions as domain objects 2020-03-12 12:33:04 -07:00
63feaef988 reinitialize rule string in forEach 2020-03-11 15:22:17 -07:00
6095872682 remove logging 2020-03-10 10:08:53 -07:00
dba55867f4 fix broken unit tests 2020-03-10 09:59:12 -07:00
0da80c2a67 move var declaration around for clarity 2020-03-10 09:58:57 -07:00
084df5329a Merge branch 'topic-conditionals' into dave/condition-telemetry-request 2020-03-09 16:33:55 -07:00
49ff0c79db tidy up condition manager use in telemetry provider 2020-03-09 16:15:53 -07:00
7a4b967a01 condition sets with no telemetry points should not provide telemetry 2020-03-09 13:28:37 -07:00
ddfa611c44 Merge branch 'master' into swg-randomness 2020-03-09 13:11:31 -07:00
efca7c8e58 added descriptions to conditions 2020-03-09 12:42:44 -07:00
8900072239 added computed property and method to get description 2020-03-09 11:50:11 -07:00
a7e57c62f4 linting fixes (#2733) 2020-03-09 11:15:15 -07:00
24bade2284 provide correct data to getLatestTimestamp call 2020-03-09 10:59:05 -07:00
5fcc4eebe1 Add a re-calculate column width button (#2719)
* Add a recalculate Column width button

* Tweaks to telemetry table for recalculateColumnWidths

- Recalc button now hidden if isAutosizeEnabled === false;
- Recalc button label, title edited for clarity;
- Normalized button titles for other table buttons;
- Fixed `.c-separator` height issue;

* toggle between expand and autosize

* Tweaked button title text

* remove nested loop

* fix lint errors

* remove unecessary promise and use clientWidth instead of offsetWidth

Co-authored-by: charlesh88 <charlesh88@gmail.com>
2020-03-09 10:31:26 -07:00
27a09239e3 Integrate Conditionals styling into topic-conditionals (try 2) (#2730)
* Styling for Conditionals WIP

- Condition Set markup and styling WIP;

* Styling for Conditionals WIP

- Condition Set markup and styling WIP;

* Styling for Conditionals WIP

- Main layout and container styling refinement, simplification and
normalization;

* Styling for Conditionals WIP

- Begin styling for individual condition elements;

* Styling for Conditionals WIP

- Condition styling, very initial;

* Conditionals styling WIP

- Redo work done previously and lost due to merging;
- Overall layout in edit mode;
- Styling for hint element;

* Conditionals styling WIP

- Major progress on Conditionals edit-view styling;
- Grid layout WIP in condition element;
- Added new `.c-grippy` class;

* Conditionals styling WIP

- discreteItem theme constants refined, add
`$colorDiscreteItemCurrentBg` color value;
- `.c-grippy` enhanced;
- Condition layout significantly refined;

* Conditionals styling WIP

- Styling for browse view in Condition Set;
- Refined alignment and styles for condition header;

* Conditionals styling WIP

- Cleanups;
- Significant improvements to flex layout;
- Test Data layout and element formatting;

* Conditionals styling WIP

- Better approach to condition set hinting;

* Conditionals styling WIP

- Merge and integrate changes from Joel;
- 'Add Criteria' button now disabled until telemetry has been added;
- Fix JS configuration error with help from Joel;

* Conditionals styling WIP

- Much better flex approach to sections layout;
- Sanding and shimming;

* Conditionals styling WIP

- Fixed some linting;

* Conditionals styling WIP

- Tweaks for layouts issues;
2020-03-09 10:08:39 -07:00
8d86c914a1 Merge pull request #2732 from nasa/minmax-fix-382020
Revert minMax to minmax
2020-03-09 10:05:42 -07:00
fab04519c6 fix minmax typo 2020-03-08 20:11:04 -07:00
4a5e106709 request LAD for conditions provides telemetry 2020-03-06 17:33:21 -08:00
4675fc8ae6 Conditional styles (#2718)
* Hardcoded prototype - conditional styles for display layout or generator domain objects only.
Needs Architectural review

* Updates to ConditionalStylesView

* Adds background colors list

* Show conditional styles for subObjectViews and telemetryViews

* Uses telemetry provider to determine which style is active
Removes hardcoded conditionSet work used for prototype

* Fixes failing test

* Add default styles to conditionalStyles when a condition set is added to the domain object.

* Use EventEmitter alias instead of eventEmitter3 in imports
Change variable name for better readability and clarity
Remove unused code

* Change StyleRuleManager to accept conditionStyle objects instead of domainObjects

* Uses a map for conditional styles instead of a list in order to improve performance

* Use in-built api to check for identifier equality
Pass missing arguments

* Removes unnecessary object get call.
2020-03-06 14:09:52 -08:00
cf9336dae9 WIP receive criterion results and compute condition results 2020-03-06 11:01:15 -08:00
7f32d196e4 WIP request gets to telemetry criterion before erroring 2020-03-05 23:11:20 -08:00
897d05276a WIP continue to add support for LAD request
TODO conditionCollection needs to load before condition requests can be made
2020-03-05 16:42:31 -08:00
3e6509ce6f WIP add support for LAD request 2020-03-05 12:14:27 -08:00
576b843bd5 Merge branch 'master' of https://github.com/nasa/openmct into topic-conditionals 2020-03-05 10:00:54 -08:00
9b8b63a0d8 Revert record size limit to 5000 2020-03-05 08:56:47 -08:00
a1b1fa464e Adds customizable randomness factor to sine wave generator. Fixes #2726 2020-03-05 08:55:05 -08:00
95f855f905 Merge pull request #2717 from nasa/dave/conditions-telemetry
[Conditions] Use latest incoming telemetry timestamp for providing telemetry
2020-03-04 12:05:33 -08:00
5b00246cc0 fix failing unit test 2020-03-04 12:00:42 -08:00
47c388450f Merge pull request #2707 from nasa/alternate-control-bar-fixes
[Telemetry Tables] - Alternate control bar fixes
2020-03-04 11:54:38 -08:00
34a149661c keep track of latest timestamp 2020-03-03 17:34:27 -08:00
4c4b587d9c pass timestamp datum through to ConditionManager 2020-03-03 14:37:11 -08:00
b8b838f490 get all timesystems 2020-03-03 12:50:40 -08:00
8cb29ba4a9 add handleConditionUpdated back 2020-03-03 11:34:30 -08:00
ece6223b23 Merge pull request #2704 from nasa/dave/provide-conditions-telemetry
[Conditions] Conditions to provide telemetry
2020-03-02 14:56:10 -08:00
ecabd00b0c fix failing unit tests 2020-03-02 14:48:24 -08:00
768df84f10 Merge pull request #2711 from nasa/condition-output-persistance2
Added persistance for changes to output selector
2020-03-02 13:56:31 -08:00
f8b3899bb9 addressed review comments and lint errors 2020-03-02 12:30:28 -08:00
3b046db4f8 Merge pull request #2695 from nasa/firefox-drag-fix
Add setData on dragStart for FF support
2020-03-02 11:57:45 -08:00
97f829da9f added dragstop listener and dragStop method 2020-03-02 11:46:16 -08:00
fb1eed1982 Merge pull request #2706 from nasa/current-output-refactor
Refactored CurrentOutput component into ConditionSet
2020-03-02 11:28:51 -08:00
dd9b567025 revert alternate control bar for telemetry table 2020-03-02 11:09:50 -08:00
fa83b4867c removed extra div 2020-03-02 06:17:27 -08:00
47d4fc9103 removed CurrentOutput component 2020-02-28 15:32:40 -08:00
dabd0bff29 only listen for condition updates in telemetry provider 2020-02-28 15:18:14 -08:00
51c70d02d7 fix naming bug 2020-02-28 15:17:27 -08:00
b74733bf3f Add back id and conditionId required for styling 2020-02-28 15:05:27 -08:00
84ae65536b remove unused var 2020-02-28 14:40:12 -08:00
71424dcf8d Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into firefox-drag-fix 2020-02-28 14:39:02 -08:00
2c40396139 refactor for clarity 2020-02-28 14:35:57 -08:00
16a0bf9d6c Merge pull request #2703 from nasa/criterion-multi-input
Criterion multiple input fields
2020-02-28 14:07:40 -08:00
5498ba8e1e changed computeResults 2020-02-28 13:51:46 -08:00
0f9d7d2832 fix default condition edge case 2020-02-28 13:10:06 -08:00
9bd1c51a6e always use timestamp from latest datum 2020-02-28 13:06:57 -08:00
fd74fb0ec4 remove unused var 2020-02-28 12:50:17 -08:00
3626ff9947 fix linting issues 2020-02-28 12:47:34 -08:00
fd568409d3 Merge branch 'topic-conditionals' into dave/provide-conditions-telemetry 2020-02-28 12:28:59 -08:00
14e3500a88 add timestamps for default condition 2020-02-28 12:27:51 -08:00
83d08ae369 resolve merge conflicts 2020-02-28 12:17:12 -08:00
39bf601ee1 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into firefox-drag-fix 2020-02-28 11:43:17 -08:00
cfafecdd64 Merge pull request #2685 from nasa/conditionals-refactor
Conditionals refactor
2020-02-28 11:35:09 -08:00
629ca089cf Fixes for table's alternateControlBar
- Fixed hide/show of controls for better UX;
- Unit tested click select/deselect toggling;
2020-02-28 11:31:23 -08:00
89ae6ef8c7 provide telemetry with timestamps 2020-02-28 11:15:19 -08:00
300acd6ec8 remove row if user unmarks in showMarkedRowsOnly mode 2020-02-28 11:12:49 -08:00
ba780981a5 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into conditionals-refactor 2020-02-28 11:09:41 -08:00
62774678a7 enable alternatte control bar in telemetry tables for charles 2020-02-28 11:04:34 -08:00
ac13bc5850 Merge pull request #2688 from nasa/condition-trigger
Condition Any/All criteria match enabled
2020-02-28 10:53:02 -08:00
e526626e09 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into condition-trigger 2020-02-28 10:49:56 -08:00
564be6f8ba Merge branch 'condition-trigger' of https://github.com/nasa/openmct into condition-trigger 2020-02-28 10:05:11 -08:00
371a7d3a3e removed disabled inputs with no telemetry 2020-02-28 10:04:10 -08:00
8539d60562 enable trigger 2020-02-28 10:01:37 -08:00
d333fd5822 disabled add or edit condition set without telemetry 2020-02-28 10:01:37 -08:00
364191eddc Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into conditionals-refactor 2020-02-28 09:57:00 -08:00
583f4dac85 Merge branch 'conditionals-refactor' into dave/provide-conditions-telemetry 2020-02-28 09:56:25 -08:00
28255dce01 Merge pull request #2687 from nasa/remove-criteria
Added controls for remove and duplicate criteria
2020-02-28 09:53:53 -08:00
c9419d3e2d Fix for when input is not an array. This will be handled differently in an upcoming code change. 2020-02-28 09:47:58 -08:00
b386275330 removed disabled inputs with no telemetry 2020-02-28 08:55:59 -08:00
d2a45e46f1 modified getOperationFormat 2020-02-28 08:37:20 -08:00
35d1727dbf Merge pull request #2696 from nasa/marking-improvement-tables
An improvement for components using telemetry tables
2020-02-27 17:20:08 -08:00
8125a4f321 emit event when rows are marked - useful for other components using telemetry tables 2020-02-27 17:05:02 -08:00
1a409afb03 wip: addressing review comments 2020-02-27 16:32:38 -08:00
e57c18fd69 removed unused isDefault prop 2020-02-27 14:55:52 -08:00
3aec9ec6ff add setData on dragStart for FF support 2020-02-27 14:36:21 -08:00
0e9bf74332 Merge branch 'conditionals-refactor' into dave/provide-conditions-telemetry 2020-02-27 13:36:46 -08:00
2609a41ee8 Addresses comments
Removes console log statements
Fixes import paths
2020-02-27 11:21:40 -08:00
b8dc5acf00 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into conditionals-refactor 2020-02-27 11:19:35 -08:00
fbbdf8cff7 Merge pull request #2607 from krynju/f#2594
Time x-axis tick labels reversed - fix #2596
2020-02-27 11:11:05 -08:00
b0edb19239 Merge branch 'master' into f#2594 2020-02-27 11:06:59 -08:00
85902b878e Update telemetry table for multisession (#2686)
* update telemetry table to ingest marked row data, add a new alterntate bar with includes row name, selected rows and show selected rows toggle

* Enhancements for alternate toolbar in telem tables

- .c-control-bar adds style enhancements and `__label` element;
- Added `label` prop, markup and styling to ToggleSwitch;
- ToggleSwitch layout enhanced;
- Unit tested in main view and placed in Display Layout;

* made improvements to row marking

* bug fixes for marking

* fix linting issues

* -Make reviewer requested changes
-Clarify prop for marking
-Include alternateControlBar in the marking prop
- - since it only makes sense for making

Co-authored-by: Charles Hacskaylo <charlesh88@gmail.com>
2020-02-27 10:27:57 -08:00
9d5c7a4015 destroy conditionManager instance on stop providing telemetry 2020-02-26 15:26:39 -08:00
fc53e855c4 Merge branch 'conditionals-refactor' into dave/provide-conditions-telemetry 2020-02-26 15:15:22 -08:00
467c57b7c6 Merge branch 'criterion-multi-input' of https://github.com/nasa/openmct into criterion-multi-input 2020-02-26 12:32:21 -08:00
a51c0d5139 addressed review comments 2020-02-26 12:31:37 -08:00
d46310ca7d handle multiple inputs in telemetryCriterion 2020-02-26 12:31:37 -08:00
8f87cc78e8 rendering correct number of input fields depending on operation and persisting values 2020-02-26 12:31:37 -08:00
ee6e0f310e changed default input to array and clear downstream selection lists on change 2020-02-26 12:31:37 -08:00
f328a1078e filter comparison list based on field selected 2020-02-26 12:31:37 -08:00
b4cf81a0ef wip: filtering select comparison 2020-02-26 12:31:37 -08:00
1b9b7e2345 added hid/show selects 2020-02-26 12:31:37 -08:00
4456633010 output telemetry to views 2020-02-26 12:27:28 -08:00
cda97d142a Merge branch 'condition-trigger' of https://github.com/nasa/openmct into condition-trigger 2020-02-26 12:23:03 -08:00
858199e396 enable trigger 2020-02-26 12:22:29 -08:00
f504a335af disabled add or edit condition set without telemetry 2020-02-26 12:22:29 -08:00
463ec47af6 changed classname of controls div 2020-02-26 12:21:53 -08:00
ec4d121a98 changed classname of controls div 2020-02-26 11:59:04 -08:00
fea6d2df96 Merge branch 'remove-criteria' of https://github.com/nasa/openmct into remove-criteria 2020-02-26 11:53:09 -08:00
598d2b31e9 remove criterion working 2020-02-26 11:51:41 -08:00
25e28ab97c added controls for remove and duplicate criteria 2020-02-26 11:49:17 -08:00
43056c4068 implimented clone criterion 2020-02-26 11:42:06 -08:00
614206b10c remove criterion working 2020-02-26 11:42:06 -08:00
30a493d038 resolved merge conflict 2020-02-26 11:40:52 -08:00
96e433beaa Merge pull request #2677 from nasa/condition-clone-name
Condition clone name persistance
2020-02-26 11:32:48 -08:00
0915aaea3b allow conditions to be dropped into telemetry views 2020-02-26 11:31:26 -08:00
80656c1be0 Merge branch 'topic-conditionals' into dave/provide-conditions-telemetry 2020-02-26 11:11:48 -08:00
acd75f86f4 add name to conditions view 2020-02-26 11:07:25 -08:00
486dae54bd add metadata provider 2020-02-25 17:27:08 -08:00
92ecf3af1d provide telemetry
* listen to realtime data
2020-02-25 16:37:43 -08:00
fd0c19026d addressed review comments 2020-02-25 15:36:37 -08:00
3109c8d825 Destroy condition manager when the ConditionSet vue is destroyed 2020-02-25 15:06:45 -08:00
78cf75323f Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into conditionals-refactor 2020-02-25 12:31:44 -08:00
b744467f21 Bug fixes:
Ensures that the default condition emits a condition result update
Fixes remove condition
2020-02-25 12:29:47 -08:00
a0b7999ea2 Imagery fixes (#2668)
* Fix imagery-related styles and markup

- VERY WIP!!!
- Style modernizing;
- Also, padding fixes for pane.scss - unit test for regressions!

* Fix imagery-related styles and markup

- VERY WIP!!!
- Style modernizing WIP;
- Fixes to pane classes for better padding in vertical panes;

* Fix imagery-related styles and markup

- Migrated all imagery CSS into imagery-view-layout.scss from _legacy
.scss;
- CSS cleanups;
- Refactoring/simplification of thumb layout;
- Color fixed for $colorPausedFg in theme constants;

* Scroll to right instead of bottom, on autoscroll.

* Fix imagery-related styles and markup

- Make the most recent thumb visually distinct;
- Clicking a selected thumb now deselects it and unpauses the view;

* Imagery fixes

- Fixed thumb click logic to properly toggle paused when clicking a selected thumb;
- Improved CSS so that `selected` updates more quickly when selecting the latest thumb;
- Clicking the main image pause button now selects the proper thumb;

* Fix linting errors

Co-authored-by: Nikhil <nikhil.k.mandlik@nasa.gov>
2020-02-25 11:47:27 -08:00
2bb2bb6a1b Adds conditional style inspector provider (#2655)
* resolved conflicts

* Revert "Condition reorder"

* Adds conditional style inspector provider
Adds condition style tabbed view (this needs to be extended to allow more than one pane per tab in a separate issue)

* Fixes linting issues

* Merge from topic-conditionals

* In order to accomodate two tab layout for the Conditionals feature, rename the following:
- openmct.inspectorViews registry to openmct.propertiesInspector
- InspectorViewRegistry.prototype.addProvider to InspectorViewRegistry.prototype.addViewProvider.
Replace occurances of the same to the new names.

In a subsequent commit expect a new view registry for the styles inspector view registry.

* Use 'styles' property on domain objects to indicate that they should have a styles inspector tab - Note that this will not show up on existing objects but only ones that are created after this feature is added.
Use 'styles' property on domain objects to determine if a styles view can be viewed
Removed the TabbedInspectorView and repurposed the InspectorViews to show both a properties or a styles registry.
Simplified markup in Inspector.vue

* Addresses review comments:
1. Go back to using inspectorViews
2. Remove stylesInspector registry
3. Hardcode Styles Inspector component view
4. Styles tab can be viewed for all creatable objects except for the folders, webPages and conditionSets
5. ConditionalStylesInspectorViewProvider is no longer needed because we are hardcoding the styles view component.

Co-authored-by: Joel McKinnon <JoelMcKinnon@users.noreply.github.com>
2020-02-25 10:41:58 -08:00
11ed7027e7 enable trigger 2020-02-25 09:31:29 -08:00
36bcfd5a41 disabled add or edit condition set without telemetry 2020-02-25 08:25:02 -08:00
70b5c627ca handle multiple inputs in telemetryCriterion 2020-02-24 16:48:27 -08:00
f4f1d0387b rendering correct number of input fields depending on operation and persisting values 2020-02-24 16:31:59 -08:00
a1bf4a92e5 changed default input to array and clear downstream selection lists on change 2020-02-24 15:50:01 -08:00
7d2256d70f Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into conditionals-refactor 2020-02-24 15:44:07 -08:00
5814d2a35e Updates conditionManager.js to emit the output of the winning condition instead of the identifier of that condition 2020-02-24 15:43:03 -08:00
6ab84c0bc3 Refactoring conditionals
Move logic for conditions into conditionManager out of conditionCollection.vue
2020-02-24 15:05:33 -08:00
a7fc9b3caa filter comparison list based on field selected 2020-02-23 15:19:03 -08:00
67f493f012 rebased with topic-conditionals and resolved conflict 2020-02-23 11:30:01 -08:00
0686e6d38f implimented clone criterion 2020-02-23 11:26:58 -08:00
7fc825949c remove criterion working 2020-02-23 11:26:58 -08:00
2a9ccdcffd added controls for remove and duplicate criteria 2020-02-23 11:26:58 -08:00
6db78af69f fixed condition name persistance 2020-02-23 09:58:32 -08:00
038489256c updated Condition.vue with modifications to ConditionEdit.vue and deleted ConditionEdit as it is no longer used 2020-02-23 09:06:37 -08:00
53b785269b wip: filtering select comparison 2020-02-21 06:43:16 -08:00
007b14b5c9 added hid/show selects 2020-02-20 14:59:04 -08:00
50b331c451 fixed condition clone 2020-02-20 14:45:30 -08:00
44fc62e0ba fix reordering 2020-02-20 14:17:15 -08:00
2635f085f0 Merge pull request #2665 from nasa/add-criteria
Add multiple criteria and persist inputs
2020-02-20 13:51:31 -08:00
22161fce7f implimented clone criterion 2020-02-20 12:44:50 -08:00
386fc75047 remove criterion working 2020-02-20 12:23:18 -08:00
fa6dd84945 added controls for remove and duplicate criteria 2020-02-20 07:23:38 -08:00
d425bd564c fixed merge conflicts 2020-02-19 13:29:14 -08:00
93e3065b3e Fixes subscription of telelemtry when new criteria is added to a condition 2020-02-19 12:51:24 -08:00
0ad2d59924 Fixes tests 2020-02-19 12:51:15 -08:00
f4468a8233 Fixing condition output 2020-02-18 16:04:14 -08:00
dc08877bbb Persists the condition domain object so that we can retrieve it with it's identifier in child components like condition.vue 2020-02-18 15:35:03 -08:00
f08caa6135 addressed review comments 2020-02-18 12:40:33 -08:00
ad7d029ce8 addressed review comments 2020-02-18 11:14:50 -08:00
387912b4d3 WIP fixing telemetry subscribe 2020-02-18 11:05:54 -08:00
53e0ed4d4a refactored to address review comments 2020-02-14 15:23:15 -08:00
11c205b5c4 addressed review comments 2020-02-14 14:46:14 -08:00
4ede6351ec addressed some review comments 2020-02-14 12:45:32 -08:00
24bbcb466f wip: fixing add criteria 2020-02-13 16:13:29 -08:00
682601477c Add glyphs (#2667)
- icon-flag for use with VISTA Frame Accountability;
- icon-conditional, and bg-icon-conditional for Conditionals;
2020-02-13 13:11:24 -08:00
b6b5cfe403 fixed default state of output selector 2020-02-13 10:52:37 -08:00
b6ce9c6ed7 trigger label and add divider 2020-02-12 15:58:17 -08:00
6e5e8f0ce8 refactored setOutput 2020-02-12 13:31:55 -08:00
2415d785cc fixed set output field 2020-02-12 12:45:38 -08:00
2b5d6beb84 resolved conflicts 2020-02-12 11:14:17 -08:00
86316d8940 Add multiple criteria, set and persist inputs 2020-02-12 10:41:43 -08:00
1f2b5ec5c8 WIP: separating criterion level logic to its own component 2020-02-11 10:28:59 -08:00
0a9d23d86f Merge pull request #2633 from nasa/pane-persistence
[Navigation Tree] save current state of navigation tree
2020-02-06 16:23:19 -08:00
379e37c881 Merge branch 'master' into pane-persistence 2020-02-06 16:17:59 -08:00
37ef269dce Merge pull request #2611 from nasa/filters-fetch-bug-fix
Check if filters are not equal before refetching
2020-02-06 16:16:12 -08:00
8db6f8f633 criteria component WIP 2020-02-06 15:22:56 -08:00
79557165a3 refactored condition and conditionEdit components into single component named condition 2020-02-06 11:53:31 -08:00
ec1d4abde9 before Deep comments 2020-02-06 07:23:32 -08:00
07c5e2800a Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into condition-clone 2020-02-04 15:19:11 -08:00
79811d6662 Merge condition-ui branch into this. 2020-02-04 15:12:33 -08:00
67919ece16 Merge pull request #2656 from nasa/condition-ui-redo
Condition ui redo
2020-02-04 15:11:02 -08:00
7029dcf09e Merge commit 'e580734c9593ab863f397b52ec9662f045fc7b61' of https://github.com/nasa/openmct into condition-ui-redo 2020-02-04 14:37:39 -08:00
38deef6e72 Merge branch 'master' into filters-fetch-bug-fix 2020-02-03 13:45:26 -08:00
b6220288ac Merge branch 'master' into f#2594 2020-02-03 13:36:29 -08:00
fc03b3a79d updateTemetry failing to return object on line 328 2020-02-02 08:22:23 -08:00
096d6371f1 add condition no errors 2020-02-01 10:07:40 -08:00
e580734c95 Set criteria options (#2630)
* Set criteria options on condition edit

* Persists telemetry options correctly and loads them on mount

* Fixes saving the input value for criteria

* Display active condition's output in read only view

* Destroy classes and unsubscribe when condition set view is destroyed

* Fixes saving the input value for a criteria

* Handle telemetry removal

* Fixes tests

* Addresses comments - change function names, consolidate compute function

* Addresses review comments
- Use camelCase for events (did not change properties as eslint complains)
- Reduce repeated property access by assigning to a variable
- Use descriptive variable name

* Addressing comments - improves input value field visibility logic

* Change variable name to reflect intent
2020-01-31 14:44:28 -08:00
2690156a9d changed kebab-case event names to camelCase 2020-01-31 13:44:07 -08:00
7ac7a40b1b resolve merge conflicts 2020-01-31 13:21:31 -08:00
dc9e572052 Change variable name to reflect intent 2020-01-31 13:10:36 -08:00
b15ebfd492 Addressing comments - improves input value field visibility logic 2020-01-31 13:08:41 -08:00
8baee7a0c9 WIP: debugging 2020-01-31 09:54:37 -08:00
dc85063467 added isDragging prop to prevent other drag actions 2020-01-31 08:08:39 -08:00
be428b326e Merge branch 'condition-ui' of https://github.com/nasa/openmct into condition-ui 2020-01-30 15:12:34 -08:00
dd0e360709 addressed review comments 2020-01-30 15:11:47 -08:00
04da88e3b4 addressed review comments 2020-01-30 14:53:19 -08:00
9bcab02e35 WIP add criteria 2020-01-30 12:02:08 -08:00
1ff4d41b7c Addresses review comments
- Use camelCase for events (did not change properties as eslint complains)
- Reduce repeated property access by assigning to a variable
- Use descriptive variable name
2020-01-30 11:06:25 -08:00
04a5c8f69f resolve merge 2020-01-29 16:23:13 -08:00
8886a94a01 fixed merge conflict 2020-01-29 14:48:22 -08:00
f25eebdf3f WIP - Adding criteria using this.currentCriteria 2020-01-29 14:43:12 -08:00
f9ba46fe85 added button and set up iteratable render of criteria 2020-01-29 12:45:34 -08:00
6f6fb859d6 Merge branch 'condition-ui' of https://github.com/nasa/openmct into set-criteria-options 2020-01-28 16:33:38 -08:00
1e3389b427 Merge branch 'condition-reorder' of https://github.com/nasa/openmct into condition-reorder 2020-01-28 16:32:07 -08:00
c977c64139 added drag image and grab cursor 2020-01-28 16:31:01 -08:00
e419149378 Addresses comments - change function names, consolidate compute function 2020-01-28 16:27:30 -08:00
a5a3e41d21 Merge branch 'condition-ui' of https://github.com/nasa/openmct into condition-clone 2020-01-28 13:03:43 -08:00
ecef8eaf86 Merge branch 'condition-ui' of https://github.com/nasa/openmct into condition-reorder 2020-01-28 12:40:33 -08:00
de03cfbe64 Merge branch 'condition-ui' of https://github.com/nasa/openmct into condition-ui 2020-01-28 12:36:57 -08:00
03a6de55d6 typo in comment 2020-01-28 12:16:18 -08:00
3c5047df5e passed definition prop instead of just name 2020-01-28 12:10:21 -08:00
3cc630d4c2 added testdata toggle control 2020-01-28 11:44:29 -08:00
b3488c54cd Fixes tests 2020-01-28 10:36:13 -08:00
01b1d66bea duplicate condition complete 2020-01-28 10:05:58 -08:00
2e82edb306 remove unused var 2020-01-27 13:44:56 -08:00
8f0e773ac1 remove storing navigated to local storage 2020-01-27 13:43:13 -08:00
223a0feada comments to describe localStorage implementation 2020-01-27 10:17:27 -08:00
bc9cadaa77 fixed reorder bugs 2020-01-27 09:34:50 -08:00
0fd0da8331 rework local storage mechanisms
* use one navigated local storage item instead one per node

* use one expanded local storage item instead of one per node

* fix navigated

* collapse children when node collapsed
2020-01-27 01:06:40 -08:00
f42ec7e2c5 Handle telemetry removal 2020-01-26 23:30:19 -08:00
d6a422fbdb Fixes saving the input value for a criteria 2020-01-26 22:56:21 -08:00
d98b54bea7 Destroy classes and unsubscribe when condition set view is destroyed 2020-01-26 22:21:06 -08:00
0beda1d053 Display active condition's output in read only view 2020-01-26 22:19:27 -08:00
e912ab8f4e Fixes saving the input value for criteria 2020-01-26 22:14:26 -08:00
5055a18ca1 reorder wip 2020-01-25 12:46:15 -08:00
fa21911287 persist expanded and navigated state of node to local storage 2020-01-25 00:52:36 -08:00
96746f4042 drag to reorder conditions 2020-01-24 13:23:02 -08:00
b22ad3ded9 Persists telemetry options correctly and loads them on mount 2020-01-24 11:26:31 -08:00
7e0f475c63 style changes for dnd 2020-01-23 16:13:28 -08:00
efb3c2b71e Merge branch 'condition-ui' of https://github.com/nasa/openmct into set-criteria-options 2020-01-23 15:54:24 -08:00
862ea6986f Set criteria options on condition edit 2020-01-23 15:51:08 -08:00
cfa5dcb02e drag wip 2020-01-23 12:16:16 -08:00
23aaada79d Evaluate telemetry criterion results and display the output of conditions accordingly 2020-01-23 12:08:28 -08:00
9e4458db10 fix merge conflicts 2020-01-23 10:28:59 -08:00
a8da06033c condition view with highlighting of current condition, add/remove condition, change name, output and persist 2020-01-23 10:24:53 -08:00
0bf3597147 Display the current output based on the first condition that has evaluated to true.
Fix remove condition
2020-01-22 21:35:22 -08:00
cfd9730055 Adds missing updated method
Adds definition property to CurrentOutput
2020-01-22 13:45:32 -08:00
e88ead30dc Merge branch 'condition-from-identifier' of https://github.com/nasa/openmct into conditionSet-ui-merge 2020-01-22 13:39:08 -08:00
67b24ce846 Persist conditionCollection to the conditionSet
Populate persisted operation
2020-01-22 13:29:01 -08:00
709c3fff65 no current output rendered 2020-01-22 13:15:44 -08:00
ab6e87ae6b Updates to operation show up in conditionclass 2020-01-22 13:01:23 -08:00
cdb7066bed Moves condition class initialization to conditionEdit component
sets correct condition output in condition edit component
2020-01-22 12:07:14 -08:00
73d0507f1f persist name change 2020-01-22 11:15:49 -08:00
4d263bcf32 added persist for remove 2020-01-22 08:53:25 -08:00
2d8f61172d fixed remove 2020-01-22 08:17:03 -08:00
621c1dc11e renders current output section 2020-01-21 16:00:21 -08:00
dd136a5ff4 WIP: set current condition 2020-01-21 13:37:36 -08:00
8fc785bbd6 Merge branch 'condition-class' of https://github.com/nasa/openmct into conditionSet-with-classes 2020-01-21 10:18:51 -08:00
82be503f4f Fix broken rendering 2020-01-17 13:00:41 -08:00
7feb933519 Fix errors after converting conditionCollection to persist identifiers only 2020-01-17 11:26:46 -08:00
e806e5a293 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into conditionSet-with-classes 2020-01-17 11:04:41 -08:00
770951c6da Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into condition-class 2020-01-17 11:02:27 -08:00
7b7c7b528a 1. Persist the condition domain object — done
2. Persist the condition identifier only in configuration.conditionCollection array, not the domain object — done
3. WIP - Retrieve the condition domain object and instantiate the condition classes on load
2020-01-16 16:11:23 -08:00
a554aa20f8 Addresses code review comments (#2624)
* Addresses code review comments
- Change copyright to 2020
- Fix class parameters, tests

* Fixes this for initilize function
2020-01-16 15:56:58 -08:00
ff1ef1f184 fixes typo 2020-01-16 15:48:40 -08:00
bf1efaf912 Merge branch 'condition-class' of https://github.com/nasa/openmct into conditionSet-with-classes 2020-01-16 15:47:34 -08:00
ff2bc41317 Merge branch 'telemetry-criterion' of https://github.com/nasa/openmct into conditionSet-with-classes 2020-01-16 15:47:04 -08:00
bdaf8aff15 Merge branch 'condition-view' of https://github.com/nasa/openmct into conditionSet-with-classes 2020-01-16 15:46:28 -08:00
1dc4f9f6bb Fixes this for the handleConditionUpdated function 2020-01-16 15:44:59 -08:00
d6320f5da1 Fixes this for initilize function 2020-01-16 15:43:33 -08:00
276be5e857 Merge branch 'condition-class' of https://github.com/nasa/openmct into conditionSet-with-classes 2020-01-16 15:36:29 -08:00
3101e77ecc Merge branch 'telemetry-criterion' of https://github.com/nasa/openmct into conditionSet-with-classes 2020-01-16 15:34:53 -08:00
ab6dae16f1 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into conditionSet-with-classes 2020-01-16 15:32:40 -08:00
36222d79c6 Updates copyright, jsdocs, small refactor 2020-01-16 15:30:49 -08:00
08656a6674 persist output string selection 2020-01-16 15:29:07 -08:00
8034317796 Merge branch 'telemetry-criterion' of https://github.com/nasa/openmct into condition-class 2020-01-16 15:08:15 -08:00
a59f3a550e Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into condition-class 2020-01-16 15:07:57 -08:00
415b967c0b Addresses code review comments
- Change copyright to 2020
- Fix class parameters, tests
2020-01-16 15:03:14 -08:00
642499d519 added string output field 2020-01-16 09:56:17 -08:00
fa0a54eee7 css fixes and add any/all control 2020-01-16 09:13:43 -08:00
82f175f6c7 fixed style issues and added default select labels 2020-01-15 17:59:51 -08:00
8df549e8d9 Addresses comments from PR: https://github.com/nasa/openmct/pull/2621 (#2623)
* Addresses comments from PR: https://github.com/nasa/openmct/pull/2621

* Fixes import path.
2020-01-15 15:39:31 -08:00
9fd720777b Merge branch 'conditionSet-view' of https://github.com/nasa/openmct into conditionSet-with-classes 2020-01-15 11:28:18 -08:00
4c68c725b1 Adding telemetry options to ConditionEdit 2020-01-15 10:51:45 -08:00
06a5207c6d deriving current output from current (blue) condition output and persisting 2020-01-14 17:07:32 -08:00
78b885c508 using current condition output for current output label 2020-01-14 13:44:19 -08:00
a18a3b6099 Adds telemetry objects on composition add 2020-01-14 13:32:13 -08:00
68949e070c Merge pull request #2621 from nasa/conditionSet-telemetry
Updates conditionSet composition policy to allow only telemetry since…
2020-01-14 11:04:46 -08:00
654333dabe Removes fdescribe 2020-01-14 10:59:11 -08:00
81b8a76f1b (WIP) Fixes cyclic error while saving conditionCollection 2020-01-14 10:57:00 -08:00
31736fa194 Merge branch 'conditionSet-view' of https://github.com/nasa/openmct into conditionSet-with-classes 2020-01-14 10:27:10 -08:00
33632ef1dc (WIP) conditionSets using ConditionClasses 2020-01-14 09:52:12 -08:00
94305ed82c persist data changes on update 2020-01-14 09:29:00 -08:00
c8abc45e25 add default condition only when none present 2020-01-14 08:38:12 -08:00
cd25459ac9 Merge branch 'conditionSet-telemetry' of https://github.com/nasa/openmct into conditionSet-view 2020-01-13 22:53:45 -08:00
aaf1eb8059 Merge branch 'condition-class' of https://github.com/nasa/openmct into conditionSet-view 2020-01-13 22:52:51 -08:00
1589e4236a Merge branch 'conditionSet-telemetry' of https://github.com/nasa/openmct into condition-class 2020-01-13 22:51:13 -08:00
8ca202d0a9 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into condition-class 2020-01-13 22:48:08 -08:00
d2f7904118 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into conditionSet-telemetry 2020-01-13 22:47:52 -08:00
2d059fb856 Merge pull request #2610 from nasa/telemetry-criterion
Adds telemetry criterion class and related tests
2020-01-13 16:07:32 -08:00
8bbd7898bb Updates conditionSet composition policy to allow only telemetry since we're no longer using composition for condition domain objects 2020-01-13 14:59:45 -08:00
ea6f8c9a50 small fixes 2020-01-13 14:45:00 -08:00
d152440436 Fixes careless mistake - undefined object. 2020-01-13 14:12:05 -08:00
1ffe76a525 Fixes linting issue. 2020-01-13 14:09:59 -08:00
a6825f530c Fixes failing test. 2020-01-13 14:05:43 -08:00
7cf6dc386f Removes use of createOpenMCT and uses mock object for openmct instead. 2020-01-13 13:58:25 -08:00
5d8252bb07 Adds tests for condition class 2020-01-13 13:55:54 -08:00
e1e1e0fb2f temp 2020-01-13 13:52:26 -08:00
4f7345563f temp 2020-01-13 13:40:43 -08:00
68a2b9f3a8 added Default name 2020-01-10 16:45:20 -08:00
d79402c568 name property WIP 2020-01-10 15:58:16 -08:00
d0e8f650be remove condition with persistance 2020-01-10 12:59:43 -08:00
d819c6efe2 add condition button working with persistance 2020-01-10 12:22:05 -08:00
91c877f234 Adds tests for Condition class 2020-01-10 10:43:55 -08:00
55a674ba7b Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into condition-class 2020-01-09 06:46:27 -08:00
36055b7c04 Changes name of emitted event 2020-01-09 06:44:19 -08:00
7db4ac8ff6 Fixes API link. (#2618) 2020-01-08 12:38:12 -08:00
fe3cc661d3 Fixes tests. 2020-01-08 12:20:17 -08:00
eb7efae1cc Persist condition to conditionSet. Remove extra condition unshift in addCondition method. 2020-01-07 11:56:24 -08:00
63f8fb54d4 conditions added to conditioncollection 2020-01-07 11:42:31 -08:00
097fa2e655 condition collection add to composition 2020-01-07 08:44:30 -08:00
3d0b4d51c2 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into telemetry-criterion 2020-01-06 13:10:58 -08:00
37650487f7 Merge pull request #2608 from nasa/conditionSet-view-provider
Condition set view provider
2020-01-06 13:10:00 -08:00
6ccc0b4fbf added TODO comments 2020-01-06 12:04:19 -08:00
79fe95372d fix lint errors 2020-01-06 10:44:09 -08:00
6adb190d0e Merge branch 'conditionSet-view' of https://github.com/nasa/openmct into conditionSet-view-provider 2020-01-06 10:36:25 -08:00
c094e6c6f4 change icon 2020-01-06 10:35:10 -08:00
8c796b4e57 Allows adding new conditions and associated criteria.
Stub for evaluating conditions.
2020-01-06 10:09:47 -08:00
c08e9a89ff add condition 2020-01-06 09:48:11 -08:00
03829af2ad check if filters are not equal before refetching 2020-01-05 20:56:53 -08:00
cc8ba18ccc Fixes condition plugin tests 2020-01-03 11:27:06 -08:00
57c671a42e combined tests in one pluginSpec file 2020-01-03 09:13:17 -08:00
1ee6ecf3ae removed conditionSet folder and fixed lint errors 2020-01-03 08:39:13 -08:00
5f80b3773b restructured folders 2020-01-02 15:19:57 -08:00
8452455050 WIP: all condition set UI elements in place - started condition form elements 2020-01-02 12:59:32 -08:00
e5d8f60cdb WIP: all condition set UI elements in place except condition form elements 2019-12-31 11:33:33 -08:00
de466000a0 WIP: styling for conditionSet and condition 2019-12-30 18:26:59 -08:00
49664c011c component styling and expand funcitonality 2019-12-27 18:17:56 -08:00
cf34d6b127 added domainObject bakc into provider 2019-12-27 14:23:04 -08:00
e52f6ce099 WIP: styling components 2019-12-27 14:19:39 -08:00
1ecdc4c487 addressed review comment 2019-12-27 13:22:05 -08:00
d38e2c49cb WIP: current output styling 2019-12-27 13:20:21 -08:00
f8464fa76f Adds telemetry criterion class and related tests 2019-12-27 12:57:30 -08:00
308ae2cb2e added CurrentOutput and TestData components 2019-12-26 16:07:55 -08:00
88219659fb renamed Conditions component to ConditionSet 2019-12-26 13:40:58 -08:00
c34c2df061 remove fdescribe 2019-12-26 12:36:58 -08:00
99c7bd4c10 added conditions and condition components 2019-12-26 12:25:30 -08:00
322cd94be7 add a check for filters on initialize to prevent refetching with empty filters (#2609) 2019-12-26 11:52:01 -08:00
f93d5a6fbf skeletal html mockup 2019-12-26 08:25:58 -08:00
cd116667be change to inject domainObject 2019-12-23 14:32:57 -08:00
2f2de3952d addressed review comments 2019-12-23 12:14:35 -08:00
45e56798c5 removed fit 2019-12-23 11:24:25 -08:00
0664d480e6 conditionSet provider with tests 2019-12-23 11:19:56 -08:00
5d31806fb7 fix #2596 2019-12-22 01:31:23 +01:00
283599ddf5 Merge branch 'topic-conditionals' of https://github.com/nasa/openmct into conditionSet-view-provider 2019-12-20 09:56:26 -08:00
09e3ceefa0 Merge pull request #2600 from nasa/condition-set-policy
Adds ConditionSet composition policy. Allows conditions to be added to conditionSets
2019-12-20 08:51:37 -08:00
87f76ebfe4 Addresses comments. 2019-12-19 21:20:38 -08:00
384f0efcb3 by default add new frame to end of container (#2603) 2019-12-19 16:59:41 -08:00
55a195b841 Adds ConditionSet composition policy. Allows conditions to be added to conditionSets 2019-12-19 12:33:11 -08:00
c7946fd7b3 refactor conditionSet pluginSpec 2019-12-19 11:14:55 -08:00
5d3ba3199c Merge remote-tracking branch 'origin/topic-conditionals' into conditionSet-view-provider 2019-12-19 09:07:44 -08:00
f0d10306fc completing merge 2019-12-19 09:06:19 -08:00
161943b5b8 Merge pull request #2598 from nasa/condition-type
Adds new condition type and plugin. Also adds tests
2019-12-18 15:56:20 -08:00
e545043a26 Merge branch 'topic-conditionals' into condition-type 2019-12-18 15:52:46 -08:00
40fb58b5b7 Merge pull request #2597 from nasa/conditionSet-object-type
Condition set object type
2019-12-18 15:50:42 -08:00
1f9d4708b3 Adds copyright 2019-12-18 13:19:21 -08:00
162809e081 [#2570] adds new condition type and plugin. Also adds tests 2019-12-18 13:13:54 -08:00
482c871ac2 removed fdescribe 2019-12-18 13:10:29 -08:00
f0b3311630 fixed merge conflicts 2019-12-18 13:01:28 -08:00
656d6d6c3f addressed review comments 2019-12-18 12:48:05 -08:00
ea45f0f4aa WIP 2019-12-18 12:16:25 -08:00
6a25cb0a58 renaming 2019-12-18 11:50:10 -08:00
4a1901420d removed fdescribe 2019-12-18 11:44:40 -08:00
ad64f00608 WIP renaming 2019-12-18 11:43:20 -08:00
65aea29cb9 renamed conditionCollection to conditionSet and made all filenames and references consistent 2019-12-18 11:23:37 -08:00
7981424e9a WIP: - preparing to rename branch 2019-12-18 11:08:21 -08:00
10c4340475 completed tests for condition collection object 2019-12-17 13:24:34 -08:00
0a95db1a51 fixed missing commas 2019-12-17 08:15:15 -08:00
ace77dce65 WIP 2019-12-17 08:10:35 -08:00
c1d58bb25f fixed another minor merge conflict 2019-12-16 16:55:26 -08:00
fbcafe0f62 mfixed merge conflicts 2019-12-16 16:50:57 -08:00
9a9d9222a9 Merge branch 'master' into condition-object-type 2019-12-16 14:52:48 -08:00
221e5b4f6c Added tests for ConditionPlugin 2019-12-16 14:42:19 -08:00
5df74aee68 [test-framework] Adds basic test for condition plugin 2019-12-16 11:06:19 -08:00
3b195e9c7d Example imagery vue (#2525)
* WIP: imagery vue refactor

* cleaup

* show orange border when paused.

* resize image and thumbs wrappers.

* scrollToBottom fixed.

* fixed lint errors

* use multipane vue component for resize + cleanup + style adjustments.

* added min-height to image pane and thumbs-layout pane.

* remove old plugin and using es6 const.

* using ES6 imports.

* clean up + formatting changes.

* updated as per review comments.

* extracted styles from vue component.

* fixed lint errors.

* updated as per review comments + cleanup.
2019-12-13 15:36:01 -08:00
17838d8040 WIP: setting up test framework for conditionals 2019-12-12 14:36:24 -08:00
2248c2da08 Removed styleguide 2019-12-11 16:21:51 -08:00
532c0e98db Merges TCR with master 2019-12-11 16:09:15 -08:00
ef3bae1312 Merge branch 'topic-core-refactor' into tcr-master 2019-12-11 15:56:24 -08:00
37a8cf071c https://github.com/nasa/openmct/issues/2577 (#2580)
* https://github.com/nasa/openmct/issues/2577
* Remove notebook.scss import. Move to vue-styles.scss
2019-12-11 15:56:00 -08:00
98c9cc92b8 Merge branch 'topic-core-refactor' into tcr-master 2019-12-11 14:52:11 -08:00
490cb2225d Move check for linestyle to plotseries fetch function (#2561) 2019-12-11 14:49:12 -08:00
ecd8372efa Fixed merged conflict 2019-12-11 14:40:53 -08:00
50173a4413 Theming (#2567)
* Separate Vue component styles out from SFCs.
* Added 'MCT.prototype.getAssetPath' and using 'openmct.setAssetPath' to get relative path for assets.
* Re-implements `openmct.plugins.Snow()`, and `openmct.plugins.Espresso()` (as well as a new theme `openmct.plugins.Maelstron()`)
2019-12-11 14:27:13 -08:00
76fc0b01fa Updated version number (#2574) 2019-12-11 14:22:51 -08:00
23781fa686 Correct release number (#2575) 2019-12-11 14:16:24 -08:00
8ec1b9965a Updates to README in topic-core-refactor (#2573)
* Updates to README in topic-core-refactor 

In preparation for merge into Master

* Added section on v1.0.0 and link to Migration Guide

* Minor wording change

* More minor wording changes
2019-12-11 10:28:47 -08:00
a16a44208a Fixes Notebook and Inspector layout issues (#2568)
* Fix linting-related issues
* Fix Notebook overlay display issues
2019-12-10 16:44:54 -08:00
f82ca91a61 changed node mules path 2019-12-06 15:13:03 -08:00
f86b8cce16 Merge branch 'topic-core-refactor' into tcr-master 2019-12-06 14:37:18 -08:00
b06c234b59 import path for vue component 2019-12-06 13:02:23 -08:00
31a7ebd4f1 basic skeleton for conditions code 2019-12-06 12:05:36 -08:00
c83e44ff1c Merged from master 2019-12-06 09:45:21 -08:00
d6faa25888 Fixes issue-2536: cross-env handles cross platform environment variable setting. (#2554) 2019-12-06 09:44:37 -08:00
55327a0150 [refactor-doc] Updates the API doc for new API usage. (#2553)
* [refactor-doc] Updates the API doc to new API usage.
2019-12-06 09:40:24 -08:00
28d2194d51 fix bugs caused by shouldUseMinMax reported by VISTA (#2555) 2019-12-05 18:07:30 -08:00
b3bc618bb0 fix template markup after lint merge mutilation (#2558) 2019-12-05 18:04:24 -08:00
14a0f84c1b Feature/eslint plugin vue (#2548)
* Use eslint-plugin-vue to lint vue files
2019-12-04 12:39:09 -08:00
14ce5e159b Webpage plugin vue (#2440)
* Move table cell selection to table cell component

* move webpage from angular to vue

* make review requested changes

* fix npm install error

* change cache version

* change cache version

* rename view provider

* rename file to WebPageViewProvider

* change webpage vue file

* change webpage vue file
2019-12-02 18:55:08 -08:00
419285c396 Issue #2540 Removes old tutorial and links to the new openMCT tutorial (#2550) 2019-11-27 16:06:43 -08:00
c51fd21847 Experimental unit tests for the Telemetry Table component (#2533)
* Initial commit of telemetry table spec
* Added example directory to linter paths. Fixed outstanding linting issues
2019-11-27 16:04:52 -08:00
72e382c46a enable plugin path (#2549) 2019-11-21 13:11:09 -08:00
8825a458dc fixed console error with save + using this.$nextTick instead of setTimeout. (#2516) 2019-11-21 08:32:42 -08:00
cab51f2665 Code that ignores duplicate points for plotting is removing non-duplicate points (#2515)
* Code that ignores duplicate points for plotting is removing non-duplicate points

* updated as per suggestion: use generic way of reading Y value.
2019-11-21 08:31:05 -08:00
c6f83dea8d Save and Finish blocking modal dialog Refactor and Styles #2500 (#2501)
* 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;
2019-11-20 11:46:03 -08:00
6e2497461a Merge pull request #2518 from nasa/modal-improvement
WIP: Modal improvement
2019-11-20 11:45:21 -08:00
bdd55b3db0 Merge branch 'topic-core-refactor' into modal-improvement 2019-11-20 11:42:11 -08:00
700ca90c8e Added new icon-history glyph for Time Conductor (#2545)
## Reviewer Checklist

* Changes appear to address issue? Y
* Appropriate unit tests included? N/A - Icon changes only
* Code style and in-line documentation are appropriate? Y
* Commit messages meet standards?
2019-11-20 11:37:53 -08:00
3f6f893e29 [Startup] Stop using -h for aliasing --host (#2544)
This solves #2543 and includes documentation for the --host flag in the
help dialog.
2019-11-19 15:06:41 -08:00
360881cf66 Merge branch 'topic-core-refactor' into modal-improvement 2019-11-19 14:11:45 -08:00
a4c2e944b3 Fixes issue #2537 Removes unused isEditing parameter for the view method of ViewProviders. (#2542) 2019-11-18 10:27:05 -08:00
93abb09419 Styling to support Plotly integration (#2532)
* Mods to support NIRVSS spectra plot enhancements

- Plot legend can display a header element, related styles;
- Remove unneeded margin from propertiesHeader mixin;

* Mods to support NIRVSS spectra plot enhancements

- Finessing plot legend header styling;
- New theme constants for plot legend header;
- Increased size of plot color swatches;

* Mods to support NIRVSS spectra plot enhancements

- Major progress on Plotly style overrides;

* New glyphs for Spectra and Commands

* Icon backgrounds added for new glyphs

- bg-icon-spectra, -spectra-telemetry and -command;

* Plot legend enhancements

- Make selector for .hover-value-enabled less selective;

* Move plotly SCSS into its own file
2019-11-13 09:46:56 -08:00
e58e9d3a26 Fix Plot Legend placement (#2527)
* Push test

* Enhance plot legend placement for #2486

- Left and right legends now maintain position when expanded;

* Update index.html

- Remove erroneously committed temp change ;
2019-11-08 15:31:29 -08:00
527c5ec7dd src/selection/Selection.js (#2535) 2019-11-06 15:14:05 -08:00
286d6e5082 Issue 2472 Disable selection in layouts when previewing (#2530)
* ISSUE-2472: disable selection in layouts during preview
2019-11-05 16:20:26 -08:00
14e8c7a401 Removed references to the "new API". (#2529)
It just causes confusion. There was also an out of date link that ironically pointed to the old API.
2019-11-04 13:53:47 -08:00
fab8bb516a Plot label height adjustment. (#2524)
* Plot label height adjustment.

* initialize xaxis label.

* Plot label height adjustment.

* initialize xaxis label.

* Fixes incorrect width applied to the plot's X axis wrapper
2019-10-30 18:09:56 -07:00
6d526eaf42 Fix lint errors (#2520)
* Fixed linting errors
* Disabled broken test
2019-10-29 15:49:55 -07:00
8b715f331c Search indexer (#2445)
* add a bare bones indexer
* use constant to fallback to legacy indexer
2019-10-22 16:53:06 -07:00
d6950a0976 Added listener that reacts to changes on interpolate + fetch data using correct strategy value. (#2469) 2019-10-21 10:27:52 -07:00
68f3436792 set deep property as true on watch (#2521) 2019-10-21 10:26:09 -07:00
4414161faf Fixes to enable testing by third party applications (#2523)
* 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
2019-10-21 10:24:46 -07:00
7477536478 Disable broken unit tests (#2519)
* Disabling broken unit tests

* Removed legacy RemoveAction
2019-10-10 16:23:29 -07:00
2dd7307fce Overlay Improvement #2517 2019-10-10 15:45:07 -07:00
6b2f2b758d Multiple modal instances on 'Enter' button #2513 2019-10-10 15:04:14 -07:00
c13b07e648 separate search div from main tree, show search div when search value is present, else show main tree (#2512) 2019-10-10 12:48:50 -07:00
2ecff75da5 [Tables] Filtering fails when one or more cells contain undefined value #2493 (#2510)
* [Tables] Filtering fails when one or more cells contain undefined value #2493

* refactored to handle edge cases first
2019-10-10 12:46:25 -07:00
ff5b88b544 VSC enable debugger for testing (#2505) 2019-10-10 12:25:24 -07:00
9b7a986475 Add a sticky telemetry point select to on-click plot behavior #2379 (#2471)
* Add a sticky telemetry point select to on-click plot behavior #2379

* changed class 'lock-highlight-point' on parent element to drive lock/unlock feature on highlight points.

* Styling for sticky-telemetry-point

- New glyph: icon-cursor-lock;
- Better layout and SCSS for overlaid state indicators in plot area;

* single click on plot, lock/unlock highlight points.

* cleanup + added lock icon on legends.

* fixed panning does not end on mouse up.
2019-10-07 13:55:47 -07:00
c054914a9c [Plots] Zooming on plot causes console errors - Duplicates in a repeater are not allowed #2473 (#2474) 2019-09-24 16:33:16 -07:00
69b6f8afa9 Delete persisted timestamp (#2506) 2019-09-24 16:31:54 -07:00
45164a2f68 Fix status bubbles (#2503)
- Status indicator bubbles now right-align;
2019-09-19 18:44:35 -07:00
b189a887e6 Emit refresh event when data cleared (#2502) 2019-09-19 18:37:09 -07:00
71abfbc336 Save and Finish no longer shows blocking modal dialog #2496 (#2498) 2019-09-19 18:16:41 -07:00
ee690545fb VISTA Fixes 4 (#2499)
- Fixed is-selected styling so that if overrides table row EVR, limit
styling;
- Fix Summary Widget grippys #2494;
- Fix indent in Global filters UI: #2488;
- Fix Summary Widget overflow problem: #2495;
- Added new c-input-number--no-spinners class for https://github.jpl.nasa.gov/MissionControl/vista/issues/673
2019-09-19 17:56:17 -07:00
fcf3c76aa1 Merge pull request #2492 from nasa/y-axis-label-fix
[Plot] Y axis label is not displayed when editing #2487
2019-09-18 15:05:23 -07:00
5dbd77d10c [Summary Widgets] Adding a new condition to a rule deletes the input value from previous ones #2411 (#2481)
* [Summary Widgets] Adding a new condition to a rule deletes the input value from previous ones #2411

* Summary Widget Rule conditions not persisting numeric values #2491
2019-09-18 13:19:26 -07:00
43515ca84e [Summary Widget] Adding a rule without setting anything in the rule causes error #2401 (#2478) 2019-09-18 13:18:55 -07:00
54fe881e71 [Plot] Y axis label is not displayed when editing #2487 2019-09-17 11:50:17 -07:00
7c32700b69 [Import JSON] Support namespaces (#2483)
* Retain target namespace in generated identifiers

* Also replace identifier objects

* Do not duplicate newIds when replacing. Rename ID to Id
2019-09-13 13:45:32 -07:00
e98d0cc7c5 UI Various 2 (#2480)
- Fixes icon-gear margin for #2477;
- Now applies mixed visual style to toggle frame visibility button in
Layout toolbar for #2460;
- Change Status area Indicators to right-justify;
- Adjust Status area collapse toggle button margin;
2019-09-13 13:34:08 -07:00
2200503e48 Hide filter fields if filtering not supported by view (#2479) 2019-09-11 11:16:50 -07:00
8f0081acc8 Clear data changes for tables and plots (#2475) 2019-09-06 17:17:24 -07:00
003c3e9fbe Do not attempt to select cells with no column defined 2019-09-06 15:54:44 -07:00
02ef58ced1 Fixes normalize.min.css (#2467)
- Add as slightly renamed .scss file to avoid issues arising from
.gitignore excluding .css files;
2019-09-03 13:33:24 -07:00
e89881c266 Fix Y axis plot label control (#2465)
* Fix Y axis plot label control
* Now uses writing-mode: vertical-lr instead of transform for vertical
text;
* Text overflow: hidden prevents scrollbars;
* Select displayed on hover over Y axis area;
* Dynamically adds icon-gear when Y axis can be configured;
* use child plot div for image exports
2019-09-03 11:10:02 -07:00
fa66289d5c Misc UI 10 (#2441)
* 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%;
2019-08-30 15:51:52 -07:00
4f3a3befe0 Fix Row marking (#2458)
Fix row marking issue discovered during r4.2 testing
2019-08-30 15:46:36 -07:00
a0864a8702 prevents users from using empty strings as names (#2461) 2019-08-29 20:31:52 -07:00
a34ad4e58c Enabled column reordering on table load (#2462) 2019-08-29 19:18:55 -07:00
7e50010463 remove LADTables from default registry to optionally installed in index.html (#2455) 2019-08-28 15:55:51 -07:00
974be0ae2c Auto-correct lint errors (#2450)
* Auto-fixed linting errors and manually corrected spacing on some comments
2019-08-27 09:26:58 -07:00
3dee6db5e2 Locked painterro version to 0.2.65. Fixes #2447 (#2448) 2019-08-21 13:53:00 -07:00
3dc6dac12d Global filtering (#2434)
* Adds global filtering
* Markup changes to support global filtering
* Adds toggle button
* Added row item spacing for tree__item in mct-tree.vue;
* Significant mods to tree-based properties displays in Inspector:
* Padding in c-object-label tweaked;
* Class naming normalized, legacy classes removed;
* Layout fixed for filters in Browse mode
2019-08-16 10:16:43 -07:00
aafe524454 bumped version number 2019-08-06 10:36:51 -07:00
e84ade1752 Removed unnecessary extra formatting (#2438) 2019-07-31 15:18:46 -07:00
3b094e43e3 Plot y axis label fix (#2437)
* set yAxis label if none is set yet

* remove empty listener
2019-07-31 10:24:27 -07:00
e6a7b4ed6c Move table cell selection to table cell component (#2436) 2019-07-31 10:08:27 -07:00
97230bb21f Context-Menu for Tables (#2424)
* add context menu capability to table rows, add view switcher to preview

* add an option to limit context menu actions to the ones requested, and modify preview action to also include a view historical data action

* extend preview action into view historical data action

* add context menu to LAD Table

* add keys to context menu actions, allow tables to conditionally attach context menu handler

* working switch y axis label

* New vertical select element for Y axis configuration in plots

- CSS for vertically rotated selects for Y axis label selection;
- New theme constants;
- Removed themedSelect theme mixins;
- New SASS svgColorFromHex function;

* use keys in lad table context menu options

* show historical view context menu on alpha-numerics

* make reviewer requested changes

* pass contextual object path from object view down etc

* made reviewer requested changes: removed options object, pass in object path instead

* remove redundant function from LADRow.vue
2019-07-26 16:09:59 -07:00
768d99d928 Select, Mark and export selected table rows (#2420)
* first pass

* add a unmark all rows button

* enable shift click to select multiple rows

* support row selection backwards

* Styling for marked table rows

- CSS class applied;
- Export button label modified;

* working pause

* working multi select
tables are paused when user selects a row

* Layout improvements for table and control bar elements

- Table markup re-org'd;
- New .c-separator css class;
- Renamed .c-table__control-bar to .c-table-control-bar;
- Added label to Pause button;
- TODO: refine styling for table within frame in Layouts;

* Refined styling for c-button in an object frame

- More compact, better alignment, font sizing and padding;

* change logic to marking/selecting

* use command key to mark multiple

* Fixed regression errors in markup

* add isSelectable functionality

* make reviewer requested changes

* remove key from v-for in table.vue
2019-07-25 13:47:40 -07:00
c760190a29 Time conductor Improvement 625 (#2432)
* when utc based time systems are switched, the bounds will stay the same

* inline check for utcBased time systems
2019-07-25 10:08:57 -07:00
7fe4a77c43 Minor table refactoring (#2431)
* Refactor how tables process incoming data

* Fixed build in linux

* Added 'buttons' slot to tables

* Revert theme change
2019-07-22 15:08:42 -07:00
8578d78c51 Fixes VISTA issue 635 scrolling messages overflow problem (#2428) 2019-07-12 10:52:16 -07:00
362e565a09 Global and Local Clear (#2418)
* 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
2019-07-11 16:40:26 -07:00
9517c1f2cd [Filters] various bugs in telemetry table filters (#2425)
* Update the filters object properly when both checkboxes are deselected. Check composition before loading. Modify logic for mixed filters.

* Get compostion from the global context

* Use Set to store keyStrings

* Rename variables for clarity and add comment. Also add keystring to telemetryKeyStrings when an object is added.

* Use size to get the size of the set instead of length. Remove telemetry keystring from the configuration filters when object is removed from the composition and update the indicator label.
2019-07-02 16:17:15 -07:00
262d35804d [Telemetry Table] Display applied filters (#2421)
* Display a list of filters that are applied to telemetry objects in a telemetry table.

* - Display 'Mixed' if filters have mixed values.
- Use table configuration domain object to get composition.

* Filter indicator styling WIP

- Markup, class names added;
- TODO: 'Mixed' and commas to be added via CSS, icon and bg coloring;

* Filter indicators styling

- CSS, markup;
- Added dynamic labeling and titling for mixed/non-mixed filter states;
- Theme colors defined and added;
- Added new filter icon glyphs for both 16px and 12px fonts;
- Revised/normalized font project and glyph file names;

* Filter indicators styling

- Adding missed Icomoon project file;

* Filter indicators styling

- Reverting mistakenly changed file;

* Filter indicators styling

- Minor fix to theme sass;
- Sync maelstrom theme;

* Fix indentation

* Set label and title to empty string initially.

* Keep the default snow.
2019-06-26 14:25:02 -07:00
e0587bf0e7 Status styling (#2422)
- Primarily needed by VISTA Data Products table UI;
- Adds new styling for inline links with icons;
- Adds new status colors in theme files;
2019-06-25 17:02:23 -07:00
f1494fd285 Vista table sync (#2423)
* Working version of integrated tables

* Fixed bug with multi-composition in tables

* Changes to support tables from VISTA
2019-06-25 13:56:39 -07:00
884aec8ea0 Alpha-numeric printf format (#2416)
* Implement an inspector view provider to display a component that allows setting printf format for alphanumeric items in a display layout.

* Display 'Mixed' in format input if items' formats in selection are different.

* Use lodash function to find index.

* Simplify code.

* Put the logic to disallow viewing the inspector view for multi-select in the inspector view provider as apposed to the inspector view component.
2019-06-14 13:33:15 -07:00
216f447578 Show error message when user tries to import an invalid object into another object (#2417)
* 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
2019-06-10 15:17:43 -07:00
c38d810658 Fix import export (#2407)
* working import/export, need to check with objects that have name-spaces

* use keystrings instead of key
2019-05-24 12:04:40 -07:00
f5c48b7bf6 Fix regression in adding to display layouts (#2408)
* Removed policy preventing duplicate composition, and implemented no-op in composition provider instead

* Change order of edit on drop event listener

* Add mutation listener to CompositionCollection even if nothing listening to collection

* Updated test specs

* Address review comments

* Fix regression

* Removed redundant composition creation
2019-05-24 11:55:16 -07:00
d0e08f1d9a Fix typos that prevent building in linux 2019-05-24 11:24:43 -07:00
72ea7b80fd [Summary Widget] support enum fields (#2406)
* Display a drop down menu if the selected key is of type enum.

* Create normalized dataum when persisting telemerty datum using  metadatum source as key.:

* * Clear config values before creating new inputs.
* Emit ‘change' event with the value of the first option after creating the select element.
* If a value is a number, pass it as a number when emitting ‘change’. Similarly, if the cashed telemetry value is a number, convert it to number before applying the operation and validation.

* Update description.

* Update description in operations.js also.
2019-05-24 09:18:46 -07:00
35d0c02bc5 Discard old telemetry values in tables when date is formatted as a string (#2400)
* Parse date values before comparison in BoundedTableRowCollection

* Reset table size when filter changes
2019-05-23 14:42:37 -07:00
abd7506b45 Plots issues for 4.1.1 (#2397)
* working fix

* prevent wheel zoom when nothing is plotted

* fix bug where chart was not getting rid of plot history

* override remove from series collection to keep changes contained

* don't untrack twice from plot options controller

* make plot controller the life cycle controller for config, destroy when the plot is destroyed. Remove tracking system. Add comments to zoom logic, and simplify remove and keep it in series collection

* add comments to removeTelemetryObject
2019-05-23 09:43:45 -07:00
526b4aa07e Remove duplicate policy (#2399)
* Removed policy preventing duplicate composition, and implemented no-op in composition provider instead

* Change order of edit on drop event listener

* Add mutation listener to CompositionCollection even if nothing listening to collection

* Updated test specs

* Address review comments
2019-05-20 19:14:12 -07:00
b5e23963d4 [Summary Widget] Use installed time system's name... (#2398)
* Added LocalTimeSystem to standard plugins object.

* Use each installed time system's name instead of naming them all 'UTC'.
2019-05-16 10:24:38 -07:00
2c11eb90d4 Add additional check for presence of configuration attribute (#2393) 2019-04-29 19:18:27 -07:00
90e9c79e19 Table rendering performance tweaks (#2392)
* Table rendering performance tweaks

Throttled add, remove, and scroll

* Scroll to bottom after resize, if auto-scroll enabled
2019-04-28 17:43:06 -07:00
1b83631e43 Remove deprecation warnings (#2391) 2019-04-28 12:30:30 -07:00
547d4e82db [Display Layout] Disallow moving objects beyond top or left edges of the edit area (#2390)
* Disallow moving objects beyond top or left edges of the edit area.

* Disallow line also to move beyond top or left edges of the edit area.
2019-04-28 12:30:10 -07:00
3377ad5e0d Reimplemented Go To Original Action (#2383)
* complete working go to original action, todo (css class for action)

* Fix layout when a menu item does not have an icon

* Removed superfluous keystring conversion
2019-04-28 12:29:16 -07:00
1c0df60f05 Misc Fixes 3 (#2389)
* Misc Fixes 3

- Fix Chrome 73 bug in overlay __contents-main element;
- Fixed messages by including erroneously missing _legacy-messages.scss
file;
- Better layout for messages in notification overlay list;

* Misc Fixes 3

- Fix about screen for better compatibility with VISTA;
- Better logo sizing in splash element;
2019-04-26 14:43:13 -07:00
138067dca9 [Migration] convert telemetry points to overlay plot (#2388)
* Replace telemetry point objects with overlay plot when migrating display layouts.

* Persist plot object
2019-04-26 11:19:07 -07:00
844280eaa5 Memory leak fixes (#2387)
* Clean up listeners

* Fix uses of 'destroy' instead of 'destroyed'
2019-04-26 10:34:24 -07:00
d2e2d55caf Bring across fixes for #1468 and #2277 into TCR (#2386) 2019-04-24 16:01:45 -07:00
f01d4071a1 Merge pull request #2385 from nasa/misc-fixes-2
Misc Fixes 2
2019-04-24 16:00:28 -07:00
06524ce967 Misc Fixes 2
- Hide nav-to-parent button when editing
2019-04-18 14:47:32 -07:00
1ec529f360 Misc Fixes 2
- Remove explicit height;
2019-04-17 00:20:51 -07:00
cf6458c69d Misc Fixes 2
- Better approach to title in layout frames;
- Removed unneeded !important attribs;
2019-04-16 23:31:59 -07:00
3316500774 Misc Fixes 2
- Restore erroneous delete;
2019-04-16 22:03:30 -07:00
0f780587c0 Misc Fixes 2
- Fix alignment issue in c-so-view__headers;
2019-04-16 21:59:41 -07:00
ea69508e22 Misc Fixes 2
- Fix table resizing issue in Flex Layouts;
2019-04-16 14:45:08 -07:00
4274d8cc0b Misc Fixes 1 (#2382)
- Fix color issue for mobile menu icon;
- Fixed Chrome 73 overflow issue in main folder view;
- Better fixes for Chrome 73 overflow bug;
- Code cleanup;
2019-04-16 10:42:17 -07:00
1a2048332f Request latest data from alphanumerics (#2377) 2019-04-11 11:00:15 -07:00
38a875395f Markup changes to support VISTA About Dialog (#2375) 2019-04-11 10:19:25 -07:00
f601ab03e7 Add unsynced status class to legacy views (#2374) 2019-04-11 10:18:23 -07:00
ee1d92d4a9 Implements selection and reorder in stacked plots (#2371)
* working selection in stacked plots

* reorder in stacked plots works

* tabs code cleanup
2019-04-10 16:03:18 -07:00
548286bacd fixed filter field issue, and prevent elements pool from updating when selection has not changed (#2372) 2019-04-10 15:56:08 -07:00
9c9006d415 conditionally enable notebook button in preview (#2373) 2019-04-10 15:45:02 -07:00
3219a64d09 Add root object to object path for legacy context menu actions (#2369) 2019-04-10 11:42:49 -07:00
570aa2c02a Resolve object paths properly for search results (#2370) 2019-04-10 10:17:50 -07:00
c577d2e231 Only switch into edit mode if view is editable (#2367) 2019-04-10 10:13:54 -07:00
6bf4b3aba8 Fixes some issues relating to removal of objects (#2366)
* Leave edit mode on navigation after removal

* Only leave edit mode if removing navigated item, or parent of

* Do not emit mutation from filters with out of date object model
2019-04-09 10:45:56 -07:00
b659f205f7 Reset selection on cancel (#2363) 2019-04-09 10:23:53 -07:00
40d54df567 Summary widget unsubscribe (#2364)
* Delete subscription handle to prevent double unsubscribe error

* Do not attempt to render undefined telemetry datum
2019-04-08 22:02:40 -07:00
b7fa5c7ba8 Avoid using the same separator object when adding separators to toolbar (#2362) 2019-04-06 17:04:52 -07:00
3b0605d17b Properties section for single select non-domain object (#2361)
* Display a message when a single non-domain object is selected.

* Reviewer's requested change
2019-04-06 14:55:46 -07:00
d93e7bfd1a Merge pull request #2360 from nasa/flex-layout-selection
Toolbar issues in Flexible layout
2019-04-06 13:57:21 -07:00
104cd0ed29 Merge branch 'topic-core-refactor' into flex-layout-selection 2019-04-05 20:09:36 -07:00
7fb3d86d06 Update toolbar to get value and mutate object if toolbar item doesn't have applicableSelectedItems. Also, modify flexibale layout to select parent by clicking the element instead of using selection's private methods. 2019-04-05 20:03:31 -07:00
dbb42e9bb6 Do not use Object.create() with Vueified objects (#2359) 2019-04-05 18:20:30 -07:00
d1baa1f98b Merge pull request #2357 from nasa/misc-ui-8
Misc UI 8
2019-04-05 17:31:07 -07:00
5ab68c0586 Merge branch 'topic-core-refactor' into misc-ui-8 2019-04-05 17:30:42 -07:00
3cf78f509d Significant enhancements to limits (#2352)
- Icons added for red and yellow limits without upr/lwr classes;
- When is-limit--upr and is-limit--lwr present, those icons trump the
red/yellow icons;
- Styles for table tr's, and everything else;
- Unit tested in telem tables, LAD tables and plot legend;
2019-04-05 17:22:49 -07:00
c6053e234a Implement multi selection (#2351)
* Modify Selection API to support multi-select via shift click.

* Add support for shift + click to add and remove the selection.

* Display message in Location and Properties for multi-select.

* Define applicableSelectedItems for toolbar items. Move toolbar  control definitions to functions.

* Hide positioning inputs if multi-select. Show a 'non-specific' icon when a discrete setting can't be shown in a mixed setting."

* Add toolbar controls in groups per layout item type. Add nonSpecific property to toolbar items to be used by toolbar controls to show non-specific icon.

* Modify toolbar button to react to nonSpecific flag. Get form value by checking value of applicable selected items.

* Support deleting multiple selected objects.

* Do not disable controls when selected items have mixed setting.

* Revert default color to original value.

* Changes to snap-to-grid

* Remove timeout for updating toolbar after mutation. Do not copy toolbar item when iterating the structure.

* Implement move to top and move to bottom for multi-select

* Implement move up and move down for multi-select.

* Markup and CSS changes for mixed settings in toolbar

- Toggle, color-picker buttons;
- TODO: check other themes and sync;

* Mixed settings styling complete

- Refined and synced theme constants;
- Styling for all toolbar components;
- Text size menu handling;
- Inspector messaging;

* Fix selection path

* Mixed settings styling refinements

- Normalized button styling for mixed style context;
- Better theme constant naming;
- Refined swatch styling, better theme constants;

* First cut at getting the bounding rectangle working for multi-select.

* Set pointer-events to none on c-edit-frame to prevent marquee reacting to click events.

* Delete capturing before calling select.

* Remove EditMarquee from ITEM_TYPE_VIEW_MAP

* Pass selected layout items as a prop to edit marquee instead of selection so that x, y, w, h are updated.

* Multi-select c-frame-edit visual fixes

- WIP

* Add complexContent class for a single selected item whose type is subobject-view.

* Move 'c-frame-edit-move' div to layout frame.

* Saving work - multi-move WIP

* Fixes issue with selection happening at end of drag

* Styles fixed for new markup organization

- Marquee, frame styles;
- $editMarqueeBorder style added to theme constants;

* Significant functionality for .c-frame-edit__move element

- Added .is-multi-selected class to .l-layout when > 1 items selected;
- __move element now handles multi-select and complex content (CC)
objects:
-- 0 to 1 items selected, displays as hover bar with grippy on all CC
 objects,
-- > 1 items selected, __move covers all of the frame of all selected CC
items and doesn't allow sub-object selection, and only displays as hover
bar on non-selected CC objects;
- Added better styling for selected objects while editing;
- Code cleanup and consolidation;
- Left translucent green style applied to __move element to temporarily
aid development;
- TODO: fix line drawing object;

* - Fix an issue where shift click did not remove the selected item from the selection after move.
- Modify telemetry and subobject views to emit move and endMove events.
- Clone selectedLayoutItems to get initial positions instead of selection so subsequent moves start from the current position.

* Fix cursor for __move, code comment refinements

* Code cleanup, line view markup changes

- line view markup brought into line with structure in LayoutFrame.vue;

* Implement multi-resize

* Simplify edit marquee code. Revert image and text views' default position to the original values.

* Fix resize for single selection when snap to grid is disabled

* Hide edit marquee if single line is selected, and show c-frame-edit in line-view instead.

* Fix for LineView handles

* Remove snap to grid toggle button and modify the migration script to convert elements with pixel coordinates to grid.

* Fix resizing single line

* Calculate width and height differently for line to position marquee correctly.

* Fix moving single selected line

* Calculate the height and width for line before comparing them with max height and width to correct the marquee position.

* Change the logic for showing frame edit for lines to check for item id.

* Allow multi-move with line in the mix.

* Implement multi-resize when grabbing SW corner.

* Removed temp green tint from __move element

* Fix object undefined error.

* Implement multi-resize for all items except line (take 2).

* Misc UI 7

- CSS selectors to properly display edit marquee, don't show in browse
mode;

* Fix multi-resize for lines.
Make sure line's height and width is minimum 1.

* Disable inspector views when multiple objects are selected.

* Restored layout grid display on sub-layout selection

* Clean up code

* Fixes

- Edit marquee display fixes;

* More code clean up

* SIGNIFICANT fixes and rewriting in LayoutFrame.vue

- Styles for .c-frame-edit__move element for selection and hovering;
- local controls;
- view large button;
- Theme constants updated;

* Get selected item's index from layoutItems.

* Address review feedback.

* Merge topic-core-refactor

* Reset keyString to empty string after setting original path when domainObject is undefined.
Add proper check for selection.
2019-04-05 14:22:10 -07:00
964c326535 Cancel editing bug (#2355)
* WIP

* Refresh view with object from persistence
2019-04-05 11:25:46 -07:00
baf410a364 Retain scrolltop on resize (#2358) 2019-04-05 09:56:31 -07:00
517a40a32b Tree Performance Fixes (#2353)
* Disable disclosure triangle transition

* Reduce number of times navigation path is calculated
2019-04-05 09:44:38 -07:00
8b275b206b Remove selection fix (#2348)
* add a function to change selection of deleted item in remove action, and update flexlayouts

* resize when item is deleted

* fix for resize handles not showing after object is dropped

* fix isAlias logic for folder views

* remove uneccesary console log

* move selection logic to flexible layouts

* only update inspector views if selection has changed to a new context

* force a digest in the plot options controller once the series are added

* conditionally show snapshot button only if notebook is installed
2019-04-05 09:34:55 -07:00
a40a31aa4c Remove wait spinners when error occurs in tables (#2356) 2019-04-05 09:34:03 -07:00
6c0c1df010 Added a mutation listener to CompositionCollection (#2354) 2019-04-05 09:32:58 -07:00
c552afff17 Overlay preview scroll fix and styling
- Preview now handles overflow properly;
- Refined preview styles;
2019-04-04 23:29:50 -07:00
0837129ad5 Styles for td.is-selectable
- Required for VISTA `channel-list-selection`;
- Added new theme constants for editUIColorBg, Fg;
2019-04-04 23:08:09 -07:00
6f3e2a8fbb Misc UI 7 (#2349)
* Misc UI 7

- Better approach to hide/show in Tabs view;

* Misc UI 7

- Fix Chrome 73 bug for Folders in Tabs and Flex Layouts views;

* Misc UI 7

- Fixed look of text inputs in Snow;
- Added description for Tabs View;

* Misc UI 7

- Resizeable table column headers now clip properly;
- Cleaned up and consolidated related CSS;

* Misc UI 7

- Remove undesired top margin in Flex Layouts;
- Fix Chrome 73 overflow bug in ObjectFrame;

* Misc UI 7

- Remove undesired top margin in Flex Layouts;
- Fix Chrome 73 overflow bug in ObjectFrame;
- Enhanced View Large button so now displays in objects with
frames hidden;
- Changed behavior for frame move bar such that it only displays for
selected items;
- Fixed bug where telem table columns can't be resized in new tables;
- Added overflow handling to telem table column headers;

* Misc UI 7

- Remove undesired top margin in Flex Layouts;
- Fix Chrome 73 overflow bug in ObjectFrame;
- Enhanced View Large button so now displays in objects with
frames hidden, and is only shown for objects that get
.has-complex-content applied;
- Changed behavior for frame move bar such that it only displays for
selected items;
- Fixed bug where telem table columns can't be resized in new tables;
- Added overflow handling to telem table column headers;
- Fix for clipped color palette in Summary Widgets, and better flex
layout in sizing in edit interface;
- Added timer and hyperlink to SIMPLE_CONTENT_TYPES list;

* Misc UI 7

- Accessibility: add name of object as title attribute to Layout frames;
- Moved c-frame base styling into c-so-view;

* remove title from layoutFrame
2019-04-04 10:45:17 -07:00
4189a05758 event emitter uses keystring instead of key, to avoid broadcasting to all domainObjects that share the same key' (#2350) 2019-04-04 10:29:42 -07:00
97ccaa58c7 show notifications error for rejected telemetry requests (#2334)
* show notification error for rejected telemetry requests

* change notification message details
2019-03-29 15:52:44 -07:00
08ef932926 Use instead of to avoid double digest issue (#2346) 2019-03-29 15:38:39 -07:00
1d2ed0398c Default routing (#2342)
* Working version of default navigation to last child

* Implemented as separate route to clean up code a bit
2019-03-29 14:36:15 -07:00
5a00e0c549 Fix for Chrome 73 overflow bug effecting Telem Tables in Flex Layouts (#2341)
* Voodoo fix for Chrome 73 overflow bug effecting Telem Tables in Flex
Layouts;

* Update table.vue
2019-03-29 13:34:16 -07:00
ebcf47733f Merge pull request #2345 from nasa/revert-2344-properties-dialog-digest
LGTM. Revert "Force digest on compilation of overlay template"
2019-03-29 13:29:52 -07:00
381d7e7615 Revert "Force digest on compilation of overlay template (#2344)"
This reverts commit 8246b47668.
2019-03-29 13:21:45 -07:00
8246b47668 Force digest on compilation of overlay template (#2344) 2019-03-29 10:38:56 -07:00
bc5e300ba9 Optionally provide list of object types to show as views rather than telemetry in Display Layouts (#2339)
* Optionally provide list of object types to show as views rather than alpha numerics to display layouts

* Only make table view available for objects that have telemetry to show
2019-03-28 22:21:27 -07:00
57efef3160 Digest after telemetry returned. (#2343) 2019-03-28 22:19:22 -07:00
dfc5a9f040 Tabs view fixes plus elements pool (#2340)
* use reorder api

* fix regression where elements pool doesnt update on remove

* fix issue where tabs was not updating when changes are discarded
2019-03-28 17:45:07 -07:00
57443d227d Misc UI 6 (#2338)
* Sanding and shimming on loading CSS

- Wait spinners in the tree;
- Move spinner and loading CSS from legacy to global.scss;

* Misc UI 6
- Better approach to Time Conductor overflow;
- Fixed main page left/right clipping issue;
- Fixed table header bg styling that had issues in legacy tables;
- Fixed Time Conductor datetime picker clipping issue;
- New .c-message--simple for use in Summary Widgets;
- Better styling for header in empty Tabs view;
- Fixed Chrome 73 scrolling bug in Summary Widgets;
- Fixed problem in Inspector <li> elements from new wait spinner;
- Fixed color of <a> tags in tables to be more visible;
styling;

* Misc UI 6

- Fix VISTA session selector not scrolling (Chrome 73 overflow bug);

* Misc UI 6

- Fix VISTA session selector not scrolling (Chrome 73 overflow bug);
2019-03-28 16:29:39 -07:00
d36441db73 Persistence dialog fix (#2337)
* discard persistence error dialog

* update tests
2019-03-28 13:55:39 -07:00
327782835e save object before triggering mutate (#2336) 2019-03-28 13:54:27 -07:00
994f6be535 do not return null unsubscribe function (#2335) 2019-03-27 18:09:13 -07:00
72fc8a24a5 Fixed for flex-related overflow scrolling issues in Chrome 73/Firefox (#2333) 2019-03-26 22:57:41 -07:00
07002c12eb set default theme to snow for VISTA deployments 2019-03-26 14:50:25 -07:00
c688d19e15 Fix bug introduced into .c-table 2019-03-26 11:48:03 -07:00
c0ce448dc3 Misc UI 5 (#2332)
* Style fixes for Inspector and location elements

- Code cleanup;
- Remove legacy styles;

* Tab styling WIP, for VISTA Venue dialog

* Add new c-tabs styles, replaces c-compact-button

- Remove c-compact-button and mixin;
- Refactor to use c-tabs in Tabs View;
- New notched look for tabs;

* Tweaks to c-tabs

* Misc various

- Increased mouse wheel zoom and changed to use const;
- Fixed squishy grippys in Elements pool;
- Fixed Time Conductor to prevent overrunning right pane when main pane
is very small;
- Changed message text when leaving Layout editing;
- Fixed z-index problem with splitter bars and VISTA Indicator hover
bubbles;
- Restored support for legacy `l-input-lg` to allow large text input
fields in form generation;
- Modded styles in Properties dialog to fix issue with label column
colliding with inputs when the label text is long;

* Restore hover hide/show to local controls in Summary Widgets

- Also fixed rotation transition for disclosure controls;

* Refinement to overflow hidden for Time Conductor UI

* Fix Time Conductor layout in mobile

* Fix Filter tree items in Inspector

* Move .selector-list out from within .form .form-row to allow more
flexible usage;

* Significant theme updates; table layout and Summary styling added

- Reorganized status constants;
- Added base styles for selected and active styles;
- Added styling for selected and active buttons;
- c-table changed from absolute pos to relative;
- Added c-table-and-summary styling;

* Tweaks to Location component
2019-03-26 11:38:38 -07:00
6c479d6d59 Change tree wait spinner from span to li 2019-03-26 10:59:31 -07:00
76ba487261 Remove action works on missing objects (#2330) 2019-03-26 09:35:52 -07:00
e3f4da19f9 Table migration (#2327)
* Added table migration code

* First working version

* Fixed issues with objects missing from composition
2019-03-25 22:19:33 -07:00
c7ffcbf7e0 Fix path routing issue that prevented object navigation in different deployment paths (#2331) 2019-03-25 22:17:59 -07:00
a27b3737f1 Fixes testathon 3/21 (#2328)
* fix error in location.vue because of drawing objects in selection

* add conditional to check if view is editable before forcing edit after create

* show original location only in inspector, add original location for drawing objects

* fix document title

* set document title in browse.js

* sort items in create menu

* sort children in tree by name

* remove ordering from tree items

* add loading spinner

* fix minor bug
2019-03-25 18:26:39 -07:00
78dccf1e0a Persist table sort options (#2329) 2019-03-25 11:35:47 -07:00
9cb7e09aef Better drag reordering affordance in Elements pool (#2326)
* Better drag reordering affordance in Elements pool

* add isDragging

* Better drag reordering affordance in Elements pool

* Only add dragend handler after drag starts
2019-03-23 10:01:38 -07:00
4111c12895 Added background property to table __headers-w element (#2325) 2019-03-21 15:37:09 -07:00
b6ec023920 format created and modified time to utc (#2324) 2019-03-21 15:14:45 -07:00
e8e7067993 Fix legacy messages (#2323)
* Fix legacy message styling

- Code cleanup;
- Enable constants-mobile;
- Add _legacy-messages.scss;
- Add status color fg colors to theme constants;

* CSS refactoring, significant migration for messages classes

- Many messages classes migrated;
- c-click-icon > c-icon-button;
- c-click-icon rewritten;
- __close-btn refined in dialogs;

* About and splash screen styling

- Fixed splash in About screen;

* Update _mixins.scss

* Convert c-overlay__close-button to button

- <a> -> <button>;
- Set color of button;
- Normalized naming from close-btn to close-button;

* Fixed brightness filter issue on elements in overlays in VISTA;

* Fix dismiss button
2019-03-21 15:07:16 -07:00
0e9319e97b Plot options 4.1 (#2303)
* working crosshairs -- todo -- add toggle option

* add ability to toggle crosshair

* add zoom in by onscreen button to plot

* add zoom out functionality

* switch positions of zoom in and out buttons

* working zoom with mousewheel

* add better logic to storing plot history on mouse wheel zoom

* Local controls styling in plots and imagery

- WIP

* Plot local controls, cursor guides

- Local control classes much refined;
- Cursor guides styled, theme constants added;

* Fix local controls in imagery

- LC styles refined;
- New theme constant;

* Better approach to loading

- New .c-loading--overlay that doesn't block the cursor;
- Applied to plot views (telem, overlay and stacked plots);

* Plot styles, local controls refined

- Moved plot classes into their own scss file;
- More refinement on local control styles;
- Plot local controls layout finalized;
- Buttons smallified in layout frame context;

* Convert export buttons from <a> tags

* Stubbed in cursor guide buttons in templates

- WIP!

* add toggle-cursor-guide-button to stacked plots

* move cursor guide button to top left in all plots for consistency

* Plot local controls layout refined

- Also: global styling for *[disabled]

* Change c-button 'is-enabled' to 'is-active'

* Added check for if crosshairs enabled before tracking
2019-03-21 13:57:41 -07:00
df53af7b4d Inspector location (#2317)
* working original location - todo link location

* remove link location for now

* remove legacy getPath and implement new getOriginalPath API call

* simplify getOriginalPath, and use path to calculate parent paths in location.vue
2019-03-21 12:41:40 -07:00
bcbf244fd2 Fix foreground color of option elements in selects (#2300)
* Fix foreground color of option elements in selects

- Windows users in Snow theme reporting white foreground color on system
 background color (light gray) when interacting with select elements.
 This fix hard-codes the option's `color` attribute to black.

* Add background property to style select options for Windows
2019-03-21 12:39:29 -07:00
7ff5febae0 Tables - Maintain stable sort. Requery for historical data on time system change. Parse telemetry time values before comparing to bounds. (#2322) 2019-03-21 11:00:48 -07:00
019d108bb2 Reorder api update (#2319)
* Added 'reorder' function to composition API

* Re-implemented reordering in Elements

* Make LAD table editable

* Remove test spec focus

* Fixing bugs with event listeners

* Clean up listeners properly in Elements pool

* Fixed race condition on drag-and-drop to initiate edit

* Implement reordering in LAD tables

* Reorder events emit full reorder plan

* Fixed failing specs
2019-03-21 10:59:08 -07:00
a14f628ca3 fix regression regarding edit views not showing in main object view (#2318) 2019-03-20 09:31:51 -07:00
6116351dad Reorder api (#2316)
* Added 'reorder' function to composition API

* Re-implemented reordering in Elements

* Make LAD table editable

* Remove test spec focus

* Fixing bugs with event listeners

* Clean up listeners properly in Elements pool

* Fixed race condition on drag-and-drop to initiate edit

* Implement reordering in LAD tables
2019-03-19 10:31:56 -07:00
23efef4469 fix auto closing issue when changing months, and remove stray event listener (#2305) 2019-03-18 11:59:41 -07:00
95549f7be2 Should not show editable views for objects in flexible layout and display layout (#2304)
* fix issue where editable summary widget view shows up in display layout and flexible layout

* keep consistent kebab case for props
2019-03-18 11:59:09 -07:00
6338bd1168 About dialog (#2306)
* Added legacy about dialog launcher

* Added build information and licenses dialog

* Made discussed changes to About API. Is now Branding API and a little more user friendly

* Added fullscreen overlay option

* About dialog and licenses overlay screens migrated

- Migrated CSS and refined styling;
- Unit tested in Open only - not able to test other 'brands';
2019-03-18 10:54:51 -07:00
f7d0d2c166 remove root from navigation (#2309) 2019-03-18 09:50:23 -07:00
7c2e10ba0e Remove url validation from summary widgets, webpage and hyperlink (#2312)
LGTM
2019-03-18 09:45:38 -07:00
350d3c92e7 remove is editing checks from toolbar providers since is editing is being checked by layout (#2314) 2019-03-17 21:01:03 -07:00
0f2918efaf Fix telemetry metadata issues (#2308)
* Do not try to convert undefined to a string

* Fixed metadata sorting. Iteratees that return arrays are treated as object paths.

* Added test specs for telemetry API reordering change

* Added telemetry filters to the API

* Support multiple inspector views

* Renamed InspectorView.vue to InspectorViews.vue

* VISTA compatibility issues (#2291)

* Build config changes necessary to work with VISTA
* Fixes to TelemetryTableRow to address bug in VISTA
* Fixed sass-fast-loader version to avoid https://github.com/yibn2008/fast-sass-loader/issues/47
* Reverted default theme
2019-03-14 13:49:37 -07:00
b72ad529aa small compatibility fix to make legacy dialogs (mostly) work (#2310) 2019-03-14 13:31:42 -07:00
f77c6c821c Migrate styles (#2307)
* Legacy style migration in progress

- Working bottom up, many legacy items commented out. Stopped at
controls/indicators;

* Further migrations and deprecating
- Legacy indicator styles moved;

* WIP Styles migration
- s-button converted to c-button, WIP;
- Other

* Significant progress on migration, but still very WIP

- Mostly constants and overlay styling;
- Also bubbles and splitter;
- TODO: fix tree in overlay and splitter in imagery!

* Fix Summary Widgets UI WIP

- Remove non-working status 'editing' checks;

* Fix Summary Widgets UI WIP

- Remove non-working status 'editing' checks;
- view-control > c-disclosure-triangle;

* Fix Summary Widgets UI WIP

- Markup changes;
- Migrate CSS to styles-new, remove old;

* Fix Summary Widgets UI WIP

- Rule formatting and layout;
- Refinement to _controls / select {} padding;

* Fix Summary Widgets UI WIP

- Toolbar styles made more portable;
- Palette style  migration;
- Very WIP;

* Fix Summary Widgets UI WIP

- Palettes all fixed and functional;
- Conditions layout;
- New c-button--swatched styles;

* Fix Summary Widgets UI WIP

- Clean up code;

* Fix Summary Widgets UI WIP

- Fix button in Test Data area;

* Fix layout in shell left pane due to elements being moved

- Styles fixed and refined;

* Fixed palettes

- Fixed icon palette;
- Significant refinement to general palette styles;

* Significant fixes for Summary Widgets

- Widget editing UI fixed;
- JS cleanups and improvements;
- CSS, JS code cleanup;

* Migrate tree view used in Locator

- Mods to legacy markup;
- Mods to current CSS;
- Removed import of legacy tree CSS in legacy-styles.scss;

* Migrate archetypes

- l-flex-row, l-flex-col, etc. moved to legacy;
- grid-* styles cleaned up and moved, @extends removed;
- WIP on c-object-label, move styles from mct-tree.vue into ObjectLabel
.vue;
- TODO: finish up c-object-label, cleanups in mct-tree.vue;

* Migrate effects and animation mixins

* Object labels, legacy cleanup

- Add and apply .c-object-label for tree node elements;
- Remove legacy class "tree" from markup;
- Tweak color of tree item hover for better contrast in Inspector;

* Fix palettes in Inspector

* Various

- Fix hover color in tree for better mechanics on a variety of bgs;
- Fix object label in Locator tree;
- Remove overlay blocker test color;

* Significant work for Summary Widgets, mctForm, compact form

- Forms in overlay dialogs fixed;
- form, compact-form, other classes migrated into new _forms.scss;
- Fixes for Summary Widgets;
- Theme constants files synced, add form values;
- Removed import of legacy forms/elems SCSS file;

* Migrate various

- Autoflow tabular;
- Datetime;
- Channel selector;
- Form validation;

* Migrate wait spinners, final cleanup

* Remove old src/styles directory

- Remove old Snow and Espresso plugins;
- Remove refs to old Snow and Espresso config'd aliases;

* Update Palette.js

* Update Palette.js

* Removed commented code

* Removed commented code

* Migrate About, startup and splash screen styles
2019-03-14 13:27:13 -07:00
248f160e73 Filters Inspector View (#2296)
* Added telemetry filters to the API

* Support multiple inspector views

* Renamed InspectorView.vue to InspectorViews.vue

* first cut of filter inspector plugin

* abstract for better readability

* third times the charm

* working persist checkbox selections

* fix typo

* working persisted filters from inspector

* add prop validations for FitlerValue and FilterObject

* enable filter inspector view for overlay and stacked plots

* remove object from persisted filter when object is removed from composition

* update filterValue to filterField for clarity

* Added filter code to tables

* add filter support to Telemetry Tables

* fix errors when old domainObject does not have configuration property

* working filters on overlay plots

* make requested changes

* Add filters as 'options' object on subscribe

* Significant mods to Filtering
- Styling;
- Added Browse view in Inspector;
- Added .c-checkbox-list class;
- "PLOT SERIES" header changed to "PLOT SERIES OPTIONS" for clarity;

* make filter update pass updated filters to telemetry adapter

* Tolerate undefined configuration

* Conditionally destroy filters listener

* use @change event instead of @blur'
2019-03-12 12:20:03 -07:00
5151f90bb8 Reimplemented Remove Action. Removed confirmation dialog from legacy remove action, which move still relies on (#2290) 2019-03-11 14:53:32 -07:00
402062110d TCR fixes 2 (#2286)
* prevent default on dragover in dropHint, to allow drop event to fire

* add notebook snapshot to preview

* fix for preview image overlay

* pin fast-sass-loader version to 1.4.6

* fix saveAs in plot image export

* fix elements search in inspector

* fix current Search error

* fix anonymous render error in layout

* navigate and edit on create

* remove domainObjects from composition when deleting frames and containers, and also fix a bug whereby a user can add domainObject via drag and drop(composition) but because of the lack of containers, it will not be added to the flexible layout

* fix index undefined error when reordering containers

* throw an error when user cancels instead of returning false

* fixes for toolbar not updating on selection change

* fix errors when objects without context are returned by the search aggregator

* prompt user before cancelling edit

* check transactions before prompting user

* add save and continue editing option to save menu

* prompt user if in edit mode and is navigating away
2019-03-11 11:47:53 -07:00
1c8f23dea1 Object migration (#2282)
I implementation of data migrations for display layouts and fixed position elements.
2019-03-11 08:56:56 -07:00
5ee22b3481 Error in conductor validation (#2293) 2019-03-05 12:20:34 -08:00
322a7bd5a8 VISTA compatibility issues (#2291)
* Build config changes necessary to work with VISTA
* Fixes to TelemetryTableRow to address bug in VISTA
* Fixed sass-fast-loader version to avoid https://github.com/yibn2008/fast-sass-loader/issues/47
* Reverted default theme
2019-02-27 17:08:50 -08:00
98c8e19d93 Only persist latest mutated model. (#2295)
* Only persist latest mutated model. Fixes #2277

* Updated tests

* Fixed style issues
2019-02-22 13:45:44 -08:00
0e30fba72d Tree search implementation (#2280)
Re-implements search UI using legacy existing search service.
2019-02-19 15:34:47 -08:00
1c77ef142c Revert object duplication check from https://github.com/nasa/openmct/pull/2287/ (#2294) 2019-02-15 16:52:05 -08:00
853764d863 Added editing support to the View API (#2279)
* Added edit to view API

* Fixed listener deregistration bug
2019-02-13 19:26:26 -08:00
d0ab59f9da Toolbar number input (#2288)
* Listen for ‘input’ event when input type is number, otherwise listen for 'change' event.

* Remove checks for options type in the event handlers.
2019-02-13 12:16:52 -08:00
21e08709cb Prevent self-composition in layouts (#2287) 2019-02-13 11:42:43 -08:00
a1aa99837b Update isTelemetry logic to ignore imagery. (#2285) 2019-02-12 11:32:53 -08:00
037264b0bf Quick compatibility fix to support dismissing notifications from legacy list (#2283) 2019-02-12 11:32:23 -08:00
1a06702dbe Resolve conductor configuration immediately (#2276)
* Set time system / bounds immediately based on conductor configuration

* Hide date picker if not UTC based time system. Improve Conductor configuration error messages.
2019-02-07 11:36:37 -08:00
666bb41697 [Selection] support getting object view's selection context (#2272)
* Get selection context from object view for constructing the context in subobject view.

* Implement getSelectionContext for flexible layout provider and remove code that makes flexible layout self selectable.

* Get selection context from object frame when constructing context for frames.

* Disable Add button when selected parent is a flexible layout

* Make 'Add' button working for selected display layouts in a flexible layout.

* fix expand error and fix flexible layout toggle container issue

* Check for parent object before getting composition.
2019-02-01 17:40:30 -08:00
e254fafb5c More fixes for TCR (#2255)
* Open in new tab
* Fix splitter resizing error, and css background issue
* Prevent new line on enter key press when editing name in object browse bar. Update domainObject name on enter key press in Object Browse Bar
* Flexible layout should react to composition remove, and fix delete container
* Render a drag ghost when dragging frame items in flexible layout
* Use composition.on add to add new frames
2019-01-29 14:55:38 -08:00
1dc1cc6c24 [Toolbar] hide toolbar when in browse mode (#2278)
* Hide toolbar when not editing and the selected object has no toolbar.

* Remove unused code
2019-01-28 15:52:03 -08:00
baa5d10009 [Fixed Position] cleanup (#2275)
* Delete unused files

* Remove fixed view plugin and style imports.
2019-01-28 12:50:17 -08:00
ac2b9acccb Time conductor validation (#2273)
* Fixed validation issues for bounds

* Validate offsets correctly

* Reset validation on mode change

* Use toggle mixin for Conductor menus
2019-01-25 13:40:46 -08:00
075d4deecb R&I Misc UI 4b (#2271)
* Styling for selects
- New cleaner styling approach;
- New cSelect and appearanceNone mixins;
- Converted selects in Notebook, plot-options-edit;

* List View fixes
- Ellipsizing now works;
- Better icon and text alignment;

* Remove updateDrilledIn function and calls

* Telemetry Table editing styles

- Headers now have hover effects;

* Change 'toggle'-style toolbar buttons to reflect current state, rather
than what will be the setting once clicked
- When frame is hidden, button displays the frame-hidden icon, and
tooltip says 'Frame hidden';

* Enable all sub-object views in Display Layout to use numeric inputs for
x, y, width and height

* Toolbar sanding and polishing
- Button order tweaked to place stack order near X, Y, etc. inputs;
- Improved spacing between items themselves and separators;

* Fix indentation

* Fix indentation part deux
2019-01-25 12:50:16 -08:00
ac11f898d4 A bunch of fixes for TCR (#2250)
* fix add links by drag and drop

* fix dialog component logging errors

* fix search component errors

* fix sort

* remove unused entrydnd file

* remove unnecessary console logs

* fix preview action in embed dropdown, which was throwing a type error

* invoke PreviewAction once in NotebookController and pass into git add -a

* add navigation capability to embeds, and a bunch of cleanup

* code cleanup and avoid calling dismiss twice on overlay destroy, which was throwing a DOM error. Calling code should dismiss the overlay

* only show elements pool if domainObject has composition

* fix error in inspector when no selection is present

* wire up object view expand button

* listen to composition#remove in TabsView

* make reviewer requested changes

* make reviewer requested changes, and fix for an edge case where removed tab is at the end of the array and currentTab is not set properly

* remove array wrapping dynamic classes in embed.html

* add title='View Large' to expand button

* change model variable to domainObject in tabs.vue

* dismiss top level overlay when esc is pressed (only if overlay is dismissable)

* fix link navigation from embeds

* use positive flag dismissable instead of negative notDismissable for overlays

* make overlays dismissable by default, unless set to false
2019-01-24 16:23:50 -08:00
dd31de6935 Add form to display layout type to allow setting grid size. Also fix generator's form. (#2274) 2019-01-24 16:03:09 -08:00
9e811e722f [Display Layout] support ordering items (#2266)
* Add a toolbar menu for changing the display order of items.

* - Wire up orderItem
- Modify the toolbar API to support function as alternative for property path.
2019-01-23 10:51:29 -08:00
8ef53d85c4 R&I Layout editing mods (#2256)
* Layout mods for sub object editing without is-drilled-in
* Remove drilled-in logic
2019-01-22 11:52:56 -08:00
abcc5cb023 Implemented go to parent (#2264) 2019-01-17 16:32:12 -08:00
931871ff95 [Display Layout] Snap to grid toolbar toggle button (#2262)
* Add a  button in the toolbar to toggle snapp to grid.

* Convert item's coordinates and size from grid unit to pixels depending on useGrid value.

* Rename selectionListener to removeSelectionListener
2019-01-17 09:24:59 -08:00
6b1e8862ef Tables composition error (#2260)
* Removed debubgging statement

* Change order of mutation events so that composition handlers are working with latest object version.

* Remove suppression of mutation event

* Minor code reformatting
2019-01-15 09:55:22 -08:00
00ce246fc5 Merge pull request #2261 from nasa/object-path-on-drop
Change domain-object event transfer data to domain-object-path
2019-01-15 09:48:32 -08:00
c0c7d96429 Change domain-object event transfer data to domain-object-path 2019-01-14 12:07:31 -08:00
92b2582d0d Preview instead of navigate in edit mode + highlight navigated object (#2252)
* Preview instead of navigate when in edit mode.

* Prevent preview of navigated object

* Removed trailing comma

* Observe navigation from tree items instead of mct-tree

* Cleanup of redundant code

* .is-selected -> .is-navigated-object
2019-01-11 11:21:52 -08:00
4084a1ac86 Drag and drop fixes (#2249)
* Drag-drop edit mode from capture handler. Drag-drop composition from bubble handler. Check composability on drag start

* Show drop hints without being in edit mode.

* Don't serialize objects twice on drag
2019-01-11 11:20:57 -08:00
cb1a1c2616 R&I Clock timer fixes (#2254)
* Clocks and timers styling WIP

- Markup, new styles;
- Renamed _legacy-plots.scss > _legacy;
- New $colorBodyFgEm constants - theme files all updated;

* Clocks and timers styling complete

* Styles clean up

- Moved legacy styles out of _global into _legacy.scss;
2018-12-24 14:02:37 -08:00
ce6c1f173e Lad table vue (#2231)
* working telemetry subs

* Styling for LAD table

- Fixed markup;
- Corrected icon, added description;
- Expand c-table styles slightly, moved some definitions into
c-telemetry-table;

* add LADTableSummary

* change function names

* make reviewer requested changes

* add lad table headers in sets

* make column widths fixed

* handle composition remove in sets and tables

* finish updateTimeSystem

* add correct support for limits

* LAD Table and Table Set styling

- Removed fixed table layout;
- Col widths set to 33% for now;
- New c-lad-table class and styling;
- New __group-header class added;
- All themes updated with __group-header style colors;

* make reviewer requested changes

* use lodash findIndex
2018-12-20 13:18:22 -08:00
30a4888363 R&I Misc UI 3 (#2253)
* Limits-related changes; WIP

- Renamed CSS classes: `s-limit-*` > `is-limit--*`;
- Removed load of legacy _status.scss and added new _status.scss file;
- Minor re-org of limit/status constants in theme files;
- Limit colors in theme constants all updated;

* Fixes for s-selected always displaying the move cursor

- Mod s-selected;
- Reinstitute `.is-moveable` class;

* Layout-related cleanup and refinements

- LineView cleaned up;
- Selection, hover, etc. classes for c-frame cleaned up;
- Constant names normalized, theme files updated;

* Fixes for editing plot options

- Color palette now more flexible;
- Styles for color palette button refined;
- c-input--flex added for more flexible inputs;

* Various swatch-related changes

- Swatch refinements, new .c-click-swatch class;
- Added .c-click-icon--major modifier style, applied in markup;

* Local controls class application and behavior cleanup

- Remmoved .has-local-controls from selected markup;
- Refined CSS selector for better hover behavior;

* Misc UI tweaks

- click-icon--major in Notebook;
- .test mixin improved;

* Update _constants-espresso.scss

* Update _constants-maelstrom.scss
2018-12-20 13:17:44 -08:00
b0917a9866 Pending fixes for Grid and List Folder views (#2247)
* fix view names, and persist sort order across list views by persisting in local storage

* use keystring as key

* add openmct namespace to localstorage persisted listview-sort-order to avoid name collision, rename key in composition-loader to objectKeyString
2018-12-20 13:16:23 -08:00
464e5de947 [Display Layout] Add delete button (#2251)
* Add delete button in the toolbar for removing items

* Mutate composition if there are no telemetry objects. Select the parent layout after deleting an item.

* Saving work

* Watch for index in the components and update it in the context.

* Select the parent after a composition is removed.

* Address reviewer's feedback.
- Rename mutatComposition() to removeFromComposition().
- Inline logic for filtering composition
- Use separate branches for each item type in trackItem().

* Address reviewer's requested changes
2018-12-20 13:15:23 -08:00
47a07da17d Merge pull request #2246 from nasa/conditional-edit-button
Conditional edit button
2018-12-20 09:37:43 -08:00
ec4c443299 Misc ui 2 (#2248)
* Create button disabled when editing
* New disabled mixin;
* Tree styling
* Fixed icons for fullscreen toggle button
* Local controls fixed for Imagery and Plots
* Range control styling updated;
* Plot styling, significant mods
* Disclosure controls improved;
* New _legacy-plots.scss file added, no longer loads legacy plot SCSS
files;
* Removed 12px crosshair cursor in legend hover;
* Inspector tree styling in plot options
* Fix z-indexing related to Overlays
2018-12-18 11:07:09 -08:00
3122168b0e Removed unused legacy code 2018-12-13 17:11:39 -08:00
da3af4b3db Merged from TCR 2018-12-13 15:36:13 -08:00
850fa28bf6 Update component locations 2018-12-13 09:45:50 -08:00
270684c5fd Merge pull request #2244 from nasa/component-reorg
Reorganize components, create ObjectFrame
2018-12-13 09:19:40 -08:00
afa1589cb5 Reorganize components, create ObjectFrame 2018-12-13 09:16:42 -08:00
18a94d938f Notebook Snapshot and Annotate (#2240)
Notebook Snapshots and Annotations from new Browse Bar
2018-12-12 18:57:45 -08:00
d026bc2134 Show edit only if view is editable. Rename editable to canEdit 2018-12-12 17:17:49 -08:00
c0b7276787 tree and toolbar fixes (#2241)
[tree] fixes warning from viewControl about improper mutation in child component
[tree] show links in tree
[toolbar] close open menu when clicking on another menu.
2018-12-12 10:58:36 -08:00
a8ba3b3fdb Merge pull request #2228 from MarvinJWendt/grammar-fix
Grammar fixes in API.md
2018-12-11 20:07:01 -08:00
bb8342f62b Style updates (#2243)
* Create button disabled when editing

- New disabled mixin;
- Selector def for .is-editing .c-create-button;

* Symbolsfont install generation, Elements pool

- Moved font src statement to prevent genning of symbolsfont in wrong
directory locations;
- Elements pool styling WIP, todo: hover item styles, class naming;

* Tree styling

- Hover behavior refined;
- Styling for .is-selected state;

* Fixed icons for fullscreen toggle button

* Tree-related styling for is-selected, is-being-edited
2018-12-11 19:29:29 -08:00
0d8dad1559 update preview action to use new action registry
* Support category arrays for legacy actions

* Fixed object path listener. Removed old context menus

* Removed old fullscreen action and Screenfull dependency

* Restore confirmation dialog on remove

* Restored tests

* Remove unused legacy policies

* WIP re-implementation of Preview action

* WIP for Charles to take a look at flex issues

* Disable legacy preview action

* Style and markup fixes for new Preview

- LegacyViewProvider modded to wrap legacy elements in .u-contents div;
- Added selector that automatically defines display: contents on
`no-class` divs injected into __object-view;
- Unit tested with legacy and new components (telem tables, plot view,
Notebook, etc.)

* Tweak z-indexes, fix open in new tab action, add 'done' button

* Removed legacy action

* reuse contextMenuDropDown component
2018-12-11 19:25:20 -08:00
c1ef701eb2 merge display layout view config with components, add line view.
* Hacky WIP

* WIP

* check for 'domainobject' in data transfer

* Metadata manager can return default display value

* Refactor subobject and telemetry views to use layout frame

* Use data domainObject

* Get metadata for selected object.

* Don't inject lodash via vue

* move selection to specific layout types

* restore toolbar functionality

* Support creating line

* Add controls for setting x, y, x2 and y2 for lines from the toolbar.

* Initial attempt at resizing lines

* Check for duplicate panel

* line resize handles working

* Get Text and Box elements working.

* Refactor image view to use layout frame

* Fix drill in

* Check for object before accessing the identifier to avoid type error.

* Add inspectable class if item is subobject or telemetry view.

* Delete unused files

* remove unused imports

* Fix typos

* Fix cssClass and objectPath

* object can be undefined so check for it not being undefined before adding a listener.

* Set cssClass when domain object is available

* Get user input for text and image in the toolbar when adding element.
2018-12-11 11:28:16 -08:00
c6a181a2e7 Notebook bug fixes from Testathon - 12/4/2018 (#2236)
* fix add links by drag and drop

* fix dialog component logging errors

* fix search component errors

* fix sort

* remove unused entrydnd file

* remove unnecessary console logs
2018-12-07 14:50:14 -08:00
981392ea07 Define metadata when component is created. (#2237) 2018-12-07 10:34:31 -08:00
5928a102a6 Theme refactoring (#2234)
* Theme refactoring

- New hero, header and body font mixins added to theme files;
- Mods to body, griditem, frames, browsebar, etc. to use new font
mixins;
- Moved symbolsfont definition into _constants.scss;

* Tweak - make SubobjectView use header font;

* Add new theme 'maelstrom';

* Add comment

* Remove deprecated .svg and .eot symbol font files
2018-12-07 10:26:54 -08:00
c748569433 Address testathon issues relating to context menu (#2235)
* Support category arrays for legacy actions

* Fixed object path listener. Removed old context menus

* Removed old fullscreen action and Screenfull dependency

* Restore confirmation dialog on remove

* Restored tests

* Remove unused legacy policies
2018-12-07 10:15:11 -08:00
a87fc51fbb Flexible Layout Refactor (#2223)
* only store identifiers in frames

* move drop hints outside frame

* fix resizing

* fix drag and drop frames

* fix reordering of columns

* multiple improvements

* fix styling for drop hint in empty container

* fix frame reorder in same column

* better drop target show logic

* better frame drop to logic

* fix container reordering

* add uuids for frames and containers to prevent clashing

* toolbar updates

* use shared subobject component to ease styling

* add type cssClass to subobject component header, and delete frame header vue file

* add context menu in subobject views

* change height and width to size for both frames and containers

* remove uneccesary methods from resizeHanfle and inline logic instead

* remove left click logic from context-menu mixin, add a click handler to dropDownContextMenu to show menu

* make a mixin to listen for isEditing

* encapsulate drop hints, and pass allowDrop logic to check if drop hint is valid

* use event.dataTransfer instead of vue events for container reordering

* remove vue events for frame dnd and use html events

* better implementation of toolbar

* remove unused event

* fix container resizing when adding new container

* make reviewer requested changes

* add containerId to event vs having a JSON object

* watch domainObject from flexible layouts and pass down to components

* change domainObject directly on add Container

* update domainObject on change, and cahnge toolBarProvider to function that returns an object

* fix plugin

* set domainObject as data property in felxibleLayouts

* use class instead of inline styles

* Cleanup code

inline this.$el for components that measure their own size
replace snapToPercentage with Math.round
inject object as layoutObject, not dObject.

* reuse sizing logic between frames and containers

* clean up handlers

split handlers for createFrame and moveFrame events in container.
reorganize methods for each to clarify how they operate.

* ObjectView only stops propagation when it handles event

* use ids in toolbar to ensure correct items are mutated

Because index may change due to drag and drop events,
deleteFrame and deleteContainer should operate using identifiers
instead of index.

Also, generate path for hasFrame using indexes when object is
selected, otherwise hasFrame may refer to the incorrect path.
2018-12-07 09:34:33 -08:00
e07cfc9394 Layout drawing (#2232)
* - Show "Add" button in the toolbar when a display layout object is selected.
- Add a flag to object view's show() method to indicate immediate selection of the view. If the view implements getSelectionContext() use it, otherwise set to default context.

* Create a component for each element.

* Saving work

* Add element factory for creating new instances of elements.

* Mutate element when a new one added and get elements when the component is mounted.

* Add create() method for creating a new telemetry and element in their respective view configuration.

* Add some of the toolbar controls for box, text, image and line elements. Also, add X, Y, Width and Height controls for alhpanumeric elements.

* Pass name to addElement as type.

* Add c-frame-inspectable class if item is inspectable.

* Clean up

* Hide frame for summary widgets by default.

* Better styling for editing

- s-selected on shell__main-container;
- Better edit grid coloring for espresso;

* - Update toolbar-button to support dialogs.
- Update toolbar to construct a value object based on form keys if a toolbar item has a dialogi, and mutate the form keys.
- Add toolbar controls for editing text and url for 'Text' and 'Image' elements respectively.

* Editing-related changes

- Removed hard-coded .is-selectable and .is-moveable from
LayoutItem.vue, updates accordingly to _global.scss;
- Theme constants updated;
- TODO: apply changes to Flexible Layouts;

* Better defaults

- Better default grid size and object size;

* - Fix toolbar-input to read value as a number if type is 'number'.
- Remove rawPosition from view configuration and instead get the position and dimensions from the properties (x, y, width and height) directly.
- Set the style property on the view configuration instead of the layout item.
- Move the logic for updating the style to the view configuration.

* Fix default dimensions for telemetry items and subobjects since the default grid size is changed.

* Remove form definition for display layout type.

* Reword the comment

* Let subobject view configuration handle new panel creation.

* Add default grid size back and remove unused code.

* Pass in only the needed method.

* Define default position in case the object is not added via drag 'n drop.
2018-12-04 09:12:45 -08:00
32a0baa7a3 Context menu actions (#2229)
* Adding jsdoc to Context Menu Registry

* Remove attachTo function - make context menu gesture a mixin. Update object path when objects change.

* Added context menu from arrow button. Some minor refactoring

* Clarify variable naming

* Moved Context Menu component

* Reorder function definitions

* Addressed code review comments
2018-12-04 09:09:09 -08:00
f06427cb3e Show field name as title. (#2233) 2018-12-04 08:15:33 -08:00
1b31a472a5 URL validation Removed (#2219)
* Removed Regex from Hypelink Bundle
2018-11-27 08:26:06 -08:00
e5fe8fd975 Save As clears transaction while undirtying (#1471)
* mutation listener adds via transaction manager

Update the TransactingMutationListener to add items to a transaction
using the transactionManager so that they can be properly removed
from the transaction at a later date.

Prevents showing error dialogs during successful save, and also
prevents persisting duplicate objects.

Fixes #1468
2018-11-26 09:23:42 -08:00
b36d1ca2bc Grammar fixes
Sources:
to experiment: https://en.oxforddictionaries.com/definition/experiment
2018-11-24 02:43:25 +01:00
9ae4e66c91 Instantiate legacy objects inline 2018-11-23 15:31:38 -08:00
eeab6e9bde Do not allow context menu to overrun edge of screen 2018-11-23 15:14:55 -08:00
cabc410e0a Fix SaveAs import 2018-11-23 15:13:53 -08:00
2dcff00fa7 Added legacy action layer 2018-11-23 11:52:13 -08:00
94cdce3551 Support events other than 'contextmenu' 2018-11-23 09:05:01 -08:00
a7948ce83e Implemented context menu action registry 2018-11-22 15:53:50 -08:00
74faf1bd48 Create a base view configuration class. (#2225) 2018-11-16 12:56:51 -05:00
3e7527d55c Fixes for Flex Layout in TCR (#2221)
- Object view now displays objects;
- FL frame header fixed;
- Fixed grippy look and positioning for now;
2018-11-13 19:02:54 -05:00
e9730ced9e Should say License instead of Licenses (#2222) 2018-11-13 19:01:09 -05:00
ff2f79b087 Update copyright and update filename so github detects it (#2220) 2018-11-13 15:42:56 -08:00
9733674d6e Fixed baseline in symbols font 2018-11-10 22:41:38 -08:00
e05dbadea2 Ensure labels and tree items stay in sync 2018-11-09 11:46:57 -08:00
bc512f3766 Retrieve latest object before create
Retrieve latest object before creation to ensure we are not
mutating an outdated version.
2018-11-09 11:00:24 -08:00
ae51e2e437 Table header columnWidth prop should be number not object 2018-11-09 10:34:15 -08:00
0e06a7b403 Hide openmct with closures to prevent it becoming reactive 2018-11-09 08:33:50 -08:00
ff7df9ad1e context menu and shared object link generation (#2199)
* temporarily disable remove dialog which is broken

* temporarily remove broken context action policy

* let openmct generate legacy objects

* ensure composition loads in specified order

* redo nav and add context menu support to tree

* componentize grid and list view, add context menus
2018-11-08 17:21:18 -08:00
1069a45cfc Flexible Layout (#2201)
* first cut of flexible layout

* better drag handling

* add drop targets to every row

* enable drag and drop between columns and rows

* enable persistance

* add editing capability

* chage rows to frames and columns to containers, switch draggable to whole frame object

* Merge latest, resolve conflicts.

Need to just apply these changes to Deep's branch and push

* enhancements to drag targets

* WIP in flexibleLayout, container.vue files

- Refined classes and markup;
- min-width changed to flex-basis;
- Added toggle direction button;

* Significant progress but still WIP

- Refined classes and markup;
- Layout toggling working;
- Add Container working properly;
- TODOs: fix sizing in empty container, fix bordering, more refinements;

* add resizing of frames - still wip

* Significant enhancements

- Moved all CSS into flexibleLayout.vue;
- Layout now improved for empty container and drop hints;
- Proportional sizing now better for frames and containers;

* Resize handle WIP

* abstract splitter and logic into self contained component that will emit an event when mouse is moving

* Resize handle WIP

- Minor tweak to handle padding and hover;

* add container resize todo persist

* persist container resize

* add frame header, fix column resize on last column

* Refinements to resize-handle

- Fixed sizing;
- Transition on hover;
- TODOs: needs is-dragging to maintain hover style while dragging;

* fix drop hints showing after drop

* move header

* improve mouse move gesture

* Added frame size indicator

* add snapto functionality

* Refined container and frame size indicators

- Also added overflow handling to l-grid-view

* improve resizing logic

* add selection on frames

* Various resizing-frames related

- Fixed overflow - now frame widths can be collapsed to 5% minimum;
- Sizing indicators refined, better positioning and layout;
- Added grippy drag indicators to column heads;
- TODOs: add column head cursors and hover effects, hide indicators
when not in edit mode, handle nested layout and flex layouts while
editing

* Selecting and emtpy layout messaging

- Better empty layout message;
- Moved s-selected to proper element in c-fl-frame;

* Drop-hint and sizing related various

- Drop-hints for first placeholder container now display;
- Drop-hints moved into drag-wrapper;

* add delete frame

* Editing various

- Adjust Snow theme constants related to editing;
- Changed delete message wording;

* Updated icon and added description

* add toggle and remove container to toolbar

* miscellaneous cleanup

* add container button to toolbar

* improve toolbar

* code cleanup in plugin.js

* Various icons, toolbar separator

- Copied in c-toolbar__separator and associated changes in _controls
from Pegah's layout_alpha branch - may have conflicts later.
- Added separator to FL toolbar;
- Updated icons for grippy-ew, toolbar icons;

* add check for empty containers"

* logic to resize frames on drop

* fix delete frame and persisting toolbar

* Significant changes to edit / selection styling

- Both Flexible and fixed Display Layouts addressed;
- Both themes addressed;
- Changed drop-hint icon to icon-plus;

* add correct icons to frame header and fix toolbars showing up in wrong views

* Moving and resizing various

- Cursors;
- Grippy added to frame resize-handle, WIP!;

* add container reordering

* add frame/no frame support to toolbar'

* fix regression of resize handles showing after last frame in container

* force selection of flexible-layout when editing is first clicked, to apply correct toolbar

* make changes to simplify toolbar

* Modified sizing algorithm slightly

* make changes reviewer requested

* fix regression that causes top drop hint to not show

* remove unused variables and bind events to vue

* unsub selection before destroy
2018-11-08 17:17:14 -08:00
d13d59bfa0 Display layout alphanumeric (#2203)
* Support displaying and adding telemerty points in display layouts.

* Create TelemetryView component. Also disable the toolbar frame button for telemetry objects.

* Add 'components' directory and move the toolbar provider definition to a separate file.

* Saving work

* Saving work

* Saving work

* Fix telemetryClass

* Fixes for .no-frame in new markup structure

- CSS cleaned up and reorganized;
- Added .c-telemetry-view classes;

* Add computed properties for hiding label and value.

* Filter value meta data based on the item config display mode.

* Add drop down menus for display mode and value

* Add toolbar controls for telemerty points

* Set border and fill related styles on telemetry view instead of layout item

* Refinements to telemetry view

- Stoke and fill styling now work;
- Internal element layout now much better when sizing in a Layout frame;
- Tweaked color of frame border while editing;

* Prevents adding a new (panel) object if it's already in the composition.

* Fix for jumping edit area

- Removed v-if from Toolbar.vue;
- Refined c-toolbar styling;
- TODO: don't include toolbar component when not editing, and for
components that don't use a toolbar;

* Add a separator toolbar control

* Check for domainObject being on the toolbar item as not all controls have that property

* Hide 'no fill' option from the text palette.
Modify the color-picker component to say 'No border' for stroke palette.

* Move the listener for hasFrame to the subobject view configuration

* Fixes for toolbar-separator

- New mixin;
- Corrected markup for separator;
- New class for .c-toolbar__separator;
- Updated DisplayLayoutToolbar.js to include separators in the right
spots;

* Get type from item.

* Include copyright notice.

* Use arrow function for consistency and define a TEXT_SIZE constant.

* Use composition API to add non-telemetry objects instead of relying on the drop handler.
Display a blocking dialog if an existing non-telemetry object is dropped.

* Fix text color picker icon

* Address reviewer's feedback

* Load the composition and update addObject() to render existing panels as well. Also, cache the telemetry value formatter.

* Add listener for changes to time bounds.

* Code cleanup

* Use getFormatMap() to store formats. Reset telemetry value and class before fetching new data.

* Fix a typo

* Define telemetry class and value as computed properties.

* Change context object definition

* Look at the telemetry metadata to find a good default for the value key instead of defaulting to 'sin'. Also, make formats reactive.

* Use let instead of var.
2018-11-08 17:09:17 -08:00
76e163473a [Plot] Remove x-axis tick ellipses (#2212)
Remove ellipses from x-axis ticks and reversal of tick text.  This
allows PNG export to export ticks correctly instead of reversed.

Fixes #2177
2018-11-08 12:24:26 -08:00
6fdc24ab21 Added larger hit area to allow better access to buttons (#2148)
Fixes #2147
2018-11-08 10:46:31 -08:00
55d3ab5e8a Added new glyph 2018-11-07 22:27:03 -08:00
c073a21ba6 [Table] Custom column widths and order (#2204)
* Renders with resize hotzones

* Implemented basic reordering of columns

* Refactored column headers into component

* Custom column widths persist during resize

* Initial working version of fixed column sizes

* Only calculate default sizes when first data received.

* Further fixes for fixed column widths. Add option to switch to auto-widths

* Fixed bug with table auto-sizing

* Only allow reorder and resize in edit mode

* Bug fixes

* Allow for scroll bar width

* Bug fix with tables reverting to 100% width

* Fixed bug with drop position indicator when scrolled

* Moved events on to component

* Do not throttle mouse events. Let Vue throttle them

* Do not hard code vertical offset for drop target

* Addressed review issues

* Clarified mouse event handling on column resize
2018-11-07 11:04:56 -08:00
cb93124ee1 [readme] fix email address (#2210)
* fix email address

Update email address to match website, fix #2202

* update display address
2018-11-07 10:43:03 -08:00
4bda4080d2 Consistent composition order (#2209)
* ensure composition loads in specified order

* Remove Modern JS to match current style guide
2018-11-07 10:07:57 -08:00
e710cafb2c Mutate correct path for plot range (#2208)
Mutate correct path on object for axis range.  Fixes #2182.
2018-11-07 10:02:41 -08:00
ed8137726d cstyle update 1106 (#2211)
* Temp fixes for legacy styling of overlay and forms

* Added new glyphs: rows, columns, plus-in-rect
2018-11-07 09:58:33 -08:00
3ebdab5e51 Symbols font update (#2206)
* Very significant update to symbols font

- New Icomoon project and font files for 16px symbols;
- Symbol char codes now PUA and hexadecimal compliant;
- Symbols reorganized;
- New symbols added;
- Remove loading of legacy glyphs scss file;

* Added new fonts

- Updated Tabs View icon art;
- Generators icons added;

* Added new icon glyphs and background SVG art

- New icons for generators;
- New icon for Flexible Layout;
- New icon-grippy-ew, for Flexible Layout, others;

* Remove unused legacy font files
2018-11-06 13:22:44 -08:00
35d1b894e2 Tab view (#2197)
* first cut, working for objects with explicit height

* working for all objects by setting min-height explicitly to 70vh

* add composition listeners

* Tabs view WIP

- Markup and CSS BEMized;
- Stubbed in type icon in tab elements;
- TODO: refine styling on tabs;

* Tabs view WIP

- Layout enhancements;

* add types and header

* remove static icon-layout class

* move Tabs into its own plugin folder:

* simplify on composition add listener callback

* fix icon rendering

* add document dragstart and dragend listeners, with v-if div for drop target

* remove third argument from document listeners, move drop target to tab container

* Sanding and shimming on Tabs View

- WIP

* Tabs View styling

- Shippable to Deep;
- Added new c-drop-hint element in _controls.scss;
- Added new theme constants;
- Added 'empty' tabs view message;
- TODOs: add listener for dragover event for is-mouse-over styling,
integrate forthcoming changes to symbolsfont;

* add is-mouse-over class when drag enters dropHint div, add and remove listeners

* .c-drop-hint styling refined

- Refined hover effects;
- Bg icon instead of glyph character;
- TODOs: Change $bg-icon to plus sign;

* fix bug regarding persisting drop-hint styling even after drop is ended
2018-10-26 14:14:00 -07:00
7c54ec4f9f Tree listens for composition 2018-10-23 11:11:54 -07:00
cbcfd44016 Elements pool and drag drop (#2196)
* Implemented drag-and-drop composition

* Added composition policy for tables

* Reimplemented elements pool in Vue

* No need to resolve all objects on the navigated path

* Only show elements pool in edit mode

* Remove old elements pool

* Updated legacy code to use composition policy API

* Keep object in sync when mutated
2018-10-23 10:52:37 -07:00
a296bc2b81 Fix regression in layout frame edit handle by using a modifier convention. 2018-10-22 10:14:22 -07:00
06b9e0fa97 Create menu (#2195)
* Wire up create with old create action

* refactor grid and list view to listen on composition, use lodash for sorts, remove item count

* remove item count on grid view

item count needs to be supported by composition API and not by
inspecting model, otherwise it will be inconsistent.

* close menu after create or clickaway
2018-10-19 15:07:30 -07:00
4374a6fa28 Toolbar in Fixed Position (#2194)
* Initial attempt at getting the toolbar for the fixed position working with the Vue toolbar controls.

* Set title for controls

* Significant mods to support legacy Fixed Position

- Moved selection and editing styles into _global.scss;
- Changed class naming in legacy fixed.html to map to newer CSS styles;

* Pass in the color value

* Do not show the toolbar container if structure is empty.

* Use a plugin for fixed position to get access to openmct. Show the toolbar only if the object is being edited.

* Ensure fixedController is on the selection context when editing

* Add listener for a domain object with the same id only once.
Update the toolbar value after the object mutation.
Remove editor isEditing listener on destroyed.

* Remove space between the size and px.
If newObject exists, update the toolbar value.

* Remove --nwse class name which seems to be a typo

* use modifier convention
2018-10-19 11:42:30 -07:00
67883519ee Overlay Service - rewritten/redesigned in Vue (#2190)
* modify overlay service to accept bottomBarButtons option, working annotate on snapshot view

* working blocking message

* move blocking message to overlay service

* return dismiss function on show

* added jsdocs for overlayService

* added progress bar, with setter and getter functions

* make reviewer requested changes

* re-overhaul of overlayAPI

* Integrate work in dialog-service-vue-style

- Markup in DialogComponent and OverlayComponent now up to date;
- Colors, constants;
- Notebook entry now passes correct buttons config;
- New bg data URIs added;
- u-icon-bg-* classes added to global.scss;

* Added deprecation comments to .vue files

* Removed styles from deprecated file

* Temp restore of CSS so that dialog doesn't break.

* remove old OverlayService

* Fixed to overlay CSS

- Fixed large, small, fit sizes;
- Added margin to overlay buttons;
- Code cleanup;

* Remove unused constants

* Tweak styles for __close-button

* Code cleanup

* small cleanup

* wip progressDialog

* Progress bar fixed and Vue-ized

- Markup, styles;
- Constants moved from theme files into _constants.scss;

* added jsdocs to new Overlay API

* remove unused example function

* use progressBar.vue in NotificationBanner.vue, wire up the maximize method with progressDialog and Dialog from OverlayAPI

* Styling in progress for status message banners

* openmct members are camelCase

* Remove unimplemented/unused apis
2018-10-19 11:15:57 -07:00
6f1b5b4ae3 Notifications progress method (#2193)
* Added progress method to notifications so no longer dependent on reactive properties

* Updated notification launch controller to use new progress method

* Added progress function to Notifications API. Introduced NotificationService compatibility layer for legacy code
2018-10-15 10:00:05 -07:00
c3b7e7869e Fix code to remove warnings in conductor (#2192) 2018-10-11 11:33:59 -07:00
d48cc2deee Vue toolbar (#2191)
* Add a toolbar provider for display layout.

* Move toolbar provider to the plugin

* basic toolbar generation

* componentize different toolbar control types

Break toolbar control types down into different parts and provide
a test toolbar generator in index.html that utilizes all the
controls.

* Get the 'Show frame' checkbox working in the toolbar

* - Remove extra listener.
- Display toolbar only when editing.

* Modify the Selection API to set s-selected and s-selected-parent attributes instead of adding to the css class names.

* Move the logic for allowing the toolbar in the edit mode to the provider.

* Use toggle-button component to toggle frame

* Delete old files

* Remove MCTToolbar

* Modify the toggle button component to return the computed value

* Remove reload=true

* Revert to the original setting

* use value from props

* Always update toolbars on edit status change

* restore fixed position bundle

* bring back reload when hmr unavailable
2018-10-11 11:33:33 -07:00
64b9d4c24a Vue status bar (#2188)
* Implemented indicators

* WIP

* Fixed templates from notifications example

* Message bar implemented

* Implemented notifications

* Fixed bug with destruction of notifications

* Renamed MessageBanner to NotificationBanner

* Add save success message

* Removed NotificationServiceSpec

* Removed legacy constants from bundle
2018-10-10 17:35:11 -07:00
88bcb6078e Conductor fixes (#2189)
* Conductor fixes

- Restore RT update time field;
- Colors tweaked;
- Much better mobile layout;

* Significant fixes in Conductor markup and styling

- Markup/CSS simplified and clearer;
- Better coloring in both Themes;
- Better clarity for axis UI element;
- Fixed hover and focus styles on inputs;
2018-10-10 17:03:52 -07:00
5f9f3cd8e8 Topic themes (#2187)
* Bringing over in-progress changes from topic-core-css

- Adds _espresso-constants.scss;
- Cleanup colors and naming;
- Remove conflict res leftover 'domainObject' in mct-tree.vue;
- Still WIP!

* Various

- Remove pushBack / pullForward functions;
- Fix c-input-inline, remove bg until hover;
- TODO: input bg colors
- Increased margin in main-pane;

* Themeing WIP

- Conductor markup: convert to buttons for accessibility;
- Conductor styles consolidated and changed for better theme support;

* Themeing WIP; significant rewrite of pane headers

- Pane headers restructured for better semantics and clarity;
- Espresso design refined and tightened;
- Grid Vue changes for better themeing support;
- TODO: fix mobile version, collapse icon is whack;

* Restored Number-type input styling for correct positioning of spinner
button;

* Themeing mods for click-icon styles

* Bring Snow theme into style parity with Espresso

- TODO: refine Snow colors;

* Mobile styling fixed

- Mobile menu icon significant fixes;
- Hover only applied to desktop;
- Reorg of mixins;

* Bring Snow theme constants into parity with Espresso

- Refined Snow styles;
- Fixed missing scroll and padding in tree;
- Pane collapse button now uses proper color;
- Item Grid view refinement;
- Cleaned up code;

* Color fixes

- Super-menu description;
- Conductor time buttons hover;
- Datepicker "in-month" items color;
- Espresso colorKeyFilter brightened;
2018-10-10 12:45:46 -07:00
814b404614 Fixes for Inspector Plot properties, and more
- Fixed overflow problem when Inspector collapsed;
- Temp legacy styling for Plot inspection, series options, etc.
- Factored out non-useful gridTwoColumn mixin;
- Brought back legacy tree.scss file in legacy-styles.scss;
2018-10-05 15:13:38 -07:00
ba2bb2180b Merge branch 'topic-core-refactor' of https://github.com/nasa/openmct into topic-core-refactor 2018-10-05 12:15:30 -07:00
72cdb352f0 Fix s-selected, edit grid displays 2018-10-05 12:15:20 -07:00
cedf942c0c apply is-editing only when editing 2018-10-05 11:58:22 -07:00
27506a3757 Remove selectable from display layut 2018-10-05 11:39:41 -07:00
acc4e03c88 Merge duplicate data method, correct is-editing class 2018-10-05 11:25:30 -07:00
9a6090cd02 Legacy inspector view support 2018-10-05 10:41:06 -07:00
f40c9fa6f9 Overlay Service re-written in Vue (#2186)
* working overlayService

* wire to snapshot, and add onDestroy Callback

* increment overlayId

* New branch from topic-core-refactor to use as central point for common
CSS work

- Manually migrated changes from vue-toolbar, expect conflicts there and
 in vue-layout;

* Manually update constants-snow from vue-toolbar branch

* Update markup to use latest button classnames

- c-menu-button > c-button--menu;
- c-icon-button > c-click-icon;

* Various from vue-conductor-style

- Mods to input styling;
- Input[] styles moved to _controls;
- New/revised constants vals;

* Resolve bizarre merge conflict when applying stash

* Code cleanup

* remove duplicate div

* Alias and type-icon fixes

- More robust approach to alias indicators;
- Added alias indication to tree-item.vue;
- TODO: wire up alias indication tree-item.vue;

* Accessibility mods, convert elements to <button>

- Better reset styles for htmlInputReset mixin to allow use of <button>
without browser default styling;
- Create button;
- BrowseBar action buttons;
- c-click-icons;
- Removed Preview button from BrowseBar.vue;

* Overlay styling WIP

- Base markup pretty solid;
- Stubbed in temp values for overlayTypeCssClass in overlayService.js;
- TODO: styling for contents area;

* add options object, scope variables to show function, add destroy callback to active Overlay Object (for easier retrieval
2018-10-04 15:59:58 -07:00
e7cdb334de Reimplementation of Display Layout in Vue (#2185)
* Saving work

* Fix conflict

* Position the panels by setting the style

* Put the div back with height set to 100% in ObjectView.
Add markup for  drag handles.

* Use default position and dimensions if the layout panel is missing those values. Set s-status-editing on the main div to get the drag handles appear for now.

* Display Layout and frames major improvements

- Moved Toolbar out of Layout.vue and into DisplayLayout.vue;
- Styles for object view, Layout, Frame, etc.
- Major refactor of markup for frame;
- Added abs() mixin;
- Styles for is-editing done;
- Styles for
- TODO: styles for selectable, moveable, etc.

* Implement drill in gesture.

* Hide the background grid when a frame is drilled in

* Edit styling and toolbar WIP

- c-search styles moved mostly into mixin;
- New .c-labeled-input class;
- Browser overrides for number-type input spinners in webkit;

* Toolbar WIP

- Custom wrapped number input added;
- Toolbar buttons WIP;

* New toolbar buttons WIP

* Define a computed property for the css class object.

* Frame edit handles markup and styling

* Toolbar, editing and selection style refinements

- Moved toolbar back into Layout.vue;
- Hard-coded 'is-editing' onto __pane-main for now,
removed from DisplayLayout.vue;
- Styles for frame in LayoutFrame.vue:
-- editing default (dotted border)
-- editing .s-selected
-- .s-drilled-in (renamed .is-drilled-in)

* Refactoring button classes

- Lots of stuff broken right now;
- TODO: lots of renaming (c-menu-button, c-icon-button, etc.);
- Removed import of _controls in search.vue;

* Fixes for selection on nested selected elements

* Fix conflict

* Significant refactoring of button and click-icon classes

- Markup and CSS updated;
- Toolbar in good shape, prior to merge of vue-layout;

* Fix issues with relative font-sizing

* Add color palette markup and CSS

- Also added Layers menu example;

* Font, font-size glyphs and size menu, and more

- Added art for font glyph and renamed from .icon-T;
- Added new glyph for font-size;
- Fixed font-sizing in controls;
- Added font-size menu;
- Re-org'd toolbar items;

* Styling tweak for c-labeled-input

- Code cleanup as well;

* Fixes for toolbar toggleMenus and labeledNumberInput

* Implement resize and move for frames.
Added stub for drag 'n drop.

* Add custom checkbox control.

- Also, code cleanup.

* Add toggleButton component

- Code and examples

* Custom checkbox code cleanups, sanding

* - Persist new position/dimensions on the domain object when frames are moved/resized.
- Bypass the selection of the layout when dragging a frame is finished to keep the frame selected.
- Set the grid size to layoutGrid from domain object or use default if it's not specified.

* Fix conflict

* Implement resize and move for frames.
Added stub for drag 'n drop.

* Remove old layout view, was triggering View Switcher
and massive confusion when viewing Layouts

- TODO: add view provider for new Layout

* Enable drag and drop

* Changed example toggle-button

- Now uses show/hide frame as toggle-button example;

* Added pseudocode for handling drag/drop composition change

* Add copyright notice

* Layout frame and contained components styling

- Hyperlinks, Hyperlink buttons, Summary Widgets now use `.u-links`
which disables their pointer-events when editing;
- Hyperlink buttons, Summary Widgets now expand to fill their
containers in a Layout;
- Markup and JS for Hyperlinks, Hyperlink buttons, Summary Widgets
somewhat
modded to use new classing, applied in legacy scss files;

* Fix icon sizing error in BrowseBar

* Edit and selecting styling for Layouts

- WIP!

* Edit and selecting styling for Layout frames

- Color vars more standardized;
- Hover and *-selected styles;

* Getting vue-toolbar reverted back to latest

- Merging this branch with vue-layout may cause conflicts;

* - Implement drag ’n drop.
- Set hasFrame to a default value if it’s not set on the configuration.
- Emit an event to the parent wrapper component to update the ‘newDomainObject’ prop whenever the domain object is mutated in the display layout child component.

* Revert emitting 'update:object' event to the parent.

* New branch from topic-core-refactor to use as central point for common
CSS work

- Manually migrated changes from vue-toolbar, expect conflicts there and
 in vue-layout;

* Manually update constants-snow from vue-toolbar branch

* Update markup to use latest button classnames

- c-menu-button > c-button--menu;
- c-icon-button > c-click-icon;

* Various from vue-conductor-style

- Mods to input styling;
- Input[] styles moved to _controls;
- New/revised constants vals;

* Resolve bizarre merge conflict when applying stash

* Code cleanup

* Alias and type-icon fixes

- More robust approach to alias indicators;
- Added alias indication to tree-item.vue;
- TODO: wire up alias indication tree-item.vue;

* Accessibility mods, convert elements to <button>

- Better reset styles for htmlInputReset mixin to allow use of <button>
without browser default styling;
- Create button;
- BrowseBar action buttons;
- c-click-icons;
- Removed Preview button from BrowseBar.vue;

* Fix styles that were affected during resolving conflicts

* Moved draggable into __label element rather than whole <li>

* Change the priority to 100 to get the view working properly

* Code cleanup

* Remove angular layout

* Display the object name in the frame header

* Tweaks to __header in LayoutFrame

- Name now does not overflow frame edge;
- Layout strategy now in parity with similar elements in main view;

* Remove test()

* Add a type for display layout to make it appear in the Create menu.

* Change the key type to 'layout'

* Clean up code and hide toolbar

* Enable toolbar, and revert changes in webpack config

* Remove commented code

* revert to the original code
2018-10-04 15:59:23 -07:00
afca6cd2e9 Review and merge latest topic-core-css (#2183)
* New branch from topic-core-refactor to use as central point for common
CSS work

- Manually migrated changes from vue-toolbar, expect conflicts there and
 in vue-layout;

* Manually update constants-snow from vue-toolbar branch

* Update markup to use latest button classnames

- c-menu-button > c-button--menu;
- c-icon-button > c-click-icon;

* Various from vue-conductor-style

- Mods to input styling;
- Input[] styles moved to _controls;
- New/revised constants vals;

* Resolve bizarre merge conflict when applying stash

* Code cleanup

* Alias and type-icon fixes

- More robust approach to alias indicators;
- Added alias indication to tree-item.vue;
- TODO: wire up alias indication tree-item.vue;

* Accessibility mods, convert elements to <button>

- Better reset styles for htmlInputReset mixin to allow use of <button>
without browser default styling;
- Create button;
- BrowseBar action buttons;
- c-click-icons;
- Removed Preview button from BrowseBar.vue;

* Add copyright to .scss files; code cleanup

* Improved click area and draggable styling for tree-item

* Removed injection of domainObject

* Removed injection of domainObject

* Remove _constants-mobile.scss

- Moved used var to _constants;
- Normalize mobile detection approach in Layout.vue;

* Mobile styling for Time Conductor

- WIP!

* Mobile styling for Time Conductor

- New modalFullScreen mixin;
- Datepicker now a fullscreen modal element in body.phone;
2018-10-04 14:47:12 -07:00
3c324cbea0 Initial implementation of Edit mode (#2181)
* Adding edit mode API and buttons

* Select navigated object by default. Enable table configuration in edit mode.

* Fixed issue with Table configuration

* Removed debugging code

* Added basic documentation to Editor API

* use selectable, table is selection[0], inspector cleans up

Update browse to set selection using openmct.selection.selectable
on navation so that selection contexts can be determined correctly.

Update table configuration to reference the first item in selection
instead of the last item in selection when displaying.

Update inspector code to remove display node from document on destroy.

* properly remove capturing handler

* inspector views respond to editing

InspectorViews respond to editing instead of openmct rerendering
the inspector on edit.
2018-10-04 12:35:03 -07:00
e9643ad07f Added brief readmes for all plugins. (#2184) 2018-10-03 18:55:27 -07:00
56b9708ab7 Review and integrate Time Conductor Vue style conversion (#2180)
Styling updates for Vue version of Time Conductor
2018-10-02 17:31:45 -07:00
e6e5b6a64a remove angular list/folder view 2018-10-01 11:42:12 -07:00
58da916d18 remove arrow function from data 2018-09-28 10:10:38 -07:00
a0327b56aa remove unused/empty update lifecycle method from layout.vue 2018-09-28 10:05:26 -07:00
57d60128a2 fix not-showing of conductor caused by merge with topic-core-refactor 2018-09-27 14:59:26 -07:00
987740c649 Reimplementation of time conductor in Vue.js (#2173)
* Refactoring conductor to use Vue

* Conditionally render Time Conductor

* Created ConductorOptions SFC

* Copyright notice examples

* Added time system selector component

* Use capture for event bubbling with popups

* Added Conductor Axis. Simplified Axis formatting and removed scale formatting from formatters. Added date picker.

* Sync axis on zoom

* Fixed sync between conductor and axis

* Changed 'InspectorComponent' to 'ConductorComponent' in Layout. Fixed race condition with panning and RequestAnimationFrame

* Renamed properties in conductor to clarify their role. Fixed some bugs

* Removed old conductor

* Fix layout issue with legacy Conductor markup

* Added missing copyright notice
2018-09-26 15:41:04 -07:00
944505a5f1 Folder views refactor (#2171)
Folder views rewritten in Vue.js
2018-09-26 23:34:44 +01:00
c5187d8509 Sort views by priority (#2174) 2018-09-26 12:32:48 -07:00
c7b73bdc3f Table fixes
- Fixed sorting and filtering on non-string columns
- Fixed warnings about missing required prop and invalid default value in table rows
- Fixed error occuring when formatting non-existent column
2018-09-25 11:40:50 -07:00
7483e886f1 Fix layout issues with overflow, shrinking, etc.
- Tree, main area, header, browse-bar
2018-09-18 15:01:09 -07:00
ef92da4d9d Custom search input component integrated (#2170)
- Integrated into main layout already; added to table.vue and
Notebook;
2018-09-17 16:06:46 -07:00
80b02672a6 Fix new ObjectView
- Removed empty <div> in template;
- Added display: contents to container div;
2018-09-17 11:45:56 -07:00
fbf1c68c7a Notebook vue styling (#2169)
* Notebook styling WIP

- New notebook scss file;
- notebook.html converted;

* Notebook styling WIP

- Entries and embeds
- New discreteItem theme constants;

* Notebook styling shippable

- Notebook entries and embeds finished;
- TODO: Fix styling for c-input-inline when SCSS is merged and remove
s-input-inline class in entry.html;

* Notebook styling shippable

- Remove legacy Notebook styles;
- Painterro overrides;
- Code cleanup

* Notebook mobile styling; entry layout still WIP

- Entries now layout better in narrow containers but still WIP,
particularly for delete icon;
- Mobile styling;

* Notebook entry markup for better narrow Notebook layout
2018-09-17 11:02:38 -07:00
5eac6e646b ObjectView supports reuse and props
Update ObjectView to better support reuse in layout and preview.

Register as component, and then mount like so:
<object-view :object="domainObject"></object-view>

It will show the default view for that object.  If you want to
specify a specific view type, you can pass an optional "view" prop
which will specify the view key to load.
2018-09-14 10:50:19 -07:00
82e5bf2325 remove unnecessary container 2018-09-13 18:44:51 -07:00
40b7117987 Object views (#2165)
* Use new style view providers for all object views.

* support legacy views with deprecation warning

* tidy deprecation warnings
2018-09-13 18:37:20 -07:00
07ca60e13a Dynamically generate create menu items (#2163)
* dynamically generate create menu items, populate before mount

* make reviewer requested changes:
1.Use type.get to get type definition
2.Fix type adapter for creatable properties
3.populate menu items in data function, and inject openmct

* use simpler data name (item) and remove prefix string from key
2018-09-13 15:15:01 -07:00
08cd6b1d99 Vue Browse Bar (#2164)
* Object browse bar IN PROGRESS

* Object browse bar VERY WIP

* Object browse bar WIP

- view-control renamed to disclosure-triangle;
- Good progress on object browse bar elements;

* Object browse bar WIP

- Layout of start-side elements now working with ellipsis;
- TODO: cleanups and consolidation;

* Object browse bar shippable

- Better layout approach;
- Refinements to button classes;

* Sanding and shimming on misc styles

- Tree icon shrinkage fixed;
- c-icon-button much better relative sizing;
- Removed c-button-set wrapper from Layout.vue;
- Added uppercasing of Create button for Snow theme;

* working object name, css class

* working dynamic name, css classes and view switcher
2018-09-13 15:14:28 -07:00
78ae7b334c Copyright notice examples 2018-09-13 14:19:55 -07:00
3a28caac06 Notebook Vue Version (#2160)
* working entries... wip

* componentize entries

* embed ability with drag into entry

* snapshot action partial

* working search

* abstract EntryController, working search, drag and drop

* keep deleteEntry local to entryController

* working snapshotOverlay

* fix snapshot object

* abstract Embed Controller, working context menu, working remove embed

* working preview action in embed context menu

* add overlay header with timestamp

* working annotate and new entry contextual

* Remove old notebook

* use same key, remove extra style files

* working embeds

* fixed markup for snapshot overlay
2018-09-12 15:27:19 -07:00
c883bbe6c2 Vue tables followup work. (#2162)
- Allow 'editable' property on view providers to optionally be a function
 - CSVExporter now only exports visible columns. Updated CSVExporter to ES6 exports / imports
 - Shortcut sortedIndex in insert if value is outside of first or last value in collection
 - Added table view icon
2018-09-11 11:03:32 -07:00
eaa971cb56 Vue main section overhaul (#2161)
* Separate browse object from conductor

* Main layout convert to flex; padding and overflow at leaf node

* Inspector converted to BEM - WIP

 - Properties pool upper level styles converted;
 - Grid mixins moved out of Inspector and into _mixins;

* Refinements to misc elements

- user-select: none on tree;
- :before and :after reset globally to use box-sizing: border-box;
- li reset globally;

* Styling for buttons and menus; add Create button

 - WIP

* Context and Create menus

 - WIP

* Add glyph backgrounds as data URIs

- For Create menu, items grid;
- Objects only;

* Create menu refinements

- Min/max height handling;
- Code cleanup;

* Main layout head styling; various sanding

- head layout refined;
- c-icon-button, c-button-set added;
- background glyph mixin refined;
- Antialiasing refined to increase icon sharpness;

* Fix SVG data URLs: encode # chars as %23
2018-09-11 10:10:59 -07:00
0301d88033 [Table] style refactor (#2157)
* [Table] Use Vue SFCs

Use Vue SFCs.  Use inject/provide to pass services to components
instead of wrapping components in closures.

* Convert CSS to BEM  - WIP!

- All in progress;
- Headers table divorced from old;
- Sizing working properly at this point;

* Reset legacy file, undo unintended change commit

* Convert CSS to BEM  - WIP!

- All in progress;
- Sizing table divorced from legacy;

* Convert CSS to BEM  - WIP!

- All in progress;
- Table body divorced from legacy;

* Convert CSS to BEM  - WIP!

- Near done, converted tabular-holder from legacy;
- Unit testing in main view and in Layout frames;
- Modded legacy CSS to properly hide control-bar with new naming
when in Layout frame;

* Convert CSS to BEM - done

- Cleanup and organization;

* Convert CSS to BEM

- Further code cleanup;

* Convert CSS to BEM

- Further code cleanup;
- Remove legacy table style imports;
2018-09-05 15:05:40 -07:00
e2e0cf17db Splitter refinement
- Arrow icons;
- Code cleanup;
2018-09-05 13:29:14 -07:00
01a39f4fb7 [Inspector] More vue
commit 9b735b4f70bf4d21f64a1e418a5f9d7342567104
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Aug 31 16:31:48 2018 -0700

    Slight HTML tweak

commit 3e58e140f9ea3640e5551d5f43abf837610c6fb4
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Aug 31 16:26:36 2018 -0700

    [Inspector] Wire up elements pool

    Elements pool wired up to show angular elements pool.

commit d9c60f31bd6d32a5d2e2227d5476edd81e2e4360
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Aug 31 13:56:04 2018 -0700

    [Inspector] vue inspector

    Create a vue inspctor which responds to selection events and shows
    object properties and inspector views.
2018-08-31 16:34:03 -07:00
ca16892237 [cleanup] remove npm lodash (#2155)
remove npm lodash and unused scripts directory.  Removes usage of
lodash 3.10 in node files.
2018-08-31 12:04:16 -07:00
1bb1330cba Squashed commit of the following:
commit 5aad2e6863
Author: charlesh88 <charlesh88@gmail.com>
Date:   Thu Aug 30 14:34:44 2018 -0700

    Code trimming / cleanup

    - pane tweaks;

commit 139e5ab184
Author: charlesh88 <charlesh88@gmail.com>
Date:   Thu Aug 30 13:50:26 2018 -0700

    Code trimming / cleanup

    - pane tweaks;

commit e3bb387139
Author: charlesh88 <charlesh88@gmail.com>
Date:   Thu Aug 30 13:38:35 2018 -0700

    Code trimming / cleanup

    - pane, Layout;

commit 6edaea0889
Author: charlesh88 <charlesh88@gmail.com>
Date:   Thu Aug 30 12:57:21 2018 -0700

    Collapse button new design and styling WIP

    - Also begin code cleanups;

commit bd8fab3726
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 29 18:04:47 2018 -0700

    Vertical pane resizing fixed

    - Vertical pane styling with significant fixes;

commit cf89e8a86f
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 29 16:52:53 2018 -0700

    Vertical pane resizing fixed

    - Vertical pane styling with significant fixes;

commit b3ad4c4c14
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 29 15:58:12 2018 -0700

    Vertical pane resizing fixed! Kind of...

    - pane__contents at 100% height is causing problems, fix this.
    - Normalized scss var names $splitterBtn*;
    - Added --reacts to pane to allow setting of proper flex attribs;

commit 49cead8cc6
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 28 19:07:23 2018 -0700

    WIP fixing vertical pane drag problem, still broken

    - Converting from flex-basis back to width / height;
    - Make inspector-adapter target proper holder;
    - Added --resizing class to allow user-select: none while dragging;
    - Added mixins for browser prefixing;

commit c6ff381cf0
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 28 14:56:50 2018 -0700

    New design for pane collapse buttons

    - Pane padding normalized;

commit 7cfbfe3d96
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 28 10:27:05 2018 -0700

    CSS sanding, panes and Inspector

    - Pane padding;
    - Inspector min-width;

commit 7d7eeff462
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 28 10:01:02 2018 -0700

    Pane transitions

    - Fixed pane transitions;

commit cf160c27e9
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 28 09:09:49 2018 -0700

    Splitter styling WIP

    - Hover styling

commit 022126ca21
Author: charlesh88 <charlesh88@gmail.com>
Date:   Mon Aug 27 21:18:14 2018 -0700

    Tree styling WIP

    - Mobile styling;
    - Increased hit area for desktop and mobile on tree item;
    - Added button mixin;
    - Fixed scrolling for tree in tree pane;

commit 3f1e649526
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 24 14:47:22 2018 -0700

    Drag collapse WIP

commit f9b764bb64
Author: charlesh88 <charlesh88@gmail.com>
Date:   Thu Aug 23 16:02:02 2018 -0700

    Significant changes to splitter handle and button approach

    - WIP!;
    - WIP on drag to collapse;

commit a1d9c11e82
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 22 17:55:21 2018 -0700

    Pane refactor styles WIP

    - WIP converting from width/height to flex-basis;

commit b65cca277e
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 22 17:54:34 2018 -0700

    Pane refactor styles WIP

    - WIP converting from width/height to flex-basis;

commit 3e71204529
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 22 17:51:07 2018 -0700

    Pane refactor styles WIP

    - Pane transitions;
    - TODO: convert from width/height to flex-basis;

commit b070cc27f4
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 22 10:21:14 2018 -0700

    Mobile styles WIP

    - Mobile layout mostly done;
    - Pane transitions;

commit 2ee7a77a86
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 21 15:56:12 2018 -0700

    Refinements to view control in tree

    - Changed state eval to use 'enabled', removed v-if;

commit 3a2439cd16
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 21 15:53:34 2018 -0700

    Mobile styles, VERY WIP

    WARNING: DON'T PULL!!
    - Mobile in progress;

commit 4e0dcb68bf
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 21 11:45:22 2018 -0700

    Markup / scss refactor mobile styles WIP

    - Layout, panes mobile styling WIP

commit 02afd44dd1
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 21 11:44:05 2018 -0700

    Markup / scss refactor styles WIP

    - Moved glyph constants into _constants to avoid multiple loads of
    glyph classes;

commit 703abe36c9
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Mon Aug 20 13:20:58 2018 -0700

    tree loads composition

    Expose legacy types in new API

    tree navigation

commit 80a185440b
Merge: 93196379a 8378dfa61
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 17 18:00:04 2018 -0700

    Merge branch 'core-vue-bootstrap' of https://github.com/nasa/openmct into core-vue-bootstrap

commit 93196379aa
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 17 17:59:43 2018 -0700

    Pane padding WIP

    - Adding resize handle direction to l-pane element;

commit bea135a221
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 17 17:48:20 2018 -0700

    Inspector styling

    - Moved legacy CSS as needed into MctInspector component;

commit 8378dfa613
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Aug 17 17:31:12 2018 -0700

    Recursive tree items

commit e4420c17c6
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 17 17:02:20 2018 -0700

    Sanding and shimming on legacy CSS

    - Jury-rigging to temporarily display some views: imagery, tables
    - Code style normalization in _global.scss;

commit 5aa2be9761
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 17 16:22:54 2018 -0700

    Bring in legacy CSS

    - Legacy styles from old _global.scss moved into section of new
    _global file;
    - Most UI elements are working
    - TODO: fix Inspector grid

commit 8d4734ef5b
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 17 15:17:22 2018 -0700

    Remove commented CSS

commit e641aa6949
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 17 14:37:13 2018 -0700

    Main container and scroll-bar styling

commit c3262de1b7
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 17 14:14:01 2018 -0700

    Add status bar

commit 8addfb886e
Merge: e6be02fb8 4203dbf8e
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 17 13:52:11 2018 -0700

    Merge branch 'core-vue-bootstrap' of https://github.com/nasa/openmct into core-vue-bootstrap

commit e6be02fb8d
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 17 13:51:53 2018 -0700

    Splitter refinements / mixin fix

    - Splitter with resize grippy;
    - Fixed @background-image mixins;

commit 4203dbf8e1
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Aug 17 13:46:38 2018 -0700

    Replace angular route with custom router

commit 5a07f0d2b5
Merge: e6b22cbcb 63f22c3f2
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 17 09:39:45 2018 -0700

    Merge branch 'core-vue-bootstrap' of https://github.com/nasa/openmct into core-vue-bootstrap

commit e6b22cbcbe
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 17 09:39:33 2018 -0700

    Markup / scss refactor WIP

    - Significant reorg of splitter CSS to reduce specificity;
    - Splitter enhancements for collapsed state;

commit 63f22c3f21
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Aug 17 09:32:29 2018 -0700

    remove extraneous files

commit 17cf0cf1e6
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Thu Aug 16 12:43:10 2018 -0700

    Render main and inspector using angular

commit 233c17e75b
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 15 18:05:44 2018 -0700

    Markup / scss refactor WIP

    - Scroll on tree;
    - Class renaming pane > l-pane;
    - Refinements to collapsed state, WIP

commit 1eaa568e04
Merge: 82dd8e22e 3957fd619
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 15 17:28:45 2018 -0700

    Markup / scss refactor WIP

    - Merge latest from Pete

commit 82dd8e22e7
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 15 17:26:45 2018 -0700

    Markup / scss refactor WIP

    - Inspector styling - very WIP!

commit 3957fd619a
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Aug 15 16:47:48 2018 -0700

    Tidy pane js

commit 91eefbfa7b
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Aug 15 16:44:02 2018 -0700

    Pane cleanup

commit 5deff887fc
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 15 16:25:35 2018 -0700

    Markup / scss refactor WIP

    - Added disabled property to viewControl;
    - Margin for elements in main panes;
    - Main search input styled for --major;

commit 6708c79754
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 15 14:34:54 2018 -0700

    Markup / scss refactor WIP

    - Fix modifiers to correctly use '--';
    - Fix icon element in search input to disallow shrinking;

commit 7c83db11ad
Merge: e24852bb8 43f978e18
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 15 13:58:43 2018 -0700

    Merge branch 'core-vue-bootstrap' of https://github.com/nasa/openmct into core-vue-bootstrap

commit e24852bb83
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 15 13:57:27 2018 -0700

    Markup / scss refactor WIP

    - Tree item styling

commit 43f978e185
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Aug 15 13:52:34 2018 -0700

    Use multipane instead of splitter

commit f67f03af47
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Aug 15 12:43:32 2018 -0700

    new multipane

commit f6b90caaff
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 15 10:41:46 2018 -0700

    Markup / scss refactor WIP

    - Added view-control component

commit 4c5baf183a
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 15 10:38:26 2018 -0700

    Markup / scss refactor WIP

    - Added sass-base.scss to make it easier for SFC's to
    include needed SASS vars, mixins, etc. with a single import;
    - Cleaned up indention in Layout.vue;

commit b2d12f95ee
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 14 23:24:45 2018 -0700

    Markup / scss refactor WIP

    - Fix transition of magnify glass icon

commit 4449994ca4
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 14 17:31:47 2018 -0700

    Markup / scss refactor WIP

    - Added code comments

commit 84fde4bd34
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 14 17:29:50 2018 -0700

    Markup / scss refactor WIP

    - Search input dynamic behavior

commit 9424f9f49e
Author: charlesh88 <charlesh88@gmail.com>
Date:   Tue Aug 14 11:28:25 2018 -0700

    Markup / scss refactor WIP

    - Search input styling and dynamics WIP;

commit dfc02cdf25
Author: charlesh88 <charlesh88@gmail.com>
Date:   Mon Aug 13 15:34:29 2018 -0700

    Markup / scss refactor WIP

    - Add input-related styling;
    - Cleanup scss in various files;
    - Move search into own component;
    - Refine padding approach in pane-tree;

commit 94a3e9e798
Author: charlesh88 <charlesh88@gmail.com>
Date:   Mon Aug 13 14:36:41 2018 -0700

    Markup / scss refactor WIP

    - Add collapse buttons to splitter;

commit d35aed2d62
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 10 18:45:37 2018 -0700

    Markup / scss refactor WIP

    - Add some initial theme files; pull back from theme "override"
    approach;
    - Splitters refined;
    - Style cleanups;

commit 32cdecebce
Author: charlesh88 <charlesh88@gmail.com>
Date:   Fri Aug 10 14:53:16 2018 -0700

    Markup / scss refactor WIP

    - Markup and components corrected;
    - Stubbed in snow theme file;

commit f811318d18
Author: charlesh88 <charlesh88@gmail.com>
Date:   Thu Aug 9 16:02:22 2018 -0700

    Markup / scss refactor WIP

    - Add normalize.min to styles-new;
    - Factor components to be more standalone, very WIP;

commit 4d9b7fe3e4
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 8 18:06:11 2018 -0700

    Markup / scss refactor WIP

    - Add timestamp to webpack build

commit dd93653306
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 8 18:03:00 2018 -0700

    Markup / scss refactor WIP

    - Use MctTree component with passed properties;
    - MctTree markup and CSS ported from codepen;

commit 84430d34b1
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 8 17:39:26 2018 -0700

    Markup / scss refactor WIP

    - Add new splitter component with passed properties;

commit 50be483421
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 8 16:04:41 2018 -0700

    Markup / scss refactor WIP

    - Mixins file added;
    - Markup and -shell CSS from codepen brought over;

commit fe2667285e
Merge: c7bd7d97d 5219f5394
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 8 15:15:21 2018 -0700

    Merge branch 'core-vue-bootstrap' of https://github.com/nasa/openmct into core-vue-bootstrap

commit 5219f5394e
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Aug 8 15:13:28 2018 -0700

    Add alias for styles directory

commit c7bd7d97dc
Merge: 0a7c16031 ab18bb348
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 8 13:55:44 2018 -0700

    Merge branch 'core-vue-bootstrap' of https://github.com/nasa/openmct into core-vue-bootstrap

commit ab18bb3484
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Aug 8 13:48:27 2018 -0700

    Revert "temporarily use file loader for live-reload via plugin"

    This reverts commit 2f54f404c2.

commit 9c0d5f7dbf
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Aug 8 13:48:17 2018 -0700

    Enable HMR in dev server

commit 0a7c160315
Author: charlesh88 <charlesh88@gmail.com>
Date:   Wed Aug 8 11:26:03 2018 -0700

    Markup / scss refactor WIP

    - Symbol fonts and glyphs files;
    - Constants, global, etc. in progress;

commit 0fa09e31a6
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Aug 8 10:30:11 2018 -0700

    WIP new styles

commit 2f54f404c2
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Aug 8 10:29:23 2018 -0700

    temporarily use file loader for live-reload via plugin

commit 279e0bf29d
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Tue Aug 7 14:59:04 2018 -0700

    Beginning of new layout code.

    Really basic 5 component setup.
2018-08-31 12:03:15 -07:00
78c731dbf7 Reimplementation of tables in Vue (#2154)
* Reimplemented tables in Vue

* Updated table configuration to remove table namespace, and support column width in future.

* Fixed table configuration persistence

* Updated vue tables to use ES6 style function notation
2018-08-31 11:54:46 -07:00
a2b0d350d8 Merge pull request #2151 from nasa/update-d3-deps
Updated d3 dependency paths
2018-08-27 13:17:19 -07:00
534bdbae50 Updated d3 dependency paths 2018-08-27 10:19:39 -07:00
831873e7de Updated README to remove misleading references to instabilities in API. (#2150) 2018-08-21 10:38:12 -07:00
622d246fdd Merge pull request #2129 from nasa/fixed-position-2125
[Fixed Position] Cannot add on objects when creating Fixed Position for the first time
2018-08-10 10:58:05 -07:00
4a1ca9f299 Remove stray characters 2018-08-10 10:10:15 -07:00
4e1de2678c Merge pull request #2134 from nasa/tables-2132
Change table row layout to use flex fixes #2132
2018-08-10 10:07:34 -07:00
33a4792531 do not show warning dialog when user moves an object from one location to another (#2142)
* dont show error dialog when user moves an object from one location to another

* add test for not showing blocking message on remove action

Fixes #2141
2018-08-10 10:06:40 -07:00
37dd4856a6 Merge pull request #2145 from nasa/import-export-links
Fixes Import / Export to work correctly with links and contained objects.
2018-08-10 10:05:28 -07:00
6a9cf3389d Fixes #2144. Identifiers for objects and links now exported as identifier objects.
Use keystring as map key on import. Also removed redundant step to re-add imported objects to parent composition.
2018-08-10 07:09:59 -07:00
0d53898af9 Build refactor to webpack (#2139)
* Move to webpack build
* Use webpack for building openmct.  Move SCSS to one folder and load
all core css up front.  Remove bower, begin removing gulp in favor
of npm run.
* Uses eslint instead of jshint and jscs.  Merge style checking rules
into .eshintrc.js, carrying over core parts of crockford style and
our adaptations.  Current code base fails to pass the linter, want
to separate linter changes from fixes to linting rules.
* Support for Vue SFC with example
* Remove outdated examples
* Use HTML loader for html (supports relative imports of resources e.g.
images) and raw-loader for when javascript must be loaded as text.
2018-08-07 14:47:50 -07:00
9582fb2b06 Merge pull request #2137 from nasa/prevent-plot-accidental-remove
[Plot] Update formDomainObject on mutate
2018-07-31 12:44:51 -07:00
3c075b7ff2 [Plot] pass persisted config in constructor
When a plot series is constructed, it checks to see if should set a
default interpolation based on the persisted configuration.  However,
the persisted configuration wasn't available until after construction
which resulted in the default value always being set.

Pass the persisted configuration through the constructor to ensure the
plot series can make the right decision about defaults.

Fixes #2120.
2018-07-31 12:33:10 -07:00
081edfbd70 Merge pull request #2127 from nasa/plot-requests-2126
[Plot] Prevent duplicate query on bounds change
2018-07-31 12:32:57 -07:00
04cc8f7aa2 [Plot] Update formDomainObject on mutate
When a new series is added to a plot, a plot series form controller
is instantiated and passed in a domain object via scope that it will
mutate upon changes.  If a mutation results in a composition add, then
the plot series form controller needs to get a version of the domain
object with the updated composition array, which it was not previously
doing.

This fixes #2120.
2018-07-31 12:03:49 -07:00
2da2395473 Change table row layout to use flex
Fixes #2132
- flex styles applied;
- CSS reorganized for better DRY;
- Set height on <tr> so that <td>'s won't collapse when
all cells of a row have empty values. This can occur when columns are
hidden in a Telemetry Table.
2018-07-27 18:04:06 -07:00
a1d206bfc3 [Remove] Add confirmation dialog (#1870)
* [Remove] Added confirmation dialog before the remove action is performed

Addresses #563
2018-07-27 13:54:41 -07:00
00ecd27bb3 fixes #2130
fix lingering event listener that was caused by function (setSelection) being stored in two different locations, causing pointer mis match
2018-07-26 12:21:10 -07:00
0fa4486dcf force a click on the fixed position element after initialize to initialise Fixed Position controller on the selection API 2018-07-25 16:31:31 -07:00
ef9c6d5fed [Plot] Prevent duplicate query on bounds change
Bounds change triggers a clearing of plot history, which triggers
a user interaction change, which was triggering a second query.

This change sets a flag to prevent the requery from the user interaction on
bounds change.  This flag could potentially be reused elsewhere, e.g. if we
wanted to prevent requery when not utilizing a minmax data source.

fixes #2126
2018-07-25 11:44:14 -07:00
15a75ac134 [Table] prevent forced reflow on scroll (#2117)
Prevent forcing a reflow during scroll events, improving scroll
performance.
2018-07-20 16:49:52 -07:00
cde3994979 [CI] Update circleCI to v2 (#1942)
* initial v2 config

t # This is a combination of 10 commits.

fix indent errs

fix indentations

run prepare manually

run prepare manually

remove indent

remove indent

remove indent

remove indent

remove indent

Misc

fix npm prepare

Install gulp

use gulp locally

use checkout

use old job

use old job

build-<test

build-<test

change

change

change

change

change

* add gulp as devdep

* local npm commands

* use node8

* cache bower components

* use npm to run checkstyle

* remove circlev1 config

* store artifacts

* clean up naming

fixes #1933
2018-07-20 16:00:13 -07:00
1a10c966e0 deprecated timeline (#2119)
* first release of deprecated timeline

* Better deprecation message and use unknown icon class

* Update deprecated-timeline-message.html

Added a period to end of sentence.

* remove unused files, and commented code - If we need timeline again we can recover from git

* Provide link to tracker in deprecation message
2018-07-20 15:45:30 -07:00
9288880e47 Add and Remove corresponding classes to capture higher contrast/print friendly png and jpg exports (#2088)
* add and remove corrensponding class to capture better images (wip)

* pass class through exportAsPng and exportAsJpg directly

* pass classname from stacked plots into exportImageService

* Adding additional export styles

Fixes #2088
- WIP

* WIP export styles

Fixes #2080
- Styling WIP;
- Moved styles into plots-main.scss;
- Change to how plot hashes are rendered;

* add class before clone, because adding it on clone was not rendering new css styles

* Export styles

Fixes #2080
- Code indenting cleaned up;
- Additional styles for export;
- Added hide effects for .h-local-controls and unsynced state;

* Apply class to cloned element only
2018-07-20 15:17:10 -07:00
d2c5476cdd [Plot] Update limit variable name (#2124)
Update limit variable name in template so that styles are properly
applied when hovering over plot.  Fixes #2084.
2018-07-20 14:40:29 -07:00
8d21d420ae Plot composition re-ordering support (#2120)
* [Plot] Allow 0 in plot y axis bounds

Allow 0 values in plot y axis bounds.  Also properly re-do validation
when changing from a bad value to the previously used good value.

Fixes https://github.com/nasa/openmct/issues/2082

* [Plot] separate config index from composition index

Locate the configuration index by checking identifiers instead of
relying on order of composition to match order of configuration.

Ensures that editing a plot after reordering composition does not
edit wrong object.

Fixes https://github.com/nasa/openmct/issues/2101

* [Plot] refactor form controllers, separate concerns

Refactor form controllers to simplify the plot options inspector.

Individual plot models each have a form controller which handles
three way binding between the scope, model, and domain object configuration.

Added support to linkFields for dynamic object paths so that mutations
always find the right object in the configuration instead of breaking
when indices change.

* support deferred init for sub-object selection

* Style fixes

* Remove assignment to window
2018-07-20 14:14:01 -07:00
cc22fd4e9d Broaden selector to handle wrapped links/buttons (#2118)
Fixes #2116
- When buttons or links with icons are wrapped,
let the styling set margin and size properly;
2018-07-17 17:07:42 -07:00
4a046b3eea Adapter consolidation & fix incorrect export to window (#2114)
* Merge adapter bundles

Merge adapter bundles into consistent location.

Update telemetry API to not incorrectly expose the format service
on window.

* openmct available on window for developers

* remove offending comma
2018-07-17 13:57:38 -07:00
b0702ceff5 [Table] Check alarms for all values (#2115)
Check alarm status for all values, not just ranges.  This allows
limit evaluators to apply styling to additional columns if
desired by developers.
2018-07-17 13:55:35 -07:00
5af14cd3b9 [Notebook] Snapshot overlay - fixes issues #2098 #2102 #2108 #2110 (#2113)
* snapshot - when taking a snapshot of overlay, select object-holder vs the entire overlay. This fixes plots not being captured

* remove new Notebook entry from context menu - fixes issue #2098

* add licence information for Painterro - fixes issue #2108

* add watch for defaultSort - fixes issue 2102

* dont allow snapshot action from imagery

* fix checkstyle error
2018-07-17 11:30:01 -07:00
d7eb4c17ca Added div element to force horz scroll in table body (#2111)
Fixes #2103
- Added div that is set to the calculated table width. When
filtering is such that no rows are present in the tbody
of the table, this element will still force a horizontal
scroll in that area, allowing the user to horz scroll the headers;
2018-07-16 15:25:02 -07:00
8c9fe2d36b [Tables] Address performance issues observed in testathon (#2112)
* Use datum key of 'utc' for timestamp

* Do not try to get column values for data that does not have those values

* Collapse current time system columns

* Noop parsing for numbers in LocalTimeFormat

* Do not attempt to provide data for columns that object does not have telemetry for. Fixes #2027
2018-07-16 15:23:34 -07:00
3246480f82 Indicators api (#1837)
* [API] Added Indicators API

* [Indicators] Converted Follow Indicator to new Indicators API

* [Indicators] Converted URL Indicator to new Indicators API

* [Indicators] Changes to some legacy indicators for compatibility with new Indicators API

* [Indicators] Addressed code review items from https://github.com/nasa/openmct/pull/1837

* Updated tests for URL Indicator

* Adding Indicator API spec

* Address linting issues

* Switched to direct DOM manipulation rather than template compilation to avoid an unnecessary extra holder element

* Updated documentation to reflect changes to API

* Indicators api styling (#2076)

Updated styling for Indicators

* Update API TOC

* Fix color of items w-mct-example areas of Style Guide

Fixes #1837

* Status class refactoring and cleanups

Fixes #1837
- Significant cleanups and name refactoring to allow more
concise selector definitions, with changes in js, html and scss files;
- Updates in Style Guide > Status page, with some content
reorganization and clarification;

* Corrected out of date API

* de-zeptoed Indicator API test spec

* Remove promise from URLIndicator

* Separated legacy indicators support

* Updated Indicator specs to Jasmine 3

* Fixed checkstyle and lint issues

* Moved legacy indicators support to adapter folder

* Various fixes for Indicators

Fixes #1837
- Added SASS constants for Indicator colors;
- Removed commented code;
- Removed unused indicator classes from _messages.scss
- Fixed missing s-status-on class;

* Significant revisions to Style Guide Indicators content

Fixes #1837
- Better documentation including recommendations;
- Better and more concrete examples;

* Style Guide example tweaks

Fixes #1837

* Refinement to Style Guide Status and Limits content

Fixes #1837
- More detail and clarification on Status and Limits;

* Cleanup code

Fixes #1837
- Remove commented styles;
- Line return refinements;
2018-07-16 15:21:38 -07:00
8055e050b6 Merge pull request #2109 from nasa/snapshot-2105
Fix for table overflow problem in html2canvas
2018-07-03 17:24:02 -07:00
b0f73fff0d Add overflow: auto when snapshotting table for Notebook
Fixes #2105
2018-07-03 16:57:26 -07:00
755cf21d3f Local control tweaks
Fixes #2094
- Adjust timing;
- Added hover effects for .s-notebook-entry;
2018-07-03 14:33:35 -07:00
95457a1981 View control fixes
Fixes #2094
- Add position: relative to .view-control main class;
- Add correct classes to markup;
- Fix Sum Widget field size while I was in there;
2018-07-03 14:25:39 -07:00
da0ed95662 Merge pull request #2097 from nasa/matching-historical-states
use correct duration for historical states
2018-07-03 12:47:15 -07:00
c8919708bb Fixes for main search input (#2106)
* Fix for input width

* Margin added to right of c-search-btn-wrapper element

Fixes #2094
2018-07-03 12:36:24 -07:00
cc5bfda730 use correct duration for historical states 2018-07-02 14:18:29 -07:00
433dee0314 Update test specs to use Jasmine 3 (#2089)
* Updated Karma and Jasmine versions

* Added DOMObserver class. Supports promise-based testing of DOM changes

Update asynchronous test specs to use promises or done() instead of waitsFor/runs

* Modified ActionCapability to duplicate context object properties as own properties for better object equality comparisons

* Global find + replace to fix syntax issues

* Fixed various issues caused by non-deterministic runtime order of tests in Jasmine 3. Fixed issues caused by changes to determination of object equality

* Addressed review comments

* Resolved merge conflicts with master

* Fixed style errors

* Use spy.calls.count() instead of manually tracking
2018-06-29 17:32:59 -07:00
013eba744d Basic sprintf support (#1965)
Implement optional format strings for valueMetadata which allows
developers to use c-style sprintf formatters as desired. Fixes #1562
2018-06-29 15:52:15 -07:00
29de11167f Merge pull request #2026 from nasa/plot-bug-hunt
[plot] misc bug fixes - Fixes Issues #2025, #2024, #2014
2018-06-29 13:23:31 -07:00
eaa9514453 Object has no children fix (#2038)
* Added files for PR 1904

* Added new lines

* space fix

* Implemented changes

* Space fix

* checkstyle fix

Fixes #1826
2018-06-29 11:57:45 -07:00
b8f278cabf [Tables] - Sticky headers (#2071)
* first revision

* [Frontend] Styling for sticky table headers

Fixes #1481
- WIP convert mct-table layout to use flex;
- TODO: fix flex layout when a small number of rows;
- Rename CSS classes used as selectors by JS;

* remove header height from calculations since it is outside in its own table now

* [Frontend] Styling for sticky table headers

Fixes #1481
- Fixed flex layout when a small number of rows;
- Refined input padding and dropshadow for more compactness;

* fix tests and verify tables works properly in layout and large view

* add mct-scroll to header table to allow scrolling in sync with the rest of mct-table

* Various fixes and polishing

Fixes #2071
- Fix headers height issue;
- Move inline styles to classes;
- First round fix for horz overflow due to scrollbar problem;

* WIP horz overflow

Fixes #2071
- Commented out CSS-based scrollbar with approach in
anticipation of better JS solution;

* Horz overflow/scrollbar problem fixed

Fixes #2071
- Added calcTableWidthPx to allow sizing-table to subtract
width of scrollbar;

* Remove commented code

* add clear icon back into filter text boxes

* Polishing on sticky table headers filtering

Fixes #1481
Fixes #2071
- Now hides the magnify glass in table header filters when typing;
2018-06-29 11:38:18 -07:00
63bb183bec [Plot] Misc bug fixes
* removed unused file

[Plot] Properly update yAxis on key change.

yAxis should update after the key for a series changes.

Fixes #2025.

[Plot] improve y-axis label handling

First, change the y-Axis label retrieval to retrieve the proper
value from the plot confoguration so that it uses the persisted
value, Fixes #2024

Secondly, when removing a series, if there are no series left in
the plot and a custom y-axis label has not been specified, then
clear the y-axis label.  Fixes #2014.

[Plot] don't use incorrect index in selected check

Alias the series form data so that it is not always necessary to
access it using $index.  This prevents $index getting clobbered
when looping over select options which results in the correct option
getting marked as selected.

Fixes bug reported in pull request review:
https://github.com/nasa/openmct/pull/2026#pullrequestreview-117404172
2018-06-29 11:26:22 -07:00
9d2c7a6de5 Review and integrate UI enhancements (#2078)
* [Frontend] WIP New local-controls classes

Fixes #2000
- h-local-controls
- Markup in plots changed
- Changed reset plot button's icon

* [Frontend] WIP local-controls classes

Fixes #2000
- Refactoring to use and apply local-control classes consistently;
- Plots and imagery done in main view and Display Layout contexts;

* [Frontend] WIP local-controls classes

Fixes #2000
- Use local-control classes in Timelines;
- Group Timeline buttons in l-btn-set;
- Use reset icon glyph;

* [Frontend] WIP local-controls classes

Fixes #2000
- Slight increase in size to buttons in frame context;

* [Frontend] local-controls classes

Fixes #2000
- Code cleanup;
- Update Style Guide content;
- Provisionally done, needs unit testing and double-checking;

* [Frontend] Better selecting in browse mode

Fixes #2000
- Better colors and approach to selecting in browse mode;

* [Frontend] Tweaks to pane collapse mini-tabs

Fixes #1758
Fixes #2000
- Enlarged mini-tabs and moved to screen top;
- Removed duplicative theme-based constants;

* [Frontend] Tweaks to "nav up" arrow button

Fixes #1758
Fixes #2000
- Increased hit area of .l-back "nav up" arrow in object-browse-bar;

* [Frontend] Glyph improvements

Fixes #1758
Fixes #2000
- New arrow glyph for view controls;
- Increased hit area of view controls in tree for mobile and desktop;
- Better "hamburger" menu glyph;

* [Frontend] Inspector refactor to CSS grid WIP

Fixes #1758
Fixes #2000
- WIP!!!;
- Good progress on Properties section;

* [Frontend] Inspector refactor to CSS grid WIP

Fixes #2000
- Significant mods to CSS and markup;
- New grid archetypes classes;
- Added title attribs to plot options edit and browse props;
- Added value, alarm markers to plot series browse props;
- Nearly done (?) but needs unit testing and cleanups;

* [Frontend] Minor tweaks to form and form-row

Fixes #2000
- Fixing margin problem with .form-row;
- h2 instead of div.section-header;

* [Frontend] Fixed H2 in Elements pool

Fixes #2000

* Refinements to Time Conductor

Fixes #2000
- Tweaks size of fixed position grab ticks;
- Positioning refinements to ticks and text;
- Hide major tick marks;

* Hide View Large button for nested hidden-frame Layouts

Fixes #2000
- When a layout is nested and has its frame hidden, hide the
View Large button;

* Better hiding of Time Conductor "Submit" button

Fixes #2000

* Re-added new icon-arrow-right-equilateral glyph;

Fixes #2000
Fixes #2078

* Remove commented styles/markup

Fixes #2000
Fixes #2078

* Repaired approach to hiding Time Conductor Submit button

Fixes #2000
Fixes #2078
- Renamed .off to .invisible and added refinements;

* Fixed wrong conflict resolutions; polish search

Fixes #2000
Fixes #2078
- .invisible instead of .off in search.html;
- Minor polishing to search;

fixes #1758
fixes #1763 
fixes #2011
2018-06-29 11:18:50 -07:00
07fb20c32f Json export fix (#2043)
* Refactoring export to json to use new style objects

* Added convenience function to Object API to get identifiers as strings

* Updated tests for ExportAsJSON

* Fixed bug with parent composition not being updated with new ID. Also rewrite IDs in configuration etc. Fixes #2042
2018-06-28 17:45:14 -07:00
90a6bbc13e Notebook integration deep (#1947)
* NASA - OPEN MCT NOTEBOOK UI PROTOTYPE CHALLENGE
https://www.topcoder.com/challenge-details/30059614/
Initial submission

* Code updates:
-Topcoder final fixes
-NASA review fixes

* drag and drop style fix, new entry focus, delete display fix

* NASA reported issues fixed:
objects saved in notebook, delete entry dialog, style files, and new entry from drag objects fixed.

* Annotation toolbar UI style fixes, added annotation functionality on new entry dialog

* painterro .map file issue fixed.

* NASA review fixes:

css files adjusted
notebook children tree removed
embed's title links to live object

* CouchDB documentation added

* CouchDB documentation added

Screenshots added.

* CouchDB setup documentation added

* Test case functional and cosmetic issues fixed.

* Test cases functional and cosmetic issues fixed.

* updated file saver library

* Code issues fixes:
NotificationLaunchIndicator deleted.
Inappropriate modifications to domain object models fixed.
Implemented $destroy listener on entryDnd directive.
Naming conventions fixed.
Unnecessary changes made to platform handled.
Painterro dependency handled
gulp verify fix.

* names and package fixes

* filenames fix

* [Notebook] Relocate to platform/features/notebook

* [Notebook] Remove obsolete README

* [Notebook] Restore original index.html

* [Notebook] Expose via openmct.plugins

* [Notebook] Remove demo entries

* [Notebook] Run gulp fixstyle

* [Notebook] Use dot notation instead of brackets

...for checkstyle

* [Notebook] Remove extra comma

* [Notebook] Run gulp fixstyle

* [Notebook] Use dot notation instead of brackets

...for checkstyle

* [Notebook] Fix lint issues

* [Notebook] Fix lint issues

* [Notebook] Fix lint issues

* [Notebook] Fix lint issues

* [Notebook] Fix lint issues

* [Notebook] Fix lint issues

* [Notebook] Fix lint issues

* [Notebook] Fix lint issues

* [Notebook] Fix lint issues

* [Notebook] Run gulp fixstyle

* [Notebook] Include painterro for tests

* [Notebook] Fix require config for painterro

* [Merge] WIP markup and styling

Fixes #1896
- Very much WIP, currently having issues with
hovering and jiggling

* [Merge] WIP markup and styling

Fixes #1896
- Very much WIP, attempting to convert
textarea to contenteditable;

* [Merge] JS debugging

Fixes #1896
- Very much WIP!

* [Merge] JS debugging

Fixes #1896
- Really, really WIP
- DnD doesn't work properly, and drag to
existing entry no longer works.

* [Front-end] Notebook thematic styling; test console

Fixes #1896
- Added thematic styles and config;
- Really, really, really WIP!!
- DnD doesn't work properly, and drag to
existing entry no longer works.

* [Merge] Cleanups in JS

Fixes #1896
- Removed and commented out logging statements

* [Merge] WIP SCSS and markup polishing

Fixes #1896
- Significant style and markup changes;
- Styles, layout, etc. relating to embed elements;
- Fixes in both notebook.html and embedControl.html;
- Class name normalization;

* [Merge] WIP Mods related to MCTModalNotebook.js

Fixes #1896
Fixes #1906

* fix drag and drop, delete entries

* [Front-end] Refined styling of entry embeds

Fixes #1896

* [Merge] Generalized hover hide/show of local controls

Fixes #1896

* [Merge] Generalized labeled icon-* elements

Fixes #1896

* [Frontend]  CSS normalizing, apply general styles in markup

Fixes #1896
- Notebook class names more individualized;
- Apply .labeled and .has-local-controls general classes;
- Apply .s-input-inline to contenteditable div;
- Look and feel cleanups for drag area and entry elements;

* added modifiedOn time for entries that are changed, and fixed issue regarding inner text being filled when new entry button clicked

* [Frontend]  CSS sanding and cleanups

Fixes #1896
- Removing unused classes;
- Finessed margin and padding;

* [Frontend]  Mobile styling

Fixes #1896
- Mod .has-local-controls to not apply when in touch context

* [Frontend]  WIP Mobile styling

Fixes #1896
- phone portrait entry layout optimization

* fix expand in layout, which was causing snapshot at expand

* [Frontend]  Fixes to search control

Fixes #1896
- Search control now more robust, added
.search-filter-by-type class selector;

* [Frontend]  Fix custom Selects

Fixes #1896
- Custom Selects now much more
solid, handle width compression better;

* remove duplicate code from MCTModalNotebook and roll changes into MCTTriggerModal

* [Frontend]  WIP Mobile styling

Fixes #1896
- Fixed general approach to portrait orientation in
mobile/_layout.scss to use media query;
- Fixed portrait layout in _notebook_base.scss
to use media query;

* prevent multiple new notebook entry divs from being created on open overlay, instead create on initialization

* [Frontend]  WIP Snapshot styling

Fixes #1896
- Better class names;
- Moved buttons in frame layout;

* remove frame layout duplicate and use frame.html

* fix issue of preserving line breaks when text is received from a persisted source

* add comments, clean out some code, and fix broken tests

* fix export image after merging with master

* include painterro in karma config

* Inlined templates for notebook

* disable view policy - to allow layouts to function - needs more investigation

* fix layout display overload, remove viewpolicy and notebookLayout.html. Fix delete error - issues found when deploying for testathon

* fix (not being able to focus on content editable div to add text, while in layout)
- when in layout, the first child of the outermost div is the only one that registers a click, this was causing an issue of not being able to edit notebook entries. My fix includes finding the first child of the div that registers the click and forcing a focus event.

* fix focus one new entry issue, cleanup of code related to finding elements, and write more reusable code

* abstract findElementById for reusability and improve performance from O^2 to O

* user findElementById in entrydnd

* change snapshot library to dom-to-image

* [Frontend]  WIP Snapshot styling

Fixes #1896
Fixes #1947
- Significant markup changes to template in ViewSnaphot.js
- WIP!!! Keeping own topic branch for now

* [Frontend]  WIP Snapshot styling

Fixes #1896
Fixes #1947
- Significant markup changes to ViewSnaphot.js;
- Change in imagery.scss to move non-layout styling
to appropriate class;

* Removed snapshot from version number to close sprint eagle

* Updated version number for Enterprise release

* Lock filesaver version (#1956)

Lock filesaver version as there have been a large number of broken
builds from what should be non-breaking version increases.

Fixes currently broken build.

* [Frontend]  Snapshot styling

Fixes #1896
Fixes #1947
- Final tweaks after rebase from
notebook-integration-deep-styling

* fixes issue of overlay not closing when context menu item in clicked when viewing snapshot

* [Frontend]  Painterro styling

Fixes #1896
Fixes #1947
- WIP
- Painterro styling overrides and config
- Removed commented code

* [Frontend]  Painterro styling

Fixes #1896
Fixes #1947
- WIP
- Painterro styling overrides and config

* fixes issue of overlay not closing when context menu item in clicked when viewing snapshot

* specify require paths for new library

* [Frontend]  Local controls CSS added for hide/show of trash can icons

Fixes #1896
Fixes #1947
- Also updated frame.scss to use same transition timing

* proper shimming

* dragging objects to notebook now only creates a link, clicking on snapshot from object view takes a snapshot of the current view, without re-rendering

* [Frontend]  Local controls CSS added for hide/show of trash can icons

Fixes #1896
Fixes #1947
- Also updated frame.scss to use same transition timing

* select correct div for snapshot

* [Frontend]  Adding background color to snapshot

Fixes #1896
Fixes #1947

* remove snapshot class after async image render

* [Frontend]  Adding background color to snapshot

Fixes #1896
Fixes #1947

* remove snapshot button from frames in layout

* remove snapshot from frame view, add it only to overlay, change mctSnapShot to accomodate taking snaps of overlay/object view

* add preview action, working, need styling for notebook action on preview

* fix checkstyle

* change glyph for preview, use similar tempalte to frame.html

* dont allow preview action on objects getting edited currently

* changes to browseController and NavigationService to block navigation and show preview of object when trying to navigate to object in tree in edit mode

* [Frontend]  Painterro styling and config

Fixes #1896
Fixes #1947
- Changes mainly related to toolbar styling and labels

* [Frontend]  Notebook/Preview related sanding and polishing

Fixes #1947
- Changed description for notebook-new-entry

* [Frontend]  Notebook/Preview related sanding and polishing

Fixes #1947
- Added new global "hide-in-t-main-view" class;
- Apply new class to Preview action to suppress
display of that button in main view of navigated object;

* code cleanup

* [Frontend]  Notebook/Preview related sanding and polishing

Fixes #1947
- Classes for Notebook Entry button spacing;

* abstract overlay into a service/api - to reduce code duplication
catch error produced by painterro because of async div creation by dialog service

* fix broken mcttriggermodal tests

* fix checkstyle and lint

* add functionality of being able to add buttons to the browse bar element of overlay when instantiating the overlay service

* Reduce frequency of template recompilation in mct-include

* Use updated painterro library. Fixes #1981

* add save flag and call done in both cases (clicking on cancel or ok)

* fixes #1951
persist modified empty entry on blur

* Bump Node Version

* fix checkstyle

* fixes issue where annotating snapshot that is already saved in notebook does not work

* fix painterro button styling issue
move jquery logic inside timeout block, because buttons are asynchronously created

* remove description required when saving snapshot to notebook

* remove create snapshot action from embeds, and add preview action to embeds

* fixes edge case for issue #1981
Add a reject callback in the edgecase that user presses the x icon or esc key to cancel annotation, which was leading to the drag drop issue

* Add default sort options on creation menu of Notebook

* fix auto focus on new entry when in oldest first order, both in layout and regular view

* [Frontend] Notebook mobile mods

- Hide entry area when mobile;
- Disallow entry edit or delete in mobile;

* fixes issue 2041 (#2049)

* fixes issue 2041
allows user to select caret position in notebook entries while in layout

* [Frontend] Restore class, refine selector

Fixes #2041
Fixes #2049
- Restored .s-input-inline to editable field;
- Refined pointer-events: none to properly target .title-label only;

* remove unused files/code and smoke test

* remove , add pre-wrap to css and use inner text

* make reviewer requested changes 'in progress still'

* make reviewer requested changes 'continued'

* replace html2canvas with dom-to-image
- add in progress dialog to export image service
- add error dialog to export image service

* Search UI refactored to use flex

Fixes #1947
- Fixes broken search inputs in main search and Notebook;
- Significant rewrite to search SCSS and markup;

* Fixes for Notebook custom selects; polishes to search

Fixes #1947
- Better flex styles for custom selects;
- Refinements to search styling;
- Much better mobile responsive layout for search and controls
in portrait layout;

* fix preview action for embeds, which was showing current domain object vs selected domain object

* Fixed hidden search dropdown menu

Fixes #1947

* Revert whitespace change

Revert change to whitespace in index.html.  #1947.

* [Export] Use html2canvas

Use html2canvas instead of dom-to-image.  Fixes issues with text
exports.  html2canvas is better supported and under active
development and is a better choice for this library.  Cleaned up
export code, ensure that images are properly saved as the correct
types.

related to feedback on #1947

* Don't show brackets when timestamp is not specified (#331)
2018-06-28 17:13:34 -07:00
73e38f1955 [Toolbar] Implement a public API for adding toolbars (#1908)
* [API] Implement a toolbar registry and a plugin to allow providing a toolbar for a selected object.
* Modify the mct-toolbar directive to get the toolbar structure from a provider based on selection.
* Implements the layout toolbar in the layout bundle
2018-06-27 13:30:01 -07:00
de8f8d174d Add a string formatter (#2087)
* add StringFormat to formats
 fix #2086
2018-06-27 11:02:24 -07:00
b187762d55 [Folder] List view load fix (#2069)
* [Folder] List view load fix

-List view data takes long time to display, has to do with Angular not triggering its digestive cycle when switching views
-Resolved issue by explicitly triggering the digestive cycle
-Fixes issue #2067

* Added comment to clarify code addition

fix #2069
2018-06-21 10:52:27 -07:00
45a152df86 Build columns from union of telemetry value metadata. (#2075)
* Build columns from union of telemetry value metadata. Do not manually clean up scope. Fixes #2027. Fixes #1884. Fixes #1817.

* Fixed tests that are failing on circle-ci

* Inlined getMetadataValues function
2018-06-21 10:50:43 -07:00
a3e78bbf91 Duplicate images (#2058)
* [Images] changed updateHistory to only compare the URL value and timestamp for equality
2018-06-20 14:26:13 -07:00
374e4afc32 allow clearing table filters with cancel button #1989 (#2005)
* fixes issue #1989 add cancel icon to filter input in table headers, which allows user to clear filter with one click
2018-06-20 14:18:54 -07:00
2f8a0c2c2b [Notifications] Added timestamp and object name to copy notifications (#2060)
* [Notifications] Added timestamp and object name to copy notifications \n

-Fixes issue #331 
-Added timestamps to all notifications
-Added object name to copy success notification
-Updated placement and style of notification timestamp as discussed with Charles.
2018-06-20 10:37:19 -07:00
163043635e Merge pull request #2073 from nasa/table-spinners
Added digest after showing / hiding spinner. Fix #1882
2018-06-15 11:26:46 -07:00
ec9fd59d4a Added digest after showing / hiding spinner 2018-06-15 11:15:03 -07:00
e03ea25392 Merge pull request #2065 from nasa/bind-to-loopback
Modified Express startup so that it only binds to loopback by default
2018-06-08 10:44:55 -07:00
56c16ed263 Modified Express startup so that it only binds to loopback by default 2018-06-08 09:54:18 -07:00
2e99f90b7c [Frontend] Only include grippy when there's more than one element (#2055)
Fixes #2053
2018-06-01 16:28:40 -07:00
0520b03b97 recognize difference between android tablet and phones (#2048) 2018-05-25 22:18:18 -07:00
08bed6c23a Fluid layouts 2 electric boogaloo (#2047)
* [Frontend] Viewport metatag updated

Fixes #2008
- Added shrink-to-fit=no;

* [Frontend] Fix to Time Conductor for Safari

Fixes #2008
- CSS mod for gradient blockers in TC

* [Frontend] Remove data visualization element in TC

Fixes #2008
- Note: this element holds the TOI indicator!

* [Frontend] Hide TC ticks when on mobile

Fixes #2008
- Added class `mobile-hide` to <conductor-axis>

* [Frontend] Significant mobile fixes for panes and viewport

Fixes #2008
Fixes #1770
Fixes #1928
- Left and right panes now positioning properly in mobile;
- Fixed body overflow problem for #2008 "viewport" issue;

* fixes multiple issues related to 2008
context menu firing too often - fixed by setting a isDragging flag
Add and Remove respective classes on mobile orientation change by using mathMedia
Close tree pane when navigating in mobile portrait only

* [Frontend] Various

Fixes #2008
- Always show Timeline zoom controls;
- Prevent inline editing of object names in the main view when in
mobile;

* Add touch functionality to mct-drag
it allows users to use the splitter in mobile
and include appropriate tests

* remove couchdb and reinstall localStorage

* [Frontend] Mods to imagery CSS

Fixes #2008
- Reduced size of image thumbnails;
- Changed min-heights of image and thumbnail
holders for .mobile.phone

* [Frontend] Add Advanced CSS property to Display Layouts

- WIP!
- Add property to bundle;
- Add CSS for column, row and fit-all classes;

* [Frontend] Grid holder and class prefixing

- WIP!
- Edit grid-holder set to position: absolute
- Added "fl-" prefix to fluid layout class names;

* [Frontend] More CSS tweaks

- WIP!

* [Frontend] Added .drag-vertical

- For use in Elements pool;
- Applied in elements.html;

* fix: check if stats is present before reseting zoom (#2029)

* [Timer] Fix regression in timer visual indication and add tests

* [TimeConductor] Fixes Issue #925 (#2020)

* [TimeConductor] Fixes Issue #925`
- Pressing enter in date field will update bounds properly in Safari

* [Copyright] Update copyright year across platform code references

Fixes #2034.

* fixes issue #1999 - Use Object name as default export filename (#2001)

* fixes issue #1999
add dynamic name(object name) to exportAsCSV filename

* make requested changes

* [Frontend] Add Advanced CSS property to Display Layouts

- WIP!
- Add property to bundle;
- Add CSS for column, row and fit-all classes;

* [Frontend] Grid holder and class prefixing

- WIP!
- Edit grid-holder set to position: absolute
- Added "fl-" prefix to fluid layout class names;

* [Frontend] More CSS tweaks

- WIP!

* [Frontend] Added .drag-vertical

- For use in Elements pool;
- Applied in elements.html;

* [Frontend] More CSS tweaks

- WIP!
- Added .fl-phone-best-fit

* working drag and switch, need to mutate

* fix conflict

* add ability to rearrange composition using drag gestures

* add maxHeight and maxWidth to layout frames

* [Frontend] Added fl-mobile-best-fit

* [Frontend] Allow editor to set mins dimensions for fluid layout

- Cleanups in CSS;
- Mod to LayoutController.js to use minWidth and minHeight;

* [Frontend] Styles for reordering in Elements pool

- Changed class "dragging" to "reordering";
- Visual styling WIP;
- TODO: style "reorder-actor" when implemented;

* add reorder-actor class to draggable item in elements pool when selected and remove class when dropped

* stacked plots reload on composition change

* [Frontend] Tweaks to Elements pool reordering styles

- "reorder-actor" added/removed from parent tree item;
- Refined styling for drag in process in list;

* [Frontend] Added new 12px list view glyph

- Font files and CSS updates;

* [Frontend] Added new 12px grippy glyph

- Font files and CSS updates for Elements pool sorting styling;

* fix failing test

* make reviewer requested changes

* remove create dialog from mobile
2018-05-25 18:58:49 -07:00
c909831dd4 Review and integrate mobile-2008 (#2040)
Fixes #2008
* Viewport metatag updated
* Fix to Time Conductor for Safari
* Remove data visualization element in TC
* Hide TC ticks when on mobile
* Add touch functionality to mct-drag
* Reduced size of image thumbnails; Changed min-heights of image and thumbnail
holders for .mobile.phone
* remove create dialog from mobile
2018-05-25 11:19:27 -07:00
e19ce4ac8c [Frontend] Adds overflow scrolling to .l-view-section (#2039)
Fixes #1878
- Add overflow: auto;
- Better naming of $overflow arg;
- Fixed and unit tested in plots and tables;
2018-05-18 10:52:24 -07:00
fab1def790 fixes issue #1999 - Use Object name as default export filename (#2001)
* fixes issue #1999
add dynamic name(object name) to exportAsCSV filename

* make requested changes
2018-05-16 13:20:58 -07:00
28311fd4dd Merge pull request #2033 from PunkChameleon/fix-timer-indicator
[Timer] Fix regression in timer visual indication and add tests
2018-05-16 13:17:02 -07:00
c55eaeb193 [Copyright] Update copyright year across platform code references
Fixes #2034.
2018-05-14 15:46:17 -07:00
2e6cdfc457 [TimeConductor] Fixes Issue #925 (#2020)
* [TimeConductor] Fixes Issue #925`
- Pressing enter in date field will update bounds properly in Safari
2018-05-11 15:56:27 -07:00
210808ed54 [Timer] Fix regression in timer visual indication and add tests 2018-05-09 17:35:56 -04:00
062ba4a9d7 fix: check if stats is present before reseting zoom (#2029) 2018-05-08 15:24:02 -07:00
e2217e008a don't allow plot or table view of summary widget (#2030) 2018-05-04 13:26:10 -07:00
61e583dbb2 [TimeConductor] Fixes issue #1955 (#2023)
- Open in New Tab will preserve TC settings
2018-05-03 16:10:25 -07:00
7d754ea143 [plot] set minimum marquee size (#2003)
Users must draw a marquee box with diagonal size of atleast 7.5
pixels.  This prevents clicks from being translated to zooms on
the plot.  Because startMarquee triggers a plot history update.
endMarquee must remove the plot history update when preventing
marqueeZoom.  This has a side effect of causing a requery for
data, but is a simple enough solution for now.

Fixes #2002.
2018-05-02 13:53:17 -07:00
865b99f445 Handle string states (#2019)
* State generator realtime uses strings

Change the state generator's realtime data to return string values
instead of number values.  This exercises an edge case where
enumerations could be a string instead of a number.  Exposes #2018.

* [Telemetry] handle string enumeration value

Don't treat all strings as properly formatted enumeration values.

Instead, check any input value against known enumerations and if
one matches, return it.  Otherwise, return input.

Fixes #2018
2018-05-02 11:42:42 -07:00
ec8b4db2e5 Merge pull request #2004 from nasa/bump-circleci-node-env
Bump Node Version
2018-05-01 13:50:35 -07:00
d6bd09fabf Bump Node Version 2018-04-30 10:41:32 -07:00
241d75e393 Summary widget telemetry provider (#1943)
* Summary Widgets produce telemetry

Adds a summary widget telemetry provider and metadata provider to
the summary widget plugin.  Supports subscribing to realtime
summary widget evaluations without needing the summary widget UI.

Fixes https://github.com/nasa/openmct/issues/1893

* Use metadata to determine telemetry types

Update summary widgets to use metadata to determine telemetry types.
fixes https://github.com/nasa/openmct/issues/1801
fixes https://github.com/nasa/openmct/issues/1883

* shared evaluators, more telemetry values

Share summary widget evaluators to reduce number of times a object
needs to be loaded when dealing with multiple queries.

Fixes https://github.com/nasa/openmct/issues/1893

* Separate view for editing
fixes https://github.com/nasa/openmct/issues/1827

* Update summary widget tests

* Workaround incorrect telemetry capability application

In the case where an object support telemetry but does not support
the specific type of telemetry request i.e. a summary widget has
request for lad but not for historical, an error will be thrown.

* use makeKeyString

use makeKeyString when storing configuration of objects in summary
widgets.  Otherwise, namespace information would not be properly
tracked.  Fixes https://github.com/nasa/openmct/issues/1949

* [Tests] coverage for EvaluatorPool

Add tests for EvaluatorPool and fix a bug where the same evaluator
was returned for different objects.

* Add copyright headers

* Update metadata provider registration

* attach title to a element

* Only evaluate realtime when all data available

* Prevent update after destroy

* Don't error when no telemetry exists

* Don't mutate on view destroy

Improper removal of listeners was triggering a mutation on view
destroy, which happens after the initial persist call to server
that occurs when saving. This mutation occurs after the edit
transaction has been closed, which would result in an immediate
persist call.  This can cause a race condition when the first
persist call has not completed, which causes a 409 conflict and
a persistence error.

Fix #1827

* Spec for telemetryProvider

* update on time system change

Summary Widgets now resubscribe and requery for data when time
system changes, in order to ensure they're showing the correct
data to the user.

* link to telemetry request details

* rename variables, update jsdoc

Addresses comments in https://github.com/nasa/openmct/pull/1943
2018-04-20 15:46:09 -07:00
f4271c96a3 Review SCSS refactoring for to-be-deprecated Bourbon functions (#1959)
* [Frontend] Refactor SCSS to remove deprecated @includes

Fixes #1891
- In progress

* [Frontend] Refactor SCSS to remove deprecated @includes

Fixes #1891
Making bourbon happy by refactoring to-be-deprecated
calls to prefixing @includes:
- transform and related CSS;
- flex and related CSS;
- Fixed double semi-colons to single;
2018-04-20 10:18:29 -07:00
8c739e9fd9 [Imagery] Issue #1962 - History shows oldest image (#1983)
* force update to latest image when history is received

* force update to latest history image on response received

* remove console log"

* change requestLAD function to last item in array, in case response is an array with more than one item

* fix checkstyle

* remove requestLAD because its requesting history twice in cases where server does not have latest flag
2018-04-20 09:15:25 -07:00
75ae5ab3bb [Toolbar] set selection initially in fixed controller and toolbar... (#1994)
* [Toolbar] set selection initially in fixed controller and toolbar...

... to make the add button appear in the toolbar when a fixed position is created.

Remove selection change listener on destroy.

Start a digest cycle when handling selection in toolbar to avoid delays in toolbar.

Fixes #1991, #1987

* fixed checkstyle and lint errors

* Fix tests

* Update comment
2018-04-20 08:45:29 -07:00
78a5ace18d Merge pull request #1967 from nasa/better-startup-1966
[Frontend]  CSS for better startup
2018-04-18 17:02:42 -07:00
ba0077498c [Frontend] Added return at eof
Fixes #1966
2018-04-18 16:33:02 -07:00
909a21ee8a Merge pull request #1990 from nasa/plot-fixes
[plot] cleanup alarms, don't error on mutate, fallback on context lost
2018-04-18 13:05:08 -07:00
94c35a67c5 fixes issue 1973 and 1911 (#1992)
Remove previous icon class name before adding the new class name
2018-04-17 17:52:07 -07:00
19fc05b76d Enterprise-galactica (#1993)
* Tagged release to close Enterprise sprint

* Updated version number to open sprint Galactica
2018-04-17 17:51:46 -07:00
1326dae27a Fix style 2018-04-13 16:54:18 -07:00
7d8dc00996 Only listen on overlay plots
Only listen for mutations on overlay plots, as other mutations
should be ignored by plot configuration.

Fixes https://github.com/nasa/openmct/issues/1945
2018-04-13 16:52:27 -07:00
a958055f50 Remove alarm set when removing series
Remove alarm marker sets when removing series, so that they don't
continue to display.

Fixes https://github.com/nasa/openmct/issues/1935
2018-04-13 16:46:10 -07:00
1f86a5a131 Fallback to 2d on context lost
When webgl contexts are lost, fallback to 2d rendering context.

Because it's not possible for a canvas to generate a different
context after one has already been created, the canvas elements
must be recreated from scratch, and event handlers must also be
updated.

This resolves https://github.com/nasa/openmct/issues/1976
2018-04-13 16:28:28 -07:00
8ad07fa8de cleanup chart controllers 2018-04-13 16:24:36 -07:00
fa7298a752 [Plot] Wait for width before loading (#1975)
Plot waits for element to have width before loading.  Otherwise,
it may make a minmax request with an invalid size parameter.

Fixes https://github.com/nasa/openmct/issues/1974
2018-04-03 15:03:35 -07:00
ae42298d08 [Frontend] CSS for better startup
Fixes #1966
- Transitions and opacity styles moved to new _app-start.scss,
which loads at the very end of all other CSS needed by the app;
2018-03-28 18:00:56 -07:00
1a23f2b390 Allow property values of zero. (#1961)
Allow SWG properties of zero to be used instead of overwriting
them with defaults.
2018-03-27 10:02:15 -07:00
4df6d6141b [Testing] Create unit tests for Types API (#1890)
* [Testing] Create unit tests for Tests API

* [Documentation] Fix spelling in TypeRegistry.js

* update TypeRegistrySpec to conform to code review
use .get() on typeRegistryInstance

Fixes #1514
2018-03-26 13:28:56 -07:00
1c97138607 Pin d3 major/minor versoins (#1963)
Pin to specific d3 major/minor versions while allowing new
patches.  Previously, we were pinned to major versions only, and
minor versions contained changes to the distributed files which
would result in broken builds.

This should hopefully prevent broken builds from dependency updates.
2018-03-26 11:30:28 -07:00
8db75bf41e [API] Support dynamic telemetry metadata (#1941)
* [API] Support dynamic telemetry metadata

Add support for dynamic telemetry metadata via custom telemetry
metadata providers.  

The metadata provider API should be considered unstable in it's
current invocation.

* Perform deprecation checking at runtime
* SWG uses telemetry metadata provider
* Don't throw with no matched metadata provider
* Update API docs
* Add license header
* Combine metadata providers with general telemetry providers
* Replace `TelemetryAPI.canProvideTelemetry` with
`TelemetryAPI.isTelemetryObject`.  
* CanProvideTelemetry is deprecated
* Change SWG inputs to numberfield
2018-03-21 14:18:08 -07:00
00fb071fe2 Lock filesaver version (#1956)
Lock filesaver version as there have been a large number of broken
builds from what should be non-breaking version increases.

Fixes currently broken build.
2018-03-19 14:52:47 -07:00
2bf6a48d49 Merge pull request #1953 from nasa/eagle-sprint-release
Eagle sprint release
2018-03-16 10:38:49 -07:00
eca3c57bd8 Updated version number for Enterprise release 2018-03-16 10:26:01 -07:00
7753703034 Removed snapshot from version number to close sprint eagle 2018-03-16 10:15:29 -07:00
f9060a485d [Plugin] Add imported root plugin (#1784)
* [Plugin] Add static root plugin

Add StaticRootPlugin, which allows a file exported with the ImportExport
plugin to be mounted as a static root in Open MCT.  Allows deployers
to configure standard displays for deployments by exporting displays they
have already created.

* Include all src files
2018-03-09 12:39:25 -08:00
39a7f43cd0 Fixes Issue #1938 - Fixed Positon should display enumerated value (#1939)
* Fixes #1938
Fixed usage of Telemetry API, use hints to get valueMetadata, use valueMetadata to get formatter

* dont circumvent chooseTelemetryKeyToDisplay, which was causing a regression when imagery is added to fp

* fix broken tests

* pass valueMetaData to limitEvaluator.evaluate, rename #chooseTelemetryKeyToDisplay to getValueMetadata, to reflect what is returned.
update tests

* change getValueMetadata to chooseValueMetadataToDisplay
2018-03-07 13:49:11 -08:00
5103207a70 Merge pull request #1940 from nasa/update-gulp-sass
Updated version range of gulp-sass to allow later versions
2018-03-06 12:58:22 -08:00
8c2cc90f04 Updated version range of gulp-sass to allow later versions 2018-03-06 09:31:09 -08:00
ce431848b3 Remove example plotOptions. (#1936)
Fixes https://github.com/nasa/openmct/issues/731
2018-03-02 15:52:02 -08:00
5726fe6313 new-plot import (#1557)
Merge of new plot
* Introduces new Plot object and view
* Removes Old Plot
* Add LAD support and state type to generators
* Removes Telemetry Panel Type
* Telemetry API Updates
* UTCFormat.parse: passthrough numbers
* TelemetryAPI: default request arguments
* TelemetryAPI: fix enum formatting
* Markup and styling to support new plots
2018-03-02 14:29:34 -08:00
6145843e86 [Inspector] Add check to prevent race condition before setting the scope composition. (#1931)
Fixes #1918
2018-02-28 13:38:00 -08:00
0225cbab6a Merge pull request #1930 from nasa/navigate-via-breadcrumbs
Restore navigation via breadcrumbs
2018-02-28 13:36:16 -08:00
e477beb587 Merge pull request #1875 from tobiasbrown/open1872
[DateTimePicker] Time Conductor Date Picker menu is missing background
2018-02-28 13:29:21 -08:00
ee5d59024a Restore navigation via breadcrumbs
Fix navigation via inspector breadcrumbs.

Fixes https://github.com/nasa/openmct/issues/1927
2018-02-28 12:04:14 -08:00
5288dadafb Merge pull request #1926 from nasa/discovery-eagle
Version bump - 0.12.0 -> 0.13.1
2018-02-26 17:45:03 -08:00
7f3cc09cbc Updated version number for start of release Eagle 2018-02-23 13:42:19 -08:00
94fa70abb1 Updated version number to close sprint 'Discovery One' 2018-02-23 13:32:31 -08:00
12574a1333 Tests for Composition API providers 2018-02-20 09:40:57 -08:00
dc91a94f0e Merge pull request #1913 from nasa/layout-issue-1909
[Layout] Select fixed position view only if the parent is not selected
2018-02-15 15:20:03 -08:00
0243aa6584 [API] provider support for dynamic composition is optional (#1915)
All views are expected to implement dynamic composition handling
by listening for the "add" and "remove" events and then calling
"collection.load()" when they are ready to handle these events.

However, it does not make sense that every composition provider will
be dynamic, so implementing support for dynamic composition should
not be a requirement.  This commit removes that requirement.

Fixes #1914
2018-02-13 18:00:35 -08:00
e5d869f01e [Layout] Select the fixed position view only if the parent is not selected.
Also, add mutation listener if domain object is defined to fix the TypeError.

Fixes # 1909 and #1912
2018-02-13 13:23:49 -08:00
d4e3e6689c [Inspector] Listen for mutation and refresh composition
...so that elements pool is updated when selected object's composition changes. Fixes #1869
2018-02-12 10:49:56 -08:00
0363d0e8ad d3 selection filepath changed (#1898)
* d3 selection changed from build to dist.
* build to dist for test-main.js
2018-02-05 11:12:22 -08:00
3669e776a9 add parameter for background color, only change color when parameter is passed in (export image service is used in notebook which needs the background color not changed
added tests
2018-02-05 10:46:56 -08:00
5d3adc6a7f [Documentation] Add security guide (#1900)
* [Documentation] Add initial security overview content

Fixes #1833

* [Documentation] Outline security guide

* [Documentation] Retitle Security Guide

* [Documentation] Reformat security procedures

* [Documentation] Flesh out security notes

* [Documentation] Add references to Security Guide

* [Documentation] Note role of static analysis

https://github.com/nasa/openmct/pull/1900#pullrequestreview-93769470
2018-02-02 14:23:08 -08:00
c1b2db848a Merge pull request #1887 from nasa/jshint-late-def
[Code Style] Allow late definition of functions
2018-01-23 23:25:24 -08:00
5d19294c11 Disabled late definition check for functions 2018-01-18 17:23:23 -08:00
8c72729a2a [DateTimePicker] Replaced tabs with spaces
Addresses #1872
2018-01-17 09:33:28 +11:00
9b8d5f3f9c Switch to white background during export
* Defaulted background option to white for PNG/JPG export

* Attempt at fixing background colour on image output

* Reverted build location change

* WIP for white background

* WIP for white background

* Updating default colour, including saving of existing colour to restore appropriately

* Fix tests and move css change background outside the try block

* keep consistent with american english

* add method to change background color and test wether it has been called with the right params

* change color to original when save fails

Fixes #1422
2018-01-16 09:32:49 -08:00
129ab1791b [DateTimePicker] Re-added .s-menu styles removed in bc7d92ee0d
Addresses #1872
2018-01-15 12:43:16 +11:00
d03f323a9b [Frontend] Support for hover on FP sub-objects in browse mode
Fixes #1849
2018-01-10 15:16:04 -08:00
54a453e5a0 Fix checkstyle error 2018-01-10 15:16:04 -08:00
14894cf197 [Fixed Position] Modify fixed position to use the Selection API
Change method name to shouldSelect() as requested by the reviewer.

Fix tests.

Fixes #1848
2018-01-10 15:16:04 -08:00
0c6786198a adds v8-compile-cache 2018-01-08 09:52:16 -08:00
6d077b775d fixes issue #1830
add offsetX to popupService instance in infoService, to prevent bubble from appearing under the mouse pointer, which causes interminent calls to the callback.
2018-01-08 09:50:45 -08:00
144437a06e remove commented code 2018-01-04 12:56:57 -08:00
557cd91b21 fix tests 2018-01-04 12:56:57 -08:00
39d3e92094 fix for Issue 1838
Remove isDirty check, always allow blocking popup when exiting edit mode
2018-01-04 12:56:57 -08:00
7529a86d01 update node and npm before tests 2018-01-04 10:47:14 -08:00
d34e36831c prepare -> prepublish 2018-01-04 10:47:14 -08:00
aa8fa9168a add isDefined condition in condition Evaluator which fixes Issue 1860
Add appropriate tests
Fix for isUndefined not working as well
2018-01-04 10:43:05 -08:00
3f1b7e0a87 Add test for identifier generation 2018-01-03 12:11:35 -08:00
5ec3b98d1c [SummaryWidget] Use objectutil to get legacy id
Use objectUtils to get a proper legacy id so that namespaces are
properly handled.  Fixes https://github.com/nasa/openmct/issues/1858
2018-01-03 12:11:35 -08:00
1ad5094b72 Merge pull request #1847 from nasa/invalid-selector-1846
[Layout] Don't use class name to query by id
2017-12-20 14:02:21 -08:00
b54ee2257e [Layout] Don't use class name to query by id
...since ids may be invalid class names. Instead, use a data attribute. Fixes #1846
2017-12-20 13:42:46 -08:00
fcef4274e5 Merge pull request #1845 from nasa/timeline-selection-regression
[TIMELINE] fix selection regression in timeline
2017-12-19 13:46:20 -08:00
744a5340d3 [TIMELINE] fix selection regression in timeline
Fixes # 1842
2017-12-19 13:05:04 -08:00
d140051054 Merge pull request #1843 from nasa/follow-bug-1836
[Timers] Fix bug in FollowIndicator
2017-12-18 15:22:35 -08:00
8da74f2665 [Timers] Fix bug in FollowIndicator
...by expecting new-style instead of legacy domain objects.
Fixes #1836
2017-12-18 13:28:05 -08:00
2390278b97 [Telemetry Mean] Addressed code review issues 2017-12-11 10:44:07 -08:00
8a66731271 Added tests for MeanTelemetryProvider 2017-12-11 10:44:07 -08:00
0a9ea48355 Implemention of basic averaging telemetry filter 2017-12-11 10:44:07 -08:00
01d93306f3 Fix insertion point scan 2017-12-11 10:39:02 -08:00
0588f9190a Move DupeCheck inside of Collection 2017-12-11 10:39:02 -08:00
1378b57567 Remove format/parse cache
Remove the cache for formatted and parsed values, as this was
a net performance loss due to a very low cache hit percentage.
2017-12-11 10:39:02 -08:00
9e12886c66 Shortcut index check for append/prepend
Update the insertion point check with shortcutting behavior
for appending / prepending objects, which is the common case
for sorted inserts on initial table load (when large numbers of
records are inserted).  This allows O(1) performance for the
common case while maintaining O(log n) performance for the edge
case.
2017-12-11 10:39:02 -08:00
2d352ac574 only dupe check when needed
Only enable datum dupe checking in collection after data
has been received.  This works under the assumption that a
single telemetry request will not contain duplicate elements,
thus, it is not necessary to check for dupes on the initial
request.

Improves performance when rows are sorted by a column
that has duplicate row-values.
2017-12-11 10:39:02 -08:00
284dec4903 Merge pull request #1834 from nasa/summary-widgets-ml
Summary widgets Memory Leak Fix
2017-12-07 14:19:16 -08:00
5a0656c700 [DateTime Field] Disabled autocorrect and spellcheck for datetime fields (#1769)
Addresses #1682
2017-12-07 13:29:52 -08:00
425655bae0 [Layout] Support sub-object selection in layout (#1811)
Updates to sub object selection, first cut of selection APIs.

* [API] Add inspector view registry to register inspector view providers and show a view in the inspector.

[API] Modify the selection API to register the click event and handle the event. The API will add a class to the selected object and the immediate parent of the selected object.

[Directive] Implemenet mct-selectable directive for making an element selectable.

[Layout] Update the layout controller to use the Selection API. Also, add double click gesture to allow drilling into a selected object.

Populate the Elements pool with contained elements of the selected object. Update toolbar and inspector to listen for the changes in selection.

* [Frontend] Mods to markup and CSS for sub-object selection

* MCTSelectable allows selection in initialization, use to select on navigation

[Frontend] Show grid in first nested layout, hide from deeper nesting. Only show grids when applicable to relative selection.

* Fix checkstyle and lint errors

* Bring back the change that made mct-init-select work

* [Inspector] Make sure the right content is displayed based on whether a view provider exists or not.

* Only show table options when editing

* Make reviewers' requested changes

* Fix broken tests

* [Frontend] Cleanups and tweaks

Fixes #1811
- Cleanups between frame, editor and selecting.scss;
- Hover and selected borders visually pumped up a bit;
- Solid borders on hover and selecting when browsing;
- Dashed borders for layouts when editing;
- Fixed cursor to only show move capability when
element is selected;

* [Frontend] Tweaks to frame.no-frame layout

Fixes #1811
- Margin set to 0;
- Overflow set to hidden;

* [Frontend] Fixed position items border width fixed

Fixes #1811
- Set to 1px;

* Add tests for inspector controller and fix broken tests. Clean up code.

* [Fixed Position] Stop event propagation on click handlers in fixed position to avoid the event reaching the selection click handlers which caused issues with toolbar and selection."

* Fix tests

* Add tests

* Add test

* Remove element from document
2017-12-07 13:04:46 -08:00
50b4d5cb28 [Autoflow] Rewrite Autoflow Tabular using new APIs (#1816)
Rewrite Autoflow tabular using Vue and all new telemetry APIs.  Also adds LAD support to autoflow tabular. 


* [Autoflow] Add Vue dependency

...to begin refactor away from Angular, #1810

* [Autoflow] Add Vue to require config

...to support usage in refactoring Autoflow Tabular view.

* [Autoflow] Sketch in new plugin registration

* [Autoflow] Bring over template, without Angular

* [Autoflow] Add license headers

* [Autoflow] Add VueView

...to simplify addition of Vue-based views.

* [Autoflow] Add Vue bindings to template

* [Autoflow] Sketch in AutoflowTabularView

* [Autoflow] Include title for row names

* [Autoflow] Begin adding controller

* [Autoflow] Sketch in controller functionality

* [Autoflow] Support object filtering

* [Autoflow] Unlisten from controller on destroy

* [Autoflow] Track rows on an interval

* [Autoflow] Support column width changes

* [Autoflow] Expose new plugin through openmct.plugins

* [Autoflow] Fix run-time errors instantiating view

* [Autoflow] Fix row generation error

* [Autoflow] Fix row formatting

* [Autoflow] Utilize width

* [Autoflow] Update autoflow view when filter changes

* [Autoflow] Enable autoflow for telemetry panels

...in developer environment.

* [Autoflow] Bind data-value for rows

* [Autoflow] Include limit evaluations

* [Autoflow] Rename property rows to rowCount

* [Autoflow] Retain rows during update

* [Autoflow] Add bindings to clear autoflow filter

* [Autoflow] Show updated timestamp

* [Autoflow] Remove obsolete plugin

* [Autoflow] Load vue for tests

* [Autoflow] Begin adding spec for autoflow tabular plugin

* [Autoflow] Test plugin registration

* [Autoflow] Begin spec for AutoflowTabularView

* [Autoflow] Obey contract from VueView.show

...by populating a container, instead of replacing it.

* [Autoflow] Begin testing behavior

* [Autoflow] Get initial row heights

* [Autoflow] Verify unsubscription on destroy

* [Autoflow] Test column width button

* [Autoflow] Simplify controller activation/destruction

* [Autoflow] Verify data display

* [Autoflow] Test limit display

* [Autoflow] Fully initialize controller

* [Autoflow] Add missing semicolon

* [Autoflow] Separate out constants

...to access them from tests

* [Autoflow] Use constants from spec

* [Autoflow] Test autoflow behavior

* [Autoflow] Refactor test case

...to support tests for composition changes

* [Autoflow] Add test cases for composition change

* [Autoflow] Handle composition changes

* [Autoflow] Sketch in row controller

https://github.com/nasa/openmct/pull/1816/files#r153015544

* [Autoflow] Integrate row controller

https://github.com/nasa/openmct/pull/1816#pullrequestreview-79305103

* [Autoflow] Add tests for historical request

* [Autoflow] Request historical telemetry

* [Autoflow] Remove unused active flag

* [Autoflow] Clarify row destruction

...to avoid problems with binding destroy

* [Autoflow] Fix mistake in test

* [Autoflow] Simplify waiting for view updates in test

* [Autoflow] Move filtering, autoflow to view

* [Autoflow] Remove unused caching

* [Autoflow] Remove obsolete method reference

* [Autoflow] Fix lint errors

Add missing semicolon, remove unused vars

* [Autoflow] Refactor test to simplify emitting events

* [Autoflow] Emit add events during load for testing

...to simulate the actual behavior of this method.

* [Autoflow] Provide composition in mock

...to allow constructor-time usage of dependency from controller

* [Autoflow] Avoid intermittent errors

...by checking to see if tabularArea is available before
accessing its clientHeight; depending on the timing of
setInterval versus Vue's mount event, it may not be!

* [Autoflow] Use add/remove composition events from controller

...exclusively, instead of attempting to load again and triggering
an infiniute loop each time.

* [Autoflow] Test that composition does not reload

* [Autoflow] Expect identifiers for remove events

* [Autoflow] Simplify row-matching test

* [Autoflow] Combine down to a single integration test

* [Autoflow] Remove possible test race condition

* [Autoflow] Add JSDoc

* [Autoflow] Remove excess test case

...which is no longer needed after combining behavioral tests for
view into a single spec.

* [Autoflow] Remove unused destroy call

https://github.com/nasa/openmct/pull/1816/files#r154787335

* [Autoflow] Use requestAnimationFrame in tests

...to avoid brittle change detection.
https://github.com/nasa/openmct/pull/1816/files#r154785549

* [Autoflow] Use MCT instance for spies

...such that test case becomes sensitive to API changes in MCT.
2017-12-07 13:01:10 -08:00
bc62d7d5ae [Summary Widgets] Fixed memory leak involving dom event listeners not being cleaned up. 2017-12-07 11:02:57 -08:00
c0dcf4495e [API] Reset listeners array in MutableObject 2017-12-07 10:56:14 -08:00
a51b9bc63f [Examples] Memory leak in SWG 2017-12-04 10:42:36 -08:00
ff003c3dab Merge pull request #1822 from nasa/file-saver-1821
[Export] Add shim config for saveAs
2017-12-01 11:50:56 -08:00
de7c4d2ce3 [Export] Add shim config for saveAs
Fixes #1821 after regression introduced by changing dependency in #1808
2017-11-30 15:20:26 -08:00
4b07930305 Summary Widgets (#1668)
* [ViewAPI] Update view API with more support

Update view provider to allow metadata definitions and to play
nicely with old style views.

Spec out some updates to ViewProviders and ViewRegistry to
support further use of views.

* [Summary Widgets] Add summary widgets

Add a summary widget domain object type

Implement basic interface and style configuration for rules

* [Summary Widgets] Implementation for Rules

Add rule configuration inputs, populated with domain objects, metadata,
and appropriate operations for a given type

* [Inputs] Add implementation for icon palette

Issue #1644

Wire up icon palette inputs to widget, and make icon class a persistable
property of a rule

* [Summary Widgets] Implementation for conditions

Support configuring and persisting multiple conditions per rule

Issue #1644

* [Summary Widgets] Generate Rule Descriptions

Dynamically update the rule description based on the current state
of the rules' conditions

* [Summary Widgets] 'Any/All Telemetry' in conditions

Add UI and implemenetion for evaluating any telemetry or all telemetry
in an individual condition. Add related unit tests.

* [Summary Widgets] Rule Reorders

Implement drag and drop rule reorders using the native HTML5 API

* [Summary Widget] Test Data

Issue #1644

Add user-configurable mock data to test rules. Modify evaluator to
gracefully handle uninitialzed test data points.

* [Summary Widgets] Edit Mode

Enable edit mode for summary widgets, and make configuration interface
visible only when the user has entered edit mode

Fix collision between widget palettes and other interfaces where
palettes would permanently hide other menus

* [Summary Widgets] UI for scripted conditions

* [Sumamry Widgets] Destroy
Implement destroy

* [Summary Widgets] Cleanup
Remove unnecessary persist calls in Rule.js.
Remove generateDescription from refreshConditions and add it after refreshConditions to initCondition and deleteCondition
Throw error when unsupported callback is passed in condition.js, return summary widget instance in plugin.js instead of wrapping in new object for view
Add request properties to telemetry request for providers that support it
Remove check for editing when persisting, in SummaryWidget.js
2017-11-28 13:23:15 -08:00
5a49ac16b1 Merge pull request #1417 from ev1stensberg/URLIndicator
[BUILD] Adds URLIndicator
2017-11-24 10:17:04 -08:00
91b150c064 icon -> cssClass 2017-11-24 10:04:59 -08:00
9506d309b0 [TEST] Add Unit Test for URLIndicator
Adds the first test for the URLIndicator.

[DOCS] fix docs api indenting

fix linting

fix linting

fix docs
2017-11-24 10:04:59 -08:00
c9bd60f50e [BUILD] Adds URLIndicator along with documentation
Adds URLIndicator to the build, testable adding

`openmct.install(new openmct.plugins.URLIndicatorPlugin({
url: 'http://localhost:8080/',
icon: 'check',
interval: 15000,
label: 'Localhost'
}))`

to the openmct file. Also added Documentation about the plugin.
2017-11-24 10:04:59 -08:00
cf15ff5c07 [imagery] fix for issue #1799 (#1814)
* [imagery] fix for issue #1799
if there is no immediately new imagery incoming, forward to latest image in history on un-pause

* add test to check whether image is forwarded to latest image on un-pause
2017-11-22 11:10:53 -08:00
6bbdfcdfbe [Table] Retain rows in scope (#1813)
* [Table] Push rows in as they are added

...such that sorting does not cause real-time table rows to be lost.
Fixes #1738

* [Table] Test adding rows

* [Table] Fix code style in test

https://github.com/nasa/openmct/pull/1813#pullrequestreview-78277635
2017-11-22 11:05:03 -08:00
06e93ff520 Merge pull request #1721 from nasa/persistence-issue-1593
[persistence] uncaught in promise error fix for issue #1593
2017-11-21 14:14:35 -08:00
550e7a15e6 [persistence] fix for issue #1593
prevent EditorCapability#finish from calling transactionservice#cancel when transactionService was not active - leading to console error everytime user would leave edit mode

Add tests for changes made and also to check for return type in either case (isActive or not)
2017-11-21 12:07:59 -08:00
71c54cd541 Merge pull request #1794 from nasa/open599b
[Timeline] Add resource graphs by drag-and-drop
2017-11-17 16:44:59 -08:00
e81b8e53dc Merge pull request #1797 from nasa/object-provider-fix
[API] get with keystring, fix transitional race condition
2017-11-17 09:00:00 -08:00
84e6928f54 Merge pull request #1809 from nasa/file-saver-1808
[Build] Update file-saver dependency
2017-11-14 16:08:08 -08:00
ba688fe62c [Build] Update file-saver dependency
Fixes #1808
2017-11-14 14:27:43 -08:00
c533e10352 [API] get with keystring, mark methods not implemented
Update Object API such that get supports calls with either a keystring or an
identifier.

As save and delete are not implemented and  have different calling signatures,
implement them as separate methods so they can be documented separately.
2017-11-01 12:16:06 -07:00
04f47b3db6 [Timeline] Test MCTResourceGraphDrop's dragleave handler 2017-10-30 12:44:51 -07:00
717fa5edf4 [Timeline] Test MCTResourceGraphDrop's drop handler 2017-10-30 12:42:18 -07:00
14f5f048fb [Timeline] Test MCTResourceGraphDrop's dragover handler 2017-10-30 12:40:08 -07:00
72929500d3 [Timeline] Begin adding spec for MCTResourceGraphDrop
...to follow up on PR #1195, which fixes #599
2017-10-30 12:25:59 -07:00
471adde923 [Swimlanes] Check for valid swimlane
Issue #599. Also switches class toggle from scope based to element
based.
2017-10-30 12:07:52 -07:00
6c5d5f3d00 [Swimlanes] Implement resource graph directive
Issue #599
2017-10-30 12:07:52 -07:00
2262fef29b [Swimlanes] Add resource graph drop directive
Issue #599
2017-10-30 12:07:49 -07:00
bda30f1475 Merge pull request #1787 from nasa/fixed-position-panels
[Fixed Position] Fixed position displays now show image URLs
2017-10-30 11:31:37 -07:00
bfec434369 Merge pull request #1793 from nasa/layout-regression-1790
[Layout] Fix regression in selecting object when it's dropped
2017-10-30 09:43:49 -07:00
14df350994 [Layout] Fix regression...
...by clearing the selection only if the selected object is no longer in the compositon and there's no newly dropped object.

Fixes # 1790
2017-10-27 18:18:09 -07:00
80582f5e8d [Fixed Position] Do not just show range values, be more flexible to other telemetry types. Fixes #1740 2017-10-24 11:44:06 -07:00
7442768ced [List] Use standard format for modified/persisted times (#1737)
* [List] Use standard format for modified/persisted times

This provides consistency with other times and dates in the user interface,
and also provides a meaningful sort order due to the use of ISO formats for
standard date/time presentation. Fixes #1730.

* Remove unused dependency
2017-10-20 18:25:49 -07:00
77c7bdfdec [Timers] Follow timers from timelines (#1694)
* Squashed commit of the following:

commit f1dc1ce152e186da0d10c8e77d920ac0a76c9bc2
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 14:35:38 2017 -0700

    [Timers] Rewrite JSDoc for FollowTimerAction

    https://github.com/nasa/openmct/pull/1694/files#r137604769

commit 7ab0693cc983f8a04ac8ee9002f4d776b06a869a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 14:27:53 2017 -0700

    [Timer] Expect domain objects from FollowIndicator test

commit ff89c0849d16ab451bfd2fddd9202cf36940f599
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 14:26:28 2017 -0700

    [Timer] Add JSDoc for new method

commit 2a0343352eca241dfc28a4aa0b3832e3e6928864
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 14:24:59 2017 -0700

    [Timeline] Update TOI tests

    ...to account for refactoring out of tick handling.

commit 01cbaafc72870fab4ada5894637ae5721214933d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 14:17:25 2017 -0700

    [Timeline] Update dependencies for TOI test

commit 6bd5c378566362dce331e7c200dea87f0b08ecc6
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 14:15:21 2017 -0700

    [Timers] Update timerService tests with dependencies

commit b0793865c5131e17a58786ec356d67f2f2bba4c5
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 14:09:54 2017 -0700

    [Timers] Declare vars to satisfy JSHint

commit 9d2a63f7fe61dadf68255d795512ec55f532c533
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 14:07:12 2017 -0700

    [Timeline] Handle stopped timer

commit 30871270514730f3f2f12482075e5140bb97fa1f
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 13:59:08 2017 -0700

    [Timer] Tweak refactored timer logic

commit 53ad127ba7cf679377dc865301612a1d78399324
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 13:53:36 2017 -0700

    [Timer] Convert times from timerService

    ...to reduce resposibilities for TOI controller.

commit f8341133cf23df383b8f6e4815b88e0066ebd2bc
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 13:03:37 2017 -0700

    [Timeline] Factor out timer knowledge

commit aebd9e0ac223971b868b03343dbe4c61c6eb4849
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 12:34:58 2017 -0700

    [Timeline] Consistently use this

commit 48ac427a20c5c343aecdbd54b068d8691f7830b6
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 12:33:57 2017 -0700

    [Timeline] Remove unused tick binding/call

commit ea62f0a15ba4ab5de53213bbed14599eaf878d70
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 12:10:59 2017 -0700

    [Timeline] Retrieve timestamp on demand

commit f53bd04b5e343b22ea52b431785ade891577bb6a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 12:07:55 2017 -0700

    [Timeline] Update clocks on bounds events

    https://github.com/nasa/openmct/pull/1694/files#r137603081

commit 51d8e376ee46aafa13cd9a969c6f03885e10dafb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 11:40:33 2017 -0700

    [Timeline] Don't listen for non-existing tick events

commit 5cc40c488cec5e7453c2fe1dea5e5a4fa3509ecd
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 11:39:21 2017 -0700

    [Time] Revert Time API changes

    https://github.com/nasa/openmct/pull/1694/files#r137603081

commit c55c8bc627bf0a7f3cfd04b604b82d15ff469ab9
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 11:37:40 2017 -0700

    [Timeline] Finish testing TOI controller

commit af5cea5f2f172a309568d477dfdf11b8d45e74bb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 11:06:47 2017 -0700

    [Timeline] Test TOI controller

commit ba64db68b132fa431e8ccdb533024bf2850f9712
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 10:06:41 2017 -0700

    [Timers] Test timerService

commit 247e663b326ec5b8145b832af9b26086204baea3
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 10:05:24 2017 -0700

    [Timers] Remove unused timerService method

commit 8d741ad5744e1b7deb669dbaa0f3d30e4eb5866e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 09:59:32 2017 -0700

    [Timers] Remove unused timerService dependency

commit b59c8917bdef5ec3e54c8857d993d86547cfe177
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 09:58:10 2017 -0700

    [Timers] Remove unused timerService event

commit f15dd9827f835a814dc40a6201c90268a60ed64a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 09:49:09 2017 -0700

    [Timers] Test timer-following indicator

commit 2501f11af8c0b2aed9ebf16ffd28c0003b2701c2
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 09:42:54 2017 -0700

    [Timer] Complete test coverage for FollowTimerAction

commit aa2be83fc15cd68ee6de4d9f8205dc2fcba8c35b
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 7 09:35:37 2017 -0700

    [Timers] Begin testing Follow Timer action

commit d9062e0b0ff351b141dcb646972053ec72292d53
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 16:45:18 2017 -0700

    [Timeline] Remove unused variables

commit 79ebe4dd2b2aefc1e83ea8142588ed0715b3c269
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 16:39:22 2017 -0700

    [Timeline] JSDoc for TOI controller

commit 330f6b465188555e8e59f4eaf8ce1875b5335846
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 16:30:58 2017 -0700

    [Timeline] Use different icon to follow time bounds

commit f0a3b628e6d1d843324085edd563b68997f5a215
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 16:30:46 2017 -0700

    [Timeline] Simplify TOI following initialization

commit e76f3d1d525e0d19845b4c5b457995e60c416ad0
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 16:27:07 2017 -0700

    [Timeline] Add toggle to follow time bounds

commit 8ec072c0a2a953c074e0c327430dd68f27894ffb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 16:19:25 2017 -0700

    [Timeline] Follow TC bounds based on boolean

commit 206a26734dedc267af6d298a77658aa261ca4fea
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 15:37:12 2017 -0700

    [Timeline] Tune bounds following

commit 19563bdf53a036c7bf09c52924425a1902b243bb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 15:19:19 2017 -0700

    [Timeline] Remove unused method

commit 293981ec55ad115d7bd90b92f5bd090df64bd7c2
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 15:18:59 2017 -0700

    [Timeline] Only update timestamp on tick

    Leave bounds-following to the bounds event

commit 9180e15971d2043f0999a16f0aa8794273bcfc74
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 14:43:01 2017 -0700

    [Time] Document tick event

commit c7b163dff0d94aaea86b76647501f21623b353e1
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 14:39:57 2017 -0700

    [Timeline] Stop listening on destroy

    ...from the TOI controller.

commit ca7def3cf98e1eaf6c3aeb16cf9fd79452c86bd0
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 14:32:40 2017 -0700

    [Timeline] Remove surplus watches

commit 367e7afa94ae1ed448e39f13be804c62e2bfcf00
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 14:30:14 2017 -0700

    [Timeline] Very deltas are valid before panning

commit 7ee94f316e90d046015266a2a9168e349ff73345
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 14:28:10 2017 -0700

    [Timeline] Scroll with TOI only while in view

commit 9d7bb431119b7bc6ddc86f0058718e4385478518
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 10:36:46 2017 -0700

    [Timeline] Utilize zoomController.bounds

commit f151b9e8adfd235c31e32bef5fddab835efa7c8f
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 10:35:57 2017 -0700

    [Timeline] Add methods to set zoom bounds

commit c3d0b9876ab79c18003838ed3315045c5fb2ddbb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 10:32:08 2017 -0700

    [Timelines] Observe bounds changes

    ...to synchronize zoom with Time Conductor, #1688

commit 58adafc46f231b0fd92827d10c377131166ff39c
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 09:37:07 2017 -0700

    [Timers] JSDoc for TimerService

commit a325a8d5085bf1a4c9aa3ab20771308d4789765a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 09:12:50 2017 -0700

    [Timeline] Re-tweak follow scroll calculations

    ...for visibility.

commit 41e4bf153607b081aaf92253fa2b21300e2f0ea7
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 09:03:45 2017 -0700

    [Timeline] Tweak follow scroll calculations

    ...for visibility.

commit 08a5b9f14ab629a310dc27a3771ca454f1187327
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 08:59:45 2017 -0700

    [Timeline] Replace debug output with scroll updates

commit 26585ecd61341b4ee89abd8ee866e705a02bbc9a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 08:59:07 2017 -0700

    [Timeline] Move TOI to scrollable area

commit 654eda027c3c67a3a0ff33136109ca27d14762ba
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 08:56:07 2017 -0700

    [Timeline] Begin implementing TOI following

commit 552f67a11ce439be58ab7ca7884c46241a25adee
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 6 08:55:51 2017 -0700

    [Timeline] At zoom-to-time method

    For use by time-of-interest controller, #1688

commit 37acbfd458740b2c3176875f83d37f0fdf57e727
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Aug 30 12:46:33 2017 -0700

    [Timeline] Remove other excess $apply calls

    ...although this should make us nervy about those callbacks being
    invoked in different ways.

commit 0e72847c9ba59f957efa2d412cb77c024afa9e63
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Aug 30 12:44:27 2017 -0700

    [Timeline] Remove $apply from $watch callback

    ...to avoid an infinite digest loop.

commit bade0fd9f60101d5b1b782cd28e608af493c9076
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Aug 30 12:42:18 2017 -0700

    [Timeline] Begin adding TOI line to template

commit f94034a3b4136f6b174155397084f8cdb22ce544
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Aug 30 12:11:25 2017 -0700

    [Timers] Add missing semicolon, satisfy JSHint

commit cb465b94011e7432cc7e4d9e815641f97dc61d7a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Aug 30 12:08:45 2017 -0700

    [Time] Verify that tick event is emitted

commit 7c84a86a33ceb73ba6a06801374ea3f89793c450
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Aug 30 11:59:06 2017 -0700

    [Time] Emit tick events from Time API

    https://github.com/nasa/openmct/pull/1694

commit d319a783fcd882c03eb7d9a81fec33898016384e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Aug 30 11:56:28 2017 -0700

    [Timeline] Sketch in TOI controller

    ...to position/follow time-of-interest, relative to the active timer.

commit 2dbdb2627450039d69dbfd10eed2c100207e061a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Aug 29 12:57:47 2017 -0700

    [Timers] Use timerService

    ...to coordinate between action and indicator

commit f94a2358eaf0366bd4da2b44e69ccb62b153c5db
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Aug 29 12:52:22 2017 -0700

    [Timers] Use TimerService from Follow Timer action

commit a720c2ec2cda4a300d26167f4717f0571bedcbfd
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Aug 29 12:50:31 2017 -0700

    [Timers] Expose TimerService through bundle

commit e32bbc3e232d25f7c5dba98674781e4f263c4870
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Aug 29 12:49:03 2017 -0700

    [Timers] Sketch in timer service

    ...which will keep track of the active timer used to interpret SET
    for Timelines.

commit a038c2b1d8fd34c2874fa8fc0421fa7ba53e11ab
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Aug 29 12:41:05 2017 -0700

    [Timers] Register indicator

commit 0e93ae87a1cccc4f3a0636844625b64ccb77a7ae
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Aug 29 12:39:21 2017 -0700

    [Timers] Skeleton for time following indicator

commit e806386891639740e9fe3d8641c2f60ab5a88eac
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Aug 29 09:37:14 2017 -0700

    [Timers] Register the Follow Timer action

commit 008aa95932070459dcc6fa1d918a23dac8df7592
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Aug 29 09:35:08 2017 -0700

    [Timers] Skeleton for Follow Timer action

    ...to synchronize the time conductor with a particular Timer. #1688

* [Timers] Remove unused variable to pass lint checks

* [Timers] Frontend updates for time-of-interest

Squashed commit of the following:

commit 370b910d36
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Sep 20 10:59:00 2017 -0700

    [Frontend] Fix in FollowIndicator.js

    Fixes #1688

commit 883d1feb32
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Sep 20 10:36:56 2017 -0700

    [Frontend] Styling and content on Follow indicator

    Fixes #1688

commit cff85fbbde
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Sep 20 10:09:19 2017 -0700

    [Frontend] Styling complete on Follow Line

    Fixes #1688

commit 563a86b69f
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Sep 18 16:05:53 2017 -0700

    [Front-end] WIP Markup and CSS for Follow Line

    Fixes #1688
    Added line icon, style refinement;

commit fc49e5d023
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Sep 18 15:07:35 2017 -0700

    [Front-end] WIP Markup and CSS for Follow Line

    Fixes #1688
    Moved TimelineTOIController up 2 levels of markup hierarchy
    to allow Follow Lines, one in each split pane;
    Follow LInes markup and CSS in progress;

commit 8ec3c42291
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Sep 13 16:46:14 2017 -0700

    [Frontend] WIP Timeline Follow Line

    Fixes #1688
    VERY WIP! Initial move of styles into classes;

* [Timeline] Follow up on front-end updates

Fixes #1688

Squashed commit of the following:

commit 817c7f31289b3e7631c3332d2192a68f21f50f9e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 21 12:47:48 2017 -0700

    [Timeline] Initialize lastWidth

    ...to avoid clamping values before a width has actually been observed.

commit 5f7324c1cdb0cbef6385fbccac31b0404d216f95
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 21 12:21:11 2017 -0700

    [Timeline] Clamp right edge of zoom

    ...to avoid getting stuck in a weird scrolling state for large
    timer values.

commit 076aca112392e65835e7a01ac8e28780d24bfff1
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 21 12:02:23 2017 -0700

    [Timeline] Don't set scroll.x to negative values

    ...avoids mispositioning timer-following line,
    https://github.com/nasa/openmct/issues/1688#issuecomment-330373625

commit ac9bdb919df69fac65b297487131e2c41204ebeb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 21 11:32:49 2017 -0700

    [Timers] Loosen test expectation

    Resolves build failure https://circleci.com/gh/nasa/openmct/4181
    by reducing test specificity for indicator display name.

* [Timer] Handle mutations to followed timers

Fixes #1741

Squashed commit of the following:

commit 5fdd156dc9089baac2e975a85373146e0b788731
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Oct 5 12:18:06 2017 -0700

    [Timer] Test mutation observation

    ...to verify resolution of root cause for #1741

commit 348b193fd45fc457d4b56bc1ddb2249aab65afba
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Oct 5 12:15:05 2017 -0700

    [Timers] Update expected API usage in Follow Timer test

commit 7a584dd993d68c4c50a99ac66976420b5931893c
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Oct 5 12:12:11 2017 -0700

    [Timers] Update spec for timerService

    ...to account for use of openmct.objects

commit ad396a79f0bad9dfc5382745943dd34ddcee1bef
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Oct 5 12:10:25 2017 -0700

    [Timer] Observe timer mutations

    ...such that followed timer remains in sync with timer model,
    e.g. during navigation. Fixes #1741
2017-10-20 18:05:35 -07:00
07d9769966 Merge pull request #1786 from nasa/pass-row-as-structure-1785
[Controls] pass item as structure
2017-10-20 17:29:48 -07:00
385b6177b2 [Controls] pass item as structure
Pass the item to child controls inside of a composite instead of
the row object.   Thus, options are correctly passed to children.

Fixes #1785.
2017-10-20 17:19:11 -07:00
7f68d26433 Merge pull request #1642 from nasa/view-api-implementation
[ViewAPI] implement initial view API
2017-10-20 17:11:28 -07:00
d7b44f8d09 Initial functional view API implementation. See #1642 2017-10-20 12:40:21 -07:00
c4cd36e15b Merge pull request #1783 from nasa/remove-circleci-push
[Build] Remove unused steps from circleci configuration
2017-10-19 19:28:02 -07:00
618a6e7e8d Remove unused steps from circleci configuration. Fixes #1782 2017-10-19 15:51:26 -07:00
63a8c91f71 Merge pull request #1781 from nasa/view-destroy
[Views] Clear regions on destroy
2017-10-19 12:17:24 -07:00
e59020fec7 [Views] Clear regions on destroy
Clear regions when a view is destroyed. This causes a view's
destroy method to be correctly invoked, allowing views to do
cleanup. Used by NSS heatmap view for sprint Alice,
https://github.com/nasa/openmct/projects/1
2017-10-19 10:57:53 -07:00
a2e424203a Merge pull request #1777 from nasa/iframe-border-1776
[Frontend] Review and integrate the death of iframe borders
2017-10-13 20:59:50 -07:00
16853644cb [Frontend] Kill iframe borders dead!
Fixes #1776
2017-10-13 17:05:37 -07:00
2272766c57 Merge pull request #1743 from nasa/layout-issue-1731
[Layout] Deselect object after removal
2017-10-13 13:48:59 -07:00
1d9cdea2d4 Merge pull request #1767 from nasa/inline-edit-bug-1757
[Edit] Prevent blur to update the model after return key is pressed
2017-10-13 13:07:05 -07:00
715219c44d [Edit] Fix the issue with currentTarget being null and HTML being added on Enter
Remove the line break that is added when the return key is pressed.

Check the current target directly.

Use textContent for inline editing instead of innerHTML, which will hoist up some HTML content implicitly created around user input for a contenteditable span.

Note that there is a removeAllRanges in addition to a blur here; see
https://stackoverflow.com/questions/4878713/how-can-i-blur-a-div-where-contenteditable-true

Fix broken tests.

Fixes #1757
2017-10-13 11:50:40 -07:00
00dc2875bf [Layout] Deselect object after removal
If the selected object is not in the composition, deselect it.

Add tests.

Fixes #1731
2017-10-10 15:39:29 -07:00
8703f363b8 Merge pull request #1744 from nasa/inspector-issue-1276
Inspector issue 1276
2017-10-10 15:33:27 -07:00
26210eaa50 make reviewer requested changes 2017-10-10 14:37:25 -07:00
a4a1cb5e05 fix tests by adding listen function, and fix lint/checkstyle errors 2017-10-10 13:32:42 -07:00
9570f2f7a1 Merge pull request #1766 from nasa/inline-edit-1746
Allow inline-editing for editable objects only
2017-10-10 12:43:07 -07:00
eb4ded39b3 [Edit] Allow inline-editing the name only if the object is editable
Made the contenteditable attribute conditional based on whether the object can be edited or not. If the object is not editable, the attribute is removed.

Add Tests.

Fixes #1746
2017-10-10 12:32:51 -07:00
7deb3cd025 add if statement to check is objects are not equal before reassigning metadata 2017-10-03 14:34:01 -07:00
06779e6cd9 add mutation listener to Inspector Controller 2017-10-03 13:33:09 -07:00
7f43c0bf1a Add Notebook icon (#1742)
* Add Notebook icon

Fixes #1739
Added to Style Guide as well

* Add icomoon project file

Fixes #1739
2017-10-02 13:09:58 -07:00
bfa3bbcdc7 Merge pull request #1735 from nasa/import-export-1695
Review and integrate usage of new Import/Export glyphs
2017-09-25 16:50:11 -07:00
2baf3f8bb0 Merge pull request #1733 from nasa/create-menu-1729
Review and integrate super-menu fixes and enhancements
2017-09-25 16:29:54 -07:00
10ac13ac5c [Front-end] Updated to use new glyphs
Fixes #1695
2017-09-25 15:22:35 -07:00
138cb199bb [Front-end] Markup and CSS refinements
Fixes #1729
Internal markup and CSS now sets heights
internally - menu height will now not be smaller
than the list of menu items OR the description
area;
2017-09-25 14:59:12 -07:00
374c363a78 [Plot] Handle telemetry panels from plot policy (#1732)
* [Plot] Check for telemetry panels

...from plot view policy, and don't try to interrogate them
for telemetry metadata that they will not have.

Fixes #1728

* [Plot] Update test case for policy

...to provide an adapted object with expected properties

* [Plot] Add tests to very plot policy for panels

...to verify fix for #1728
2017-09-25 14:27:32 -07:00
e9cb5cd639 [Front-end] Scrollbar-related color and padding
Fixes #1729
2017-09-25 12:08:59 -07:00
bc7d92ee0d [Front-end] Menu tweaks
Fixes #1729
Mini super-menu and related description text
2017-09-25 12:08:04 -07:00
78f49784a0 [Front-end] Tweaks
Fixes #1729
CSS and markup mods to convert
to flex from abs pos;
2017-09-25 11:10:58 -07:00
8754c438cc Merge pull request #1725 from nasa/legacy-telem-source-mapping
[Telemetry] Legacy adapter handles source remap
2017-09-21 11:47:07 -07:00
1419c75503 Inline edit object names (#1700)
* Inline edit object name.

Change the title-label span to a conteneditable span to allow editing object names inline. Implement a controller to handle updaing the name. Add tests.

Fixes #1679

[Front-end] Add span contenteditable to input styling
[Front-end] Styling for contenteditable span
styling for span[contenteditable].s-status-editing in _controls.scss;
removed s-filter class;
[Front-end] min-width added to .s-inline-edit

* [Frontend] Style tweaks, cleanup and simplification

Fixes #1679

Style sanding on .s-inline-edit; added
:focus outline:0 to select in _controls.scss;

New .s-input-inline class; removed ng-class from object-header.html,
uses :focus instead; refactoring of input-related mixins;

Bring Time Conductor real-time inputs into parity

Apply .s-input-inline to TC inputs; finesse .s-input-inline selector;

Prevent nested inline inputs from editing

Fixed nested editing prevention selector

* Create an object header template for objects inside a frame.

Fix code review requests.

Fixes 1679
2017-09-21 11:16:04 -07:00
ca8cad0a74 [Telemetry] Legacy adapter handles source remap
Update the Legacy Telemetry Adapter to handle source remapping
for telemetry which has it.

fixes https://github.com/nasa/openmct/issues/1724
2017-09-21 10:51:16 -07:00
a3a55d3b48 [Build] Modify version info injection to fix sourcemaps (#1708)
* [Build] Preserve comments instead of adding header

...to avoid disrupting sourcemaps. Fixes #1707

[Build] Remove extraneous horizontal rule from header

[Build] Remove obsolete header-handling

...as this is handled by the replace task after fix for #1707

[Build] Move version headers into start.frag

...so that UMD boilerplate does not wrap it.

[Build] Handle version info entirely in start.frag

[Build] Replace build variables in start.frag explicitly

[Build] Inject build info dynamically

[Build] Test MCT.specifyBuildInfo

[Build] Mark BUILD_CONSTANTS as global for jshint

[Build] Give names to version line items

[Build] Fix specifyBuildInfo test case

* [Build] Update fix to sourcemaps for code review feedback

https://github.com/nasa/openmct/pull/1708

[Build] Move build info registration to plugin

https://github.com/nasa/openmct/pull/1708#discussion_r138999027

[Build] Use build info plugin

...instead of specifyBuildInfo

[Build] Revert changes to MCT, per code review
2017-09-20 11:50:17 -07:00
e66f818996 Merge pull request #1714 from nasa/plot-telem-fixes
Plot telem fixes
2017-09-18 15:54:52 -07:00
ae5ef33487 [Plot] Update policy to detect any range
Update policy to detect any range.  As a simple way to prevent
detecting messages, it will not apply when every range is a string
format.

fixes https://github.com/nasa/openmct/issues/1713
2017-09-16 09:58:58 -07:00
59c5430579 [Generator] API Compatibility
The telemetry API does not pass request options for subscriptions, updated
generator provider to match this API.

fixes https://github.com/nasa/openmct/issues/1705
2017-09-16 09:37:48 -07:00
6d52f094d9 Merge pull request #1703 from nasa/text-size-1496
Text size control for text and telemetry elements
2017-09-14 16:00:07 -07:00
740db8da75 [Fixed Position] Add tests and fix checkstyle error.
Fixes #1496
2017-09-14 15:15:15 -07:00
68abc15ed5 [Frontend] Fix alignment and font-size issues in tool-bar
Fixes #1496
2017-09-14 15:02:22 -07:00
bb47feb517 [Fixed Position] Text size control for text and telemetry objects
Add a select control for text and telemetry objects to allow setting text size. Set the default size to 13px.

Fixes # 1496
2017-09-14 14:49:28 -07:00
469820fb0f Merge pull request #1712 from nasa/link-1710
Review and merge fixes for Hyperlinks
2017-09-14 12:15:09 -07:00
92dd99b26c Merge pull request #1711 from nasa/pause-button-1704
Review and merge fix for hidden Imagery controls
2017-09-14 12:13:56 -07:00
9fe1923189 [Front-end] Fixes for Hyperlinks
Fixes #1710
Converted to span to confine clickable area
to text only;
Link now uses `overflow: hidden` in frame;
Normalized font-size when .s-button;
2017-09-14 11:05:05 -07:00
42ddb38629 [Front-end] Cleanups to imagery in frame
Fixes #1704
Imagery now lays out better when very small
in a Layout; refactored .left and .right classes;
2017-09-14 10:37:41 -07:00
fe60d7abbc [Front-end] Fix CSS targeting
Fixes #1704
Pause/play and New Tab buttons now
display properly;
2017-09-14 10:25:34 -07:00
54b975f242 Merge pull request #1699 from nasa/imagery-issue-1676
Imagery issue #1676
2017-09-12 11:28:40 -07:00
7f75e089e8 remove workaround for Imagery Thumbnail resizing from MCTSplitPane and add box sizing to thumbs wrapper to fix phantom resizing 2017-09-11 16:35:14 -07:00
8e8c66280f Fix for Issue #1676
Add history imagery under large imagery view.
Allow users to click on history imagery thumbs to set main image and pause the imagery view.
Allow users to unpause and continue imagery stream.
Users can adjust the height of the imagery panes, and the user selected height is persisted.
2017-09-11 12:51:04 -07:00
d3d874e209 Merge pull request #1702 from nasa/glyphs-update-import-export
[Glyphs] Add import and export icons
2017-09-11 12:01:04 -07:00
ce561e1598 [Glyphs] Add import and export icons
For #1695
2017-09-11 11:41:19 -07:00
7290601a37 Merge pull request #1698 from nasa/plot-metadata-1684
[Telemetry] Provide legacy domains/ranges
2017-09-06 08:31:47 -07:00
ea5a85ffd1 [Telemetry] Verify legacy domains/ranges conversion
Verify that domains and ranges are populated in legacy telemetry
metadata when converted from the current telemetry metadata API.
2017-08-30 09:44:38 -07:00
eb196ea521 [Telemetry] Convert to legacy domains/ranges
When requesting metadata via the legacy telemetry capability,
add fields for ranges/domains to avoid breaking legacy views.
Fixes #1684
2017-08-30 09:31:02 -07:00
b6a8078634 Merge pull request #1692 from nasa/timeline-issue-1686
update mct-split-pane to use userPreferenceWidth only when alias is p…
2017-08-29 11:56:27 -07:00
e53b34ed60 move newPosition check from mctSplitPane to splitter 2017-08-29 11:50:20 -07:00
13ffa3e3c4 Merge pull request #1693 from nasa/fix-selector-1685
Fix Selector Pool Control
2017-08-29 11:36:47 -07:00
0e3b629d90 update changes requested by victor and update corresponding tests 2017-08-29 11:27:01 -07:00
23216e5aee [Frontend] Restored commented SASS
Fixes #1685
2017-08-29 11:24:40 -07:00
5b366e91c1 Merge pull request #1665 from nasa/import-export
[Import/Export] [WIP] Allows for import and export of domain objects

Fixes #593
2017-08-29 11:19:29 -07:00
aa336dfd57 fix gulp checkstyle errors 2017-08-29 10:45:41 -07:00
556296096d fix tests to correspond with changes made to MCTSplitPane 2017-08-29 10:34:44 -07:00
e4aaa860a3 update mct-split-pane to use userPreferenceWidth only when alias is provided, otherwise set position as usual (fix for timeline sync issue) 2017-08-29 10:15:29 -07:00
2079a74ab2 Merge pull request #1691 from nasa/apimd-typo
[Documentation] Fix typo
2017-08-29 09:49:49 -07:00
4b86439b8a [Documentation] Fix typo
Omitting checklist; changes to documentation only
2017-08-29 09:43:08 -07:00
a4d8e8ff90 Merge pull request #1683 from nasa/limits-1677
Review limit and status CSS classes
2017-08-28 12:35:24 -07:00
3674808a13 [Import/Export] Adds Import and Export functionality
Added context actions for importing and exporting JSON representations of domain objects. Added FileInputService for triggering file picker and retrieving uploaded data. Also added a File Input form control for integration with MCTForms.
2017-08-25 19:28:29 -04:00
10c0c29f64 [Frontend] Doc style tweak
Fixes #1677
2017-08-23 16:16:53 -07:00
fa1a942184 [Frontend] Content tweak
Fixes #1677
2017-08-23 16:12:14 -07:00
e205bf1fa4 Merge pull request #1666 from nasa/layout-issue-1658
Added selection capability for the panels in layout. Also, added a to…
2017-08-22 17:31:52 -07:00
cecd708dd1 Layout selection and show/hide frame
Added ability to show/hide object frames via a toggle button in the
edit toolbar. All objects have frames by default except for ‘hyperlinks’.
Also, implemented object selection in the layout and added tests for new features.

Fixes #1658.
2017-08-22 16:45:34 -07:00
aa36417590 [Frontend] Limits and Status classes
Fixes #1677
Style Guide content updates;
Reviewed against current master for regression;
TO-DO: review against new plot functionality;
2017-08-22 10:27:37 -07:00
e6c78f6d8b [Frontend] Style Guide updates for status classes
Fixes #1677
WIP, needs regression unit testing
2017-08-22 10:09:01 -07:00
747afa6200 [Frontend] WIP
Fixes #1677
Refactor and re-organize alert and status colors;
Rename _limits.scss to _status.scss;
Style Guide additions in progress;
VERY WIP, NEEDS UNIT TESTING FOR REGRESSION.
2017-08-17 16:32:25 -07:00
019cdde1c6 Merge pull request #1655 from nasa/subscribe-once
[Telemetry API] many subscribes -> one provider subscribe
2017-08-17 16:24:57 -07:00
c7e26a231a [Style] Remove unnecessary comments 2017-08-17 16:13:49 -07:00
f3b519d47b Merge pull request #1672 from nasa/paneController-Issue#1670
Fix for Pane controller issue#1670
2017-08-17 16:10:20 -07:00
c472ab044b Add functionality to allow users to add hideParameters to the url, which will hide tree and/or the inspector
New Tab automatically appends hideTree and hideInspector params to hide those panes by default
Add appropriate tests for new functionality and fix broken tests
2017-08-17 15:25:01 -07:00
008f1387ed Merge remote-tracking branch 'origin/master' into limits-1677 2017-08-17 14:56:11 -07:00
6ed76708ec [Frontend] WIP adding status classes
Fixes #1677
2017-08-17 11:30:00 -07:00
c2ff81bad1 [Frontend] Add .w-mct-example to mct-example.html
Fixes #1677
2017-08-17 11:28:14 -07:00
a6c3d98ddd [Frontend] Update Style Guide to add Status Indication
Fixes #1677
2017-08-17 11:27:35 -07:00
603e990755 [Frontend] Refactoring of limits CSS
Fixes #1677
Removed `<tr>` support; modded existing styles to allow
color-only application for red and yellow limits; added
`*-icon` classes for red and yellow limits;
2017-08-17 09:08:12 -07:00
586901aee7 Merge pull request #1663 from dtailor90/master
persist user preference width for MCTSplitPanes issue #1646
2017-08-16 15:31:26 -07:00
449923feae Persist User preference widths for MCTSplitPane
Fix to Issue #1646
Persist MCTSplitPane widths to local storage, thus when user reloads, the Panes maintain dimensions
Use persisted widths if available otherwise use default
Add tests for localStorage and fix failing tests
2017-08-16 15:04:33 -07:00
ae461f71b4 Merge pull request #1675 from nasa/limit-example-telemetry-response-sizes
[Example] Limit telemetry responses to 5000 records
2017-08-16 10:34:24 -07:00
5243b3748d [Example] Limit telemetry responses to 5000 records
Update example telemetry providers to limit the number of
datums generated so that queries for long time ranges will
not cause undesired behavior in demos.
2017-08-15 14:34:36 -07:00
82a661b884 Merge pull request #1674 from nasa/hyperlink-styling
Hyperlink styling
2017-08-14 13:04:26 -07:00
f5a92f66db [Front-end] Hyperlink styling
Change icon for Hyperlink
2017-08-14 12:40:00 -07:00
0417b7e32d [Front-end] Hyperlink styling 2017-08-14 12:38:01 -07:00
7c9a6bd817 [Front-end] Integrate Hyperlink related changes from #1685 work
Fixes #1685
(cherry picked from commit 4dff369)
2017-08-14 12:18:19 -07:00
a58c484d71 Merge pull request #1673 from nasa/glyph-update-frame
[Frontend] Updated glyphs
2017-08-14 09:38:07 -07:00
43b92647fb [Frontend] Updated glyphs
Updated art for glyphs for
icon-frame-show and -hide;
2017-08-11 14:35:21 -07:00
e8eb34f5c3 Merge pull request #1660 from sahajp23/master
Updated Hyperlink Domain Object with suggested changes
2017-08-11 14:10:25 -07:00
fa57688709 Bug fix for hyperlink in Display Layout 2017-08-11 11:59:27 -07:00
5ac377ec6a Merge pull request #1667 from nasa/glyphs-update
Glyphs update 08-08-2017
2017-08-08 12:54:26 -07:00
c523480b48 [Glyphs] Updated icomoon 16px project file 2017-08-08 11:47:29 -07:00
4dc09975d0 [Style Guide] Glyphs additions and subtractions
Removed unused 12px glyphs;
Added 16px crosshair;
Fixed erroneously removed overlay plot glyph;
Updated style guide content
2017-08-08 11:41:55 -07:00
29a472ae5d [Style Guide] Tweak Style Guide CSS 2017-08-08 10:38:41 -07:00
3e2fd8967a The second update of the Hyperlink Domain Object with fixed changes 2017-08-03 14:34:43 -07:00
9e429802c2 Merge pull request #1657 from nasa/handle-invalid-time-url
[Time] Handle missing time system gracefully
2017-08-02 15:51:04 -07:00
6cfee100d7 Merge branch 'master' into handle-invalid-time-url 2017-08-02 15:44:18 -07:00
eeb214204d Merge pull request #1662 from nasa/revert-1659-master
Revert "persist user preference width for MCTSplitPanes issue #1646"
2017-08-02 10:53:07 -07:00
b41ceab51e Revert "persist user preference width for MCTSplitPanes issue #1646" 2017-08-02 10:48:57 -07:00
10b0f43fc1 Merge pull request #1659 from dtailor90/master
persist user preference width for MCTSplitPanes issue #1646, updated MCTSplitPane to handle logic regarding localStorage
2017-08-02 10:48:51 -07:00
593c1adf56 updated mctSplitPane to handle all logic regarding persisting userPreferenceWidth to local storage 2017-08-02 10:46:14 -07:00
2d1ee80322 [Glyphs] Update glyphs
Add grid snap and layout show/hide frame
glyphs
2017-08-01 15:50:30 -07:00
7555eab1e3 [Glyphs] Bring in updated version of glyphs
Add glyphs from summary widgets
2017-08-01 15:43:32 -07:00
4923bcbd85 [Glyphs] Bring in updated version of glyphs
Add glyphs from summary widgets
2017-08-01 15:40:43 -07:00
5a7fdf82ac persist user preference width for MCTSplitPanes 2017-08-01 12:00:21 -07:00
a5f6940d67 Updated version of hyperlink with suggested changes made
modified:   src/defaultRegistry.js
2017-08-01 11:51:42 -07:00
4571205871 [Time] Handle missing time system gracefully
When loading the application and no time system is set,
the url handler should not cause multiple errors to be
logged.

This adds a test for the case but does not specify the
expected behavior in detail, other than "it should not
crash."

Fixes bugs as reported here.
2017-07-27 15:38:42 -07:00
34c3763421 Merge pull request #1635 from nasa/historical-imagery
[Historical imagery] [WIP]: Add historical view for image telemetry
2017-07-26 11:36:21 -07:00
e45a686c5a [Telemetry] Combine subscriptions for points
The telemetry API detects when a subscription has already been made for a
given domain object and does not subscribe for that object a second time.
Removes a concern from those developing telemetry providers.

Also ensures that telemetry providers ALWAYS get request options, even if
no request options were provided.

Adds basic tests for the Telemetry API to validate this behavior.

Fixes https://github.com/nasa/openmct/issues/1594
2017-07-21 16:38:47 -07:00
1c33157fb8 [Telem] Handle no range values
Update the telemetry adapter to gracefully handle cases where
a range value is not found via hints.  This allows telemetry objects
that don't have ranges to still work with some old style displays
2017-07-21 16:29:54 -07:00
ed6ae23dc0 [Historical Imagery] JSDoc, code review style changes
Added $element dependency and JSDoc for private methods. Autoscroll is now enabled by default when there is an active clock. Inline comments removed.
2017-07-14 13:05:59 -07:00
23839b05b0 Merge pull request #1643 from nasa/open1641
[Open 1641] Change warnings to info messages
2017-07-13 17:23:10 -07:00
6aed3bb0b5 Merge pull request #1638 from nasa/only-time-change-when-changed-1636
[Time API] Only change time when changed
2017-07-13 17:11:59 -07:00
1ae62cde05 [Browse] Don't klobber params when preventing default
When browse controller is hijacking a browser navigation event,
it calls preventDefault on the route change.  This has the effect
of preventing all changes in the location (including search changes).

This change checks if other changes were made in the route change and
re-applies them after the navigation has completed.

Fixes a bug where navigating via a link that contained additional
search paramterers would have the effect of navigating but not
keeping the parameters in tact.

Discovered in the course of fixing #1636
2017-07-13 16:48:38 -07:00
4e7e5bb783 [Time] Conductor changes based on click not scope
Update time conductor so that it triggers changes when the user
selects them instead of when the scope is updated.  Prevents spurious
changes from being triggered by the conductor when it updates
in response to a time API change.

Fixes #1636.
2017-07-13 16:48:38 -07:00
efc46613bb Updated TelemetryCapability.js
removed outdated comment.
2017-07-13 16:47:24 -07:00
218ef16160 [Imagery] Implemented historical view for imagery
Implemented auto-scrolling historical imagery view in ImageryController. Imagery domain objects now request historical data on each manual bounds change. Added new specs for ensuring that historical data is requested on bounds change and duplicate bounds / datum are ignored.
2017-07-12 12:13:57 -07:00
fb0a577d16 [Open1641] Updated the spec files to check for info messages instead of warning messages 2017-07-10 09:46:51 -07:00
19b5e7c781 [Open 1641] Change warnings to info messages 2017-07-06 15:55:29 -07:00
0794c0edf7 Merge pull request #1640 from nasa/fix-error-on-table-destroy
[Resize] don't trigger callback after being destroyed
2017-07-05 17:24:16 -07:00
89515bb896 verify that eval isn't called after destroy 2017-07-05 16:48:09 -07:00
318aecb7bc Merge pull request #1634 from nasa/open1405
[Fixed Position] Add numerical inputs for size and position of elements
2017-07-05 11:45:36 -07:00
a4b857a034 [Fixed Position] Change default behavior for old elements
For elements created before this change where useGrid is not defined,
default it to true to ensure consistent display size

Inline constant definitions in unit tests if they are only used once
2017-07-05 10:58:13 -07:00
d82230dea4 [Resize] don't trigger callback when destroyed
Prevent MCTResize from triggering a callback after it is destroyed.

Fixes https://github.com/nasa/openmct/issues/1509
2017-07-04 17:03:25 -07:00
cb242d8efb [TimeAPI] check for change before triggering
Update the TimeSettingsURLHandler to check for changes to the search
parameters and only trigger a bounds change when there is a change.

Added integration tests between Time API and settings url handler.

Prevents extraneous bounds events.

Fixes https://github.com/nasa/openmct/issues/1636
2017-07-04 15:09:56 -07:00
aa8f780e4e [Fixed Position] Add unit tests 2017-06-29 15:22:39 -07:00
3ed0880c6e [Fixed Position] Add unit tests for new code
Refactored ElementProxy and UnitAccessorMutator slightly to improve encasulation. Added unit tests for UnitAccessorMutator
2017-06-29 13:14:38 -07:00
40c68e6399 [Fixed Position] Change UI pixel/grid toggle to checkbox
Change the input for grid units/pixels to a simple checkbox toggle from a
dropdown menu.

Add a new specialized AccessorMutator class to support this operation.
2017-06-28 15:19:18 -07:00
65500736da [Fixed Postion] Update unit tests for new code 2017-06-28 13:38:35 -07:00
b9ab97eb7f [Fixed Position] Add ability to work in pixel space
Fix code style issues per Victor's review

Add toggle to work in pixel space or grid space, per the issue description.
Each element stores a boolean property that determines whether or not it
snaps to grid space or pixel space. Coordinates are converted between spaces
on toggle, preserving the size of the element in pixels.

To complete: change UI element for toggle to a checkbox.
2017-06-28 12:37:14 -07:00
34ef98e0cd Merge pull request #1595 from dhrubomoy/timezone_dropdown_feature
[CLOCK] Allow clock to set timezone with autocomplete dropdown option.
2017-06-26 16:51:30 -05:00
825f50262c [Fixed position] Incorporate numberfield control
Fix style and merge issues
2017-06-26 11:15:09 -07:00
a6079936e8 [Fixed position] Incorporate numberfield control 2017-06-26 11:07:20 -07:00
542b7a6f20 [Fixed Position] Incorporate numberfield control
Change inputs from textfield to new numberfield input, remove internal type checking in favor of input validation
2017-06-26 10:57:47 -07:00
2a8c3977a4 [Fixed Position] Incorporate new numberfield inputs
Changed inputs from textfields to numberfields, and removed internal
type checking for these inputs
2017-06-26 10:52:04 -07:00
515ea7caf8 [Layout] Code Style Issues 2017-06-26 09:36:31 -07:00
65993bd77f [Layout] Code style
Fix code style issues
2017-06-26 09:36:31 -07:00
54e07ccfdd [Layout] Line endpoint coordinate editing
Added appropriate line endpoint coordinate editing input fields
2017-06-26 09:36:31 -07:00
2e6fcec1c3 [Layout] Consistent input behavior
Inputs now handle invalid input consistently for all fields
2017-06-26 09:36:31 -07:00
f992fcebe1 [Layout] Consistent input behavior
Inputs now consistently default to 0 when left empty
2017-06-26 09:36:31 -07:00
280c838735 [Layout] Add numerical inputs for fixed-position layout
Added individual property inputs to the toolbar for height, width, x,
 y, and line endpoint coordinates in fixed/bundle.js.

Added "edit<Property>" AccessorMutators for height and width to each
of the element proxies, so these properties can be exposed only for
elements where it makes sense (e.g. boxes, but not lines, since lines
are better controlled by endpoint coordinates).

Added a method "checkNumeric" to ElementProxy.js , to be used
to restrict inputs to integral values for position and size
 textfield inputs.

Current issues: endpoint coordinate inputs have undexpected behvaior,
handles disappear after using the input fields to modify element
properties.
2017-06-26 09:36:31 -07:00
445dfb3d91 Merge pull request #1633 from nasa/revert-1632-historical-imagery
Revert "Historical imagery "
2017-06-25 21:51:31 -07:00
bc616ecdee Revert "Historical imagery " 2017-06-25 20:46:09 -07:00
895c9b12e6 Merge pull request #1632 from nasa/historical-imagery
Historical imagery
2017-06-25 20:45:19 -07:00
95e68fce57 Integrated historic and realtime telemetry in imagery timeline view, added sass constast for timeline hover color 2017-06-25 13:02:04 -07:00
9f4f771774 Updated stylesheet 2017-06-25 13:02:04 -07:00
05290593e9 Added imagery timeline view for telemetry sources and placeholder template for displaying historical imagery 2017-06-25 13:02:04 -07:00
2aa2d9d4bb Merge pull request #1629 from nasa/number-input
Review and integrate new Number input for mct-control
2017-06-25 12:53:11 -07:00
7b690d0785 Revert "[Autocomplete] Show warning icon if invalid option was typed"
This reverts commit 307320b3ff.
2017-06-25 14:58:28 -04:00
39fe2fd7b6 [Layout] Code Style Issues 2017-06-23 16:04:34 -07:00
b661b4737e [Layout] Code style
Fix code style issues
2017-06-23 14:47:01 -07:00
9ca8975baf [Documentation] Add number input
Fixes #1628
numberfield added to .md files;
2017-06-23 14:32:21 -07:00
5f7eeeae30 [Layout] Line endpoint coordinate editing
Added appropriate line endpoint coordinate editing input fields
2017-06-23 13:48:33 -07:00
537656303a [Layout] Consistent input behavior
Inputs now handle invalid input consistently for all fields
2017-06-23 11:42:52 -07:00
e7ba13f844 [Frontend] Add number input
Fixes #1628
Add template and bundle info for numberfield;
Styling in general and toolbar contexts;
2017-06-23 11:07:24 -07:00
64bf63c18a [Layout] Consistent input behavior
Inputs now consistently default to 0 when left empty
2017-06-23 10:57:50 -07:00
ac3f638b35 [Layout] Add numerical inputs for fixed-position layout
Added individual property inputs to the toolbar for height, width, x,
 y, and line endpoint coordinates in fixed/bundle.js.

Added "edit<Property>" AccessorMutators for height and width to each
of the element proxies, so these properties can be exposed only for
elements where it makes sense (e.g. boxes, but not lines, since lines
are better controlled by endpoint coordinates).

Added a method "checkNumeric" to ElementProxy.js , to be used
to restrict inputs to integral values for position and size
 textfield inputs.

Current issues: endpoint coordinate inputs have undexpected behvaior,
handles disappear after using the input fields to modify element
properties.
2017-06-23 09:28:49 -07:00
a3520ba51e Merge pull request #1625 from nasa/example-historical-imagery
Example historical imagery
2017-06-22 16:18:49 -05:00
8e0b7fce7f Merge pull request #1627 from nasa/time-system-key
[Time] Tolerate unset Time API properties from URL handler
2017-06-22 13:09:31 -07:00
52f5bea215 [Time] Add clarifying comment to NULL_PARAMETERS 2017-06-22 12:58:14 -07:00
26b4e5498f [Time] Tolerate unset Time API properties
...from the URL handler. Fixes nasa/openmct-tutorial#14
2017-06-22 12:51:44 -07:00
ce733628b2 [Time] Add test cases for URL handler
To reproduce root cause of nasa/openmct-tutorial#14
2017-06-22 12:40:02 -07:00
307320b3ff [Autocomplete] Show warning icon if invalid option was typed 2017-06-21 22:35:32 -04:00
504b2e1ecf [Autocomplete] Update test 2017-06-21 18:14:14 -04:00
73e452edc0 [Imagery] Update spec 2017-06-21 14:56:51 -07:00
bbeb97e93c [Imagery] Use LAD query 2017-06-21 14:21:51 -07:00
e6d65f3549 [Example] Add historic, lad imagery providers 2017-06-21 14:17:18 -07:00
1ab4cf68d7 [example] 5 seconds per image 2017-06-21 13:56:18 -07:00
f20c8b7d99 Fix code style and add missing semicolons 2017-06-21 15:29:28 -04:00
17a067752f [Forms] Remove redundant mctClickElsewhere 2017-06-21 14:31:55 -04:00
7fcaf6510e Merge pull request #1614 from nasa/open1569
Fixed tabbing in overlay forms
2017-06-21 11:24:23 -07:00
0713941812 [Time] Encode time settings in URL (#1620)
* [Time Conductor] Skeleton class for URL handling

#1550

* [Time Conductor] Scaffold in param handling

* [Time Conductor] Finish sketching in URL handler

* [Time Conductor] Usage correct constants for bounds

* [Time Conductor] Use start/end for bounds/deltas

* [Time] Move URL handler

Per discussion, https://github.com/nasa/openmct/issues/1550#issuecomment-308849449

* [Time] Rename URL handler

* [Time] Rename URL handler script

* [Time] Use Time API from URL handler

* [Time] Utilize Time API

* [Time] Listen for changes, synchronize URL

* [Time] Move URL handler into adapter

...as it uses Angular constructs.

* [Time] Wire URL handler into adapter bundle

* [Time] Pass correct constructor arguments to URL handler

* [Time] Begin debugging URL handling

* [Time] Clarify and correct logic for bounds/deltas in URL

* [Time] Define timeSystem

* [Time] Pass start/end into time API as numbers

...instead of strings.

* [Time] Avoid creating redundant objects

* [Time] Restructure fixed vs clock logic

* [Time] Stop clock correctly for fixed mode

* [Time] Fix hasBounds/hasDeltas logic

...given that both inputs will be strings when read from search params,
_.isFinite was doomed to return false.

* [Time] Check for complete information

...before updating Time API to reflect search state. Additionally,
flatten logic to ease readability.

* [Time] Begin testing TimeSettingsURLHandler

* [Time] Test fixed mode query string updates

* [Time] Test realtime mode query string updates

* [Time] Test update of time API from query params

* [Time] Add missing semicolons

Satisfies JSHint; fixes #1550
2017-06-21 11:23:18 -07:00
1d7d56d5e7 Merge pull request #1613 from nasa/open1592
[Frontend] Fixed markup to allow scroll of results
2017-06-21 11:10:14 -07:00
ba9941891d Merge pull request #1612 from nasa/no-keyframe-anims
Review and merge no-keyframe-anims branch
2017-06-21 11:08:23 -07:00
d3b313d8aa Merge pull request #1619 from nasa/enable-tc
[Time Conductor] Enable time conductor in dev environment
2017-06-19 18:37:43 -07:00
e2f0f61862 Implement new folder List view (#1610)
* refactored code for listView

* minimum viable folder list functionality

* moved listview directory inside of platform/features

* [Folder ListView] First Code Review Fixes

Changes made:
Updated listview icon as the hamburger menu.
Injecting listview template as textfile instead of using the template's url.
Added callback to $scope to listen for $destroy to release resources for the mutation listener and the gesture recognizer.
Refactored ListViewController formatting function to use map instead of foreach.
Added listview plugin to the default registry.
Updated table styling.

* working progress commit. ListViewControllerSpec is implemented and all tests are passing. MCTGestureSpec is not fully implemented. Testing the gestureService release is in progress.

* All tests in MCTGestureSpec and ListViewControllerSpec are passing.

* ListViewControllerSpec and MCTGesture Tests all passing.

* refactored variable names in ListviewController to make more sense.

* [Frontend] Styling of Luis's list view WIP

Fixes #1615
This will have conflicts with Luis's work,
be careful!

* [Folder ListView] Second Code Review Fixes

Changes made:
updated listview to utilize open-mct sorting style.
added license comments to all files.
modified mctgesture interface to use $scope.eval().

* [Frontend] Styling of Luis's list view WIP

Fixes #1615
New list-view glyph added

* [Frontend] Styling of Luis's list view WIP

Fixes #1615
Changed name of "Items" view to "Grid";

* [Frontend] Styling of Luis's list view WIP

Fixes #1615
Updated icomoon project file with new list-view
glyph e1042;

* [Folder ListView] Second Code Review Fixes

Changes made:
updated listview to utilize open-mct sorting style.
added license comments to all files.
modified mctgesture interface to use $scope.eval().

* [Frontend] Styling of Luis's list view WIP

Fixes #1615
Refined cursor CSS;

* [Frontend] Styling of Luis's list view WIP

Fixes #1615
Added logic to refine how sorting occurs:
now, clicking a table header that wasn't
the orderByField always sorts by its default;
2017-06-19 18:35:18 -07:00
ecdcebce0c Merge pull request #1606 from nasa/headers-1541
[Build] Remove/reorganize version headers
2017-06-19 18:22:17 -07:00
5fbf71264e Merge pull request #1563 from nasa/open-623
[Timers] Add stop button
2017-06-19 18:20:25 -07:00
8519e7660f [Time Conductor] Enable time conductor by default
Supports #1550.
2017-06-15 16:29:52 -07:00
e75d1f62ec Merge pull request #1600 from nasa/imagery-updates
[Imagery] Update metadata for images
2017-06-13 16:30:33 -05:00
1c9a9baf77 [Imagery] Check for pending updates when unpausing
https://github.com/nasa/openmct/pull/1600#discussion_r119931468
2017-06-13 14:25:35 -07:00
44246e6973 [Frontend] Modified tabindex of search input
Fixes #1569
2017-06-13 14:14:39 -07:00
61f59a94e4 [Frontend] Fixed markup to allow scroll of results
Fixes #1592
2017-06-13 09:24:42 -07:00
a8a689f69a [Frontend] WIP remove keyframe anims
Fixes #1603
Remove keyframe anims from transition to edit mode
and border-color anim in _messages.scss;
2017-06-09 11:40:58 -07:00
e3bd22de8c [Autocomplete] Minor refactoring 2017-06-07 23:01:14 -04:00
c7787aa1f0 [Frontend] WIP remove keyframe anims
Fixes #1603
Remove keyframe anims from transition to edit mode
2017-06-06 16:18:22 -07:00
3870266131 [Autocomplete] Clicking the arrow will display the entire list of timezones
This change is based on the  following code review:
- Display the entire list of timezones, regardless of what's currently entered.
- As soon as the user typed (or deleted chars in the input) then that filtration would take over the list display
2017-06-06 18:55:16 -04:00
98cc19c637 [Autocomplete] Check if indexed filteredOptions is defined 2017-06-04 17:49:31 -04:00
c1128c3156 [Build] Move version comment header into template file
Fixes #1541
2017-06-02 12:40:23 -07:00
485944a782 [Build] Normalize whitespace in header template 2017-06-02 12:24:25 -07:00
beb24adf7a [Build] Simplify header template 2017-06-02 12:23:57 -07:00
6de5f73d78 [Build] Remove obsolete version header 2017-06-02 12:19:37 -07:00
35b51d151d Merge pull request #1598 from slinto/mct1541
[Build] Include version information in openmct.js
2017-06-02 14:09:45 -05:00
b2333d83d2 [Imagery] Update policy spec
Fixes #1591
2017-06-01 18:46:22 -07:00
7513f24ff3 [Imagery] Update value testing in spec 2017-06-01 18:34:26 -07:00
cb9231f453 [Imagery] Set up test mocks 2017-06-01 18:16:15 -07:00
1c9230029d [Imagery] Begin updating spec 2017-06-01 15:46:58 -07:00
e300b49c95 [Imagery] Normalize whitespace in policy 2017-05-31 16:05:57 -07:00
f6cd35a631 [Imagery] Fix code style issues in spec 2017-05-31 16:04:56 -07:00
53cecb8909 [Imagery] Add missing semicolon, remove unused vars 2017-05-31 16:02:12 -07:00
95188f6ce6 [Documentation] Document image hint 2017-05-31 15:57:20 -07:00
8c7e8dab8e [Imagery] Use consistent field name 2017-05-31 15:52:15 -07:00
305d2f60d0 [Build] Include version information in openmct.js 2017-05-31 09:35:55 +02:00
7cdb8db775 [Autocomplete] Hide options if clicked elsewhere. 2017-05-30 23:14:05 -04:00
7f14397262 [CLOCK] Issue #1273 : Use '$ scope.field' to avoid hard-coding. 2017-05-30 16:20:12 -04:00
893e24ff98 [CLOCK] Issue #1273 : Allow clock to set timezone with autocomplete dropdown option. 2017-05-28 20:21:52 -04:00
b60eb6d6ae WIP refactor for new telem api 2017-05-22 18:30:01 -07:00
26a7fee869 Convert example imagery to plugin 2017-05-22 14:48:12 -07:00
1bdc0497c7 Merge pull request #1437 from nasa/view-large
[Layout] Add view large button for zooming
2017-05-19 16:29:19 -05:00
04c2eac9ef [Layout] Add view large button for zooming
Fixes #1437
Markup and CSS for `view large` button in frame context;
Sass formatting cleanups; removed unused styles from
_layout.scss; mods to MCTTriggerModal.js to remove
button label functionality;

Added new "icon-expand" glyph and class;

Fixes #1437
Fixes #1423
New overlay > l-dialog and l-large-view classes;
Fix context-menu z-index to allow context menu
to appear in the overlay;
.object-top-bar refactored and replaced with
.object-browse-bar;
frame > hover now only displays local controls for
proper level, handles nested layout situation;
Fixed font-weight display issues;
MCTTriggerModal.js modified to do the following:
- Remove .frame classes when displaying object in overlay
- Allow click on this overlay .blocker to dismiss overlay

Fixed min-width issue incorrectly targeting .object-browse-bar in frame context;

Added expand anim to large view holder;
Changed close button icon

Significant mobile styling and cleanups;
Markup mods for overlay.html;
Handles dialog on top of large view;
Form validation now displays better in mobile;
Updated /src/api/ui/dialog.html to be in-line
with /platform/commonUI/dialog/res/templates/overlay.html;
Moved border-radius from containerBase to btnBase mixins;

Animate with scale for GPU acceleration

Change desktop animation to use scale, so that it is hardware
accelerated and buttery smooth.  Also fixes text anti-aliasing
to improve readability.

Moved mobile/overlay/_overlay.scss styles into
overlay/_overlay.scss; removed mobile/overlay/_overlay.scss;
Cleanups in _overlay.scss; restored max-width/max-height
to dialogs (removed in #1376 for #1298) and added
min-width;

[Frontend] Mobile fixes in overlay and related

Fixes #1437
Added mobile-specific styling to _messages.scss;
Fixed button layout and margins in _overlay.scss;
Fixed message.html to not default to major style
buttons;

[Frontend] Timing tweaks

Fixes #1437
Moved large view expand transition duration
into theme _constants files; shortened anim
duration

Fix Style errors

[mctTriggerModal] correct scope for toggle

Correct scope for toggleFunction such that #1503 no longer occurs.

Fixes #1503

[Style] Add copyright header
2017-05-18 18:18:19 -07:00
5daaae36bc Merge pull request #1589 from nasa/protractor-cleanup
[README] Remove reference to protractor
2017-05-18 18:04:08 -05:00
3dea30b1e1 [README] Remove reference to protractor
Since protractor was removed, remove references in readme.
2017-05-18 15:56:43 -07:00
9f8578d79e Merge pull request #1586 from nasa/correct-format-updates
[TC] Update format on timesystem change
2017-05-18 15:01:19 -05:00
0fa5609396 Merge pull request #1587 from nasa/fix-search-indexing
[Search] Use new composition in search
2017-05-18 14:49:47 -05:00
9956ce31e5 [Search] Use new composition in search
Use private parts of new composition API for generic search indexer
so that all objects are properly accessible in search results.

Also prevent ROOT object from getting indexed but still traverse
composition.  That way, "The root object" no longer shows in search
results.

Update tests to cover changes.

Fixes #1579
2017-05-18 08:51:44 -07:00
25ff430368 [TC] Update format on timesystem change
Update the format when the timesystem changes.

Fixes https://github.com/nasa/openmct/issues/1585
2017-05-17 18:08:48 -07:00
cc9a2cbf4f Merge pull request #1584 from nasa/fix-tc-menu
[TC] Fix clock option selection
2017-05-17 13:41:01 -07:00
cd8c0fa72f [TC] Fix clock option selection 2017-05-17 13:12:36 -07:00
fff75d111e Merge pull request #1583 from nasa/time-defaults
Time defaults
2017-05-16 17:32:04 -07:00
f4df84bfa1 [Style] correct style 2017-05-16 17:26:29 -07:00
0dc65f5dfb [Style] Remove trailing commas
Remove trailing commas that snuck through in #1564.
2017-05-16 15:12:37 -07:00
6e4abcfed8 [Style] Fix style 2017-05-16 15:08:05 -07:00
e2f9a0c9cd [dev] proper realtime in dev environment
In dev environment, use proper realtime with a clock.
2017-05-16 14:58:46 -07:00
749a2ba088 [Docs] Update Time API docs
Update time API docs to accurately reflect usage of the time API.
2017-05-16 14:56:56 -07:00
b70501a7ed [Time] conditional timeSystem change without bounds
Allow timeSystem to be changed without specifying bounds when
a clock is present and can provide bounds.  This simplifies
bootstrap code.

https://github.com/nasa/openmct/issues/1581
2017-05-16 14:31:20 -07:00
b8ae741969 [Conductor] remove misleading error
When a menu option that specified an invalid time system with a
clock, the time conductor controller would log an error claiming
that the clock was unknown when in fact the time system is the
culprit.

Remove the error message as the plugin handles this validation
already.   Also removed some unused code.

https://github.com/nasa/openmct/issues/1580
2017-05-16 14:13:08 -07:00
9f32b4b9cd [Spec] Update spec for new usage
Add a test for new bounds setting behavior, update other tests
to provide correct mocks for new usage of APIs.

https://github.com/nasa/openmct/issues/1582
2017-05-16 13:49:12 -07:00
fbf736aaf7 [Conductor] improve validation, properly set defaults
Update conductor validation logic to trigger easier-to-understand
error messages for bad configurations.

Update default-setting-behavior to properly set clock and offsets
when the default option is clock-based menu option.

Only set defaults when timeSystem has not already been configured.

fixes https://github.com/nasa/openmct/issues/1580
2017-05-16 13:07:17 -07:00
344a325cb5 [Time] Tick when clock set
Update time API to tick immediately after setting a clock using
the currentValue of the clock.  This ensures that bounds will
be set when the clock is set, instead of waiting for the next
tick to occur.

fixes https://github.com/nasa/openmct/issues/1582
2017-05-16 12:39:16 -07:00
eb7f78799d Merge pull request #1564 from ivikash/chore/unused_varibales
chore: Remove unsed variables from codebase
2017-05-16 10:36:44 -07:00
57d3965fa6 chore: Remove unsed variables from codebase 2017-05-16 08:55:21 +05:30
2df999ef75 Merge pull request #1575 from nasa/guaranteed-request-properties
[Telem] ensure request has minimum fields
2017-05-15 12:08:55 -07:00
c2cd0db9a3 Merge pull request #1576 from nasa/separate-formats-from-timesystem
Separate formats from timesystem
2017-05-15 12:06:05 -07:00
04305b7fe5 Merge pull request #1577 from nasa/tc-err-msg
[Time Conductor] Fix link in error message
2017-05-15 11:28:06 -07:00
d2f13354a7 [Time Conductor] Fix link in error message 2017-05-12 12:31:38 -07:00
a9067892f4 [Docs] Update format docs
Remove examples of format implementations.  The docs stated
incorrectly that UTCTimeFormat used the additional parameters
for the format method when it did not actually use those
parameters.

With our current landscape of telemetry providers, parse can
frequently be called on an already parsed value, so added
documentation to highlight the importance of an idempotent
parse method.

Cleanup related to change of file locations in:
https://github.com/nasa/openmct/issues/1574
2017-05-10 17:47:14 -07:00
88223f5e6d [Time] Always include basic formats
Always include basic formats; removing them from the utc format
bundle.  This way, they can be utilized by third parties without
them having to commit to the utc time system.

Fixes https://github.com/nasa/openmct/issues/1574
2017-05-10 17:41:25 -07:00
6310be623a [Telem] ensure request has minimum fields
Ensure telemetry request options always have a certain number
of fields-- start, end, and domain.  This allows telemetry providers
to implement necessary filtering for these types of requests.
2017-05-10 17:22:01 -07:00
6481ddbd7f Merge pull request #1573 from nasa/we-dont-depreciate
[Typo] Fix deprecation warning
2017-05-10 14:54:37 -07:00
258020624c Merge pull request #1571 from nasa/standardize-type-name
[Types] label -> name
2017-05-10 14:51:25 -07:00
29d65e9cef Merge pull request #1547 from nasa/no-error-on-root-load
[Browse] Handle missing path and nav to root
2017-05-10 14:51:07 -07:00
31a605c153 [Typo] Fix deprecation warning
we don't depreciate... we deprecate code.
2017-05-10 14:48:55 -07:00
08a8207f64 Correct Typo, check with hasOwnProperty
Update warning message with correct wording, and change
check for label property such that a blank label will also
trigger the deprecation warning.

Addresses feedback from https://github.com/nasa/openmct/pull/1571
2017-05-10 14:39:47 -07:00
5a9ca08984 Merge pull request #1572 from nasa/standardize-value-hints
Standardize value hints
2017-05-10 13:43:42 -07:00
0a3d51c6b5 [Telem] add backwards compat and warning
Add backwards compatibility for x/y hints, and log a warning to
console when x/y hints are encountered.

Fixes https://github.com/nasa/openmct/issues/1546
2017-05-09 19:20:03 -07:00
81208d617f [Spec] Update specs for new calls
Update specs to expect 'domain' instead of 'x'.

Fixes https://github.com/nasa/openmct/issues/1546
2017-05-09 19:02:10 -07:00
7ba83b639a [Sinewave] Remove unused files
Remove unused files in the sinewave generator.
2017-05-09 18:57:40 -07:00
6c093160c2 [Sinewave] Remove old config
Remove old time conductor configuration that doesn't do anything
in the current version of the application.
2017-05-09 18:55:57 -07:00
7706109c81 [Sinewave] Get rid of broken format
Not sure what the Delta value was intended to display, but the
format wasn't working as expected (as far as I can tell), so
removed it for simplicity.
2017-05-09 18:54:29 -07:00
00bebbc66f [Sinewave] Use newstyle metadata
Update sinewave generator to use newstyle metadata.

https://github.com/nasa/openmct/issues/1546
2017-05-09 18:53:15 -07:00
3df7e30d2c [Telemetry] x/y -> domain/range
Update source to use domain/range instead of x/y.

https://github.com/nasa/openmct/issues/1546
2017-05-09 18:51:57 -07:00
c674627ebd [Docs] x/y -> domain/range
Update docs to reference domain and range.  Also added additional
documentation for the Telemetry API based on a previous draft of
the docs.

https://github.com/nasa/openmct/issues/1546
2017-05-09 18:36:37 -07:00
c5161887e2 [Types] label -> name
Change label to name, log a warning to console if a typeDef
is registered with a label.

Fixes https://github.com/nasa/openmct/issues/1568.
2017-05-09 17:55:15 -07:00
f8a04d0fc2 [Timer] cssclass to cssClass
Along with preceding changes, fixes #623
2017-05-03 16:32:41 -07:00
6e1a43130d [Timers] Simplify mutation calls 2017-05-03 16:15:17 -07:00
906646704e Merge remote-tracking branch 'origin/master' into open-623 2017-05-03 16:05:03 -07:00
4e15d8fa1f Merge pull request #1479 from nasa/open1233a
Review and publish Open MCT Style Guide v1
2017-05-02 12:01:25 -07:00
1f250dd8e7 Merge pull request #1553 from nasa/time-api-redo
[Time API] V1.0 Time API and associated refactoring
2017-05-01 17:11:19 -07:00
95202611ea [Time Conductor] Removed redundant getTimeSystem function 2017-05-01 16:55:53 -07:00
d88e905c65 [Time Conductor] Fixed TOI directive which was not being included 2017-05-01 16:24:34 -07:00
abb7230231 [Time Conductor] Fixed or disabled failing tests 2017-05-01 16:19:11 -07:00
92d2ec7cf4 [Time Conductor] Addressing comments from code review 2017-05-01 15:01:24 -07:00
46a51bd8db [Time API] Fixed static code analysis issues 2017-05-01 13:29:14 -07:00
6680db0b31 Merge pull request #1551 from nasa/msl-units
[Example] Add units to MSL example.
2017-05-01 13:23:12 -07:00
9ff602a655 [Example] Updated copyright statement in MSL data dictionary 2017-05-01 13:07:32 -07:00
37c9c6dfaf [Time Conductor] Made corrections to Time API documentation. Added a key field to the NumberFormat so that it can be used with the new format registration mechanism 2017-05-01 11:27:00 -07:00
0981e99256 [Time API] Updated API documentation to include new Time API options. 2017-04-30 23:21:48 -07:00
0793442518 [Time API] Provided 'AddFormat' method for registering new formats 2017-04-30 23:21:13 -07:00
31897ec520 [Time Conductor] Misc. bug fixes, additional documentation for conductor elements, moved and renamed LAD tick source 2017-04-29 16:02:25 -07:00
6628f93823 [Time API] Updated documentation for Time API 2017-04-29 16:01:20 -07:00
8fb9306272 Merge branch 'master' into open-623 2017-04-29 17:10:27 -05:00
52b6815687 Removed redundant undefined check, and renamed allTimeSystems to getAllTimeSystems 2017-04-28 16:27:07 -07:00
f17417a541 [Time API] Modified public Time API to support registration of time systems and clocks, setting of active clock, simplification of clocks and time systems, setting of offsets(deltas) and other changes as per #1265 and #1474. Refactoring of UI code to support changes. 2017-04-28 16:03:59 -07:00
69b06364eb [Example] Add units to MSL example. Recreates functionality from the old live demo 2017-04-27 19:02:35 -07:00
1d7d963a4f Merge pull request #1548 from nasa/no-recursive-mutation-on-composition
[API] track composition before notifying listeners
2017-04-27 14:46:02 -07:00
910d746002 [API] track composition before notifying listeners
Track the updated composition of an object before notifying any
listeners.  Otherwise, any composition listener that mutates the
object would cause an infinite loop.

Detected in implementation of the new plot.
2017-04-27 14:19:38 -07:00
f02f1d47f1 [Browse] Handle missing path and nav to root
When no path is specified, don't throw error.  Navigate
to default, as expected.

When navigating to root, navigate to the last child
of root instead.  This handles cases where DEFAULT_PATH
is not found (e.g. deployments without "mine").
2017-04-27 14:14:35 -07:00
beaf8af2e8 Merge pull request #1544 from nasa/open1543
[Telemetry] Use the 'source' metadata field to retrieve telemetry metadata, if available.
2017-04-27 13:50:04 -07:00
fce8f13984 Remove check for invalid return, update spec
Remove a check for an invalid return value, update the spec to
return the proper value.  Also updated the subscribe method
to fetch defaults the same as the request method.

https://github.com/nasa/openmct/pull/1544
2017-04-27 13:43:54 -07:00
bcdad3f19c Merge pull request #1506 from nasa/table-parse-change
[Table] parse/format with datum
2017-04-27 11:43:40 -07:00
058dfb0c87 Merge pull request #1490 from nasa/open1482
[Edit] Only persist on mutation if model has actually changed locally
2017-04-27 11:28:11 -07:00
2b41321c03 [Spec] Update API mock
Update telemetry api mock to return proper value formatters.
2017-04-27 11:20:25 -07:00
5db03bb1bd [Spec] update formatter mock, remove smelly test
Update the formatter mock to implement the expected methods, such
that formatting occurs properly.

Remove a test that was validating the execution of a method
as this was smelly-- it's not the method that is important, it's
the result (that couldn't be obtained without the method).
2017-04-27 11:15:05 -07:00
26e13a6cd0 [Telemetry] Use the 'source' metadata field to retrieve telemetry metadata, if available. Fixes #1543. 2017-04-26 21:19:55 -07:00
00f3b6ce5c Revert "[Telemetry] Use the 'source' metadata field to retrieve telemetry metadata, if available. Fixes #1543."
This reverts commit 11677b97ab.
2017-04-26 21:18:57 -07:00
11677b97ab [Telemetry] Use the 'source' metadata field to retrieve telemetry metadata, if available. Fixes #1543. 2017-04-26 21:15:52 -07:00
281559e84b [Test] Removed example/*.html from karma.conf.js
Fixes #1233
2017-04-26 15:05:35 -07:00
5f8a35ecc0 Merge branch 'master' into open1233a 2017-04-26 12:24:47 -07:00
fd3312734c Merge pull request #1534 from jdsandifer/patch-3
[Documentation] Edit for clarity and style
2017-04-25 16:37:41 -07:00
6d0476fa0a Merge pull request #1538 from nasa/readme-update
[Docs] Link to correct tutorial
2017-04-25 16:26:02 -07:00
e41289d694 Merge pull request #1533 from jdsandifer/patch-2
[Documentation] Include 2017 in copyright
2017-04-25 16:23:50 -07:00
95db207b33 Merge pull request #1532 from jdsandifer/patch-1
[Documentation] Include 2017 in copyright
2017-04-25 16:22:50 -07:00
222f852af4 [Edit] Only persist on mutation if model has actually changed locally. Fixes #1482 2017-04-24 21:35:42 -07:00
2a7e6c1173 [Docs] Link to correct tutorial
Link to correct tutorial in readme.

Fixes https://github.com/nasa/openmct/issues/1535
2017-04-24 16:29:41 -07:00
f07934f512 Merge pull request #1519 from nasa/mct1456
[Duplicate] Differentiate between user cancellation and other errors
2017-04-24 15:39:18 -07:00
8830ee8c2d Merge pull request #1537 from nasa/open1536
[Style] Fixed build error in master due to extra comma in array
2017-04-24 12:46:44 -07:00
2a173f67c8 Merge pull request #1522 from nasa/open1494-other
[Fixed Position] Updated fixed position view to use new Telemetry API
2017-04-24 12:45:37 -07:00
0c5881a1a4 [Style] Removed extra comma that was doing checkstyle a concern. 2017-04-23 17:55:52 -07:00
ec4fe8efb3 Merge pull request #1518 from nasa/copyright-1517
[Licenses] Update copyright year to 2017
2017-04-23 17:22:01 -07:00
922ace1719 [Documentation] Edit for style
Edited for consistent period and parentheses usage throughout:
 - Removed periods at the end of each element in a list of nouns.
 - Placed periods outside parenthetical statements that aren't complete sentences themselves.
 - Placed periods at the end of sentences without punctuation.
2017-04-23 08:10:13 -07:00
8e82a4a66d [Docs] Edit for clarity
Around line 143, gave "constants" its own bullet point. Although it is a form of variable or field, it also forms a separate style element with a different guideline. It's also easier to find when skimming when separated - for new contributors who need to learn the style, and veteran contributors who are just double checking.
2017-04-23 07:48:42 -07:00
f6abcf08a7 Include 2017 in copyright
Extends copyright dates to 2017 to contribute to #1517
2017-04-22 16:04:25 -07:00
fbe43f9ab7 Include 2017 in copyright #1517
Extended main copyright to 2017 on line 3.
2017-04-22 15:50:40 -07:00
7c7803310b Merge pull request #1429 from slinto/reduce-d3-size
[Optimization] Reduce D3 dependency size
2017-04-19 16:49:57 -07:00
c27053e716 Merge pull request #1520 from nasa/open1485
[Live demo] Remove CSS selector for `button`
2017-04-19 09:42:55 -07:00
d4fdaf9cbc [Fixed Position] Updated fixed position view to use new Telemetry API
Added TelemetryCollection to handle bounds and buffering. Avoids loss of telemetry due to timing mismatch between telemetry providers and tick sources
Fixed issues with removal and addition of objects
2017-04-14 18:22:43 -07:00
DJ
5aa93ba50c [Timer] Back-end code cleanup and removed unused code
Cleaned up code by removing unused and unneeded code and the tests associated with it
2017-04-09 18:40:22 -05:00
77ca3e9033 [Frontend] Removed button selector - too broad
Fixes #1485
2017-04-07 16:41:01 -07:00
6219fa1d87 [Actions] Add CancelError class
eb91cd33be (r107502561)

Fixes #1456
2017-04-05 15:59:41 -07:00
0cbbeefd62 [Licenses] Update copyright year in About dialog 2017-04-05 15:07:50 -07:00
185567cf29 [Licenses] Update copyright year to 2017
Fixes #1517
2017-04-05 14:52:46 -07:00
7dd5da8993 Merge pull request #1487 from nasa/open1483
[Persistence] Prevent editing of objects that cannot be saved. Fixes #1483
2017-04-05 14:39:37 -07:00
95ac304afb Merge pull request #1504 from nasa/open1293
[API] Removed API classes from Open MCT prototype. Fixes #1293
2017-04-05 14:29:09 -07:00
80dc5a13b8 Merge remote-tracking branch 'origin/openmct-spec-1218' 2017-04-05 10:19:41 -07:00
b5abe6527b Merge pull request #1488 from nasa/open1480
Modified MSL data source to use a single cached connection
2017-04-05 10:06:29 -07:00
616aab4a2d Merge remote-tracking branch 'origin/open1415' 2017-04-05 10:03:44 -07:00
12e693941c Merge pull request #1500 from nasa/open1469
[Features] Added Autoflow Tabular to open source features. Fixes #1469
2017-04-04 16:38:50 -07:00
59c61e72b8 [Features] Added option to specify a type to exclusively apply the Autoflow view to 2017-04-04 16:33:36 -07:00
3ce954c68c Merge pull request #1505 from nasa/conductor-unpleasantness
[Time Conductor] Removed caching of UTC Time System defaults
2017-04-04 16:03:32 -07:00
df0d4dff6f Merge pull request #1515 from nasa/open1498
Removed contextualization warning.
2017-04-04 15:44:16 -07:00
a867cd6be0 Removed contextualization warning. Removed now redundant Contextualize service. Fixes #1498 2017-04-04 15:39:10 -07:00
b48dd4b63b [Testing] Test start event on MCT 2017-04-04 11:35:49 -07:00
35c457b7fb [Testing] Test MCT.setAssetPath 2017-04-04 11:25:35 -07:00
6870055033 [Testing] Test plugin installation 2017-04-04 11:19:45 -07:00
5f968b50f8 [Build] Enable coverage of src
For #1218
2017-04-04 11:16:24 -07:00
251438eefd Merge pull request #1508 from nasa/web-page-val-1507
[Web Page] Allow dashes in domains
2017-04-03 15:49:25 -07:00
c07a372c6e [Web Page] Simplify RegEx
https://github.com/nasa/openmct/pull/1508#issuecomment-291271270
2017-04-03 14:23:25 -07:00
f666a7ca09 [Web Page] Allow dashes in domains
Fixes #1507
2017-04-03 13:29:48 -07:00
0434928f55 [Table] parse/format with datum
Use formatter to parse format datum such that source remapping
is properly handled.
2017-04-03 09:46:41 -07:00
c27b37918a [Time Conductor] Removed caching of UTC Time System defaults which was causing gaps in plots. Fixes #1434 2017-03-31 15:39:13 -07:00
67eab82bd1 [Testing] Begin testing MCT
Fixes #1218
2017-03-31 12:42:47 -07:00
8d86ca05da [API] Removed API classes from Open MCT prototype. Fixes #1293 2017-03-30 11:03:14 -07:00
4d6a0d4931 Merge pull request #1493 from nasa/updated-docs
[Docs] Replace existing API documentation with V1 public API docs
2017-03-29 15:05:19 -07:00
4ae35576a5 [Features] Added Autoflow Tabular to open source features. Fixes #1469 2017-03-29 13:30:21 -07:00
af622599a5 [Docs] Updated API docs to reflect V1 public API
Cleaned up docs. Addresses #1473
2017-03-28 12:03:00 -07:00
12d1302138 Merge pull request #1459 from nasa/open1458
[Plot] Add current conductor bounds to telemetry requests via the old API.
2017-03-27 15:21:47 -07:00
09419398e9 [Telemetry] Added unit tests for addition of bounds and domains to telemetry requests 2017-03-27 14:53:41 -07:00
b69e03368a Merge pull request #1489 from nasa/open1484
[Example] Update images to be more rovery. Fixes #1484
2017-03-27 13:58:26 -07:00
4e457f1cf0 Fixed failing tests, and added new tests 2017-03-27 11:15:27 -07:00
4196da9f52 [Example] Update images to be more rovery. Fixes #1484 2017-03-26 17:52:14 -07:00
a59177447b [Examples] Modified MSL data source to use a single cached connection. Fixes #1480 2017-03-26 17:39:58 -07:00
529abcc4b0 Added composition policy to prevent composition of non-persistable parent, except in the case of a new object in which case the parent may change 2017-03-24 17:00:12 -07:00
1cb5dd021f Modified composition policies to consider object instances instead of types. Fixes #669 2017-03-24 16:59:30 -07:00
399b745084 [Persistence] Prevent editing of objects that cannot be saved. Fixes #1483 2017-03-24 14:01:39 -07:00
f09a76e23b Merge pull request #1478 from nasa/open1266
[Frontend] .form-row cleanups for Inspector
2017-03-21 11:57:39 -07:00
977aea45b3 [Styleguide] Removed example/msl
Fixes #1233
2017-03-21 10:50:42 -07:00
16b6a70e22 [Frontend] Cleanups for Inspector
Fixes #1266
2017-03-21 10:18:29 -07:00
9b38484438 [Styleguide] Intro content updated
Fixes #1233
2017-03-17 16:28:11 -07:00
77aa8c8374 Merge branch 'open1233a' of https://github.com/nasa/openmct into open1233a 2017-03-17 16:26:56 -07:00
856f3d2061 [Styleguide] Intro content updated
Fixes #1233
2017-03-17 16:26:11 -07:00
d712a96fdc [Styleguide] Diagrams and intro content updated
Fixes #1233
2017-03-17 16:22:50 -07:00
ba243e9093 Minor tweaks 2017-03-16 15:59:51 -07:00
c36ce15a00 [Styleguide] Page types now working
Fixes #1233
2017-03-15 18:24:18 -07:00
d39ab17db4 [Styleguide] Merge in latest master
Fixes #1233
Todo: Need to fix page types
2017-03-15 17:09:52 -07:00
1a7260cc14 Revert "Disable plot by default"
This reverts commit 8a75381a3d.
2017-03-15 12:45:44 +00:00
8a75381a3d Disable plot by default 2017-03-15 12:41:25 +00:00
c394fe9287 Merge remote-tracking branch 'origin/open1465' 2017-03-03 11:26:25 -08:00
06f4a955b5 [Tables] Maintain correct insertion order with duplicates. Fixes #1465 2017-03-02 14:29:08 -08:00
a2bf92db97 [Tables] Subscribe to parent if a telemetry object, or children, but not both. Fixes #1464 2017-03-01 18:55:17 -08:00
da40f4c96e [Plot] Add current conductor bounds to telemetry requests via the old API. Replaces telemetry decorator. Fixes #1458 2017-02-27 19:26:51 -08:00
6fa5a31217 Merge pull request #1433 from nasa/open1432
[Build] Installed sound suppression system for Bourbon deprecation messages.
2017-02-27 11:12:27 -08:00
eb91cd33be [Copy] Diff between user cancellation and failure 2017-02-25 15:05:29 +02:00
5bc7a701dc Merge pull request #1455 from nasa/api-conductor-config
[Conductor] Allow configuration of conductor defaults
2017-02-24 14:58:50 -08:00
5cd0516048 Enable TC by default and hide
Set up TC so that it is always enabled and defaults to realtime mode.

This allows us to have warp-like functionality without showing
the TC interface, and simplifies a lot of tutorials.  We can still
reconfigure the TC by re-installing the plugin with different settings
2017-02-24 14:56:18 -08:00
48a603ece8 Merge branch 'api-legacy-telemetry-provider-v2' 2017-02-24 14:47:10 -08:00
abfa56464a Merge branch 'plugins-functions' 2017-02-24 14:34:54 -08:00
c1d6e21c3c Added tests. Fixes #1364 2017-02-23 13:50:14 -08:00
3bd556a406 Fixed failing tests 2017-02-23 10:21:33 -08:00
347fb6d882 Fixed style errors 2017-02-23 10:19:10 -08:00
b3cf7a5d93 Added support for new style telemetry providers from old screens. Converted SWG to new style data adapter 2017-02-23 09:58:46 -08:00
c7cffdeb3b Merge pull request #1453 from nasa/restore-search-navigation
[Search] Allow navigation from results
2017-02-22 13:21:03 -08:00
d45ae7908d [Search] Allow navigation from results
Fix search item so that navigation occurs after clicking on
a search result, while still properly preventing navigation
when required.

Related to #1366
2017-02-22 13:08:54 -08:00
b10fb4533e All builtin plugins now standardized as functions 2017-02-22 12:51:49 -08:00
c74fdb816f Merge pull request #1450 from nasa/fix-table-tests
Add hasCapability to mock
2017-02-21 18:14:18 -08:00
40985a56c8 Add hasCapability to mock 2017-02-21 18:01:43 -08:00
5c01f0be24 Merge branch 'open1077' into 1435-integration 2017-02-21 17:22:36 -08:00
f7ff5af60b Merge pull request #1448 from nasa/update-composition-policy
Update composition policy
2017-02-21 17:18:59 -08:00
2088fc52f3 Merge pull request #1446 from nasa/fix-orphan-navigation
Orphan check uses capability not model
2017-02-21 17:08:40 -08:00
db33ab143e Merge pull request #1445 from nasa/api-updates
Api updates
2017-02-21 17:04:45 -08:00
8c77d4006a Pass options to support checks 2017-02-21 17:03:16 -08:00
2fa567b98b [Table] Track by index, save the elements 2017-02-21 16:49:39 -08:00
e61f04663a Merge pull request #1444 from nasa/consistent-css-class
cssclass is now cssClass
2017-02-21 16:36:30 -08:00
4b905fa7d2 Merge pull request #1443 from nasa/remove-old-bundle-loading
Stop loading bundles.json
2017-02-21 16:32:26 -08:00
5e6e7f018a Merge pull request #1442 from nasa/dev-skip-optimize
[Build] Skip optimize in dev environment
2017-02-21 16:26:41 -08:00
53f56b430a Merge pull request #1449 from nasa/identifier-not-key
[API] Use proper key format
2017-02-21 16:24:17 -08:00
50c934820c Merge pull request #1424 from nasa/open1382
[Tables] Do not persist column configuration for non-editable objects
2017-02-21 15:18:56 -08:00
2a10a2cae2 Update specs to match composition policies 2017-02-21 15:14:35 -08:00
65325b90fd Composition policy takes child instance
The composition policy now takes a child instance instead
of the child type, as in all cases we have access to the child
object.

This allows new-style objects to be contained by old-style objects.

Updated all composition policies to use standardized argument names
instead of `context` and `candidate`; this makes it easier to
understand.

Updated AddActionProvider to hardcode the object types supported.
2017-02-21 12:32:49 -08:00
cfecc36ae6 Orphan check uses capability not model
Switch orphan checking to use capability instead of model.

This ensures that new-style composition providers work as intended.
2017-02-21 12:10:17 -08:00
d9f8622459 [Telemetry] Update TelemetryProvider API
Based on feedback from tutorial sprint, update provider API,
formatter API, and legacy adapter code.

Providers can now implement separate checks for providing realtime
and historical data, and providers are not registered with a specific
strategy.  Strategy is instead intended to be an attribute in the
request options.

Removed unused code in the telemetry API and simplify limitEvaluators.
2017-02-21 11:51:32 -08:00
8e13819e1e [API] composition providers receive new-style objects
Ensure that composition providers get new-style objects (with id
included) so that they can properly check for applicability.
2017-02-21 11:21:08 -08:00
aaedf5d576 cssclass is now cssClass
Make property name consistent with standard camelCase naming.
2017-02-21 11:14:46 -08:00
af9ffaf02d Stop loading bundles.json
Stop application from requesting bundles.json at first load.  This was
confusing to some external developers who would see an error in the
log and not know the cause.
2017-02-21 11:11:16 -08:00
970acbd56e [Build] Skip optimize in dev environment
Skip optimize in dev environment to speed up project rebuilds.  Very helpful
when integration testing openmct.js build artifact.
2017-02-21 11:05:20 -08:00
46c7399867 Merge pull request #1410 from joshbaldwin/master
adding MCT name to README
2017-02-21 09:09:51 -08:00
2ed12d4ca3 [Frontend] WIP Style Guide
Fixes #1233
Update glyphs data from symbols spreadsheet to pull in
new expand glyph and reflect minor organizational changes;
2017-02-16 15:03:47 -08:00
1edd2043dc [Frontend] WIP Style Guide
Fixes #1233
Added new "icon-expand" glyph and class;
(cherry picked from commit adfbfc4)
2017-02-16 13:52:59 -08:00
9a6745635d Merge pull request #1431 from dhrubomoy/master
[Documentation] Fixed filename
2017-02-15 10:18:46 -08:00
2c5dd96de1 [Frontend] WIP Style Guide
Fixes #1233
Tweak to color swatch shape
2017-02-14 15:45:44 -08:00
fa962b42bc [API] Use proper key format 2017-02-13 13:21:55 -08:00
34dc457aff [Tables] Restored telemetry datum field 'name'. Fixed bug with default sort not working 2017-02-10 15:39:39 -08:00
a3311e4c57 [Tables] Tests and style fixes 2017-02-10 14:22:30 -08:00
ef8efbd53d [Tables] Default UTC time system if available and none others defined 2017-02-10 14:22:28 -08:00
6cd99efbb9 [Tables] Added telemetry buffer so that subscription data is not discarded if it's beyond the end bounds 2017-02-10 14:22:28 -08:00
ae2b73a4f5 [Tables] Increase default table size 2017-02-10 14:22:28 -08:00
0c3ff82cfe [Table] Added ticking to combined historical/real-time table
Don't add duplicate telemetry data
2017-02-10 14:22:20 -08:00
50f303bbdc [Tables] limit digests to increase performance 2017-02-10 14:22:20 -08:00
2a4944d6ee [Tables] Refactoring for consolidation of historical and real-time tables
Added batch processing of large historical queries. #1077
2017-02-10 14:21:48 -08:00
3544caf4be [API] Observer path was accessing object key incorrectly 2017-02-10 14:21:47 -08:00
976333d7f7 [Tables] Support for subscriptions from new Telemetry API
Historical and real-time data flowing

Added formatting, and limits. Support telemetry objects themselves and not just composition of telemetry objects

Apply default time range if none supplied (15 minutes)
2017-02-10 14:21:26 -08:00
6d5530ba9c [Tables] Using new composition API to fetch all telemetry objects 2017-02-10 14:12:10 -08:00
77d0134e2e [Build] Added Bourbon deprecation warning suppression system. 2017-02-10 10:03:05 -08:00
d3b4ad41c2 [Documentation] Fixed filename
Fixed file name "Platform.md" to "platform.md". "Platform.md" was giving a 404 error when clicked, in github and in the official site as well.
2017-02-09 20:54:52 -05:00
f8c4c70623 Merge remote-tracking branch 'origin/master' into open1233a 2017-02-08 15:32:37 -08:00
e268e357b3 [Frontend] WIP Style Guide
Fixes #1233
Added colors page content and display code;
Added conditional hide/show per theme;
2017-02-08 15:32:04 -08:00
af3cbe9ed1 [Optimization] Reduce D3 dependency size
#1224
2017-02-07 23:11:23 +01:00
4740faab6f [Frontend] WIP Style Guide
Fixes #1233
Refactoring to generalize plot styles
2017-02-06 14:49:25 -08:00
37478bc391 [Frontend] WIP Style Guide
Fixes #1233
More content; table styling
2017-02-06 14:48:55 -08:00
b28eb049dc Merge pull request #1420 from BogdanAlexandru/tutorial-fix
[Tutorial] Replace glyph mentions with cssclass
2017-02-06 11:57:49 -08:00
10dcb3a667 [Frontend] WIP Style Guide
Fixes #1233
More content
2017-02-06 11:42:39 -08:00
3d3baddd23 [Tables] Do not persist column configuration for non-editable objects 2017-02-02 15:44:36 -08:00
f306180ab6 [Docs] WIP Style Guide
Fixes #1233
Fix Style Guide tree elements to
no longer render as links;
2017-02-01 14:10:48 -08:00
9475a22831 [Frontend] WIP Style Guide
Fixes #1233
Modified platform global font-weight and
input font usage for legibility;
2017-01-31 18:13:01 -08:00
2c3a09f448 [Frontend] WIP Style Guide
Fixes #1233
Style-guide thematic color constants added;
Normalized doc-title content across files;
Additional detail in glyphs.html;
2017-01-31 18:12:29 -08:00
7543faa577 [Frontend] WIP Style Guide
Fixes #1233
Adds to text inputs content;
Mods to MCTExample to allow a padded
wrapper around <pre> element;
Fixed snow theme css file reference;
2017-01-31 17:21:22 -08:00
3c81398865 [Frontend] WIP Style Guide
Fixes #1233
More glyphs content: usage, guidelines, etc.
2017-01-31 16:45:53 -08:00
caa489f58a [Frontend] WIP Style Guide
Fixes #1233
Mods to core CSS for consistency
2017-01-31 16:09:24 -08:00
43117a7ebe [Frontend] WIP Style Guide
Fixes #1233
Add major new content, glyphs page and display code;
minor layout tweaks;
2017-01-31 16:07:40 -08:00
e712edba4e [Tutorial] Fix icon set url 2017-01-31 21:35:42 +02:00
35d8024aaa [Tutorial] Better describe cssclass 2017-01-31 21:32:31 +02:00
563b02bb1d [Docs] WIP Style Guide
Fixes #1233
Additional content; adding size classes to
input[type="text"] to allow direct application to
the input; added placeholder styling and related
thematic constants.
2017-01-30 15:57:55 -08:00
93aa6a18f2 Remove ng-scope in example 2017-01-30 15:24:25 -08:00
b8d8f40ed7 [Docs] WIP Style Guide
Fixes #1233
Additional content; tweak to H3 margins
2017-01-30 14:52:57 -08:00
e010dbb324 [Docs] WIP Style Guide
Fixes #1233
Additional content; tweak to H3 margins
2017-01-30 14:42:28 -08:00
bd397c869e Add mct-example directive 2017-01-30 13:52:08 -08:00
754a2c16bd [Docs] WIP Style Guide
Fixes #1233
2017-01-30 13:46:10 -08:00
57a9ffe6ab [Docs] WIP Style Guide
Fixes #1233
2017-01-30 13:15:35 -08:00
17564aa489 [Tutorial] Replace glyph mentions with cssclass 2017-01-29 18:16:36 +02:00
f00182968b [Frontend] WIP Style Guide
Fixes #1233
Theme-based styling added; significant mods to
layout; Content for controls page;
2017-01-27 18:19:44 -08:00
77396093d8 [Frontend] Merge old open1233a into latest master
Fixes #1233
2017-01-27 15:39:18 -08:00
784114e256 [Frontend] Add grab affordance grippys
Fixes #1415
2017-01-27 14:07:36 -08:00
d1e7e7894e [Frontend] Add grab affordance styling on hover
Fixes #1415
2017-01-27 13:58:38 -08:00
65bf38d5e6 [Frontend] Add grab affordance styling on hover
Fixes #1415
WIP
2017-01-27 11:16:06 -08:00
26db493b0d [Frontend] Removed unused var
Fixes #623
Removed stateCssClass, not needed;
2017-01-26 15:27:05 -08:00
6459f410e7 [Frontend] Code style cleanups in Timer *spec files
Fixes #623
Moved testState() function placement in code;
Added semicolons;
2017-01-26 15:09:01 -08:00
4072b91808 [Frontend] Styling for Timer
Fixes #623
Mod to code to allow timerState to be accessible
to markup; CSS for stop button and paused/stopped states
2017-01-26 11:57:08 -08:00
3ae0fd7bc9 Merge pull request #1388 from nasa/open1386
[Config] Fixes for example/msl
2017-01-26 11:49:04 -08:00
df7d59bc9c [Config] Fixes for example/msl
Fixes #1386
2017-01-26 11:40:46 -08:00
4f24c46e9b Merge pull request #1406 from nasa/separate-timeline-and-plot
[Reorg] Make timeline-specific chart directive
2017-01-26 11:34:05 -08:00
8750bdd778 Merge branch 'open623' of https://github.com/DocJava/openmct into DocJava-open623 2017-01-25 17:17:53 -08:00
DJ
60a8ee657a [Timer] Updated Timer UI and fixed tests
Added peeking stop button to view, added legacy and first run support, added new and fixed old tests
2017-01-25 18:21:52 -06:00
d262c4428e Merge pull request #1389 from cseale/chrome-testrunner-1387
[Build] Move karma test browser from PhantomJS to Chrome
2017-01-23 10:42:15 -08:00
9f9d28deef adding MCT name to README 2017-01-21 11:27:20 -05:00
ea74385ac8 Merge pull request #1407 from nasa/fix-style-1374
[Style] Fix style bugs introduced in #1374
2017-01-19 09:33:06 -08:00
06cc95efb1 Merge pull request #1381 from ev1stensberg/master
[DOCUMENTATION] Add linting to tutorial section
2017-01-19 09:07:02 -08:00
09ebeeb8e4 Merge pull request #1376 from cseale/mct1298
[Overlay] Remove max-height and max-width from overlay CSS
2017-01-18 21:48:13 -08:00
7e8e861468 Merge pull request #1372 from nasa/api-review-followup-1122
[API] Address review followup items
2017-01-18 21:42:22 -08:00
df2ce72e39 Merge pull request #1369 from nasa/datum-fallback
Use series.getDatum when available
2017-01-18 21:37:31 -08:00
DJ
ecf1bac5c7 [Timer] Updated Timer UI to indicate playing or paused state
Removed PauseCheck & TimeOfPause from properties, Removed duplicate functionality Resume class , replaced peeking restart at 0 button with persistent play/pause button
2017-01-18 07:08:54 -06:00
DJ
d04bdd2685 [Timer] Removed icon-stop
Removed icon-stop, identical to icon-box
2017-01-17 19:55:32 -06:00
fe8398017c [Style] Fix style bugs introduced in #1374 2017-01-17 16:56:32 -08:00
c2253f5010 Merge pull request #1374 from cseale/mct1197
[Dialogs] Close dialogs by pressing the ESC key
2017-01-17 13:23:23 -08:00
290dd0abf0 Merge pull request #1400 from nasa/plugins-1398
[Plugins] Adapt legacy plugins
2017-01-17 13:22:24 -08:00
49560698f6 [Reorg] Make timeline-specific chart directive
Make a separate chart directive for drawing resource graphs in timelines.  This
is in preparation for a new plot bundle which will make a large number of
changes to the drawing API to support newly requested features.  By separating
code, there will be no impact to the timeline when the new plot features are
added.
2017-01-17 09:59:00 -08:00
DJ
165bd4f638 [Clocks / Timers]  adding ability to pause and resume
added the alternating pause and resume timer
2017-01-14 16:43:20 -06:00
DJ
9df59522d9 [Clocks / Timers]  adding ability to stop
added the stop timer menu option
2017-01-14 16:42:44 -06:00
DJ
7fc66e2de8 [Clocks/Timers] renaming of Abstract class
renaming AbstractStartTimerAction to AbstractTime
2017-01-14 16:41:54 -06:00
1ce1d29c87 Merge branch 'master' into chrome-testrunner-1387 2017-01-14 02:08:13 +00:00
d522d105ad [Plugins] Document plugins 2017-01-13 11:57:00 -08:00
72b753c67f [Plugins] Use correct constant key for CouchDB 2017-01-13 11:46:14 -08:00
16ec65f38c [Plugins] De-camelcase Elasticsearch constructor
...since that's the way elastic does it, when they capitalize any letters.
2017-01-13 11:36:46 -08:00
ed67866f45 [Plugins] Use lodash API correctly 2017-01-13 11:34:05 -08:00
36b5197733 [Plugins] Add missing paren 2017-01-12 15:17:48 -08:00
fa28393c14 [Plugins] Add missing function keyword 2017-01-12 15:12:50 -08:00
077f076c43 [Plugins] Allow CouchDB URL to be specified 2017-01-12 15:10:14 -08:00
c7ae520d7e [Plugins] Only register elasticsearch url when provided 2017-01-12 15:08:45 -08:00
39eb7ba862 [Plugins] Allow ElasticSearch config 2017-01-12 15:07:07 -08:00
116bb2c25f [Plugins] Add persistence plugin constructors 2017-01-12 14:56:47 -08:00
6bf293f96b [Plugins] Install plugins for dev client 2017-01-12 14:51:46 -08:00
eceaa38ed8 [Plugins] Remove Espresso from defaultRegistry 2017-01-12 14:51:18 -08:00
b6aa087536 [Plugins] Expose bundle-enabling plugins
Fixes #1398
2017-01-12 14:50:55 -08:00
d94e8b10d8 Merge pull request #1385 from nasa/example-roots-1384
[Roots] Update examples
2017-01-11 15:07:05 -08:00
590a0fe080 [Build] Move karma test browser from PhantomJS to Chrome
Issue #1387
2017-01-10 18:53:56 +00:00
41d0e953f5 [Build] Specify phantomjs-prebuilt version
Attempting to resolve build failure
https://circleci.com/gh/nasa/openmct/3167
2017-01-09 15:00:32 -08:00
3436455201 [Roots] Update scratchpad bundle 2017-01-09 14:34:41 -08:00
bb63e13770 [Roots] Update taxonomy example
Fixes #1384
2017-01-09 14:32:19 -08:00
62685cb892 [DOCUMENTATION] Add linting to tutorial section
Adds code examples with linting
2017-01-07 13:49:03 +01:00
6fe0ce70eb [Overlay] Remove max-height and max-width from overlay CSS
Issue #1298
2016-12-29 23:27:10 +00:00
bee22311a7 [Dialogs] Close dialogs by pressing the ESC key
Issue #1197
2016-12-29 00:06:47 +00:00
2cde80237f [API] Inject eventEmitter 2016-12-23 16:55:18 -08:00
3b93454c53 [API] Fix EventEmitter import 2016-12-23 16:53:27 -08:00
a5a17b9502 [API] Remove singleton event emitter 2016-12-23 16:51:15 -08:00
381f3d9b69 [API] Document default composition provider
https://github.com/nasa/openmct/issues/1122#issuecomment-252115292

Fixes #1122
2016-12-23 16:40:21 -08:00
94319df69b Merge pull request #1371 from nasa/plugins-1248
[Plugins] Expose plugin functions
2016-12-23 14:20:54 -08:00
1666c42f78 [Plugins] Document plugins 2016-12-23 13:05:34 -08:00
f1870e286d [Plugins] Expose My Items plugin 2016-12-23 13:01:22 -08:00
94194ff675 [Plugins] Expose plugins on openmct project
...to allow a simple Open MCT to be configured for tutorials,
#1248
2016-12-23 12:57:52 -08:00
d37caa7665 Merge pull request #1370 from nasa/open1367
[Edit] Set key on represent
2016-12-23 11:33:54 -08:00
a768b12985 [Edit] Set key on represent
Set key on represent so that commit function can properly persist
configuration per object type.  Add tests to EditRepresenter

Fixes https://github.com/nasa/openmct/issues/1367
2016-12-23 11:22:29 -08:00
6f257593c8 Use series.getDatum when available 2016-12-22 10:02:28 -08:00
c4d47ddc26 Merge pull request #1366 from nasa/fix-navigation-warnings-1360
Fix navigation warnings, tidy editing, navigation, browse logic.
2016-12-21 12:38:54 -08:00
60d1b73160 Update tests and correct style
Update tests to reflect new functionality.

Closes https://github.com/nasa/openmct/issues/1360
2016-12-20 16:49:13 -08:00
96c054415d [Cleanup] Remove unused template in adapter 2016-12-20 16:43:23 -08:00
89be1c810a [Browse] tighter tree view integration
BrowseController uses new MCTTreeView parameters to prevent navigation
events before triggering digests.  It also no longer sets navigation
more frequently than it should.

https://github.com/nasa/openmct/issues/1360
2016-12-20 16:43:23 -08:00
6328bd9354 [Edit] Cancel action depends on promise resolution
Cancel action no longer cares about return value, simply
will not execute if navigtion promise does not resolve.

https://github.com/nasa/openmct/issues/1360
2016-12-20 16:43:23 -08:00
fcda211800 [Edit] manage editing in EditObjectController
EditObjectController now exits edit mode when it is destroyed.
It also injects a check function in the navigation service to
replace the old functionality implemented in EditNavigationPolicy.

https://github.com/nasa/openmct/issues/1360
2016-12-20 16:43:23 -08:00
daa71c4f69 [Navigation] remove mct-before-unload
Remove mct-before-unload, and move the functionality to the navigation
service.  The navigation service considers "unload" to be a navigation
event and prompts in much the same way as it would before any other
navigation event.

https://github.com/nasa/openmct/issues/1360
2016-12-20 16:43:23 -08:00
f2d61604f7 [Navigation] navigationService provides checking
Remove policy checking in navigation action and depend on navigation
service to provide those checks.

* Register checkFunctions with navigationService.checkBeforeNavigation
  which returns a function for unregistering them.
* navigationService.setNavigation will run checks before allowing
  navigation, unless a `force` argument is supplied.

https://github.com/nasa/openmct/issues/1360
2016-12-20 16:43:23 -08:00
f0b9292458 [Tree] Add additional api methods
Add methods to tree view via scope for more fine grained control.

Can supply a "allowSelection" function which should return true
if a given selection is allowed.  This is executed before a node
is selected and allows you to prevent selection.  Before this, if
you wanted to prevent the selection from changing, you had to wait
for it to change and then change it back to the original value.

Can also supply an "onSelection" function which is called when a
value is successfully selected.  This allows you to handle the
selection event without waiting for digest.  You can still $watch
"selectedObject" if you prefer.

Additionally, this changes the tree node to trigger a digest only
when the value is set via a MouseClick, instead of every time.

Tidies up directive scope bindings to clarify usage.

https://github.com/nasa/openmct/issues/1360
2016-12-20 16:43:23 -08:00
0b79ec1235 [Browse] Simplify Edit Representation
Simplify edit registration and remove extra abstractions.  No longer
attach a status listener for every representation-- just use a single watch
for the edit controller.  Simplifies logic involved in switching controllers.

https://github.com/nasa/openmct/issues/1360
2016-12-20 16:43:23 -08:00
b9601ff819 Merge pull request #1363 from BogdanAlexandru/testfix1361
[Test Fix] Mock cloned object in SaveAsActionSpec
2016-12-20 15:27:30 -08:00
6f417fc4c7 Merge pull request #1362 from nasa/open1348
[Telemetry] Added legacy provider to expose old style telemetry providers to users of the new telemetry API
2016-12-20 09:12:00 -08:00
d99b4d35ab [Failing Test] Mock cloned object in SaveAs spec 2016-12-20 12:41:58 +02:00
6936ab6100 [Telemetry] Added 'name' as a telemetry datum attribute. Fixes #1099 2016-12-19 16:14:05 -08:00
532f7a76f9 [Edit] Add notifications to Save & SaveAs (#1258)
* [Edit] Added notifications to SaveAsAction

* [Edit] Added notifications to SaveAction

* [Edit] Update SaveAsActionSpec

* [Edit] No error notif when user cancels SaveAs
2016-12-19 10:59:26 -08:00
09e79d38ff Added support for limits 2016-12-15 15:30:22 -08:00
1c40fa88ce Removed redundant methods from LegacyTelemetryProvider
Removed redundant methods from LegacyTelemetryProvider
2016-12-15 15:30:22 -08:00
a4ff5ffb43 Fix method name 2016-12-15 15:30:22 -08:00
799c418124 [Telemetry] include type telemetry metadata
Read telemetry metadata from type and include in telemetry.

Allows telemetry service to work with SWG.
2016-12-15 15:30:22 -08:00
215e9b26a8 [Telemetry] Add metadata and formatter support
Add TelemetryMetadataManager which assists developers in interrogating
telemetry metadata to find values that are useful for them.

Add TelemetryValueFormatter to simplify the parsing (retrieval of numerical
values) and formatting (retrieval of displayable string value) of datums.

https://github.com/nasa/openmct/issues/1310
2016-12-15 15:30:22 -08:00
43132ea6f8 [Telemetry] Added LegacyTelemetryProvider to make existing telemetry providers available to the new Telemetry API 2016-12-15 15:30:22 -08:00
90a7ca8ae5 [Generator] Support more config, data rates (#1353)
* [Generator] Support more config, data rates

Update sinewave generator to use webworker, have more
configuration options.  Now supports higher data rates.

Also wrote telemetry provider for new API, and updated
legacy provider as well while we flesh out the telemetry API.

Fixes https://github.com/nasa/openmct/issues/1337

* Proper Step Timing, proper value passthrough

* Remove unused value, remove non-functional plugin

Remove an unnecessary datum value, `time`, and remove the new style
plugin -- which does not actually work -- to prevent confusion.

Addresses
https://github.com/nasa/openmct/pull/1353#pullrequestreview-12571665
2016-12-14 15:02:53 -08:00
f077f4fc1b Merge pull request #1359 from nasa/open1358
[Images] Filters not working in older Chrome installs. Fixes #1358.
2016-12-14 14:15:26 -08:00
0cd849fe42 [Images] Filters not working in older Chrome installs. Fixes #1358. 2016-12-14 14:08:50 -08:00
06a24e3a7d Merge pull request #1354 from nasa/icon-assignment
Fix icon assignments
2016-12-14 13:38:57 -08:00
abd9fdec38 Merge pull request #1357 from nasa/umd-1356
[Build] Change global namespace name
2016-12-14 13:34:05 -08:00
bfdbb4dacb [Build] Change global namespace name
...to match name of module. Fixes #1356
2016-12-14 10:04:00 -08:00
b5b68e7439 Fix icon assignments
Icons had been accidentally swapped around, updated the
assignements and regenererated file.
2016-12-12 13:00:04 -08:00
a920220122 Merge pull request #1352 from nasa/open1351
[Navigation] Fix errors appearing in console on application load
2016-12-09 11:42:47 -08:00
83ed4f6b0d [Navigation] Fix errors appearing in console on initial navigation. Fixes #1351 2016-12-09 09:59:27 -08:00
6a32c53d05 Merge pull request #1350 from nasa/open1349
[Time Conductor] Fixed issue with zoom slider appearing for time systems that do not support it.
2016-12-09 09:44:29 -08:00
0785129b7f [Time Conductor] Fixed issue with zoom slider appearing for time systems that do not support it. Fixes #1349 2016-12-08 15:14:40 -08:00
45de84c183 [Time Conductor] Prevent route change when time conductor values change (#1342)
* [Time Conductor] Prevent route change on setting search parameters. fixes #1341

* [Inspector] Fixed incorrect listener deregistration which was causing errors on scope destruction

* Bare route is redirect to browse

* [Browse] handle routing without breaking $route

Manage route transitions such that route changes are properly
prevented and navigation events occur while still updating the url.

Resolves a number of issues where path and search updates had
to be supported in a very hacky manner.

https://github.com/nasa/openmct/pull/1342

* [URL] Set search without hacks

Changes in previous commit allow the search parameters to be modified
without accidentally triggering a page reload.

https://github.com/nasa/openmct/pull/1342

* [Views] Update on location changes

If the user has a bookmark or tries to change the current view of an
object by specifying view=someView as a search parameter, the change would
not previously take effect.  This resolves that bug.

https://github.com/nasa/openmct/pull/1342

* [TC] Set query params to undefined

Instead of setting params to null, which would eventually result in those
parameters equaling undefined, set them to undefined to skip the extra
step.

https://github.com/nasa/openmct/pull/1342

* [Instantiate] Instantiate objects with context

Add context to instantiate objects so that they can be navigated
to for editing.

https://github.com/nasa/openmct/pull/1342

* [Tests] Update specs

Update specs to match new expectations.

* [Style] Fix style

* [TC] Remove unused dependency

Remove $route dependency from time conductor controller as it was
not being used.  Resolves review comments.

https://github.com/nasa/openmct/pull/1342#pullrequestreview-11449260
2016-12-07 13:33:53 -08:00
b2da0cb12f Merge pull request #1335 from nasa/open1234
[Time Conductor] Remove previous time conductor. Fixes #1234
2016-12-07 13:10:45 -08:00
e121c0f8ac [Time Conductor] Remove previous time conductor. Fixes #1234 2016-12-07 12:36:52 -08:00
bf006b45e4 Merge pull request #1347 from nasa/open1278
[Edit Mode] Fix issue with navigation not triggering unsaved changes warning
2016-12-06 13:50:53 -08:00
a3f5873501 [Edit Mode] Fix issue with navigation not triggering unsaved changes message for new objects. Removed logic that prevented mutation of new objects from triggering a transactional persist call. Fixes #1278 2016-12-05 15:52:14 -08:00
86b337ec88 Revert "[Edit Mode] Fix issue with navigation not triggering unsaved changes message for new objects. Removed logic that prevented mutation of new objects from triggering a transactional persist call. Fixes #1278"
This reverts commit 7dda85cc5f.
2016-12-05 15:49:50 -08:00
7dda85cc5f [Edit Mode] Fix issue with navigation not triggering unsaved changes message for new objects. Removed logic that prevented mutation of new objects from triggering a transactional persist call. Fixes #1278 2016-12-05 15:46:56 -08:00
68d6920d38 Merge pull request #1305 from Brantron/notification-bell
Make notification icon clickable
2016-12-02 14:22:52 -08:00
f540fd08fa Merge pull request #1338 from nasa/my-items-as-model
[MyItems] Load via static model provider
2016-12-01 15:41:08 -08:00
aaf4877daa Merge pull request #1339 from nasa/open1336
[Documentation] Fixed non-functioning telemetry tutorial, updated glyphs.
2016-12-01 15:15:25 -08:00
828e5629c5 [Tutorials] Updated tutorials fixing errors preventing the Todo and Bar Graph tutorials from working. Have disabled the telemetry example for now as fixing it is more involved
[Documentation] Fixed failing telemetry tutorial

[Documentation] Fixed glyphs, fixed other minor issues

Fixes #1336. Fixes #1309. Fixes #1163
2016-12-01 15:03:24 -08:00
44ceb4e865 [Style] remove trailing comma
per https://github.com/nasa/openmct/pull/1338#discussion_r90542441
2016-12-01 14:18:55 -08:00
88f954b437 [MyItems] Load via static model provider
Define a model for my items to be used when the model
is not found in a storage provider.

Fixes https://github.com/nasa/openmct/issues/1284
2016-12-01 13:18:22 -08:00
f85595665f Merge pull request #1325 from nasa/open1231
[Time Conductor] Persist Time Conductor state in URL
2016-11-30 13:17:33 -08:00
73b3ae7264 [Composition] Composition api improvements (#1332). Fixes #1322 and Fixes #1253
* [Composition] provide ids, sync via mutation

Composition provides ids, and we sync things via mutation.  This
simplifies the composition provider interface some, and also
fixes some issues with the previous default composition provider
related to #1322
fixes #1253

* [Style] Fix style, update jsdoc

Fix style, update jsdoc, clean up composition api changes for

Fixes #1322

* [Style] Tidy and JSDoc

* [Composition] Utilize new composition API

Ensures that composition provided by new API works in old API.

Some functionality is not present in both places, but for the
time being this is sufficient.

https://github.com/nasa/openmct/pull/1332

* [Utils] add tests, fix bugs

Add tests to objectUtils to ensure correctness.  This caught a bug
where character escapes were not properly applied or removed.  As
a result, any missing object that contained a colon in it's key
would cause an infinite loop and cause the application to crash.

Bug discovered in VISTA integration.

* [Style] Fix style

* [Roots] Depend on new api for ROOT

Depend on new API for ROOT model, ensuring consistency when
fetching ROOT model.

* [Style] Remove commented code
2016-11-30 12:00:01 -08:00
eaae401d16 Added mode, timeSystem, and deltas
Fixing tests

Fixed broken tests

Added tests

Fixed style errors
2016-11-25 15:16:53 -08:00
efed5f68af [Time Conductor] Added support for loading and persisting time conductor bounds in URL. Fixes #1231 2016-11-25 15:16:31 -08:00
79b4f9a0f4 Squash-merge open1193 into master.
Closes https://github.com/nasa/openmct/pull/1287.

Squashed commit of the following:

commit af9ba3095859684cb2465f1d5222a14db231fdb7
Merge: c98286d 31308b1
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Nov 25 14:57:32 2016 -0800

    Merge branch 'open1193' into open1287-integration

    Resolve conflicts in glyph files as documented in pull request:
    https://github.com/nasa/openmct/pull/1287#issuecomment-263030180

    Closes https://github.com/nasa/openmct/pull/1287

commit 31308b1076
Author: Andrew Henry <andrew.k.henry@nasa.gov>
Date:   Tue Nov 22 17:08:10 2016 +0000

    [Time Conductor] Addressed code review comments. Fixes #1287

commit db6386e21c
Author: Henry <akhenry@gmail.com>
Date:   Wed Nov 9 11:52:39 2016 -0800

    Removed redundant ConductorService

commit a9ec8db8c6
Merge: fc36674 dfa4591
Author: Henry <akhenry@gmail.com>
Date:   Wed Nov 9 08:23:07 2016 -0800

    Merge branch 'master' into open1193

commit fc36674b5c
Author: Henry <akhenry@gmail.com>
Date:   Wed Nov 9 08:23:01 2016 -0800

    Updated wording of docs

commit d0906baccf
Author: Henry <akhenry@gmail.com>
Date:   Fri Nov 4 10:48:05 2016 -0700

    Fixed TOI not showing

commit 099c56c407
Author: Henry <akhenry@gmail.com>
Date:   Fri Oct 28 16:46:06 2016 -0700

    Fixed failing tests

commit 7cc008ed01
Author: Henry <akhenry@gmail.com>
Date:   Fri Oct 28 10:28:41 2016 -0700

    Added tests for tables, TOI controller

commit b0901e83cb
Author: Henry <akhenry@gmail.com>
Date:   Thu Oct 27 10:42:31 2016 -0700

    Added tests for ConductorAxisController and TimeConductor

commit dfed0a0783
Author: Henry <akhenry@gmail.com>
Date:   Wed Oct 26 18:07:50 2016 -0700

    Added ConductorAxisController tests

commit c3322e3847
Author: Henry <akhenry@gmail.com>
Date:   Tue Oct 25 20:54:24 2016 -0700

    Added tests for MctTableController

commit 8e76ebb5a8
Author: Henry <akhenry@gmail.com>
Date:   Tue Oct 25 15:48:15 2016 -0700

    Removed debugging code

commit 93735bc404
Author: Henry <akhenry@gmail.com>
Date:   Mon Oct 24 15:13:45 2016 -0700

    Removed bundle definition of MctAxisController
    Documenting code

commit a942541724
Author: Henry <akhenry@gmail.com>
Date:   Sun Oct 23 19:54:01 2016 -0700

    [Time Conductor] Fixed memory leak due to listeners not being deregistered

commit 49e600dcc9
Author: Henry <akhenry@gmail.com>
Date:   Sat Oct 22 16:47:11 2016 -0700

    [Time Conductor] Fixed zoom slider behavior

commit f5806613b9
Author: Henry <akhenry@gmail.com>
Date:   Sat Oct 22 14:46:14 2016 -0700

    [Time Conductor] support TOI from real-time tables

commit 029d2b3058
Author: Henry <akhenry@gmail.com>
Date:   Thu Oct 20 14:32:34 2016 -0700

    [Examples] Simplified MSL example, fixed object tree not loading by default, renamed. Fixes #1256. Fixes #1255

commit 482eb4a5e8
Author: Henry <akhenry@gmail.com>
Date:   Sat Oct 22 13:09:05 2016 -0700

    [Time Conductor] Using new API

commit 843c678b0b
Merge: b56ab0a 08ca765
Author: Henry <akhenry@gmail.com>
Date:   Fri Oct 21 10:21:22 2016 -0700

    In process of merging

commit b56ab0aac2
Author: Henry <akhenry@gmail.com>
Date:   Wed Oct 19 16:30:26 2016 -0700

    [Time Conductor] Implement default sort, fix unpredictable positioning using % left, set TOI on conductor init. #1193

commit d12ae77d95
Author: Henry <akhenry@gmail.com>
Date:   Wed Oct 19 11:29:42 2016 -0700

    Further TOI improvements

commit 22564473b5
Merge: 9f3ec3b 86b51f6
Author: Henry <akhenry@gmail.com>
Date:   Tue Oct 18 16:32:12 2016 -0700

    Merge branch 'open1193' of https://github.com/nasa/openmctweb into open1193

commit 9f3ec3b18f
Author: Henry <akhenry@gmail.com>
Date:   Tue Oct 18 16:31:59 2016 -0700

    Fixed issue with scrolling to row after bounds change

commit 86b51f6cde
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Oct 17 17:19:50 2016 -0700

    [Frontend] Small refactor for mct-include

    Fixes #933
    Fixes #1193
    Markup and CSS tweaked to support using mct-include
    as the main container for the TOI element; TC, plots
    and tables all updated.

commit dadca62955
Author: Henry <akhenry@gmail.com>
Date:   Mon Oct 17 15:54:34 2016 -0700

    Positioning of TOI in tables and plots

commit 7a09bc1339
Author: Henry <akhenry@gmail.com>
Date:   Mon Oct 17 10:11:59 2016 -0700

    Migrated TOI functionality to common controller

commit 6bea6b3bc2
Merge: 660757f 8f67cbd
Author: Henry <akhenry@gmail.com>
Date:   Fri Oct 14 14:38:57 2016 -0700

    Merge branch 'open1193' of https://github.com/nasa/openmctweb into open1193

commit 660757fc1c
Author: Henry <akhenry@gmail.com>
Date:   Fri Oct 14 14:38:46 2016 -0700

    Added TimeOfInterestController

commit 8f67cbd717
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Oct 14 11:33:35 2016 -0700

    [Frontend] Fixed cursor: grab on Time Conductor

    Fixes #933
    Fixes #1193
    Moved cursor: grab into mixin; sass cleanups

commit 07a4e26317
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Oct 14 11:03:23 2016 -0700

    [Frontend] TOI finalizing

    Fixes #933
    Fixes #1193
    HTML template cleaned up; checked in snow theme,
    theme colors tweaked; padding finalized; now uses
    val-to-left instead of -to-right;

commit 271c788f20
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Oct 14 10:22:26 2016 -0700

    [Frontend] TOI in tables

    Fixes #933
    Fixes #1193
    WIP

commit b7e8a1b378
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Oct 13 15:55:48 2016 -0700

    [Frontend] Styling for TOI element

    Fixes #933
    Fixes #1193
    WIP: Table TOI element in progress

commit 6042e4ad58
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Oct 13 13:46:27 2016 -0700

    [Frontend] Styling for TOI element

    Fixes #933
    Fixes #1193
    WIP: plots and TC done, moving on to
    tables; moved sass into conductor-v2;
    moved constants;

commit 1a534301c5
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Oct 13 11:42:10 2016 -0700

    [Frontend] Refactor TOI element

    Fixes #933
    Fixes #1193
    WIP; TOI as mct-include; layout uses
    flex-box; preparing to move TOI sass
    into conductor-v2 directory;

commit 42acf9255e
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Oct 12 18:34:51 2016 -0700

    [Frontend] Adding resync and dedicated unpin buttons

    Fixes #933
    Fixes #1193
    VERY WIP!

commit 3f0eb0b7cb
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Oct 12 18:33:53 2016 -0700

    [Frontend] New glyphs for use by TOI

    Fixes #933
    Fixes #1193
    Symbols font updated

commit 086307ba3a
Author: Henry <akhenry@gmail.com>
Date:   Tue Oct 11 17:16:51 2016 -0700

    Fixed scrolling behavior with TOI

commit 938bf3c4df
Merge: 3910437 8b2047c
Author: Henry <akhenry@gmail.com>
Date:   Tue Oct 11 13:26:20 2016 -0700

    Merge branch 'open1182' into open1193

commit 8b2047ca32
Author: Henry <akhenry@gmail.com>
Date:   Tue Oct 11 13:25:24 2016 -0700

    Fixed issue with setting deltas

commit 3910437033
Merge: 70c4ce2 02c543f
Author: Henry <akhenry@gmail.com>
Date:   Tue Oct 11 12:48:37 2016 -0700

    Merged changes to zoom

commit 02c543fddc
Author: Henry <akhenry@gmail.com>
Date:   Tue Oct 11 12:45:18 2016 -0700

    Fixed zoom in real-time mode

commit 70c4ce24e4
Author: Henry <akhenry@gmail.com>
Date:   Fri Oct 7 17:57:14 2016 -0700

    Added support for clicking row to set TOI

commit b995a8b87b
Merge: 51a9557 b384e84
Author: Henry <akhenry@gmail.com>
Date:   Fri Oct 7 16:11:59 2016 -0700

    Merged from open1182

commit b384e84872
Merge: 5babf72 07140b1
Author: Henry <akhenry@gmail.com>
Date:   Fri Oct 7 15:02:41 2016 -0700

    Merge branch 'open933' into open1182

commit 07140b179f
Merge: 3e9c0eb cbd001e
Author: Henry <akhenry@gmail.com>
Date:   Fri Oct 7 14:54:18 2016 -0700

    Merge branch 'master' into open933

commit 51a95575f7
Author: Henry <akhenry@gmail.com>
Date:   Fri Oct 7 14:51:59 2016 -0700

    [Time Conductor] Refactored time of interest as optional generic behavior of MctTable

commit dfbbc3b0c5
Merge: 430645b 47a0aba
Author: Henry <akhenry@gmail.com>
Date:   Thu Oct 6 10:23:42 2016 -0700

    alt-click to select TOI from table

commit 3e9c0eb7a5
Merge: f1d2072 8a00181
Author: Henry <akhenry@gmail.com>
Date:   Wed Oct 5 12:25:04 2016 -0700

    Merged from master to resolve build issues

commit f1d2072bb9
Author: Henry <akhenry@gmail.com>
Date:   Wed Oct 5 11:17:22 2016 -0700

    Added license information

commit 430645b1f2
Author: Henry <akhenry@gmail.com>
Date:   Wed Oct 5 09:04:13 2016 -0700

    TOI working in time conductor

commit 47a0aba601
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Oct 4 18:12:01 2016 -0700

    [Frontend] TOI sass and markup sanding

    Fixes #933
    Fixes #1193
    Color tweaks; Cleanups, commented
     code removal, etc.; tightened up
     tabular padding and font sizes;

commit 0ed0a48a8c
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Oct 4 15:49:18 2016 -0700

    [Frontend] Styling for TOI element

    Fixes #933
    Fixes #1193
    Tabular styling for TOI;

commit 1650aae518
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Oct 3 15:56:56 2016 -0700

    [Frontend] Styling for TOI element

    Fixes #933
    Fixes #1193
    WIP: Tabular styling for TOI;
    TODO: make bottom border work

commit d3bf6c5857
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Oct 3 15:15:56 2016 -0700

    [Frontend] Styling for TOI element

    Fixes #933
    Fixes #1193
    WIP: Markup and CSS for plots and TC near complete;
    TODO: revised styling in tabular views;

commit 5cd0c8a4fa
Author: Henry <akhenry@gmail.com>
Date:   Fri Sep 30 12:41:14 2016 -0700

    [Time Conductor] merged from open1182

commit 5babf7274d
Author: Henry <akhenry@gmail.com>
Date:   Thu Sep 29 11:21:11 2016 -0700

    [Time Conductor] Tweaked the break points for zoom level indicator

commit 22da34870d
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Sep 29 10:41:21 2016 -0700

    [Frontend] Styling for TOI element

    Fixes #933
    Fixes #1193
    WIP: Markup and CSS revisions for updated UX approach;
    TODO: cosmetic CSS

commit 99253a5904
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Tue Sep 27 20:42:33 2016 -0700

    [Frontend] Styling for TOI element

    Fixes #933
    Fixes #1193
    WIP: Markup and CSS revisions for updated UX approach

commit 2db4aa6235
Author: Henry <akhenry@gmail.com>
Date:   Fri Sep 23 13:06:22 2016 -0700

    [Time Conductor] Added zoom level label

commit bb2ae2f8d1
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Fri Sep 23 11:07:06 2016 -0700

    [Frontend] Styling for TOI element

    Fixes #933
    Fixes #1193
    Finalized TOI in plots, table and TC

commit 0cf4c92555
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Sep 22 19:15:10 2016 -0700

    [Frontend] Styling for TOI element in tables

    Fixes #933
    Fixes #1193
    WIP: styling in tabular mostly done, needs more unit testing
    TODO: fix hide/show for pinned TOI in plots - don't
    show pinned TOI on hover when not .active

commit 3c95c095f1
Author: Henry <akhenry@gmail.com>
Date:   Thu Sep 22 17:22:25 2016 -0700

    [Time Conductor] Refactored out use of angular event bus in favor of making TimeConductorViewService an event emitter.

commit adbcc407ef
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Sep 22 16:06:45 2016 -0700

    [Frontend] Styling for TOI element

    Fixes #933
    Fixes #1193
    WIP: TOI in tables

commit 1c3bd69b66
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Sep 22 16:06:16 2016 -0700

    [Frontend] Styling for TOI element, some refactoring

    Fixes #933
    Fixes #1193
    Moves some TOI styling into dedicated new scss file;
    Enhancements to TOI in plots to bring into parity
    with TOI in TC approach;

commit 49ee5cb74b
Author: Henry <akhenry@gmail.com>
Date:   Thu Sep 22 15:18:48 2016 -0700

    [Time Conductor] Destroy listeners in ConductorAxisController

commit 1a93ba2c3d
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Sep 22 15:09:42 2016 -0700

    [Frontend] Styling for TOI element in TC

    Fixes #933
    Fixes #1193
    Final for now; both types of TOI added to TC markup;
    Hover behavior; constant values in the right places;

commit 98122cc730
Author: Henry <akhenry@gmail.com>
Date:   Tue Sep 20 11:40:58 2016 -0700

    [Time Conductor] Added Zoom

commit 7fcafb6b58
Author: Henry <akhenry@gmail.com>
Date:   Mon Sep 12 16:53:48 2016 -0700

    [Time Conductor] Added pan to Time Conductor

commit d77922d66c
Author: Pete Richards <pete@pete-richards.com>
Date:   Thu Sep 15 09:37:11 2016 -0700

    Revert "[proxyUrl] pass URL parameters to proxied URL"

commit 2e81550c86
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 14 10:16:33 2016 -0700

    Revert "[Build] Check dependencies for vulnerabilities"

commit 8eb7585653
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Aug 29 10:58:02 2016 -0700

    [README] Warn about root installation issues

    Mitigates #1151.

commit 904d56a089
Author: Henry <akhenry@gmail.com>
Date:   Thu Sep 22 13:32:43 2016 -0700

    [Time Conductor] #933 Clean up time conductor listeners on scope destruction

commit c0a96b3c5f
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Sep 22 10:33:05 2016 -0700

    [Frontend] Styling for TOI element in TC

    Fixes #933
    Fixes #1193
    WIP, tweaking TOI in TC

commit 27e6caf69b
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Sep 16 18:51:51 2016 -0700

    [Frontend] Styling for TOI element in plots

    Fixes #933
    Fixes #1193
    Relates to #1182
    WIP, adding TOI to plot view;
    Integrated Andrew's work from #1182;
    Significant changes to markup and
    additions to plot scss;

commit 2c7ae95106
Merge: 2c81b72 41a160f
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Sep 16 15:11:25 2016 -0700

    Merge branch 'open1182' into open1193

commit 41a160fc4f
Merge: 92a80c3 156ba83
Author: Henry <akhenry@gmail.com>
Date:   Fri Sep 16 14:25:49 2016 -0700

    Merge branch 'master' into open1182

commit 92a80c39cb
Author: Henry <akhenry@gmail.com>
Date:   Mon Sep 12 16:53:48 2016 -0700

    [Time Conductor] Added pan to Time Conductor

commit 2c81b72d60
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Sep 15 16:02:30 2016 -0700

    [Frontend] Styling for TOI element in plots

    Fixes #933
    Fixes #1193
    WIP, adding TOI to plot view.

commit 9e2debf801
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Sep 15 15:43:29 2016 -0700

    [Frontend] Styling for TC's TOI element

    Fixes #933
    Fixes #1193
    I lied in my last commit - one more
    alignment tweak needed. Now I'm done.

commit 35872e284c
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Sep 15 15:40:03 2016 -0700

    [Frontend] Styling for TC's TOI element

    Fixes #933
    Fixes #1193
    TOI in TC done for now.

commit 98e67f8dfb
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Sep 15 14:55:06 2016 -0700

    [Frontend] Styling for TC's TOI element

    Fixes #933
    Fixes #1193
    WIP: adjust spacing;
    added pagination buttons

commit f912b9e273
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Sep 14 18:40:55 2016 -0700

    [Frontend] Styling for TC's TOI element

    Fixes #933
    WIP, TC v2 changes

commit 2df1e2b508
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Sep 14 18:40:29 2016 -0700

    [Frontend] Styling for TC's TOI element

    Fixes #933
    WIP, global changes

commit 9e85341aaa
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Sep 14 15:16:16 2016 -0700

    [Frontend] Fixed color for TC clock hands

    Fixes #933

commit 11e06039ec
Merge: a1331b7 f732387
Author: Henry <akhenry@gmail.com>
Date:   Tue Sep 13 13:25:37 2016 -0700

    Merge branch 'master' into open933

commit a1331b7bb3
Merge: d1960b2 e73bb4f
Author: Henry <akhenry@gmail.com>
Date:   Mon Sep 12 15:07:05 2016 -0700

    Merge branch 'master' into open933

commit d1960b2f46
Author: Henry <akhenry@gmail.com>
Date:   Mon Sep 12 14:54:16 2016 -0700

    [Time Conductor] Resolved merge conflicts

commit 9a06325533
Merge: e639e05 4c6ca58
Author: Henry <akhenry@gmail.com>
Date:   Mon Sep 12 14:39:24 2016 -0700

    Merge branch 'master' into open933

commit e639e056ba
Author: Henry <akhenry@gmail.com>
Date:   Fri Sep 9 16:39:21 2016 -0700

    [Time Conductor] Fixing bugs found in smoke testing. Fixes #933

commit fbab890081
Author: Henry <akhenry@gmail.com>
Date:   Wed Sep 7 14:29:21 2016 -0700

    [Time Conductor] Switched conductor to mct-include rather than mct-representation to avoid warnings

commit d37dd52ee1
Merge: 7af5875 58391de
Author: Henry <akhenry@gmail.com>
Date:   Tue Sep 6 16:43:17 2016 -0700

    Merge branch 'master' into open933

commit 7af5875dd5
Author: Henry <akhenry@gmail.com>
Date:   Tue Sep 6 10:04:29 2016 -0700

    [Time Conductor] #933 Fixed code style errors

commit c6eaa3d528
Author: Andrew Henry <andrew.k.henry@nasa.gov>
Date:   Wed Aug 24 15:28:19 2016 +0100

    [Time Conductor] Adding tests and fixing failing ones. #933

commit 4cf6126d35
Author: Henry <akhenry@gmail.com>
Date:   Wed Aug 10 18:22:30 2016 -0700

    Refactoring based on feedback

    Refactoring controller

    Migrating functions off controller onto service class

    Simplified modes

    Adding comments

    Removed unnecessary validation

    Fixing testing issues

commit 4ae6da0334
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Tue Aug 9 17:47:31 2016 -0700

    [Frontend] Data viz in Time Conductor smaller

    Fixes #933
    Reduced height of data viz bar in Time Conductor
    v2;

commit ae39343b76
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Aug 8 12:14:20 2016 -0700

    [Frontend] Fix for bad fix

    Fixes #1112
    Put overflow: hidden back at
    outer wrapper level (now on .t-object.primary-pane
    ) which doens't clip the Inspector expand/collapse;
    did better unit testing;

commit 62ee7e569b
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Aug 8 11:21:01 2016 -0700

    [Frontend] Fix for collapse Inspector button

    Fixes #1112
    Moved min-width and overflow: hidden
    to TC-specific elements; removed
    overflow: hidden from .primary-pane

commit 7557a86208
Merge: 46e644e c8931f8
Author: Henry <akhenry@gmail.com>
Date:   Fri Aug 5 16:37:36 2016 -0700

    Merge branch 'master' into open933

commit 46e644e6dc
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Aug 5 14:44:18 2016 -0700

    Use key to retrieve default

commit af7954c5a1
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Aug 5 11:24:51 2016 -0700

    Trigger digests when bounds are set

commit 0e0ad64830
Author: Henry <akhenry@gmail.com>
Date:   Thu Aug 4 10:41:58 2016 -0700

    Fixed issue with wrong deltas being applied

commit f3fd386e3b
Author: Henry <akhenry@gmail.com>
Date:   Wed Aug 3 21:03:09 2016 -0700

    Retain time system on mode change

commit 25b9f371e2
Author: Henry <akhenry@gmail.com>
Date:   Wed Aug 3 20:16:03 2016 -0700

    Fixed loss of time system options on navigation

commit 6b482d487b
Merge: f96f78f 9a72c96
Author: Henry <akhenry@gmail.com>
Date:   Wed Aug 3 19:57:03 2016 -0700

    Merged mode-specific defaults, with some refactoring

commit f96f78ff79
Author: Henry <akhenry@gmail.com>
Date:   Wed Aug 3 19:34:31 2016 -0700

    Select appropriate tick source based on mode

commit 579233ade9
Author: Henry <akhenry@gmail.com>
Date:   Wed Aug 3 18:30:01 2016 -0700

    Fixed delta format issue on navigation

commit 9a72c96ea4
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Aug 3 18:06:39 2016 -0700

    [TCv2] different defaults by mode

commit f4e1879a2d
Author: Henry <akhenry@gmail.com>
Date:   Wed Aug 3 17:43:07 2016 -0700

    stop listening to tick source on time system change

commit f844495cc1
Author: Henry <akhenry@gmail.com>
Date:   Wed Aug 3 17:40:37 2016 -0700

    Support deltaFormat on timeSystems

commit 900752208f
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Aug 3 13:05:43 2016 -0700

    [TCv2] get conductor without service

commit 6501e2eb5f
Author: Henry <akhenry@gmail.com>
Date:   Wed Aug 3 12:22:13 2016 -0700

    Added isUTCBased to TimeSystem interface

commit b9c41107c1
Author: Henry <akhenry@gmail.com>
Date:   Tue Aug 2 22:18:44 2016 -0700

    Time Conductor state retained on navigation

commit 34c62ba405
Author: Henry <akhenry@gmail.com>
Date:   Tue Aug 2 15:16:35 2016 -0700

    Time Conductor in edit mode

commit 1eea5ce480
Merge: 4cd579d 1173828
Author: Henry <akhenry@gmail.com>
Date:   Mon Aug 1 20:29:50 2016 -0700

    merged from master

commit 4cd579d274
Author: Henry <akhenry@gmail.com>
Date:   Mon Aug 1 20:16:46 2016 -0700

    Pass numerical value to format functions

commit 11738286df
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Aug 1 18:56:33 2016 -0700

    [Frontend] Styling for unsynced elements

    Fixes #933

commit ca5206d4a0
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Aug 1 18:55:49 2016 -0700

    [Frontend] Fixing issues with theme coloring

    Fixes #933

commit 573f1f9f99
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Aug 1 18:04:17 2016 -0700

    [Frontend] Hide zoom slider control

    Fixes #933
    Temporarily hiding per request from Andrew
    today;

commit c5c45f0a0e
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Aug 1 18:01:28 2016 -0700

    [Frontend] Update TC2 markup and sass

    Fixes #933
    Update markup and sass in TC2 to be in line with
    updates from master from #1047 glyphs
    to cssclass approach;

commit 121ab413ff
Author: Henry <akhenry@gmail.com>
Date:   Mon Aug 1 17:51:15 2016 -0700

    Apply formatting, filter modes by tick source availability

commit 753bd97c8a
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Aug 1 17:12:44 2016 -0700

    Merge remote-tracking branch 'origin/master' into open933-c

    # Conflicts:
    #	platform/commonUI/edit/res/templates/create/create-menu.html
    #	platform/commonUI/general/res/fonts/symbols/wtdsymbols.eot
    #	platform/commonUI/general/res/fonts/symbols/wtdsymbols.svg
    #	platform/commonUI/general/res/fonts/symbols/wtdsymbols.ttf
    #	platform/commonUI/general/res/fonts/symbols/wtdsymbols.woff
    #	platform/commonUI/general/res/sass/_archetypes.scss
    #	platform/commonUI/general/res/sass/_constants.scss
    #	platform/commonUI/general/res/sass/_icons.scss
    #	platform/commonUI/general/res/sass/_main.scss
    #	platform/commonUI/general/res/sass/_mixins.scss
    #	platform/commonUI/general/res/sass/controls/_buttons.scss
    #	platform/commonUI/general/res/templates/controls/time-controller.html
    #	platform/commonUI/themes/snow/res/sass/_constants.scss

commit fcd7ab93e5
Merge: a75ea67 9b58aa0
Author: Henry <akhenry@gmail.com>
Date:   Mon Aug 1 17:12:00 2016 -0700

    Merge branch 'open933' of https://github.com/nasa/openmctweb into open933

commit c699cb8b4b
Merge: 579c6b6 d1e1ba1
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Aug 1 17:11:37 2016 -0700

    Merge remote-tracking branch 'origin/master' into open933-c

    # Conflicts:
    #	platform/commonUI/edit/res/templates/create/create-menu.html
    #	platform/commonUI/general/res/fonts/symbols/wtdsymbols.eot
    #	platform/commonUI/general/res/fonts/symbols/wtdsymbols.svg
    #	platform/commonUI/general/res/fonts/symbols/wtdsymbols.ttf
    #	platform/commonUI/general/res/fonts/symbols/wtdsymbols.woff
    #	platform/commonUI/general/res/sass/_archetypes.scss
    #	platform/commonUI/general/res/sass/_constants.scss
    #	platform/commonUI/general/res/sass/_icons.scss
    #	platform/commonUI/general/res/sass/_main.scss
    #	platform/commonUI/general/res/sass/_mixins.scss
    #	platform/commonUI/general/res/sass/controls/_buttons.scss
    #	platform/commonUI/general/res/templates/controls/time-controller.html
    #	platform/commonUI/themes/snow/res/sass/_constants.scss

commit a75ea67b8c
Author: Henry <akhenry@gmail.com>
Date:   Mon Aug 1 17:11:01 2016 -0700

    Format updates when time system selected

commit 9b58aa0052
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Mon Aug 1 17:03:00 2016 -0700

    [TCv2] Add conductorService for compatibility

    Add conductor service for compatibility with old plugins that depend
    on the conductor service.

commit 579c6b6d24
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Aug 1 16:30:51 2016 -0700

    [Frontend] Styling TC unsynced elements

    Fixes #933
    WIP: Styling for unsynced elements

commit 762f43fa61
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Aug 1 16:26:47 2016 -0700

    [Frontend] Styling TC unsynced elements

    Fixes #933
    WIP: Styling for unsynced elements

commit ce5d0ef5bd
Author: Henry <akhenry@gmail.com>
Date:   Mon Aug 1 16:03:27 2016 -0700

    Merged stylesheet changes

commit 142ee2f336
Merge: 482fcbf 523d674
Author: Henry <akhenry@gmail.com>
Date:   Mon Aug 1 15:44:49 2016 -0700

    Added LocalTimeSystem and merged latest styles

commit 482fcbf6ee
Author: Henry <akhenry@gmail.com>
Date:   Mon Aug 1 15:14:23 2016 -0700

    Refactored bundle

commit 523d6743fb
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Aug 1 12:00:53 2016 -0700

    [Frontend] Added support for thematic styling of Time Conductor v2

    Fixes #933
    Added theme sass files

commit 7af22126d4
Author: Henry <akhenry@gmail.com>
Date:   Wed Jul 27 12:05:03 2016 -0400

    Prevent tabbing into end bounds when not in fixed mode

commit 8e59072537
Author: Henry <akhenry@gmail.com>
Date:   Wed Jul 27 11:55:12 2016 -0400

    Removed LAD and Realtime modes

commit c1bbc4f01d
Author: Henry <akhenry@gmail.com>
Date:   Wed Jul 27 10:38:04 2016 -0400

    Code cleanup

commit aa4a5e56f9
Author: Henry <akhenry@gmail.com>
Date:   Tue Jul 26 16:55:00 2016 -0400

    Improved support from plot

commit 5b2eb72b16
Author: Henry <akhenry@gmail.com>
Date:   Tue Jul 26 08:33:30 2016 -0400

    [Time Conductor] Addressed documentation issues

commit 1b7fc57d21
Author: Henry <akhenry@gmail.com>
Date:   Mon Jul 25 16:55:27 2016 -0400

    Added status support to plots

commit a4f6f6f50b
Author: Henry <akhenry@gmail.com>
Date:   Mon Jul 25 12:09:15 2016 -0400

    Added license

commit 19fd63b850
Merge: c2c8e16 a10ded2
Author: Henry <akhenry@gmail.com>
Date:   Thu Jul 21 20:06:50 2016 -0700

    Merge branch 'open933-frontend-b' into open933

commit c2c8e16453
Author: Henry <akhenry@gmail.com>
Date:   Thu Jul 21 20:03:40 2016 -0700

    Added scale sensitive formatting to UTCTimeFormat

commit a10ded25b4
Merge: da7c636 e6d8944
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 20 18:33:58 2016 -0700

    Merge remote-tracking branch 'origin/open933' into open933-frontend-b

    # Conflicts:
    #	platform/features/conductor-v2/res/sass/time-conductor.scss
    #	platform/features/conductor/res/sass/time-conductor.scss

commit da7c636724
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 20 18:22:20 2016 -0700

    [Frontend] Time Conductor v2 styling

    Fixes #933
    Redo TC icon to use font symbol, added
    new symbol for brackets to font files; font
    anti-aliasing mod for .ui-symbol class;
    layout tweaks; mobile tweaks.

commit b392633bc6
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 20 15:48:22 2016 -0700

    [Frontend] Time Conductor v2 styling

    Fixes #933
    WIP: Significant mobile and desktop style tweaks;
    moved constants into their own include file;

commit ff1678435e
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 20 11:43:40 2016 -0700

    [Frontend] Time Conductor v2 styling

    Fixes #933
    Changed desktop and mobile RT UI to display
    end datetime and hide start;
    WIP: mobile styling for main UI of TC;

commit 2124fe01e1
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 20 10:18:42 2016 -0700

    [Frontend] Renew support for Time Conductor v1

    Fixes #933
    Minor fixes to TCv1 for mobile

commit e6d8944547
Author: Henry <akhenry@gmail.com>
Date:   Tue Jul 19 20:17:06 2016 -0700

    Modified main.js

commit ea1defac28
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jul 19 18:33:24 2016 -0700

    [Frontend] Renew support for Time Conductor v1

    Fixes #933
    Time Conductors v1 and v2 now build and load their
    own isolated CSS files. All previous styling for TCv1
    should be re-enabled. Note that Conductor v2 mobile
    is not complete yet.

commit 2a19394334
Author: Henry <akhenry@gmail.com>
Date:   Tue Jul 19 19:54:52 2016 -0700

    Added compatibility layer to support existing plots and historical tables

commit f641edbce7
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jul 19 18:33:24 2016 -0700

    [Frontend] Renew support for Time Conductor v1

    Fixes #933
    Time Conductors v1 and v2 now build and load their
    own isolated CSS files. All previous styling for TCv1
    should be re-enabled. Note that Conductor v2 mobile
    is not complete yet.

commit 15a608a861
Author: Henry <akhenry@gmail.com>
Date:   Mon Jul 18 18:44:29 2016 -0700

    Populate format in input fields

commit 334ca64551
Merge: 0af49ef 4087b9c
Author: Henry <akhenry@gmail.com>
Date:   Mon Jul 18 14:25:02 2016 -0700

    Merged open933-frontend

commit 0af49efe06
Author: Henry <akhenry@gmail.com>
Date:   Mon Jul 18 08:23:27 2016 -0700

    Refactored out modes, time systems, etc.

commit 4087b9cdde
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Fri Jul 15 14:39:29 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    WIP: Fixed look for Firefox

commit 43a804eef4
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Jul 15 07:54:32 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    WIP: Added zoom current range indicator;
    tweaks to style

commit b3a4f52fe2
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 14 18:30:49 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    WIP: Adding zoom control with HTML5
    input range type; Refactored sass slightly
    to move display: inline-block out of mixin
    containerBase and into .s-btn.

commit 671e3016d4
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 14 16:40:05 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    New _animations scss include, moved
    scss around.

commit 379828315f
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 14 16:39:27 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    New _animations scss include, moved
    scss around.

commit 8c5538ec4d
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 14 14:58:18 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    "Sticky" clock anim for LAD mode

commit 2f9fbfef7f
Author: Henry <akhenry@gmail.com>
Date:   Wed Jul 13 20:33:47 2016 -0700

    More refactoring

commit 2baca659ca
Author: Henry <akhenry@gmail.com>
Date:   Wed Jul 13 19:50:58 2016 -0700

    Refactoring

commit 8b694ef337
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 13 19:42:51 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    In-progress: color/size tweaks, fixes for espresso
    theme

commit e193e3dfba
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 13 19:16:27 2016 -0700

    Merge open933 latest, resolve conflicts

    Fixes #933
    Fair amount of manual fixing in time-conductor.html

commit 8214c8e895
Merge: 33b2225 14463d3
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 13 19:16:00 2016 -0700

    Merge open933 latest, resolve conflicts

    Fixes #933
    Fair amount of manual fixing in time-conductor.html

commit 33b2225d10
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 13 18:48:17 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    In-progress: restructured markup to move
    modeModel farther out; animated icon

commit 14463d39a8
Author: Henry <akhenry@gmail.com>
Date:   Wed Jul 13 18:17:27 2016 -0700

    Added end delta

commit fcfda50e73
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 13 15:00:16 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    In-progress: color tweaks, bar sizing,
    field widths

commit 06af84c161
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 13 13:14:32 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    In-progress: fixed SVG text color, field
    styling for fixed vs. real-time, markup cleanup

commit 5238aa2731
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 13 08:07:59 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    In-progress; fixed SVG text color

commit fd29473664
Author: Henry <akhenry@gmail.com>
Date:   Tue Jul 12 15:02:39 2016 -0700

    Support resize

commit 97f3fd516b
Author: Henry <akhenry@gmail.com>
Date:   Tue Jul 12 10:14:26 2016 -0700

    Changed default duration to fifteen minutes

commit 088416905d
Author: Henry <akhenry@gmail.com>
Date:   Tue Jul 12 10:08:08 2016 -0700

    Added duration

commit 2056d87453
Merge: 585da38 64ce8a2
Author: Henry <akhenry@gmail.com>
Date:   Mon Jul 11 14:27:30 2016 -0700

    Merge branch 'open933-frontend' into open933

commit 64ce8a2b2a
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jul 11 14:03:41 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    Color adjusts, mini super-menu size
    and font tweaks, glyphs added to selector,
    SVG style fixes in progress

commit 585da38a16
Author: Henry <akhenry@gmail.com>
Date:   Mon Jul 11 13:46:46 2016 -0700

    Fixed some merge issues

commit bf0e85a94c
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jul 11 11:35:26 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #933
    Renamed main class; removed unused <style>
    defs

commit 84b7a9dc2f
Merge: 7b7b21d 11caa83
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jul 11 11:29:35 2016 -0700

    Merge remote-tracking branch 'origin/open933' into open933-frontend

    Fixes #933
    Conflicts:
    	platform/features/conductor-v2/src/TimeConductorController.js

commit 11caa8396a
Author: Henry <akhenry@gmail.com>
Date:   Mon Jul 11 11:18:23 2016 -0700

    Updated modes

commit 0017b77439
Merge: 5cc81ba 788483e
Author: Henry <akhenry@gmail.com>
Date:   Mon Jul 11 11:06:22 2016 -0700

    Merged markup changes

commit 7b7b21d748
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jul 11 11:05:47 2016 -0700

    [Frontend] Styling of Time Conductor v2

    Fixes #933
    Tweaks to language; tweak to class name in markup

commit 788483ec13
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jul 11 10:37:08 2016 -0700

    [Frontend] Styling of Time Conductor v2

    Fixes #933
    Tweaks to language

commit 7b19f91ce6
Merge: 0a0bc55 4e7b69c
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jul 11 10:31:14 2016 -0700

    [Frontend] Merge latest from open933

    Fixes #933
    Resolve conflicts in
    mode-menu.html, mode-selector.html,
    time-conductor.html; apply tweaks, language, etc.

commit 5cc81ba12a
Author: Henry <akhenry@gmail.com>
Date:   Mon Jul 11 10:26:34 2016 -0700

    [Time Conductor] Added mode class to time conductor

commit 0a0bc55f5f
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Jul 8 17:11:43 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #993
    In-progress; mode menu names and
    descriptors modified, markup cleaned up

commit 4e7b69c4df
Author: Henry <akhenry@gmail.com>
Date:   Fri Jul 8 16:57:50 2016 -0700

    Enabled fixed and real-time modes

commit cf83040c4b
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Jul 8 16:54:49 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #993
    In-progress; Create menu refactoring and new
    mini Create menu

commit 32f7bc86af
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Jul 8 16:54:13 2016 -0700

    [Frontend] Styling for Time Conductor v2

    Fixes #993
    In-progress; class renaming continued,
    cleanups in markup file, in-page styles
    ported to scss

commit e230b92946
Author: Henry <akhenry@gmail.com>
Date:   Fri Jul 8 15:15:12 2016 -0700

    Fixed bug with date selector having to be clicked twice

commit 58ed500ecf
Author: Henry <akhenry@gmail.com>
Date:   Thu Jul 7 16:57:03 2016 -0700

    Time sync via conductor

commit bca5eb0fdb
Author: Henry <akhenry@gmail.com>
Date:   Thu Jul 7 09:47:46 2016 -0700

    [Time Conductor] #933 Initial markup
2016-11-25 15:02:34 -08:00
c98286d426 Merge pull request #1329 from nasa/jscs-reports-1314
[Build] Output JSCS reports
2016-11-17 11:08:30 -08:00
d368bc2351 Merge pull request #1328 from nasa/open1322
[Composition] Modified call to object utils to provide identifier correctly
2016-11-17 11:07:35 -08:00
6a7b77ccf5 Merge pull request #1326 from nasa/image-brightness-contrast
[Imagery] Brightness/contrast controls
2016-11-17 11:06:05 -08:00
242eb6d733 [Build] Restore missing semicolon
Semicolons are our friends.
2016-11-16 09:36:22 -08:00
2991e9894d [Build] Move report to correct location 2016-11-16 09:28:56 -08:00
3dc8bc87fc [Build] Add jscs html reporter
Fixes #1314
2016-11-15 16:00:40 -08:00
cfb99eaf80 [Imagery] Add doc to mct-background-image 2016-11-15 14:08:00 -08:00
5dee588c36 Revert "[Frontend] Updated example images"
This reverts commit 251e3b5646.
2016-11-15 14:00:51 -08:00
2f8c03ecb2 [Imagery] Simplify filter reset 2016-11-15 14:00:12 -08:00
2dfde9a612 [Imagery] Test mct-background-image filters 2016-11-15 13:54:23 -08:00
3dade275d4 Merge pull request #1318 from nasa/open1315
Add styling for .s-status-missing
2016-11-15 12:56:26 -08:00
2f5dc8a887 [Frontend] Styling for controls
Fixes #1324
New reset glyph; Reset button complete,
final sanding.
2016-11-15 12:24:14 -08:00
9b11684ae9 [Frontend] Styling for controls
Fixes #1324
CSS, markup, WIP adding reset button
2016-11-15 10:54:00 -08:00
251e3b5646 [Frontend] Updated example images
Fixes #1324
All images are open licensed for reuse
2016-11-15 10:42:34 -08:00
03b47b43ad [Build] Bump version number, restore SNAPSHOT status
...to open sprint Roddenberry,
https://github.com/nasa/openmct/milestones/Roddenberry
2016-11-15 10:11:37 -08:00
18e51aaff7 [Build] Remove SNAPSHOT status
...to close sprint Robinson,
https://github.com/nasa/openmct/milestones/Robinson
2016-11-15 10:00:16 -08:00
5c31c6084c [Composition] Modified call to object utils to provide identifier correctly. 2016-11-15 11:37:55 +00:00
b1464efdaf [Frontend] Styling for controls
Fixes #1324
CSS, markup, new glyphs for
brightness and contrast
2016-11-14 18:12:06 -08:00
3e6e068f7f [Imagery] Sketch in brightness/contrast controls
Fixes #1324
2016-11-14 12:19:23 -08:00
f7a08c7087 [Frontend] Styles for .s-status-missing
Fixes #1315
For https://developer.nasa.gov/ResourceProspector/warp/issues/219
2016-11-09 11:19:48 -08:00
dfa4591834 Merge pull request #1316 from nasa/ghost-object-problems
Ghost object problems
2016-11-08 16:27:09 -08:00
4d3ec398c9 [Style] Fix style, disable tests
disable tests for later follow-up.
2016-11-08 16:21:38 -08:00
b169089156 get rid of feel-good code 2016-11-08 16:07:53 -08:00
5b6f95bd4a [Fixed] Specify default layout grid (#1296)
* [Fixed] Specify default layout grid

Previously users would see blank values for grid size
even though a default was applied.  Users will now
see default values for grid size which should prevent
them from accidentally changing grid size.

Fixes https://github.com/nasa/openmct/issues/1285

* [Fixed] Don't hardcode grid size

Remove hardcoded grid size per comments.

https://github.com/nasa/openmct/pull/1296#issuecomment-259231499

* [Fixed] read layout before initial refresh

Read the layoutGrid sizes from scope (when watch is registered)
before refreshing elements, to ensure that layoutGrid is set
properly.

https://github.com/nasa/openmct/pull/1296#issuecomment-259231499

* [Spec] Update spec to match

Update spec to trigger watch on initialization to ensure
layoutGrid is set.

https://github.com/nasa/openmct/pull/1296
2016-11-08 14:59:09 -08:00
66a6b6d89b Always put in cache on mutation, assuming persistence 2016-11-08 14:58:15 -08:00
d74eba1922 Move mutation listening out of cache service 2016-11-08 14:14:56 -08:00
9a7f69a614 Model Cache updates models on mutation 2016-11-08 13:54:31 -08:00
0578a651da cache on instantiate 2016-11-08 13:51:50 -08:00
f991dcfb76 Clear cache when no transactions active 2016-11-08 13:51:30 -08:00
42c48cb93b disable cache 2016-11-08 11:20:34 -08:00
67b763c4c0 Merge pull request #1313 from nasa/disable-local-1270
[Build] Don't enable local storage by default
2016-11-08 11:18:49 -08:00
2708562872 [Transaction] Sync mutation within transaction 2016-11-08 10:34:20 -08:00
9578fb0cd8 [Views] Update representations on mutation (#1312)
* [Core] Log errors from topic

Log full error (including stack trace) when catching errors
from the topic service. Aids debugging of #1303 (and should
aid in future debugging of any similar issues.)

* [API] Fix identifier usage in handleMutation

To address console errors observed in the context of #1303

* [Views] Listen to mutation

Listen for mutation instead of watching modified timestamp;
more reliable due to recent API changes. Fixes #1303.

* [Views] Update spec for mct-representation

...to reflect changes for #1303
2016-11-07 10:08:53 -08:00
a728f2368c [Build] Don't enable local storage by default
...except for the dev instance of Open MCT run from index.html.
Fixes #1270
2016-11-04 14:58:35 -07:00
547696d797 [Views] Repair view registry for mainViews (#1308)
* [Views] Rewrite mct-view

...to make it a simple way to include non-Angular views, without
integrating unnecessarily with other architectural concerns.
Supports restoration of view registration functionality to fix
#1307

* [API] Use identifier as property name

* [API] Add adapter capability

...to simplify adapter layer (allowing new-style objects to be
retrieved via capability.)

* [API] Add AdaptedViewController

* [API] Add template for adapted views

* [API] Add AdaptedViewPolicy

* [API] Wire in view adapter

* [API] Fix adapter capability implementation

* [API] Don't create new scope from mct-view

...to allow use on same element as ng-controller (and because a
new scope just is not necessary.)
2016-11-03 10:37:58 -07:00
025b69541e Merge pull request #1222 from BogdanAlexandru/mct1221
[Notifications] Fix and harden the NotificationService
2016-11-03 09:45:06 -07:00
5aa95c0415 Merge pull request #1207 from Proekspert/fix-tutorial
[Documentation] Fixed module reference
2016-11-02 09:24:27 -07:00
d63c401e44 [Notifications] Remove custom autoDismiss 2016-10-29 11:18:07 +03:00
c9ac85089a Merge branch 'master' into mct1221 2016-10-29 10:41:18 +03:00
a8c9b6f7fe Fixes #1239 make notification icon clickable 2016-10-27 19:20:45 -04:00
eca9968a9f Merge pull request #1302 from nasa/types-nonfunctional-1294
[API] Fix type registration
2016-10-27 16:01:16 -07:00
736c89cfc6 Merge pull request #1301 from nasa/search-indexing-1279
Add modelService compatibility adapater
2016-10-27 15:54:06 -07:00
9a0fcc045c [API] Simplify type registration
https://github.com/nasa/openmct/pull/1302#discussion_r85417042
2016-10-27 15:30:34 -07:00
a3459679d0 [JSDoc] basic jsdoc 2016-10-27 13:01:29 -07:00
12333f3417 [API] Use correct method name in docstring 2016-10-27 12:22:46 -07:00
2bf05ae40f [API] Add missing semicolon, satisfy JSHint 2016-10-27 12:21:16 -07:00
833bad067e [API] Add creatable property to example 2016-10-27 12:16:57 -07:00
23eff4b924 [API] Fix TypeRegistry docstring
Fixes #1295
2016-10-27 12:16:07 -07:00
30b769d741 [API] Repair type registration
Fixes #1294
2016-10-27 12:10:45 -07:00
d813029046 [API] Providers get with identifier
Providers fetch objects using a full identifier.  This ensures a consistent
interface.

Related to https://github.com/nasa/openmct/issues/1279
2016-10-27 11:58:01 -07:00
81de6119fe [Compat] model service adapter
Provide adapter that ensures model service can fetch models
provided via new API.

Fixes https://github.com/nasa/openmct/issues/1279
2016-10-27 11:56:57 -07:00
365af918f3 Merge pull request #1297 from nasa/fast-gulp-develop-1268
[Dev] develop with stylesheets
2016-10-27 11:52:48 -07:00
40fb144d09 [Dev] develop with stylesheets
Remove 'install' step from gulp develop task, instead
run 'stylesheets' to build stylesheets.  Result is much
faster execution of gulp develop as is expected for
a development tool.

Fixes https://github.com/nasa/openmct/issues/1268.
2016-10-26 12:55:47 -07:00
8cacff37ab Merge pull request #1292 from nasa/my-items-1284
[Roots] Restore legacy root provider
2016-10-26 10:24:24 -07:00
70985c5dbd Revert "[Roots] Remove obsolete provider"
This reverts commit b49fef78f5.

Fixes #1284
2016-10-26 10:09:10 -07:00
9dec99824e Revert "[Roots] Remove obsolete spec"
This reverts commit 2cced53c97.
2016-10-26 10:08:35 -07:00
d4730e1656 Revert "[Roots] Remove legacy root model provider"
This reverts commit 7b0506bbdb.
2016-10-26 10:08:30 -07:00
c079868224 Merge pull request #1271 from nasa/open1256
[Examples] Simplified MSL example and fixed issues with new API
2016-10-26 09:55:18 -07:00
54a59c5e6f Merge pull request #1237 from tylerbrewer2/master
[Frontend] Ensure stacking order of save drop-down Fixes #1205
2016-10-26 09:54:37 -07:00
0804a16314 Merge pull request #1269 from nasa/my-items-1264
[Roots] Support async root registration, with My Items
2016-10-21 13:34:23 -07:00
4cc020f0ea [Examples] Simplified MSL example, fixed object tree not loading by default, renamed. Fixes #1256. Fixes #1255 2016-10-20 14:33:12 -07:00
b49fef78f5 [Roots] Remove obsolete provider 2016-10-19 17:02:12 -07:00
2cced53c97 [Roots] Remove obsolete spec 2016-10-19 16:54:26 -07:00
f6253ae7ed [Roots] Remove unnecessary model provider 2016-10-19 16:53:03 -07:00
3f50bdb334 [Roots] Distinguish objects.get
...which needs to accept full identifiers from namespace-specific
object providers, which only need to accept keys.
2016-10-19 16:47:11 -07:00
2a79813460 [Roots] Remove unnecessary RootRegistrar 2016-10-19 16:37:10 -07:00
650824574c [Roots] Add new root model provider
...to read roots from the new API's registry.
2016-10-19 16:20:02 -07:00
7b0506bbdb [Roots] Remove legacy root model provider 2016-10-19 16:19:11 -07:00
a3847bcca5 [Roots] Add useful logging for components 2016-10-19 16:18:50 -07:00
a143b21ea1 [Roots] Register roots with new API
Register roots added via old API with new API when the application
starts. Fixes #1264.
2016-10-19 15:01:39 -07:00
64ff463200 Revert "Revert "Async root registration"" 2016-10-19 14:55:07 -07:00
08ca7659e7 Merge pull request #1260 from nasa/open1257
[Composition] Fix adapter composition policy
2016-10-18 12:04:04 -07:00
d7edfb4cc6 Merge pull request #1263 from nasa/revert-1252-async-root-registration
Revert "Async root registration"
2016-10-18 10:52:42 -07:00
4eca80a770 Revert "Async root registration" 2016-10-18 10:48:26 -07:00
56a662841e Merge pull request #1254 from nasa/open1235
[Frontend] Fixes to Export buttons
2016-10-18 09:32:28 -07:00
8878ea4cf7 Merge pull request #1244 from nasa/restore-fixed-pos
[API] Enable fixed position view
2016-10-18 09:32:08 -07:00
eb32a798b8 Merge pull request #1252 from nasa/async-root-registration
Async root registration
2016-10-18 09:31:46 -07:00
0759ba6722 [Composition] Fix adapter composition policy
...as this had fallen out-of-date with existing APIs.
Fixes #1257.
2016-10-17 10:43:12 -07:00
bfdf7b822f [Notifications] Cover direct dismiss and minimize 2016-10-16 15:34:11 +03:00
7dde924fcc Merge branch 'master' into mct1221 2016-10-15 14:10:24 +03:00
b8cb41b1da [Frontend] Fixes to export buttons
Fixes #1235
Sass and markup mods; changes to
.l-btn-set and related classes
2016-10-14 16:53:00 -07:00
971b92acbb Merge remote-tracking branch 'origin/master' into restore-fixed-pos 2016-10-14 13:53:26 -07:00
d643efa9bb [Style] Remove unused function
https://github.com/nasa/openmct/issues/1251
2016-10-14 13:16:00 -07:00
08c0aeb2d5 [Test] Add tests for root registration
Add unit tests for RootRegistry and RootObjectProvider.

https://github.com/nasa/openmct/issues/1251
2016-10-14 13:12:45 -07:00
b0940eb33e [Objects] refactor out RootObjectProvider
Refactor RootObjectProvider to separate file for simplicty.

https://github.com/nasa/openmct/issues/1251
2016-10-14 12:47:09 -07:00
6ec858b237 [Docs] Update root registration in README.
https://github.com/nasa/openmct/issues/1251
2016-10-14 12:38:52 -07:00
891412bdb9 [Roots] Move my-items to separate bundle
My Items root is now opt-in, and does not need to be enabled for all
deployments.  My Items is enabled by default in the development edition.

https://github.com/nasa/openmct/issues/1251
2016-10-14 12:38:47 -07:00
1947802a35 [ObjectAPI] support async root loading
Overload addRoot method to support async root loading.  By supplying a
function you can defer loading to later, and by allowing those functions
to return a promise, execution can be asynchronous.

Remove "removeRoot" as the assumption will be that roots are opt in, and
instead of removing a Root, an application developer should never configure
it in the first place.

Fixes https://github.com/nasa/openmct/issues/1251
2016-10-14 12:38:28 -07:00
3b06e32b40 Merge pull request #1250 from nasa/open1249
[Documentation] Changed build location of docs so that API docs are pushed to website
2016-10-14 10:57:51 -07:00
a2711c2c08 [Documentation] Changed build script to produce new API docs for website. Fixes #1249t 2016-10-13 16:27:35 -07:00
3e6c9fa318 Merge pull request #1247 from nasa/fix-built-file
[Build] require correct module
2016-10-12 15:25:37 -07:00
2e49c5932a [Build] require correct module
Require the openmct module so that distributed files work properly.

Related to #1212
2016-10-12 15:21:57 -07:00
abf750f894 Merge branch '1089-integration' 2016-10-12 14:43:45 -07:00
137434af1b [API] Enable fixed position view 2016-10-12 14:06:39 -07:00
ac4d21b252 [Build] Load v2 conductor, don't enable
Loads the v2 conductor so that it is included in the build openmct
file.  It is not enabled by default.
2016-10-12 13:57:11 -07:00
db362a0efc Merge pull request #1243 from nasa/api-swg-enable
[API] Enable example bundles
2016-10-12 13:54:12 -07:00
887631500b [Style] Remove duplicate key
Remove duplicate entry, fix JSHint issues.
2016-10-12 13:53:22 -07:00
65043d0ff3 squash merge open933 into integration-1089, resolve merge conflicts. 2016-10-12 13:47:56 -07:00
1bf7c06b1e [API] Enable example bundles
Enable example bundles in the default build. Addresses regression
in development environments introduced by #1212.
2016-10-12 13:13:47 -07:00
7b218c7f02 Merge pull request #1212 from nasa/api-1124b
[API] Integrate new API
2016-10-12 12:33:44 -07:00
3572877a2e Merge pull request #1213 from nasa/api-platform-updates
[API] Miscellaneous platform updates
2016-10-12 12:28:52 -07:00
f2d44114fa Merge pull request #874 from nasa/persist-on-mutation-825
[Persistence] Persist on mutation
2016-10-11 10:52:44 -07:00
d1d2067ad5 [Notifications] Extract autoDismiss logic 2016-10-08 22:51:01 +03:00
9456370077 [Notifications] Extract minimize and dismiss logic 2016-10-08 21:36:31 +03:00
0833674b91 [Persistence] Address refactoring error
...caught by unit tests
2016-10-07 11:54:54 -07:00
947b54555a [Edit Mode] Simplify transaction stack
https://github.com/nasa/openmct/pull/874#r76593588
2016-10-07 11:35:35 -07:00
1a88c9a651 Merge remote-tracking branch 'origin/master' into persist-on-mutation-825 2016-10-07 11:27:58 -07:00
567bb6fa2a [API] Fix ActionDialogDecorator's dependencies 2016-10-07 11:10:41 -07:00
00d0b71080 [API] Use ViewRegistry from dialog adapter
https://github.com/nasa/openmct/pull/1212#pullrequestreview-2458991
2016-10-07 11:07:53 -07:00
580e10b024 [API] Only use strategy where needed
Satisfies JSHint.
2016-10-07 10:15:02 -07:00
fbe9621387 [API] Support telemetry request strategies
https://github.com/nasa/openmct/pull/1212#discussion_r81880741
2016-10-06 18:00:32 -07:00
13b5e7c00e [API] Remove toLegacyDefinition
https://github.com/nasa/openmct/pull/1212#discussion_r81666469
2016-10-06 17:50:01 -07:00
09d59f00e7 [API] Remove silly old comment
https://github.com/nasa/openmct/pull/1212#discussion_r82086807
2016-10-06 17:48:08 -07:00
772d24b173 [API] Avoid memory leak
https://github.com/nasa/openmct/pull/1212#discussion_r81882955
2016-10-06 17:46:26 -07:00
cbd001e280 Merge pull request #1232 from nasa/open1216
[Tables] Fixed table scroll by modifying selection of scrollable element. Fixes #1216
2016-10-06 17:41:54 -07:00
6d2c5f7fd4 [Frontend] Ensure stacking order of save drop-down Fixes #1205 2016-10-06 18:49:21 -04:00
1f6ca8bcc3 Merge branch 'master' of https://github.com/nasa/openmct into fix-tutorial
PR is also addresses #1206
2016-10-05 10:48:28 +03:00
bff4e120a7 [Tables] Modified selection of scrollable element. Fixes #1216 2016-10-04 19:14:47 -07:00
8a0018177a Merge pull request #1204 from BogdanAlexandru/mct1198
[Edit] Switch other edit actions to mct-control
2016-10-04 18:09:16 -07:00
c9c8998fa2 Merge pull request #1196 from hudsonfoo/open1185
[Timeline] Add battery starting state-of-charge
2016-10-04 18:06:50 -07:00
e19edbb27a Merge branch 'master' into mct1221 2016-10-03 04:50:41 +03:00
f2fe6a9885 [Notification] New tests + bugfix
New test suite for the notification service covering common use cases. Fixed the bug where autoDismiss would be set wrong for info notifications; also treating info notifications appropriately now.
2016-10-03 04:19:55 +03:00
0442a31153 [Notification] Rename variables for clarity
In the spec: NotificationService knows about concepts like "info", "alert" and "error" only, having a plain info notification model called successModel doesn't help much and may be confusing at times (makes you think it's something the service treats separately).
2016-10-02 23:41:19 +03:00
e03c725b86 [Style] Minor style changes 2016-10-01 22:40:21 +03:00
b0e842863d Squashed commit of the following:
commit 6b5528a4fc
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 17:22:27 2016 -0700

    [API] Don't use new composition for legacy objects

commit 2af993b0bc
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 17:19:52 2016 -0700

    [API] Enable bundles from spec

commit c762d58b5a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 17:12:42 2016 -0700

    [API] No, don't enable bundles by default

commit 219c9348d9
Merge: f8819ee 5b0fa90
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 17:11:05 2016 -0700

    Merge remote-tracking branch 'origin/master' into api-1124b

    Conflicts:
    	bower.json

commit f8819ee946
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 17:05:40 2016 -0700

    [API] Fix failing specs

commit ce6c6385c3
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 16:55:58 2016 -0700

    [API] Remove failing spec

commit ef0264d864
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 16:23:17 2016 -0700

    [API] Satisfy JSCS

commit 044b1b627d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 16:17:35 2016 -0700

    [API] Run gulp fixstyle

commit 5b6f13f521
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 16:15:30 2016 -0700

    [API] Satisfy JSLint

commit 5b2c0e9aee
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 15:47:54 2016 -0700

    [API] Adapt composition capability

commit dd7d8d2642
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 15:18:51 2016 -0700

    [API] Fix dependency issues with Composition

commit 08e28018c1
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 15:09:09 2016 -0700

    [API] Don't instantiate Error

commit 3b1fe93191
Merge: 2b66a4d c874ae7
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 15:08:01 2016 -0700

    Merge remote-tracking branch 'origin/api-platform-updates' into api-1124b

commit 2b66a4d604
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 15:06:50 2016 -0700

    [API] Wire in ObjectAPI appropriately

commit 70c810b85d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 14:51:26 2016 -0700

    [API] Remove obsolete define parameter

commit c874ae7afd
Merge: 34e07b9 c27c0c5
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 14:46:37 2016 -0700

    Merge remote-tracking branch 'origin/master' into api-platform-updates

commit fc5c07aeb6
Merge: 2976c9e ed10249
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 14:44:54 2016 -0700

    Merge remote-tracking branch 'origin/fix-jspdf-version-1214' into api-1124b

commit 2976c9e703
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 14:39:33 2016 -0700

    [API] Really fix EventEmitter import

commit 54d2b00e67
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 14:37:20 2016 -0700

    [API] Update licenses correctly

    Instead of double-documenting Zepto, document eventemitter3

commit 061f9d6deb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 14:32:10 2016 -0700

    [API] Update EventEmitter dependency

commit 1de9d182a7
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 14:20:10 2016 -0700

    [API] Add license info for new dependencies

commit 810150d0d7
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 13:41:28 2016 -0700

    [API] Update documentation to reflect API status

commit 1c0999b512
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 13:26:59 2016 -0700

    [API] Include revision info in minified openmct

commit 774ae03c3e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 13:23:11 2016 -0700

    [API] Add license headers

commit 1defee8953
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 13:16:36 2016 -0700

    [API] Decruft README.md for objects

    ...as this content is now in JSDoc

commit 7b9ac3e7fb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 13:11:03 2016 -0700

    [API] Remove tutorial directories

commit f2178e2b43
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 13:08:33 2016 -0700

    [API] Decruft unused view

    ...from context menu prototyping

commit 0094fea3f7
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 13:07:55 2016 -0700

    [API] Decruft unused gesture

commit 7f79abe849
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 13:07:25 2016 -0700

    [API] Remove unused OverlayManager

commit f43bb6e03d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 13:05:16 2016 -0700

    [API] Decruft unused Region

commit 8f3c3d910e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 13:04:23 2016 -0700

    [API] Decruft unused gesture

commit 0956811adc
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 13:00:00 2016 -0700

    [API] Remove obsolete Selection.js

commit bcc5a4e2ca
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:57:55 2016 -0700

    [API] Remove README to decruft

    Content is now provided in JSDoc

commit 27b6a51887
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:56:16 2016 -0700

    [API] Remove README to decruft

    Content is now provided in JSDoc

commit bb04d9db4a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:55:38 2016 -0700

    [API] Remove obsolete method to decruft

commit 7c3bfae0a6
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:53:26 2016 -0700

    [API] Remove obsolete script to decruft

commit 471fe7453b
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:52:51 2016 -0700

    [API] Remove empty View script

    ...and move API docs to ViewRegistry

commit 0d0526627b
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:50:37 2016 -0700

    [API] Decruft unused AngularView

commit 43e35179a3
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:49:08 2016 -0700

    [API] Continue decrufting

commit 59634be565
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:46:36 2016 -0700

    [API] Decruft unused script

commit 3bd8dd9928
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:45:20 2016 -0700

    [API] Decruft unused script

commit b5f1f98555
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:38:03 2016 -0700

    [API] Minimize logic in openmct module

commit 11965304fb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:35:15 2016 -0700

    [API] Remove redundant openmct module

commit 742d649d38
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:29:34 2016 -0700

    [API] Decruft unused dependency

commit 6a47df095b
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:27:53 2016 -0700

    [API] Remove gulp api task

commit 0012ca48c1
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 12:27:39 2016 -0700

    [API] Simplify JSDoc build

    ...since extraneous documentation no longer needs to be
    worked-around.

commit 34e07b938d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 10:42:48 2016 -0700

    [API] Update StyleSheetLoaderSpec

    ...to reflect asset path details

commit 230230aa94
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 10:37:31 2016 -0700

    [API] Remove js extension from import

    ...to avoid confusing RequireJS and breaking test suite

commit 901846e6c1
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 10:29:03 2016 -0700

    [API] Use correct property for RT table template

commit 04b8326900
Merge: aed01d3 a93f41f
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 10:25:32 2016 -0700

    Merge branch 'api-platform-updates' into api-1124b

commit a93f41f1c3
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 10:25:22 2016 -0700

    [API] Miscellaneous platform updates

    Adds miscellaneous platform updates to include templates
    via the RequireJS text plugin; to support modification of
    asset paths; and to support priority order for gestures.

    Supports integration of new API, #1124.

commit aed01d3a23
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 10:20:09 2016 -0700

    [API] Remove examples

    ...as these do not necessarily reflect API updates

commit 09c73ef5f8
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 10:09:42 2016 -0700

    [API] Update MCT implementation

commit b1b6080161
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 09:56:50 2016 -0700

    [API] Rename types in api module

commit cb93da5e15
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 09:56:06 2016 -0700

    [API] Fix CompositionAPI module

commit d0e7eb29a9
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 30 09:51:35 2016 -0700

    [API] Mark MCT#selection as private

commit 5e9e6099b0
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 21:59:06 2016 -0700

    [API] Update TelemetryAPI to match docs

commit 6bd1af5c03
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 21:42:09 2016 -0700

    [API] Define LimitEvaluator interface

commit 3f20c1bb94
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 17:34:41 2016 -0700

    [API] Update ViewRegistry to match docs

commit 91214f2623
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 17:26:27 2016 -0700

    [API] Implement TypeRegistry methods

commit 1fde82e673
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 17:22:29 2016 -0700

    [API] Mark Selection as private

commit 0ae0abcfc3
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 17:20:27 2016 -0700

    [API] Update ObjectAPI to match docs

commit 6fe1e775e0
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 17:16:56 2016 -0700

    [API] Update GestureAPI to match docs

commit d4d9f9c467
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 17:08:54 2016 -0700

    [API] Update CompositionCollection to match docs

commit 0cb1ec9366
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 17:04:15 2016 -0700

    [API] Rewrite CompositionAPI to match docs

commit 6ab27302f6
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 16:49:42 2016 -0700

    [API] Document remaining Dialog method

commit dfc5021e11
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 16:47:33 2016 -0700

    [API] Fix JSDoc for Dialog

commit 9e3a3529e0
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 16:46:22 2016 -0700

    [API] Rename main module

commit 434ea5487a
Merge: 987d98b 45ecc7b
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 16:43:47 2016 -0700

    Merge branch 'api-1110' into api-1124b

commit 987d98b47e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 16:37:57 2016 -0700

    [API] Restore JSDoc for openmct module

commit 53974bd69a
Merge: ed8d331 d61f446
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 10:54:08 2016 -0700

    Merge branch 'subobject-selection-1126' into api-1124b

    Conflicts:
    	bower.json
    	index.html
    	main.js
    	src/openmct.js

commit ed8d331cd3
Merge: 7ce9bd9 7439d94
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 29 10:47:52 2016 -0700

    [API] Merge in latest from master

commit d61f446002
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Sep 26 15:21:43 2016 -0700

    [Selection] Add a click-elsewhere gesture

commit 763f7dd021
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Sep 26 12:37:02 2016 -0700

    [Selection] Begin adapting actions

commit cad255ce83
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Sep 26 11:52:14 2016 -0700

    [Selection] Use variable name expected by template

commit 3b4239fbd9
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Sep 26 11:43:38 2016 -0700

    [Selection] Use AngularView for context menus

commit 15ef89f455
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Sep 26 11:38:37 2016 -0700

    [Selection] Bring over context menu template

commit c9a0a469f6
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Sun Sep 25 20:30:42 2016 -0700

    [Selection] Position context menus

commit f926bd9762
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Sun Sep 25 19:38:03 2016 -0700

    [Selection] Position overlays

commit d79392aeaa
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Sun Sep 25 18:26:00 2016 -0700

    [Selection] Begin integrating OverlayManager

commit 9a5bda4917
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Sun Sep 25 18:22:07 2016 -0700

    [Selection] Sketch in overlay manager

commit 407550e6f4
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 23 15:48:43 2016 -0700

    [Selection] Inject actionRegistry

commit 8b44b44e38
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 23 15:46:45 2016 -0700

    [Selection] Generalize Registry

commit 8dfa8df28a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 23 15:45:46 2016 -0700

    [Selection] Allow providers to return array

    ...to allow one-to-many providers for actions, as is useful
    for Create et al (and, in this specific case, to support
    adapters.)

commit 9e19296b14
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 23 15:35:40 2016 -0700

    [Selection] Add ActionRegistry

commit 106632c21c
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 23 15:32:40 2016 -0700

    [Selection] Remove unused import

commit 235032a571
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 23 15:27:39 2016 -0700

    [Selection] Wire in new contextmenu

commit db41f6e64f
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 23 15:19:16 2016 -0700

    [Selection] Obey priority order

commit e83e0da521
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 23 15:16:32 2016 -0700

    [Selection] Export openmct from main.js

commit c411f8fbe3
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 23 15:07:03 2016 -0700

    [Selection] Go through openmct API

commit 4ce952846c
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 22 11:51:00 2016 -0700

    [Selection] Expose context menu adapter

commit fdab4a614f
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 22 11:48:44 2016 -0700

    [Selection] Expose contextual gesture

commit 152f55652f
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 22 11:46:37 2016 -0700

    [Selection] Add adapter for context menu

commit c46c42e576
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 21 15:39:56 2016 -0700

    [Selection] Sketch in AngularView

    ...for use in the adapter layer.

commit 75bf956c3d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 21 14:54:22 2016 -0700

    [Selection] Use context typedef

commit 0a44c48338
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 21 13:27:59 2016 -0700

    [Selection] Sketch in context menu gesture

commit e4c3412e8a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 21 13:16:24 2016 -0700

    [Selection] Sketch in context menu view

commit 4e1cfac4b9
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 21 12:30:36 2016 -0700

    [Selection] Expose inspector registry

commit 0a64e9f515
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 21 12:29:43 2016 -0700

    [Selection] Add ViewRegistry

commit 7341ed9d03
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 21 12:26:57 2016 -0700

    [Selection] Handle selection changes

    ...from the InspectorRegion

commit e2631bdcfd
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 21 11:27:24 2016 -0700

    [Selection] Listen/unlisten to selection

    ...from the inspector region

commit 773a7c0c24
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 21 11:25:21 2016 -0700

    [Selection] Begin adding Inspector region

commit fdcba66558
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 14 11:54:19 2016 -0700

    [Selection] Add legacy bundle

    ...to act as an adapter to legacy registration API

commit 3b1ed7821f
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 14 11:50:33 2016 -0700

    [Selection] Add openmct module

    ...to expose selection APIs

commit 1be517f3ea
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 14 11:46:06 2016 -0700

    [Selection] Don't reuse old paths for new items

commit 5e3dcadfa4
Merge: fd97f4d f732387
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 14 11:06:05 2016 -0700

    Merge remote-tracking branch 'origin/master' into subobject-selection-1126

    Conflicts:
    	bower.json
    	main.js
    	test-main.js

commit 45ecc7bb2b
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 14:10:51 2016 -0700

    [API] Ascending/descending order

commit a3c3f997cf
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 13:25:05 2016 -0700

    [API] Move down TC example

    ...to come after telemetry usage example

commit 1ae3ce57d0
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 13:23:06 2016 -0700

    [API] Telemetry registration example

commit 616e2b4d77
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 13:10:48 2016 -0700

    [API] Exemplify mutate/observe

commit 0e7d812db7
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 13:04:30 2016 -0700

    [API] Document ObjectAPI registration

commit c074f29a07
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 11:26:13 2016 -0700

    [API] Add gesture example

commit 92118d353e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 11:24:01 2016 -0700

    [API] Add Time Conductor example

commit b111eeff07
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 11:16:24 2016 -0700

    [API] Update reference

commit 8042e84911
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 11:15:26 2016 -0700

    [API] Add composition-related content

commit 631c4b5dda
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 11:06:27 2016 -0700

    [API] Describe composition property

commit c6baf2dc1f
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 10:58:00 2016 -0700

    [API] Make CompositionCollection an interface

commit 4db7e12d45
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 10:55:34 2016 -0700

    [API] Add example for views

commit b1799c695e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 10:46:49 2016 -0700

    [API] Add DomainObject

commit 5761c889bc
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 10:41:48 2016 -0700

    [API] Move MutableObject methods to ObjectAPI

commit 97cf26d438
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 10:27:42 2016 -0700

    [API] Telemetry provider

commit c4b83b7589
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 10:18:43 2016 -0700

    [API] Account for provider strategies

commit d56f30c15a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 10:15:57 2016 -0700

    [API] TelemetryRequest

commit 7279c5d857
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 10:12:47 2016 -0700

    [API] Mark properties as optional

commit 5d53ab83a3
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 10:11:52 2016 -0700

    [API] More TelemetryProperty properties

commit 4565e45b36
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 10:08:07 2016 -0700

    [API] Add TelemetryProperty for metadata

commit 5950daa6cb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 09:33:21 2016 -0700

    [API] Move out composition policy

commit 60800c913e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 09:28:26 2016 -0700

    [API] Gestures

commit 649567176d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 09:21:18 2016 -0700

    [API] Notes on context

commit 1df573b8c6
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 08:50:20 2016 -0700

    [API] Move types into registry

commit bc4ca10e53
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 08:45:18 2016 -0700

    [API] Separate out ViewRegistry

commit 1338f02541
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 08:32:21 2016 -0700

    [API] Clean up telemetry API docs slightly

commit 1cc6833c30
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 08:26:32 2016 -0700

    [API] Add request/subscribe JSDoc

commit a7a47a36d6
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 08:10:40 2016 -0700

    [API] Remove extraneous return jsdoc

commit 851d0f0d63
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Sep 7 08:09:37 2016 -0700

    [API] Clean up Composition API

commit 5a129de73d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 16:32:54 2016 -0700

    [API] Clarify language

commit 0cf634a412
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 16:30:05 2016 -0700

    [API] Add more front-page content

commit 702d7acf64
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 16:18:42 2016 -0700

    [API] Begin adding front page content

commit 69a500bf44
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 16:07:49 2016 -0700

    [API] Dedocument Selection

    ...and add a description to MCT#conductor

commit 82e5b009e8
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 13:58:19 2016 -0700

    [API] Move Identifier typedef

commit aafd0731ec
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 13:47:59 2016 -0700

    [API] Remove 'the API' section

    ...as this is now generated from JSDoc, more or less

commit c9705a5f2c
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 13:46:02 2016 -0700

    [API] Normalize line length

commit 7cc4a1262c
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 13:31:07 2016 -0700

    [API] Proofread intro

commit 02904a6081
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 13:28:49 2016 -0700

    [API] Link to openmct module in the preamble

commit 7ce9bd969a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 10:14:04 2016 -0700

    [API] Telemetry JSdoc

commit 8cafd2da7e
Merge: 6264ab7 bccd018
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 10:06:30 2016 -0700

    Merge remote-tracking branch 'origin/api-tutorial/telemetry' into api-1110

commit 6264ab75f3
Merge: 7a5cad2 b4dc502
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 10:03:59 2016 -0700

    Merge remote-tracking branch 'origin/api-tutorials' into api-1110

    Conflicts:
    	src/MCT.js
    	src/api/composition/CompositionCollection.js
    	src/api/composition/DefaultCompositionProvider.js
    	src/api/objects/MutableObject.js

commit 7a5cad20ec
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 09:58:08 2016 -0700

    [API] Add JSDoc for Dialog

commit 4de069b393
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 09:54:51 2016 -0700

    [API] JSDoc for Selection

commit 70abd5c1f9
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 09:47:06 2016 -0700

    [API] Document start event

commit 2a3a61da86
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 09:45:24 2016 -0700

    [API] Fix event memberofs in TimeConductor

commit 018bd022cc
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 09:42:04 2016 -0700

    [API] Document View API

commit 4739b36bc3
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 09:14:04 2016 -0700

    [API] Add metadata to View jsdoc

commit c9b1035a6d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 09:13:01 2016 -0700

    [API] Document Type.check

commit 6768328475
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 08:43:01 2016 -0700

    [API] Document MutableObject

commit 60c179eac3
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 08:32:18 2016 -0700

    [API] Add missing parameter names

commit a20e8d69b5
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 08:31:42 2016 -0700

    [API] More Objects doc

commit 1abcb248fe
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 08:13:26 2016 -0700

    [API] Include API.md as main page

commit a8151f5f22
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 08:09:03 2016 -0700

    [API] Document CompositionProvider

commit cdf21f3763
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 07:58:52 2016 -0700

    [API] Mark Composition as instance method

commit 341bceb4e2
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Sep 6 07:57:44 2016 -0700

    [API] Document composition API

commit 0470a02272
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 2 16:04:38 2016 -0700

    [API] Reference ObjectAPI

commit e3dc26c130
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 2 15:25:28 2016 -0700

    [API] Clean up docs

commit 96c3d1cac2
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 2 15:19:20 2016 -0700

    [API] Use JSDoc config

commit 2af778145d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 2 15:16:11 2016 -0700

    [API] Clean up JSDoc slightly

commit 5743eeb33a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 2 15:03:12 2016 -0700

    [API] Reference EventEmitter

commit f06f714bdc
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 2 15:02:18 2016 -0700

    [API] Document some public fields

commit d592bd1035
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 2 14:58:06 2016 -0700

    [API] Give up on borrows-style documentation

commit b5f62541ce
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Sep 2 14:54:27 2016 -0700

    [API] Add watch for API docs

commit 33ced4bccf
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 1 15:51:25 2016 -0700

    [API] Expose MCT on openmct

commit e37510dbab
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 1 15:13:52 2016 -0700

    [API] Ignore internal API after processing

commit f27c41014d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 1 14:50:13 2016 -0700

    [API] JSDoc for openmct.start()

commit bd796f2beb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 1 14:44:24 2016 -0700

    [API] Simple constructor documentation

commit bcc32c76d0
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 1 14:42:55 2016 -0700

    [API] Module-level JSDoc

commit ff2ec6690a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 1 14:35:52 2016 -0700

    [API] Rename module to openmct

commit 1e0fb3611d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Sep 1 12:34:54 2016 -0700

    [API] Render API docs to HTML

commit 1d4f36a7d9
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Aug 26 11:48:27 2016 -0700

    [API] Include JSDoc for mct namespace only

commit 0f96fbdd62
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Aug 26 11:31:56 2016 -0700

    [API] Treat mct as a namespace

commit e05fb57fe4
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Aug 26 09:47:50 2016 -0700

    [API] Quasi-sensible JSDoc starting point

commit 185cdcab08
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Aug 26 09:31:07 2016 -0700

    [API] Begin adding mct.js

    ...which will provide an instance of OpenMCT at startup,
    as well as house documentation for entry point to public API.

commit 50ccad5aaa
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Aug 26 09:26:12 2016 -0700

    [API] Rename MCT to OpenMCT

commit 6a23df9454
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 25 14:54:07 2016 -0700

    [API] Add JSDoc for MCT

commit ab5b1d3754
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 25 13:49:21 2016 -0700

    [API] Add JSDoc task

commit b309f26b56
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 25 13:38:44 2016 -0700

    [API] Add gulp-jsdoc-to-markdown dep

    ...to aid in generating API docs as a measure of API completeness
    and consistency, for #1110 and #1111

commit b4dc50295c
Merge: 02aa08a 382dde3
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 25 13:26:50 2016 -0700

    Merge pull request #1131 from nasa/open1094

    Resolve synchronization issues with MutableObject

commit 382dde300a
Merge: b1b8df4 02aa08a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 25 13:25:54 2016 -0700

    Merge remote-tracking branch 'origin/api-tutorials' into open1094

    Conflicts:
    	index.html
    	tutorials/todo/todo.js

commit 02aa08a3ef
Merge: c95d9c7 d73c505
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 25 13:19:14 2016 -0700

    Merge pull request #1121 from nasa/api-containment

    [API] Containment

commit c95d9c7956
Merge: 1147f3a 2463e4d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 25 13:17:26 2016 -0700

    Merge pull request #1107 from nasa/api-type-forms

    [API] Handle forms with a "properties" region

commit fd97f4db41
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 25 13:15:37 2016 -0700

    [Selection] Begin implementing Hover gesture

commit b1b8df4d87
Author: Andrew Henry <andrew.k.henry@nasa.gov>
Date:   Tue Aug 23 13:57:12 2016 +0100

    Use MutationCapability

commit 3228a83802
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Aug 22 16:31:27 2016 -0700

    [Selection] Begin adding hover gesture

commit 1dba551fc6
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Aug 22 16:07:01 2016 -0700

    [Selection] Force single select

    ...as a simplifying assumption for the initial prototype.

commit 20f3b57ddd
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Aug 22 14:18:26 2016 -0700

    [Selection] Release listeners

commit 58787c4436
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Aug 22 14:13:46 2016 -0700

    [Selection] Remove obsolete include

commit 2a45893602
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Aug 22 13:22:17 2016 -0700

    [Selection] Begin adding context management

commit a94ab44431
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Aug 22 12:24:40 2016 -0700

    [Selection] Toggle selected class

commit cc9efdff31
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Aug 22 12:17:29 2016 -0700

    [Selection] At Path.toArray

commit bd3c6665fb
Author: Andrew Henry <andrew.k.henry@nasa.gov>
Date:   Mon Aug 22 14:25:39 2016 +0100

    Added bridge between old and new event models

commit 10e90519c0
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Aug 19 19:10:06 2016 -0700

    Tidy todo views, remove unnecessary code

commit d341a8be97
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Aug 19 19:07:53 2016 -0700

    Selection changes include new selection

commit 8c439d8109
Author: Andrew Henry <andrew.k.henry@nasa.gov>
Date:   Sun Aug 21 23:01:48 2016 -0700

    Adding compatibility between old and new style mutation events

commit 9c88b7ce1d
Author: Henry <akhenry@gmail.com>
Date:   Thu Aug 18 10:38:16 2016 -0700

    Removed setters from MutableObject and fixed non-working todo list tutorial

    Refactoring MutableObject

    Fixed non-working todo example

commit 6e664003e3
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 18 13:11:09 2016 -0700

    [Sub-object] Sketch in SelectGesture

commit 70d804fc49
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 18 11:54:05 2016 -0700

    [Sub-object] Emit change events

commit 06c184821e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 18 11:51:09 2016 -0700

    [Sub-object] Add Path.append

commit b76be3d2e5
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 18 11:45:13 2016 -0700

    [Sub-object] Basic Path/Selection implementation

commit 8934ba96f7
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 18 10:33:34 2016 -0700

    [Sub-object] Add empty Selection class

commit 3fb4ce7819
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 11:43:35 2016 -0700

    [Sub-object] Add EventEmitter dependency

    Selection state will be represented in #1126 by an EventEmitter.

commit 2463e4d59f
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Aug 12 12:54:39 2016 -0700

    [API] Update Dialog API usage

commit d73c505bea
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Aug 12 11:17:00 2016 -0700

    [API] Fix typo, add missing this

commit 831ecc59d9
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Aug 12 10:24:59 2016 -0700

    [API] Wire in canContain via policy

commit 1de26d3c5d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Aug 12 09:30:02 2016 -0700

    [API] Throw error on containment violation

commit 11409ce509
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Aug 12 09:27:46 2016 -0700

    [API] Add containment methods

commit 93872ce074
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 11 16:04:26 2016 -0700

    [API] Expose Dialog as constructor

    ...and use it that way from todo plugin

commit 8861644f2d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 11 16:02:04 2016 -0700

    [API] Adjust Dialog API

    ...to allow OK button to be enabled/disabled.

commit d4948f771b
Merge: 0656a29 8295a0b
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 11 15:31:11 2016 -0700

    Merge branch 'api-todo-update' into api-type-forms

commit 8295a0bed1
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 11 15:29:46 2016 -0700

    [API] Update todo tutorial

    ...to expect new domain object API (instead of explicitly
    wrapping it.)

commit 0656a298da
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Aug 4 14:00:39 2016 -0700

    [API] Remove test usage of properties region

commit fe2ce91d50
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Jul 28 16:16:22 2016 -0700

    [API] Show a custom view in dialog

commit 14f30b2489
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Jul 28 16:05:02 2016 -0700

    [API] Restrict dialog overrides

    ...to those domain objects which have some view for the
    properties region registered.

commit 62d90a8114
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Jul 28 15:57:15 2016 -0700

    [API] Show dialog via mct

commit 87682607a5
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Jul 28 15:53:07 2016 -0700

    [API] Rename dependency in adapter layer

commit 7bf265b478
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Jul 28 15:52:52 2016 -0700

    [API] Move mct service up

commit 1d31fe8d02
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Jul 28 15:48:28 2016 -0700

    [API] Override dialogService in actions

    An ugly hack to allow dialogs to be shown for Save As
    and Edit Properties, without requiring form generation.
    This will permit views to be shown instead in certain
    cases, https://github.com/nasa/openmct/pull/999#issuecomment-236045158

commit bfdbc71e40
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Jul 28 15:34:03 2016 -0700

    [API] Define a properties region

commit 1147f3aa47
Author: Pete Richards <pete@pete-richards.com>
Date:   Mon Jul 25 14:38:44 2016 -0700

    tutorials: support arbitrary hosting directory (#1097)

    * Include all bundles in artifact

    change bundle registry such that all bundles are immediately registered,
    but must be specifically enabled.  A default registry class enables bundles
    that make sense for demonstration purposes.

    Added methods to the registry to allow enabling and disabling of bundles
    without having to load additional files.

    * support alternate asset/worker paths

    Change the gulp glob for assets to copy over a more minimal
    set of files-- only css, fonts, and images.  Results in a
    smaller distributable archive.

    Update stylesheet loader to use a constant for the assets path.

    This can be customized at run time via MCT.setAssetPath() to
    allow MCT to be hosted in various locations.

    Update worker loader to support loading workers from blobs to
    support packaging as standalone file.

    * Load templates via requirejs

    * [gulp] lazy-require where reasonable

    Require things right before starting tasks to reduce gulp start up time.

    * document setAssetPath

commit 719f9f45e8
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jul 22 14:09:31 2016 -0700

    [API] Add documentation for selection state (#1096)

commit 95ef70a24c
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jul 22 13:56:45 2016 -0700

    [API] Use selection state from toolbar (#1070)

    * [API] Allow selection

    * [API] Keep in sync using model

    * [API] Add selection as EventEmitter

    * [API] Use selection from ToDo tutorial

    * [API] Restore selection functionality

commit d5aa998b4c
Author: Pete Richards <pete@pete-richards.com>
Date:   Fri Jul 22 13:53:03 2016 -0700

    [API] Draft Composition API (#1068)

    * [Objects] util for equality checking

    Add a method for checking object equality, useful for other services.

    * [Composition] Draft Composition API

    Draft composition API.  Composition collections provide an observable
    for watching and mutating the composition of an object.

    Composition providers implement the loading and modification of composition.

    The default composition provider uses the composition attribute of
    domain objects, while allowing other providers to implement their
    own loading and mutation behavior.

    * add todo about event listener bindings

    * [Type] Add form property for defining form fields

    * [tutorial] Add Composition tutorial

    * provider doesn't have to implement events, load returns array of children

    * use new composition in old api

    * correct key name

    * Override instantiate to provide model ids

    Override instantiate in public API adapter to prevent making changes to
    platform code.  Instantiate now passes the id of the domain object with the
    model so that capabilities can convert to a new-style domain object and use
    that to detect functionality.

    * Implement mutation capability with decorator

    Implementation mutation capability override with decorator to adapter code
    outside of platform.  Capability override ensures that models are kept in
    sync even though they are no longer shared objects.

    * override composition cleanly

    Override composition capability without making changes inside platform.

    * cleanup after temporary collections

    * remove unused try/catch

commit 7890fcae69
Author: Pete Richards <pete@pete-richards.com>
Date:   Thu Jul 21 14:39:02 2016 -0700

    tutorial consistency . (#1079)

    * [API] use new-style objects consistently

    * rewrite todo tutorial in test-api.html

    * [API] Add API doc, update object API

    * [Tutorials] Rename tutorials, remove old

    * Fix Links

    * updates

    * initial

    * hope this works

    * Object Utils always return new objects instead of mutating existing objects

    * keep domain object model in-sync when listening

    Keep the domain object model in sync with the latest version when
    listening for mutation events.

    * Remove old-style plugins

    * Update views to use new API

    * Tidy Code

    * Update API Docs

    * Add Plugin API and Example

commit 18843cee48
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Jul 20 13:46:03 2016 -0700

    [API] Change approach to applies-to checking (#1072)

    * [API] Allow selection

    * [API] Keep in sync using model

    * [API] Add selection as EventEmitter

    * [API] Use selection from ToDo tutorial

    * [API] Add appliesTo-style method

    * [API] Remove destroy method, simplify show

    * [View] Return a no-op

    * [API] Use new applies-to checking

    * [API] Rename TodoView to TodoRenderer

    * [API] Rewire views

    * [API] Wire up so that things work

    * [API] Begin adding container

    ...to attempt to give views something to listen to for destroy-like
    events

    * [API] Begin using regions...

    * [API] Begin working through Region stuff

    * [API] Revise Region API

    ...for similarity with Marionette,
    https://github.com/nasa/openmct/pull/1072#issuecomment-230902986

    * [API] Begin separating View, ViewDefinition

    * [API] Finish separating View/ViewDefinition

    * [API] Update MCTView

    ...to reflect updates to Region/View/ViewDefinition APIs

    * [API] Simplify View API

    ...merging closely-related populate/show methods, and restoring
    compatibility with todo tutorial

    * [API] Wire in from todo tutorial plugin

    * [API] Switch back to region constants

    * [API] Update method signature, add JSDoc

    * [API] Update variable name

    * [API] Remove unnecessary separate regions file

    * [API] Relocate Region; not external api

    * [API] Revert changes to api.js

    ...as these ended up becoming entirely superficial

commit 1879c122c7
Author: Andrew Henry <andrew.k.henry@nasa.gov>
Date:   Thu Jul 7 14:30:45 2016 -0700

    Mutation API (#1074)

    * [API] Allow selection

    * [API] Keep in sync using model

    * [API] Add selection as EventEmitter

    * [API] Use selection from ToDo tutorial

    * Object events prototype

    * Added examples

    * Transitional API

    * Modified todo list code to work with new setters

    * [API] Removed emitting of events on container when property changes value to remove ambiguity. Listeners must be listening to the same path used in the setter to catch changes

commit d7ddb96c4e
Author: Pete Richards <pete@pete-richards.com>
Date:   Thu Jul 7 14:25:23 2016 -0700

    [API] UMD Packaging (#1078)

    * [Bundle] load filter with requirejs

    * [Build] Use almond, wrap in UMD

    Use almond for built version of application and wrap in UMD so that
    it supports requirejs, commonjs, and basic browser loading.

    * [Main] Can choose where to load app

    MCT.run allows you to specify a dom element to load application
    within.  If element is not specified, will use body.

    * [MCT] set class on injected div

    Set class on injected div so extra markup is not required.

    * [Build] Re-enable optimize

    * Add minimal bootstrap example

commit bccd018d97
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Jul 1 10:26:49 2016 -0700

    Telemetry Draft

commit b55668426d
Merge: 47a543b 5b656fa
Author: Andrew Henry <andrew.k.henry@nasa.gov>
Date:   Fri Jul 1 10:22:16 2016 -0700

    Merge pull request #1062 from nasa/tc-redux

    [Time Conductor] V2 Public API

commit 5b656faa9d
Author: Henry <akhenry@gmail.com>
Date:   Thu Jun 30 20:50:03 2016 -0700

    Added tests

commit 8d2c489fa9
Author: Pete Richards <pete@pete-richards.com>
Date:   Thu Jun 30 16:54:56 2016 -0700

    [TimeConductor] Set bounds on timeSystem Change

    Always set bounds on timeSystem change as not having valid bounds would
    put views in inconsistent states.

commit 4366b0870d
Author: Henry <akhenry@gmail.com>
Date:   Wed Jun 29 12:51:02 2016 -0700

    [Time Conductor] API redesign. Initial commit of V2 public API. Addresses #933

commit 47a543beb7
Merge: 06f87c1 c944080
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jul 1 10:17:36 2016 -0700

    Merge pull request #1067 from nasa/api-css

    [API] Remove stylesheet from example

commit 06f87c1472
Merge: 14a56ea c9c41cd
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jul 1 10:13:29 2016 -0700

    Merge pull request #1029 from nasa/api-toolbar-add-only

    [API Prototype] Add toolbar

commit c9c41cdcc8
Merge: 370b515 14a56ea
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jul 1 10:10:33 2016 -0700

    Merge remote-tracking branch 'origin/api-tutorials' into api-toolbar-add-only

    Conflicts:
    	src/MCT.js

commit 14a56ea17e
Merge: d51e6bf b2e7db7
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jul 1 10:09:29 2016 -0700

    Merge pull request #1028 from nasa/api-view

    [API Prototype] Support imperative view registration

commit b2e7db71cc
Merge: 96316de d51e6bf
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jul 1 10:08:05 2016 -0700

    Merge remote-tracking branch 'origin/api-tutorials' into api-view

    Conflicts:
    	src/MCT.js
    	src/api/api.js

commit d51e6bfd92
Merge: 5de7a96 d475d76
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jul 1 10:03:42 2016 -0700

    Merge pull request #1030 from nasa/api-tutorial/objects

    Api tutorial/objects

commit d475d767d5
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Jun 17 17:05:05 2016 -0700

    add grootprovider

commit a63e053399
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Jun 17 16:54:32 2016 -0700

    [ObjectAPI] Draft new Object API

    Rought prototype of new object API.

commit 370b515c23
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 14:21:37 2016 -0700

    [API] Synchronize view to model

commit 4a50f325cb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 14:18:51 2016 -0700

    [API] Allow tasks to be added

commit dbe6a4efc1
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 14:05:00 2016 -0700

    [API] Title dialog

commit 13920d8802
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 14:00:45 2016 -0700

    [API] Resolve/reject from dialog

commit b6a8c514aa
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 13:51:15 2016 -0700

    [API] Show dialog from toolbar

commit e4a4704baa
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 13:41:59 2016 -0700

    [API] Listen to add/remove buttons

commit be0029e59a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 13:38:54 2016 -0700

    [API] Get todo toolbar to look right

commit 9cb273ef0a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 13:30:08 2016 -0700

    [API] Get registered toolbar to appear

commit eec9b1cf4c
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 13:10:24 2016 -0700

    [API] Support distinct region registration

commit 1f96e84542
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 12:16:46 2016 -0700

    [API] Override template to allow toolbar injection

commit c289a27305
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 11:43:18 2016 -0700

    [API] Begin adding toolbar

commit c944080790
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 11:27:04 2016 -0700

    [API] Remove stylesheet from example

    No need to provide custom API for this.

commit 96316de6e4
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 11:16:08 2016 -0700

    [API] Update view API

commit 2240a87ddc
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 10:53:56 2016 -0700

    [API] Move view off of type

commit d891affe48
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 10:21:00 2016 -0700

    [API] Move view off of type

commit 21a618d1ce
Merge: 580a4e5 09a833f
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 10:19:44 2016 -0700

    Merge branch 'api-type-proto' into api-view

commit 5de7a96ccc
Merge: 9c4e17b 09a833f
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 17 10:18:42 2016 -0700

    Merge pull request #1010 from nasa/api-type-proto

    [API Prototype] Type registration

commit 09a833f524
Merge: c4fec1a 9c4e17b
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Jun 10 13:28:09 2016 -0700

    Merge branch 'api-tutorials' into api-type-proto

commit 580a4e52b5
Merge: 4ca2f51 9c4e17b
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Jun 7 14:01:08 2016 -0700

    Merge branch 'api-tutorials' into api-type-driven

commit 9c4e17bfab
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Jun 7 13:14:36 2016 -0700

    [Tutorials] Add telemetry tutorial

commit d3e5d95d6b
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Jun 7 13:00:38 2016 -0700

    [Tutorials] Add example server

commit c70793ac2d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Jun 7 12:55:29 2016 -0700

    [Tutorials] Add remainder of bargraph

commit a6ef1d3423
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Jun 7 12:49:38 2016 -0700

    [Tutorials] Add Bar Graph tutorial

commit 4ca2f51d5e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 17:08:04 2016 -0700

    [API] Use subclass style

commit 86ac80ddbd
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 16:56:08 2016 -0700

    [API] Persist mutations

commit 0525ba6b0b
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 16:55:10 2016 -0700

    [API] Check/uncheck todos

commit a79e958ffc
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 16:46:06 2016 -0700

    [API] Show tasks from todo

commit 03cb0ccb57
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 16:36:55 2016 -0700

    [API] Get View to render

commit 7205faa6bb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 16:27:47 2016 -0700

    [API] Add adapter bundle

commit 136f2ae785
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 16:19:20 2016 -0700

    [API] Add MCTView directive as an adapter

commit a07e2fb8e5
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 16:08:43 2016 -0700

    [API] Implement View

commit 55b531bdeb
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 15:49:16 2016 -0700

    [API] Sketch in view instantiation

commit 7ece5897e8
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 15:31:54 2016 -0700

    [API] Begin adding View

commit a29c7a6eab
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 13:46:30 2016 -0700

    [API] Deangularize todo templates

commit c4fec1af6a
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 13:31:30 2016 -0700

    [API] Move type toward a newer API

commit a6996df3df
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 13:17:16 2016 -0700

    [API] Begin moving out type

commit 0c660238f2
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 11:49:43 2016 -0700

    [API] Add MCT class

commit b73b824e55
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 11:43:35 2016 -0700

    [API] Add EventEmitter dep

commit 1954d98628
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri May 27 11:30:53 2016 -0700

    [Tutorials] Remove diff markings in TodoController

commit 7aa034ce23
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu May 26 16:05:38 2016 -0700

    Add todo tutorial

commit 385dc5d298
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu May 26 15:36:09 2016 -0700

    Begin adding tutorials
2016-09-30 17:31:33 -07:00
5b0fa90e39 Merge pull request #1220 from nasa/hasta-la-vista-jspdf
[export] remove pdf export
2016-09-30 17:01:23 -07:00
ae6f6565fa [export] remove pdf export
Remove pdf export with extreme prejudice due to issues with build process.

Fixes https://github.com/nasa/openmct/issues/1217
2016-09-30 16:54:42 -07:00
c874ae7afd Merge remote-tracking branch 'origin/master' into api-platform-updates 2016-09-30 14:46:37 -07:00
c27c0c5b8c Merge pull request #1215 from nasa/fix-jspdf-version-1214
[Bower] specify jspdf minor version
2016-09-30 14:45:59 -07:00
ed102492e5 [Bower] specify jspdf minor version
Specify jsPDF minor version to avoid updating to v1.3.0, which appears to
have problems with requirejs bundling.

Fixes https://github.com/nasa/openmct/issues/1214
2016-09-30 12:49:02 -07:00
e077f9ee18 [Timeline] Fix logic error
Issue #1185. Also removed direct modification of domain object.
2016-09-30 21:34:03 +02:00
e9f4db7719 Merge branch 'master' of github.com:nasa/openmct into open1185 2016-09-30 21:25:36 +02:00
34e07b938d [API] Update StyleSheetLoaderSpec
...to reflect asset path details
2016-09-30 10:42:48 -07:00
230230aa94 [API] Remove js extension from import
...to avoid confusing RequireJS and breaking test suite
2016-09-30 10:37:31 -07:00
901846e6c1 [API] Use correct property for RT table template 2016-09-30 10:29:03 -07:00
a93f41f1c3 [API] Miscellaneous platform updates
Adds miscellaneous platform updates to include templates
via the RequireJS text plugin; to support modification of
asset paths; and to support priority order for gestures.

Supports integration of new API, #1124.
2016-09-30 10:25:22 -07:00
7439d949c4 Merge pull request #1209 from nasa/jspdf-1208b
[Build] Fix jsPDF dependency
2016-09-28 09:30:50 -07:00
77d4760945 fixed new code indication 2016-09-28 15:13:23 +03:00
e1276e464d [Build] Restore version identifier 2016-09-27 16:49:09 -07:00
d248dfe346 [Build] Remove SNAPSHOT status
...to tag a build which addresses release blocker #1208
2016-09-27 16:48:38 -07:00
91b63f78eb [Build] Depend on non-minified jsPDF
Fixes #1208 (for some reason)
2016-09-27 16:47:42 -07:00
754d7b3cd7 [Build] Restore SNAPSHOT status
... for a patch build related to #1208
2016-09-27 16:47:35 -07:00
7d950d067c Merge pull request #1194 from hudsonfoo/open1184
[Frontend] Add notes property to all item types
2016-09-27 15:28:49 -07:00
a34e89d56a [Edit] Bind action to .perform() inside mct-button 2016-09-27 21:19:25 +03:00
4ec0d0633d fix module reference 2016-09-27 16:08:25 +03:00
4b51e604a7 [Edit] Switch other edit actions to mct-control 2016-09-24 20:43:35 +03:00
e3e7bd27e9 Merge pull request #1203 from nasa/open1202
[Frontend] Removed Export buttons from objects when in a Layout
2016-09-23 10:20:47 -07:00
f6ed0e8ab6 Merge pull request #1178 from hudsonfoo/open1168
[Frontend] Delay visibility of progress bar
2016-09-23 10:10:09 -07:00
c179d9e759 Merge branch 'BogdanAlexandru-mct588comm' 2016-09-22 17:45:41 -07:00
98f387b605 [Edit Mode] Renamed function from EditAction.cancel() to EditAction.finish() 2016-09-22 17:34:53 -07:00
275dda820b Merge branch 'mct588comm' of https://github.com/BogdanAlexandru/openmct into BogdanAlexandru-mct588comm 2016-09-22 17:33:42 -07:00
43c32c2c7b Merge pull request #1201 from nasa/open1080
[Edit Mode] Fixed issue with save dialog not being displayed for new objects after mutation
2016-09-22 16:23:49 -07:00
3f5388c2e8 [Build] Restore SNAPSHOT status
...and bump version number to open sprint Rajaniemi,
https://github.com/nasa/openmct/milestone/18
2016-09-22 16:20:18 -07:00
bad24d6213 [Build] Remove SNAPSHOT status
...to close sprint Pratchett,
https://github.com/nasa/openmct/milestone/17
2016-09-22 15:48:48 -07:00
7a94efccbf [Edit Mode] Fixed spelling mistake, moved variable declaration 2016-09-22 11:04:04 -07:00
3c72eea9ef [Frontend] Removed export buttons from objects when in layout
Fixes #1202
CSS modded
2016-09-22 10:41:14 -07:00
3548cde9c4 [Edit Mode] Fixed issue with save dialog not being displayed for new objects after mutation. Fixes 1080 2016-09-21 16:12:09 -07:00
3d17435438 [Test] Update spec to use SOC percentage 2016-09-20 17:42:34 +09:00
f185254114 [Formatting] Fix missing spaces 2016-09-20 17:41:45 +09:00
943e2ebe14 [Timeline] Convert SOC to use percentages
Also includes updated validation params which allow for floats to a maximum
of 100 as well as a percentage sign which is later removed.
2016-09-20 17:40:08 +09:00
0c27a5f361 [Edit] Remove CreationService dep from SaveAs 2016-09-19 23:52:30 +03:00
abfabc85b5 [Edit] Fix edit-action-buttons indent 2016-09-19 20:41:50 +03:00
e08704e6d3 [Edit] Make checkstyle happy 2016-09-19 20:39:54 +03:00
f60fc2ebad [Edit] EditorCapability.finish returns domainObj 2016-09-19 20:33:12 +03:00
b50278e92f [Edit] Remove mocked unused UrlService 2016-09-19 20:22:46 +03:00
e0b6986851 Merge pull request #1169 from smirecki/master
[Documentation] Typo corrections
2016-09-19 09:52:48 -07:00
d913798d5b [Timeline] Add battery starting state-of-charge
Issue #1185
2016-09-18 22:52:41 +09:00
56267095cb [Forms] Add style for small textareas
Issue #1184. This allows for a generically sized text area in forms. I am
anticipating some potential feedback on this given the approach and the sizing
I chose may or may not be ideal for your requirements.
2016-09-18 01:47:07 +09:00
f9ce27def3 [Frontend] Add attributes for storing notes
Issue #1184
2016-09-18 01:27:12 +09:00
127a7a62c1 Merge branch 'master' of github.com:nasa/openmct into open1184 2016-09-18 01:25:05 +09:00
4429e847e8 [Properties] Add notes field to all item types
Issue #1184
2016-09-18 01:18:26 +09:00
56e321f6d9 [Forms] Add textarea template
Issue #1184
2016-09-18 01:18:02 +09:00
e135ed26f0 [Frontend] Shorten overlay fade duration
Issue #1168
2016-09-17 16:36:55 +09:00
48b25fe842 [Formatting] Remove double negative logic
Issue #1168
2016-09-17 16:32:26 +09:00
85e57286ae Merge branch 'master' of github.com:nasa/openmct into open1168 2016-09-17 16:30:42 +09:00
5ef6617062 [Edit] Rename action to Save and Finish Editing 2016-09-17 01:05:46 +03:00
ae89dcd62d [Edit] Make single save button use mct-control 2016-09-17 00:39:49 +03:00
f9597fe799 Merge branch 'master' of https://github.com/nasa/openmct 2016-09-16 17:16:35 -04:00
0ec27350e0 Update TimelineTickController.js
One correction by @akhenry, "region, not reign".
2016-09-16 16:50:11 -04:00
156ba832f2 Merge pull request #1154 from nasa/root-build-note-1151
[README] Warn about root installation issues
2016-09-16 13:36:35 -07:00
c4f079dde2 Merge pull request #1191 from nasa/revert-1134-dep-vuln-1130
[Build] Revert check dependencies for vulnerabilities
2016-09-16 13:35:35 -07:00
2a2e9ef99d [Edit] Make linter happy 2016-09-16 03:24:00 +03:00
1446b16e77 [Edit] Using spy objects as save action mocks 2016-09-16 03:15:10 +03:00
f03003b366 [Edit] Fix CreateActionSpec 2016-09-15 23:18:53 +03:00
d3db26499c [Edit] CreateAction needs to perform("save-as") 2016-09-15 23:14:12 +03:00
d1f67fd8b9 [Edit] Introduce dropdown Save menu
And fix style issues in SaveAsActionSpec
2016-09-15 22:40:02 +03:00
31ee92b711 [Edit] Remove editor.cancel from SaveActionSpec 2016-09-15 20:39:02 +03:00
1ea7fa3084 [Edit] SaveAsAction tests cover save and finish 2016-09-15 20:28:29 +03:00
fe217384aa Merge pull request #1192 from nasa/revert-1159-squashed_proxy_parameters
Revert "[proxyUrl] pass URL parameters to proxied URL"
2016-09-15 10:13:42 -07:00
49d2d5500f Revert "[proxyUrl] pass URL parameters to proxied URL" 2016-09-15 09:37:11 -07:00
c1afc34cfc Revert "[Build] Check dependencies for vulnerabilities" 2016-09-14 10:16:33 -07:00
d8dc3c8445 Merge branch 'master' into mct588comm 2016-09-14 19:50:19 +03:00
ea1855fc26 Merge branch 'master' of github.com:nasa/openmct into open1168 2016-09-14 17:00:06 +09:00
0be84a4e51 [Edit] CreateAction closes editor after save 2016-09-13 23:59:28 +03:00
d87ed1414e [Edit] Update EditorCapability comments 2016-09-13 22:36:27 +03:00
4382745012 [Edit] Final two actions now use finish() 2016-09-13 22:35:11 +03:00
f73238787d Merge pull request #1190 from nasa/build-promise-1183
[Build] Update to es6-promise 3.3.0
2016-09-13 12:08:42 -07:00
8c04596859 Merge pull request #1179 from BogdanAlexandru/controlsdocs
[Documentation] Add extra controls to developer guide
2016-09-13 11:29:28 -07:00
79b16ddda6 [Edit] SaveAs now calls finish() 2016-09-13 21:24:20 +03:00
d490693bad [Build] Update to es6-promise 3.3.0
...including changes to filename associated with that version.

Fixes #1183
2016-09-13 11:20:58 -07:00
6c9bd0b510 Merge branch 'master' of github.com:nasa/openmct into open1168 2016-09-13 16:39:31 +09:00
2740b6f957 [Frontend] Add optional delay parameter to dialog service
Issue #1168
2016-09-13 16:36:25 +09:00
37cf56a2b3 [Documentation] Add extra controls 2016-09-13 00:53:50 +03:00
e73bb4ff4a Merge pull request #1164 from hudsonfoo/open967
[Enhancement] Export plot as PDF, JPG, or PNG
2016-09-12 10:56:09 -07:00
ea35395d7e Merge branch 'master' of github.com:nasa/openmct into open1168 2016-09-13 02:47:16 +09:00
bad901a162 [Typo] Add reference to self
Issue #967
2016-09-12 17:06:23 +09:00
bb34528a86 [Testing] Add tests to ensure correct image type
Issue #967
2016-09-12 17:00:28 +09:00
487ec7907c [Formatting] Fix missing space
Issue #967
2016-09-12 16:59:39 +09:00
3093ab8067 [Testing] Convert blob to proper format. Inject FileReader.
Issue #967
2016-09-12 16:58:21 +09:00
0f1d685ae6 Merge branch 'master' of github.com:nasa/openmct into open967 2016-09-12 15:46:04 +09:00
24cb72e5b5 [Frontend] Delay visibility of progress bar
Resolves #1168
2016-09-12 15:28:04 +09:00
4c6ca58c95 Merge pull request #1157 from TypicalFooBar/843
[Context Menu] New Tab button available in edit mode. #843
2016-09-11 21:21:49 -07:00
d62989bc5d [Formatting] Rename export image service key
Issue #1164
2016-09-10 03:18:46 +09:00
8e39da6726 [Formatting] Rename export image service key
Issue #1164
2016-09-10 03:12:00 +09:00
98deac042e [Formatting] Reduce line length of gl declaration
Issue #1164
2016-09-10 02:56:23 +09:00
b51ffcada6 [Formatting] Add inline JSDoc
Issue #1164
2016-09-10 01:59:07 +09:00
a6386b1612 [Formatting] Rename export image service variables
Issue #1164
2016-09-10 01:45:50 +09:00
72ecbb0abc [Frontend] Fix typo 2016-09-09 12:07:02 +09:00
c6caae8647 [Frontend] Remove unnecessary export button styles 2016-09-09 12:06:42 +09:00
da23bba392 Merge branch 'master' of github.com:nasa/openmct into open967 2016-09-09 12:02:50 +09:00
32e7f57a7c [Build] Accept future phantomjs versions 2016-09-08 13:48:53 -07:00
f7dfccb096 [Build] Depend on phantomjs-prebuilt 2.1.11
...due to issues installing 2.1.12 on Linux. Fixes #1176.
2016-09-08 13:41:51 -07:00
990c653397 Merge branch 'open967' of github.com:hudsonfoo/openmct into open967 2016-09-08 11:06:05 +09:00
911ece7612 [Frontend] Remove styles that are no longer necessary
Issue #1164. Based on updates from 0457f7bee8 these styles
are no longer necessary and have been removed.
2016-09-08 11:05:19 +09:00
222b4421e5 [Frontend] Remove styles that are no longer necessary
Based on updates from 0457f7bee8 these styles
are no longer necessary and have been removed.
2016-09-08 11:03:36 +09:00
4517bd1356 [Frontend] New markup for CSS from #1166
Fixes #967
Requires new styles implemented in #1166

(cherry picked from commit 0457f7bee8)
2016-09-08 11:02:42 +09:00
5984ae46fc Merge branch 'master' of github.com:nasa/openmct into open967 2016-09-08 10:50:08 +09:00
5bde1de61b Merge pull request #1167 from nasa/open1166
Review and integrate generalized control-bar styling for views
2016-09-07 13:37:10 -07:00
06d229ea99 Merge pull request #1133 from charbelrami/markup
[Frontend] Tweak markup
2016-09-07 13:16:04 -07:00
58391de007 Merge pull request #1150 from aterribili/patch-1
Add .swp to git ignore
2016-09-05 09:58:28 -07:00
ceb3e8e3dd [Enhancement] Add IE, Opera, Safari support for canvas.toBlob()
This is currently being used for exporting plots to PNG/JPG.
2016-09-05 19:40:22 +09:00
35a331f3fd [Frontend] Fix plot image cutoff on export
The images were being cutoff due to the "top" attribute of .gl-plot
not changing when the buttons were hidden. The buttons are now
hidden by CSS class rather than ng-show, which makes updating the
.gl-plot top attribute easier.
2016-09-05 17:02:04 +09:00
7d13ce0626 [Licenses] Add license information for html2canvas, jsPDF, saveAs 2016-09-05 01:22:43 +09:00
a49eebf9f5 [Testing] Add test spec for ExportImageService 2016-09-04 23:04:46 +09:00
989e4e1b75 [Testing] Add jsPDF, html2canvas, and saveAs as injectible dependencies
I would prefer this be passed in via the bundle, but it continues to fail
saying "Unknown Provider". I have chosen to require them into the module
the old-fashioned way, then allow an injectible dependency to override.
2016-09-04 23:02:23 +09:00
9bb647e275 [Testing] Add better dependency injection and error handling 2016-09-04 19:19:14 +09:00
3dee082141 [Edit] Add reason for redundant mocks 2016-09-03 19:02:05 +03:00
7d52d348b2 [Edit] Fix style issues 2016-09-03 18:33:27 +03:00
ded52b8d19 [Edit] Rename cancel() to finish() 2016-09-03 17:55:05 +03:00
ab4ce0caba [Edit] Introduced SaveAndStopEditingAction
It replaces SaveAction in the bundle.
2016-09-03 17:55:04 +03:00
90c13a3959 [Edit] EditorCapability continues edit on save 2016-09-03 17:55:04 +03:00
9847c40e34 [Edit] SaveAction not navigating anymore 2016-09-03 17:55:04 +03:00
e751461194 Typo corrections, I avoided making changes to words that have regional spelling differences. 2016-09-03 09:16:54 -04:00
a566265a72 [Testing] Add ExportImageService mock 2016-09-03 14:45:09 +09:00
fecf419f83 [Testing] Move ExportImageController into constructor for dependency injection 2016-09-03 14:44:33 +09:00
26c14d2bca [Formatting] Fix styling errors 2016-09-03 14:02:19 +09:00
92bfea1773 [Tests] Mock new argument in PlotController 2016-09-03 13:51:37 +09:00
40ad9c47a8 [Tests] Add jsPDF and html2canvas 2016-09-03 13:51:16 +09:00
de85f79ab6 [Enhancement] Hide export buttons during export
Buttons temporarily hide until export completes.
2016-09-02 20:41:38 +09:00
3736f84c12 [Frontend] Set plot export buttons to show/hide on hover
It's worth noting that I changed the .gl-plot position from relative to absolute
in an attempt to match the results to a similar requirement in MCT Table. Setting
to absolute caused no regressions as far as I could tell, but I have not attempted
browsers outside of Chrome.
2016-09-02 19:36:39 +09:00
e7a7025961 [Frontend] Markup for #967
Fixes #967
WIP to be integrated with work
from hudsonfoo in PR #1164

(cherry picked from commit ebadad61c6)
2016-09-02 18:19:20 +09:00
e38cf1e2e8 Merge branch 'master' of github.com:nasa/openmct into open967 2016-09-02 18:17:46 +09:00
7b84febfde Merge pull request #1162 from ZachMoreno/patch-1
[Documentation] Updated from OpenMCTWeb to OpenMCT
2016-09-02 09:38:54 +01:00
39dcb937d5 [Frontend] CSS and markup tweaks
Fixes #1166
New control-bar height constant
Removed font-size definition in .l-view-section
2016-09-01 20:09:38 -07:00
3e3d3ebcf9 [Formatting] Switched to double quote across the board for consistency 2016-09-02 11:58:15 +09:00
e370271093 [Code Review] Updates based on code review by @VWoeltjen
Set export functions on the ExportImageService prototype. Insantiated
ExportImageService in the PlotController for better dependcy injection.
2016-09-02 11:54:38 +09:00
55603b927f [Frontend] Generalized markup and CSS for control-bar
Fixes #1166
New markup and CSS
MIgrated existing tabular views to use
new styles
2016-09-01 19:37:36 -07:00
e35666bcc6 Merge pull request #1165 from nasa/subobjects1161
Review and integrate initial styling for selectable sub-objects
2016-09-01 12:23:37 -07:00
3a19890be9 [Formatting] Linting 2016-09-02 03:11:26 +09:00
725f8202ed Merge remote-tracking branch 'origin/master' into subobjects1161 2016-09-01 10:56:17 -07:00
ee917b0e1d [Frontend] Initial styling for selectable styling
Fixes #1161
New .s-selectable, .s-hover, .s-selected and .s-moveable classes
New supporting color constants
Markup in layouts, fixed position/panels updated
Removed old commented code
2016-09-01 10:55:07 -07:00
a8900f3d6d Merge branch 'master' of github.com:nasa/openmct into open967 2016-09-02 02:44:01 +09:00
ea8f429902 [Enhancement] Add export functionality to PlotController
Extends PlotController by adding three new scoped methods:
exportPDF, exportPNG, exportJPG.

All three methods use basically the same steps. The HTML node
of the plot is passed through html2canvas which generates a canvas.
From the canvas we export a blob, PNG, or JPG then save the file.
2016-09-02 02:41:43 +09:00
219301a85b [Frontend] Add export plot buttons 2016-09-02 02:32:42 +09:00
06a453333a [Enhancement] Pass element to plot controller
This will be used for exporting an image of the plot.
2016-09-02 02:31:34 +09:00
5e0975ddfa [Formatting] Remove test code 2016-09-02 02:29:26 +09:00
76527b310d [Documentation] Revising to uphold standard naming convention of Open MCT
🐙

# Author Checklist:

Changes appear to address issue? Y
Appropriate unit tests included? N/A - No code changes
Code style and in-line documentation are appropriate? N/A
Commit messages meet standards? Y
2016-09-01 09:23:35 -07:00
73b4385578 Merge pull request #1160 from nasa/ksp1146
[README] Add link to KSP plugin
2016-09-01 15:59:16 +01:00
bb3af4eff7 🐙 Updated from OpenMCTWeb to OpenMCT
minor change & please let me know if I can help with anything else
2016-08-31 15:56:57 -07:00
68adea7b5a Merge pull request #1159 from raoulsullivan/squashed_proxy_parameters
[proxyUrl] pass URL parameters to proxied URL
2016-08-31 09:31:01 -07:00
4d3afb8efc Merge branch 'master' of github.com:nasa/openmct into open967 2016-08-31 23:04:56 +09:00
852ac3cd55 [Enhancement] Quick prototype of PDF export 2016-08-31 23:03:48 +09:00
40abd1ce6c Merge pull request #1153 from dhrubomoy/dhrubomoy-patch-1
[Documentation] Fixed typos, grammars
2016-08-30 15:19:26 -07:00
3a7e98ab84 Merge pull request #1155 from nasa/forms1118
Review and integrate improved dialog layout
2016-08-30 14:30:46 -07:00
6364bbc6b3 [Build] Restore SNAPSHOT status
...to begin sprint Pratchett,
https://github.com/nasa/openmct/milestones/Pratchett
2016-08-30 14:10:48 -07:00
fc7d2672db [Build] Remove SNAPSHOT status
...to close sprint Orwell,
https://github.com/nasa/openmct/milestones/Orwell
2016-08-30 14:01:28 -07:00
3a25704f41 [README] Add link to KSP plugin
Add link to David Hudson's Kerbal Space Program plugin from #1146,
along with other information about Examples relevant in that context.

Resolves #1064
2016-08-30 13:55:41 -07:00
98486f718b [proxyUrl] pass URL parameters to proxied URL
Addresses issue #1158

Passes query parameters on to proxyUrl proxied URL

remove the url parameter before passing

Naming convention for variables

Re-order code to reuse variable
2016-08-30 19:55:18 +01:00
a7f830177a [Context Menu] New Tab button available in edit mode. #843 2016-08-29 18:33:48 -04:00
2c2d9c1bfe [Frontend] Updated test specs
Fixes #1118
2016-08-29 14:26:27 -07:00
cc6b9d4099 [Frontend] Revised mobile styles for form layout
Fixes #1118
2016-08-29 14:14:52 -07:00
1a284ac9dc [Frontend] Proper classes added to text input configs
Fixes #1108
2016-08-29 14:14:51 -07:00
b48ca99119 [Frontend] Sanding on larger locator control
Fixes #1118
2016-08-29 14:14:51 -07:00
2e8d021a6a [Frontend] Improve layout of "locator"
Fixes #1118
Locator in Save In, Move, etc. dialog now
expands vertically to use as much vertical as
possible;
2016-08-29 14:14:51 -07:00
5409e3d203 Merge pull request #1147 from TypicalFooBar/101
[CommonUI] Info Bubbles allow user to copy text
2016-08-29 13:19:24 -07:00
f0064fd91f [README] Warn about root installation issues
Mitigates #1151.
2016-08-29 10:58:02 -07:00
c3d158584b [Documentation] Update ../process/testing/plan.md
Clicking `Long-duration testing` was showing the right doc but wrong section due to typo in `procedures.md#long-duration-testng`. Fixed it, so now clicking `Long-duration testing` will take us to the right section.
2016-08-29 12:23:21 -04:00
6b8a2a7770 [Documentation] Update /docs/src/guide/index.md
work flow -> workflow (one word)
domaiwn -> domain (typo)
pop up -> popup (one word)
2016-08-29 12:12:59 -04:00
cbb7ada63c [Documentation] Update APIRedesign_PeteRichards.md
imperitive -> imperative
set up -> setup
compiliation -> compilation
2016-08-29 12:01:11 -04:00
fe00d3e501 [Documentation] Updated APIRedesign.md
Contributer -> Contributor
effects -> affects (Effect is usually used as a noun. When an "s" is added, "effects" means personal belongings)
2016-08-29 11:54:14 -04:00
b8eeeaeede [Documentation] Updated /architecture/platform.md
Changing following two words makes them a bit easier to read:
look­and­feel ->  look-­and-­feel
userfacing -> user-facing
2016-08-29 11:41:38 -04:00
dd4e20cfb5 [Documentation] Updated /architecture/index.md
maintaing -> maintaining
2016-08-29 11:30:36 -04:00
597d66782e Merge pull request #1135 from vankessel/open1117
[Search] 'All' checked upon no filters. Fixes #1117
2016-08-29 14:17:07 +01:00
01031de074 Merge pull request #1148 from dhrubomoy/patch-1
[Documentation] Fixed typo
2016-08-29 13:36:46 +01:00
1cc29be3d6 Merge pull request #1149 from BogdanAlexandru/tutorial-diff-fix
[Documentation] Fix added lines in tutorial
2016-08-29 13:29:04 +01:00
6cbdaa442b [Search] Repurposed checkAll test. #1117
Changed test to ensure checkAll and it's appropriate filter string are 
set whenever checkAll is changed.
Removed redundant line checking for a filter string of 'NONE' as this 
is no longer a possibility.
2016-08-28 12:01:42 -07:00
ab9d92a01a Merge pull request #1145 from nasa/remove-protractor-348
[Testing] Remove protractor hierarchy
2016-08-28 17:50:38 +01:00
8aa3000fb1 Merge pull request #1134 from nasa/dep-vuln-1130
[Build] Check dependencies for vulnerabilities
2016-08-28 17:45:25 +01:00
64d8b5fcd1 [Build] Incluse NSP in verify tasks 2016-08-28 17:37:22 +01:00
05e88e5dcf [Build] Add NSP task
...to check dependencies for known vulnerabilities.
2016-08-28 17:37:21 +01:00
5a819a96de [Build] Add gulp-nsp dependency
...to begin integrating checks for vulnerabilities in dependencies,
fixes #1130.
2016-08-28 17:37:21 +01:00
7998a3fc98 Merge pull request #1132 from nasa/locator-collapse-1008
[Locator] Don't reset root unnecessarily
2016-08-28 17:29:18 +01:00
9063996e84 Merge pull request #1127 from nasa/console-warning-1114
[Tree] Check for change before scope.$apply
2016-08-28 16:49:59 +01:00
76e62ae199 Merge pull request #1095 from nasa/build-reports
[Build] Normalize reporting for QA tasks
2016-08-28 16:36:09 +01:00
0e24de2b69 Add .swp to git ignore 2016-08-28 09:33:23 -03:00
542dea69a1 [Documentation] Fix added lines in tutorial 2016-08-28 14:50:15 +03:00
89f2e0943c [Documentation] Fixed typo
"Framework.md" was showing a 404 error. Changed it to "framework.md", which is the actual file name.
2016-08-28 02:02:18 -04:00
08eaa822fe Removing use of bubble-container class (issue #101) 2016-08-27 21:29:30 -04:00
39f2f94a53 Info bubbles now allow the user to copy text from them (issue #101) 2016-08-27 21:00:37 -04:00
b02de171f1 [Testing] Remove protractor hierarchy
Remove protractor test hierarchy; until work is completed on #348,
this is not useful and will be impractical to maintain.
2016-08-26 12:39:24 -07:00
4091e9cdf4 Merge pull request #1125 from medinae/patch-1
Suppress commented code on the github repository
2016-08-25 15:22:39 +01:00
b165322ba3 Merge pull request #1142 from BogdanAlexandru/tutorial-formatting-fix
[Documentation] Fix code formatting
2016-08-24 16:04:44 -07:00
30750e63aa [Documentation] Code block spacing now consistent 2016-08-24 23:23:57 +03:00
2cb636b050 [Documentation] Switch Step 2 to fenced 2016-08-24 22:56:43 +03:00
5161205a06 [Documentation] Switch Step 1 to fenced 2016-08-24 22:45:55 +03:00
79c5895f2f [Documentation] Fix code formatting 2016-08-24 21:07:11 +03:00
44f8c2f49f Merge pull request #1106 from nasa/search1093-b
Minor Search enhancements
2016-08-22 15:27:12 -07:00
702ebbd557 [Search] Update test for #1117 fix.
Changed test to work properly with #1117 fix.
Checks if checkAll gets checked when no options are checked.
Checks if changing checkAll updates the filter string to ''
2016-08-22 13:19:47 -07:00
e29efbbcdf [Search] 'All' selected upon no filters. Fixes #1117
Upon deselecting every filter, the search returns nothing. This serves 
no useful purpose as discussed in #1117. Now deselecting every filter 
automatically selects 'All'.
2016-08-22 12:52:34 -07:00
44504feeb9 [Frontend] Tweak markup 2016-08-22 15:38:17 -03:00
fdbe31cb76 [Locator] Remove redundant assignment
10d2794bb7 (r75547548)
2016-08-19 14:26:03 -07:00
10d2794bb7 [Locator] Don't reset root unnecessarily
...as this will trigger a refresh of the mct-representation for
the tree, which will in turn create a new mct-tree instance,
resulting in any expanded/collapsed state being lost.

Fixes #1008.
2016-08-19 13:28:56 -07:00
eb3b6e5eca Merge pull request #1129 from nasa/open1128
[Documentation] Updated docs build script to push documentation to the correct directory on the website
2016-08-19 12:44:11 -07:00
ccc32096ea [Documentation] Updated docs build script to push documentation to the correct directory on the website 2016-08-16 18:57:18 -07:00
4e5887d9ec [Tree] Check for change before scope.$apply
TreeView's observers will be called when the selected domain object
changes, which can occur for one of two reasons:

1. Because a new value was set externally, from mct-tree.
2. Because a new value was selected, by the user.

In the latter case a $apply is needed, but in the former it is not
(and causes an error.) However, when that case occurs, the value in
scope will be up to date already (it was a watch that triggered the
call to treeView.value) so no assignment or $apply is necessary.

Fixes #1114.
2016-08-15 16:04:14 -07:00
2167c061a2 No commented code on the github repository 2016-08-13 14:25:41 +04:00
2100c5717e [Build] Restore SNAPSHOT status
...to open sprint Orwell,
https://github.com/nasa/openmct/milestones/Orwell
2016-08-12 16:06:09 -07:00
acc1b8e207 [Build] Remove SNAPSHOT status
...to close sprint Niven,
https://github.com/nasa/openmct/milestones/Niven
2016-08-12 16:01:43 -07:00
f3bd88837f Merge remote-tracking branch 'origin/master' into search1093-b
Conflicts:
	platform/search/res/templates/search.html
2016-08-08 17:51:39 -07:00
8105a7edb8 Merge remote-tracking branch 'origin/master' into search1093-b
Conflicts:
	platform/search/res/templates/search.html
2016-08-08 17:51:25 -07:00
385d90b056 [Persistence] Fix code style 2016-08-08 13:51:10 -07:00
ecf526aa03 [Persistence] Add JSDoc for NestedTransaction 2016-08-08 13:49:34 -07:00
a35b158fd1 [Persistence] Add JSDoc for Transaction 2016-08-08 13:48:19 -07:00
2ebf05ae5b [Persistence] Test NestedTransaction 2016-08-08 13:41:13 -07:00
850da9de52 [Persistence] Fix member reference in NestedTransaction 2016-08-08 13:40:50 -07:00
353c24c70e [Persistence] Invoke parent constructor 2016-08-08 13:39:03 -07:00
73d10ab093 [Persistence] Test Transaction 2016-08-08 13:29:39 -07:00
668b7b6a39 [Persistence] Add empty specs for Transactions 2016-08-08 13:21:48 -07:00
70c072be0b [Persistence] Test more cases
Add more test cases for TransactingMutationListener to
distinguish active-transaction case from no-transaction
case.
2016-08-08 13:18:40 -07:00
eb2fbcd8d0 [Persistence] Cover TransactingMutationListener
Add test cases sufficient for line coverage of
TransactingMutationListener.
2016-08-08 12:34:46 -07:00
02f34d1c04 [Persistence] Begin testing TransactingMutationListener 2016-08-08 12:28:13 -07:00
c8931f8535 [Tree] Simplify synchronization (#1100)
Simplify synchronization of selection in tree with state
passed-in, letting Angular deal with more of the specifics.
Fixes #1008.
2016-08-05 16:30:55 -07:00
0274490b68 [search] Reverted previous change to ClickAwayController and introduced a custom fix to search menu. Fixes #888 (#1109) 2016-08-05 16:30:20 -07:00
06f2c74444 [Frontend] Minor search enhancements
Fixes #1093
Finessed and cleaned up filters display
element; added '# results found' element;
2016-08-02 15:57:43 -07:00
4d89de7068 Merge pull request #1105 from nasa/readme-new-api
[Documentation] Add mention of new API to README
2016-08-02 15:04:32 -07:00
2d50a63ca4 Merge remote-tracking branch 'origin/search1093' into search1093-b
Conflicts:
	platform/search/res/templates/search.html
2016-08-02 15:03:48 -07:00
54dcccb472 [Documentation] Add mention of new API to README
Added two paragraphs to the readme mentioning the ongoing API work with a link to the tracking task. The website will also link to this.
2016-08-02 14:37:32 -07:00
d1e1ba1c66 [Frontend] Refactor glyphs to classes
Squashes #1103, fixes #1047.

Squashed commit of the following:

commit 0e060f174d
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Jul 29 14:55:34 2016 -0700

    [Frontend] Added button to .s-button

    Fixes #1047

commit 9f74395a79
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Jul 29 14:43:36 2016 -0700

    [Frontend] Fixing problems from circleci

    Fixes #1047

commit 7278c9534c
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Jul 29 14:37:21 2016 -0700

    [Frontend] CSS fixes for s-status classes

    Fixes #1047
    Fixed .s-status-editing and s-status-pending;

commit 4606d617d1
Merge: d5bff55 59436f7
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Fri Jul 29 13:58:51 2016 -0700

    Merge remote-tracking branch 'origin/master' into frontend-1047

commit d5bff555e0
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 28 19:09:33 2016 -0700

    [Frontend] Updated glyphs used by plot view switcher

    Fixes #1047

commit b72d82baef
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 28 19:09:00 2016 -0700

    [Frontend] Tree styles in left pane and selector-list

    Fixes #1047

commit af36b9996d
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 28 18:32:34 2016 -0700

    [Frontend] Form validation styling

    Fixes #1047
    <mct-form> must now include class
    'validates'  to display validation glyph icons;
    removed 'no-validate' from markup; cleaned
    up validation scss;

commit 69dc893b4b
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 28 17:11:52 2016 -0700

    [Frontend] Glyphs to classes, mobile

    Fixes #1047
    Fixes and enhancements for mobile,
    particularly in tree;  Removed
    `display: inline-block` from containerSubtle
    mixin;

commit 7bca18b186
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 28 11:36:19 2016 -0700

    [Frontend] Rename .s-menu-btn, remove unused

    Fixes #1047
    .s-menu-btn > .s-menu-button;
    .create-btn > .create-button;
    removed unused l-btn, t-btn,
    t-btns-zoom from markup

commit 5d229198b7
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 28 11:25:36 2016 -0700

    [Frontend] Rename .s-clickable-icon to .s-icon-button

    Fixes #1047

commit 36479e2e8b
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 28 11:20:30 2016 -0700

    [Frontend] Rename .s-btn to .s-button

    Fixes #1047

commit 89e4f06de9
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 28 11:12:07 2016 -0700

    [Frontend] Apply clickable-icon class

    Fixes #1047

commit e65ca1cb8b
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Thu Jul 28 10:52:35 2016 -0700

    [Frontend] Updated icons

    Fixes #1047
    - Clock, timer, plots updated

commit 3e7eb98ac2
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 27 18:05:06 2016 -0700

    [Frontend] Standardizing styles

    Fixes #1047
    - Finessing mini-tab and making able to
    control per theme; s-clickable and s-toggle-icon
    classes cleaned up

commit 18e08074a8
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 27 16:33:25 2016 -0700

    [Frontend] Tweaks to sass code

    Fixes #1047
    - Splitter and mini-tab-icon elements

commit 44fda8d68f
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jul 27 09:24:53 2016 -0700

    [Frontend] Multiple UI fixes and tweaks

    Fixes #1047
    mini-tabs, splitters and bg-splash updated;
    moved position of Inspector collapse mini-tab
    to allow position transition;
    splitter-sm class added for Timelines;

commit 2aee8bc0d8
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jul 26 15:53:32 2016 -0700

    [Frontend] Updated splash image

    Fixes #1047

commit 624f09777f
Merge: ce7591f 4d2f159
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jul 26 15:02:55 2016 -0700

    Merge remote-tracking branch 'origin/master' into frontend-1047

commit ce7591f642
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jul 26 11:22:23 2016 -0700

    [Frontend] Fixed clock indicator

    Fixes #1047
    Restored no-collapse and float-right
    properties;

commit 5324c8edba
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Jul 25 18:14:38 2016 -0700

    [Frontend] New font and project file

    Fixes #1047
    New font files that were missed in
    last commit; updated icomoon proj
    file; fixed missing char codes in
    glyphs.scss;

commit a3b2628883
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Jul 25 17:54:00 2016 -0700

    [Frontend] Revised and new icon art

    Fixes #1047
    New icons for overlay and stacked plots;
    revised art and new description for
    Fixed Position object;

commit 8a41c6dbc7
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Jul 25 17:52:41 2016 -0700

    [Frontend] Removing glyph definitions

    Fixes #1047
    Updated comment

commit eb293b21eb
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Jul 25 11:56:18 2016 -0700

    [Frontend] Removing glyph definitions

    Fixes #1047
    Removed commented code

commit d8b1fb7781
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Jul 25 11:17:45 2016 -0700

    [Frontend] Removing glyph definitions; updating tests

    Fixes #1047
    Search and removal of "glyph" definitions in bundle
    and other JS files; updating tests accordingly;

commit 650fbcc921
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Jul 25 10:20:33 2016 -0700

    [Frontend] Removing glyph definitions; updating tests

    Fixes #1047
    Search and removal of "glyph" definitions in bundle
    and other JS files; updating tests accordingly;

commit 574b8bd5c1
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Fri Jul 22 19:11:56 2016 -0700

    [Frontend] Updated tests for glyph refactoring

    Fixes #1047
    Fixing test cases

commit dd84177441
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Fri Jul 22 18:47:45 2016 -0700

    [Frontend] Updated tests and examples for glyph refactoring

    Fixes #1047
    WIP: Fixing test cases: fixed test in Timers that was expecting
    glyph return;

commit 2231f8e124
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jul 21 17:45:20 2016 -0700

    [Frontend] Updated tests for glyph refactoring

    Fixes #1047
    Fixing test cases: fixed test in Timers that was expecting
    glyph return;

commit ae59ecfa97
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jul 21 17:38:45 2016 -0700

    [Frontend] Fixed style

    Fixes #1047
    WIP: fixed line-height issue for t-item-icon class

commit d43bff1445
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jul 21 17:07:49 2016 -0700

    [Frontend] Fixed colors

    Fixes #1047
    WIP: fixed colors  and style defs related to clickable
    icons

commit c2db6f8805
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jul 21 16:32:17 2016 -0700

    [Frontend] Fixed colors

    Fixes #1047
    WIP: fixed colors related to changes to
    btnSubtle mixin; new constants for clickable
    icons

commit a4753c44d1
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jul 21 15:23:58 2016 -0700

    [Frontend] Added new icon-brackets to symbols font

    Fixes #1047
    WIP

commit 2704640b94
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jul 21 15:11:28 2016 -0700

    [Frontend] Normalize color constants

    Fixes #1047
    Normalize color constant values for themes; consolidated
    and cleaned up btn-related mixins; fixed hover color issues

commit 421286c7e4
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jul 21 14:10:13 2016 -0700

    [Frontend] Convert new Fixed Position Display from glyphs

    Fixes #1047
    WIP

commit a4111f3855
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jul 21 14:07:38 2016 -0700

    [Frontend] Refactoring Timeline glyphs, s-btn fixes

    Fixes #1047
    WIP: Timeline-related glyph refactoring; s-btn
    styles and hover color fixes

commit 883f999215
Merge: 9d9cabb 14f1a1f
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jul 21 08:53:23 2016 -0700

    Merge remote-tracking branch 'origin/master' into frontend-1047

commit 9d9cabb760
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jul 19 16:20:20 2016 -0700

    [Frontend] Glyph refactoring

    Fixes #1047
    WIP: search, toolbar buttons; mods
    to flex archetypes

commit 28b663ce41
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Jul 18 14:58:40 2016 -0700

    [Frontend] Glyph-related style changes to toolbars and buttons

    Fixes #1047
    Glyph refactoring  WIP for toolbar buttons;
    Timeline glyph refactoring continued

commit a9326f572f
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Jul 18 13:36:45 2016 -0700

    [Frontend] Glyph-related style changes to Timelines

    Fixes #1047
    Timeline glyph refactoring; Resource Graph icons
    in swimlanes now display grayed-out version when not
    added to the Resource Graph; minor color tweaks

commit d6e1737803
Merge: 88054e5 6176ca2
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Mon Jul 18 10:29:32 2016 -0700

    [Frontend] Merge master into frontend-1047

    Fixes #1047
    Resolved conflict in icomoon.json file

commit 88054e5e8e
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jun 30 16:55:40 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    In progress: significant mods to pane collapse/expand
    buttons and symbols, minor tweaks to splitter look,
    limits glyph definitions

commit 7c47343f5c
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jun 30 16:52:21 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    In progress: updated font files glyphs, mostly
    for pane collapse icons

commit fd00bdce54
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jun 30 12:20:55 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    In progress: search menu

commit 272b4b649e
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jun 30 12:11:25 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    In progress: moved limits classes out
    of _contants and into _glyphs;
    timers, entanglement context menu items,
    form validation, date picker.

commit 95d26e6fe7
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Wed Jun 29 14:18:12 2016 -0700

    [Frontend] Refactoring glyphs to classes

    Fixes #1047
    In-progress; limits

commit 26b30d96db
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jun 28 17:16:18 2016 -0700

    [Frontend] Refactoring glyphs to classes

    Fixes #1047
    In-progress; overlay close, search inputs,
    messages and message banners,
    ui-symbol removal in-progress.

commit 4e2a01ad85
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jun 28 16:21:05 2016 -0700

    [Frontend] Refactoring glyphs to classes

    Fixes #1047
    In-progress; .labeled added  to .s-btn,
    removed .s-icon-btn

commit 521db3c3fe
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jun 28 16:10:54 2016 -0700

    [Frontend] Refactoring glyphs to classes

    Fixes #1047
    In-progress; plot options, imagery buttons,
    cleanups in buttons.scss, edit-action buttons,
    .s-btn .no-label class added.

commit 8bb8db69e6
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jun 28 14:47:52 2016 -0700

    [Frontend] Refactoring glyphs to classes

    Fixes #1047
    In-progress; indicators, notifications, actions,
    tests

commit 53ed0bfb22
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jun 27 17:01:45 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    In progress, really: view icons, timer/clock

commit 47dc7f2f6b
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jun 27 16:13:31 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    In progress: grid items

commit 2bd34f71be
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jun 27 15:00:46 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    Context menus and associated actions,
    custom checkboxes, tree item being edited

commit b561d4f60e
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jun 27 14:27:56 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    In-progess: glyphs.scss now uses $vars to
    allow other scss to use a var instead of string
    literals;

commit 0cf4089620
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jun 27 14:13:59 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    In-progess: tree-labels, unknown objects, object
    header

commit 46cae10905
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jun 27 11:41:06 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    In-progess, menus and Create menu fixes

commit fe3097707f
Merge: 7d69ae4 652a50c
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Mon Jun 27 11:20:55 2016 -0700

    Merge remote-tracking branch 'origin/master' into frontend-1047

commit 7d69ae401b
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jun 23 15:59:56 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    In-progress, converting types, mods to
    Create Menu template

commit 18d9f3d6b2
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jun 23 15:14:22 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    Very much In-progess: convert some controls;

commit e93a90a782
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jun 23 11:28:07 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    Very much In-progess, classes for all symbols
    added to glyphs.scss; .menu cleaned up;

commit dc670b22a6
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Thu Jun 23 08:55:27 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    Very much In-progess, "icon-" selector,
    browse bar buttons

commit 8b29ccf3af
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Wed Jun 22 23:15:24 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    Very much In-progess, s-btn and
    s-btn-menu refactoring

commit f574ffed16
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Wed Jun 22 14:37:34 2016 -0700

    [Frontend] Refactoring glyphs to classes

    fixes #1047
    In-progess, e900 > e904

commit bc62ee4565
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Wed Jun 22 13:28:15 2016 -0700

    [Frontend] Complete revamp of unicodes

    fixes #1047
    New font files; no re-mapping yet in the app.

commit 614f0c6e9f
Author: Charles Hacskaylo <charles.f.hacskaylo@nasa.gov>
Date:   Wed Jun 22 13:23:18 2016 -0700

    [Frontend] Complete revamp of unicodes

    fixes #1047
    Moved all glyphs into PUA area of font, and
    re-organized by category.

commit 47bd4031d5
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jun 21 18:39:48 2016 -0700

    [Frontend] Renaming symbols font files

    Fixes #1047
    - Modified sass to point to renamed font files;
    - Added new 12px symbols font files to sass;

commit 22a51d6bbb
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jun 21 18:22:33 2016 -0700

    [Frontend] Updating Icomoon project files

    Fixes #1047
    - Renamed main project file;
    - Added new 12px symbols project file;

commit 13ded2fd84
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jun 21 18:19:27 2016 -0700

    [Frontend] Added new 12px symbols font files

    Fixes #1047

commit aef5660dfd
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Jun 21 18:16:56 2016 -0700

    [Frontend] Renaming symbols font files

    Fixes #1047
2016-08-01 14:33:25 -07:00
7265b241a2 Merge remote-tracking branch 'origin/master' into persist-on-mutation-825 2016-07-28 13:21:45 -07:00
59436f7b45 [Tests] Load all sources (#1098)
Load all source files when running Karma's test suite; this
ensures that code coverage metrics are not invalidated by
missing files. Fixes #1090.
2016-07-28 10:45:38 -07:00
771542ee5f [Persistence] Reliably return promises 2016-07-26 15:32:59 -07:00
b60eff2f5e [Persistence] Update bundle definition 2016-07-26 15:26:43 -07:00
f6d6cb929f [Persistence] Add to transaction on mutation 2016-07-26 15:24:16 -07:00
6f2c80bc2e [Persistence] Use NestedTransaction 2016-07-26 15:20:40 -07:00
0fe0b21eda [Persistence] Add NestedTransaction 2016-07-26 15:18:21 -07:00
0bedc227f4 [Persistence] Allow nested transactions 2016-07-26 10:10:15 -07:00
6c4419fb72 [Persistence] Refactor out Transaction
https://github.com/nasa/openmct/pull/874#issuecomment-233068178
2016-07-25 16:45:32 -07:00
766e94ed62 Merge remote-tracking branch 'origin/master' into persist-on-mutation-825b
Conflicts:
	platform/core/src/capabilities/PersistenceCapability.js
2016-07-25 16:30:49 -07:00
4d2f159dd8 [Build] Bump version number
...and restore SNAPSHOT status to open sprint Niven,
https://github.com/nasa/openmct/milestone/15
2016-07-25 12:07:41 -07:00
26a9d53f3b [Build] Remove SNAPSHOT Status
To close sprint Le Guin,
https://github.com/nasa/openmct/milestone/14
2016-07-25 11:46:40 -07:00
41156cec7c [Build] Normalize reporting for QA tasks
https://developer.nasa.gov/ResourceProspector/warp/issues/191
2016-07-21 12:11:05 -07:00
9fa6184b0a [Frontend] Markup / Angular mods to Search
Fixes #1093
WIP: markup changes. Needs CSS mods effected in
#1047 as well.
2016-07-19 15:23:22 -07:00
14f1a1f740 Merge remote-tracking branch 'origin/open1031' 2016-07-18 11:43:55 -07:00
5a6c209369 Merge branch 'jesusprubio-open1036' 2016-07-18 11:39:04 -07:00
8c2ce81b76 Merge branch 'open1036' of https://github.com/jesusprubio/openmct into jesusprubio-open1036 2016-07-18 11:37:00 -07:00
99ec188813 Merge remote-tracking branch 'origin/open254' 2016-07-18 11:35:43 -07:00
41d0089e53 Merge remote-tracking branch 'origin/open1065' 2016-07-18 11:19:55 -07:00
8ed9f51008 Merge remote-tracking branch 'origin/open1075-fixed' 2016-07-18 11:17:05 -07:00
6176ca2260 Merge pull request #1084 from nasa/transaction-clearing-1059
[Persistence] Clear transactions selectively
2016-07-15 16:20:19 -07:00
eb6ddb5e45 [Persistence] Use ids from TransactionManager API
Recommended during code review,
https://github.com/nasa/openmct/pull/1084#discussion_r71021889
2016-07-15 12:26:35 -07:00
c5041db1d1 Merge pull request #1083 from nasa/contextualize-624
[Context] Remove excessive warnings
2016-07-15 11:05:52 -07:00
307b678707 [Fixed] Create new object type based on Telemetry Panel 'Fixed' view. Fixes #1075 2016-07-14 17:00:13 -07:00
550e60455b [Persistence] Fix code style 2016-07-14 16:49:31 -07:00
d263b80810 [Persistence] Add TransactionManager JSDoc
Fixes #1059 (or, rather, concludes work on said fix)
2016-07-14 16:47:36 -07:00
99227d2e42 [Persistence] Finish testing TransactionManager 2016-07-14 16:39:50 -07:00
31264aadda [Persistence] Begin testing TransactionManager 2016-07-14 16:28:27 -07:00
11a2fbacb4 [Persistence] Add test cases
Adds test cases for TransactionalPersistenceCapability which brings
coverage up to 100%.
2016-07-14 16:22:25 -07:00
7c865f87be [Persistence] Update transactional persistence spec
...to account for changes to separate out transaction management,
including removal of specs made obsolete (as tested behavior has
been moved to TransactionManager or was already redundant to
behavior from the undecorated PersistenceCapability)
2016-07-14 16:20:29 -07:00
86fcf19066 [Persistence] Update Save As spec
...to account for asynchrony in test case due to usage of
Promise.all
2016-07-14 16:14:20 -07:00
1f7cece8ec [Persistence] Remove unused variable 2016-07-14 15:05:43 -07:00
a731c35ad6 [Persistence] Refactor out transaction management 2016-07-14 13:43:55 -07:00
c7529dd56b [Persistence] Share transaction clearing functions 2016-07-14 12:53:58 -07:00
00fff52529 [Persistence] Track persist-pending state globally 2016-07-14 12:50:36 -07:00
4c7ad6d93a Merge branch 'undirty-on-refresh-1046' into transaction-clearing-1059
Conflicts:
	platform/commonUI/edit/src/actions/SaveAsAction.js
2016-07-14 11:53:39 -07:00
eb5493e37b [Persistence] Revert quick-fix for persistence clearing
Revert "Squashed commit of the following:"

This reverts commit d1c01d3c86.
2016-07-14 11:51:59 -07:00
1fb18c7919 [Context] Add test, tweak logic
Add test to verify that warnings are not shown based on
composition/location inconsistencies when editing.
2016-07-14 11:16:07 -07:00
1c2378b3b4 [Context] Suppress warnings while editing
Don't expect consistency between composition and location fields
while an object is being edited; this avoids benign warnings
being logged. Fixes #624
2016-07-14 11:10:15 -07:00
cd21575546 [Documentation] Minor punctuation change, and added links 2016-07-13 08:57:52 -07:00
f9d6b9fe5d Merge pull request #1044 from pacozaa/master
[Documentation] Improve README.md in Build section
2016-07-13 08:50:29 -07:00
407766774d [Documentation] Add Building and Running Open MCT Locally Section from #1044 comment 2016-07-13 15:05:11 +07:00
c8898ac6aa [Documentation] Updated copyright statement. Fixes #1081 2016-07-12 16:55:57 -07:00
d05a1cef9b Merge pull request #1060 from nasa/clear-transactions-1046-squashed
[Edit] Clear transactions on Save As
2016-07-11 12:25:09 -07:00
12b5544959 [Documentation] Edit as Reqeust in #1044 comment 2016-07-09 20:49:05 +07:00
59e18b9a79 [Search] Amended ClickAwayController to trigger digest via instead of . Fixes #1065 2016-06-30 14:44:39 -07:00
ea1780364b [Dialog Service] Dismiss individual dialogs. Fixes #254 2016-06-29 20:12:12 -07:00
eef08ccb0b [Documentation]Add convince messages 2016-06-28 13:05:28 +07:00
8a9edd3705 [Documentation] Add Official site 2016-06-28 12:51:12 +07:00
652a50c700 Merge remote-tracking branch 'origin/open1018-new' 2016-06-27 09:13:03 -07:00
d1c01d3c86 Squashed commit of the following:
commit 3f199a9f06
Merge: 27fe4ed 736cba7
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Jun 27 09:04:40 2016 -0700

    Merge remote-tracking branch 'origin/master' into clear-transactions-1046

    Conflicts:
    	platform/commonUI/edit/src/actions/SaveAsAction.js

commit 27fe4edb30
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Jun 22 15:04:06 2016 -0700

    [Edit] Mark restartTransaction as private API

commit 21d1938a0f
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Jun 22 15:03:17 2016 -0700

    [Edit] Clarify JSDoc

commit 06a83f9fa9
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Jun 22 15:01:35 2016 -0700

    [Edit] Update failing spec

commit 1f525160e0
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Jun 22 14:52:43 2016 -0700

    [Edit] Refer to correct variable

    ...when clearing transactions after a restartTransaction

commit b60e94bce4
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Jun 22 14:38:54 2016 -0700

    [Edit] Clear transactions on Save As

    ...such that only persistence calls associated with the
    saved clones are actually issued. Fixes #1046.
2016-06-27 09:12:57 -07:00
8cf7ffc7cc [Documentation] Add How is NASA Using Open MCT?, Features, See Open MCT in Action, Getting Started Sections 2016-06-27 17:11:27 +07:00
b57fc2a0e3 [Documentation] Add getting started section 2016-06-27 16:51:55 +07:00
736cba76bb Merge pull request #1056 from nasa/blocking-save-dialog
[Save] Show blocking dialog
2016-06-26 11:07:03 -07:00
2339560363 [Time Conductor] Bounds updated when date selected from date selector. Fixes #1018 2016-06-24 21:50:59 -07:00
24e870a126 [Save] Show blocking dialog
Show a blocking dialog while the save action is being performed.

Prevents users from pressing save a second time or performing
further actions while a save is in progress.

Fixes https://github.jpl.nasa.gov/MissionControl/vista/issues/362
2016-06-24 20:01:52 -07:00
8bdf1e3072 [Build] Bump version number
...and restore SNAPSHOT status, to begin sprint Le Guin,
https://github.com/nasa/openmct/milestones/Le%20Guin
2016-06-24 15:42:10 -07:00
e8e9598721 [Build] Remove SNAPSHOT status
...to close sprint Kress,
https://github.com/nasa/openmct/milestones/Kress
2016-06-24 15:37:23 -07:00
ce87ad2564 Merge pull request #916 from ev1stensberg/patch-2
[Branding] Added Apache license to README.md
2016-06-23 11:43:16 -07:00
2a2f6e8142 Merge pull request #915 from ev1stensberg/patch-1
[Functionality] Log app instance to the console
2016-06-23 11:24:53 -07:00
3e5057c285 Merge pull request #1015 from mockingjamie/master
Proofread readme.md
2016-06-23 11:24:04 -07:00
48b271b7ca [Edit] Unshadow variable name
...to satisfy JSHint
2016-06-22 16:14:49 -07:00
8244e435bf [Edit] Update failing spec 2016-06-22 16:13:26 -07:00
a3a0f003f0 [Edit] Don't refresh unpersisted objects 2016-06-22 15:41:06 -07:00
e42b8d22f7 [Edit] Undirty objects on refresh
Remove domain objects from the active transaction when they
are refreshed, and use this from the SaveAsAction to prevent
saving unintended changes. Fixes #1046
2016-06-22 15:32:37 -07:00
5485950130 Merge pull request #1049 from nasa/update-plot-squish-margin
[Plot] Set min height
2016-06-22 11:36:19 -07:00
c8f4568bd0 [Plot] Set min height
Set the min height for the plot element based on user feedback for
minimum plot size that they find useful.  Plot ticks may overlap
but that is expected to be fixed in a future release.

Fixes https://github.com/nasa/openmct/issues/1048
2016-06-22 10:51:16 -07:00
51079b0252 [API] X-Powered-By" Express header disabled. Fixes #1036
To improve the security avoiding a possible fingerprinting attack

Ref.: http://expressjs.com/en/advanced/best-practice-security.html#at-a-minimum-disable-x-powered-by-header
2016-06-21 19:43:09 +02:00
bfc6ed4604 modified README.md for better documentation 2016-06-21 17:09:09 +07:00
9cb26b73b5 modified document 2016-06-21 17:02:40 +07:00
c0311be192 [Browse] Inspector shown when object switched to edit mode. Fixes #1031 2016-06-20 20:27:56 -07:00
cefb40856b Merge pull request #1042 from nasa/open1040
[Tables] Enabled auto-scroll by default fixes #1040
2016-06-20 16:24:58 -07:00
ee7c450e11 [Tables] Enabled auto-scroll by default fixes #1040 2016-06-20 16:18:26 -07:00
d741e0f23c Merge pull request #1041 from nasa/frontend-1014a
Emphasis styling applied to Edit button properly
2016-06-20 16:13:29 -07:00
8080490e5c [Frontend] Applied emphasis colors to .key-properties
fixes #1014
Added .key-properties to .major to color the Edit
button as intended;
2016-06-20 16:06:23 -07:00
a3443d8077 Merge pull request #1025 from nasa/frontend-1019
R&I fixes for Snow button colors and Timeline edit Add menu
2016-06-20 12:36:29 -07:00
53e8e7c688 Merge pull request #1024 from nasa/plots-1022
R&I un-squished plots fix
2016-06-17 10:36:40 -07:00
dea94e4e68 [Frontend] Fix button colors in Snow theme
Fixes #1014
- Problem was actually application of a color
within the .icon class - fix removes that
definition;
2016-06-16 17:55:40 -07:00
d40c7f1821 [Frontend] Restore the Add menu to edit Timelines
Fixes #1019
- Removed overflow: hidden from .l-edit-controls;
2016-06-16 17:46:15 -07:00
c7e7e0c302 [Frontend] Fixes to un-squish plots
Fixes #1022
- min-height added to .gl-plot element;
- Moved plot value definitions out of _plots-main
and into _constants and normalized naming;
2016-06-16 17:24:44 -07:00
8ac6ac97f0 Merge remote-tracking branch 'origin/open972' 2016-06-16 11:08:43 -07:00
1afa4ab329 Merge pull request #1017 from nasa/open664
[Edit Mode] Canceling edit mode with unsaved changes now shows confirmation dialog to user
2016-06-16 09:31:37 -07:00
c2517c1670 [Edit Mode] Canceling edit mode with unsaved changes now shows confirmation dialog to user. Fixes #664 2016-06-15 17:10:29 -07:00
717ceff02c Merge pull request #995 from nasa/timeline-913a
R&I tweaks to Timeline scrollbar and splitters
2016-06-15 11:45:17 -07:00
6878c59f45 Merge pull request #1016 from nasa/fix-1013
[Persistence] Use identifier service to get key
2016-06-15 11:18:13 -07:00
c00b053aa7 [Tests] verify that identifier service provides key
Verify that the results of the identifier service are used for
persistence calls instead of the domain object id.

https://github.com/nasa/openmct/issues/1013
2016-06-15 10:31:25 -07:00
480e12c3ab Merge pull request #986 from nasa/table-export-934
[Table] Add Export for table contents
2016-06-15 10:17:21 -07:00
50bd233b0a Merge remote-tracking branch 'origin/master' into table-export-934
Conflicts:
	platform/commonUI/general/res/sass/controls/_buttons.scss
	platform/features/table/res/templates/mct-table.html
2016-06-15 10:05:20 -07:00
79406cf1ed [Tables] #972 Refactored to simplify code. Fixes #972 2016-06-14 16:34:07 -07:00
2d5824c4ab [Persistence] Use identifier service to get key
Retrieve key from identifier service for all persist operations.

Fixes https://github.com/nasa/openmct/issues/1013
2016-06-14 10:56:54 -07:00
3480809129 Merge remote-tracking branch 'origin/open629' 2016-06-14 10:44:58 -07:00
11bc48c7e0 Merge remote-tracking branch 'origin/timeline-console-error-978' 2016-06-14 10:41:26 -07:00
d759401b69 Merge remote-tracking branch 'origin/open1000' 2016-06-14 10:38:51 -07:00
5a2e5ac48f Merge pull request #1 from mockingjamie/changes-to-readme.md
Proofread readme.md
2016-06-13 21:27:43 -04:00
1144f818cf Proofread readme.md
Made minor grammatical corrections.
2016-06-13 21:27:28 -04:00
0aebecfbb0 Merge pull request #987 from nasa/anim-to-edit-709
[Frontend] Animation added to transition from browse to edit mode
2016-06-13 13:31:49 -07:00
531d40993a Merge remote-tracking branch 'origin/better-dialog-message-339' 2016-06-10 14:55:07 -07:00
4c097faf88 Merge remote-tracking branch 'origin/timeline-flash-997' 2016-06-10 14:50:36 -07:00
5152e64895 [Duplicate] Allow copy across spaces
Fixes #1007
2016-06-10 11:38:55 -07:00
0263237b2c Merge pull request #1006 from nasa/open861
[Tables] Recalculate column dimensions on resize
2016-06-09 10:21:05 -07:00
acd0fae040 [Tables] Recalculate column dimensions on resize. Fixes #861 2016-06-09 12:59:46 +01:00
29dd51439d [Date Input] Addressed issues with date selector. Fixes #1000 2016-06-08 17:37:26 +01:00
a1b2175801 [Timeline] Reduce flicker
Reposition scroll bar in Timeline with RAF instead of timeout;
this ensures that scroll bar is positioned after the current
digest (updating the width) but before the results are rendered
(avoiding flicker.) Fixes #997
2016-06-07 10:05:51 -07:00
b0f06a2195 [Build] Restore SNAPSHOT status
...to open sprint Kress,
https://github.com/nasa/openmct/milestones/Kress
2016-06-06 09:57:09 -07:00
f9c93ca022 [Build] Remove SNAPSHOT status
To close sprint Huxley,
https://github.com/nasa/openmct/milestones/Huxley
2016-06-06 09:49:52 -07:00
8e0858bb24 [Frontend] Tweaks to splitter dimensions
Fixes #913
- Tightened up splitter height and width;
- Added hover color for snow theme;
2016-06-03 10:00:16 -07:00
ee0fa0451a Merge branch 'master' into timeline-zoom-center-936
Conflicts:
	platform/features/timeline/src/controllers/TimelineZoomController.js
	platform/features/timeline/test/controllers/TimelineZoomControllerSpec.js
2016-06-03 09:18:01 -07:00
e86e955682 Merge pull request #993 from nasa/revert-990-timeline-regression-817
Revert "[Timeline] Provide greater initial width"
2016-06-02 17:05:11 -07:00
9913fb48f5 Revert "[Timeline] Provide greater initial width" 2016-06-02 16:54:59 -07:00
71c362f016 Merge pull request #992 from nasa/revert-991-timeline-regression-817
Revert "[Timeline] Update scroll position on timeout"
2016-06-02 16:54:48 -07:00
fa6e8fd5f9 Revert "[Timeline] Update scroll position on timeout" 2016-06-02 16:49:49 -07:00
23b64951f3 [Timeline] Update zoom controller spec
...to reflect changes/simplifications for #936.
2016-06-02 16:42:09 -07:00
99590d18f7 [Timeline] Simplify bounds-tracking 2016-06-02 16:40:07 -07:00
86b31bc040 [Timeline] Simplify scroll-setting 2016-06-02 16:38:11 -07:00
d52bfed1df [Timeline] Always set scroll on timeout
...to allow time for width to increase.
2016-06-02 16:36:09 -07:00
808ccd0376 [Frontend] Tweaks to splitter
Fixes #913
- IN PROGRESS: working on making
smaller splitter in Timelines
2016-06-02 16:23:42 -07:00
44d6456de1 [Timeline] Set scroll on timeout
Whenever timeline zoom controller sets scroll, check to see if
there may be a width violation that causes scroll to be reset,
and retry on a timeout if so. Fixes #936.
2016-06-02 16:05:28 -07:00
a394b95259 [Frontend] Tweaks to scrollbar visibility
Fixes #913
- Scrollbar now always visible in the right side
of the tabular area, in order to avoid column
bottom edges not aligning;
2016-06-02 16:04:26 -07:00
beeefe517a Merge pull request #991 from nasa/timeline-regression-817
[Timeline] Update scroll position on timeout
2016-06-02 15:37:42 -07:00
d02f4041b2 [Timeline] Update scroll position on timeout
Fixes #817
2016-06-02 15:34:32 -07:00
9fd75ff91e Merge pull request #990 from nasa/timeline-regression-817
[Timeline] Provide greater initial width
2016-06-02 14:59:14 -07:00
026ece3956 [Timeline] Provide greater initial width
This avoids starting with a scrollable width too small for the
initial scroll position that the zoom controller selects.
Fixes #817
2016-06-02 14:48:58 -07:00
214a843dba [Frontend] New message for copy in-progress dialog
fixes #339
2016-06-02 11:09:22 -07:00
1d6880c283 Merge pull request #982 from nasa/timeline-scroll-981
[Timeline] Use reasonable width for scroll area
2016-06-02 16:59:08 +01:00
8ddad9bf4c Merge pull request #984 from nasa/open979
[Edit] Fixed issue with cancel action throwing an error. Fixes #979
2016-06-02 10:31:20 +01:00
f167022eea Changed logic of persisted check slightly 2016-06-02 10:26:38 +01:00
76edba1014 [Frontend] Mods to Edit button
fixes #709
- Changed title and style of main Edit button;
- Updated EditItem.js protractor ID accordingly;
2016-06-01 19:19:58 -07:00
7904989a23 [Frontend] Added transitional animation to Edit mode
fixes #709
- When going from browse to edit mode, the wrapper
around the object being edited will now transition in
from its edges, and the edit controls toolbar will
animate its height;
- There is no transition applied for going from edit
to browse; to do this we'd need to mod the JS on
exiting to look for the end of an animation event;
- Tested in Chrome, Safari and Firefox;
- May not be smooth with very complex objects
like Layouts with a large number of components;
- Added transitional animations to .l-object-wrapper
and .l-edit-controls;
- New 'animTo' mixin added to _effects.scss;
2016-06-01 19:18:55 -07:00
ea676b4368 Merge remote-tracking branch 'origin/master' into table-export-934 2016-06-01 10:33:53 -07:00
cc2b102256 Merge pull request #985 from nasa/open973
[Style] Export button in tabular views
2016-06-01 10:27:51 -07:00
b1266abf01 [Edit] Fixed issue with cancel action throwing an error. Fixes #979 2016-06-01 10:41:01 +01:00
cc7d0477e8 [Timeline] Check for existence of timespan
...before attempting to calculate a width based on it.
Fixes #978.
2016-05-31 16:41:30 -07:00
5a2d1a746d [Timeline] Add missing semicolon 2016-05-31 16:27:59 -07:00
4f0e3fdf85 [Timeline] Test zoom controller's width 2016-05-31 16:21:40 -07:00
be9f56107c [Timeline] Remove obsolete test cases 2016-05-31 16:15:57 -07:00
787f3815df [Timeline] Expose width from ZoomController
...and ensure that the width exposed is not excessively
large; fixes #981
2016-05-31 16:12:49 -07:00
35d7d9b380 [Timeline] Remove width method
...from TimelineController. Will replace with a more straightforward
call to the zoom controller that uses the exposed end time instead,
to address #981.
2016-05-31 16:05:06 -07:00
8b9c51f303 [Frontend] Styling Export button
fixes #973
- Done;
- Styling for Export button and tabular view
area in layout frame context;
- Export button in frame context now
hidden until user hovers over tabular
view area in frame, includes animated
transition;
- Normalized line-height on button and
menu elements in frame context;
- Layout/markup/SASS for historical and
RT tabular view modified;
- Converted imagery.html layout
to use flexbox;
2016-05-31 11:40:31 -07:00
661b3d5889 [Frontend] Styling Export button
fixes #973
- In progress:
- Added new download symbol to symbols font;
- Added export symbol to export button;
- Layout/markup/SASS for historical tabular
view modified;
2016-05-31 09:50:12 -07:00
01c85cb58d [Table] #972 Further refactoring, tests, style fixes 2016-05-31 12:05:40 +01:00
0218f42e2b removed redundant code 2016-05-27 15:25:06 -07:00
d8d0f22889 Second rewrite 2016-05-27 15:14:46 -07:00
d8a097a95a [Tables] Added timeouts to yield control to ui thread. Fixes #972 2016-05-27 15:14:45 -07:00
dc577d4c24 Merge pull request #974 from nasa/open970
R&I open970: hide nav-to-parent arrow when in Edit mode
2016-05-27 14:56:48 -07:00
8f9308de01 Merge pull request #962 from nasa/csv-export-update-751
[Timeline] Updates to CSV Export
2016-05-27 14:55:59 -07:00
8f7a5e113b Merge pull request #951 from nasa/orphan-navigation-765
[Navigation] Prevent navigation to orphan objects
2016-05-27 14:53:33 -07:00
9820f9d9c5 [Frontend] Mod CSS to properly hide nav-to-parent when editing
fixes #970
Not sure what problem was, but betting this was due to removal
of an ng-class previously in markup;
2016-05-26 12:45:25 -07:00
56ff98cce7 Merge branch 'master' into orphan-navigation-765 2016-05-26 12:35:48 -07:00
dade6b2254 [Timeline] Use positive logic for clarity
https://github.com/nasa/openmct/pull/962#discussion_r64678013
2016-05-26 12:12:52 -07:00
e9cac6eff3 [Timeline] Add JSDoc for new parameter
https://github.com/nasa/openmct/pull/962#discussion_r64677520
2016-05-26 12:12:52 -07:00
a88b4b31a1 Merge pull request #966 from nasa/open747
R&I open747: refined "unsaved changes" dialog message
2016-05-26 12:02:12 -07:00
7fc2fcfa07 [Edit Mode] #629 Rewrote obsolete DomainColumn tests 2016-05-26 11:55:13 -07:00
5689279954 [Timeline] Add JSDoc for idMap
https://github.com/nasa/openmct/pull/962#discussion_r64676750
https://github.com/nasa/openmct/pull/962#discussion_r64677198
2016-05-26 11:53:16 -07:00
04112956cf Merge pull request #964 from nasa/open913
R&I open913: various Timeline fixes
2016-05-26 11:47:06 -07:00
165e158f37 [Edit Mode] #629 Removed redundant test from DomainObjectProviderSpec 2016-05-26 11:44:43 -07:00
f301741852 [Edit Mode] #629 restored disabled tests for DropGesture. Removed extraneous argument to broadcast function 2016-05-26 11:42:15 -07:00
eda1f23df9 [Edit Mode] #629 rewriting disabled tests 2016-05-26 11:38:12 -07:00
d15d27af73 Merge branch 'master' into table-export-934 2016-05-26 10:42:35 -07:00
f1113fda24 [Frontend] New message for unsaved changes warning
open #747
2016-05-26 09:04:40 -07:00
33c208d8fe [Frontend] Timeline Gantt bar mods to allow small min-width
open #965
- CSS adjusted to handle min-width of 2px and better
approach to ellipsizing text;
- Angular ng-class added to hide icon and title if
width less than a value;
- Rounded corners on bars removed;
2016-05-25 20:52:36 -07:00
c557fb6cd5 [Frontend] Cursor properties modified
open #768
2016-05-25 19:39:56 -07:00
bde2bc7709 [Frontend] Bottom of holder divs adjusted
open #913
2016-05-25 19:28:28 -07:00
5fe759aa91 Merge pull request #955 from nasa/timeline-zoom-936
[Timeline] Improve zoom behaviors
2016-05-25 16:58:20 -07:00
a5b7badb95 [Timeline] Remove obsolete arguments
https://github.com/nasa/openmct/pull/955/files#r64668507
2016-05-25 16:08:28 -07:00
eefd4c8669 Merge pull request #949 from nasa/info-error-948
[Mobile] Remove usage of element.scope()
2016-05-25 15:15:53 -07:00
438511c5f7 [Table] Test CSV Export behavior 2016-05-25 15:07:17 -07:00
3eb960cf5a [Table] Move export button out of scroll 2016-05-25 14:50:06 -07:00
699f6ba458 [Table] Export table contents as CSV 2016-05-25 13:54:10 -07:00
f21f22d95c [Table] Tweak appearance of export button 2016-05-25 13:43:44 -07:00
b520d08818 [Table] Begin work on CSV export
#934
2016-05-25 13:23:19 -07:00
fb8fe93529 [Persistence] Fix mistake in JSDoc
https://github.com/nasa/openmct/pull/874#discussion_r64639089
2016-05-25 13:06:58 -07:00
f9fd97230f [Timeline] Satisfy JSHint 2016-05-25 12:37:03 -07:00
536e2290b8 Merge branch 'master' into csv-export-update-751 2016-05-25 12:33:43 -07:00
73b922facf [Timeline] Update specs for indexes instead of ids 2016-05-25 12:32:44 -07:00
ba0d9a186b [Timeline] Account for new argument in spec 2016-05-25 12:26:47 -07:00
80f5cb756d [Timeline] Account for new argument in spec 2016-05-25 12:25:58 -07:00
d7f566088f [Timeline] Update spec to include logging 2016-05-25 12:25:02 -07:00
a3bcaea7f9 [Timeline] Show units in utilization headers 2016-05-25 12:21:58 -07:00
7c11f2db4f Merge pull request #961 from nasa/open959
[Style] Fixed style issues introduced by #954
2016-05-25 12:16:44 -07:00
23c71b7218 [Timeline] Include units for utilizations 2016-05-25 12:12:11 -07:00
7501f679f7 [Style] Fixed style issues introduced by #954 2016-05-25 12:10:39 -07:00
463f7ccf65 [Timeline] Use indexes instead of UUIDs 2016-05-25 12:07:35 -07:00
87fe407739 Merge branch 'master' into csv-export-update-751 2016-05-25 12:00:43 -07:00
52e087d8f8 Merge pull request #954 from nasa/open628
[Edit Mode] #628 Remove edit related concerns from Create Action
2016-05-25 11:55:17 -07:00
c5cd495fce Merge pull request #952 from nasa/fix-build-142
[Code Style] Run code style checks on CircleCI
2016-05-25 11:49:54 -07:00
37a417051d Merge remote-tracking branch 'origin/missing-time-conductor-957' 2016-05-25 11:43:57 -07:00
97d819739c Merge pull request #956 from nasa/fix-build-mct-popup
Resolve build conflict from #922
2016-05-25 11:41:14 -07:00
3935378b0c Revert "[Timeline] Test mct-representation ordering"
This reverts commit 2a4004fd5b.
2016-05-25 11:34:29 -07:00
952f95aa4c [Timeline] Update failing specs 2016-05-25 11:33:51 -07:00
0a75a5be1f [Timeline] Add minimal test case 2016-05-25 11:28:00 -07:00
70b593e28a [Timeline] Watch for configuration object
...to address #908 in a manner which does not cause #957
2016-05-25 11:22:22 -07:00
ed69a65f9b [Representation] Restore ordering in mct-representation
Revert "[Timeline] Change ordering in mct-representation"

This reverts commit 20ecf168f2.
These changes introduced a regression due to ordering
expected by time conductor, #957
2016-05-25 11:03:32 -07:00
bb4f1ce7cd [Timeline] Include utilization columns 2016-05-25 10:52:25 -07:00
0cc2ba7595 [Timeline] Import UtilizationColumn 2016-05-25 10:38:00 -07:00
8162429106 [Timeline] Pass in resources extensions 2016-05-25 10:37:01 -07:00
ed519d89d7 [Timeline] Log errors during CSV export
#751
2016-05-25 10:35:29 -07:00
0e4f6185b8 Merge branch 'master' into csv-export-update-751
Conflicts:
	platform/features/timeline/bundle.js
2016-05-25 10:29:56 -07:00
05b4f5401e Merge remote-tracking branch 'origin/open890' 2016-05-25 10:19:11 -07:00
2ff0c7b06a [Test] Add spy method for addClass
Add spy method, fix a merge conflict that was improperly resolved
in https://github.com/nasa/openmct/pull/922
2016-05-25 10:11:34 -07:00
2330f1d135 Merge remote-tracking branch 'origin/open907' 2016-05-25 10:06:55 -07:00
ff92d3acab Merge remote-tracking branch 'origin/open889' into open922 2016-05-25 09:55:09 -07:00
32d7187db6 Relocated creation package to edit bundle 2016-05-24 17:08:12 -07:00
00534f8af7 [Timeline] Account for tick size
Account for tick size in duration reported by TimelineZoomController,
to avoid tick marks being cut off prematurely due to changes for
#936
2016-05-24 13:02:30 -07:00
3795570938 [Timeline] Rename shadowing variable 2016-05-24 12:45:25 -07:00
362248a02e [Timeline] Run gulp fixstyle 2016-05-24 12:37:10 -07:00
16d20eabd2 [Timeline] Simplify method 2016-05-24 12:33:47 -07:00
eb5566f041 [Timeline] Add tests for timeline zoom changes 2016-05-24 12:33:19 -07:00
757da1dff4 [Timeline] Remove obsolete test cases 2016-05-24 11:54:49 -07:00
85432af187 [Timeline] Don't store zoom configuration
https://github.com/nasa/openmct/issues/936#issuecomment-221343620
2016-05-24 11:53:27 -07:00
f0ab817e87 Added tests, and fixed failing ones 2016-05-24 10:53:04 -07:00
96af931c0b Modified EditActionPolicy to prevent editing of table views unless object is a table type 2016-05-23 16:48:31 -07:00
9a5209f7c2 [Timeline] Add zoom-to-fit button 2016-05-23 16:06:10 -07:00
0818a7cda0 [Timeline] Increase maximum zoom level
#936
2016-05-23 15:36:26 -07:00
f35947361c [Timeline] Remain centered during zoom
#936
2016-05-23 15:32:48 -07:00
9a8bcc0550 [Code Style] Specify lint, codestyle in CircleCI config
...to work around unexpected failure running test suite via gulp verify,
https://circleci.com/gh/nasa/openmct/1981
2016-05-23 15:10:05 -07:00
eff46b076c [New Edit Mode] #628 Removed duplicate logic from Create Action 2016-05-23 15:03:20 -07:00
ab64b682c3 [Code Style] Run checkstyle on CircleCI
Run the full gulp verify task for testing on CircleCI, to handle
unit tests as well as code style checks and linting (and other
verification steps that may be added in the future.)
2016-05-23 14:58:23 -07:00
1c007ea256 [Code Style] Remove trailing whitespace
...to fix build after changes for #142.
2016-05-23 14:55:04 -07:00
1ced47fc2c [Navigation] Prevent navigation to orphan objects
This is particularly useful when a persistence failure has caused
a created object not to be added to its parent container. #765
2016-05-23 14:07:09 -07:00
6c1412784b [Example] REMS heirarchy appear as links 2016-05-20 17:11:07 -07:00
6e7f4df5e3 [Mobile] Remove usage of element.scope()
Usage is unnecessary and is sensitive to initialization ordering of
representations, resulting in #948.
2016-05-20 16:13:51 -07:00
5b6ea600ba Merge pull request #930 from nasa/open633
[New Edit Mode] #633 Remove Editing workflow concerns from FixedController, LayoutController
2016-05-20 16:10:46 -07:00
fd9d766913 Defer resolution of scope in DropGesture 2016-05-20 15:15:18 -07:00
26839c7fd1 [Persistence] Fix code style after merge 2016-05-20 14:27:53 -07:00
264896c264 Merge branch 'master' into persist-on-mutation-825
Conflicts:
	platform/commonUI/edit/src/actions/RemoveAction.js
	platform/commonUI/edit/test/actions/EditAndComposeActionSpec.js
	platform/commonUI/edit/test/actions/RemoveActionSpec.js
	platform/entanglement/src/services/LinkService.js
	platform/features/timeline/src/controllers/drag/TimelineDragHandler.js
	platform/features/timeline/src/controllers/swimlane/TimelineSwimlaneDecorator.js
	platform/features/timeline/test/controllers/drag/TimelineDragHandlerSpec.js
	platform/features/timeline/test/controllers/swimlane/TimelineSwimlaneDropHandlerSpec.js
2016-05-20 14:26:39 -07:00
b6502e9ea1 [New Edit Mode] #633 Removed Editing workflow concerns from FixedController, LayoutController 2016-05-20 14:12:24 -07:00
25a2321578 Merge pull request #927 from nasa/jscs-rebase-142
[Code Style] Enforce code style
2016-05-20 14:03:27 -07:00
6fb36374f6 Merge pull request #942 from nasa/persist-graph-toggles-908
[Timeline] Persist resource graph toggles
2016-05-20 13:27:41 -07:00
9861e63589 [Code Style] Run fixstyle on merged changes 2016-05-20 13:09:16 -07:00
bce5643994 Merge branch 'master' into jscs-rebase-142
Conflicts:
	platform/commonUI/edit/test/actions/EditAndComposeActionSpec.js
	platform/representation/src/MCTRepresentation.js
2016-05-20 13:07:58 -07:00
ad5691142e [Code Style] Rename shadowing variables 2016-05-20 13:05:32 -07:00
e468080373 [Code Style] Disallow outer shadowing
031a46aa8e (commitcomment-17561082)
2016-05-20 11:38:36 -07:00
e3208187bf Merge branch 'master' into persist-on-mutation-825
Conflicts:
	platform/commonUI/edit/test/actions/EditAndComposeActionSpec.js
2016-05-20 10:59:54 -07:00
c98c36753c Merge pull request #944 from nasa/open943
[Build] Ignore gh-pages from circle-ci
2016-05-20 10:54:01 -07:00
1419ff86e8 Merge pull request #946 from nasa/open636
[New Edit Mode] #636 Removed edit concerns from DropGesture
2016-05-20 10:52:11 -07:00
601bc03ba2 [New Edit Mode] #636 Modified EditAndCompose action to rely on a slightly refactored EditActionPolicy to remove folder specific logic 2016-05-20 10:42:17 -07:00
ea454d65bb Merge pull request #945 from nasa/open634
[New Edit Mode] #634 Removed edit concerns from MctRepresentation
2016-05-20 10:06:50 -07:00
776586ae25 [New Edit Mode] #634 Removed edit concerns from MctRepresentation 2016-05-19 17:09:56 -07:00
78bf804e02 [Build] Ignore gh-pages from circle-ci 2016-05-19 15:31:16 -07:00
2a4004fd5b [Timeline] Test mct-representation ordering
Verify that a configuration object has been added to scope before
changing templates. #908
2016-05-19 15:09:57 -07:00
b5229d7786 [Timeline] Commit changes on toggle
#908
2016-05-19 15:06:06 -07:00
20ecf168f2 [Timeline] Change ordering in mct-representation
...such that the configuration property is available in scope
when a view is first instantiated. #908
2016-05-19 15:00:12 -07:00
dc348f33c5 Merge pull request #940 from nasa/openmct-website
[Website] Fixed failed circle.yml command
2016-05-19 14:18:55 -07:00
b7cfaf6b63 Fixed failed circle.yml command 2016-05-19 13:52:58 -07:00
bcf85db9c4 [Persistence] Delegate new 'persisted' method 2016-05-19 13:31:27 -07:00
34d5bc4f28 Merge pull request #939 from nasa/openmct-website
[Website] #901 Automate build process
2016-05-19 13:24:22 -07:00
f1e81c359e [Persistence] Satisfy JSHint 2016-05-19 12:17:20 -07:00
e4b192001f Changed circle.yml to go back to command-based deployment to heroku as cannot use 'heroku' deployment support and commands in the same deployment descriptor 2016-05-19 12:14:42 -07:00
8279acc9a5 [Persistence] Don't expect persist calls in PropertiesAction spec 2016-05-19 12:04:08 -07:00
63438ad9ba [Persistence] Don't expect persist calls in LinkAction spec 2016-05-19 12:02:42 -07:00
467f4d2257 [Persistence] Don't expect persist calls in RemoveAction spec 2016-05-19 12:00:51 -07:00
a5aaa6f103 [Persistence] Don't expect persist calls in LocationCapability spec 2016-05-19 11:55:05 -07:00
9b273bc148 [Persistence] Don't expect persist calls in EditRepresenter spec 2016-05-19 11:52:58 -07:00
0aba9122a1 [Persistence] Don't expect persist calls in LinkService spec 2016-05-19 11:51:50 -07:00
ac3706dfb6 [Persistence] Don't expect persist calls in specs 2016-05-19 11:50:12 -07:00
3905171457 [Persistence] Don't expect persist calls in spec 2016-05-19 11:48:16 -07:00
1e03f22086 [Persistence] Don't expect persist calls in spec 2016-05-19 11:46:50 -07:00
360fdeaec8 [Persistence] Don't expect persist calls in spec 2016-05-19 11:44:26 -07:00
d5914dfde9 [Persistence] Remove caching of persistence capability
...as this no longer needs to be invoked directly.
2016-05-19 11:42:58 -07:00
d3f2a24267 Merge branch 'master' into persist-on-mutation-825
Conflicts:
	platform/core/src/capabilities/PersistenceCapability.js
	platform/features/timeline/src/controllers/swimlane/TimelineSwimlaneDropHandler.js
2016-05-19 11:41:08 -07:00
516b8c9e38 [Website] #901 Automate build process - Updated build SHA 2016-05-19 11:39:08 -07:00
f9631ff4c5 [Code Style] Fix style missed by gulp fixstyle
...and remove an unnecessary comment, too.
2016-05-19 11:29:41 -07:00
fa77139077 [Code Style] Run gulp fixstyle
...to apply code style settings from #142.
2016-05-19 11:29:13 -07:00
f12b9704d9 Merge branch 'master' into jscs-rebase-142 2016-05-19 11:28:16 -07:00
edb158f2d3 [Website] Added push to website repo 2016-05-19 10:44:58 -07:00
b2c6db6207 Changed circleci.yml 2016-05-19 10:44:58 -07:00
bcdd835275 [Website] Automate site build process 2016-05-19 10:44:57 -07:00
5b4952d4c6 Merge pull request #923 from nasa/open921
[Examples] #921 changed text in event generator example
2016-05-18 17:12:06 -07:00
de43aa81be Merge pull request #838 from nasa/open824_rebase
[Edit] #824 - Remove EditableDomainObject
2016-05-18 17:01:24 -07:00
5eff4e45c9 [Tutorials] #907 Updated tutorials to use new bundle registration mechanism 2016-05-17 17:24:32 -07:00
70a13a75d5 Updating tutorials 2016-05-17 13:22:15 -07:00
dcf26d3863 Merge pull request #937 from nasa/open929
R&I open929: Label context arrow always visible; frame dragging in label area
2016-05-16 16:10:33 -07:00
a729edd399 [Frontend] Label context arrows now always visible
open #929
- Also enable frame dragging in title area when
editing in Layout;
- CSS and markup changes;
2016-05-16 12:00:29 -07:00
69cc1086df Merge pull request #924 from nasa/open889b
[Popup] Add method to jqlite mocks
2016-05-16 10:14:52 -07:00
18fa9aeaf6 [Build] Bump version number, add -SNAPSHOT
...to begin sprint Huxley,
https://github.com/nasa/openmct/milestones/Huxley
2016-05-16 09:36:59 -07:00
96892722a4 [Build] Remove SNAPSHOT status
...to close sprint https://github.com/nasa/openmct/milestones/Herbert
2016-05-16 09:27:24 -07:00
54a0de4a08 [New Edit Mode] #636 Removed edit concerns from DropGesture 2016-05-13 17:59:43 -07:00
a11dba88b2 [New Edit Mode] #634 Removed edit concerns from MctRepresentation 2016-05-12 20:23:33 -07:00
d08cdfba49 Fixed linting issues 2016-05-12 16:50:19 -07:00
031a46aa8e [Code Style] Add JSHint rules
Add JSHint rules to complement allowing multiple var statements,
https://github.com/nasa/openmct/issues/142#issuecomment-212187972

[Code Style] Require one decl per var

[Code Style] Don't require separate var decls

...but allow them (for compatibility with existing code style)

[Code Style] Allow var decl after start of scope

[Code Style] Enforce codestyle during verify task
2016-05-12 16:32:17 -07:00
ffacf6e1ae Resolved residual merge issue 2016-05-12 16:18:48 -07:00
69c4c3a2c8 Added tests 2016-05-12 16:14:42 -07:00
c305fba0a7 Modified dirty function 2016-05-12 16:14:42 -07:00
44f4a82fa1 Resolved merge conflicts 2016-05-12 16:14:31 -07:00
5bf750c90c Fixed creation 2016-05-12 16:11:57 -07:00
836b5db8cf Reviewed edit mode checking 2016-05-12 16:11:57 -07:00
1753a5473c Resolved merge conflicts 2016-05-12 16:11:52 -07:00
d00e13e4ee Resolved merge conflicts 2016-05-12 16:09:53 -07:00
4b786d3536 Removed sysouts 2016-05-12 16:09:08 -07:00
e6bbc3442b Resolved merge conflicts 2016-05-12 16:09:02 -07:00
433dd87e51 Resolved merge conflicts 2016-05-12 16:07:39 -07:00
cf9eb3f602 Resolved Merge conflicts, removed previously deleted files 2016-05-12 16:05:27 -07:00
bd686790dc Resolved merge conflicts 2016-05-12 16:03:19 -07:00
e5ef7c0c22 Resovled merge conflicts 2016-05-12 15:58:17 -07:00
3d891073da [Popup] Add method to jqlite mocks
...to resolve build failure preventing merge,
https://github.com/nasa/openmct/pull/922#issuecomment-218588876
2016-05-11 14:25:23 -07:00
116c6e57ed Merge pull request #918 from nasa/rt-updates-910
[Table] Remove length check when updating visible rows
2016-05-11 14:07:27 -07:00
a39ce566d1 Merge pull request #920 from nasa/open909
Review and integrate open909: fix for Timeline Resource Graph labels
2016-05-11 13:38:45 -07:00
671ba66354 [Examples] #921 changed text in event generator example 2016-05-11 12:35:44 -07:00
a5ba72582c [Examples] #921 changed text in event generator example 2016-05-11 12:24:24 -07:00
73c2c01def [Frontend] Layout and styling of Time Conductor
open #889
open #298
Fixes for mobile;
Moved popup z-index def into sass;
Datetime picker compressed for
better fit in mobile phone;
Removed hours selector from datetime
picker to enable better fit in mobile;
2016-05-11 11:32:39 -07:00
7c82e31b66 Merge branch 'master' into open889 2016-05-10 23:09:59 -07:00
a58fe1f81c [Frontend] Modified .tick-labels in Timelines
open #909
- Changed markup to not use plot .tick-label class;
- Changed CSS accordingly;
- Fixed alignment (clipped bottom value) by
refactoring to use flex-box layout for tick labels;
2016-05-10 20:41:52 -07:00
2829b8d495 [Frontend] Time Conductor mobile
open #889
- Major refactoring of mobile approach,
leveraging flex-box layout change;
2016-05-10 19:52:11 -07:00
3727b287a1 Merge pull request #902 from nasa/open898
[documentation] #898 updated stylesheet reference
2016-05-10 18:27:09 -07:00
677b65d124 Optional indent removed
removed whitespace
2016-05-11 00:39:16 +02:00
c448753bab [Table] Remove length check when updating visible rows
While the number of visible rows may not have changed, their
contents may have; returning early here results in #910.
2016-05-10 15:20:22 -07:00
31d31d7819 Removed indents
Removed unnecessary indentations
2016-05-11 00:14:52 +02:00
7ade873365 [Frontend] Flex; Tweaks to slider knobs
open #889
- Converted TC elements to use flex
layout instead of abs pos;
- Knob size increased;
- Knob grippies added;
2016-05-10 15:12:50 -07:00
8788523c25 [Frontend] Tweaks to slider knobs
open #889
- Knob size increased;
- Knob grippies added;
2016-05-10 14:28:23 -07:00
d32ef4bc3d Last indentation fix 2016-05-10 22:03:07 +02:00
b4faf8991d Indentation Fixes 2016-05-10 22:02:19 +02:00
0564759481 Swapped order of license
Swaped license order with name
2016-05-10 21:48:24 +02:00
24e391edf7 [Branding] Added Apache license to README.md
Added Apache license
2016-05-10 21:44:10 +02:00
cf295105d4 [Functionality] Log app instance to the console
Added logging statement, so the user knows when the app is up and running.
2016-05-10 21:06:04 +02:00
c301523156 [Frontend] Layout and positioning fixes for TC controls
open #889
IN PROGRESS
- Smaller font used on range value;
- More space allocated to left and right
for slider range values;
- Style tweaks to slider look;
- Layout and style of datetime inputs
fixed;
- Input error colors fixed, moved to
theme constants;
2016-05-09 17:56:50 -07:00
46e1347dc8 Merge pull request #906 from nasa/use-heroku-integration
[Build] Use Circle's heroku integration for deploy
2016-05-09 10:53:28 -07:00
f5539ec678 [Build] Use Circle's heroku integration for deploy
Use circle's heroku integration to deploy to ensure that we deploy
a full clone of the repo and not a shallow clone, prevents build
failure in master branch.
2016-05-09 10:46:17 -07:00
2e8604e18d [Frontend] Layout and positioning fixes for TC controls
open #889
2016-05-09 10:38:18 -07:00
9ed28a4a37 Merge pull request #900 from nasa/open899
#899 updated circle.yml to deploy to live_demo and remove doc generation
2016-05-09 10:37:47 -07:00
3ca9d21bbd Merge remote-tracking branch 'origin/open663' 2016-05-09 10:33:39 -07:00
61683800cc [Style] Update style to reflect new jshint config
Update style to match new jshint config

https://github.com/nasa/openmct/issues/671
2016-05-09 10:33:26 -07:00
4c74391137 Merge remote-tracking branch 'origin/open836' 2016-05-09 10:25:25 -07:00
f3b265bdd5 Merge branch 'master' into open671 2016-05-09 10:19:24 -07:00
cae85f3e30 [Frontend] Mods to slider .range-value elems
open #889
- Text smaller, line breaks;
- Height adjustments
- Increased with of slider area;
2016-05-09 10:16:54 -07:00
bcd5f1ee24 add shortcut for see the app quickly 2016-05-09 03:05:21 +07:00
ab6ef22363 #898 updated stylesheet reference 2016-05-08 10:46:59 -07:00
09d1c2cd4b #899 updated circle.yml to deploy to live_demo and remove doc generation 2016-05-06 19:44:26 -07:00
d6aa31e4aa Merge pull request #893 from nasa/open885
#885 added command line option --directory -D to specify base directory
2016-05-06 10:19:44 -07:00
3efaa3b1cb Merge pull request #894 from nasa/open892
#892 Removed browser warning
2016-05-06 09:51:36 -07:00
2fe9698ea8 Merge pull request #891 from nasa/fix-clickaway-888
[General] remove dupe, debounce inputs
2016-05-06 09:49:13 -07:00
1cdeccc7a7 #885 added command line option --directory -D to specify base directory 2016-05-05 21:58:31 -07:00
00433f02bc #892 Removed browser warning 2016-05-05 21:45:18 -07:00
7fad4e9ea1 [General] remove dupe, debounce inputs
Remove duplicate ClickAwayController implementation that was obscuring actual
implementation.  Debounce clickaway action in case toggle is invoked in a
click handler.

Resolves https://github.com/nasa/openmct/issues/888
2016-05-05 18:25:37 -07:00
c6d326bbbc Merge pull request #879 from nasa/table-headers-809
[Table] Fix headers in firefox
2016-05-05 13:29:03 -07:00
d60bc08843 Merge pull request #878 from nasa/open-mct-not-web-816
[Branding] Change name to Open MCT in docs
2016-05-05 13:21:13 -07:00
3d62cba1b3 Merge pull request #859 from nasa/remove-examples-825
[Examples] Move examples out of main.js
2016-05-05 13:05:41 -07:00
1c6ef28b80 [Table] Fix headers in firefox
Don't use table-cell displays for cells, resolves issues with zero-sized
tbody causing thead to be 100% of table size.

Fixes https://github.com/nasa/openmct/issues/809
2016-05-04 11:13:12 -07:00
00706558f5 [Branding] Restore missing space 2016-05-04 10:42:46 -07:00
5279c842f5 [Branding] Change title of about dialog 2016-05-04 10:17:23 -07:00
431b836568 [Branding] Change name in docs hierarchy
...from Open MCT Web to plain-old Open MCT.
2016-05-04 10:13:09 -07:00
de2703ee48 [Branding] Remove Web from name at top-level
Per #816, change Open MCT Web to Open MCT in all top-level files.
2016-05-04 10:08:55 -07:00
01f290dc45 Merge pull request #873 from nasa/open871
Review and integrate open871
2016-05-03 14:20:56 -07:00
f85ac79b4a [Persistence] Remove persistence usage from TimelineSwimlaneDropHandler 2016-04-29 11:53:15 -07:00
bea9f22a0c [Persistence] Remove persistence usage from TimelineSwimlaneDecorator 2016-04-29 11:51:21 -07:00
3f330dccf1 [Persistence] Remove persistence usage from TimelineDragHandler 2016-04-29 11:50:02 -07:00
f7f934f0e8 [Persistence] Remove persistence usage from AbstractStartTimerAction 2016-04-29 11:40:06 -07:00
0e683acde1 [Persistence] Remove persistence usage from LinkService 2016-04-29 11:38:40 -07:00
dd6414daf0 [Persistence] Remove persistence usage from LocationCapability 2016-04-29 11:37:03 -07:00
8756b7213f [Persistence] Remove persistence usage from EditRepresenter 2016-04-29 11:35:00 -07:00
b0cbb5a2b4 [Persistence] Only auto-persist previously saved domain objects 2016-04-29 11:31:36 -07:00
ff36d9ee80 [Frontend] Removed bullets from ol, ul
open #869
- This should be cherry-picked into main
branches as well.
(cherry picked from commit 4c97413)
2016-04-29 10:54:28 -07:00
6418b0c634 [Persistence] Avoid redundant calls to persistenceService
Mutation now triggers persistence; this means that some legacy code
does or may issue redundant calls to persistence after mutating.
To avoid issuing redundant calls all the way down to the
persistenceService, bail out of persist calls early if there are
no unsaved changes to persist.
2016-04-26 16:58:10 -07:00
433d26e703 [Persistence] Remove persistence usage from Remove action 2016-04-26 16:53:12 -07:00
c99ffcb1f4 [Persistence] Remove persistence call from compose action 2016-04-26 16:50:15 -07:00
ef815cf060 [Persistence] Remove persistence reference
...from composition capability (as persistence is now triggered,
albeit indirectly.)
2016-04-26 16:46:30 -07:00
7fb7a5452f [Persistence] Remove persistence usage from Edit Properties 2016-04-26 16:43:52 -07:00
4b641f8723 [Persistence] Expose PersistingMutationListener from bundle 2016-04-26 16:39:49 -07:00
0d312def27 [Persistence] Add PersistingMutationListener
...to automatically trigger persistence after mutation.
#825
2016-04-26 16:37:44 -07:00
a13d0b7fab [Examples] Move examples out of main.js
...such that they are not compiled into the Open MCT that
is used as the basis for non-example applications.

Addresses #835
2016-04-26 15:52:09 -07:00
0390f46460 [Frontend] z-index added to .object-top-bar .left element
#836
2016-04-25 09:55:21 -07:00
9e5689f7dd Merge remote-tracking branch 'origin/revert-839-revert-822-open769' 2016-04-22 13:02:39 -07:00
0ccb696ee2 [Build] Bump version number, add -SNAPSHOT
...to begin sprint Herbert,
https://github.com/nasa/openmct/milestones/Herbert
2016-04-22 10:51:12 -07:00
d385e55e76 [Build] Remove snapshot suffix
Closes sprint Heinlein,
https://github.com/nasa/openmct/milestones/Heinlein
2016-04-22 10:46:07 -07:00
6bf1ef5bcc Revert "Revert "[Tables] Fix to correct sorting in realtime tables"" 2016-04-22 09:44:34 -07:00
abb511521b Merge pull request #837 from nasa/open794_fix
[Edit Mode] #794 Modified policy to show remove action in context for non-editable domain object types
2016-04-21 12:23:45 -07:00
11cfb6e1b8 [Edit] Elements pool filtering displays more consistent results 2016-04-21 10:42:50 -07:00
3a9b1ee901 Merge pull request #839 from nasa/revert-822-open769
Revert "[Tables] Fix to correct sorting in realtime tables"
2016-04-21 09:21:12 -07:00
8b390e7fb9 Revert "[Tables] Fix to correct sorting in realtime tables" 2016-04-20 19:31:54 -07:00
29bce69eea Merge pull request #822 from nasa/open769
[Tables] Fix to correct sorting in realtime tables
2016-04-20 19:30:04 -07:00
aac5a6d250 #769 - Removed empty code block and addressed some excessive guard code 2016-04-20 19:18:27 -07:00
06436c488a [Edit Mode] #794 Modified policy to show remove action in context for non-editable domain object types 2016-04-18 19:05:46 -07:00
f16a107105 [Timeline] Inject resources into CSV action 2016-04-15 08:51:22 -07:00
f683ca44a2 [Timeline] Read resource utilizations during CSV export 2016-04-15 08:45:42 -07:00
546cde56a8 [Timeline] Expose internal resource utilization
...to allow this to be exported for CSV, #751
2016-04-15 08:32:34 -07:00
8b7af43d6c Merge pull request #823 from nasa/version-process-725
[Documentation] Add Version Guide
2016-04-14 17:30:55 -07:00
abb47eed36 [Documentation] Remove superfluous space
ddc241c0d0 (r59808305)
2016-04-14 16:30:17 -07:00
027d86ef4b Merge pull request #828 from nasa/build-win-827
[Build] Fix build on Windows
2016-04-14 16:23:42 -07:00
6cb9619fbe Merge pull request #829 from nasa/open630
[Edit mode] Simplify SaveAction
2016-04-14 16:11:49 -07:00
8c3616da32 Addressed code review points 2016-04-14 16:04:15 -07:00
ffd5faf9a2 [Persistence] Remove obsolete caching decorator
#831
2016-04-14 10:15:40 -07:00
00bf05c929 Merge pull request #830 from nasa/time-conductor-ux
Time Conductor updates query on blur, mobile support
2016-04-14 10:04:17 -07:00
b682cf8340 [Style] Remove outdated comments 2016-04-13 17:41:24 -07:00
22a5122ab7 [Conductor] Style for Phone and Tablet
Specify styles for time conductor on phone an tablet to hide the slider and
utilize space better.

https://github.com/nasa/openmct/issues/318
2016-04-13 17:17:52 -07:00
7a7877d7c4 [Conductor] Add basic style for phone
Add styling for time conductor on mobile that removes slider and rearranges
inputs to utilize space more effectively.

https://github.com/nasa/openmct/issues/318
2016-04-13 16:17:17 -07:00
69c059c943 [Conductor] Update inner bound on blur
The time conductor updates the inner and outer bounds when the input is
blurred, which results in the query updating without dragging.

Also allows time conductor to be utilized on mobile devices by entering
dates directly.

https://github.com/nasa/openmct/issues/318

User request:
https://github.jpl.nasa.gov/MissionControl/vista/issues/175
2016-04-13 13:49:23 -07:00
6d58f23c0c [Style] Switch to prototype
Switch TimeRangeController to prototype style, and update tests
and template to utilize new style.
2016-04-13 13:23:33 -07:00
26e368f52d [Edit mode] Simplify SaveAction 2016-04-12 14:40:19 -07:00
1d78af8f1d [Build] Fix build on Windows
* In the prepublish step, run bower and gulp via node, instead of
  relying on shebang interpretation. (Forward-slash path separators
  appear to get normalized by node itself before executing the scripts.)
* In the gulp build, replace hard-coded *nix-style separators with
  path.sep; this allows stylesheets to be output to expected locations
  when building on Windows.

Addresses #827.
2016-04-12 13:02:48 -07:00
d48871f204 Merge pull request #783 from nasa/open635
[Edit Mode] #635 Removed Edit-related concerns from ContextMenuGesture
2016-04-12 09:40:14 -07:00
519a9333ab Updated tests 2016-04-11 17:10:35 -07:00
2fe7ba982f Added 'Open in New Tab' to context menu in edit mode 2016-04-11 17:06:37 -07:00
7f108c3b24 [Edit Mode] #635 Removed Edit-related concerns from ContextMenuGesture 2016-04-11 15:39:35 -07:00
6322964dec Addressed comments from code review of #822 2016-04-11 14:30:21 -07:00
1bb6e17829 Minor code change to improve clarity 2016-04-11 13:37:31 -07:00
f34e8ba61b Modified code to call resize on every row add. Removed optimization to only resize when needed, because in fact resuze is necessary on every update in order to set vertical scroll size 2016-04-11 13:09:02 -07:00
2fb9b65652 Made comment a little more accurate 2016-04-11 12:57:27 -07:00
0c6b4a5a23 [Tables] Fix to correct sorting in realtime tables 2016-04-11 12:57:27 -07:00
20672ad028 [Tables] #801 Documented MctTable directive 2016-04-11 12:55:56 -07:00
99ba9edb95 Merged
Resolved merge conflicts

Resolved merge conflicts
2016-04-11 12:55:53 -07:00
23a8c305c1 [Table] #798 Simplified markup, moved styles to external stylesheet 2016-04-11 12:23:36 -07:00
934eb13813 [Build] Remove obsolete jslint tags
ES5 mode is enabled by default in JSHint, tags no longer necessary per
https://github.com/nasa/openmct/pull/724#discussion_r55095722
2016-04-08 16:54:01 -07:00
a224711dce [Build] Move JSHint config to .jshintrc
...to allow code editors etc to pick up on rules, per
https://github.com/nasa/openmct/pull/724#issuecomment-193542314
2016-04-08 16:37:37 -07:00
c1ae68b565 [Build] Change unused to vars
To allow placeholder arguments in method signatures, per
https://github.com/nasa/openmct/pull/724#issuecomment-193542314
2016-04-08 16:32:17 -07:00
9351285182 [Build] Remove obsolete argument from spec
...to reflect changes associated with JSHint configuration,
https://github.com/nasa/openmct/pull/724#issuecomment-193542314
2016-04-08 16:31:01 -07:00
aa45e53440 [Build] Revert setTimeout changes
Restore usage of setTimeout (instead of the Angular-wrapped version) per
https://github.com/nasa/openmct/pull/724#issuecomment-193542314
2016-04-08 16:29:49 -07:00
f6a9c90cef [Build] Use native bind
...in CouchPersistenceProvider and ElasticPersistenceProvider, per
https://github.com/nasa/openmct/pull/724#issuecomment-193542314
2016-04-08 16:25:32 -07:00
0b11ddbcfd [Build] Satisfy JSHint
Restore globals lost during removal due to merge, remove unused
variables and use threequals in new scripts.
2016-04-08 16:22:40 -07:00
5088453712 [Build] Remove use strict, global
Remove usages of use strict and global declarations that are
no longer necessary with JSHint configuration, from files
added/changed since #724
2016-04-08 16:11:12 -07:00
5e44bfc6c7 Merge branch 'master' into open671
Conflicts:
	main.js
	platform/commonUI/edit/src/policies/EditableMovePolicy.js
	platform/commonUI/general/src/directives/MCTTree.js
	platform/commonUI/general/src/ui/ToggleView.js
	platform/core/src/actions/ActionCapability.js
	platform/core/test/models/CachingModelDecoratorSpec.js
	platform/core/test/services/InstantiateSpec.js
	platform/features/events/bundle.js
	platform/features/events/src/DomainColumn.js
	platform/features/events/src/EventListController.js
	platform/features/events/src/EventListPopulator.js
	platform/features/events/src/RangeColumn.js
	platform/features/events/src/directives/MCTDataTable.js
	platform/features/events/src/policies/MessagesViewPolicy.js
	platform/features/events/test/DomainColumnSpec.js
	platform/features/events/test/EventListControllerSpec.js
	platform/features/events/test/EventListPopulatorSpec.js
	platform/features/events/test/RangeColumnSpec.js
	platform/features/events/test/policies/MessagesViewPolicySpec.js
	platform/features/rtevents/bundle.js
	platform/features/rtevents/src/DomainColumn.js
	platform/features/rtevents/src/RTEventListController.js
	platform/features/rtevents/src/RangeColumn.js
	platform/features/rtevents/src/directives/MCTRTDataTable.js
	platform/features/rtevents/src/policies/RTMessagesViewPolicy.js
	platform/features/rtevents/test/DomainColumnSpec.js
	platform/features/rtevents/test/RTEventListControllerSpec.js
	platform/features/rtevents/test/RangeColumnSpec.js
	platform/features/rtevents/test/policies/RTMessagesViewPolicySpec.js
	platform/features/rtscrolling/bundle.js
	platform/features/rtscrolling/src/DomainColumn.js
	platform/features/rtscrolling/src/NameColumn.js
	platform/features/rtscrolling/src/RTScrollingListController.js
	platform/features/rtscrolling/src/RangeColumn.js
	platform/features/scrolling/src/DomainColumn.js
	platform/features/scrolling/src/RangeColumn.js
	platform/features/scrolling/src/ScrollingListController.js
	platform/features/scrolling/src/ScrollingListPopulator.js
	platform/features/scrolling/test/DomainColumnSpec.js
	platform/features/scrolling/test/RangeColumnSpec.js
	platform/features/scrolling/test/ScrollingListControllerSpec.js
	platform/features/scrolling/test/ScrollingListPopulatorSpec.js
	platform/features/table/src/directives/MCTTable.js
	platform/features/table/test/controllers/TelemetryTableControllerSpec.js
	platform/representation/src/gestures/DropGesture.js
	platform/telemetry/src/TelemetryFormatter.js
	test-main.js
2016-04-08 16:08:19 -07:00
c591ade479 Merge remote-tracking branch 'origin/781' 2016-04-06 10:35:40 -07:00
8f4f0cb78e Merge pull request #785 from nasa/open677_cleanup
[Timelines] #677 Removed temporary markup
2016-04-05 12:24:58 -07:00
e87280aa15 Merge pull request #821 from nasa/show-selected-color
[Control] Color input shows selected color
2016-04-05 12:20:14 -07:00
e0a2d02d23 [Control] Color input shows selected color
Update color input to show selected color when expanded.
2016-04-05 11:57:45 -07:00
ddc241c0d0 [Documentation] Add Version Guide
Migrate relevant information from existing version guide;
add instructions for incrementing versions per #725
2016-04-05 11:55:15 -07:00
73012233b8 [Build] Bump version number
...to begin sprint Heinlein,
https://github.com/nasa/openmct/milestones/Heinlein
2016-04-04 09:33:58 -07:00
339916ccd4 [Build] Remove SNAPSHOT status
...to tag end of release Gibson,
https://github.com/nasa/openmct/milestones/Gibson
2016-04-04 09:32:21 -07:00
70acef6905 [Instantiation] Ensure new models have modified timestamp
...to avoid https://github.com/nasa/openmct/issues/745#issuecomment-204561163
2016-04-01 14:27:26 -07:00
da09ffd3fa [Persistence] Don't evict models on persist
https://github.com/nasa/openmct/issues/745#issuecomment-204559209
2016-04-01 13:38:13 -07:00
5b98da6681 Merge pull request #807 from nasa/timeline-model-717
[Timeline] Add default values to model
2016-04-01 10:10:15 -07:00
2040abb768 Merge pull request #808 from nasa/revert-open-793
Revert "Merge remote-tracking branch 'origin/open793'"
2016-03-31 16:37:18 -07:00
d35fccbbe8 Revert "Merge remote-tracking branch 'origin/open793'"
This reverts commit f49552779a, reversing
changes made to e068173f3e.
2016-03-31 16:30:35 -07:00
06c6832676 [Timeline] Add default values to model
Add default values to model, such that editing which occurs
before user supplies these properties does not cause errors
to occur. Directly addresses #717, indirectly addresses
remaining errant behavior associated with #790.
2016-03-31 15:46:56 -07:00
f49552779a Merge remote-tracking branch 'origin/open793' 2016-03-31 14:14:08 -07:00
200a426f17 [Tables] Addressed style concerns from code review 2016-03-31 12:56:29 -07:00
e068173f3e Merge remote-tracking branch 'origin/move-copy-policy-792' 2016-03-31 12:49:06 -07:00
4441e88769 Merge pull request #803 from nasa/drag-drop-688
[Firefox] Invoke preventDefault on drop
2016-03-31 11:02:26 -07:00
254a944d7a [Firefox] Invoke preventDefault on drop
...such that Firefox does not try to treat drop as a new URL
to navigate to. Addresses #688 and #527
2016-03-31 10:34:24 -07:00
0c00061cbc Added mutation listener 2016-03-31 10:26:34 -07:00
dee0613b81 Merge pull request #800 from nasa/timeline-reorder-789
[Timeline] Fix reordering behavior in timelines
2016-03-31 09:39:17 -07:00
6b6bada700 Merge pull request #788 from nasa/open445b
Review and integrate open445b
2016-03-31 09:36:03 -07:00
530b940a64 [Timeline] Fix reordering
Fix reordering behavior when dragging-and-dropping within timelines;
addresses #789.
2016-03-29 19:46:30 -07:00
e23bf5ed39 [Entanglement] Test CopyPolicy 2016-03-29 19:26:18 -07:00
6ecea9950d [Entanglement] Test MovePolicy 2016-03-29 19:22:22 -07:00
4816dddf41 [Entanglement] Wire in copy/move policies
#792
2016-03-29 13:14:08 -07:00
cae775f9bc [Entanglement] Add policies for Copy and Move
...to ensure that these are only performed on creatable and
mutable targets, respectively.
2016-03-29 13:10:35 -07:00
a4b79cdb5b [Tables] #793 Added fix for tables not appearing on refresh
Fixed failing tests
2016-03-28 17:48:01 -07:00
012a38cccd [Tables] Fix for table columns not being populated 2016-03-28 17:31:10 -07:00
a01f7ddd2d [Frontend] Refinements to .loading and related
#445
Markup enhanced in wait-node.html;
More wait-spinner constants added;
Normalized appearance between tree-based
.loading and .s-status-pending;
Fixed .s-status-pending to work now that
mct-representation is gone from tree;
2016-03-24 15:10:22 -07:00
e7e91e21fc [Frontend] Markup and CSS for loading tree items
#445
New wait-spinner constants;
Markup fixed in wait-node.html;
Styles for .loading when applied to
.tree-item.wait-node;
Changed from percent-of-parent-
width sizing of spinner to fixed size;
2016-03-24 15:10:02 -07:00
cbea842c8b Merge branch 'timeline-highlight-767' 2016-03-24 13:33:56 -07:00
cc5d14deec Merge branch '755a' 2016-03-24 13:21:59 -07:00
4c5217d646 [Style] Standardize indentation 2016-03-24 13:20:49 -07:00
5e54b193ca [Style] remove unnecessary parenthesis
See comment https://github.com/nasa/openmct/pull/782/files#r57380540
2016-03-24 13:14:53 -07:00
cd7ff8ad85 Merge remote-tracking branch 'origin/timestamps-776' 2016-03-24 13:09:32 -07:00
fa5d59bff8 Merge branch 'timeline-save-770b' 2016-03-24 13:06:53 -07:00
ddbb72b88a [CacheService] Don't track ids twice
Track whether an object is in the cache based on whether it is
in the cache instead of utilizing a separate object for tracking
contents of cache.

See comment on https://github.com/nasa/openmct/pull/773/files
2016-03-24 12:57:53 -07:00
88784d37fd [Frontend] Added priority
#787
2016-03-24 12:05:10 -07:00
700e605bbd Merge pull request #775 from nasa/timeline-drag-drop-679
[Timeline] Move (instead of link) when dragging and dropping within a timeline
2016-03-23 20:00:48 -07:00
594f3b8ec2 [Frontend] Corrected wrong unicode value
#781
2016-03-23 19:30:20 -07:00
b08d00ef3e [Frontend] Removed tab character
#781
2016-03-23 19:25:25 -07:00
0643fb1f3f [Frontend] Updated icomoon project file
#781
2016-03-23 19:17:39 -07:00
289debf19d [Frontend] Fixed hover problem with menu items
#781
#187
Noticed a problem with <a> tags in
Create menu items and fixed with display: block;
2016-03-23 19:10:59 -07:00
7da1a4b2a3 [Frontend] Updated glyph defs and descriptions
#781
#187
Converted many glyph char defs to
their JSON unicode equivalents;
Updated descriptions for many domain
objects;
2016-03-23 19:04:32 -07:00
528169de2c [Frontend] Updated glyphs
#781
Added multiple new and updated glyphs;
Updated glyph defs for Historic and
Real-Time Tables;
2016-03-23 17:42:58 -07:00
c13231b8e8 [Timeline] Remove NULL_ACTION, clarify logic
Per code review feedback,
https://github.com/nasa/openmct/pull/775/files#r57229759
2016-03-23 15:34:05 -07:00
3e4a3aeb9b Merge pull request #779 from nasa/precision-778b
[Data Formats] Format numeric values with full precision
2016-03-23 12:15:26 -07:00
650ef9bfa4 [Timelines] #677 Removed temporary markup 2016-03-23 11:27:40 -07:00
dd053f7e6e [Timeline] Invoke $apply from mct-swimlane-drop
...and add some checks to ensure this is necessary, to avoid
triggering a ton of digest cycles while dragging.
2016-03-22 17:16:41 -07:00
cb655d486b [Timeline] Test reordering within parent 2016-03-22 17:06:58 -07:00
3c52ceb71a [Timeline] Remove unused function
Removal of domain objects is handled by using the move action.
2016-03-22 17:01:45 -07:00
b2337dea97 [Timeline] Update failing specs
...and remove obsolete test case for handling drops in a timeline
2016-03-22 16:59:09 -07:00
dea6554e04 [Timeline] Allow drops from tree
Don't assume that all drops will be dropped swimlanes.
2016-03-22 12:26:01 -07:00
31d8c9a48f [Timeline] Allow linking during edit
...in cases where it is safe to do so (specifically, when the
linked-to object has already been persisted.)
2016-03-22 12:04:50 -07:00
f8682a7a29 Merge pull request #780 from nasa/open715
[Timelines] #715 Added a check to prevent mutation when modes are unchanged
2016-03-22 09:24:57 -07:00
e5544615cc [Timelines] #715 Added a check to prevent mutation when modes are unchanged 2016-03-21 17:01:38 -07:00
ec0cc572f6 [Add] Test model cache 2016-03-21 16:11:40 -07:00
6c2a28aba2 [Add] Add JSDoc to model cache 2016-03-21 16:05:05 -07:00
baccd005dc [Add] Update persistence capability spec
...to reflect removal of cached domain object models.
2016-03-21 15:08:27 -07:00
1e4ff5a73f [Add] Use cacheService from decorator spec 2016-03-21 15:05:28 -07:00
9f29382e18 [Add] Update spec for Instantiate
...to reflect usage of a model cache for #770
2016-03-21 15:04:07 -07:00
5f6b4adcda [Plot] Normalize number of digits
Use consistent number of digits for displayed plot values, to avoid
unreadable plot legends due to fix for #778
2016-03-21 14:45:00 -07:00
d6ab70447e [Data Format] Don't truncate data values 2016-03-21 14:35:58 -07:00
a411bac331 [Time Format] Append Z instead of zone offset
...for brevity (reduce visual noise)
2016-03-21 14:29:24 -07:00
5624c7d545 [Time Formats] Display UTC with milliseconds
#776
2016-03-21 13:04:59 -07:00
007741b4e7 [Timeline] Add move policy
...to restore suppression of Move for objects being edited
(relaxed for the specific case of moving one object being
edited into another object being edited, for use in Timelines.)
2016-03-21 12:07:19 -07:00
e0a69744e5 [Timeline] Deinline null action
...used for cases when no action is needed for timeline move
(and ids will just be reordered.)
2016-03-21 11:53:10 -07:00
e7a6c34bcc [Timeline] Handle drops for reordering
...as these would be disallowed by Move, normally.
2016-03-21 11:51:51 -07:00
7f3ac4077c [Timeline] Drop to correct targets 2016-03-21 11:43:02 -07:00
7eaffdc34a [Timeline] Don't suppress move during editing
...to allow this action to be used to support Timeline
drag-and-drop.
2016-03-21 11:42:33 -07:00
5034e88656 [Timeline] Use move action on drag-drop
...to avoid creating links when desired behavior is a move,
#679.
2016-03-21 11:18:18 -07:00
aa48044345 [Frontend] Form styling
#772
Added ".l-controls-under" styling to allow
channel-selector layout;
Added new hint color constants and refined
style defs;
2016-03-21 11:13:43 -07:00
d12111d9b8 [Add] Fix promise chaining in AddAction 2016-03-21 10:32:02 -07:00
9c9db3c24f [Add] Remove obsolete variable reference
The cache has been externalized to allow writing to it
upon domain object instantiation.
2016-03-21 10:31:38 -07:00
3fe41575bd [Add] Add missing dependency
...to support caching of domain objects created during edit mode.
2016-03-21 10:31:09 -07:00
8fa030437e [Add] Remove edit awareness
Remove step where Added objects are persisted via the editor
capability; instead, persist via the usual persistence capability,
such that Edit mode may intervene (or not) as necessary.
As instantiated models are cached at least until persisted,
this workaround to allow newly-created models to be available
during editing is no longer necessary (and undesired consequences
such as #770 no longer occur)
2016-03-21 10:22:25 -07:00
17faf000b0 [Add] Cache models on instantiation
...to remove need for Edit to persist these immediately, which in
turn causes #770 and #678
2016-03-21 10:20:14 -07:00
90c82f6ef2 [Frontend] Timeline tooltip and field input tweaks
#750
Refined tooltip for Resource Graphing;
Increased size of Activity Link input field;
2016-03-21 10:08:59 -07:00
5e6fe16b93 [Frontend] Adding tooltips
#750
2016-03-17 16:21:04 -07:00
f0ca6fdfdb [Frontend] Added tooltips
#750
Added tooltips to Timeline header elements;
2016-03-17 15:10:42 -07:00
ad4c456ca2 Merge pull request #763 from nasa/restrict-requirejs-version
[Package] Specify require minor version
2016-03-17 14:38:02 -07:00
b0476edb8c [Package] Specify require minor version
Specify requirejs minor version of 2.1, as 2.2 is not compatible
with karma-requirejs.

Fixes build problems that appeared after latest requirejs version bump.
2016-03-17 14:28:22 -07:00
8f6a287fb8 Merge remote-tracking branch 'origin/tree-refresh-745' 2016-03-17 11:40:53 -07:00
07d554d114 Merge pull request #759 from nasa/700a
Review and integrate 700a
2016-03-17 11:02:22 -07:00
24d2cecdcd Merge pull request #761 from nasa/open757
[Tables] #757 Added max row limit to streaming tables
2016-03-17 10:19:04 -07:00
8efa9c6aac [Tables] #757 Fixed code style issues 2016-03-17 10:09:59 -07:00
22e98274ca [Tables] #757 Added max row limit to streaming tables 2016-03-16 18:59:52 -07:00
471b57f47c [Frontend] CSS tweaks
#750
Moved l-plot-resource cursor: pointer
to a more specific selector;
Added user-select: none to l-header;
Fixed s-status-editing styling so
that tabular labels only appear draggable
while editing;
2016-03-16 18:19:44 -07:00
9c775c6715 [Frontend] Changed cursor property
#755
Changed s-timeline-gantt.mid to
use cursor: move instead of
ew-resize; Need to verify on Linux;
2016-03-16 17:36:07 -07:00
1f09b7b0ac [Frontend] Fix for scrollbar flicker
#748
Was able to observe problem in Mac
Chrome. Moved body, html overflow: hidden
into startup-base.scss and change seems
to have fixed the problem;
2016-03-16 17:34:28 -07:00
b0cf9bbd29 Merge pull request #758 from nasa/error-message-753
[Tree] Don't assume context capability is present
2016-03-16 15:33:59 -07:00
4a1ca25e17 Merge pull request #754 from nasa/tree-status-styling-749
[Tree] Add status classes during editing
2016-03-16 15:26:40 -07:00
cc97e567b6 [Frontend] Further style cleanups
#689
#740
Tweaked scrollbar thumb color;
Fixed color of icons in s-menu-btn
menus, particularly for Snow theme;
Removed commented code;
2016-03-16 15:17:08 -07:00
53f03cddb7 [Frontend] Further cleanups to form elements
#689
Removed commented code;
2016-03-16 14:49:37 -07:00
da1e6750a0 [Frontend] Removed reset.css and refs to modernizr
#700
Removed reset.css; Removed refs to
modernizr from licenses and readme.md;
2016-03-16 14:44:01 -07:00
3258342783 [Frontend] Further cleanups to form elements
#700
#689
#740
Removed _selects.scss and moved classes
into _controls.scss;
Reorg'd _controls;
Moved classes into _elems.scss;
Added and fixed cssclass defs in multiple
bundle.js files to allow better field widths
in overlay dialogs;
Fixed overlay custom scrollbar colors;
Fixed alignment of required glyphs in forms;
2016-03-16 14:40:06 -07:00
73b7365ae2 [Tree] Don't assume context capability is present
Addresses #753 (newly-created objects may not have context,
causing errors when these are encountered by TreeNodeView)
2016-03-16 14:10:58 -07:00
32a42bd679 [Frontend] CSS tweaks to fix required glyph positioning
#700
CSS modded to allow better cross-browser
positioning of 'required' form-row glyphs;
Other elem's CSS adjusted as a result;
2016-03-16 09:43:59 -07:00
324c2cac03 [Tree] Refresh properly on mutation
...by removing the incorrect expectation that a domain object
(and not just its model) will be passed in when mutation occurs.
Addresses #745.
2016-03-15 12:23:46 -07:00
42ac657105 [Tree] Add status classes during editing
Addresses #749
2016-03-15 12:16:58 -07:00
d30532a8bc Merge remote-tracking branch 'origin/open742' 2016-03-14 16:37:58 -07:00
936079da92 Merge remote-tracking branch 'origin/tree-732' 2016-03-14 16:15:05 -07:00
4e89ffbe07 Merge pull request #735 from nasa/open729
Review and integrate open729
2016-03-14 16:12:18 -07:00
f9ed73c55e [Table] #742 Fixed digest-related bug in RTTelemetryController
Fixed failing test
2016-03-14 16:00:36 -07:00
bf3b964ad2 Removed commented code
#729
#735
2016-03-14 15:45:10 -07:00
55ae755522 [Tree] Fix error in test case
Correctly expect both arguments to $watch
2016-03-14 15:04:58 -07:00
d522570c0b [Tree] Add spec for mct-tree 2016-03-14 14:54:57 -07:00
d72aaf54ca [Tree] Test inner tree creation 2016-03-14 14:40:46 -07:00
8f94751a35 [Tree] Add capabilities to child objects for testing 2016-03-14 14:14:34 -07:00
dfb0a570a3 Merge pull request #728 from nasa/warp135b
[Timelines] Export as CSV
2016-03-14 13:20:28 -07:00
5d06979866 Merge remote-tracking branch 'origin/open707' 2016-03-14 13:05:59 -07:00
8b51ae32d2 [Tree] Begin testing selection change 2016-03-14 13:04:46 -07:00
ecb37c54be [Tree] Add TreeView test cases 2016-03-14 12:52:33 -07:00
43492d31ba [Tree] Begin writing spec for TreeView 2016-03-14 12:22:09 -07:00
0e1df444df [Tree] Update test configuration
...to account for new dependency on Zepto (and its necessary
shim.)
2016-03-14 12:21:58 -07:00
f2c040367b [Timeline] Rename TimelineCSVExporter
...to TimelineColumnizer, clarifying its role/responsibilities in the
context of the CSV export task;
https://github.com/nasa/openmctweb/pull/728#discussion_r56031331
2016-03-14 12:00:31 -07:00
0ff360ced3 [Timelines] Remove excessive ternaries
...to improve readability of logic to determine which columns
are needed for a given group of domain objects for CSV export,
as requested during code review,
https://github.com/nasa/openmctweb/pull/728#discussion_r55910477
2016-03-14 11:53:28 -07:00
fc08df4f6f [Tables] #733 Made code style changes for conformance with style guide 2016-03-14 11:25:26 -07:00
c5de90a951 [Tables] Changed the way that new rows are added to table
Fixed failing tests
2016-03-13 20:15:47 -07:00
ea0b86fe72 [Tables] Fixed issue with historical tables composed of multiple objects 2016-03-13 19:12:55 -07:00
d789e91c18 [Tree] Add wait spinner 2016-03-11 18:00:58 -08:00
f7ba24c0b6 [Tree] Enable gestures on labels 2016-03-11 17:43:18 -08:00
02ec6db104 [Tree] Trigger digest on tree selection change 2016-03-11 17:37:11 -08:00
a3a9393d1b [Tree] Change selection on click 2016-03-11 17:32:57 -08:00
217e697079 [Tree] Display selection state 2016-03-11 17:26:00 -08:00
82b6166408 [Tree] Begin wiring in selection 2016-03-11 17:09:17 -08:00
03ab3bddc4 [Tree] Begin handling selection state 2016-03-11 17:00:55 -08:00
abd5913f02 Merge pull request #727 from nasa/open377
[Search] Index directly on mutation
2016-03-11 15:39:43 -08:00
107ecfe687 [Search] Don't index objects being edited
https://github.com/nasa/openmctweb/pull/727#issuecomment-195570183
2016-03-11 14:55:16 -08:00
4a8222a152 [Tree] Update labels on mutation 2016-03-11 14:47:50 -08:00
7ee8d0a3f7 [Tree] Display tree correctly 2016-03-11 14:40:04 -08:00
dc2b3e85cc [Tree] Show tree with toggle 2016-03-11 14:33:05 -08:00
d4b15525ca [Tree] Begin using mct-tree for tree representation 2016-03-11 14:23:08 -08:00
cbd9509260 [Tree] Use TreeView from mct-tree 2016-03-11 14:13:14 -08:00
c5ab6c6c97 [Tree] Implement label for tree 2016-03-11 14:10:30 -08:00
cd84a017b8 Merge pull request #723 from nasa/open672
[Build] Enforce code coverage threshold
2016-03-11 13:34:26 -08:00
d39dea971f Merge pull request #721 from nasa/open716
[Info Bubble] Fix bug with arrow positioning
2016-03-11 13:13:49 -08:00
4f293f22a6 [Tree] Add Zepto dependency
...to support implementation of a jQuery-less tree.
2016-03-11 12:38:40 -08:00
cebf9f73da [Tree] Begin adding tree label 2016-03-11 12:29:24 -08:00
37e6b5a352 [Tree] Continue breaking apart tree view 2016-03-11 11:39:10 -08:00
ece8f7fded [Tree] Begin separating out TreeView 2016-03-11 11:12:43 -08:00
3b0a3733b4 [Tree] Begin adding controller for refactored tree 2016-03-11 10:23:06 -08:00
baab0be5af [Tree] Begin adding mct-tree directive
...to reduce watch counts associated with the tree;
#732 and #315
2016-03-11 10:04:33 -08:00
d14a2a6366 Merge pull request #736 from nasa/open718
Review and integrate open718
2016-03-11 09:52:18 -08:00
377d533ec7 [Frontend] Fixed markup
open #718
Removed class from markup;
2016-03-10 18:11:10 -08:00
a4c5854561 [Frontend] Bug fixing
open #729
open #498
Fixed markup to use proper CSS classes
to allow tree items in Inspector Elements to
ellipsize properly, and to apply scroll regions
to the proper elements;
2016-03-10 14:33:01 -08:00
5296255fa6 [Representation] Test for false-positives on refresh
#732
2016-03-10 14:26:20 -08:00
5d084c2618 [Representation] Fix unchanged check
Fix logic in unchanged check; compare booleans to detect if
they have changed, instead of just anding them. Partially
addresses #732
2016-03-10 14:21:20 -08:00
5208631528 [Tables] #707 removed redundant bundles 2016-03-10 13:55:59 -08:00
a56edb9ff4 [table] #707 Fixed sorting on insert for numbers
Added metadata to event generator
2016-03-10 13:39:16 -08:00
7da1a218ba [Tables] #707 Added auto-scroll, addressed race condition in Sinewave and event telemetry providers
Fixed issue with visible padding row

Incremental improvements

Added tests

Added tests for sorted insert, and fixed lint errors
2016-03-10 13:21:57 -08:00
a4eb9d6a94 [Tables] #707 Supporting realtime telemetry tables
Added real-time table type
2016-03-10 13:21:57 -08:00
20f1dcef45 Fixed scrolling 2016-03-10 13:21:01 -08:00
4983d35ca6 [Frontend] Cleanups to Inspector config elements
open #729
Spacing tweaks; set PlotOptionsForm.js > Autoscale
to not use control-first layout;
Checked in snow theme;
2016-03-10 13:18:57 -08:00
7171fd01e3 [Frontend] Cleanups to Inspector config elements
open #729
In-progress
Moved CSS def to be more globally applicable;
Simplified layout obj props location display;
2016-03-10 11:07:26 -08:00
0957fbc6f9 [Frontend] Cleanups to Inspector config elements
open #729
In-progress
Moved reduced-min-width into _inspector.scss;
Removed <style> defs in markup files;
2016-03-10 10:50:00 -08:00
bdbb045005 [Frontend] Cleanups to Inspector config elements
open #729
In-progress!
Markup and CSS mods continued;
Config params added to PlotOptionsForm.js to
allow control-first layout per form row;
Changed titles of Inspector parts;
2016-03-10 10:31:05 -08:00
318df9878d [Frontend] Cleanups to Inspector config elements
open #729
In-progress!
Markup and CSS modified to cleanup control layout
and styling in Plot and Table config options;
gulpfile.js modified to include SASS source line numbers
in rendered CSS;
2016-03-09 17:22:41 -08:00
406a31889e [Timeline] Add specs for remaining columns 2016-03-08 12:34:08 -08:00
9e4e3e9c43 [Timeline] Add JSDoc
Add JSDoc to classes implemented Export Timeline as CSV
2016-03-08 11:59:53 -08:00
bd7cb98a4c [Timeline] Add missing semicolon
...to pass code style checks
2016-03-08 11:40:54 -08:00
0d419fa5fd [Timeline] Test TimelineTraverser 2016-03-08 11:30:26 -08:00
5ee5e7fea1 [Timeline] Add capabilities to test inputs 2016-03-08 10:47:01 -08:00
66b1a92554 [Timeline] Add test cases for TimelineTraverser 2016-03-08 10:43:13 -08:00
c23c2b84bf [Timeline] Test inclusion of timespan properties
...in prepared data for CSV export
2016-03-08 10:31:31 -08:00
0c2285719e [Timeline] Test inclusion of metadata headers 2016-03-08 10:27:50 -08:00
fd92c5f970 [Timeline] Add more tests for rows 2016-03-08 10:22:46 -08:00
938c266b4e [Timeline] Add Id column to CSV export 2016-03-08 10:20:25 -08:00
9e6e33983b [Timeline] Add more objects to test case 2016-03-08 10:17:10 -08:00
40895ec1b9 [Timelines] Begin spec for exporter 2016-03-08 10:07:21 -08:00
43db52fd70 [Timeline] Simplify interface
...such that responsibility for knowing exportService interface
is more localized.
2016-03-08 10:04:09 -08:00
75d6803c9f [Timeline] Test mode columns in CSV Export 2016-03-08 09:59:54 -08:00
ed679756b3 [Timelines] Test metadata columns in CSV Export
...and additionally refactor to run in a test environment
(don't use Array.prototype.find)
2016-03-08 09:56:21 -08:00
dd66cb60d8 [Timeline] Test export task 2016-03-08 09:47:09 -08:00
d5283d57e4 [Timeline] Add missing semicolon 2016-03-07 16:35:40 -08:00
7c140c06dc [Timeline] Test CSV Export action itself 2016-03-07 16:33:03 -08:00
f9ff9921a9 [Timelines] Continue testing CSV Export
...with initial test cases for the action itself.
2016-03-07 16:22:39 -08:00
cdac0ad67f [Timeline] Add test cases for CSV Export 2016-03-07 16:17:19 -08:00
5d771edcf7 [Timeline] Begin testing CSV Export 2016-03-07 16:13:23 -08:00
c4f1c4ad1f [Timeline] Show progress notification during export 2016-03-07 16:09:23 -08:00
14b8e02f27 [Timeline] Format exported start/end times 2016-03-07 16:02:33 -08:00
b383921f2a [Timeline] Export start/end to CSV 2016-03-07 16:00:13 -08:00
a509dfb840 [Timelines] Remove unused TaskService
https://developer.nasa.gov/mct/warp/issues/135
2016-03-07 15:30:57 -08:00
b7a44a7557 Merge branch 'master' into warp135b 2016-03-07 15:21:28 -08:00
2d305415b3 [Search] Index directly on mutation
Pass model directly when indexing is triggered via object mutation,
to avoid issuing an extra, unnecessary request to the server.

Additionally supports indexing of objects which have been created
but not yet persisted.

Addresses #377.
2016-03-07 14:46:36 -08:00
22be6bc860 [Build] Run lint task from CircleCI
https://github.com/nasa/openmctweb/pull/724#issuecomment-192487995
2016-03-04 16:16:35 -08:00
ff5f37dfbe [Build] Bump version number
...and add SNAPSHOT status, to begin sprint Gibson.
https://github.com/nasa/openmctweb/milestones/Gibson
2016-03-04 13:59:41 -08:00
7c2ddf3926 [Build] Remove snapshot status
...to close sprint Ellison,
https://github.com/nasa/openmctweb/milestones/Ellison
2016-03-04 13:48:31 -08:00
134452582c [Build] Remove/qualify for-in usages 2016-03-04 13:10:23 -08:00
fb56b3ad56 [Build] Enable forin check for JSHint 2016-03-04 13:04:06 -08:00
8b5a425da6 [Build] Restore erroneously-removed variable 2016-03-04 13:03:41 -08:00
d6ec7e9ab8 [Build] Remove unused variables from specs
...to satisfy JSHint.
2016-03-04 12:56:14 -08:00
e470451718 [Build] Declare undefined variables
...to satisfy JSLint for specs.
2016-03-04 12:30:23 -08:00
5920533637 [Build] Don't appear to use new for side effects 2016-03-04 12:23:53 -08:00
7eb7027b67 [Build] Specify browser environment
...such that various browser globals do not need to be individually
declared.
2016-03-04 12:05:00 -08:00
c7f199a59e [Build] Also lint specs
...with additional tolerance declared for Jasmine variables.
2016-03-04 12:01:11 -08:00
43176cfbb8 [Build] Move lint config to gulpfile 2016-03-04 11:56:31 -08:00
f34ef8c4c8 [Build] Add global declarations to mocks 2016-03-04 11:53:08 -08:00
1cdbc11894 [Build] Clarify spec paths 2016-03-04 11:52:46 -08:00
2be6b3f051 [Build] Fix GenericSearchProvider spec
...by delegating  to window.setTimeout, such
that spec as-written behaves correctly.
2016-03-04 11:48:20 -08:00
4f85616632 [Build] Fix FullscreenAction spec
...to reflect acquisition of screenfull dependency via
AMD
2016-03-04 11:46:15 -08:00
65095d18f2 [Build] Remove partial global declarations 2016-03-04 11:43:55 -08:00
a1a7b2b8ce [Build] Remove unused variables
...to satisfy JSHint
2016-03-04 11:41:48 -08:00
bf232d0593 [Build] Ignore apparent strict violation
...in CustomRegistrars.
2016-03-04 11:24:14 -08:00
19c9fcd369 [Build] Remove apparent strict violations
...from persistence providers.
2016-03-04 11:18:25 -08:00
9526207af8 [Build] Replace setTimeout with
To avoid need to declare global usage to satisfy JSHint
2016-03-04 11:13:34 -08:00
6aeb156a58 [Build] Declare global self in worker 2016-03-04 11:09:41 -08:00
f380e43219 [Build] Inject window to satisfy JSHint 2016-03-04 11:08:20 -08:00
6289fe333b [Build] Declare screenfull
...and shim such that it can be acquired in the normal AMD way.
Avoids use of global variable to satisfy JSHint.
2016-03-04 11:05:08 -08:00
c00d77dcb1 [Build] Relocate operators
...in multi-line expressions, to satisfy JSHint.
2016-03-04 11:02:57 -08:00
56a91dfbaf [Build] Use not-threequals operator
...to satisfy JSHint
2016-03-04 10:58:23 -08:00
f6898d16c9 [Build] Remove obsolete argument
...which incidentally triggers JSHint errors
2016-03-04 10:56:51 -08:00
72ef134750 [Build] Move operators to satisfy JSHint 2016-03-04 10:55:30 -08:00
a8f7bc01c3 [Build] Redeclare globals 2016-03-04 10:53:12 -08:00
2dabe0d3c4 [Build] Add curly braces around if block
...to satisfy JSHint
2016-03-04 10:51:08 -08:00
dda0628621 [Build] Clarify expressions
...to satisfy JSHint.
2016-03-04 10:49:22 -08:00
91bf98b38d [Build] Add Float32Array to predefs 2016-03-04 10:46:51 -08:00
ac5ac8d34e [Build] Remove boilerplate from scripts
No longer necessary after JSHint configuration.
2016-03-04 10:46:38 -08:00
9f840aa0fd [Build] Tweak migration script 2016-03-04 10:43:42 -08:00
377786caf9 [Build] Fix lint exclusions 2016-03-04 10:36:28 -08:00
bc8aafbb1f [Build] Define more common globals 2016-03-04 10:36:10 -08:00
02b806ebe0 [Build] Remove main.js boilerplate
...to satisfy JSHint
2016-03-04 10:27:59 -08:00
f092bfe653 [Build] Don't lint specs 2016-03-04 10:27:34 -08:00
28ae62b4ac [Build] Add script for JSHint migration
To remove boilerplate which JSHint neither expects nor like.
2016-03-04 10:21:12 -08:00
91fb82d212 [Build] Remove esversion: 5 from lint cfg
...as this is apparently presumed.
2016-03-04 10:14:37 -08:00
4a609943f9 [Build] Configure JSHint
#671
2016-03-04 10:11:17 -08:00
18167eddf8 [Build] Enforce code coverage threshold
Addresses #672
2016-03-03 17:14:04 -08:00
f302bd6cb2 [Info Bubble] Test arrow class application
#716
2016-03-03 16:17:01 -08:00
071a908c10 [Info Bubble] Don't clobber arrow classes
#716
2016-03-03 15:58:28 -08:00
7e60593501 Merge remote-tracking branch 'origin/open670' 2016-03-03 11:28:28 -08:00
f653362247 Fixed issue with non-named columns 2016-03-03 10:12:25 -08:00
b63b7b1e5d [Tables] #670 Addressed issues from code review 2016-03-03 09:26:12 -08:00
55e00baeaf [Table] #670 Addressed comments from code review 2016-03-02 21:40:56 -08:00
75178576dd Merge pull request #712 from nasa/open627_no_regions_master
[Edit Mode] #627 Remove edit-related concerns from Browse controllers
2016-03-02 12:12:11 -08:00
670c06103f [Edit Mode] Rebased over master 2016-03-02 11:45:15 -08:00
7b5218c5ba [Edit Mode] #627 Fixed failing tests
Removed reference to defunct NavigationServiceDecorator

Removed virtual panels from drop gesture
2016-03-02 11:12:41 -08:00
f192544be3 Addressing issues from code review 2016-03-02 11:10:49 -08:00
2cc2c6a9d3 [Edit Mode] #627 removed edit concerns from browse controllers and markup
Fixed elements not appearing in edit mode

Fixed failing tests
2016-03-02 11:05:23 -08:00
a910fa8f37 Removed unused 'controller as' 2016-03-02 11:01:34 -08:00
65ca78d8aa Added missing dependency on 2016-03-02 11:00:08 -08:00
2f036a89e4 Refactoring out regions 2016-03-02 11:00:08 -08:00
fa46d31ac2 [Edit Mode] #627 slightly modified edit representer to detect newly created objects
Added some comments, renamed controller variable in markup

Removed edit references from BrowseController
2016-03-02 10:57:05 -08:00
549dfab5aa [Edit Mode] #627 remove edit concerns from browse controller 2016-03-02 10:55:18 -08:00
494212a448 Merge pull request #653 from nasa/open499
[Notifications] #499 All notifications now dismissable by default.
2016-03-01 14:50:56 -08:00
8511dc93b5 Merge pull request #714 from nasa/ci-test-reporter
[Build] run JSHint on circleci, generate test reports
2016-03-01 13:47:24 -08:00
751414a686 [CI] Save coverage in artifacts
Save code coverage results in artifacts when building on circleci.
2016-03-01 13:37:52 -08:00
668b09b789 [Style] Pull functions out of loop
Pull functions out of loop for jshint compliance.
2016-03-01 13:25:37 -08:00
b9e0a77655 [CI] Run JSHINT after tests 2016-03-01 13:07:16 -08:00
b9a7ee423a Merge branch 'master' into open670_master 2016-03-01 12:56:08 -08:00
b5c6b70993 Merge branch 'master' into open670_master 2016-03-01 12:55:45 -08:00
d9b2034550 [Tests] Add jUnit reporter
Add jUnit reporter to allow CircleCI to store test results.
2016-03-01 12:53:32 -08:00
183bd9793c Merge branch 'open677' 2016-03-01 11:33:31 -08:00
d176797307 [Style] Add missing semicolon 2016-03-01 10:59:23 -08:00
96d9f8c194 [Templates] load plot templates with require
Load templates with requirejs.

https://github.com/nasa/openmctweb/issues/673
2016-03-01 10:52:07 -08:00
748673f99b Merge branch 'master' into open638_rebase 2016-03-01 10:48:53 -08:00
78374f8241 Merge branch 'open401' 2016-03-01 10:37:12 -08:00
bc6185f76d [Browse] Remove unused constant
https://github.com/nasa/openmctweb/issues/401
2016-03-01 10:36:30 -08:00
747a98d130 Addressed issues from code review 2016-02-29 18:42:48 -08:00
7daaecbf8f Merge pull request #710 from nasa/open673
[Templates] Load templates using RequireJS text plugin
2016-02-29 18:45:46 +00:00
6f9e78a14f Merge pull request #711 from nasa/open442a
[Frontend] Markup, CSS changes
2016-02-29 17:36:54 +00:00
beee4136a6 Merge pull request #702 from nasa/open164
Review and integrate open164
2016-02-26 16:49:26 -08:00
5a9bcfa938 [Frontend] Markup, CSS changes
#442
Removed white space from markup;
Moved getGlyphClass up to status-block-holder
element out of status-block;
CSS mods to selectors and style defs
in _messages.scss;
2016-02-26 16:48:23 -08:00
721557b814 [Templates] Exercise selection method
...add to TimelineSwimlanePopulator to reflect changes to
time at which selection object may become available as
a consequence to changes in the way templates are normally
loaded. #673
2016-02-26 16:29:06 -08:00
70ed16491a [Templates] Change watch order
...to work around order-sensitive test case
2016-02-26 16:26:31 -08:00
7240ff4f8d [Templates] Update mct-control spec
...to reflect usage of templateLinker, to support including
templates via RequireJS text plugin
2016-02-26 16:22:55 -08:00
3a6e0be2d7 [Templates] Update FixedController spec
...to reflect changes to how selection object is obtained,
which in turn reflects change to using templates obtained
via RequireJS text plugin, instead of loading by URL.
2016-02-26 16:19:14 -08:00
9b21b0b7f2 [Templates] Update mct-container spec
...to reflect change to template over templateUrl
2016-02-26 16:17:33 -08:00
164c2faf07 Merge branch 'master' into open673
Merge latest from master into topic branch for #673
2016-02-26 15:54:41 -08:00
894cf5c461 [Templates] Include templates in test configuration
...such that they are available to the RequireJS text plugin
for loading.
2016-02-26 15:53:35 -08:00
fe419714f5 [Templates] Check for availability of timespan
...as ordering changes due to change from templateUrl to template
may mean this is not available when first initialized.
2016-02-26 15:50:07 -08:00
f3fd2e67fc [Templates] Watch for selection object
...from Timeline, to ensure toolbar appears etc.
Reflects changes to ordering triggered by use of
template instead of templateUrl
2016-02-26 15:49:21 -08:00
931fa77cbe [Templates] Handle deferred selection availability
Loading templates via RequireJS text plugin means they are
immediately available; appears to have caused a change in
ordering wherein controllers for views may be initialized
before representers have installed things like selection
state. As such, need to watch for changes instead of simply
checking for a selection object when the controller is
initialized.
2016-02-26 15:37:19 -08:00
872c4021e3 Merge pull request #82 from tarikozket/patch-1
Fixed typo
2016-02-26 23:28:24 +00:00
26d29c3d92 Merge pull request #652 from nasa/open649
[CSV Export] Implement exportService
2016-02-26 23:18:12 +00:00
596735352a [Templates] Simplify MCTToolbar
Use mct-form as a basis; simply change the template.
2016-02-26 15:17:31 -08:00
402512a461 Merged from master to resolve conflict 2016-02-26 15:15:22 -08:00
2d03e3e6d4 [Templates] Remove unused template path calculation 2016-02-26 15:03:45 -08:00
19b442cc0b [Templates] Require data table templates
...via text plugin
2016-02-26 15:02:04 -08:00
5c3d8508a2 [Templates] Use templateLinker for forms
...for compatibility with both template and templateUrl
2016-02-26 15:01:40 -08:00
8581547a9c [Templates] Allow only template property for containers
...to work around difficulties with transclusion using
templateLinker.
2016-02-26 14:49:55 -08:00
192bbae6e5 [Frontend] Fix paths, includes
#702
Per https://github.com/nasa/openmctweb/pull/702;
Removed include of _logo-and-bg.scss into _about.scss;
2016-02-26 14:49:34 -08:00
e61711688e [Templates] Use templateLinker from MCTContainer
...for compatibility with both template and templateUrl.
2016-02-26 14:24:41 -08:00
a73f1ebbbd Merge pull request #637 from nasa/rems_data
[Examples] Rems data integration
2016-02-26 14:21:30 -08:00
4674918b4b [Examples] #359 Updated to attempt connection to remote data source and fallback to local if unavailable
Minor change to readme

Fixed JSLint errors

More JSLint errors

[Example] Rems data integration - disabled bundle by default.

[Examples] REMS data integration - added newlines at end of files

[Example] Added time conductor support to REMS data integration

Added caching of results

[Examples] Added domain format to REMS data #359

[Example] #637 Added local proxy to app.js to allow cross-origin requests

Updated readme
2016-02-26 14:03:10 -08:00
741d4476e6 [Templates] Use text plugin for toolbar 2016-02-26 13:12:35 -08:00
bf1fa0ac4c [Templates] Include templates using text plugin
Resolves #673
2016-02-26 13:07:50 -08:00
60efdb4ad3 [Templates] Add in-place rewrite step 2016-02-26 13:07:32 -08:00
8ea56486c5 [Templates] Normalize spacing 2016-02-26 13:03:06 -08:00
e13e068b6e [Templates] Begin teplacing templateUrl properties 2016-02-26 13:00:50 -08:00
852faf061e [Templates] Add parameter names for required templates 2016-02-26 12:52:02 -08:00
f2e4b01721 [Templates] Add template paths
...with text! prefix
2016-02-26 12:50:28 -08:00
930fed83e8 [Templates] Create variable names by template URL 2016-02-26 12:17:57 -08:00
4666292907 [Templates] Begin writing migration script
...to rewrite bundle.js files to load templates via
the RequireJS text plugin. #673
2016-02-26 12:12:13 -08:00
f04c3692c1 [Table] #670 Name column only prepended if multiple objects 2016-02-26 11:22:16 -08:00
ffa497f22f [Table] #670 Added new view type 'table' 2016-02-26 11:09:51 -08:00
0068348bb2 Merge pull request #704 from nasa/open703
[Examples] #703 Changed imagery telemetry metadata to use 'utc' format
2016-02-26 11:00:26 -08:00
bc3eb4ab8d [Frontend] New logo art
#164
New logo art for Open MCT added;
Removed console.log;
2016-02-26 10:59:54 -08:00
d203f3adc0 [Frontend] New logo art; paths changed
#164
Per comments in #702, abs paths changed
to relative;
New logo art for Open MCT added;
CSS tweaked as needed;
2016-02-26 10:15:15 -08:00
5e7eb7e87e [Examples] #703 Changed imagery telemetry metadata to use 'utc' format for time 2016-02-26 09:32:03 -08:00
1a2a2e66ca [Frontend] Removed commented styling
open #164
2016-02-25 12:41:54 -08:00
129b554f9d [Frontend] Significant markup/CSS mods for splash screen
#164
https://github.jpl.nasa.gov/MissionControl/vista/issues/299
App logo and bg files renamed;
Added openmct.scss to hold openmct-specific styles;
Renamed _startup.scss to startup-base.scss
which now renders its own .css file;

Still to-do: apply to WARP including needed
mods to its About dialog screen;
2016-02-24 17:47:24 -08:00
164d959f60 [Frontend] Significant markup/CSS mods for splash screen
#164
Markup in index.html and about-dialog.html
changed to simplify and use :before/:after psuedos;
CSS in _logo-and-bg.scss modded for same;
Added _startup.scss to hold general CSS for
the startup screen;
Renamed startup.scss to startup-open.scss;
Modified SplashScreenManager.js to target renamed
outer container .l-splash-holder;
Added media query for startup screen on phone;
Cleanup: moved classes out of _effects into _global;
Still to-do: apply to WARP and VISTA, including needed
mods to their About dialog screens;
2016-02-23 18:30:21 -08:00
99cf690ad4 Merge branch 'master' into open164 2016-02-23 16:03:24 -08:00
aabeb72203 [Plots] #638 Fixed failing test 2016-02-23 15:22:21 -08:00
fcdf89a4ee Merge branch 'master' into open638_rebase 2016-02-23 10:56:13 -08:00
77a2e0a70b Merge branch 'master' into open639 2016-02-23 10:46:33 -08:00
f379db55e7 Merge pull request #699 from nasa/remove-compass
Remove compass, add bourbon
2016-02-23 10:00:01 -08:00
51fbbfe601 [Gulp] Revert accidental change 2016-02-22 19:07:36 -08:00
eaab70741a [Build] Generate CSS sourcemaps
Generate CSS sourcemaps to aide in debugging.

https://github.com/nasa/openmctweb/issues/698
2016-02-22 18:57:05 -08:00
a05d6d8ee8 [Build] Rebuild scss when starting server
Rebuild scss when starting the development server.

https://github.com/nasa/openmctweb/issues/698
2016-02-22 18:30:07 -08:00
88945c48d4 [Build] Gracefully handle sass error
https://github.com/nasa/openmctweb/issues/698
2016-02-22 18:29:26 -08:00
bd7ad85bd7 [Build] Remove unused dependency
https://github.com/nasa/openmctweb/issues/698
2016-02-22 18:28:45 -08:00
9b3c8dce25 [SCSS] Remove old references to compass
Remove any old references to compass.

https://github.com/nasa/openmctweb/issues/698
2016-02-22 18:22:44 -08:00
4d800d26e2 [CSS] Add reset to replace compass/reset
Add reset.css which replaces compass/reset.

https://github.com/nasa/openmctweb/issues/698
2016-02-22 18:18:06 -08:00
0a71835687 [Build] Switch compass to bourbon
Change mixin library to bourbon.  Significantly reduces sass build time.

https://github.com/nasa/openmctweb/issues/698
2016-02-22 18:02:16 -08:00
25f3b1e110 [Frontend] Add splash screen manager
Add a runtime extension that detects the splash screen and triggers a fade out
after the application has loaded.  Once the fade out has ended, it removes the
element from the page.

Related to https://github.com/nasa/openmctweb/issues/164
2016-02-22 16:39:20 -08:00
31a983966b [Frontend] In-progress on adding branded per-app screens
open #164
CSS, markup;
2016-02-22 15:44:57 -08:00
87934df0d5 Merge pull request #697 from nasa/handle-scss-errors
[Build] Gracefully handle scss errors
2016-02-22 15:34:59 -08:00
db1a7e37e8 [Build] Gracefully handle scss errors
Log errors in SCSS processing but don't crash watch process.

Fixes https://github.com/nasa/openmctweb/issues/696
2016-02-22 15:29:00 -08:00
d3e274bfdd Merge branch 'master' into open401
Resolve conflicts for #416

Conflicts:
	platform/commonUI/browse/bundle.json
	platform/commonUI/browse/src/BrowseController.js
2016-02-22 14:27:21 -08:00
b5c88e5c5c Merge pull request #695 from nasa/open442
Review and integrate open442
2016-02-22 13:43:59 -08:00
5d8efebc55 Merge pull request #694 from nasa/fix-watch
[Build] reinstantiate compass per task execution
2016-02-22 12:54:29 -08:00
729d91e7f3 [Frontend] CSS sanding and shimming
open #442
Fixed white space problem with .status-block-holder
applied to mct-include; Added new status 'available'
class and updated theme constants files;
2016-02-22 12:51:32 -08:00
34b0b55b97 [Build] reinstantiate compass per task execution
Reinstantiate compass wrapper for each task execution.  Allows stylesheets
task to be run multiple times by watch.  Fixes a bug that prevents watch
from working properly.
2016-02-22 12:45:41 -08:00
bd0867b79d Merge branch 'master' into open442
Conflicts:
	platform/commonUI/themes/espresso/res/css/theme-espresso.css
	platform/commonUI/themes/snow/res/css/theme-snow.css
2016-02-22 11:11:32 -08:00
6d036a5d67 Merge pull request #693 from nasa/build-css
[Build] Add stylesheets to build
2016-02-22 10:59:46 -08:00
c0168088a1 Merge pull request #692 from nasa/prod-uisymbols
Integrate new VISTA Topic and Session glyphs
2016-02-22 10:58:24 -08:00
5f81e95c87 [Build] Add Gemfile, use bundle exec
Add a Gemfile to specify ruby dependencies and update gulp-compass to use
bundle exec to execute compass.

Addresses comments in https://github.com/nasa/openmctweb/pull/693
2016-02-22 10:37:30 -08:00
ebf501ce71 [Frontend] Markup and CSS related to indicators; hover styles
open #442
https://github.jpl.nasa.gov/MissionControl/vista/issues/293

s-btn hover styling cleaned up;
Spacing, styles, etc. for indicators refined;
Constants, colors added to, cleaned up and normalized;
Animation code in _effects refactored;
2016-02-19 17:59:32 -08:00
ed09214f59 [Build] Save stylesheets to proper location
Updates the stylesheet task to output CSS in the correct locations. Remove
config.rb for running compass manually, and remove compiled css files from
project.  Add a .gitignore to ensure they don't get included accidentally.

Add a gulp task for running the development server and watching for scss
changes at the same time.

resolves https://github.com/nasa/openmctweb/issues/238
2016-02-19 13:26:20 -08:00
b0b2db24e0 [Frontend] Mods to .status.block
open #442
Added clickable class; tweaks to indicator.html
to introduce s-btn element look;
2016-02-18 18:03:43 -08:00
a2f8f4334f Updated font to include new VISTA session and topic glyphs 2016-02-18 16:42:56 -08:00
626cc502fb [Frontend] Removed -moz-osx-font-smoothing property
open #687
2016-02-18 13:24:06 -08:00
95f1768fb7 [Frontend] Refactoring to use Victorizr instead of media queries
open #639
open #683
open #169
Tweak to espresso tree view control color and hover color
for espresso theme; reordered elements in _constants;
2016-02-18 13:10:54 -08:00
fb20af24bc [Frontend] Refactoring to use Victorizr instead of media queries
open #639
open #683
open #169
open #335
    Fixed wrong application of body.desktop.mini-tab...;
    Increased size of pane collapse/expand icons;
    Removed max-width applied to search input holder;
2016-02-18 11:25:12 -08:00
f6cb76354e [Frontend] Refactoring to use Victorizr instead of media queries
open #639
open #683
open #169
MQs refactored in mobile/_layout.scss;
2016-02-17 16:34:33 -08:00
66905cbcbb [Frontend] Refactoring to use Victorizr instead of media queries
open #639
open #683
open #169
open #494
Replaced MQ around mobile/_tree.scss ul.tree;
Removed MQ desktop around hover in mixin btnBase;
Reversed orientation of mobile tree arrows for #494;
2016-02-17 16:12:18 -08:00
a4f24adb8a [Frontend] Refactoring to use Victorizr instead of media queries
open #639
Replaced MQ around _controls webkit-scrollbar CSS;
2016-02-17 10:26:42 -08:00
242e02e9af Added compass_scripts directory
open #639
Added dir to .gitignore
2016-02-17 10:20:58 -08:00
0ddaa52a8a [Frontend] Refactor CSS to not use 'desktop' media query
open #639
Refactored all usage of @include desktop to use CSS selector body.desktop
instead; Still to-do: deal with desktopandtablet usage with hover bubbles
and mixins btnBase;
2016-02-16 18:38:06 -08:00
6fee4f340f [Build] Start 0.9.2-SNAPSHOT 2016-02-12 12:34:54 -08:00
1eb372177d [Build] Add npmignore to allow packing
Add .npmignore to facilitate packing of package with npm pack.
2016-02-12 11:47:28 -08:00
3de094e311 [Version] Remove snapshot for tag
Update the version in advance of tagging a release.
2016-02-12 11:17:11 -08:00
53c60ee64f [Timelines] #677 Applied fix to prevent editing of timelines in browse mode
Fixed failing test
2016-02-11 21:52:05 -08:00
42ce2aa7cf Merge pull request #666 from nasa/open656b
[Create] Utilize copyService during Save As
2016-02-11 09:55:21 -08:00
43d497e069 [Create] Clarify function naming
Per review feedback,
https://github.com/nasa/openmctweb/pull/666#discussion_r52625960
2016-02-11 09:49:26 -08:00
7d0de68db9 [Plot] #638 Changed plot series to an array 2016-02-10 20:27:04 -08:00
5306e96374 Merge pull request #668 from nasa/open659
[New Edit Mode] #659 Fix to timelines
2016-02-10 17:02:28 -08:00
156940f25b Merge pull request #667 from nasa/open659a
Review and integrate open659a into open659
2016-02-10 16:59:43 -08:00
10e0acddb3 [New Edit Mode] #659 Fix to prevent multi-composition with same object, fix to prevent composition of object with self 2016-02-10 16:43:08 -08:00
ceee7e0da9 [Frontend] Fixed CSS issue with Timeline label elements
open #659
CSS for .rep-object-label modified; Added CSS class
to tabular-swimlane-cols-tree.html markup;
Also cleaned up .s-status-pending styles for related
label elements;
2016-02-10 16:38:39 -08:00
53a49a671b [Create] Test optional filter parameter 2016-02-10 14:31:56 -08:00
99a454f943 [Create] Update CopyService spec
...to reflect API usage after #656
2016-02-10 14:21:09 -08:00
cb53e1aaee [Create] Add object, not ID
Add domain object, and not its identifier, when suing
add method of composition from CopyTask, for consistency
with test expectations.
2016-02-10 14:17:36 -08:00
0f231838ec [Create] Update test inputs to CopyTask
...to reflect changes for #656
2016-02-10 14:05:04 -08:00
0bdf05e61c [Create] Always allow cloning self
Always allow cloning the newly-created object itself
when saving a newly-created domain object.
2016-02-10 13:49:15 -08:00
3146660833 [Create] Utilize filtering during clone 2016-02-10 13:46:19 -08:00
72df464f0f [Create] Utilize passed-in filter
...when determining which objects should be cloned.
2016-02-10 13:38:53 -08:00
f602aa9247 [Create] Add filter to copyService
Add an optional parameter to method signature of
copyService, used to determine if a domain object should
or should not be cloned.

This will be used to support usages of copyService
where links should remain links;
https://github.com/nasa/openmctweb/pull/666/files#r52525612
2016-02-10 13:29:56 -08:00
b37b82133e [Create] Return cloned object in context
...to allow copyService to be used in the context of a
Save As action, with an appropriate navigation change.
2016-02-10 12:23:10 -08:00
c43929f1c6 [Create] Add specificity to check
Explicitly check if an object has a persistence timestamp
at all (avoids false-positives due to falsiness of zero.)
2016-02-10 12:07:45 -08:00
88750d92ef [Create] Remove unused code, dependencies 2016-02-10 12:05:01 -08:00
8c602025d4 [Create] Avoid navigation warning
...when navigating to a clone created via Save As.
2016-02-10 11:59:17 -08:00
5604120d55 [Create] Use duplicate at end of Save
...for unpersisted objects. Ensures that they share the
persistence space of their parent. #656.
2016-02-10 11:42:35 -08:00
5daf2f54cd Merge pull request #665 from nasa/open660
[Edit Mode] Added ability to clear all dirty cache
2016-02-10 09:19:19 -08:00
24c750b41e [Plot] Fixed jsLint, removed onchange
Removed ngChange from mct-control

Removed ng-change
2016-02-09 21:19:47 -08:00
ab1c79f25d [Plot] Switched to $watchCollection on form model 2016-02-09 20:52:47 -08:00
668c02f278 [Edit Mode] Added ability to clear all dirty cache 2016-02-09 19:29:55 -08:00
437b235361 [CSV Export] Update JSDoc
Fill in complete JSDoc and separate out callback documentation
per code review:

https://github.com/nasa/openmctweb/pull/652/files#r52263213
https://github.com/nasa/openmctweb/pull/652/files#r52264447
2016-02-09 12:30:53 -08:00
6880c82719 [CSV Export] Restructure example
Restructure CSV export example to reflect recommended style
for plugins, per code review;
https://github.com/nasa/openmctweb/pull/652#discussion_r52263869
2016-02-09 12:13:33 -08:00
645bd5743f [Plots] #638 Addressing feedback from code review
[Plots] #638 Fixing failing tests

[Plot] Changed PlotOptionsController to prototype form

Fixed spacing

Fixed jslint issue
2016-02-08 23:36:45 -08:00
273cf1c14f [Timeline] Fix columns exported 2016-02-08 18:07:03 -08:00
be031285b9 Added form-level change event 2016-02-08 17:46:21 -08:00
303e870b0d Merge branch 'open649' into warp135 2016-02-08 17:42:30 -08:00
b42ccebd5a [Timeline] Fix imports, dependencies
Fix imports and dependencies needed by Export Timeline as CSV
2016-02-08 17:42:26 -08:00
a444fc01ad [Timeline] Fix column module definitions 2016-02-08 17:34:10 -08:00
a126e43286 [Timelines] Handle columns during CSV export 2016-02-08 16:11:00 -08:00
32fc50bbd3 [Timelines] Begin sketching in taskService
...to separate out immediate commonality with other long-running
actions which need to show a blocking progress dialog.
2016-02-08 15:04:39 -08:00
4adb075a2b [Timelines] Separate out timeline traversal
...from rest of CSV export.
2016-02-08 13:59:34 -08:00
d8b1e570d9 [CSV Export] Begin implementing
Begin implementing initial step, wherein timelines composition
is traversed to build up a list of objects to export.
2016-02-08 13:36:25 -08:00
5033e2cdbb [Timeline] Begin adding Export as CSV
Sketch in solution for
https://developer.nasa.gov/mct/warp/issues/135
2016-02-08 13:04:41 -08:00
b40ac6f44f Merge remote-tracking branch 'origin/master' into open649 2016-02-08 12:25:25 -08:00
0a5097a945 Merge pull request #642 from nasa/open460
[Build] Move to npm-based build
2016-02-08 12:21:01 -08:00
f615dc5409 [Build] Add JSDoc
...for third argument of TemplateLinker.link, per code review
https://github.com/nasa/openmctweb/pull/642#discussion_r52212006
2016-02-08 12:17:20 -08:00
b0e4947bf0 Merge pull request #500 from nasa/open480
[New Edit Mode] Adding sub objects to Timelines
2016-02-08 11:59:54 -08:00
5292b27e7d [Notifications] #499 All notifications now dismissable by default.
jslint
2016-02-05 17:51:31 -08:00
5d4ace64cb Merge pull request #625 from nasa/open491
[Create] #491 Apply default context root in Locator when none available from object
2016-02-05 17:30:22 -08:00
3adc5f1e26 [CSV Export] Upgrade to phantomjs launcher 1.0.0 2016-02-05 16:56:26 -08:00
92e49d6b76 [CSV Export] Add licensing info for run-time
Add licensing info for CSV.js and FileSaver.js as licenses
which can be displayed at run-time.
2016-02-05 16:10:30 -08:00
659d05f73a [CSV Export] Update LICENSES.md
...to reflect usage of CSV.js and FileSaver.js, added to
support export.
2016-02-05 16:05:41 -08:00
215008253d [Build] Prevent accidental publish 2016-02-05 15:57:54 -08:00
2f0fd8eebd [CSV Export] Add JSDoc to ExportService 2016-02-05 15:12:47 -08:00
882cf80ba9 [CSV Export] Include exportService as active bundle 2016-02-05 15:07:51 -08:00
8c1264ab22 [CSV Export] Add example of exportService usage 2016-02-05 15:07:18 -08:00
cb0f191ab3 [CSV Export] Add FileSaver dependency
...to handle export part of CSV export.
2016-02-05 14:39:28 -08:00
c07dc0ea8b [CSV Export] Test with specified filename 2016-02-05 14:08:47 -08:00
c4d5643ea7 [CSV Export] Test with headers specified 2016-02-05 14:06:40 -08:00
300d71ddc2 [CSV Export] Verify CSV data content 2016-02-05 14:03:15 -08:00
54c67b891c [CSV Export] Update PhantomJS version
Use version 2.1+ for availability of Linux binaries;
incidentally addresses #258.
2016-02-05 13:59:03 -08:00
013690e0df [CSV Export] Add test case which examines CSV 2016-02-05 13:58:17 -08:00
8868b6a130 [CSV Export] Begin testing exportService
...including fixes to immediately-identified errors.
2016-02-05 13:32:21 -08:00
750a5648d2 [CSV Export] Upgrade PhantomJS
...for Blob support.
2016-02-05 13:31:08 -08:00
cec6295d24 [CSV Export] Sketch in exportService 2016-02-05 13:02:21 -08:00
15eb4b047f [CSV Export] Add empty scripts for CSV export 2016-02-05 12:47:57 -08:00
3ae8fcc8b4 [CSV Export] Add CSV library as dependency
For use in general-purpose CSV export service, #649
2016-02-05 12:21:09 -08:00
9371fcbc4c [Plot] #638 Added a new plot options example bundle and rebased
Fixed jsdoc

Fixed incorrect memberof declaration

Corrected memberof statement
2016-02-04 15:17:07 -08:00
f5e0ad23ea Merge remote-tracking branch 'open/prod-uisymbols' into open-master 2016-02-04 14:37:18 -08:00
abf5f22155 [Plots] #638 added onchange handling in order to synchronize forms with domain object model.
Fixed failing test

Added tests

jslint errors

Minor refactoring of layout bundle

revert layout/bundle.json
2016-02-04 14:26:21 -08:00
f2903f4030 [Frontend] Final styling on properties form in Inspector
open #638
Added custom radio button control and modified
PlotOptionsController / plotOptionsStructure
accordingly; spacing, borders, etc. are
all as finally intended;
2016-02-04 14:25:02 -08:00
371669fbce [Frontend] Mods in progress to form layout
open #638
Major progress on form-row markup and CSS when
in Inspector 'part' context; General fixes cleanups
to custom checkbox/radio CSS;
2016-02-04 14:23:29 -08:00
68f3cd087d [Frontend] Mods in progress to form layout
open #638
In progress;
2016-02-04 14:23:29 -08:00
115ffe7963 [Frontend] Fixes to scrolling and layout in Inspector
open #638
In progress;
2016-02-04 14:23:29 -08:00
e3a0cae5fd [Plot] #638 Fleshing out form structures 2016-02-04 14:23:29 -08:00
8bb5a47b88 CSS updated to use new e619 character
open #638
2016-02-04 14:23:28 -08:00
f1b6d7f749 [Frontend] New custom radio mctControl
open #638
Markup and initial CSS
2016-02-04 14:23:28 -08:00
6fb6761abf [Plots] #638 New plot display options 2016-02-04 14:23:28 -08:00
73324ce338 [Build] Update run-time licenses
Update licensing info shown in run-time Licenses page
available form About dialog.
2016-02-03 17:32:16 -08:00
ef708cf11c [Build] Update LICENSES.md
...to reflect updated versions of dependencies and new
dependencies acquired due to changes to build.
2016-02-03 17:20:37 -08:00
ad767d0db9 [Build] Update build instructions in documentation 2016-02-03 17:11:10 -08:00
f11cd589c5 [Build] Summarize dist contents 2016-02-02 16:06:45 -08:00
2036a467ce [Build] Update README.md
Include short instructions to build.
2016-02-02 16:04:17 -08:00
4cb183adc3 [Build] Remove obsolete README section 2016-02-02 15:59:17 -08:00
52b01e8bdb [Build] Remove obsolete test script 2016-02-02 15:57:06 -08:00
a10db656ce [Build] Allow bundles to be removed
Allow bundles to be removed by:

* Waiting for explicit activation before bootstrapping,
  providing a time period when bundles could be removed.
* Adding a remove method to BundleRegistry
2016-02-02 15:18:50 -08:00
4926ccb07b [Frontend] Fixed wrong location for icomoon proj config file
open #188
Removed wrongly placed new file; updated old
file with latest project config;
2016-02-02 13:52:16 -08:00
2dd9a16bf3 Merge remote-tracking branch 'open/prod-uisymbols' into open-master 2016-02-02 09:46:15 -08:00
339faf5376 Updated json config file
open #188
2016-02-02 09:46:00 -08:00
10c3ffc4be Added new e619 bullet symbol
open #188
2016-02-02 09:43:40 -08:00
aebae27391 [Tests] Remove suite.json files
Remove obsolete suite.json files; #482
2016-02-02 09:35:50 -08:00
97d0a66684 [Frontend] Added VISTA Topic and Session glyphs to symbols font
open #188
See Google Doc UI Symbols Font Map
for char codes
2016-01-29 17:09:19 -08:00
bb7f4239f6 [Build] Just install during prepublish
Don't run verifications (tests, lint, etc)
2016-01-29 16:56:29 -08:00
9b524af3ce [Build] Allow build outside of git repo 2016-01-29 16:52:13 -08:00
5081e89590 [Build] Add spaces in description 2016-01-29 12:43:36 -08:00
d2a7e04b44 [Build] Unhyphenate name
...for consistency with GitHub repo name
2016-01-29 12:43:10 -08:00
fcb23b42a4 [Build] Trigger bower during prepublish 2016-01-29 12:42:46 -08:00
6b585d175b [Build] Move build back to prepublish 2016-01-29 12:30:22 -08:00
6b32db778a [Build] Trigger gulp install at postinstall time 2016-01-29 12:24:33 -08:00
924a4026ff [Build] Trigger gulp from prepublish 2016-01-29 11:54:18 -08:00
25a7df7885 [Build] Update JSDoc 2016-01-29 11:46:37 -08:00
ddb5837145 Merge branch 'master' into open460 2016-01-29 11:44:38 -08:00
6509d84a5d [Build] Update TemplateLinker spec 2016-01-29 11:42:14 -08:00
507f2391ff [Build] Update mct-include, mct-representation specs
...to reflect changes in TemplateLinker API allowing
templates to be explicitly included.
2016-01-29 11:27:08 -08:00
38e703a121 [Build] Fix failing test
Acquire reference to moment as an argument instead of
assuming global availability; this appears to be no longer
be present globally after build changes
2016-01-29 10:33:43 -08:00
e564baba1a [Build] Update test runner 2016-01-29 10:26:47 -08:00
0a546cd50c [Build] Run bower as a postinstall step 2016-01-29 10:17:44 -08:00
baf32dd62f [Build] Add verify task 2016-01-29 10:15:34 -08:00
71db4b38ab [Build] Remove obsolete pom.xml 2016-01-29 10:08:33 -08:00
2727c9544d Merge remote-tracking branch 'github/master' into open-master 2016-01-28 17:33:45 -08:00
a35b0c1d7b Remove erroneously committed file
From #474
2016-01-28 17:33:00 -08:00
df94d31cf3 [Build] Generate build info for About dialog 2016-01-28 17:16:44 -08:00
c3f819fa8c [Build] Begin adding build info 2016-01-28 17:08:02 -08:00
5b0ee8588c [Build] Respect shim config when optimizing 2016-01-28 15:23:37 -08:00
fcfb3eebda [Build] Include all static assets 2016-01-28 15:23:17 -08:00
84e1e87ce3 [Build] Copy run-time resources into dist 2016-01-28 15:06:07 -08:00
41cfd050a2 [Build] Change task name for code style check 2016-01-28 14:54:30 -08:00
d67ffa8401 [Build] Add fixstyle step 2016-01-28 14:39:14 -08:00
fd2f4128a0 [Build] Add code style checks 2016-01-28 14:33:57 -08:00
814fb3b513 [Build] Add lint step 2016-01-28 13:44:18 -08:00
e0fbaa83b0 [Build] Add compatibility with text plugin
Allow templates to be loaded via the text plugin, which
in turn will allow these to be built into the final JS
artifact.
2016-01-28 11:41:14 -08:00
967f8c9151 [Build] Update remaining library references 2016-01-28 11:25:44 -08:00
84ecfd3527 [Build] Remove remaining files in libs 2016-01-28 11:21:08 -08:00
3a4f6a7229 [Build] Update dependency references
...to reflect movement of third-party libraries to
bower_components.
2016-01-28 11:18:57 -08:00
7a160a0a98 [Build] Remove third-party libraries 2016-01-28 11:13:11 -08:00
cf15b6eed7 [Build] Add additional run-time dependencies 2016-01-28 11:12:18 -08:00
452b05eb7b [Build] Update RequireJS config
...to use bower_components paths
2016-01-28 10:55:22 -08:00
82261dfabc [Build] Add bower.json
...to declare front-end dependencies, to allow these to be
removed from repository.
2016-01-28 10:51:52 -08:00
fc7bd36dba [Build] Begin integrating compass
Convert SCSS to CSS as a build step.
2016-01-28 10:36:01 -08:00
918c667496 [Build] Update code coverage report path 2016-01-27 15:00:59 -08:00
7c23f803e8 Merge pull request #477 from nasa/open337
Review and integrate open337
2016-01-27 14:33:37 -08:00
97c69799b4 [Build] Use spaces instead of tabs 2016-01-27 14:30:40 -08:00
406fdd5efc [Build] Run karma tests from gulp 2016-01-27 14:30:07 -08:00
f334be8f23 [Build] Externalize source maps 2016-01-27 14:01:09 -08:00
e1b7f2af30 [Build] Add initial gulp task
Add initial gulp task (r.js optimization)
2016-01-27 13:23:17 -08:00
ad63b9ff1b [Build] Ignore dist 2016-01-27 13:03:08 -08:00
e83b19c84b [Build] Add gulp dependency
Add dependency on gulp to begin modifying build, per
#460
2016-01-27 13:00:20 -08:00
dbf196e014 Merge remote-tracking branch 'github/master' into open477
Resolve conflicts to complete merge of #477

Conflicts:
	platform/commonUI/general/bundle.json
	platform/commonUI/themes/espresso/res/css/theme-espresso.css
	platform/commonUI/themes/snow/res/css/theme-snow.css
2016-01-27 12:53:46 -08:00
b5c8ecc85f Merge pull request #475 from nasa/open325b
[Time Conductor] Update validation logic
2016-01-27 12:44:14 -08:00
9e6da94878 [Time Conductor] Reformat expression in template
...to use less line width, and to exhibit more normal
indentation, per code review feedback from #475
2016-01-22 15:24:27 -08:00
3a26c864b8 [Time Conductor] Fix comment text
Per code review feedback, #475
2016-01-22 15:22:54 -08:00
be7827d6f8 Merge remote-tracking branch 'open/open445' into open-master 2016-01-22 11:47:05 -08:00
b8b5fdcabf [Copy] #497 Removed extraenuous persist call 2016-01-22 11:32:20 -08:00
c091063b83 [Examples] #359 Cleaned up REMS data integration example. 2016-01-22 10:49:40 -08:00
45276183b9 Merge pull request #496 from nasa/open492
[Documentation] #492 Amended CircleCI configuration to add missing dependency
2016-01-22 09:30:27 -08:00
54653f3914 [Create] #491 Locator is not visible when creating a new object where selected object does not have location
Added additional test for default context

Fixed JSLint error
2016-01-21 16:35:18 -08:00
cd2b19eb1e [New Edit Mode] Fixed failing tests, and added new test in CreateWizard
[New Edit Mode] #480 fixed JSLint errors

[New Edit Mode] #480 do not show locator for sub objects

[New Edit Mode] Modified persistence in SaveAction

Removed redundant variable

Fixed Failing Test

Fixed JSLint errors

Improved some documentation
2016-01-21 12:01:38 -08:00
3850db268a [Documentation] #492 Added missing dependency for CircleCI 2016-01-21 10:54:49 -08:00
c65096f166 [New Edit Mode] Added AddAction, modified EditableDomainObject to properly wrap inherited functions, added new EditableInstantiationCapability 2016-01-20 18:49:39 -08:00
fcae3fd7a9 Merge pull request #487 from nasa/open486
Review and integrate open486
2016-01-19 11:38:50 -08:00
83dd23cd4b Merge pull request #490 from nasa/nem-build-fixes
NEM build fixes
2016-01-19 11:37:25 -08:00
26c155da3b Merge branch 'open483' into open-master 2016-01-18 14:09:30 -08:00
db7560c31f [Test] Use PhantomJS to run tests
Switch Karma to use PhantomJS to run tests.  CI machines no longer
need to have Chrome installed.

Implemented after changes to build process due to imperative registration.

https://github.com/nasa/openmctweb/issues/450
2016-01-18 13:57:32 -08:00
6fc028e112 [Docs] remove dependencies for building docs
Remove depencendies necessary to build docs from package.json and
specify them in the readme.  Due to difficulty managing dependencies
for nomnoml on different platforms, this reduces dependency requirements
to only those needed for building the package.
2016-01-18 13:54:33 -08:00
2d44cf78f9 [Frontend] Fixed HTML and CSS for grid-item
open #486
Normalized grid-item to use similar HTML structure
as label template;
Fixed CSS accordingly.
2016-01-15 15:33:10 -08:00
9b6f3bff85 Merge pull request #485 from nasa/open337-filters
[Plot] Use filters to reverse tick labels
2016-01-15 13:30:41 -08:00
c2207fe7ce [Plot] Use reverse filter for range ticks too 2016-01-15 13:14:33 -08:00
119429bc42 [Plot] Test reverse filter 2016-01-15 13:13:08 -08:00
a94e99af70 [Plot] Use reverse filter for plot ticks
...to remove CSS-related reversal from scripts
2016-01-15 13:09:05 -08:00
96dc055f02 [Plot] Add reverse filter 2016-01-15 13:06:56 -08:00
a50410f8ed [Plot] Allow filters to be registered
https://github.com/nasa/openmctweb/pull/477/files#r49903975
2016-01-15 13:00:24 -08:00
0dc715199d [Build] Include examples in build 2016-01-15 11:44:26 -08:00
aab53c4ae1 [Build] Exclude target from build 2016-01-15 11:41:50 -08:00
b63812111d [Build] Include bundle.js files
https://github.com/nasa/openmctweb/issues/483
2016-01-15 11:34:58 -08:00
193c7e3db2 [New Edit Mode] Fixed failing Time Conductor Test 2016-01-14 19:57:06 -08:00
a023b0e19c Fixed failing MCTToolbarSpec 2016-01-14 19:22:33 -08:00
66e827de2e Fixed Outstanding issues from merge 2016-01-14 18:51:53 -08:00
7a563b80ee Fixing bundle load issues 2016-01-14 17:32:59 -08:00
032b2542f0 Merged from Master 2016-01-14 17:23:53 -08:00
3e7eb11d84 Regenerated bundles 2016-01-14 17:08:19 -08:00
3f5a8cb2be [New Edit Mode] Disabled time conductor tests which are failing 2016-01-14 16:12:44 -08:00
f300b99b7b [New Edit Mode] Code style fixes
JSLint error
2016-01-14 15:55:02 -08:00
d78bd9fd51 Merged from master 2016-01-14 15:16:02 -08:00
b4448020e4 JSLint 2016-01-14 15:12:15 -08:00
0741e2cf5e Disabled failing tests 2016-01-14 15:11:19 -08:00
6d3b2c716b JSLint 2016-01-14 15:05:26 -08:00
858aa6146a JSLint 2016-01-14 15:04:13 -08:00
826d39a749 [New Edit Mode] Fixed logic in EditActionPolicy to use positive logic 2016-01-14 15:02:22 -08:00
77efda2c11 [New Edit Mode] JSLint 2016-01-14 14:44:19 -08:00
cb866bce33 [New Edit Mode] Removed test bypass from circle CI deployment descriptor 2016-01-14 14:21:32 -08:00
88f8925d17 Merge pull request #469 from nasa/open450b
[API Refactor] Imperatively register bundles
2016-01-14 09:41:04 -08:00
442229fd42 Merge branch 'master' of https://github.com/nasa/openmctweb into open445
Conflicts:
	platform/features/plot/res/templates/plot.html
2016-01-13 16:01:02 -08:00
a7a707595c [Frontend] Fixes to CSS for Chrome Linux
open #445
Mods and simplifications to wait-spinner classes;
Simplification and cleanup in plot.html to use loading
class instead of hide/show DOM element;
2016-01-13 13:54:00 -08:00
388cab8d32 Merge pull request #476 from nasa/open342
Review and integrate open342
2016-01-13 12:46:41 -08:00
69c5b110bf [API Refactor] Move out non-global require config 2016-01-13 12:41:15 -08:00
45142e03dc [API Refactor] Move uuid dependency out of top-level 2016-01-13 12:33:22 -08:00
86daad5fbd [API Refactor] Remove obsolete UUID dependency
...in association with cleanup of requirejs config,
https://github.com/nasa/openmctweb/pull/469/files#r49642503
2016-01-13 12:22:44 -08:00
8c325eb1b1 [Frontend] Mods to allow plot tick labels to ellipsis to left
open #337
Still fixing code due to circleci fail in pull request;
2016-01-13 10:11:14 -08:00
5e628b1a25 [Frontend] Mods to allow plot tick labels to ellipsis to left
open #337
Still fixing code due to circleci fail in pull request;
2016-01-13 10:05:30 -08:00
d1e5ca7875 Merge pull request #473 from nasa/nem470_prototype
Review and integrate nem470_prototype
2016-01-13 09:04:41 -08:00
f8114ba6b6 [Frontend] Mods to allow plot tick labels to ellipsis to left
open #337
Fixing code due to circleci fail in pull request;
2016-01-12 18:23:30 -08:00
a10f895904 [Frontend] Mods to allow plot tick labels to ellipsis to left
open #337
Fixing code due to circleci fail in pull request;
2016-01-12 18:20:52 -08:00
9b59fd7eae [Frontend] Mods to allow plot tick labels to ellipsis to left
open #337
Tick label strings are now reversed in their char order in
PlotTickGenerator.js, then reversed again via CSS in
_plots-main.scss. This forces the browser to clip the label
at the left 'start' side, rather than the end, resulting in
the least significant portion of the label getting clipped.
2016-01-12 18:04:09 -08:00
8dd36d426c [Frontend] Refactoring local controls hide and show
open #342
Now using CSS hover on pertinent plot areas;
Refining of select styling, tweaks for Firefox Linux;
Tweaks to local-control positioning in plots;
Changed *-options controls to use length > 1
instead of > 0;
2016-01-12 15:54:56 -08:00
9fe026a1f1 [Time Conductor] Decrease minimum outer span 2016-01-11 18:29:42 -08:00
3b5c1bf2e6 [Time Conductor] Update spec
Verify that validation occurs against state in formModel;
remove obsolete test case for enforcing minimum outer span
2016-01-11 18:28:44 -08:00
bb993dc94f [Time Conductor] Don't update invalid bounds
Don't enforce minimum time span when bounds are invalid;
https://github.com/nasa/openmctweb/issues/325#issuecomment-170755787
2016-01-11 18:23:32 -08:00
5beb1de805 [Time Conductor] Display validation errors consistently 2016-01-11 16:56:58 -08:00
0a012c67dd [Time Conductor] Test additions to TimeRangeController
Add test cases to cover validators added to display
start/end time violations.
2016-01-11 16:41:20 -08:00
11b71fae68 [Time Conductor] Display invalid state
...when text value can be parsed in a date-time field,
but numeric value violates externally-imposed validation
2016-01-11 15:29:43 -08:00
e6d0537e5e Revert "[Time Conductor] Validate numeric date-time fields"
This reverts commit 07c407edea.
2016-01-11 15:23:21 -08:00
c57cb43462 [Frontend] Fixed z-index of .primary-pane
open #470
(cherry picked from commit 6bdcce0)
2016-01-11 15:19:23 -08:00
99556ed6a5 [Time Conductor] Validate start/end times 2016-01-11 15:18:38 -08:00
07c407edea [Time Conductor] Validate numeric date-time fields
Allow injection of a validator for numeric values of
the date-time fields, to allow for these to be displayed
as invalid in cases where the text itself may be parsed
but the resulting value is not valid (e.g. when start
is greater than end.)

https://github.com/nasa/openmctweb/issues/325
2016-01-11 15:18:26 -08:00
acb2a2da12 Merge master into nem468a - picking up missed files 2016-01-11 13:30:56 -08:00
4f7ca98b60 Merge branch 'master' into nem468a.
Many tweaks to fix some issues with tree, labels and Inspector.

Conflicts:
	platform/commonUI/edit/res/templates/elements.html
	platform/commonUI/general/res/sass/search/_search.scss
	platform/commonUI/general/res/sass/tree/_tree.scss
	platform/commonUI/general/res/templates/object-inspector.html
	platform/commonUI/themes/espresso/res/css/theme-espresso.css
	platform/commonUI/themes/snow/res/css/theme-snow.css
	platform/search/res/templates/search.html
2016-01-11 13:29:26 -08:00
a65ca7cb1e [Frontend] Refactor Inspector to use s-status-editing
open #468
Removed ng-show="editMode" in object-inspector.html;
Refactored CSS as required in _inspector.scss;
Added opacity transition to splitter-inspect-panel and
split-pane-component pane bottom, but not working as desired currently:
entire inspector seems to be destroyed and recreated when switching into
and out of edit mode;
Moved <style> def for .location-item in object-inspector.html into .scss;
2016-01-08 16:47:11 -08:00
898dd557e5 [Frontend] Refactor to use s-status-editing instead of ng-class
open #468
Remove ng-class statements in favor of upstream .s-status-editing;
Restructure CSS accordingly;
NOTE: because edit.html has NOT been changed,
changes here will cause old edit mode to no longer display properly.
Don't integrate this CSS with old edit mode!
2016-01-08 16:11:00 -08:00
ed454df97d [API Refactor] Uncomment out erroneous change 2016-01-08 15:45:30 -08:00
2665e55e59 [API Refactor] Include top-level main.js
...in Maven-based build.
2016-01-08 15:37:46 -08:00
0036974c60 Merge remote-tracking branch 'github/master' into open450b
Merge latest from master branch to reconcile conflicts
for https://github.com/nasa/openmctweb/pull/469

Conflicts:
	platform/commonUI/general/bundle.json
2016-01-08 15:36:10 -08:00
cec197f888 [API Refactor] Remove bundle.json files 2016-01-08 15:32:18 -08:00
cacc295524 [API Refactor] Move rebundle script
...out of top-level, into a scripts directory.
2016-01-08 15:29:58 -08:00
3bf2819c07 [API Refactor] Ignore target when linting 2016-01-08 15:04:54 -08:00
ed63e326fe [API Refactor] Update documentation
...to reflect new manner in which tests are run.
2016-01-08 14:55:37 -08:00
77e39f2882 [API Refactor] Test legacy bundle registry 2016-01-08 13:38:28 -08:00
df631ba40e [API Refactor] Update failing specs 2016-01-08 12:58:06 -08:00
65c0cc66b6 [API Refactor] Add HTML reporting
Write HTML reports of test successes/failures to simplify
handling of test failures; pre-existing HTML test runner
is incompatible with changes to the way bundles are loaded.
2016-01-08 12:57:22 -08:00
aa63308e0b [API Refactor] Fix JSLint failures
Fix JSLint failures by excluding top-level code,
and by explicitly declaring variable require.
2016-01-08 12:36:48 -08:00
82094477a3 [API] Run npm tests during maven build 2016-01-08 12:10:42 -08:00
39c1a885d8 [API] Enable code coverage
Enable code coverage reporting from npm-executed tests.
2016-01-08 12:06:12 -08:00
72c721b605 [API] Remove bundles.json
...and make its usage optional.
2016-01-08 09:54:02 -08:00
1443ab61e3 [API] Obey strict DI from FormController 2016-01-08 09:42:38 -08:00
2b4d6c111c [API] Fix logging of paths
When extensions have an explicitly-declared implementation,
do not log that they are being loaded.
2016-01-07 16:06:04 -08:00
7728d308f2 [API] Obey strict DI rules
Fix unintended implicit DI usage in  configuration
2016-01-07 16:03:36 -08:00
9babe7167e [API] Enable strict DI
...to facilitate detection of any issues with
optimizability of legacy support for imperative
registration.
2016-01-07 15:56:09 -08:00
52579fefe1 [API] Simplify RequireJS config 2016-01-07 15:29:19 -08:00
de53247d56 [API] Convert JSON bundles to imperative form 2016-01-07 15:08:08 -08:00
786f9febe4 [API] Declare libs upfront
Declare external dependencies up-front in RequireJS
config; avoids problems due to changes in ordering
(since RequireJS config may be modified by bundle
contents.)
2016-01-07 15:07:25 -08:00
29acbfdb9c [API] Ensure uniqueness of impls when rebundling
Avoids redundant argument names in generated JS files.
2016-01-07 15:06:30 -08:00
5bbbdd4e50 [API] Fix explicit implementation assignments 2016-01-07 15:01:57 -08:00
4ed1836ae5 [API] Allow implementations to be passed directly
Allow implementations to be passed in as values,
instead of strings, facilitating the loading of
said implementations via RequireJS.
2016-01-07 15:01:39 -08:00
82990152d7 [API] Depend on bundles via AMD 2016-01-07 15:01:28 -08:00
8d3aec02d6 [API] Include dependencies during rebundling 2016-01-07 15:00:51 -08:00
792fda48e3 [API] Fix whitespace of bundle rewrites 2016-01-07 10:45:00 -08:00
9ebafa157b [API] Add temporary bundle-rewriting script 2016-01-07 10:42:08 -08:00
612dd7db2c [API] Expose browse through legacy registry 2016-01-06 17:54:56 -08:00
b87dd5def6 [API] Fix paths for legacyRegistry 2016-01-06 17:50:05 -08:00
9cc03123b1 Merge pull request #402 from nasa/open209
[Clocks/Timers] Update code style
2016-01-06 14:07:15 -08:00
a6ecda9cab Resolved conflict 2016-01-06 14:06:28 -08:00
b20488e77d Merged conflict 2016-01-06 14:05:40 -08:00
05a909f66f Merge pull request #451 from nasa/open116
[Time Conductor] Improve test coverage
2016-01-06 13:26:33 -08:00
2436c32e6d [Time Conductor] Split test cases
Verify table structure separately from table contents
per code review feedback,
https://github.com/nasa/openmctweb/pull/451/files#r48999214
2016-01-06 13:00:16 -08:00
a39e8e44f0 [API] Load bundles from imperative registry 2016-01-06 11:22:44 -08:00
02c984a0bc Merge pull request #69 from nasa/api-redesign
[API] API Redesign Goals and Proposals
2016-01-06 11:21:05 -08:00
65fb5ab2a5 [API] Move angular dependency inward 2016-01-06 11:15:36 -08:00
01772e4020 Merge pull request #452 from nasa/open1400
[Common UI] Test mct-split-pane, mct-splitter
2016-01-06 11:11:27 -08:00
76aa9e1fd2 [API] Add legacy bundle registry 2016-01-06 11:05:41 -08:00
9f66f39d8d [API] Add a top-level main.js
...which can depend upon the bundle registry, as well
as a set of installed bundles.

https://github.com/nasa/openmctweb/issues/450
2016-01-06 10:59:21 -08:00
fdc875379f [API] Refactor out application initialization
...to simplify insertion of an imperative bundle registry,
WTD-450.
2016-01-06 10:44:53 -08:00
019e04f9ab Merge pull request #434 from nasa/open433
[Documentation] Code example in bar graph tutorial incorporates text from the following paragraph
2016-01-05 16:46:31 -08:00
668b508bb8 [API] Add links to related issues 2016-01-05 16:37:24 -08:00
7d24c5319b [API] Bring in consensus
Bring over tables indicating consensus/decisions about
proposed API changes from
https://github.com/nasa/openmctweb/issues/263
2016-01-05 16:10:57 -08:00
83bdf7343d [Common UI] Test mct-splitter
WTD-1400
2016-01-05 10:14:25 -08:00
46e524a3b6 [Common UI] Begin testing mct-splitter
WTD-1400
2016-01-04 14:25:43 -08:00
22b7bb07aa [Common UI] Add mct-split-pane test cases
...sufficient for full line coverage. WTD-1400
2016-01-04 12:19:33 -08:00
7a25733be0 [Common UI] Remove obsolete split-pane container
Remove obsolete split-pane container and associated
controller; this behavior is now handled by the
mct-split-pane directive.

Part of updates to tests for the mct-split-pane
directive, WTD-1400
2016-01-04 11:34:24 -08:00
b9146fbeac [Time Conductor] Test TelemetryHandle.getDatum
Test ability to look up datum object by index (used to
support evaluation of limit state in Fixed Position and
similar single-value views while time conducting.)
2015-12-30 10:23:02 -08:00
a49deb5ab1 Merge remote-tracking branch 'github/master' into open116
Merge in latest from master into topic branch for
https://github.com/nasa/openmctweb/issues/116

Conflicts:
	platform/features/layout/test/FixedControllerSpec.js
	platform/features/plot/test/PlotControllerSpec.js
2015-12-30 10:15:05 -08:00
9b63a63efc Merge pull request #379 from nasa/open1337
[Limits] Add test cases for limits
2015-12-30 10:11:27 -08:00
2358541d91 [Time Conductor] Update RangeColumn spec
Update RangeColumn spec. Changes appear to have been related
to limits (WTD-1337), but making changes in the context of
updating tests for time conductor,
https://github.com/nasa/openmctweb/issues/116
2015-12-30 10:10:23 -08:00
38b5756d8d [Time Conductor] Verify plot bounds retention
Verify that the domain axis of a plot retains bounds from
the time conductor, instead of doing its default behavior
of fitting to the data.
2015-12-30 10:04:04 -08:00
c436bcce0a [Time Conductor] Test updated fixed position behavior
Verify interactions from FixedControllers on events
issued by the time conductor.
2015-12-30 09:29:24 -08:00
8e68914b56 Merge pull request #412 from nasa/open228
[Documentation] Add text to main page #228
2015-12-30 09:05:30 -08:00
f0a5a836d6 Merge pull request #421 from nasa/open336
Review and integrate open336
2015-12-30 09:04:21 -08:00
2b0f6dd577 Merge pull request #437 from nasa/open431
Review and integrate open431
2015-12-30 09:02:42 -08:00
30fec7c2ac [Time Conductor] Test mct-click-elsewhere 2015-12-29 15:37:09 -08:00
3f4ed46c1c [Time Conductor] More tests for date-time picker
Sufficient for 100% line coverage.
2015-12-29 15:26:18 -08:00
ba4c66866c [Time Conductor] Add tests for date-time picker 2015-12-29 13:59:06 -08:00
fcee30c27e [Mobile] Test agentService.isTouch 2015-12-29 12:58:24 -08:00
560825cc86 [Mobile] Test DeviceMatchers 2015-12-29 12:55:17 -08:00
2df61998ab [Mobile] Detect touch support 2015-12-29 12:43:46 -08:00
91b42fc0cc [Mobile] Test DeviceClassifier 2015-12-29 12:41:38 -08:00
5eac0bc5d9 [Mobile] Include classifier as runs extension
...to ensure that body gets device-related classes applied
when the application starts.
2015-12-29 12:02:03 -08:00
d397f0f283 [Mobile] Add classes to body
Add classes describing device characteristics to the
body of the current document at start-up. Refactor
device matchers out of the mct-device directive for
reuse and consistency here.

https://github.com/nasa/openmctweb/issues/169
2015-12-29 11:59:41 -08:00
0aae2c7b2c [API Redesign] Add clarifying comments 2015-12-24 15:50:28 -08:00
b5d7dbc088 [API Redesign] Add notes about 1.0.0 release
Particularly, closing API-related issues; need for this
mentioned at
https://github.com/nasa/openmctweb/issues/264#issuecomment-165921056
2015-12-24 15:21:14 -08:00
5921883325 [API Redesign] Add activity diagram 2015-12-24 15:13:44 -08:00
75d7240476 [API Redesign] Complete text of refactoring plan 2015-12-24 14:07:04 -08:00
9d71715c43 [API Redesign] Begin planning API Refactoring
https://github.com/nasa/openmctweb/issues/264
2015-12-24 13:54:14 -08:00
b986a0a38d Address decorability of role validation 2015-12-22 14:33:33 -08:00
0d2b5160ac Add section on roles 2015-12-22 13:15:00 -08:00
c99b6df9fc Update description of imperative plugins 2015-12-22 12:34:51 -08:00
9c4c020f54 [Build] Bump version number
Bump version number, add SNAPSHOT status to start
sprint Bradbury.
2015-12-18 12:36:47 -08:00
08c4302011 [Build] Bump version number to close release 2015-12-18 12:21:11 -08:00
5f96861c44 [Duplicate] Handle single-element ID arrays
Avoid type coercion related errors when testing to
see if a value is an ID that needs to be remapped.
2015-12-17 15:10:15 -08:00
995d71f901 [Duplicate] Add test case
Add test case for single-element string arrays, to
replicate bug around type coercion.

https://github.com/nasa/openmctweb/issues/444
2015-12-17 15:07:16 -08:00
82e4a53472 Merge remote-tracking branch 'github-open/open-warp1596b' into open-master 2015-12-17 14:20:18 -08:00
e7a41061c6 [Frontend] Hiding filter input in autoflow element when in Layout
open #425
(cherry picked from commit 119613e)
2015-12-17 14:11:39 -08:00
4848a61e21 Merge pull request #439 from nasa/open428
Fixed bug in copying #428
2015-12-17 13:55:55 -08:00
6302e45c10 Fixed bug in copying #428 2015-12-17 13:47:31 -08:00
451157b653 Merge pull request #432 from nasa/open426
Review and integrate open426
2015-12-17 13:38:45 -08:00
ae89a169d0 [Frontend] s-status-pending sanding and polishing
open #431
Cleanups, comment removal; Inspector location items
with s-status-pending tweaked;
Fixed grid-item background class;
2015-12-17 12:24:57 -08:00
941d0d0057 [Frontend] Tree sanding and polishing
open #431
Fixed vertical margins problem in tree and search results;
2015-12-17 10:49:39 -08:00
0296cfe3c1 [Frontend] Mobile sanding and polishing
open #431
Fixed hiding of "search by type" in phone only;
Fixed search-input magnify glass z-index value;
Fixed tree search results heights;
2015-12-17 10:21:06 -08:00
f55168d1ac Merge remote-tracking branch 'github-open/open-warp1596' into open-master 2015-12-17 09:39:38 -08:00
3c4fb8c43d [Frontend] Final final sanding on label flex-box conversion
open #431
Tweaks for labels in Inspector;
2015-12-16 17:38:02 -08:00
ed7e16d341 [Frontend] More sanding on label flex-box conversion
open #431
Moved object-label classes into their own include;
Fixing object-label in edit Elements pool and
Inspector; mixin refactoring;
2015-12-16 17:32:43 -08:00
9dc958b952 [Frontend] Final sanding on label flex-box conversion
open #431
Fixed positioning for l-icon-link when applied to
inspection-location object;
2015-12-16 16:49:16 -08:00
ed3ee1099d [Frontend] Final sanding on adding s-status-pending
open #431
Italicized text; Comments cleaned up;
To-do: fix regressed label elements in Inspector;
2015-12-16 16:38:06 -08:00
7fb506d4df Merge branch 'open431' of https://github.com/nasa/openmctweb into open431 2015-12-16 16:10:06 -08:00
67707678a8 Merge branch 'master' of https://github.com/nasa/openmctweb into open431 2015-12-16 16:08:23 -08:00
930b13f9a0 [Frontend] Added s-status-pending spinner to tree-item
open #431
Refinements of tree item sizes and spacing;
Polished spinner-related classes;
Moved l-icon-link icon into -glyph element;
2015-12-16 16:06:31 -08:00
b59fc43038 [Frontend] Converting tree items and labels to flex-box
open #431
Mobile fixes complete;
2015-12-16 14:52:19 -08:00
4579b4fabc [API] Remove orphan paragraph, update spacing 2015-12-16 13:29:42 -08:00
9b32461240 [Frontend] Converting tree items and labels to flex-box
open #431
In-progress fixing mobile;
Mostly done, link icon in mobile needs
better positioning;
2015-12-16 13:26:30 -08:00
7dc067741b [API] Add Proposals and feedback
Add proposals interspersed with narrative.  As with all proposals, there is
room for details to be fleshed out.

https://github.com/nasa/openmctweb/issues/261
2015-12-16 12:58:07 -08:00
d1f617a54e [Frontend] Converting tree items and labels to flex-box
open #431
In-progress fixing mobile;
Removed desktop and mobile-specific hide/show;
2015-12-16 11:50:46 -08:00
c4f99a6cab Merge pull request #435 from nasa/open428
[Copy] Duplication of layouts does not retain position and size of all elements. #428
2015-12-16 11:45:22 -08:00
83e77303aa [Copy] Duplication of layouts does not retain position and size of all elements. #428 2015-12-16 11:11:20 -08:00
29a1c7dc5d [Documentation] Code example in bar graph tutorial incorporates text from the following paragraph #433 2015-12-15 21:58:21 -08:00
65a1d7495d [Frontend] Converting tree items and labels to flex-box
open #431
In-progress;
TO-DO: need to fix mobile styles!
2015-12-15 18:17:06 -08:00
a98ab958c9 [Frontend] Adding s-status-pending classes to tree item labels
open #431
In-progress;
2015-12-15 17:06:47 -08:00
6e1cadf338 [Frontend] Fixed splitter and related elements when collapsed
open #426
Adds CSS to turn off pointer-events for the splitter, treeview
and inspect elements when they are in a collapsed state;
2015-12-15 15:47:32 -08:00
83a9b984e5 [Frontend] Recompile CSS after integration of open1596
open #425
warp#1596
Recompile CSS after integration of cherry-pick from open1596;
2015-12-14 15:28:48 -08:00
978df93ffd [Frontend] Cherry-picking platform CSS mods for autoflow view
warp #1596
open #425
Changes to autoflow styles, particularly in header;
Cleanup in effects.scss; CSS to be re-compiled;
(cherry picked from commit 5848077)
2015-12-14 15:22:08 -08:00
4e5cefbf03 Merge pull request #418 from nasa/open341
Review and integrate open341
2015-12-14 10:41:07 -08:00
cf73f3a0c4 Moved gesture from individual views up to browse-object.html for now to resolve #423 2015-12-11 16:42:05 -08:00
367d1b0247 [Edit] Drag-drop on folder triggers edit mode #420 2015-12-11 16:14:00 -08:00
33b1c1689c [Frontend] Added classes for no-collapse indicator
open #304
Added classes string and related classes to ClockIndicator;
2015-12-11 15:49:50 -08:00
2e65a6a63e Updating code to conform to code style 2015-12-11 15:39:53 -08:00
0cfc070f3c Merge pull request #394 from nasa/open332
[Duplicate] Rewrite identifiers in clones
2015-12-11 15:06:34 -08:00
21fd16ddf1 [Frontend] Delay added to expanded status indicator collapse
open #336
2015-12-11 15:02:10 -08:00
24d28d6ec2 [Frontend] Fixed z-index problem with child-frames
open nem_prototype
open #341
Added discrete z-index definition for frame.child-frame.panel;
2015-12-11 14:47:25 -08:00
43f6981ba1 [Browse] Test navigation when path is not found 2015-12-11 13:21:52 -08:00
b8206b8824 [Browse] Ensure selection at startup
...even when domain object identified by default path is
not found.
2015-12-11 13:18:25 -08:00
5f7f349f29 [Browse] Specify default selection in a constant
https://github.com/nasa/openmctweb/issues/401
2015-12-11 12:31:06 -08:00
ce94db0a4b Merge pull request #415 from nasa/open228b
[Documentation] Tweak spelling / phrasing
2015-12-11 12:08:12 -08:00
0d894a9f39 [Documentation] Tweak spelling / phrasing
* Add spaces to 'Open MCT Web' for consistency
* Use term 'platform' instead of 'framework' for consistency
  with the developer guide
* Avoid the term 'capabilities' (could be ambiguous in the context
  of other documentation)
* Use canonical casing for JSDoc and JavaScript
* Simplify phrasing of first sentence
* Change casing of 'Developer Guide' for consistency with
  other bullets

From review of https://github.com/nasa/openmctweb/pull/412
2015-12-11 11:54:23 -08:00
5ad150a17e Merge pull request #413 from nasa/open411
[Documentation] Fix type declaration
2015-12-11 11:28:38 -08:00
b6acdb12ec Removed superfluous function 2015-12-11 11:13:00 -08:00
604b29096d [Documentation] #228 added inline comment about TOC suppression 2015-12-11 11:13:00 -08:00
6200ceddf8 [Documentation] Add text to main page #228 2015-12-11 11:12:42 -08:00
de88bf94d4 [Documentation] Fix type declaration
Rephrase parameter type to something JSDoc can parse.

https://github.com/nasa/openmctweb/issues/411
2015-12-11 10:51:16 -08:00
0ce19ad75d Disabled context menu for Location items in edit mode, and disabled context menu items for non-creatable objects 2015-12-10 17:39:56 -08:00
b32eb363f1 Fixed edit action and editable view policies for NEM 2015-12-10 16:53:25 -08:00
02e89f9c73 Merge branch 'open320' into nem_prototype 2015-12-10 14:39:34 -08:00
5cc80c737c Updated editable view policies 2015-12-10 14:39:22 -08:00
8c837c5f81 Simplified logic in EditableActionCapability 2015-12-10 14:09:56 -08:00
f96fa33d88 Removed some additional context menu options 2015-12-10 13:49:05 -08:00
67d19f9c5f modified heroku definition for new branch name 2015-12-10 10:28:20 -08:00
ac379dbb3f [New Edit Mode] Create menu still visible when edit mode initiated by pressing create #407 2015-12-10 10:25:38 -08:00
5fd762fea9 Fixed problem with unload warning being shown when it shouldn't 2015-12-09 21:04:22 -08:00
322db5a0f5 Tweaked object creation 2015-12-09 20:57:23 -08:00
708aa7dcba Updated check for edit mode on create 2015-12-09 20:37:15 -08:00
1e7964855a resolved heroku issues finally 2015-12-09 19:58:14 -08:00
a236ba40ba heroku 2015-12-09 19:49:59 -08:00
5981a743ce Grr, fixing heroku 2015-12-09 19:48:22 -08:00
3b22c6ed10 Reverted heroku deployment change 2015-12-09 18:51:23 -08:00
2114066462 Small heroku deploy change 2015-12-09 18:50:56 -08:00
a399b78d2c Fixed JSLint errors 2015-12-09 18:39:57 -08:00
39b3e6c4a9 [Edit Mode] Limit context menu options available for objects in edit mode
[Edit Mode] Edit mode on objects that do not have a view supporting editing should edit properties instead. #320
2015-12-09 18:14:17 -08:00
2145bcf908 Re-enabled plots and scrolling 2015-12-09 17:25:48 -08:00
de256835fd [Edit Mode] Edit mode on objects that do not have a view supporting editing should edit properties instead. #320 2015-12-09 15:51:00 -08:00
2ca414d2a4 [New Edit Mode] Selecting 'Go To Original' from elements pool navigates without prompting user to save changes #396 2015-12-09 15:23:26 -08:00
856c61816c Go to original now shows prompt 2015-12-09 14:08:19 -08:00
8077cdb834 [Clocks/Timers] Make $scope available
...to methods of TimerController
2015-12-09 12:41:29 -08:00
7871af07c4 [Clocks/Timers] Fix parent constructor invocations 2015-12-09 12:40:21 -08:00
714ae3b9dc [Clocks/Timers] Update remaining classes
Complete code style changes for Clocks/Timers.
2015-12-09 12:39:01 -08:00
27fa56d838 [Clocks/Timers] Update code style for controllers 2015-12-09 12:33:11 -08:00
e30a82432d [Clocks/Timers] Update code style for actions
https://github.com/nasa/openmctweb/issues/209
2015-12-09 12:17:32 -08:00
3d346b8906 Merge pull request #393 from nasa/open199f
Review and integrate open199f
2015-12-09 10:18:56 -08:00
3730315388 [Frontend] Fixed hidden Create menu regression error
open #199
open #278
2015-12-09 10:11:44 -08:00
6058e50216 JSLint fixes 2015-12-09 10:04:49 -08:00
49579378dd [New Edit Mode] Fixed positioning of dropped objects #386 2015-12-09 09:51:00 -08:00
19f07aa398 [Duplicate] Add trailing newline 2015-12-08 16:34:36 -08:00
aae8f1575d Disabled drop gesture on browse-object to prevent drop being triggered twice 2015-12-08 16:28:30 -08:00
46f9b31cff [Duplicate] Test rewriting of identifiers 2015-12-08 16:27:46 -08:00
267bcfeb8b [Frontend] Hide Create button when editing
open #199
open #278
Hides Create button when s-status-editing applied;
Adds margin to search-bar input element when
Create button is hidden per above;
2015-12-08 15:54:32 -08:00
e32feb29e2 [Duplicate] Rewrite identifiers in clones
Traverse object models of clones and rewrite domain object
identifiers that have changed during duplication.

Addresses https://github.com/nasa/openmctweb/issues/332
2015-12-08 15:45:45 -08:00
b5c741c911 Merge branch 'master' into open199 2015-12-08 15:42:37 -08:00
773cedddd5 Recompiled css 2015-12-08 15:37:22 -08:00
89a93e2966 Merge remote-tracking branch 'github-open/open384' into open-master 2015-12-08 15:18:21 -08:00
55ea7a285e Merge remote-tracking branch 'origin/open199e' into open199 2015-12-08 15:17:36 -08:00
4419a101d6 [New Edit Mode] #199 Disabled all failing tests 2015-12-08 15:15:54 -08:00
038322e9aa [Layout] Update raw positions on drop
When handling a drop into the layout, store the panel's
new position to the LayoutController's internal table of
raw positions (in addition to writing it to the configuration.)

Avoids https://github.com/nasa/openmctweb/issues/384
2015-12-08 15:08:30 -08:00
4b7287e51e Fixed JSLint errors 2015-12-08 14:51:25 -08:00
6502d36c7a [Frontend] Migrated to s-status-editing
open #199
open #278
Changed CSS to use s-status-editing instead of .active
class;
Refined style defs to explicitly target tree and
search-results children in order to avoid items in
Inspector Elements pool from being designated as
being edited;
Removed {{searchText}} div from input-filter;
2015-12-08 14:16:54 -08:00
4fbf547bfc Corrected merge issues from Master 2015-12-08 14:07:32 -08:00
6cef663db5 [Representation] Add ending newline 2015-12-08 13:43:41 -08:00
b2f5861458 [Representation] Test template prefetcher 2015-12-08 13:29:11 -08:00
f8809ce67f [Representation] Also prefetch containers 2015-12-08 13:06:24 -08:00
3c97eb6014 [Representation] Remove obsolete template definition 2015-12-08 12:59:41 -08:00
3498b0a50a [Representation] Prefetch templates
...to ensure that dialogs et al can be displayed, even
after loss of network connectivity.

https://github.com/nasa/openmctweb/issues/383
2015-12-08 12:59:18 -08:00
18607e9404 Merged from Master 2015-12-07 20:42:09 -08:00
14c5a817a7 [Limits] Test exposure of datum
...which will be used to evaluate limits.
2015-12-07 13:22:40 -08:00
258c5d95e6 [Limits] Test PlotLimitTracker 2015-12-07 12:58:56 -08:00
30a8ba5c11 [Limits] Test limit usage in PlotController
WTD-1337
2015-12-07 12:45:40 -08:00
33c372765f [Limits] Test limit usage from Fixed Position
WTD-1337
2015-12-07 12:33:29 -08:00
ed7e0d8b0a Merge pull request #376 from nasa/open169b
Review and integrate open169b
2015-12-04 16:29:32 -08:00
f3828ba516 [Frontend] Adjusted desktop breakpoint
open #169
2015-12-04 15:55:32 -08:00
2a48c25453 Merge pull request #375 from nasa/open137
Show warning for unsupported browsers
2015-12-04 15:43:23 -08:00
096da0cb94 Merge pull request #347 from nasa/open259b
[Time Conductor] Don't update model while typing (v2)
2015-12-04 15:34:03 -08:00
ca8a07e1ae Merge remote-tracking branch 'github/open169a' into open169b 2015-12-04 15:33:49 -08:00
c02f965460 [Time Conductor] Remove unused property
...from structure passed into date-time field. Note in
code review, https://github.com/nasa/openmctweb/pull/347
2015-12-04 15:19:34 -08:00
5f440bb6de Merge pull request #372 from nasa/open58_notification
[Persistence] Errors in persistence (after creating/modifying objects) should be visible to user #58
2015-12-04 15:15:29 -08:00
fc729279ec [Common UI] Add spec for unsupported browser warning 2015-12-04 15:11:40 -08:00
dd0f9ab74e Merge pull request #349 from nasa/open1573
[Documentation] Document test process
2015-12-04 14:34:59 -08:00
d2a4a85e04 [Common UI] Test agentService.isBrowser 2015-12-04 14:12:00 -08:00
37890280ae [Common UI] Only show warning for unsupported browsers 2015-12-04 14:08:42 -08:00
a6ceae4045 [Common UI] Show warning at startup
Show a warning about unsupported browsers at startup,
https://github.com/nasa/openmctweb/issues/137
2015-12-04 13:53:45 -08:00
3447e735dc Merge pull request #362 from nasa/open346
[Entanglement] Add "Set Primary Location" action
2015-12-04 13:48:27 -08:00
989c937ce1 [Documentation] Fix typo in HTML entity 2015-12-04 13:29:19 -08:00
e0608ddee0 [Documentation] Simplify Author Checklist
...as discussed in https://github.com/nasa/openmctweb/pull/349
2015-12-04 13:25:20 -08:00
b35224061f Merge pull request #374 from nasa/open305
[Edit] Return a promise from editable persistence capability
2015-12-04 12:44:08 -08:00
b25576aed8 [Documentation] Sketch initial test procedures
Sketch initial test procedures; add explanation on the difference between
sprint and release testing.
2015-12-04 12:20:05 -08:00
d5f054e328 [Edit] Test return type
...from the edit-mode-wrapped persistence capability.
2015-12-04 11:20:19 -08:00
eb4959cf49 [persistence] #58 renamed alertService to notificationService 2015-12-04 10:45:49 -08:00
cce415fc51 Merge pull request #371 from nasa/open338
#338 [Copy] Copying an object with telemetry from the data dictionary results in a number of unknown objects in copied tree
2015-12-04 09:46:24 -08:00
00f96c314a [persistence] #58 added tests for notification on persistence error 2015-12-03 20:32:03 -08:00
fefd27162c [Entanglement] Allow cross-space linking
Allow links across spaces; only disallow move or copy.
Addresses WTD-1587
2015-12-03 20:32:03 -08:00
ef0a918b59 Merge branch 'open338' into rems_data 2015-12-03 19:02:28 -08:00
b388c76e45 [copy] #338 Modified check to set object location, added setLocation flag, Removed unused parameter 2015-12-03 19:00:44 -08:00
5fd1f6a055 Merge branch 'open338' into rems_data 2015-12-03 18:57:07 -08:00
d45c5e2ffb Added 'setLocation' flag 2015-12-03 18:56:59 -08:00
1fef6b30b7 Merge branch 'open338' into rems_data 2015-12-03 18:41:50 -08:00
461cc59b3e #338 changed isLink check to check whether location is set 2015-12-03 18:41:13 -08:00
aaeaf3a096 Merge pull request #370 from nasa/open369
[Performance] Fix usages of $interval
2015-12-03 18:31:17 -08:00
c038ccd0d2 Removed unused parameter 2015-12-03 18:24:38 -08:00
57efe4e0d1 Removed UUID reference 2015-12-03 17:10:28 -08:00
dd4dbc9326 [Performance] Update spec for ElasticIndicator
...to reflect changes in  call to reduce digest frequency.
2015-12-03 16:45:30 -08:00
6aa77ff468 #338 fixed failing test 2015-12-03 16:41:06 -08:00
f8099550bd [Copy] #338 updated code style in CreationPolicy 2015-12-03 16:22:45 -08:00
96249e6bcc Removed redundant line in test spec 2015-12-03 15:51:27 -08:00
6e391098a3 Fixed jslint error 2015-12-03 15:32:26 -08:00
e16b156d1d Merge branch 'open338' into rems_data 2015-12-03 15:28:25 -08:00
baec0f9719 #338 added new test case for creation of links when object type is not createable 2015-12-03 15:28:07 -08:00
1f6284257e Merge branch 'open338' into rems_data 2015-12-03 14:48:02 -08:00
6aab9f4e34 Added test for linking 2015-12-03 14:47:42 -08:00
1bf73935e4 [Performance] Add test case for mct-split-pane 2015-12-03 13:56:57 -08:00
49e51d0a62 [Performance] Update mct-chart spec 2015-12-03 13:39:37 -08:00
3e7bc2f37f [Performance] Don't invoke apply from indicator
Don't invoke apply while polling from ElasticSearch
indicator; let the corresponding  request trigger
this.
2015-12-03 13:29:54 -08:00
0f56fd2561 [Performance] Only invoke apply on size changes
...as detected from mct-chart.
2015-12-03 13:28:32 -08:00
9f0114eb39 [Performance] Don't invoke apply from MCTSplitPane
Don't invoke apply on every  from MCTSplitPane
(this had been intended behavior, but argument was misplaced.)
2015-12-03 13:27:59 -08:00
4b82893c36 [Performance] Improve digests/sec indication
Don't let past digest counts bias current rate shown;
https://github.com/nasa/openmctweb/issues/369
2015-12-03 13:27:19 -08:00
734e979c94 #338 Fixed failing tests after refactor 2015-12-03 12:49:54 -08:00
983973843e Merge pull request #363 from nasa/open302
[Representation] Check full path when comparing domain objects
2015-12-03 10:01:35 -08:00
16bf800257 Merge branch 'open338' into rems_data 2015-12-02 19:19:08 -08:00
3b427c31a2 Fixed error with not properly referenced 2015-12-02 19:18:50 -08:00
7fad2f6f2e Merge branch 'open338' into rems_data 2015-12-02 19:10:33 -08:00
cee0ecf0ef Removed use of composition and mutation because they trigger the search indexer too early and it tries to retrieve objects that have not been persisted yet 2015-12-02 19:10:10 -08:00
8e3c5db3bf #338 fixed incorrect 'allow' function specification in CreationPolicy 2015-12-02 14:14:04 -08:00
11d8daf3ed #338 Fixed incorrect specification of CreationPolicy in bundle.json 2015-12-02 14:07:08 -08:00
9953e16415 #338 Copy now using target persistence space 2015-12-02 14:06:22 -08:00
fe600de0f7 [Copy] #338 added CreationPolicy and appropriate tests, amended CreateActionProvider, and updated existing tests 2015-12-02 11:28:49 -08:00
386f1f20ff [Representation] Test switching between links
Add test case to verify that representation gets refreshed
when switching among two linked instances of the same
domain object.
2015-12-02 10:49:18 -08:00
5e07951892 [Representation] Handle missing context
Handle missing context when generating an ID path;
this is missing in the root object.
2015-12-02 10:23:11 -08:00
2514e44083 [Representation] Check full ID path
...when determining if a representation needs to be
refreshed. Avoids representations becoming stale
when switching or navigating among linked instances
of the same domain object.

https://github.com/nasa/openmctweb/issues/302
2015-12-02 10:21:00 -08:00
20d9c7158e Added jslint es5 mode 2015-12-01 22:40:50 -08:00
d8e319ebf8 Fixing jslint errors 2015-12-01 22:36:23 -08:00
a39cbbd917 Fixing jslint errors 2015-12-01 22:35:28 -08:00
8df27a1c05 Fixing jslint errors 2015-12-01 22:34:26 -08:00
26cf9c14f4 [Persistence] Errors in persistence (after creating/modifying objects) should be visible to user #58 2015-12-01 22:03:53 -08:00
03edd26e17 [Edit] Return promise from editable persistence
https://github.com/nasa/openmctweb/issues/305
2015-12-01 16:45:08 -08:00
571f6d183a [Entanglement] Expose Set Primary Location 2015-12-01 16:26:19 -08:00
1292e39c46 [Entanglement] Implement Set Primary Location 2015-12-01 16:20:30 -08:00
6fe3f82fb1 [Entanglement] Add test for Set Primary Location
https://github.com/nasa/openmctweb/issues/346
2015-12-01 15:59:37 -08:00
4798cb3e7c Merge pull request #360 from nasa/open283
Review and integrate open283
2015-12-01 13:21:51 -08:00
73ca30e654 Merged changes from Master 2015-12-01 10:44:42 -08:00
5fd55939a9 [Frontend] Fixed overflow problem that was hiding toolbar menu
open #199
open #283
Tweaks to .tool-bar layout to handle very
narrow widths;
2015-12-01 09:12:33 -08:00
472f6fefd4 Merge branch 'open199' of https://github.com/nasa/openmctweb into open199 2015-11-30 17:59:13 -08:00
4f3c9f270b [New Edit Mode Prototype] Hide edit button when in edit mode #350. - Modified edit policy to hide edit button when in edit mode 2015-11-30 17:58:58 -08:00
833ef82e67 Modified edit policy to hide edit button when in edit mode 2015-11-30 17:45:46 -08:00
da8fb99e82 [Frontend] Fixing bad breakpoints for tablet vs. desktop
open #169
2015-11-30 15:57:45 -08:00
c8d77bc2db [Entanglement] Allow cross-space linking
Allow links across spaces; only disallow move or copy.
Addresses WTD-1587
2015-11-30 15:27:10 -08:00
acb7d4b807 renamed variable 2015-11-30 09:35:44 -08:00
6fb6f54cfa Fixed objects being dropped twice in fixed layout 2015-11-27 15:21:24 -08:00
b5e52fce75 [Time Conductor] Remove redundant test block 2015-11-27 14:48:48 -08:00
3afcb52934 [Time Conductor] Use ng-blur from template 2015-11-27 14:35:51 -08:00
677b0cffec [Time Conductor] Test form isolation
Verify that form inputs are ignored until some explicit trigger
2015-11-27 14:33:35 -08:00
248bc68f0d [Time Conductor] Test restoration of old values
...and clarify name of the function in scope which does this.
2015-11-27 14:23:30 -08:00
9a42cb4f7e Merge branch 'open277' into open199 2015-11-27 14:16:59 -08:00
b573b3a681 Amended change so that context menu only suppressed on navigation menu 2015-11-27 14:16:37 -08:00
02050fa3ef [Time Conductor] Document ng-blur on mct-control 2015-11-27 14:02:16 -08:00
6558461fda Reverted changes after refactor 2015-11-27 13:05:55 -08:00
4b23e3fbcb Refactored changes to ContextMenuGesture.js 2015-11-27 13:02:19 -08:00
57d23c3696 [Time Conductor] Add missing license header 2015-11-27 12:37:51 -08:00
8babfc5ca9 [Time Conductor] Propogate blur from text field 2015-11-27 12:37:23 -08:00
271b5d1a73 [Time Conductor] Test choices via picker
...to ensure that they trigger blur events. Also, test changes
via text entry to ensure that they don't (the template is responsible
for this.)
2015-11-27 12:36:40 -08:00
7d4e7a0925 [Time Conductor] Allow ng-blur on mct-controls 2015-11-27 12:29:53 -08:00
92f5d5f190 [Documentation] Replace redundant docs with link 2015-11-27 12:00:25 -08:00
1731b985fc [Documentation] Fix broken markdown tag 2015-11-27 11:30:55 -08:00
bd4590ad9d [Documentation] Update terminology
Update terminology in Development Cycle to reflect
descriptions in Test Plan.
2015-11-27 11:22:11 -08:00
55fc60ec82 [Documentation] Describe long-duration testing 2015-11-27 11:15:13 -08:00
ab075e9ad8 [Documentation] Complete test plan 2015-11-27 11:08:47 -08:00
3ac1710d83 [Documentation] Document evaluation criteria
...for per-release and per-sprint testing. WTD-1573
2015-11-27 10:58:16 -08:00
730878938e [Documentation] Document pre-merge testing 2015-11-27 10:39:25 -08:00
3fd4304de1 Merge pull request #345 from nasa/open32
[Layout] Layout rebuilds after resize/reposition #32
2015-11-27 09:59:01 -08:00
db7224486c [Layout] Layout rebuilds after resize/reposition - Fixed potential race condition #32 2015-11-25 19:11:29 -08:00
424953c894 [Layout] Layout rebuilds after resize/reposition #32
- Refactored layoutPanels member function, and updated tests.
- Changed $scope.$watch to $scope.$watchCollection
2015-11-25 15:32:33 -08:00
6d0f3c7faa [Layout] Layout rebuilds after resize/reposition #32
Refactored layoutPanels method

Fixed JSLint errors

fixed failing tests
2015-11-25 15:30:33 -08:00
988323bdbd merged Open32 2015-11-25 14:59:47 -08:00
9eb8158c4e [Edit Mode] Disallow context menu actions on tree items during edit mode. #277 2015-11-25 14:44:31 -08:00
434a52ded3 [Build] Bump version number
...to begin work for new sprint.
2015-11-25 14:11:53 -08:00
2ec906e2d4 [Build] Remove snapshot status
Remove snapshot status in preparation to bump version number
at end of sprint Banks.
2015-11-25 14:10:48 -08:00
405daf36b2 [API] Add proposals about actions 2015-11-25 12:45:22 -08:00
75d4be290c Merge branch 'open278-proto' into open199-merge 2015-11-25 11:27:08 -08:00
3b9cd5f1ac Merge branch 'open279-proto' into open199-merge 2015-11-25 11:25:00 -08:00
ffff13205a [Time Conductor] Check for value changes
...on watches triggered from the picker. Only want to
trigger a submit when this actually constitutes a change from
the datetime field's underlying model (to avoid triggering
form submission when datetime picker is initialized.)
2015-11-25 11:21:51 -08:00
64a7647ec3 #279 Added search filter support to elements pool 2015-11-25 11:20:58 -08:00
16efd85dfc [Time Conductor] Submit immediately on picker changes 2015-11-25 11:16:31 -08:00
1ef09ffbdd [Time Conductor] Restore last valid values
Restore last valid values on blur, in a date-time entry field.
2015-11-25 11:12:41 -08:00
976ecce075 [Time Conductor] Update model on submit/blur 2015-11-25 11:09:11 -08:00
87a51a9eb3 [Time Conductor] Listen for blur, submit
https://github.com/nasa/openmctweb/issues/259
2015-11-25 11:02:03 -08:00
9ed10ba9da Merge branch 'open279-proto' into open199-merge 2015-11-25 10:47:21 -08:00
c211f413aa [New Edit Mode] Add Elements pool to New Edit Mode #279 2015-11-25 10:40:37 -08:00
268a2c2427 Merged from master 2015-11-25 09:04:11 -08:00
c84de00e80 [Layout] Layout rebuilds after resize/reposition #32 2015-11-24 21:51:10 -08:00
91997ced01 [Documentation] Define test levels 2015-11-24 17:08:59 -08:00
7a4be9e67e [Documentation] Add test procedure template 2015-11-24 15:56:02 -08:00
eb942b0bf7 [Documentation] Intermediary commit
Begin adding test plan, procedures. WTD-1573.
2015-11-24 13:08:59 -08:00
1cf23c7ad6 [Documentation] Rename development cycle
...as it will no longer be the index of the process
category as information about testing is added.
2015-11-24 10:57:52 -08:00
15ec9df538 Merge pull request #327 from nasa/open208b
[Timelines] Bring over CSS
2015-11-23 10:38:02 -08:00
d6e2895666 Merge pull request #257 from nasa/open245b
[Persistence] Support multiple persistence spaces
2015-11-21 07:13:54 -08:00
7974ffdda2 Merge remote-tracking branch 'github/master' into open245b
...in preparation to complete merge nasa/openmctweb#257

Conflicts:
	platform/entanglement/src/actions/CopyAction.js
	platform/entanglement/src/actions/LinkAction.js
	platform/entanglement/src/actions/MoveAction.js
2015-11-21 07:05:51 -08:00
d5858622ba [Persistence] Fix grammar in JSDoc
...and add some explanation of METHOD_DEFAULTS.
2015-11-21 06:59:12 -08:00
9656e09066 [Documentation] Clarify identifier syntax
...in plain English, for the humans.

Per code review in nasa/openmctweb#257
2015-11-21 06:52:19 -08:00
096fee8b6d Merge remote-tracking branch 'github/master' into open208b
Conflicts:
	platform/commonUI/themes/espresso/res/css/theme-espresso.css
	platform/commonUI/themes/snow/res/css/theme-snow.css
2015-11-21 06:42:45 -08:00
0635e7c38e [Timeline] Disambiguate datetime control
Timeline uses a custom date-time control on creation;
use a distinct key for this to avoid a naming collision
with platform's datetime. Addresses abnormal behavior
identified in nasa/openmctweb#208
2015-11-20 17:26:43 -08:00
845b1dcd6f Merge pull request #321 from nasa/open169
Review and integrate open169
2015-11-20 17:13:39 -08:00
2e959e8503 Revert "[Mobile] Deploy via CircleCI"
This reverts commit 49b3d67272.
2015-11-20 17:09:37 -08:00
e6c9cbf0cd [Persistence] Clarify JSDoc
Per code review feedback, nasa/openmctweb#257
2015-11-20 17:08:39 -08:00
fd3059b380 [Frontend] Final cleanups, tweaks; Refactored s-icon-btn
open #208
Unit tested in both themes;
.s-icon-btn refactored slightly to focus on usage
as an icon-only element, removed overlap designations
with .s-btn in markup;
Colors normalized for theming;
Code cleanup;
2015-11-20 16:47:04 -08:00
5a7349117a [Frontend] Cleanups to Timeline tabular label elements
open #208
Colors normalized for theming;
2015-11-20 16:27:26 -08:00
50134bbc7f [Frontend] Theming and cleanups in Clocks and Timers
open #208
Also converted timer to use flexbox layout;
2015-11-20 16:19:27 -08:00
3854df27d8 [Frontend] Styling on Timeline zoom buttons
open #208
Fixed in both themes;
2015-11-20 15:42:08 -08:00
fc53dbd8a4 [Frontend] Themes added to Timelines
open #208
Espresso and Snow now supported; bulk of
work done except for minor cleanups, like zoom
buttons; Dragging not working currently in Timelines;
2015-11-20 15:23:08 -08:00
7849803a5d Fixed cancel and drop-initiated edit 2015-11-20 14:00:29 -08:00
0263cf5407 Fixed cancel and drop-initiated edit 2015-11-20 13:59:32 -08:00
fb0ba0cff9 Merge pull request #323 from nasa/open251
Review and integrate open251
2015-11-20 13:30:24 -08:00
573e5608fc Merge pull request #319 from nasa/open-status-tracking
[Status] Add status tracking
2015-11-20 13:18:09 -08:00
37a7c2b1df Merge pull request #309 from nasa/open308
[Workers] Allow web workers to be shared
2015-11-20 11:40:26 -08:00
4f0f9e4104 Merge branch 'open-status-tracking' into open278 2015-11-20 11:28:06 -08:00
e6054b8252 #287 - modified to use s-status-editing, but CSS needed 2015-11-20 11:23:34 -08:00
38274728f6 [Workers] Update JSDoc
...per review feedback, nasa/openmctweb#309
2015-11-20 11:12:29 -08:00
49b3d67272 [Mobile] Deploy via CircleCI
...to enable testing of changes for nasa/openmctweb#169.
2015-11-20 11:05:25 -08:00
a864c172d5 [Edit Mode Prototype] #278 Added visual indication of edit 2015-11-20 10:07:58 -08:00
400b992ec3 [Status] Revise API
Change method names, add a getter to status capability;
per code review feedback, nasa/openmctweb#319.
2015-11-20 09:46:08 -08:00
de59f191b8 [Frontend] Relocating files
open #208
Moving initial files into new positions, based
on Victor's work in #242;
2015-11-20 09:14:07 -08:00
3d3b250536 Merge remote-tracking branch 'github/master' into open208 2015-11-20 08:38:19 -08:00
32815d8427 [Frontend] Markup and CSS fixes
open #251
Fixed markup and CSS to remove erroneously
applied "select" class;
Modified .select to not use overflow: hidden;
Better positioning for *-options elements;
2015-11-19 18:50:10 -08:00
10a44c026c [Edit Mode] Visual indication of object being edited #278 2015-11-19 18:45:18 -08:00
3e25d17702 [Mobile / Frontend] Modified media query device detection approach
open #169
Significant simplification of media query device detection
to focus on width only; tablet max-width and desktop
min-width modified to create gapless ranges;
2015-11-19 15:16:21 -08:00
9631d95a52 Merge remote-tracking branch 'origin/open-status-tracking' into open278-proto 2015-11-19 15:13:10 -08:00
4ea757faa5 Adding support for object status 2015-11-19 15:12:43 -08:00
b5d1118a3f [Status] Document status capability
...in the developer guide. Includes a table for listing
status names and classes, per code review feedback,
nasa/openmctweb#319.
2015-11-19 15:12:03 -08:00
50d83eaffb Merge remote-tracking branch 'origin/open278' into open278-proto 2015-11-19 14:50:01 -08:00
30e6980dc6 Merge branch 'master' into open199 2015-11-19 14:29:32 -08:00
5b9e43f8ff [Status] Test platform/status 2015-11-19 14:22:44 -08:00
19d2970e0e Merge in "create button initiates edit mode" 2015-11-19 14:13:28 -08:00
a04b3f8a4b enabled toolbar in edit mode 2015-11-19 14:01:38 -08:00
3ffa6f70aa [Status] Add empty specs 2015-11-19 13:47:39 -08:00
0d07c3c289 [Status] Clean up classes when destroyed 2015-11-19 13:44:06 -08:00
29fdb6d641 [Status] Add JSDoc 2015-11-19 13:43:18 -08:00
b06a38da2f Fixed incorrect case 2015-11-19 13:17:14 -08:00
f45e236281 #286 Fixed issues with composition not surviving through create wizard 2015-11-19 13:11:01 -08:00
0fa6cbfc18 [API] Propose contextual DI 2015-11-19 13:02:03 -08:00
2e2b18eaa5 [Edit Mode Prototype] Create button initiates edit-mode immediately #286 2015-11-19 10:33:44 -08:00
ee86209166 Merge branch 'open278' of https://github.com/nasa/openmctweb into open278 2015-11-18 17:29:18 -08:00
9f5729dbbc Merge remote-tracking branch 'github/master' into open278 2015-11-18 17:28:31 -08:00
de9e41818b [Frontend] File cleanup
open #199
open #278
Comments and empty CSS classes removed;
2015-11-18 17:27:56 -08:00
39d007470a [Status] Active platform/status bundle 2015-11-18 17:23:31 -08:00
285c8cbd1e [Status] Add status tracking
Add status tracking for domain objects, and decoration of
representations with status-related classes. Supports WTD-1575
by allowing pending state of taxonomy to be handled by
status tracking and custom CSS, instead of by overriding platform
templates.
2015-11-18 17:22:38 -08:00
3478f9d861 [Frontend] File cleanup
open #199
open #279
Comments and empty CSS classes removed;
2015-11-18 17:15:13 -08:00
558ad94b91 [Frontend] Synced theme constants
open #199
open #279
Theme constants files needed to be synced
to facilitate more efficient comparison;
2015-11-18 17:06:18 -08:00
c2e26b3555 [Frontend] Fixed magnify glass in search input
open #199
open #278
Fixed z-indexing problem in :before elements
in search input (magnify glass, etc.);
2015-11-18 16:48:13 -08:00
c5c166c790 [Frontend] Refinements to active edit styles
open #199
open #278
Picking up missed rendered CSS;
2015-11-18 16:47:36 -08:00
cc7df05a43 [Frontend] Refinements to active edit styles
open #199
open #278
Styling finalized for tree/search items;
Mods to pulse mixins;
Colors for both themes finessed and finalized;
2015-11-18 16:46:56 -08:00
a7f277b0d2 Merge pull request #317 from nasa/open316
[bug] TypeImpl.getInitialmodel should always return a fresh (ie. cloned) model.
2015-11-18 12:21:23 -08:00
5ced8e655d [bug] #317 Added jsdoc note about performance 2015-11-18 12:14:00 -08:00
4de7b7dfb5 Merge pull request #288 from nasa/open218
[Plot] Support domain/range switching
2015-11-18 11:54:13 -08:00
a9518e9890 [Telemetry] Add missing JSDoc
...for new parameters added to support domain/range switching
in plots, per code review on nasa/openmctweb#288
2015-11-18 10:50:32 -08:00
4ed35cddde Merge pull request #272 from nasa/open120
[Actions] Avoid suppression of context menus
2015-11-17 16:27:17 -08:00
b9cd26aaf6 [Frontend] Styling for tree item when its being edited
open #278
Work in progress
2015-11-17 16:04:41 -08:00
5882278f98 Bringing in latest NEM work from open199-meet-open279 2015-11-17 15:26:11 -08:00
40b21e35fd Fixed jslint error 2015-11-17 15:03:17 -08:00
2251a0c1e9 https://github.com/nasa/openmctweb/issues/287 2015-11-17 15:01:13 -08:00
3a36389815 Fixed test 2015-11-17 14:45:10 -08:00
ba669f1395 Merge branch 'open316' into open199 2015-11-17 14:31:06 -08:00
b27b60aedc Merge branch 'master' into open199 2015-11-17 14:30:57 -08:00
606667eb4d [bug] TypeImpl.getInitialmodel should always return a fresh (ie. cloned) model. #316 2015-11-17 14:30:34 -08:00
90c06cfc97 [Frontend] Style tweaks for edit mode
open #199
Added bg color in edit area when edit mode
is active; Added to-do for ng-init in
object-inspector.html;
Ready for integration into open199;
2015-11-17 12:44:14 -08:00
ec4c5864dc [Frontend] Style tweaks for edit mode
open #199
Added bg color in edit area when edit mode
is active;
2015-11-17 12:35:44 -08:00
3ff275c853 [Frontend] Sanding and shimming styles for Elements pool
open #199
open #279
Also tweaked bg color of text inputs;
2015-11-17 12:20:14 -08:00
cd3bdf4f81 Change to navigate by location change 2015-11-16 17:45:31 -08:00
a8d563975a [Frontend] Refinements to Inspector elements, search inputs
open #199
open #279
Treeview indent removed;
Significant refactoring of search classes to generalize
approach to search inputs;
2015-11-16 17:20:15 -08:00
ef5a26dfcc [Documentation] Specify default value
...for shared property of workers.
2015-11-16 16:16:22 -08:00
966e993c5d [Frontend] Merge work in open279 into open199
open #199
open #279
Fixed margin problem in mobile with
object-browse-bar element;
2015-11-16 15:20:43 -08:00
8363302caf [Workers] Allow web workers to be shared
Support an additional flag in the  extension category
such that SharedWorkers may be used. nasa/openmctweb#308.
2015-11-16 15:16:44 -08:00
9b5d894949 [Frontend] Merge work in open279 into open199
open #199
open #279
Last commit didn't fully take...
Integrated inspector changes from open279 into
new edit mode work from open199; _layout.scss
had a bit of difficult conflict resolution but seems
good at this point...
2015-11-16 15:08:22 -08:00
5dd15e3b20 [Frontend] Merge work in open279 into open199
open #199
open #279
Integrated inspector changes from open279 into
new edit mode work from open199; _layout.scss
had a bit of difficult conflict resolution but seems
good at this point...
2015-11-16 15:05:44 -08:00
d961b41253 removed static buttons 2015-11-12 17:18:41 -08:00
564a822423 Fixed saving 2015-11-12 17:05:43 -08:00
2b2ac0b0d9 Merge pull request #299 from nasa/open297
[Time Conductor] Fix date picker toggles
2015-11-12 16:52:35 -08:00
f9a7ca85ac Merge pull request #273 from nasa/open231
[Core] Catch errors from listeners in topic
2015-11-12 16:51:50 -08:00
46b110e12f [Common UI] Add note about TODO item
Add note about temporary work around, per code review
from nasa/openmctweb#299
2015-11-12 16:38:01 -08:00
b7eb9491cb Merge pull request #275 from nasa/open271
[Layout] Enforce minimum size on drop
2015-11-12 16:10:50 -08:00
a92d13c10f Merge pull request #294 from nasa/open223
[Documentation] Document process
2015-11-12 15:08:03 -08:00
4ad007f882 [Common UI] Add z-index to popups
Temporary workaround for nasa/openmctweb#298
2015-11-12 14:52:41 -08:00
9f2303face [Time Conductor] Fix date picker toggle
nasa/openmctweb#297; avoid flag toggled to display date-time
picker becoming lost in a child scope.
2015-11-12 14:49:19 -08:00
51abd1fadf Merge branch 'open199d' into open199 2015-11-12 14:23:15 -08:00
1ceb6d2d96 [Frontend] Fixed scrolling view
open #199
open #293
open #201
Removed fixed-header class from table markup;
(cherry picked from commit 6c4bdca)
2015-11-12 13:24:28 -08:00
99512f41b9 [Documentation] Handle review feedback
Fix spelling error, add link, per code review nasa/openmctweb#294
2015-11-12 12:23:38 -08:00
93171230e3 restoring toolbar 2015-11-12 11:13:54 -08:00
5fdef59f3b Merge branch 'open199d' into open199c 2015-11-12 10:23:36 -08:00
16c3229a84 Telemetry Panels now created correctly 2015-11-12 10:22:37 -08:00
49a5ac833b [Documentation] Use consistent row headers 2015-11-12 09:57:06 -08:00
646df81874 [Documentation] Add sprint calendars
...and fix quotes copied from original sketch of document.
2015-11-12 09:52:47 -08:00
1058648e76 [Frontend] Fixed plot display
open #199
open #293
Added .abs to plot.html to allow plot
to layout properly when viewed in
main view area;
Removed .test class from time-controller;
2015-11-12 09:06:17 -08:00
5b325a9698 Merge remote-tracking branch 'github/open199c' into open199d 2015-11-12 08:06:12 -08:00
f0e293a513 Virtual panels working again with refactored code 2015-11-11 14:59:00 -08:00
5f8d13672f Reverted model modified hack 2015-11-11 11:58:15 -08:00
4c0a79116a Added refresh check for editability 2015-11-11 11:52:30 -08:00
aa5734d023 merged 2015-11-11 10:21:17 -08:00
ba8c2b8468 Fixed buttons not appearing on edit mode click 2015-11-10 22:10:43 -08:00
5a2f073975 commented out extraeneous span 2015-11-10 20:43:31 -08:00
1d0af0b3b6 Drop Gesture 2015-11-10 20:27:04 -08:00
6d2fe9d7eb [Frontend] Misc CSS and markup updates, converting to flex
open #199
IN-PROGRESS
IMPORTANT: plots are not laying out correctly,
need to figure out why
2015-11-10 18:33:58 -08:00
c5736cafb1 [Documentation] Add process documentation
Bring over process documentation (except for calendar),
nasa/openmctweb#223.
2015-11-10 17:27:43 -08:00
08ecf00916 [Frontend] Misc CSS updates to clean up layout
open #199
IN-PROGRESS
Testing with Time Controller visible;
2015-11-10 17:14:12 -08:00
9f3c353ab4 [Frontend] Updated markup to use latest flexbox classes
open #199
2015-11-10 16:30:49 -08:00
e3cac49c4b Fixed UUID import 2015-11-10 16:26:04 -08:00
93d969ad67 [Plot] Add tests
...to verify that data is requeried when user changes
domain or range selection.
2015-11-10 16:17:43 -08:00
59ea2ea361 Grabbing recompiled CSS files 2015-11-10 16:14:34 -08:00
608df8f7b8 Merging in latest github master; resolved conflicts 2015-11-10 16:13:46 -08:00
7dc6f553ac [Plot] Expose alternate domain values correctly
...from example telemetry (sine wave generator), to support
testing of switching among domains within plot.
2015-11-10 16:12:36 -08:00
b30e72081c [Plot] Update domain format
...on change in user's domain selection.
2015-11-10 16:12:16 -08:00
d60bf94501 [Plot] Remove unnecessary fallback 2015-11-10 16:03:42 -08:00
a88fadcb49 [Plot] Allow lookup of alternate ranges 2015-11-10 16:02:18 -08:00
7264a711a3 Merge pull request #274 from nasa/open250
Review and integrate open250
2015-11-10 15:20:06 -08:00
ae7a1618e8 [Plot] Listen for domain/range changes
nasa/openmctweb#218
2015-11-10 15:16:47 -08:00
d6d95fed19 [Code style] Cleaned out comments
open #250
open #274
scss, html scoured for commented
dead code, leftover TO-DOs and
other unnecessary comments;
2015-11-10 15:12:09 -08:00
d712a79ba4 [Frontend] Allow Inspector to utilize split pane during editing
open #279
IN-PROGRESS
Split pane markup added to object-inspector.html;
Tweaks to layout CSS;
2015-11-10 14:40:14 -08:00
04ce2f985a [Persistence] Add JSDoc
Add JSDoc to classes added/modified to support multiple persistence
spaces, nasa/openmctweb#245.
2015-11-10 14:16:07 -08:00
a14f30c03c [Persistence] Test PersistenceAggregator 2015-11-10 13:43:22 -08:00
bd85392b54 [Persistence] Test cross-space policy
Verify that move/copy/link across spaces is disallowed.
2015-11-10 13:29:12 -08:00
7c427e0b6e [Persistence] Test IdentifierProvider 2015-11-10 13:15:24 -08:00
6cf8335f31 [Persistence] Test Identifier parsing
...and add empty spec for IdentifierProvider
2015-11-10 13:11:21 -08:00
647a1403d0 [Persistence] Update developer guide
Replay changes to developer guide regarding identifier syntax
and persistence spaces.
2015-11-10 13:01:32 -08:00
1d9b8f34e2 Merge remote-tracking branch 'github/master' into open245b
...to resolve merge conflicts for pull request for
nasa/openmctweb#245

Conflicts:
	docs/src/guide/index.md
2015-11-10 12:56:11 -08:00
adf119007b [Persistence] Test validator
Exercise the validation function provided by move/copy/link
actions when prompting for a location with a dialog.
2015-11-10 12:46:58 -08:00
7114e9b150 [Persistence] Update move/copy/link specs
...to reflect re-consultation of policyService when the action
context changes due to dialog input.
2015-11-10 12:40:52 -08:00
76c1f5bfe9 [Persistence] Update spec for instantiate
...to reflect usage of identifierService.
2015-11-10 12:34:54 -08:00
33f88d30ed [Persistence] Update bundle definition
...to reflect dependency on identifierService to interpret an
object's persistence space based on its identifier.
2015-11-10 12:34:30 -08:00
ffdcbece56 [Persistence] Update failing spec
...to reflect changes to the persistence capability, utilizing the
identifierService for consistent interpretation of spaces by id.
2015-11-10 12:33:52 -08:00
44eb723efb [Persistence] Update failing spec
...for instantiation capability, to reflect usage of identifier
parser in determining which space an object should belong to.
2015-11-10 12:26:59 -08:00
689f80bb23 [Persistence] Use identifierService from persistence
User identifierService from the persistence capability, for
consistent interpretation of spaces associated with domain
object identifiers.
2015-11-10 12:21:53 -08:00
a2db98d275 [Persistence] Update failing spec
...to reflect changes to PersistedModelProvider
2015-11-10 12:12:11 -08:00
49b983cd3a [Persistence] Fix cross-space policy
Fix logic in cross-space policy; only disallow when a move, copy
or link would really cross spaces.
2015-11-10 10:57:48 -08:00
ad60b9225e [Persistence] Clean up instantiation
Fix typo to correctly reuse defined identifiers, remove
unused dependency of instantiation capability.
2015-11-10 10:53:48 -08:00
0c096db8bd [Persistence] Suppress Move/Copy/Link
Disallow move/copy/link when crossing persistence spaces,
nasa/openmctweb#245
2015-11-10 10:44:21 -08:00
fdf6148811 [Layout] Enforce minimum size on drop
Addresses nasa/openmctweb#271, ensuring frames in a layout
are not too tiny to use, even if the grid size is small.
2015-11-09 17:58:20 -08:00
62e7adc0b0 Merge pull request #269 from nasa/open220
[Documentation] Fix broken links and strange characters in Developer Guide
2015-11-09 17:30:57 -08:00
72e0304fc0 [Merge] Safety merge-in of latest master
open #250
2015-11-09 17:19:02 -08:00
e1110a2bc4 [Frontend] Fixed Create menu in mobile
open #250
open #157
Fixed CSS selector that wasn't properly
targeting the Create menu in a mobile
context;
2015-11-09 17:14:59 -08:00
7172c45404 [Documentation] #220 Fix broken links and strange characters in Developer Guide 2015-11-09 17:11:18 -08:00
d8ced8f635 [Frontend] Hide/show Create button in mobile
open #250
open #157
Create button now hidden by default in mobile via
usage of CSS; can be re-displayed by including
'example/mobile' bundle;
2015-11-09 17:10:57 -08:00
e3e44f74d6 [Topic] Catch errors from listeners 2015-11-09 16:55:22 -08:00
acdd9622d2 [Topic] Add test case
...which specifies desired behavior for nasa/openmctweb#231.
2015-11-09 16:51:39 -08:00
2866574dc0 [Actions] Define applicability
Define applicability of Move/Copy/Link using appliesTo, to avoid
errors being thrown due to lack of context during instantiation.
Addresses immediate cause of nasa/openmctweb#120.
2015-11-09 16:28:04 -08:00
cfc9b61e25 [Frontend] Adjusted margin strategy in left pane elements
open #250
Changed flex-elem to use margin-bottom instead of top;
Added margin-top to .search-results element;
2015-11-09 16:21:50 -08:00
066fd55590 [Actions] Test error handling 2015-11-09 16:18:35 -08:00
c0dc30edb7 [Frontend] Fixed padding in search results
open #250
2015-11-09 15:42:49 -08:00
2a201df435 [Frontend] Consolidated treeview elements markup
open #250
Removed un-needed markup around treeview
includes and mct-reps; moved CSS class defs into
mct-include and mct-rep for search and tree
respectively;
2015-11-09 15:42:24 -08:00
07179f7290 [Action] Catch errors
Catch errors during action instantiation, to avoid suppressing
whole context menus on single failures; nasa/openmctweb#120.
2015-11-09 15:42:19 -08:00
87684e0945 [Persistence] User identifierService from instantiate 2015-11-09 15:25:07 -08:00
55d3a27917 [Frontend] Fix to z-indexing for search "types" menu
open #250
2015-11-09 15:22:53 -08:00
1d13b245f9 [Persistence] Update bundle definition
...after merging latest changes from master branch into
topic branch for nasa/openmctweb#245.
2015-11-09 15:21:41 -08:00
e31d9decdc Merge remote-tracking branch 'github/master' into open245b
Conflicts:
	docs/src/guide/index.md
	platform/core/src/capabilities/InstantiationCapability.js
2015-11-09 15:17:53 -08:00
a5fa11749c [Frontend] Min/max widths on panes adjusted
open #250
Moved new min/max definitions into desktop-only
portion of layout.scss to not affect mobile layout;
2015-11-09 15:14:50 -08:00
2b92c1619e [Frontend] Min/max widths on panes adjusted
open #250
Fixed min and max widths for panes to prevent
weird pane expand/collapse behaviors, like
Inspector covering the main view area;
Added min-width to .holder-all element;
2015-11-09 15:10:52 -08:00
4f001f0b5d [API] Propose declaring plugins as Angular modules 2015-11-09 14:35:51 -08:00
fd135a16af [Frontend] Restoring dropped Snow theme constants
open #250
Snow theme constants missing were causing the Snow
theme CSS to not compile - this commit restores those
values;
TO-DO: values defined are a bit out of sync between Espresso
and Snow and need to be realigned;
2015-11-09 14:22:34 -08:00
aed49d89e3 [Documentation] Fix broken links and strange characters in Developer Guide 2015-11-09 13:46:27 -08:00
05f8739952 Diffs 2015-11-09 13:46:27 -08:00
bf39aa1b1d Fixed broken links@ 2015-11-09 13:46:22 -08:00
4e79de6156 [Frontend] Apply flex layout to object header elements
open #250
open #260
vista#132
Major refactoring to markup and CSS to apply
flex layout strategy to object headers;
Flex necessary to fix 'overflow: hidden' setting
applied in open90 to object-browse-bar that
was preventing the view switcher menu from
appearing;
Browse, edit, mobile, frames in layouts, etc. all
visually checked in a first go round;
Mobile classes tweaked to fix left and right
margin problems resulting from open90 changes;
z-indexing of Inspector pane and splitters changed
to allow primary pane elements to overflow beneath
when primary pane width is severely constrained;
2015-11-06 17:42:54 -08:00
78004ebf37 Fixed broken linkes 2015-11-06 17:40:43 -08:00
51968954a9 Merge pull request #255 from nasa/open215
[Creation] Add creation capability
2015-11-06 16:00:12 -08:00
64607b8e56 [Creation] Remove errant comments 2015-11-06 15:47:33 -08:00
cb432051dc [Creation] Tweak lazy initialization approach 2015-11-06 14:32:47 -08:00
c184a9ce7c [Creation] Complete rename of capability 2015-11-06 14:31:26 -08:00
62e2114349 [Creation] Move test cases
Move test cases from instantiation capability over to
instantiate service.
2015-11-06 14:30:39 -08:00
cca1928b82 [Creation] Use instantiate from objectService
Use instantiate from DomainObjectProvider, to remove redundant
code around DomainObject instantiation.
2015-11-06 14:23:34 -08:00
81b136eab1 [Creation] Use instantiate service
...from instantiation capability.
2015-11-06 14:15:22 -08:00
d059116782 [Creation] Rename creation capability
...to instantiation, to distinguish from creation (which
typically includes persistence.)
2015-11-06 14:07:53 -08:00
bdc99950c6 [Creation] Add instantiate service
...to allow insantiating domain objects completely
externally from any other domain object. Desired by
code review feedback for nasa/openmctweb#255.
2015-11-06 13:56:12 -08:00
76e15f2963 Merge remote-tracking branch 'github/master' into open250 2015-11-06 13:32:28 -08:00
06436bb876 [Creation] Use identifierService
...from CreationCapability.
2015-11-06 13:10:51 -08:00
d8f3f0f430 [Persistence] Expose IdentifierService 2015-11-06 13:05:27 -08:00
177c1874b9 [Persistence] Add identifierService 2015-11-06 13:03:54 -08:00
96a7c12d69 Merge pull request #249 from nasa/open127
[UI] Progress indicator for pending operations (e.g. duplicate)
2015-11-06 10:57:42 -08:00
148a5eb248 JSLint issue 2015-11-06 10:14:59 -08:00
31d3ec5d20 Removed usage of function.prototype.bind 2015-11-06 10:06:17 -08:00
7564384b57 Merge remote-tracking branch 'github-open/open241' into open-master 2015-11-06 09:59:20 -08:00
639546bf86 Merge remote-tracking branch 'github-open/open229b' into open-master 2015-11-06 09:54:42 -08:00
932e3cb7b0 Merge remote-tracking branch 'github-open/open244' into open-master 2015-11-06 09:46:51 -08:00
cbffc221fb Merge remote-tracking branch 'github-open/prod-uisymbols' into open-master 2015-11-06 09:44:21 -08:00
eef801f1ae [Persistence] Fix read in example
Values are stored in the scratchpad as JSON, so parse them
as JSON before returning them.
2015-11-05 18:00:51 -08:00
d69cf6c6fe [Persistence] Parse out key
When an identifier is a space-key pair, parse out the key before
persisting.
2015-11-05 17:58:16 -08:00
0a9c162f26 [Persistence] Fix method delegation
...used by PersistenceAggregator
2015-11-05 17:53:04 -08:00
942fa46022 [Persistence] Expose aggregator 2015-11-05 17:51:14 -08:00
74aff1b407 [Persistence] Implement aggregator 2015-11-05 17:48:43 -08:00
2f658348a8 Fixed JSLint 2015-11-05 17:40:22 -08:00
dbff9e2125 [Persistence] Add example provider
...to serve as a secondary persistence store.
2015-11-05 17:38:51 -08:00
793ed7ebe6 [UI] Progress indicator for pending operations - Refactoring for code clarity 2015-11-05 17:32:52 -08:00
bed1556a3a [Persistence] Begin adding example bundle
Begin adding example bundle illustrating usage of secondary persistence
stores. Scratchpad will 'persist' objects only in memory.
2015-11-05 17:30:27 -08:00
822b4ae96f [Persistence] Report space by identifier 2015-11-05 17:26:48 -08:00
99f3b986b6 [Creation] Retain space prefix
Retain space prefix from a parent when creating a new domain object,
if there is a space prefix.
2015-11-05 17:25:39 -08:00
fd4c1ea747 [Persistence] Retain original id
...after parsing out space and key, to aid in assembling
the result of getModels as an object where IDs are keys.
2015-11-05 17:22:05 -08:00
944a5a7424 [Persistence] Update JSDoc 2015-11-05 17:16:53 -08:00
dda2c89a58 [Persistence] Update bunde definition
...to reflect removal of 'additional persistence spaces'; parse
these out of identifiers instead.
2015-11-05 17:13:19 -08:00
c8cfbf5281 [Persistence] Refactor model loading
...such that ids are only parsed for space/key pairs once.
2015-11-05 17:11:24 -08:00
9f383ab101 [Persistence] Parse space from id
Parse spaces from domain object identifiers, if these have
been specified.
2015-11-05 17:04:55 -08:00
063e97fcb5 [Frontend] Cleanups and enhancements to search
open #250
Fixed margin/spacing problems with results element;
Added transition to results display;
Begin adding # results found / no results messaging;
Moved class .off to _globals.scss;
2015-11-05 17:04:19 -08:00
7811d50372 [Persistence] Document identifier syntax
Document identifier syntax to account for space-prefixing
for nasa/openmctweb#245.
2015-11-05 16:50:24 -08:00
e1c6c76612 Refactored some CopyService functions out to CopyTask 2015-11-05 16:39:46 -08:00
aa2a835cb1 Created CopyTask class 2015-11-05 16:19:01 -08:00
3741a02d2a [Creation] Test CreationCapability 2015-11-05 16:15:12 -08:00
f14cad4a39 [Creation] Add JSDoc 2015-11-05 16:05:29 -08:00
c0ac3a0f96 [Frontend] Convert main left pane elements to flex layout
open #250
Significant changes to flex classes, markup in
browse.html and search.html to support better
flex layout;
Search results now scrolls properly;
Significant refactoring and cleanups in search and _search.scss;
2015-11-05 15:44:55 -08:00
09bae63de7 [Creation] Update CreationService spec 2015-11-05 15:36:44 -08:00
62b9eb5180 [Creation] Simplify creationService
Add the newly-created domain object directly, instead of via
its id.
2015-11-05 15:36:33 -08:00
3f26be885e [Creation] Move uuid
...into core, since it is used by the Creation capability.
2015-11-05 15:24:57 -08:00
7ab318d57b [Creation] Fix method invocation 2015-11-05 15:21:47 -08:00
65a33f8af5 [Creation] Clean up creationService
Remove unused dependency, update JSDoc
2015-11-05 15:15:23 -08:00
331b4e9259 [Creation] Use creation capability
...from creationService to initially instantiate a domain object
before persisting it.
2015-11-05 15:13:33 -08:00
474afdf8ef [Creation] Expose creation capability
...adding usage of  to avoid circular dependencies.
2015-11-05 15:08:52 -08:00
3f4ccd93ab [Creation] Add creation capability
...allowing domain objects to be instantiated in-memory
without persisting them. nasa/openmctweb#215
2015-11-05 15:05:54 -08:00
92cf86837b Merge pull request #207 from nasa/open1239
[Plugins] Bring over Timeline, Clocks/Timers
2015-11-05 13:42:32 -08:00
5274923c49 [Licenses] Add license headers
...to sources for Clocks/Timers and Timelines, as noted in
review nasa/openmctweb#207
2015-11-05 12:45:51 -08:00
a356e01b14 Merge pull request #219 from nasa/open213
[Mobile] Don't move DOM nodes
2015-11-05 12:09:22 -08:00
21a37db15b #127 fixed failing test caused by fix for persistence spaces 2015-11-05 11:50:56 -08:00
a20bbd98f5 Merge pull request #224 from nasa/open-docs-css
[Documentation] Add styling
2015-11-05 11:46:57 -08:00
5b3f780204 [UI] Progress indicator for pending operations (e.g. duplicate) #249- Fixed serious issue with persistence 2015-11-05 11:38:41 -08:00
43e920d3b6 Reverted to local storage 2015-11-05 10:27:50 -08:00
8ca22cc510 [Frontend] Convert main left pane elements to flex layout
open #250
Markup mods in browse.html;
Renamed .holder-create-and-search to
.holder-treeview-elements;
TO-DO: fix search results to scroll properly;
2015-11-05 10:11:59 -08:00
3443780ac7 Improved commenting 2015-11-04 22:09:28 -08:00
8e85675732 Made changes to error reporting 2015-11-04 22:07:26 -08:00
2bdc95eb95 Restored MoveActionSpec.js and LinkActionSpec.js 2015-11-04 21:11:26 -08:00
f2efb07d93 Remove UUID path 2015-11-04 21:05:55 -08:00
863c3f1720 Fixed jslint issues 2015-11-04 20:48:22 -08:00
b73f9fc19e Merged from master 2015-11-04 20:30:49 -08:00
10e711f717 Removed commented code 2015-11-04 20:26:24 -08:00
529dde57b9 Added test for notification to CopyActionSpec 2015-11-04 20:26:24 -08:00
7d1a1acc11 Adding tests for Copy Action 2015-11-04 20:26:23 -08:00
5e1b0f38b7 Migrated to using notifications and fixed tests 2015-11-04 20:26:23 -08:00
4e69ca50fb Fixed blocking dialog 2015-11-04 20:26:23 -08:00
05481dcab5 reverted AbstractComposeAction 2015-11-04 20:26:23 -08:00
fa7131ad5c Refactoring to use promises notifications 2015-11-04 20:26:23 -08:00
bd1c3cb7da All test cases passing + added test cases for copy 2015-11-04 20:26:23 -08:00
cbd21212d1 Original tests that are still valid are passing 2015-11-04 20:26:23 -08:00
5cd458a733 Updating tests 2015-11-04 20:26:23 -08:00
2f90a89065 Fixed more failing tests 2015-11-04 20:26:23 -08:00
4312857fd4 Fixed failing tests 2015-11-04 20:26:22 -08:00
6c4c53dde7 Debugging test failures 2015-11-04 20:26:17 -08:00
e49b55024f [Frontend] Inspector-related fixes
open #247
Modded styles applied to .object-browse-bar to
use overflow:hidden instead of visible;
2015-11-04 16:00:22 -08:00
5f1f54fa91 [Frontend] Inspector-related fixes
open #243
Enlarged size of mini-tab icon when panes are collapsed;
Increased size of edge margin to allow for larger icons;
2015-11-04 15:47:13 -08:00
f4325e2bb3 [Frontend] Inspector-related fixes
open #244
Moved older .l-flex class out of layout and
into archetypes, updated definition;
2015-11-04 15:20:42 -08:00
e09cf91def [Frontend] Inspector-related fixes
open #244
Fixing scroll issue in Inspector via flex layout;
Added new _archetypes.scss file for .l-flex* and .col styles;
moved .col and associated mixin out of _layout.scss
and into _archetypes;
2015-11-04 15:03:56 -08:00
ff1e1251f6 [Frontend] Integrating new Inspect icon from prod-uisymbols
open #244
open #188
2015-11-04 14:29:21 -08:00
5697a39ec3 [Production] Changed target icon e615 to eye
open #188
Jay request;
e615 is no-gleam and replaces the crosshair glpyh;
gleam version is e616
2015-11-04 13:55:52 -08:00
32fb84a3cd [Merge] Merging in latest master
open #188
2015-11-04 13:52:31 -08:00
2815d97682 Merge pull request #236 from nasa/open232
Review and integrate open232
2015-11-04 13:15:21 -08:00
ab01f64cea Merge remote-tracking branch 'github/master' into open236
Resolve CSS conflicts for nasa/openmctweb#236

Conflicts:
	platform/commonUI/general/res/sass/controls/_controls.scss
	platform/commonUI/themes/espresso/res/css/theme-espresso.css
	platform/commonUI/themes/snow/res/css/theme-snow.css
2015-11-04 13:02:17 -08:00
e5aa2b4f87 [Themes] Update developer guide
Add documentation of the theme property of stylesheets extensions
to the developer guide.
2015-11-04 12:01:09 -08:00
522ce02302 [Themes] Add missing semicolon
...to satisfy JSLint.
2015-11-04 11:54:19 -08:00
e32eb11e60 [Themes] Update bundle declarations
Update bundle declarations to provide a THEME constant for
use in filtering out theme-specific CSS additions.
2015-11-04 11:53:10 -08:00
bda1bf9f9a [Themes] Match themes from stylesheet loader 2015-11-04 11:49:27 -08:00
226f0932da [Themes] Add test cases
Add test cases to verify that stylesheets are excluded/included
according to theme, when a theme has been specified.

nasa/openmctweb#241
2015-11-04 11:48:49 -08:00
15f9bc083c Merge pull request #240 from nasa/open233b
[Inspector] Introduce inspector pane
2015-11-04 11:24:27 -08:00
1c4a4e475b [Inspector] Simplify splitter communication 2015-11-04 10:53:23 -08:00
f7839b758d Merge remote-tracking branch 'github/master' into open233b
Resolve conflicts on nasa/openmctweb#233

Conflicts:
	platform/commonUI/general/bundle.json
	platform/commonUI/general/res/fonts/symbols/icomoon.io-WTD-symbols-project.json
	platform/commonUI/general/res/fonts/symbols/wtdsymbols.eot
	platform/commonUI/general/res/fonts/symbols/wtdsymbols.svg
	platform/commonUI/general/res/fonts/symbols/wtdsymbols.ttf
	platform/commonUI/general/res/fonts/symbols/wtdsymbols.woff
	platform/commonUI/general/res/sass/_main.scss
	platform/commonUI/general/res/sass/user-environ/_layout.scss
	platform/commonUI/themes/espresso/res/css/theme-espresso.css
	platform/commonUI/themes/espresso/res/sass/_constants.scss
	platform/commonUI/themes/snow/res/css/theme-snow.css
2015-11-04 09:28:19 -08:00
ac529be55c [Time Conductor] Don't emit view event
Don't emit an event when plot is instantiated; this is no
longer needed, as time conductor broadcasts its bounds
whenever views change.
2015-11-03 17:01:22 -08:00
99376391a9 Merge remote-tracking branch 'github/master' into open229b
Conflicts:
	platform/features/conductor/src/ConductorRepresenter.js
2015-11-03 16:58:40 -08:00
2c7c7b90e6 Fixed JS var placement causing mvn to fail
open #90
open #233
2015-11-03 16:51:15 -08:00
903778799f Fixed missing window reference causing test to fail
open #90
open #233
2015-11-03 16:45:11 -08:00
9523c918fb Merge remote-tracking branch 'github-open/open182' into open-master 2015-11-03 15:52:14 -08:00
09be19310b Resolved CSS conflicts
open #90
2015-11-03 15:44:10 -08:00
b8b9b1f79a Merge remote-tracking branch 'github-open/open227' into open-master 2015-11-03 15:43:08 -08:00
4300338b9c Merge pull request #186 from nasa/open155
[Notifications] Add notification infrastructure
2015-11-03 15:38:41 -08:00
6a42d0c7a1 [Frontend] Put overflow: auto back onto .object-holder
open #232
2015-11-03 15:28:53 -08:00
c0ed19fd92 Merge remote-tracking branch 'github/master' into open229b
Merge latest into topic branch for nasa/openmctweb#229
in preparation for pull request
2015-11-03 15:27:36 -08:00
df484c1800 [Time Conductor] Update TelemetryHandler spec 2015-11-03 15:27:08 -08:00
5940f94644 [Time Conductor] Cancel requests
Don't callback for any telemetry requests from a TelemetryHandle
if the handle has been destroyed.
2015-11-03 15:24:38 -08:00
7cd255670e [Frontend] Committing removed files
open #208
2015-11-03 14:59:41 -08:00
eabde6b2d0 [Frontend] Integrate Timeline into open; themes
open #208
Copied SASS styles from /warp and created
new platform/features/timeline/themes/espresso;
Styling looks complete, but Timeline itself has
functional issues;
TO-DO: remove styles from /warp/.../sass/ as needed;
2015-11-03 14:58:58 -08:00
37f466705a [Frontend] IN-PROGRESS stubbing in files ported from /warp
open #208
Moving files from /warp; stuff will NOT compile
at this point;
2015-11-02 18:22:13 -08:00
0dccaab9cb [Search] Declare UI components as templates
Declare Search UI components as templates instead of
representations so that they are not removed from the
DOM when no domain object is supplied. Fixes
nasa/openmctweb#234
2015-11-02 14:07:22 -08:00
c8848b5788 [Frontend] Tweaked spacing in Inspector header
open #90
2015-11-02 13:39:15 -08:00
4e8101ba0b [API Redesign] Add note about telemetry metadata 2015-11-02 12:52:31 -08:00
8d65335786 [Time Conductor] Remove check for domain existence 2015-11-02 12:31:40 -08:00
2d1faeba8c [Time Conductor] Update FormatService JSDoc 2015-11-02 12:30:18 -08:00
cecc52f0a9 [Time Conductor] Update formatService usages
...to remove checks for unknown formats.
2015-11-02 12:28:46 -08:00
a1d765f271 [Time Conductor] Throw errors for unknown formats
Per code review, nasa/openmctweb#204
2015-11-02 12:23:13 -08:00
fe12cdefc5 [Frontend] Added icon to Inspector header
open #90
and updated icon;
2015-11-02 11:27:56 -08:00
648cdcc86e Updated crosshair symbol for inspect
open #90
(cherry picked from commit 946a6d4)
2015-11-02 11:08:00 -08:00
946a6d4a04 Updated crosshair symbol for inspect
open #90
2015-11-02 11:04:38 -08:00
f7588d57c2 [Frontend] Added crosshair symbol for inspect
prod-uisymbols
open #90
(cherry picked from commit 91a4138)
2015-11-02 10:31:44 -08:00
91a4138334 Added crosshair symbol for inspect
prod-uisymbols
open #90
2015-11-02 10:14:28 -08:00
141a54cbd6 [Frontend] Tweaks in Inspector
open #90
Colors, spacing, properties layout mods;
2015-10-30 23:44:15 -07:00
64c6ef6cfd [Frontend] Tweaks in Inspector
open #90
Colors, spacing, properties layout mods;
Checked in mobile and snow theme;
2015-10-30 18:31:02 -07:00
fe8d9f6717 [Frontend] Mobile and margin tweaks
open #90
Margin off of right scrollbar added for treeview
in desktop only;
Repositioned nav to parent arrow button in
object-browse-bar;
2015-10-30 17:22:41 -07:00
c913f173e3 [Frontend] Safety merge of master; minor fixes
open #90
IN-PROGRESS
Merged in latest from github/master;
Fixed margins when in edit mode;
Fixed edit area not utilizing overflow: auto properly;
TO-DO: verify mobile is Ok;
2015-10-30 17:09:04 -07:00
ae928a138c [Representation] Update compilation approach
Update compilation approach for templateLinker to more
closely resemble ng-include; minimizes likelihood of
subtle behavioral differences (e.g. incorrect size
selection for split pane)
2015-10-30 16:37:47 -07:00
d926110b4e Merge remote-tracking branch 'github/open155' into open155c
open #186
open #155
Re-rendering css;
2015-10-30 16:26:49 -07:00
485e6a9de1 [wtf] Merge open155 > github/master
open #155
open #186
WTF yet again getting merge conflicts when remerging open155;
2015-10-30 16:24:20 -07:00
1e6731e6f2 Merge open155 > github/master
open155
open186
Trying a third time to resolve conflicts between open155 and master;
2015-10-30 16:20:57 -07:00
454a63e1f1 [Representation] Destroy scopes before adding
Destroy representation scope before adding elements back into
the DOM; avoids having a momentary activation of watches and
listeners on those scopes before they are replaced with newly
compiled content for new scopes.
2015-10-30 16:18:01 -07:00
b487fa4438 [Representation] Update TemplateLinker spec
...to reflect creation of a new scope each time a template
is changed.
2015-10-30 16:01:24 -07:00
560454e7c2 [Representation] Verify change before representing
An mct-representation may have a refresh triggered either by
a key change or a domain object change; both will typically
happen in the same digest cycle. Track what prior state was
an abort refreshes if nothing will change.
2015-10-30 15:55:56 -07:00
04594ea536 [Representation] Rebuild scopes on every change
Create new scopes on every changeTemplate request, even if
the same template is being viewed; presume that we want a
new instance of the same template. Avoids scope reuse for
cases such as switching from a plot of one object to a
plot of another object.
2015-10-30 15:32:20 -07:00
b5b6546710 [Frontend] Significant change to look and behavior of mini-tabs
open #90
IN-PROGRESS
mini-tab location in markup in browse.html changed;
Single menu icon for collapsed treeview;
Close 'x' boxes instead of arrow icons;
TO-DO: verify mobile is Ok;
2015-10-30 15:25:12 -07:00
a45dfc3822 [Representation] Don't reuse scopes
Addresses nasa/openmctweb#227
2015-10-30 15:09:35 -07:00
f7f6b8d612 [Time Conductor] Don't broadcast on telemetry:view
Instead, use delay from throttling initial bounds broadcast to
avoid broadcasting bounds prematurely.
2015-10-30 14:59:32 -07:00
e4a14b7603 [Time Conductor] Consistently throttle broadcast
Consistently throttle broadcast of bounds to minimize redundant
broadcasts, nasa/openmctweb#229
2015-10-30 14:56:52 -07:00
5706fa4567 Merge branch 'open182' into open229 2015-10-30 14:54:37 -07:00
796d6b800a [Time Conductor] Add JSDoc for params 2015-10-30 14:08:11 -07:00
b12bb55495 [Time Conductor] Update text on format change
...in a date-time field.
2015-10-30 13:57:21 -07:00
f42498ab60 [Time Conductor] Update specs
...to reflect changes to how unspecified versus unknown formats
are handled.
2015-10-30 13:53:33 -07:00
ec56fe7bfd Merge pull request #222 from nasa/open195
[Representation] Remove unknown templates from DOM
2015-10-30 13:39:14 -07:00
4abb48abd8 [Representation] Update parameters in JSDoc 2015-10-30 13:34:13 -07:00
7f571415dc [Time Conductor] Change format handling
Use default format when no format is specified, and throw an
error when a specified format is unrecognized, from both
date-time field controller and time range controller.
2015-10-30 13:28:01 -07:00
4f9a65a5fe [Time Conductor] Use default format
...from TelemetryFormatter, and log when a requested format
is unavailable.
2015-10-30 13:17:53 -07:00
6db7f056dc [Time Conductor] Warn about unknown formats 2015-10-30 13:11:13 -07:00
5a1d774b47 [Time Conductor] Rename default domain
To UTC, instead of just Time.
2015-10-30 13:05:37 -07:00
101e3bb346 [Time Conductor] Remove checks for undefined domain
Per code review, nasa/openmctweb#204
2015-10-30 13:04:29 -07:00
a38d4829eb [Representation] Add JSDoc 2015-10-30 12:38:32 -07:00
d5f1d45759 [Representation] Use $templateRequest
...from templateLinker, to remove the need to use $http and
to explicitly cache templates.
2015-10-30 12:35:36 -07:00
5ed34c1c30 [Representation] Build URLs from templateLinker 2015-10-30 11:02:13 -07:00
bc82a5bf7e Added additional test for notifications specified as string message 2015-10-30 10:56:16 -07:00
5af3d575a2 [Representation] Remove redundant listener
The  event is already listened-for at the representation
level to trigger cleanup, including gestures, so the info gesture
does not need to listen for it as well.

Per code review feedback, nasa/openmctweb#222
2015-10-30 10:45:44 -07:00
58198636ed Fixed jslint complaints 2015-10-30 10:32:01 -07:00
86bf6c6dff Minor refactoring and renaming of variables 2015-10-30 10:30:39 -07:00
0e07fb860e Added convenience methods for alert and error to the NotificationService 2015-10-30 10:28:08 -07:00
b3d4f48e2e Allow string or model to simplify message specification 2015-10-30 10:22:24 -07:00
b6d08726fb [Time Conductor] Remove duplicate format 2015-10-30 09:34:23 -07:00
675c5be3da [Frontend] Tweaks to splitter edge shdw
open #90
IN-PROGRESS
2015-10-30 09:22:46 -07:00
4eaeea1e14 Fixed bugs in copy 2015-10-29 21:39:50 -07:00
f44819a7fe Improvements to copy notifications 2015-10-29 17:40:17 -07:00
1dbd721b14 [Frontend] Significant mods to main layout strategy
open #90
IN-PROGRESS
To support desired edge-to-edge styling of Inspector pane;
Removed superflous .scss file;
Enhancements to splitter .scss to allow flush edging and
edge shadows;
2015-10-29 17:31:35 -07:00
05722d9b11 Added error handling 2015-10-29 17:15:20 -07:00
92a3fa3e4c Added error handling, and refactored CopyAction slightly 2015-10-29 16:40:51 -07:00
ddebbf119f [Frontend] Expand/collapse finessing
open #90
2015-10-29 12:58:34 -07:00
8c4fdf5c1c [Frontend] Expand/collapse finessing
open #90
Icon positioning; top of treeview splitter moved
back down below to previous position;
2015-10-29 12:55:20 -07:00
dd83662e0f [Documentation] Add styling 2015-10-29 12:30:13 -07:00
1b0ce7166d [Frontend] Bring in new collapse left and right pane symbols
open #90
open #188
(cherry picked from commit 9c90eb5)
2015-10-29 11:31:57 -07:00
9c90eb52a4 [Production] Added collapse left and right pane symbols
open #188
2015-10-29 11:30:01 -07:00
a0c6ddff5a [Frontend] Removed unused mini-tab-icon class
open #90
2015-10-29 11:22:18 -07:00
f51230b3f7 [Frontend] Fixed erroneous classes wrapping Create button;
open #90
2015-10-29 11:21:22 -07:00
660e9f0d4f [Frontend] Fixed color of menu-item divider items;
open #90
2015-10-29 10:10:06 -07:00
59b24d91bb [Frontend] Tweaks to splitter-related SASS
open #90
New splitterHandleInset function;
Removed padding from Inspector pane;
2015-10-29 10:09:47 -07:00
df3b0bd6fb Merge pull request #221 from nasa/open203
[Documentation] Images missing from tutorials
2015-10-29 08:50:03 -07:00
5b475c9f64 [Representation] Add more test cases
...for TemplateLinker.
2015-10-29 08:27:20 -07:00
a48370abd3 [Representation] Update spec 2015-10-29 08:18:13 -07:00
54d608adb2 [Representation] Provide initial templates
...to avoid temporarily replacing with a comment when this
is not needed.
2015-10-29 08:17:25 -07:00
5fba6f5ead [Representation] Add more test cases
...for TemplateLinker, to achieve full code coverage.
2015-10-29 08:08:01 -07:00
b177c38656 [Representation] Add JSDoc
...to TelemetryLinker.
2015-10-29 07:58:32 -07:00
11ca39b94c [Frontend] t-item-icon
open #90
Tweaked bottom position of link indicator;
2015-10-28 21:44:56 -07:00
bb0e27ce1f [Frontend] Restored erroneously checked in bundles.json;
open #90
2015-10-28 21:35:43 -07:00
56e8cd81e6 [Frontend] Refinements to t-item-icon
open #90
Scale approach to link indicator changed from
font-size to transform: scale;
Now works in tree, item grid and Inspector;
2015-10-28 21:34:01 -07:00
e37fa75289 Added basic notifications on copy 2015-10-28 17:16:53 -07:00
ee314ab387 Added notifications 2015-10-28 17:05:05 -07:00
59cd346911 [Representation] Add test cases
...for TemplateLinker
2015-10-28 17:01:13 -07:00
e7e66bff4b [Representation] Begin adding TemplateLinker spec 2015-10-28 16:49:19 -07:00
ca62cc9066 [Representation] Update spec for mct-representation
...to account for usage of templateLinker to add or remove the
whole element from the DOM when there is or is not a template
to show.
2015-10-28 16:35:11 -07:00
01b6fda1f2 [Representation] Update spec for mct-include
...to account for usage of templateLinker to add or remove the
whole element from the DOM when there is or is not a template
to show.
2015-10-28 16:11:00 -07:00
ae0cb63a92 [Representation] Remove template tester
Remove template tester after verifying that mct-include/mct-representation
elements are added/removed to/from the DOM as appropriate.
2015-10-28 16:02:52 -07:00
5604bf6d69 [Representation] Add template tester
...to simply verification of mct-include/mct-representation
behavior.
2015-10-28 16:01:55 -07:00
c5fcc5a558 [Representation] Handle edge cases
Handle edge cases (e.g. directive priorities, race conditions)
to ensure that mct-representation and mct-include display correctly
when added to or removed from the DOM.
2015-10-28 15:57:47 -07:00
ea9f607bba [Representation] Handle undefined scope
element.scope() may be undefined when wiring in the info
gesture, so check for that.

That this is sometimes undefined appears to be a consequence
of changes to mct-representation, but which changes influence
this are unclear. In any event, it appears that this cannot
be relied-upon per https://github.com/angular/angular.js/issues/9515
2015-10-28 15:49:18 -07:00
0404303042 [Representation] Move changes back
Move changed lines back to their original location to simplify
diff.
2015-10-28 15:38:11 -07:00
5677548298 [Representation] Show element synchronously
...to avoid exceptions when trying to invoke representers
before an mct-representation has been added back into the
DOM.
2015-10-28 15:32:50 -07:00
bcc42d705e [Representation] Hide elements without transclusion 2015-10-28 15:30:27 -07:00
ab008ae497 [Representation] Begin integration
...of templateLinker into mct-representation. Not working currently
due to prevalence of mct-representation instances with transcluding
directives (hitting a multiple transclusion error.)
2015-10-28 15:17:36 -07:00
8fb6ab61ba Fixed folders 2015-10-28 14:56:34 -07:00
3d59f6df0b [Representation] Separate out template loading/linking
...from mct-include, to facilitate reuse for MCTRepresentation.
2015-10-28 14:51:30 -07:00
929f06e6c1 Working on folders 2015-10-28 13:35:52 -07:00
e9e6ddd791 Trying to fix drop on folders 2015-10-28 13:01:45 -07:00
2539e4008f Improved handling of virtual panels 2015-10-28 12:53:50 -07:00
4708ac0ec1 Removed console.log 2015-10-28 11:26:20 -07:00
bd984abc0f Changed encoding of images to address https://github.com/nasa/openmctweb/issues/203 2015-10-28 11:14:07 -07:00
b4a44dee8f [Representation] Populate mct-include contents
Remove usage of ng-include and template from mct-include for
compatibility with element-level transclusion. Has useful
side effect of pre-fetching templates and reducing watch
count.
2015-10-28 11:13:53 -07:00
942f617bd8 [Representation] Use transclusion for mct-include
...to add/remove conditionally depending on the existence of
certain templates.

Note that this currently breaks mct-include due to an incompatibility
between element transclusion and directive templates; see
https://github.com/angular/angular.js/issues/3368.
2015-10-28 10:29:46 -07:00
757cb0f015 [Representation] Watch for key changes
...from mct-include. Improves behavior of that directive and supports
testing of changes to remove whole elements when inapplicable,
nasa/openmctweb#195.
2015-10-28 10:18:59 -07:00
90389ea910 [Time Conductor] Increase test specificity
Explicitly check for boolean values (not just truthy/falsy values)
per feedback from code review, nasa/openmctweb#204.
2015-10-28 09:56:50 -07:00
d1bc93cd31 [Mobile] Don't move DOM nodes
When including/excluding a DOM element via mct-device,
use replaceWith() instead of parent().append() to preserve
original ordering of DOM elements from template.
nasa/openmctweb#213.
2015-10-28 09:50:48 -07:00
0541f6edfa [Time Conductor] Add JSDoc to plot
Add JSDoc to scripts/methods added to the Plot plug-in to support
integration of custom formats for timestamps.
2015-10-28 08:47:04 -07:00
0ad22f6842 [Time Conductor] Add JSDoc to new bundle
Add JSDoc to platform/commonUI/formats, introduced to support
different time formats from the time conductor.
nasa/openmctweb#182.
2015-10-28 08:29:56 -07:00
134d853f19 [Frontend] type-icon evolving to universal t-item-icon
open #90
Major work in-progress on switching to .t-item-icon from
.type-icon to get item icons working better, especially
in .inspector-location in Inspector;
Significant mods to label.html;
2015-10-28 00:24:57 -07:00
00c0019122 [Time Conductor] Add test cases
...to cover FormatProvider.
2015-10-27 17:44:57 -07:00
e80d094174 [Time Conductor] Add test cases
...to cover UTCTimeFormat.
2015-10-27 17:39:16 -07:00
3e7264d6b8 Initial implementation of virtual panel 2015-10-27 17:38:31 -07:00
60ba80d307 [Time Conductor] Add empty specs
...to platform/commonUI/formats bundle, introduced to support
formatting of non-UTC time domains for time conductor.
2015-10-27 17:34:28 -07:00
c89aa026b0 [Time Conductor] Add JSDoc for Format interface 2015-10-27 17:31:02 -07:00
8a3f77d784 [Time Conductor] Simplify bundle name 2015-10-27 17:26:08 -07:00
15a5c593fa [Time Conductor] Add spec for formatter
Add spec to telemetryFormatter wrapper used by plot to isolate
changes to domain/range formats.
2015-10-27 17:25:08 -07:00
fc704b8056 [Frontend] Fixed and finessed mobile expand collapse
open #90
Fixed problem of right pane primary not going all the way left;
Finessed timing of tree pane fade in / fade out;
2015-10-27 17:18:40 -07:00
0a19ab4389 Merging in latest github/master
open #90
Squashed commit of the following:

commit a2d06583ca
Merge: 74f289c 5d5425d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Oct 27 14:04:49 2015 -0700

    Merge pull request #216 from nasa/open-vista54a

    Review and integrate open-vista54a into master

commit 5d5425db04
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Oct 27 11:50:16 2015 -0700

    [Frontend] Finessing and verifying CSS

    vista#54
    Verified against fixed position and scrolling views
    using SineWave generator;
    font-size of glyph tweaked;

commit a8856c0612
Author: Charles Hacskaylo <charlesh88@gmail.com>
Date:   Tue Oct 27 11:40:35 2015 -0700

    [Frontend] Platform-specific mods to limits

    vista#54
    Refactor limits into multiple classes, separating
    upr/lwr from red/yellow;
    Modded SineWaveLimitCapability accordingly;
    Normalized upr/lwr glyphs;
    (cherry picked from commit a26d71b)

commit 74f289cb34
Merge: 4ec243c 29bdc9d
Author: akhenry <akhenry@gmail.com>
Date:   Tue Oct 27 10:48:33 2015 -0700

    Merge pull request #206 from nasa/open150b

    [Plot] Ignore empty lines

commit 4ec243c6fb
Merge: 407d988 3d996ac
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Sat Oct 24 07:48:45 2015 -0700

    Merge pull request #212 from nasa/open211

    [RequireJS] Specify path for uuid

commit 407d9881ff
Merge: 6ee622b 21739ff
Author: akhenry <akhenry@gmail.com>
Date:   Fri Oct 23 19:16:51 2015 -0700

    Merge pull request #200 from nasa/open-toc

    [Documentation] Add table of contents

commit 6ee622b3f5
Merge: 099d70b 87e317a
Author: akhenry <akhenry@gmail.com>
Date:   Fri Oct 23 17:04:04 2015 -0700

    Merge pull request #192 from nasa/open153

    [CI] Remove non-existent bundle from procfile

commit 099d70b8d9
Merge: 90828ef 8e2a2ee
Author: akhenry <akhenry@gmail.com>
Date:   Fri Oct 23 17:00:46 2015 -0700

    Merge pull request #175 from nasa/open147

    [Entanglement] Add "Go To Original" action

commit 3d996ac466
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Oct 23 16:32:05 2015 -0700

    [RequireJS] Specify path for uuid

    Specify path for uuid, making it available for any code that would require it,
    without that code needing to know the path to it.

    Fixes https://github.com/nasa/openmctweb/issues/211.

commit 90828ef63d
Merge: bf24ac7 dbebf08
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Oct 23 16:23:29 2015 -0700

    Merge remote-tracking branch 'github-open/open181' into open-master

commit 29bdc9d574
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Oct 23 13:04:06 2015 -0700

    [Plot] Ignore empty lines

    Ignore empty lines (plot lines with no data) when determining
    domain extrema; avoids failure to draw multiple plot lines in
    a telemetry panel, nasa/openmctweb#150.

commit bf24ac7c93
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Fri Oct 23 12:14:46 2015 -0700

    [Search] Update field name

    Update field name in GenericSearchProvider to reflect changes
    from nasa/openmctweb#193. Avoids exceptions on mutation.

    Additionally, add test case exercising relevant code and verifying
    that reindexing is scheduled upon mutation as expected.

commit 59f094763b
Merge: 3080861 496cf85
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Thu Oct 22 16:58:02 2015 -0700

    Merge pull request #193 from nasa/search-performance

    Search performance

commit dbebf08500
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Oct 21 15:38:58 2015 -0700

    [Time Controller] Add test cases

    ...to verify behavior on text entry of dates.

commit 847c356063
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Oct 21 15:26:42 2015 -0700

    [Time Controller] Change color when input is invalid

    nasa/openmctweb#181

commit 06bcd28558
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Oct 21 15:22:00 2015 -0700

    [Time Controller] Keep inputs in sync

    Keep inputs in sync with displayed data in time controller,
    without overwriting user-entered text. nasa/openmctweb#181

commit f88e8ebb51
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Oct 21 15:08:44 2015 -0700

    [Time Controller] Update model state for text entry

commit 6d2b2fd81e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Oct 21 14:46:12 2015 -0700

    [Time Controller] Parse user-entered timestamps

    nasa/openmctweb#181.

commit 608800ae63
Merge: 07818b0 fb0ce1e
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Oct 21 14:40:42 2015 -0700

    Merge remote-tracking branch 'github/master' into open181

    Conflicts:
    	platform/commonUI/general/res/templates/controls/time-controller.html

commit 07818b0a6d
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Wed Oct 21 14:35:18 2015 -0700

    [Time Controller] Show bounds in a text field

    Show bounds in a text field to allow user editing; supports manual
    editing of time controller bounds, nasa/openmctweb#181.

commit 496cf85b7e
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Oct 21 09:46:32 2015 -0700

    [JSDoc] Correct mistake

commit 833f57e284
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Wed Oct 21 07:39:59 2015 -0700

    [Search] Don't block UI between requests

    Timeout subsequent calls to keepIndexing at the end of a
    indexRequest, so that UI operations are not blocked.

commit 9a63e99710
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Tue Oct 20 16:01:42 2015 -0700

    [Search] Add spec for ElasticSearchProvider

    Add spec coverage for ElasticSearchProvider.  Also remove
    unneeded guards for max number of results, as the aggregator
    will always provide a max number of results.

commit 21739fffd9
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Oct 20 15:52:49 2015 -0700

    [Documentation] Add table of contents

    Add table of contents to generated documents, without
    modifying document sources; nasa/openmctweb#189.

commit 77d81f899b
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Tue Oct 20 15:31:33 2015 -0700

    [Style] JSLint compliance

commit fe3263fdfe
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Tue Oct 20 15:27:46 2015 -0700

    [Search] Remove invalid specs

commit ce42429fbd
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Tue Oct 20 15:14:43 2015 -0700

    [Search] expose constants, add fudge factor

    The SearchAggregator exposes it's constants to add stability to
    tests.

    It also has a fudge factor which increaases the number of results
    it requests from providers to better support pagination when using
    client side filtering.

commit 76151d09a0
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Tue Oct 20 15:13:37 2015 -0700

    [Search] use service for filters, add spec

    Add a spec for the SearchController, and use the SearchService to
    execute filters by supplying a filterPredicate.

commit ec7e6cc5b4
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Tue Oct 20 13:55:46 2015 -0700

    [Search] Update spec for Generic Search Worker

commit 1ddce48f7e
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Tue Oct 20 13:12:04 2015 -0700

    [Search] Specs for GenericSearchProvider

    Write specs for GenericSearchProvider and resolve some implementation
    bugs they uncovered.

commit 98b5ff3c77
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Oct 16 18:14:33 2015 -0700

    [Search] Decrement number of pending requests

commit 14094a48fc
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Oct 16 17:33:23 2015 -0700

    [Search] Remove old specs in prep for rewrite

    Remove old specs in prep for rewrite.

commit 8e2a2eeba5
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Mon Oct 19 12:08:49 2015 -0700

    [Entanglement] Add license headers

    ...per code review feedback from nasa/openmctweb#175

commit 0f63e4dde9
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Oct 16 17:06:23 2015 -0700

    [Tests] Rewrite search aggregator specs

commit 12efb47be7
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Oct 16 16:09:51 2015 -0700

    [Search] Remove timeouts and timestamps

    Remove timeouts and timestamps which were not effectively doing anything.

commit a2fce8e56c
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Oct 16 16:05:31 2015 -0700

    [Search] Rewrite elasticsearch provider with prototype

    Rewrite the elasticsearch provider to use prototypes and clean up the implementation.

    Now returns a modelResults object to keep it in line with the general search
    provider.

commit 78e5c0143b
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Oct 16 15:26:46 2015 -0700

    [Search] Overhaul generic search provider

    Rewrite the generic search provider to use prototypes.  Increase performance
    by utilizing the model service instead of the object service, and use a
    simplified method of request queueing.

commit 099591ad2e
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Oct 16 15:26:04 2015 -0700

    [Search] Aggregator returns objects, providers return models

    Search providers return search results as models for domain objects, as the
    actual number of max results is enforced by the aggregator, and because the
    individual providers store and return the models for their objects already.

    This lowers the amount of resources consumed instantiating domain objects, and
    also allows the individual search providers to implement function-based
    filtering on domain object models, which is beneficial as it allows the search
    filtering in the search controller to be done before paginating of results.

commit b5505f372f
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Oct 16 12:39:41 2015 -0700

    [Search] Generic Worker Performance Tweaks

    The generic search worker now does indexing work during the index operation,
    ensuring that queries do not have to do extraneous or repeat calculations.

    Change the return format slightly and fixed a bug in the GenericSearchProvider
    which caused more objects than intended to be returned from the provider.

commit 9ad860babd
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Oct 16 12:34:47 2015 -0700

    [Search] Rewrite search controller, tidy

    Rewrite the search controller, making numerous changes and using prototypical
    style.

    First, the search controller immediately hides previous results when a new
    search is started.  Secondly, the search controller ensures that search results
    displayed match the currently entered query, preventing race conditions.  Finally,
    the search controller uses a poor filtering option that means it may not display
    all results.

commit 87e317a6f5
Author: Pete Richards <peter.l.richards@nasa.gov>
Date:   Fri Oct 16 11:33:42 2015 -0700

    [CI] Remove non-existent bundle from procfile

    Remove the example/localstorage bundle from the procfile.

    Fixes #153.

commit bf41d82a78
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Oct 6 16:50:35 2015 -0700

    [Entanglement] Restore missing specs

    Restore specs which had been omitted from suite.json (but currently
    succeed for the relevant scripts); done in the context of
    nasa/openmctweb#147

commit a4944717a1
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Oct 6 16:47:37 2015 -0700

    [Location] Test getOriginal method

commit 70bbd3cf97
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Oct 6 16:37:37 2015 -0700

    [Entanglement] Add test cases for Go To Original

commit e3afaf0842
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Oct 6 16:22:16 2015 -0700

    [Entanglement] Add Go To Original

    nasa/openmctweb#147

commit 60f2f9fb6c
Author: Victor Woeltjen <victor.woeltjen@nasa.gov>
Date:   Tue Oct 6 16:08:48 2015 -0700

    [Location] Add getOriginal method

    Add a getOriginal method to the location capability, to simplify
    loading of original versions of objects. nasa/openmctweb#147
2015-10-27 17:17:10 -07:00
9e8152719f [Time Conductor] Add spec
Add spec for DateTimeFieldController, bringing over test cases
removed from TimeRangeController.
2015-10-27 17:12:03 -07:00
55745d281f [Time Conductor] Update PlotAxis spec
...to reflect ability to change domain selection without
reinstantiation, supporting integration of domain-driven
formatting of X axis values in a plot.
2015-10-27 16:18:13 -07:00
8ba112498b [Time Conductor] Add test case for formats
Add test case to TimeRangeController to reflect that it responds
to changes in format selection.
2015-10-27 15:57:44 -07:00
44fc9423df Merge branch 'open-master' into open182
Merge in latest from master branch into topic branch
for nasa/openmctweb#182
2015-10-27 15:54:18 -07:00
bd8bbc6e8f [Time Conductor] Update PlotController spec
...and add check to updateValues in PlotController, to reflect
changes made to restore support for domain switching.
2015-10-27 15:52:11 -07:00
2ee53b17db [Time Conductor] Update ConductorTelemetryDecorator spec
...to reflect that TimeConductor exposes whole domain metadata, not
just key.
2015-10-27 15:46:21 -07:00
60e97eb94a [Time Conductor] Update ConductorRepresenter spec
...to reflect that TimeConductor exposes whole domain metadata, not
just key.
2015-10-27 15:43:31 -07:00
ce5a650d8c [Time Conductor] Update TimeConductor spec
...to reflect that whole domain metadata, not just key, is exposed.
2015-10-27 15:40:34 -07:00
5ff2e6b652 [Time Conductor] Simplify passing in of axis type
...in PlotAxis. Also avoids triggering failures of existing tests.
2015-10-27 15:39:20 -07:00
f30a2dd791 [Time Conductor] Update telemetryFormatter spec 2015-10-27 15:37:08 -07:00
920c83771d [Time Conductor] Update spec
...for TimeRangeController to reflect separation of date-time
inputs into a separate control.

Additionally, removed unused function.
2015-10-27 14:06:02 -07:00
a2d06583ca Merge pull request #216 from nasa/open-vista54a
Review and integrate open-vista54a into master
2015-10-27 14:04:49 -07:00
cc8a7e513f [Time Conductor] Rename bundle
Rename platform/time to platform/commonUI/formatting; nothing
particularly specific to time about these interfaces, and
removal of non-formatting-related methods makes this essentially
a UI concern.
2015-10-27 13:11:04 -07:00
9dce3a04cc [Time Conductor] Remove obsolete code
Remove code related to handling text input from TimeRangeController;
moved into DateTimeFieldController.
2015-10-27 13:07:58 -07:00
18cdaf1b53 [Time Conductor] Fix extension definition
For date time field controller; refer to correct implementation.
2015-10-27 13:03:04 -07:00
e5d4376f06 [Time Conductor] Use date time field
...from template for time controller.
2015-10-27 13:01:27 -07:00
6784c6567b [Time Conductor] Add date-time field
Add mct-control which includes both the date-time picker and
its corresponding text entry area, per code review feedback
from nasa/openmctweb#204.
2015-10-27 13:00:42 -07:00
71618ce4b9 [Time Conductor] Hide date-picker for non-UTC formats 2015-10-27 12:40:14 -07:00
e5ebbdaf7f [Time Conductor] Use domain formats in scrolling list 2015-10-27 12:37:53 -07:00
6b805183b0 [Time Conductor] Parse negative values
...in example telemetry
2015-10-27 12:35:15 -07:00
9723c65016 [Time Conductor] Retain domain selection in plot
Avoid various cases where domain selection is temporarily
overwritten due to transient plot state (e.g. because no
telemetry metadata is yet available due to asynchronous
retrieval of delegates.)
2015-10-27 12:09:54 -07:00
5d5425db04 [Frontend] Finessing and verifying CSS
vista#54
Verified against fixed position and scrolling views
using SineWave generator;
font-size of glyph tweaked;
2015-10-27 11:50:16 -07:00
7bd0e279b0 Merge remote-tracking branch 'github/master' into open182
Merge latest from master branch into topic branch for
nasa/openmctweb#182
2015-10-27 11:49:36 -07:00
caee1f520f [Time Conductor] Remove unused watches from plot 2015-10-27 11:46:41 -07:00
a8856c0612 [Frontend] Platform-specific mods to limits
vista#54
Refactor limits into multiple classes, separating
upr/lwr from red/yellow;
Modded SineWaveLimitCapability accordingly;
Normalized upr/lwr glyphs;
(cherry picked from commit a26d71b)
2015-10-27 11:43:28 -07:00
b375ede217 [Time Conductor] Recognize domain changes in plot 2015-10-27 11:39:23 -07:00
0bd1d53d25 [Time Conductor] Update plot to support different formats
...for telemetry domain values.
2015-10-27 11:22:19 -07:00
3fe386fcd6 [Time Conductor] Use formatService from telemetryFormatter 2015-10-27 11:21:44 -07:00
74f289cb34 Merge pull request #206 from nasa/open150b
[Plot] Ignore empty lines
2015-10-27 10:48:33 -07:00
82b321b3f9 [Time Conductor] Update displayed text when format changes 2015-10-27 10:28:32 -07:00
3bdaae292e [Time Conductor] Parse deltas relative to generation start 2015-10-27 10:27:29 -07:00
b627de45ba [Time Conductor] Fix bundle definition
...such that the delta domain exposes its format, and its format
is exposed correctly under the formats extension category.
Supports testing of time conductor support for alternative
time formatting.
2015-10-27 10:01:32 -07:00
2056f3aed0 [Time Conductor] Update property name
Renamed system to format per code review feedback,
nasa/openmctweb#204
2015-10-27 10:00:35 -07:00
b928b7d3f2 [Time Conductor] Fix time calculation in example telemetry 2015-10-27 09:54:09 -07:00
df6cd8f403 [Time Conductor] Expose domain options
...for example telemetry, to test domain selection.
2015-10-27 09:50:59 -07:00
c6b7121cf0 [Time Conductor] Expose getFormat correctly
...as an instance method of FormatProvider
2015-10-27 09:45:17 -07:00
86c61f7543 [Time Conductor] Fix extension definition
...for FormatProvider. Depends should be an array.
2015-10-27 09:41:32 -07:00
741fc57442 [Time Conductor] Add alternate domain
Begin adding a more timelike alternately-formatted domain
to sine waves; the 'delta' can be expressed as UTC timestamps
but will be formatted for display as a time relative to
when sine wave generation began.
2015-10-27 09:39:48 -07:00
daed6a5b06 Frontend] Tweaked sizes of mini-tabs and pane collapsed edge margin
open #90
2015-10-26 15:01:32 -07:00
498f854bef Frontend] Treeview expand/collapse anim timing tweaks
open #90
2015-10-26 14:54:09 -07:00
77a1a90905 Frontend] Normalizing styles for items and l-icon-link
open #90
2015-10-26 14:48:50 -07:00
19bdf743fc Added save/cancel 2015-10-26 14:14:56 -07:00
f655346f46 Frontend] More refining of collapsing treeview
open #90
Treeview and Inspector should be hidden by default
when opening in a new tab;
2015-10-26 12:19:37 -07:00
20cb2ff239 [Clocks/Timers] Bring in latest
Merge in latest from master branch to support review of
changes, nasa/openmctweb#207
2015-10-26 10:42:41 -07:00
7d42292184 Frontend] More refining of collapsing treeview
open #90
Treeview and search now transition properly when user collapses
left pane while searching;
2015-10-26 10:35:41 -07:00
ed9a5b0890 [Time Conductor] Roll back changes to example telemetry
In particular, remove the timeService implementation; this is made
obsolete by a switch to a simpler format-based approach.
2015-10-26 10:06:58 -07:00
aa23d358cc [Time Conductor] Use formatService instead of timeService 2015-10-26 10:03:49 -07:00
fd582d45d2 Frontend] More refining of collapsing treeview
open #90
Create and Search controls now properly change
to mini-tabs when treeview is collapsed;
Mods to .create-btn to use :before for symbol instead of span;
 TO-DO: why does mct-device alter the order of items in the rendered
 markup?
2015-10-26 10:01:52 -07:00
0f34d38451 [Time Conductor] Remove obsolete formatting classes 2015-10-26 09:57:14 -07:00
f8ee244475 [Time Conductor] Expose FormatProvider 2015-10-26 09:56:37 -07:00
322d1c8389 [Time Conductor] Add formatProvider
...to handle lookup of extensions of category 'formats'
2015-10-26 09:54:57 -07:00
c45bf45475 [Time Conductor] Remove non-format-like methods
...from UTCTimeSystem, and rename to UTCTimeFormat. Per code
review feedback from nasa/openmctweb#182.
2015-10-26 09:48:54 -07:00
8ee4fc9b71 [Frontend] Fixed spacing of panes and mini-tabs
open #90
Splitter spacing now being handled in CSS, so
modded calcs in MCTSplitPane to not add space;
CSS calcs adjusted; comments removed;
2015-10-24 18:43:13 -07:00
99c977ce9d [Frontend] Fixed mini-tab positioning algorithm
open #90
2015-10-24 17:48:59 -07:00
85809ae1e1 [Frontend] Fixed mini-tab positioning algorithm
open #90
2015-10-24 17:01:52 -07:00
4ec243c6fb Merge pull request #212 from nasa/open211
[RequireJS] Specify path for uuid
2015-10-24 07:48:45 -07:00
94649b12fd [Frontend] Splitter re-styling
open #90
Significant redo of splitter styling;
2015-10-23 20:06:38 -07:00
407d9881ff Merge pull request #200 from nasa/open-toc
[Documentation] Add table of contents
2015-10-23 19:16:51 -07:00
aa3cf70b22 [Frontend] Expand/collapse styling
open #90
Significant styling on new mini-tabs;
Main layout margins adjusted;
2015-10-23 18:24:55 -07:00
6ee622b3f5 Merge pull request #192 from nasa/open153
[CI] Remove non-existent bundle from procfile
2015-10-23 17:04:04 -07:00
95ea33b441 Removed notification from bundles 2015-10-23 17:02:25 -07:00
099d70b8d9 Merge pull request #175 from nasa/open147
[Entanglement] Add "Go To Original" action
2015-10-23 17:00:46 -07:00
3d996ac466 [RequireJS] Specify path for uuid
Specify path for uuid, making it available for any code that would require it,
without that code needing to know the path to it.

Fixes https://github.com/nasa/openmctweb/issues/211.
2015-10-23 16:32:05 -07:00
896dd8d2c7 Fixed jslint errors 2015-10-23 16:30:51 -07:00
789b640b9b Refactored dismiss and minimize out of NotificationService and on to returned Notification type 2015-10-23 16:28:42 -07:00
90828ef63d Merge remote-tracking branch 'github-open/open181' into open-master 2015-10-23 16:23:29 -07:00
8acf01ebdf [Tests] Declare deps for moment-duration-format
...in karma test runners.
2015-10-23 16:03:57 -07:00
ddb567aeb5 [Clocks/Timers] Declare dependency of moment-duration-format
...to ensure that moment is loaded first, such that
the plugin can correctly install itself.
nasa/openmctweb#204
2015-10-23 15:46:47 -07:00
17b3378655 [Frontend] Expand/collapse styling
open #90
Modding mini-tab look, just started;
2015-10-23 15:36:52 -07:00
efd209826d [Frontend] Inspector styling, in progress
open #90
Significant styling in object-inspector.html;
2015-10-23 15:14:07 -07:00
a43c8f2ce8 [Timeline] Disable timelines due to missing styles
WTD-1239.
2015-10-23 14:14:24 -07:00
fffe07e7e6 [Timeline] Remove namespacing from specs 2015-10-23 14:06:55 -07:00
26db524f0e [Timelines] Rename bundle 2015-10-23 13:57:15 -07:00
4fcef33c58 [Timelines] De-namespace timeline's DateTimeController 2015-10-23 13:56:34 -07:00
dc9369c0f1 [Timelines] Remove namespacing from controllers
WTD-1239
2015-10-23 13:54:19 -07:00
c5b786e5e0 [Timeline] De-namespace capabilities
WTD-1239.
2015-10-23 13:52:48 -07:00
3e0534c4c3 [Timeline] Update namespacing in templates
WTD-1239
2015-10-23 13:49:46 -07:00
19ad4c8174 [Timelines] Change namespacing for directives
WTD-1239
2015-10-23 13:48:07 -07:00
8159c365b5 [Timeline] Remove namespacing from README
WTD-1239
2015-10-23 13:45:54 -07:00
307047d3ac [Clocks/Timers] Remove namespacing from specs
WTD-1239
2015-10-23 13:44:39 -07:00
83f135e48c Merge remote-tracking branch 'github/master' into open1239 2015-10-23 13:39:09 -07:00
29bdc9d574 [Plot] Ignore empty lines
Ignore empty lines (plot lines with no data) when determining
domain extrema; avoids failure to draw multiple plot lines in
a telemetry panel, nasa/openmctweb#150.
2015-10-23 13:22:19 -07:00
a7ea4c3c6e [Frontend] Inspector styling, in progress
open #90
2015-10-23 12:35:55 -07:00
bf24ac7c93 [Search] Update field name
Update field name in GenericSearchProvider to reflect changes
from nasa/openmctweb#193. Avoids exceptions on mutation.

Additionally, add test case exercising relevant code and verifying
that reindexing is scheduled upon mutation as expected.
2015-10-23 12:23:01 -07:00
e05858e26b Added newline to end of source files 2015-10-23 12:11:37 -07:00
89046ecad5 fixed jslint error 2015-10-23 12:03:56 -07:00
fa7431d68b Added test case to DialogServiceSpec 2015-10-23 12:01:48 -07:00
78b528b4a5 Added additional test cases, and some tidying 2015-10-23 11:48:37 -07:00
1d3870d07f [Frontend] Manual integration of Inspector
open #90
open #73
Adding missed new files;
2015-10-23 11:42:06 -07:00
2452b25fd4 [Frontend] Manual integration of Inspector
open #90
open #73
In-progress manual integrated Sarah Hale's work on ObjectInspector;
2015-10-23 11:37:02 -07:00
0c4d422e2d [Frontend] Manual re-do of collapse/expand panes
open #90
Refactored templates to move all split-pane elements into browse.html;
2015-10-23 11:13:51 -07:00
a283a2a0d3 [Frontend] Manual re-do of collapse/expand panes
open #90
Animation, styles, hide-show added panes and splitters;
Finessed spacing;
trans-prop* mixins normalized and added delay arg;
2015-10-23 10:52:28 -07:00
827e1af581 [Frontend] Manual re-do of collapse/expand panes
open #90
Added code to MCTSplitter and MCTSplitPane to allow
toggling of CSS class 'resizing' on pane elements when
the user is actively using the splitter;
Added resize transition animation to split pane elements
when user not actively resizing;
2015-10-23 09:18:59 -07:00
fc751b1332 Merge remote-tracking branch 'origin/open181' into rems_data_merge 2015-10-22 21:31:45 -07:00
cdc2a407dc Fixed erroneous data 2015-10-22 21:30:13 -07:00
57f11a9767 [Frontend] Manual re-do of collapse/expand panes
open #90
Refined positioning of .mini-tab elements when
panes are collapsed;
2015-10-22 19:26:59 -07:00
3687cc5edd [Frontend] Manual re-do of collapse/expand panes
open #90
Fixed broken mobile styles;
Removed commented out scss;
2015-10-22 18:45:47 -07:00
bf17b77e82 Merge remote-tracking branch 'github/prod-uisymbols' into open90 2015-10-22 18:28:55 -07:00
536d5616d4 [Frontend] Manual re-do of collapse/expand panes
open #90
Major work on new .mini-tab elements, used
as controls to expand/collapse panes;
Cleaned up splitter hover behavior;
Changed mixin controlGrippy to not be tied
to :before;
2015-10-22 18:28:25 -07:00
59f094763b Merge pull request #193 from nasa/search-performance
Search performance
2015-10-22 16:58:02 -07:00
e3ef68bc6f Fixed jslint errors 2015-10-22 16:41:09 -07:00
83276d70d3 Removed MessageSeverity enum and MessageController 2015-10-22 16:29:10 -07:00
111b3bac09 [Time Conductor] Remove dateService
Replaced by timeService
2015-10-22 16:27:21 -07:00
67cf8d8cee [Time Conductor] Support index domain from sine wave 2015-10-22 16:24:55 -07:00
b4dd95490c [Time Conductor] Don't treat defaults as invalid 2015-10-22 16:07:21 -07:00
16e4c32709 [Time Conductor] Remove now dependency, fix domain switch
Remove dependency on now (current time can be retrieved via
timeService); fix domain-switching behavior such that changes
to time systems are reflected in changes to default bounds.
2015-10-22 16:05:09 -07:00
a154c9c870 [Time Conductor] Use timeService from control 2015-10-22 15:51:12 -07:00
1e71df5ce9 [Time Conductor] Implement timeService in sinewave telemetry
Switch from initial dateService interface to more practical
timeService interface.
2015-10-22 15:27:40 -07:00
5e9f38dadd [Time Conductor] Add dependency to UTCTimeProvider 2015-10-22 15:20:54 -07:00
552435b009 [Time Conductor] Add bundle for time handling 2015-10-22 15:20:12 -07:00
109ae3323d Added jsdoc and moved MessageController to dialogs from notifications 2015-10-22 15:10:53 -07:00
4f27104663 [Frontend] Manual re-do of collapse/expand panes
open #90
Implementing PaneController;
Added inspection pane and toggle button in
browse-object.html;
2015-10-22 14:26:22 -07:00
0053989de8 renamed dialog and notification 'actions' to 'options' 2015-10-22 14:14:21 -07:00
b98c1cdfe8 [Frontend] Manual re-do of collapse/expand panes
open #90
Renamed BrowseTreeController to PaneController;
Ensuring mobile functionality parity;
2015-10-22 13:34:16 -07:00
0628398b01 Moved notifications examples from 'testing' to examples 2015-10-22 13:30:34 -07:00
4ff03b081d [Time Conductor] Suppress date picker for non-UTC time systems 2015-10-22 13:08:37 -07:00
e8d7093eb5 [Time Conductor] Use time systems from time conductor 2015-10-22 13:07:04 -07:00
9bc4327c59 [Time Conductor] Add non-time-like domain
Add a non-time-like domain to sine wave generator telemetry,
to support integration of custom domain formatting into
time conductor.
2015-10-22 12:51:18 -07:00
c0fda5b572 [Time Conductor] Add JSDoc
Add typedefs relevant to the date aggregator; in particular,
document properties used to determine how to format timestamps
associated with a telemetry point.
2015-10-22 12:41:46 -07:00
950578f09b [Time Conductor] Hide datetime pickers for non-UTC domains 2015-10-22 12:20:15 -07:00
117470068a [Time Conductor] Use dateService from TimeRangeController 2015-10-22 12:17:08 -07:00
0d47b7c47d [Time Conductor] Expose dateService in bundle definition 2015-10-22 12:10:12 -07:00
c882b2d4c3 [Time Conductor] Implement date provider
Implement UTCDateProvider sufficient to pass spec.
2015-10-22 12:08:34 -07:00
794231143e [Time Conductor] Add spec for UTCDateProvider
Add test cases for UTCDateProvider, which will provide default
date/time formatting/parsing.
2015-10-22 11:55:38 -07:00
6b42d3bf4b [Time Conductor] Test DateAggregator 2015-10-22 11:54:46 -07:00
296d9f5acd Temporarily disable test 2015-10-22 11:38:30 -07:00
1c5101eca6 [Time Conductor] Add DateAggregator
Add DateAggregator, to allow composite services to expose
different ways of parsing/formatting dates.
nasa/openmctweb#182.
2015-10-22 11:30:57 -07:00
7468c0e150 Deploy to heroku 2015-10-22 11:30:06 -07:00
dc5feb8b1a Added some documentation to notification and dialog launchers 2015-10-22 10:54:48 -07:00
0fb9f3731a Edit mode and cancel buttons work 2015-10-22 10:09:09 -07:00
3080861764 Merge pull request #189 from nasa/open111
Developer Guide, Tutorials
2015-10-21 15:42:11 -07:00
dbebf08500 [Time Controller] Add test cases
...to verify behavior on text entry of dates.
2015-10-21 15:38:58 -07:00
847c356063 [Time Controller] Change color when input is invalid
nasa/openmctweb#181
2015-10-21 15:26:42 -07:00
06bcd28558 [Time Controller] Keep inputs in sync
Keep inputs in sync with displayed data in time controller,
without overwriting user-entered text. nasa/openmctweb#181
2015-10-21 15:22:00 -07:00
f88e8ebb51 [Time Controller] Update model state for text entry 2015-10-21 15:08:44 -07:00
6d2b2fd81e [Time Controller] Parse user-entered timestamps
nasa/openmctweb#181.
2015-10-21 14:46:12 -07:00
608800ae63 Merge remote-tracking branch 'github/master' into open181
Conflicts:
	platform/commonUI/general/res/templates/controls/time-controller.html
2015-10-21 14:40:42 -07:00
07818b0a6d [Time Controller] Show bounds in a text field
Show bounds in a text field to allow user editing; supports manual
editing of time controller bounds, nasa/openmctweb#181.
2015-10-21 14:35:18 -07:00
fdfb524eef Fixed scope of editMode variable 2015-10-21 12:06:11 -07:00
ef250f58de Marged style updates 2015-10-21 12:01:59 -07:00
15ed91f651 Added save buttons 2015-10-21 11:54:35 -07:00
074254a513 Frontend] Styling for New Edit Mode
open #198
Minor tweak to placeholder init content;
2015-10-21 11:38:03 -07:00
4c84789d5d Frontend] Styling for New Edit Mode
open #198
.l-flex styles refined;
Animation refinement;
.s-btn default vertical-align = top;
.tool-bar style tweaked;
Added title-label back into edit-action-buttons.html;
2015-10-21 11:35:36 -07:00
496cf85b7e [JSDoc] Correct mistake 2015-10-21 09:46:32 -07:00
833f57e284 [Search] Don't block UI between requests
Timeout subsequent calls to keepIndexing at the end of a
indexRequest, so that UI operations are not blocked.
2015-10-21 07:51:53 -07:00
cc97408433 Removed inserted TOC 2015-10-20 21:16:54 -07:00
93f8e61c40 roll back TOC generation 2015-10-20 21:12:14 -07:00
92573b817f Added drag to enable edit mode 2015-10-20 21:03:36 -07:00
9a63e99710 [Search] Add spec for ElasticSearchProvider
Add spec coverage for ElasticSearchProvider.  Also remove
unneeded guards for max number of results, as the aggregator
will always provide a max number of results.
2015-10-20 16:01:42 -07:00
21739fffd9 [Documentation] Add table of contents
Add table of contents to generated documents, without
modifying document sources; nasa/openmctweb#189.
2015-10-20 15:58:57 -07:00
5382cca435 [Frontend] Styling for New Edit Mode
open #198
In-progress styling of toolbar elements;
Revamped edit-action-buttons.html to use only icons;
2015-10-20 15:43:53 -07:00
77d81f899b [Style] JSLint compliance 2015-10-20 15:33:56 -07:00
fe3263fdfe [Search] Remove invalid specs 2015-10-20 15:27:46 -07:00
ce42429fbd [Search] expose constants, add fudge factor
The SearchAggregator exposes it's constants to add stability to
tests.

It also has a fudge factor which increaases the number of results
it requests from providers to better support pagination when using
client side filtering.
2015-10-20 15:17:15 -07:00
76151d09a0 [Search] use service for filters, add spec
Add a spec for the SearchController, and use the SearchService to
execute filters by supplying a filterPredicate.
2015-10-20 15:17:15 -07:00
ec7e6cc5b4 [Search] Update spec for Generic Search Worker 2015-10-20 15:17:14 -07:00
1ddce48f7e [Search] Specs for GenericSearchProvider
Write specs for GenericSearchProvider and resolve some implementation
bugs they uncovered.
2015-10-20 15:17:14 -07:00
98b5ff3c77 [Search] Decrement number of pending requests 2015-10-20 15:17:14 -07:00
14094a48fc [Search] Remove old specs in prep for rewrite
Remove old specs in prep for rewrite.
2015-10-20 15:16:54 -07:00
15c1bf20ab [Frontend] Styling for New Edit Mode
open #198
Refined CSS classing and animation timing;
2015-10-20 14:41:02 -07:00
685dd2114d [Frontend] Styling for New Edit Mode
open #198
Added Save and Cancel buttons;
Additional transition styling;
tool-bar styles refined;
2015-10-20 14:11:59 -07:00
6e30a25a6f [Frontend] Added new glyph
prod-uisymbols
Added e612 Save icon;
2015-10-20 12:44:09 -07:00
be79c104fb [Frontend] Added new glyph
prod-uisymbols
Added e612 Save icon;
2015-10-20 12:36:11 -07:00
6d08c81b3b First iteration of duplication complete 2015-10-20 12:18:30 -07:00
42fa5bfd7e [Frontend] Initial styles for New Edit Mode
open #198
Refactored elems in browse-object.html to use
flex layout;
New flex-row and flex-col general CSS classes;
New pulseBorder animation mixin;
2015-10-20 11:39:28 -07:00
89e763b515 Incremental commit of Duplication 2015-10-20 09:25:31 -07:00
2a1388772a Incremental commit of duplication 2015-10-19 17:32:43 -07:00
8e2a2eeba5 [Entanglement] Add license headers
...per code review feedback from nasa/openmctweb#175
2015-10-19 12:08:49 -07:00
fb0ce1eca8 [Frontend] New .loading class
open #190
Removed old .loading styles previously
commented out;
2015-10-19 11:13:50 -07:00
fa3821b50f Update of CopyService with new copy algorithm (incomplete) 2015-10-18 20:58:17 -07:00
0f63e4dde9 [Tests] Rewrite search aggregator specs 2015-10-16 17:06:23 -07:00
12efb47be7 [Search] Remove timeouts and timestamps
Remove timeouts and timestamps which were not effectively doing anything.
2015-10-16 16:09:51 -07:00
a2fce8e56c [Search] Rewrite elasticsearch provider with prototype
Rewrite the elasticsearch provider to use prototypes and clean up the implementation.

Now returns a modelResults object to keep it in line with the general search
provider.
2015-10-16 16:05:31 -07:00
78e5c0143b [Search] Overhaul generic search provider
Rewrite the generic search provider to use prototypes.  Increase performance
by utilizing the model service instead of the object service, and use a
simplified method of request queueing.
2015-10-16 15:30:14 -07:00
099591ad2e [Search] Aggregator returns objects, providers return models
Search providers return search results as models for domain objects, as the
actual number of max results is enforced by the aggregator, and because the
individual providers store and return the models for their objects already.

This lowers the amount of resources consumed instantiating domain objects, and
also allows the individual search providers to implement function-based
filtering on domain object models, which is beneficial as it allows the search
filtering in the search controller to be done before paginating of results.
2015-10-16 15:26:04 -07:00
b5505f372f [Search] Generic Worker Performance Tweaks
The generic search worker now does indexing work during the index operation,
ensuring that queries do not have to do extraneous or repeat calculations.

Change the return format slightly and fixed a bug in the GenericSearchProvider
which caused more objects than intended to be returned from the provider.
2015-10-16 12:39:41 -07:00
9ad860babd [Search] Rewrite search controller, tidy
Rewrite the search controller, making numerous changes and using prototypical
style.

First, the search controller immediately hides previous results when a new
search is started.  Secondly, the search controller ensures that search results
displayed match the currently entered query, preventing race conditions.  Finally,
the search controller uses a poor filtering option that means it may not display
all results.
2015-10-16 12:34:47 -07:00
87e317a6f5 [CI] Remove non-existent bundle from procfile
Remove the example/localstorage bundle from the procfile.

Fixes #153.
2015-10-16 11:33:42 -07:00
14722a6ef5 Reset histories before fetching 2015-10-16 08:32:44 -07:00
d7bd793bf3 [Frontend] New .loading class
open #190
CSS for revised .loading class;
Commented out/removed old .loading styles;
Theme constants for loading colors added
to theme files;
2015-10-15 16:23:42 -07:00
9d17768327 Updated tutorial to reference app.js built in web server instead of http-server 2015-10-15 15:51:54 -07:00
688718cad0 Fixed jslint errors 2015-10-15 13:10:03 -07:00
efb7611f6e Added Table of Contents generation 2015-10-15 12:35:38 -07:00
d3ff0a258e Added links to architecture document from services 2015-10-14 19:18:27 -07:00
4f18663c71 Fixed title in tutorials 2015-10-14 17:14:00 -07:00
8c2a29e895 Modified file copy prcess to prevent encoding of png's as utf8 2015-10-14 17:11:08 -07:00
821a1a485c [Production] Updated symbols font to v25
open #188
Added icon-dataset e611;
2015-10-14 16:45:55 -07:00
f08725b6a2 Fixed jshint errors 2015-10-14 16:22:11 -07:00
301b73c6c6 Banner notifications are not maximized if 'info' message 2015-10-14 16:22:10 -07:00
912e70d219 Fixed failing tests, and added stopPropagation to prevent maximizing of notifications on action click or dismiss 2015-10-14 16:22:10 -07:00
1d41939418 Fixed failing tests 2015-10-14 16:22:10 -07:00
ee382be38d Added transitions and severity classes 2015-10-14 16:22:10 -07:00
34ea3ad9bb [Frontend] Banner message animations; class renaming
open #163
open #170
Added transition animations to message banners;
Renamed $colorStatus* class names to map more
closely to severity constants;
2015-10-14 16:22:10 -07:00
2ba6f18c59 Making changes to implement display queue 2015-10-14 16:22:10 -07:00
b2a09599a0 Modified messages dialog launcher 2015-10-14 16:22:10 -07:00
11264759ec Added highest severity calculation in NotifiationService 2015-10-14 16:22:10 -07:00
c0ff6de27b Added notification indicator 2015-10-14 16:22:10 -07:00
60dda8a7a4 Updated 2015-10-14 16:21:54 -07:00
9cc0c0b06f [Frontend] Polishing of styles for time-controller
open #179
open #180
Font-size normalized for time-controller and domain selector;
Layout of object-holder and time-controller fixed;
2015-10-14 10:25:05 -07:00
5b617295e9 Did review of tutorials 2015-10-13 13:54:24 -07:00
53a3a2f459 Additional editing 2015-10-13 13:54:24 -07:00
64fae21d16 Fixed code formatting error 2015-10-13 13:54:24 -07:00
87f48aac35 Fixed code formatting error 2015-10-13 13:54:24 -07:00
e43a788a6d Fixed code formatting error 2015-10-13 13:54:24 -07:00
fa487e026e Fixed code formatting error 2015-10-13 13:54:24 -07:00
3701fd75dd Finished first pass of tutorials 2015-10-13 13:54:24 -07:00
d787e84fd4 Updated tutorials 2015-10-13 13:54:24 -07:00
1922e1e241 Finished developer guide
Fixed date of modification
2015-10-13 13:54:24 -07:00
e52f53b7ff Fixed markdown 2015-10-13 13:54:24 -07:00
d1be256691 Reverted gendocs changes 2015-10-13 13:54:12 -07:00
0538d6e60f Initial working version 2015-10-12 19:54:03 -07:00
1fcf900271 Added telemetry request ID prefix 2015-10-12 10:41:21 -07:00
183468fcbf Trying to figure out why requests have no 'source' property 2015-10-10 12:17:30 -07:00
82ae9e72c1 Integrated notifications list 2015-10-09 14:17:55 -07:00
c703714cb3 Merge remote-tracking branch 'github-open/open115b' into open-master 2015-10-09 13:50:27 -07:00
b48a07cd3e Merge pull request #168 from nasa/mct80
[Plot] Dates show 1970 when there is no data
2015-10-09 13:40:04 -07:00
8c29c8ed0e Merge remote-tracking branch 'github-open/open151' into open-master 2015-10-09 13:38:20 -07:00
85300d3743 Refactored DialogService a little 2015-10-09 11:57:47 -07:00
5763511ec8 [Time Conductor] Update specs
Update specs to reflect merge of latest from master into
topic branch for nasa/openmctweb#115, domain selector.
2015-10-09 11:17:57 -07:00
2accf21518 [Time Conductor] Add missing semicolon
...to pass code style checks.
2015-10-09 11:08:02 -07:00
28c42fcd4c [Time Conductor] Fix merge issues
Fix merge issues not addressed during conflict resolution.
2015-10-09 11:06:41 -07:00
fe3e3325e1 Merge branch 'open170' into open155 2015-10-09 11:00:09 -07:00
2b97d61d6c Further integration work 2015-10-09 10:59:36 -07:00
1efa97e6f5 Merge remote-tracking branch 'github/master' into open115b
Conflicts:
	platform/features/conductor/src/ConductorRepresenter.js
2015-10-09 10:32:43 -07:00
756f728865 Merge remote-tracking branch 'github/open1515' into open-master 2015-10-09 10:11:11 -07:00
d8276c532b Merge remote-tracking branch 'github/master' into open115b
Merge in latest from master into topic branch for
nasa/openmctweb#115

Conflicts:
	platform/features/conductor/src/ConductorRepresenter.js
	platform/features/conductor/src/ConductorTelemetrySeries.js
	platform/features/conductor/src/TimeConductor.js
	platform/features/conductor/test/ConductorRepresenterSpec.js
	platform/features/conductor/test/ConductorTelemetrySeriesSpec.js
2015-10-09 10:04:15 -07:00
fc0bfa77db Merge remote-tracking branch 'github-open/open141' into open141-integration 2015-10-09 09:52:35 -07:00
12c6e53939 Merge remote-tracking branch 'github-open/open157' into open-master 2015-10-09 09:47:23 -07:00
8093fcbda1 Merge remote-tracking branch 'github-open/open139c' into open-master 2015-10-09 09:42:22 -07:00
0ea5721f76 Merge remote-tracking branch 'github-open/open-readme-cairo' into open-master 2015-10-09 09:38:32 -07:00
520d17f9db [Time Conductor] Test span constraints
Verify that inner and outer spans do not become zero when
user input might otherwise cause this.
2015-10-09 09:29:01 -07:00
7532db5f49 [Time Conductor] Add test cases
Add test cases to TimeRangeController; testing existing functionality
in the context of nasa/openmctweb#151
2015-10-09 07:58:10 -07:00
ebd8fdeee3 [Time Conductor] Enforce inner minimums on outer changes 2015-10-09 07:32:46 -07:00
954fdd5906 [Frontend] Sanding/positioning and Cancel button added to Messasges dialog
open #159
open #170
Added Cancel button to Messages dialog in DialogService.js;
Important tweaks to layout of messages to allow
bottom-bar to align to bottom in singleton dialog view;
Revised status colors in theme's constants files;
2015-10-08 19:10:26 -07:00
9b11d95437 shuttle 2015-10-08 16:04:14 -07:00
f738f84075 [Time Conductor] Enforce minimum outer span 2015-10-08 16:02:47 -07:00
cc19a0acba [Time Conductor] Enforce minimum inner span
nasa/openmctweb#151.
2015-10-08 15:51:23 -07:00
8267058487 Begun integration of Notifications framework with Charles' code 2015-10-08 15:08:26 -07:00
4a913376ac Merge branch 'open170' into open155 2015-10-08 13:57:25 -07:00
5ff3c71523 Fixed the Banner Controller which was not returning reference to controller 2015-10-08 13:56:59 -07:00
ba614fe2d6 Trying to sort out error 2015-10-08 13:46:42 -07:00
5e713f279b Moved some more vars 2015-10-08 13:18:47 -07:00
df590107cb Moved some more vars 2015-10-08 13:17:12 -07:00
fc8630dbc6 Moved some vars 2015-10-08 13:15:31 -07:00
12a94f828a Added some more semicolons 2015-10-08 13:14:30 -07:00
0e840ae003 [Frontend] Messages major work
open #159
open #170
CSS, markup and JS test files initially complete;
Templates renamed for consistency;
message-type icons styled;
Added severity constant "alert";
TO-DO: check refactored CSS against mobile,
see what's broken;
2015-10-08 13:09:41 -07:00
e1e5919f68 Added some semicolons 2015-10-08 13:08:43 -07:00
b2cd66bd5d Merged in charles' changes 2015-10-08 11:26:31 -07:00
af1fa6e77a added semicolons to test spec 2015-10-08 11:13:32 -07:00
5ff90f7254 Added more tests, some refactoring 2015-10-08 11:03:48 -07:00
0ca9e5c952 [Frontend] Message list initially working
open #159
open #170
Thank you @akhenry;
launchMessages function added to DialogLaunchController.js;
New message-list.html template;
message.html is now its own include;
blocking-message.html renamed to
overlay-blocking-message.html;
2015-10-08 09:37:43 -07:00
67d78772fa Added providers, adapters, data dictionary 2015-10-08 08:46:44 -07:00
dbcad51325 [Frontend] Tiny mod to dialog-launch.html
open #159
open #170
2015-10-07 21:32:34 -07:00
8ee93d9603 [Frontend] Tweaks to dialog-launch; added ui-symbols
open #159
open #170
2015-10-07 18:26:11 -07:00
ac59df9595 [Frontend] Added type-icon to message dialogs
open #159
open #170
Percent complete added to progress-bar.html;
Refined overlay height;
2015-10-07 17:56:25 -07:00
182eff977c [Frontend] Dialog and overlay layout/positioning mods
open #159
open #170
Restructured overlay size and positioning approach
for better flexibility;
Getting new dialogs and the overlay to
play nicely in mobile context;
2015-10-07 16:36:55 -07:00
3af23b7bc5 Added test cases for notification service 2015-10-07 14:30:19 -07:00
7f529eec68 [Frontend] Mods to OverlayService
open #159
open #170
OverlayService can now be passed typeClass,
which is added to the CSS class of the overlay's
mct-include tag - intent is to allow the overlay
to size itself based on the type of content to be
displayed;
2015-10-07 12:11:30 -07:00
ad4292f1e9 [Frontend] Mods to DialogService model and dialogs
open #159
open #170
Properly re-cast model.hint and added model.actionText;
Moved progressText into progress-bar.html;
Tweaks to dialog styles;
Tweaked styles for progress bar;
Normalized various dialog templates markup;
2015-10-07 11:45:08 -07:00
6840e596a5 [Frontend] Adding progress-bar.html template
open #159
open #170
2015-10-07 10:25:47 -07:00
bf41d82a78 [Entanglement] Restore missing specs
Restore specs which had been omitted from suite.json (but currently
succeed for the relevant scripts); done in the context of
nasa/openmctweb#147
2015-10-06 16:50:35 -07:00
a4944717a1 [Location] Test getOriginal method 2015-10-06 16:47:37 -07:00
70bbd3cf97 [Entanglement] Add test cases for Go To Original 2015-10-06 16:37:37 -07:00
e3afaf0842 [Entanglement] Add Go To Original
nasa/openmctweb#147
2015-10-06 16:26:08 -07:00
60f2f9fb6c [Location] Add getOriginal method
Add a getOriginal method to the location capability, to simplify
loading of original versions of objects. nasa/openmctweb#147
2015-10-06 16:18:51 -07:00
30fd8c451e [Frontend] Progress bar as include; progress dialog
open #163
open #170
Progress bar now mct-include;
Progress dialog sanded;
Dialog launcher modded;
2015-10-06 16:10:27 -07:00
bf0014f1b9 Temporary commit 2015-10-06 14:45:10 -07:00
2aeebff652 Merging in Andrew's work so far on progress and blocking dialogs
open #163
open #170

Squashed commit of the following:

commit ec7edb58ca
Author: Henry <akhenry@aitutaki.ndc.nasa.gov>
Date:   Mon Oct 5 10:39:06 2015 -0700

    Rename dialogSeverity to messageServity for reuse with notifications

commit d20abe01dd
Author: Henry <akhenry@aitutaki.ndc.nasa.gov>
Date:   Fri Oct 2 16:40:29 2015 -0700

    Fixed docs

commit 227da18498
Author: Henry <akhenry@aitutaki.ndc.nasa.gov>
Date:   Fri Oct 2 16:27:41 2015 -0700

    Added semicolon

commit 22d424f96e
Author: Henry <akhenry@aitutaki.ndc.nasa.gov>
Date:   Fri Oct 2 16:26:29 2015 -0700

    Fixed code errors

commit 2c77c3647c
Author: Henry <akhenry@aitutaki.ndc.nasa.gov>
Date:   Fri Oct 2 16:24:01 2015 -0700

    Initial commit of blocking dialog service with test code to demonstrate usage
2015-10-06 14:41:58 -07:00
471a25a625 [Frontend] Progress bar/ message banner markup and styling
open #170
Major work on progress bar;
2015-10-06 14:34:53 -07:00
134b749bbf [Generic Search] Track pending indexes
Track domain objects which have indexing operations pending,
to avoid redundantly indexing in cases where a broader
indexed check is insufficient.
2015-10-05 10:11:38 -07:00
36d06e8b54 [Generic Search] Reduce flush interval
Per discussion from nasa/openmctweb#141, minimize the
interval at which new objects get indexed, instead of
presuming requirements for CPU utilization.
2015-10-05 10:06:55 -07:00
5520d90984 [Generic Search] Remove comments
Per code review, nasa/openmctweb#165
2015-10-05 09:57:46 -07:00
77b0086d18 [Generic Search] Use appropriate data structure
Per code review, nasa/openmctweb#165
2015-10-05 09:54:57 -07:00
d606ee421f [Frontend] New template for message-banner
open #159
open #170
Added markup and beginning of styling;
Temporarily added mct-include elem to bottombar.html;
2015-10-02 18:37:01 -07:00
926aed72c3 [Frontend] Style and display changes to status block
open #159
open #170
Refined structure in status block markup and css;
Added status-related color constants to theme scss files;
2015-10-02 17:42:31 -07:00
7014808c13 [Frontend] Style and display changes to status block
open #159
open #170
Moved classes from _bottom-bar.scss into _layout.scss
and new file _messages.scss;
Removed  _bottom-bar.scss;
Revised display behavior of .status.block to show label on
hover;
2015-10-02 15:41:02 -07:00
3cf62ded08 Plot axes do not show labels when no data
Added semicolon

Added test for hasDomainData()

Added test for negative case on domain data check

Removed label test due to mocked telemetry formatter

Uncommented test commented by accident

Removed extra space
2015-10-01 16:35:14 -07:00
bea5002752 [Search] Add test cases
Add test cases related to throttled loading of domain
objects to index, nasa/openmctweb#141.
2015-09-30 17:23:52 -07:00
d04c5e6858 [Search] Update GenericSearch spec
nasa/openmctweb#141.
2015-09-30 17:08:47 -07:00
0d1f3bf87a [Throttle] Update spec
Conflicts:
	platform/features/layout/test/FixedControllerSpec.js
2015-09-30 15:48:17 -07:00
61a272b257 [API Redesign] Add note about Web Workers
Add note about RequireJS as a dependency injector
facilitating use from web workers, as noted in
comments to nasa/openmctweb#141
2015-09-30 13:59:53 -07:00
b632926d8e [Search] Fix mutation.listen
Update mutation.listen to match previous variable
names changes related to nasa/openmctweb#141.
2015-09-30 13:09:55 -07:00
78f3f8367e [Search] Vary batch size
When indexing for generic search, issue new batches of
requests as individual requests finish (instead of waiting
for whole batches to finish) varying size to keep the
number of outstanding requests below some maximum.

nasa/openmctweb#141
2015-09-29 18:37:44 -07:00
85ac4a9a32 [Search] Log indexing time
...to aid in tuning of generic search parameters.
2015-09-29 18:37:44 -07:00
ef527df381 [Time Conductor] Fix throttle bug
Fix a timing/ordering issue in throttle which
allowed some throttled invocations to be ignored.
WTD-1515
2015-09-29 18:37:44 -07:00
c2868a4573 [Time Conductor] Allow arguments for throttled functions
WTD-1515. Ensures that bounds passed in from
the time controller get appropriately captured.
2015-09-29 18:37:44 -07:00
77c66053f3 [Search] Change indexing approach
Change indexing approach to more carefully control the
rate at which objects are loaded to be indexed, to improve
performance. nasa/openmctweb#141.
2015-09-29 18:37:44 -07:00
0891e15936 [Search] Add digest indicator
Add digest indicator to example/profiling to aid in diagnosing
digest-related performance issues (or ruling out excessive digest
cycles as a cause of performance issues.)
2015-09-29 18:37:44 -07:00
2979ee90a3 Revert "[Search] Don't trigger digest cycles while indexing"
This reverts commit 4b8a5ac0b257737ee33effc966816afca6c11b94.
Performance measurements indicates this is harmful for performance,
although this is not well-explained.
2015-09-29 18:37:44 -07:00
77c399f2a2 [Search] Don't trigger digest cycles while indexing
Avoid triggering digest cycles while indexing;
remove extra call to $timeout
2015-09-29 18:37:44 -07:00
fe8543158e [Search] Fix reindexing
Flag domain objects as non-indexed on mutation to ensure
reindexing. Done in the context of nasa/openmctweb#141.
2015-09-29 18:37:44 -07:00
37dede568c Added Capabilities 2015-09-29 15:30:12 -07:00
a4f3e0d776 Plot domain labels showing 1970 if no data 2015-09-29 15:28:55 -07:00
866c8882ca [Search] Listen on a global mutation topic
Listen on a global mutation topic to remove the need to retain
listeners per domain object.
2015-09-29 11:50:30 -07:00
ad7d3d642e [Search] Move reindex function
Move function used to listen for mutation changes (to trigger
reindexing) up in scope, to avoid retaining references to
domain objects via closure. nasa/openmctweb#141

Also, includes misc. whitespace normalization (provided by
code editor.)
2015-09-29 10:54:20 -07:00
f198c281bc [Mobile] Suppress Create button on mobile
nasa/openmctweb#157
2015-09-28 15:57:55 -07:00
00ac249ee2 [Time Conductor] Position domain selector
nasa/openmtweb#115
2015-09-25 16:06:11 -07:00
00aa6821d1 Merge remote-tracking branch 'github/open117' into open115b 2015-09-25 15:31:27 -07:00
b3fb06ba3f Up to page 52 2015-09-25 14:28:52 -07:00
f5a4a370f9 [Persistence] Add persisted timestamp
...to any domain object models loaded from persistence
which do not have one. The presence of this timestamp
is necessary for the persistence capability to determine
whether an object should be created or updated when a
request to persist is made. nasa/openmctweb#139.
2015-09-25 11:47:59 -07:00
2848a8458b [Time Conductor] Avoid exception
Avoid exception when trying to generate a single datum in
cases where there is no data yet available.
2015-09-25 11:05:18 -07:00
cbaf45afe9 [Time Conductor] Update specs
nasa/openmctweb#115
2015-09-25 10:40:19 -07:00
b7a612127d Added additional sections, up to Templates 2015-09-25 09:09:34 -07:00
ff1fd26efc [Time Conductor] Change method name
Prefer simpler method names for public API.
2015-09-24 17:09:06 -07:00
4ced6c44a6 [Time Conductor] Ignore empty series
...when updating Fixed Position view.
2015-09-24 17:01:50 -07:00
13525a67c2 [Time Conductor] Fix domain-based calculations
...in example telemetry, to support development work
on time conductor.
2015-09-24 13:21:51 -07:00
2f4cf44229 Added additional pages to developer's guide MD version 2015-09-24 13:17:46 -07:00
cc6b6538d5 Merge branch 'open1515' into open115 2015-09-24 12:19:08 -07:00
0c7de98195 [Time Conductor] Use active domain in binary search 2015-09-24 12:18:47 -07:00
73e959f95a Incremental commit of developer's guide 2015-09-24 09:44:24 -07:00
3d8aec2d01 [Time Conductor] Pass domain with events 2015-09-23 17:26:56 -07:00
928e31b548 [Common UI] Avoid apply-in-a-digest
Don't invoke  from mct-resize when first observing
an element's size during linking; observed issue in the
context of adding domain selector to time conductor.
2015-09-23 17:22:32 -07:00
f182d1f2c4 [Time Conductor] Include domain selection in requests
...as well as use as default in a telemetry series.
2015-09-23 17:14:40 -07:00
d238b669a5 [Time Conductor] Show domain options 2015-09-23 17:09:38 -07:00
5d5a7c26c5 [Time Conductor] Maintain domain state
Maintain domain state in the time conductor; add a default list of
domains to choose from.
2015-09-23 16:53:12 -07:00
0b0cee3afb [Example] Add domain
Add a second domain to example telemetry, to support
addition of a domain selector to the time conductor;
nasa/openmctweb#115
2015-09-23 16:43:58 -07:00
0260e6fff4 Merge branch 'open1515' into open115 2015-09-23 16:05:09 -07:00
7dc13dab66 [Readme] Add link to node-canvas 2015-09-23 14:37:49 -07:00
e67a2e63cf [Readme] Add notes on building documentation
Add notes to README about building documentation; in
particular, document the need to install libcairo.
2015-09-23 13:59:05 -07:00
b4c0de84d8 Intermediary commit; considering imperative plugins 2015-09-16 16:32:48 -07:00
8ce8080253 [Timelines] Begin removing namespacing
Begin de-namespacing timelines/activities for inclusion
in open source. WTD-1239
2015-09-15 08:34:15 -07:00
96f72b3765 [Clocks] Add license, change keys
Un-namespace keys in clock plugin, and add licensing
info for moment-duration-format. WTD-1239
2015-09-14 16:52:56 -07:00
c932e953bc [Plugins] Bring over timeline, clock plugins
WTD-1239
2015-09-14 16:45:41 -07:00
c91e914c22 [API Redesign] Add proposal to improve fault tolerance
Related to #79
2015-09-11 12:26:45 -07:00
c2971fd485 [API] Propose telemetry API revisions 2015-09-04 09:30:09 -07:00
7d94e20c8f [API] Add proposals for capability changes
WTD-1237
2015-09-01 09:36:04 -07:00
8f8dd6c11f [API] Propose nomenclature change
WTD-1237
2015-08-27 16:01:47 -07:00
7f0f03e787 Fixed typo 2015-08-25 14:20:27 +03:00
553e226a5d [API] Add proposal for removing delegation 2015-08-20 14:34:59 -07:00
dfacf08e45 [API] Propose registering instances
WTD-1237
2015-08-19 13:44:34 -07:00
e7fa0e9f21 [API] Add proposal w.r.t. third-party APIs
WTD-1237
2015-08-19 13:26:58 -07:00
ccfafb6f89 [API] Add more proposals
WTD-1237
2015-08-19 13:07:54 -07:00
097794d94f [API] Smaller redesign notes 2015-08-18 17:55:15 -07:00
cd51c359eb [API] Add notes on bundles to API redesign 2015-08-18 16:37:58 -07:00
2adf84b082 [API] Add proposal for wrapping Angular services 2015-08-18 16:14:14 -07:00
4c00d5d58f [API] Propose view changes 2015-08-18 15:45:36 -07:00
844d608fb9 [API] Begin proposing changes 2015-08-18 14:02:30 -07:00
d46eea64e4 Merge remote-tracking branch 'github/api-redesign' into api-redesign
Conflicts:
	docs/src/design/proposals/APIRedesign.md
2015-08-17 09:56:46 -07:00
4d4fe7f626 [API] Incorporate newer feedback 2015-08-17 09:49:34 -07:00
12760b63b9 [API] Add additional feedback 2015-08-17 09:38:30 -07:00
8fae298fde [API] Fix heading depth 2015-08-14 12:32:51 -07:00
7ddaa4614b [API] Fix markdown formatting 2015-08-14 12:23:11 -07:00
f1bc15bf4f [API] Begin adding notes for API redesign 2015-08-14 12:18:53 -07:00
2109 changed files with 207248 additions and 141965 deletions

330
.circleci/config.yml Normal file
View File

@ -0,0 +1,330 @@
version: 2.1
orbs:
node: circleci/node@5.2.0
browser-tools: circleci/browser-tools@1.3.0
executors:
pw-focal-development:
docker:
- image: mcr.microsoft.com/playwright:v1.48.1-focal
environment:
NODE_ENV: development # Needed to ensure 'dist' folder created and devDependencies installed
PERCY_POSTINSTALL_BROWSER: 'true' # Needed to store the percy browser in cache deps
PERCY_LOGLEVEL: 'debug' # Enable DEBUG level logging for Percy (Issue: https://github.com/nasa/openmct/issues/5742)
PERCY_PARALLEL_TOTAL: 2
ubuntu:
machine:
image: ubuntu-2204:current
docker_layer_caching: true
commands:
build_and_install:
description: 'All steps used to build and install.'
parameters:
node-version:
type: string
steps:
- checkout
- node/install:
node-version: << parameters.node-version >>
- node/install-packages
generate_and_store_version_and_filesystem_artifacts:
description: 'Track important packages and files'
steps:
- run: |
[[ $EUID -ne 0 ]] && (sudo mkdir -p /tmp/artifacts && sudo chmod 777 /tmp/artifacts) || (mkdir -p /tmp/artifacts && chmod 777 /tmp/artifacts)
printenv NODE_ENV >> /tmp/artifacts/NODE_ENV.txt || true
npm -v >> /tmp/artifacts/npm-version.txt
node -v >> /tmp/artifacts/node-version.txt
ls -latR >> /tmp/artifacts/dir.txt
- store_artifacts:
path: /tmp/artifacts/
download_verify_codecov_cli:
description: 'Download and verify Codecov CLI'
steps:
- run:
name: Download and verify Codecov CLI
command: |
# Download Codecov CLI
curl -Os https://cli.codecov.io/latest/linux/codecov
# Import Codecov's GPG key
curl https://keybase.io/codecovsecurity/pgp_keys.asc | gpg --no-default-keyring --keyring trustedkeys.gpg --import
# Download and verify the SHA256SUM and its signature
curl -Os https://cli.codecov.io/latest/linux/codecov.SHA256SUM
curl -Os https://cli.codecov.io/latest/linux/codecov.SHA256SUM.sig
gpgv codecov.SHA256SUM.sig codecov.SHA256SUM
# Verify the checksum
shasum -a 256 -c codecov.SHA256SUM
# Make the codecov executable
[[ $EUID -ne 0 ]] && sudo chmod +x codecov || chmod +x codecov
./codecov --help
generate_e2e_code_cov_report:
description: 'Generate e2e code coverage artifacts and publish to codecov.io. Needed to that we can ignore the exit code status of the npm run test'
parameters:
suite:
type: string
steps:
- run: npm run cov:e2e:report || true
- download_verify_codecov_cli
- run:
name: Upload coverage report to Codecov
command: |
./codecov --verbose upload-process --disable-search \
-t $CODECOV_TOKEN \
-n 'e2e-<<parameters.suite>>'-${CIRCLE_WORKFLOW_ID} \
-F e2e-<<parameters.suite>> \
-f ./coverage/e2e/lcov.info
jobs:
npm-audit:
parameters:
node-version:
type: string
executor: pw-focal-development
steps:
- build_and_install:
node-version: <<parameters.node-version>>
- run: npm audit --audit-level=low
- generate_and_store_version_and_filesystem_artifacts
lint:
parameters:
node-version:
type: string
executor: pw-focal-development
steps:
- build_and_install:
node-version: <<parameters.node-version>>
- run: npm run lint
- generate_and_store_version_and_filesystem_artifacts
unit-test:
parameters:
node-version:
type: string
executor: pw-focal-development
steps:
- build_and_install:
node-version: <<parameters.node-version>>
- browser-tools/install-chrome:
replace-existing: false
- run:
command: |
mkdir -p dist/reports/tests/
TESTFILES=$(circleci tests glob "src/**/*Spec.js")
echo "$TESTFILES" | circleci tests run --command="xargs npm run test" --verbose
- download_verify_codecov_cli
- run:
name: Upload coverage report to Codecov
command: |
./codecov --verbose upload-process --disable-search \
-t $CODECOV_TOKEN \
-n 'unit-test'-${CIRCLE_WORKFLOW_ID} \
-F unit \
-f ./coverage/unit/lcov.info
- store_test_results:
path: dist/reports/tests/
- store_artifacts:
path: coverage
- when:
condition:
equal: [42, 42] # Always generate version artifacts regardless of test failure https://discuss.circleci.com/t/make-custom-command-run-always-with-when-always/38957/2
steps:
- generate_and_store_version_and_filesystem_artifacts
e2e-test:
parameters:
suite: #ci or full
type: string
executor: pw-focal-development
parallelism: 8
steps:
- build_and_install:
node-version: lts/hydrogen
- when: #Only install chrome-beta when running the 'full' suite to save $$$
condition:
equal: ['full', <<parameters.suite>>]
steps:
- run: npx playwright install chrome-beta
- run:
command: |
mkdir test-results
TESTFILES=$(circleci tests glob "e2e/**/*.spec.js")
echo "$TESTFILES" | circleci tests run --command="xargs npm run test:e2e:<<parameters.suite>>" --verbose --split-by=timings
- when:
condition:
equal: [42, 42] # Always run codecov reports regardless of test failure https://discuss.circleci.com/t/make-custom-command-run-always-with-when-always/38957/2
steps:
- generate_e2e_code_cov_report:
suite: <<parameters.suite>>
- store_test_results:
path: test-results/results.xml
- store_artifacts:
path: test-results
- store_artifacts:
path: coverage
- store_artifacts:
path: html-test-results
- when:
condition:
equal: [42, 42] # Always generate version artifacts regardless of test failure https://discuss.circleci.com/t/make-custom-command-run-always-with-when-always/38957/2
steps:
- generate_and_store_version_and_filesystem_artifacts
e2e-mobile:
executor: pw-focal-development
steps:
- build_and_install:
node-version: lts/hydrogen
- run: npm run test:e2e:mobile
- when:
condition:
equal: [42, 42] # Always run codecov reports regardless of test failure https://discuss.circleci.com/t/make-custom-command-run-always-with-when-always/38957/2
steps:
- generate_e2e_code_cov_report:
suite: full
- store_test_results:
path: test-results/results.xml
- store_artifacts:
path: test-results
- store_artifacts:
path: coverage
- store_artifacts:
path: html-test-results
- when:
condition:
equal: [42, 42] # Always generate version artifacts regardless of test failure https://discuss.circleci.com/t/make-custom-command-run-always-with-when-always/38957/2
steps:
- generate_and_store_version_and_filesystem_artifacts
e2e-couchdb:
executor: ubuntu
steps:
- build_and_install:
node-version: lts/hydrogen
- run: npx playwright@1.48.1 install #Necessary for bare ubuntu machine
- run: |
export $(cat src/plugins/persistence/couch/.env.ci | xargs)
docker compose -f src/plugins/persistence/couch/couchdb-compose.yaml up --detach
sleep 3
bash src/plugins/persistence/couch/setup-couchdb.sh
- run: sh src/plugins/persistence/couch/replace-localstorage-with-couchdb-indexhtml.sh #Replace LocalStorage Plugin with CouchDB
- run: npm run test:e2e:couchdb
- when:
condition:
equal: [42, 42] # Always run codecov reports regardless of test failure https://discuss.circleci.com/t/make-custom-command-run-always-with-when-always/38957/2
steps:
- generate_e2e_code_cov_report:
suite: full #add to full suite
- store_test_results:
path: test-results/results.xml
- store_artifacts:
path: test-results
- store_artifacts:
path: coverage
- store_artifacts:
path: html-test-results
- when:
condition:
equal: [42, 42] # Always generate version artifacts regardless of test failure https://discuss.circleci.com/t/make-custom-command-run-always-with-when-always/38957/2
steps:
- generate_and_store_version_and_filesystem_artifacts
mem-test:
executor: pw-focal-development
steps:
- build_and_install:
node-version: lts/hydrogen
- run: npm run test:perf:memory
- store_test_results:
path: test-results/results.xml
- store_artifacts:
path: test-results
- store_artifacts:
path: html-test-results
- when:
condition:
equal: [42, 42] # Always run codecov reports regardless of test failure https://discuss.circleci.com/t/make-custom-command-run-always-with-when-always/38957/2
steps:
- generate_and_store_version_and_filesystem_artifacts
perf-test:
executor: pw-focal-development
steps:
- build_and_install:
node-version: lts/hydrogen
- run: npm run test:perf:localhost
- run: npm run test:perf:contract
- store_test_results:
path: test-results/results.xml
- store_artifacts:
path: test-results
- store_artifacts:
path: html-test-results
- when:
condition:
equal: [42, 42] # Always run codecov reports regardless of test failure https://discuss.circleci.com/t/make-custom-command-run-always-with-when-always/38957/2
steps:
- generate_and_store_version_and_filesystem_artifacts
visual-a11y:
parameters:
suite:
type: string # ci or full
executor: pw-focal-development
parallelism: 2
steps:
- build_and_install:
node-version: lts/iron
- run: SHARD="$((${CIRCLE_NODE_INDEX}+1))"; npm run test:e2e:visual:<<parameters.suite>> -- --shard=${SHARD}/${CIRCLE_NODE_TOTAL}
- store_test_results:
path: test-results/results.xml
- store_artifacts:
path: test-results
- store_artifacts:
path: html-test-results
- when:
condition:
equal: [42, 42] # Always generate version artifacts regardless of test failure https://discuss.circleci.com/t/make-custom-command-run-always-with-when-always/38957/2
steps:
- generate_and_store_version_and_filesystem_artifacts
workflows:
overall-circleci-commit-status: #These jobs run on every commit
jobs:
- lint:
name: node22-lint
node-version: '22'
- unit-test:
name: node18-chrome
node-version: lts/hydrogen
- e2e-test:
name: e2e-ci
suite: ci
- e2e-mobile
- visual-a11y:
name: visual-a11y-ci
suite: ci
- perf-test
- mem-test
the-nightly: #These jobs do not run on PRs, but against master at night
jobs:
- unit-test:
name: node22-chrome-nightly
node-version: '22'
- unit-test:
name: node18-chrome
node-version: lts/hydrogen
- npm-audit:
node-version: lts/hydrogen
- e2e-test:
name: e2e-full-nightly
suite: full
- e2e-mobile
- perf-test
- mem-test
- visual-a11y:
name: visual-a11y-nightly
suite: full
- e2e-couchdb
triggers:
- schedule:
cron: '0 0 * * *'
filters:
branches:
only:
- master

499
.cspell.json Normal file
View File

@ -0,0 +1,499 @@
{
"version": "0.2",
"language": "en,en-us",
"words": [
"gress",
"doctoc",
"minmax",
"openmct",
"datasources",
"Sinewave",
"deregistration",
"unregisters",
"codecov",
"carryforward",
"Chacon",
"Straub",
"OWASP",
"Testathon",
"Testathons",
"testathon",
"npmjs",
"treeitem",
"timespan",
"Timespan",
"spinbutton",
"popout",
"textbox",
"tablist",
"Telem",
"codecoverage",
"browserless",
"networkidle",
"nums",
"mgmt",
"faultname",
"gantt",
"sharded",
"MMOC",
"codegen",
"viewports",
"updatesnapshots",
"browsercontexts",
"miminum",
"testcase",
"testsuite",
"domcontentloaded",
"Tracefile",
"lcov",
"linecov",
"Browserless",
"webserver",
"yamcs",
"quickstart",
"subobject",
"autosize",
"Horz",
"vehicula",
"Praesent",
"pharetra",
"Duis",
"eget",
"arcu",
"elementum",
"mauris",
"Donec",
"nunc",
"quis",
"Proin",
"elit",
"Nunc",
"Aenean",
"mollis",
"hendrerit",
"Vestibulum",
"placerat",
"velit",
"augue",
"Quisque",
"mattis",
"lectus",
"rutrum",
"Fusce",
"tincidunt",
"nibh",
"blandit",
"urna",
"Nullam",
"congue",
"enim",
"Morbi",
"bibendum",
"Vivamus",
"imperdiet",
"Pellentesque",
"cursus",
"Aliquam",
"orci",
"Suspendisse",
"amet",
"justo",
"Etiam",
"vestibulum",
"ullamcorper",
"Cras",
"aliquet",
"Mauris",
"Nulla",
"scelerisque",
"viverra",
"metus",
"condimentum",
"varius",
"nulla",
"sapien",
"Curabitur",
"tristique",
"Nonsectetur",
"convallis",
"accumsan",
"lacus",
"posuere",
"turpis",
"egestas",
"feugiat",
"tortor",
"faucibus",
"euismod",
"pathing",
"testcases",
"Noneditable",
"listitem",
"Gantt",
"timelist",
"timestrip",
"networkevents",
"fetchpriority",
"persistable",
"Persistable",
"persistability",
"Persistability",
"testdata",
"Testdata",
"metdata",
"timeconductor",
"contenteditable",
"autoscale",
"Autoscale",
"prepan",
"sinewave",
"cyanish",
"driv",
"searchbox",
"datetime",
"timeframe",
"recents",
"recentobjects",
"gsearch",
"Disp",
"Cloc",
"noselect",
"requestfailed",
"viewlarge",
"Imageurl",
"thumbstrip",
"checkmark",
"Unshelve",
"autosized",
"chacskaylo",
"numberfield",
"OPENMCT",
"Autoflow",
"Timelist",
"faultmanagement",
"GEOSPATIAL",
"geospatial",
"plotspatial",
"annnotation",
"keystrings",
"undelete",
"sometag",
"containee",
"composability",
"mutables",
"Mutables",
"composee",
"handleoutsideclick",
"Datetime",
"Perc",
"autodismiss",
"filetree",
"deeptailor",
"keystring",
"reindex",
"unlisten",
"symbolsfont",
"ellipsize",
"TIMESYSTEM",
"Metadatas",
"unsub",
"callbacktwo",
"unsubscribetwo",
"telem",
"unemitted",
"granually",
"timesystem",
"metadatas",
"iteratees",
"metadatum",
"printj",
"sprintf",
"unlisteners",
"amts",
"reregistered",
"hudsonfoo",
"onclone",
"autoflow",
"xdescribe",
"mockmct",
"Autoflowed",
"plotly",
"relayout",
"Plotly",
"Yaxis",
"showlegend",
"textposition",
"xaxis",
"automargin",
"fixedrange",
"yaxis",
"Axistype",
"showline",
"bglayer",
"autorange",
"hoverinfo",
"dotful",
"Dotful",
"cartesianlayer",
"scatterlayer",
"textfont",
"ampm",
"cdef",
"horz",
"STYLEABLE",
"styleable",
"afff",
"shdw",
"braintree",
"vals",
"Subobject",
"Shdw",
"Movebar",
"inspectable",
"Stringformatter",
"sclk",
"Objectpath",
"Keystring",
"duplicatable",
"composees",
"Composees",
"Composee",
"callthrough",
"objectpath",
"createable",
"noneditable",
"Classname",
"classname",
"selectedfaults",
"accum",
"newpersisted",
"Metadatum",
"MCWS",
"YAMCS",
"frameid",
"containerid",
"mmgis",
"PERC",
"curval",
"viewbox",
"mutablegauge",
"Flatbush",
"flatbush",
"Indicies",
"Marqueed",
"NSEW",
"nsew",
"vrover",
"gimbled",
"Pannable",
"unsynced",
"Unsynced",
"pannable",
"autoscroll",
"TIMESTRIP",
"TWENTYFOUR",
"FULLSIZE",
"intialize",
"Timestrip",
"spyon",
"Unlistener",
"multipane",
"DATESTRING",
"akhenry",
"Niklas",
"Hertzen",
"Kash",
"Nouroozi",
"Bostock",
"BOSTOCK",
"Arnout",
"Kazemier",
"Karolis",
"Narkevicius",
"Ashkenas",
"Madhavan",
"Iskren",
"Ivov",
"Chernev",
"Borshchov",
"painterro",
"sheetjs",
"Yuxi",
"ACITON",
"localstorage",
"Linkto",
"Painterro",
"Editability",
"filteredsnapshots",
"Fromimage",
"muliple",
"notebookstorage",
"Andpage",
"pixelize",
"Quickstart",
"indexhtml",
"youradminpassword",
"chttpd",
"sourcefiles",
"USERPASS",
"XPUT",
"adipiscing",
"eiusmod",
"tempor",
"incididunt",
"labore",
"dolore",
"aliqua",
"perspiciatis",
"iteree",
"submodels",
"symlog",
"Plottable",
"antisymlog",
"docstrings",
"webglcontextlost",
"gridlines",
"Xaxis",
"Crosshairs",
"telemetrylimit",
"xscale",
"yscale",
"untracks",
"swatched",
"NULLVALUE",
"unobserver",
"unsubscriber",
"drap",
"Averager",
"averager",
"movecolumnfromindex",
"callout",
"Konqueror",
"unmark",
"hitarea",
"Hitarea",
"Unmark",
"controlbar",
"reactified",
"perc",
"DHMS",
"timespans",
"timeframes",
"Timesystems",
"Hilite",
"datetimes",
"momentified",
"ucontents",
"TIMELIST",
"Timeframe",
"Guirk",
"resizeable",
"iframing",
"Btns",
"Ctrls",
"Chakra",
"Petch",
"propor",
"phoneandtablet",
"desktopandtablet",
"Imgs",
"UNICODES",
"datatable",
"csvg",
"cpath",
"cellipse",
"xlink",
"cstyle",
"bfill",
"ctitle",
"eicon",
"interactability",
"AFFORDANCES",
"affordance",
"scrollcontainer",
"Icomoon",
"icomoon",
"configurability",
"btns",
"AUTOFLOW",
"DATETIME",
"infobubble",
"thumbsbubble",
"codehilite",
"vscroll",
"bgsize",
"togglebutton",
"Hacskaylo",
"noie",
"fullscreen",
"horiz",
"menubutton",
"SNAPSHOTTING",
"snapshotting",
"PAINTERRO",
"ptro",
"PLOTLY",
"gridlayer",
"xtick",
"ytick",
"subobjects",
"Ucontents",
"Userand",
"Userbefore",
"brdr",
"ALPH",
"Recents",
"Qbert",
"Infobubble",
"haslink",
"VPID",
"vpid",
"updatedtest",
"KHTML",
"Chromezilla",
"Safarifox",
"deregistering",
"hundredtized",
"dhms",
"unthrottled",
"Codecov",
"dont",
"mediump",
"sinonjs",
"generatedata",
"grandsearch",
"websockets",
"swgs",
"memlab",
"devmode",
"blockquote",
"blockquotes",
"Blockquote",
"Blockquotes",
"oger",
"lcovonly",
"gcov",
"WCAG",
"stackedplot",
"Andale",
"unnormalized",
"checksnapshots",
"specced",
"composables",
"countup",
"darkmatter",
"Undeletes",
"SSSZ"
],
"dictionaries": ["npm", "softwareTerms", "node", "html", "css", "bash", "en_US", "en-gb", "misc"],
"ignorePaths": [
"package.json",
"dist/**",
"package-lock.json",
"node_modules",
"coverage",
"*.log",
"html-test-results",
"test-results"
]
}

192
.eslintrc.cjs Normal file
View File

@ -0,0 +1,192 @@
const LEGACY_FILES = ['example/**'];
/** @type {import('eslint').Linter.Config} */
const config = {
env: {
browser: true,
es2024: true,
jasmine: true,
amd: true,
node: true
},
globals: {
_: 'readonly',
__webpack_public_path__: 'writeable',
__OPENMCT_VERSION__: 'readonly',
__OPENMCT_BUILD_DATE__: 'readonly',
__OPENMCT_REVISION__: 'readonly',
__OPENMCT_BUILD_BRANCH__: 'readonly'
},
plugins: ['prettier', 'unicorn', 'simple-import-sort'],
extends: [
'eslint:recommended',
'plugin:compat/recommended',
'plugin:vue/vue3-recommended',
'plugin:you-dont-need-lodash-underscore/compatible',
'plugin:prettier/recommended',
'plugin:no-unsanitized/DOM'
],
parser: 'vue-eslint-parser',
parserOptions: {
parser: '@babel/eslint-parser',
requireConfigFile: false,
allowImportExportEverywhere: true,
ecmaVersion: 'latest',
ecmaFeatures: {
impliedStrict: true
},
sourceType: 'module'
},
rules: {
'simple-import-sort/imports': 'warn',
'simple-import-sort/exports': 'warn',
'vue/no-deprecated-dollar-listeners-api': 'warn',
'vue/no-deprecated-events-api': 'warn',
'vue/no-v-for-template-key': 'off',
'vue/no-v-for-template-key-on-child': 'error',
'vue/component-name-in-template-casing': ['error', 'PascalCase'],
'prettier/prettier': 'error',
'you-dont-need-lodash-underscore/omit': 'off',
'you-dont-need-lodash-underscore/throttle': 'off',
'you-dont-need-lodash-underscore/flatten': 'off',
'you-dont-need-lodash-underscore/get': 'off',
'no-bitwise': 'error',
curly: 'error',
eqeqeq: 'error',
'guard-for-in': 'error',
'no-extend-native': 'error',
'no-inner-declarations': 'off',
'no-use-before-define': ['error', 'nofunc'],
'no-caller': 'error',
'no-irregular-whitespace': 'error',
'no-new': 'error',
'no-shadow': 'error',
'no-undef': 'error',
'no-unused-vars': [
'error',
{
vars: 'all',
args: 'none'
}
],
'no-console': 'off',
'new-cap': [
'error',
{
capIsNew: false,
properties: false
}
],
'dot-notation': 'error',
// https://eslint.org/docs/rules/no-case-declarations
'no-case-declarations': 'error',
// https://eslint.org/docs/rules/max-classes-per-file
'max-classes-per-file': ['error', 1],
// https://eslint.org/docs/rules/no-eq-null
'no-eq-null': 'error',
// https://eslint.org/docs/rules/no-eval
'no-eval': 'error',
// https://eslint.org/docs/rules/no-implicit-globals
'no-implicit-globals': 'error',
// https://eslint.org/docs/rules/no-implied-eval
'no-implied-eval': 'error',
// https://eslint.org/docs/rules/no-lone-blocks
'no-lone-blocks': 'error',
// https://eslint.org/docs/rules/no-loop-func
'no-loop-func': 'error',
// https://eslint.org/docs/rules/no-new-func
'no-new-func': 'error',
// https://eslint.org/docs/rules/no-new-wrappers
'no-new-wrappers': 'error',
// https://eslint.org/docs/rules/no-octal-escape
'no-octal-escape': 'error',
// https://eslint.org/docs/rules/no-proto
'no-proto': 'error',
// https://eslint.org/docs/rules/no-return-await
'no-return-await': 'error',
// https://eslint.org/docs/rules/no-script-url
'no-script-url': 'error',
// https://eslint.org/docs/rules/no-self-compare
'no-self-compare': 'error',
// https://eslint.org/docs/rules/no-sequences
'no-sequences': 'error',
// https://eslint.org/docs/rules/no-unmodified-loop-condition
'no-unmodified-loop-condition': 'error',
// https://eslint.org/docs/rules/no-useless-call
'no-useless-call': 'error',
// https://eslint.org/docs/rules/no-nested-ternary
'no-nested-ternary': 'error',
// https://eslint.org/docs/rules/no-useless-computed-key
'no-useless-computed-key': 'error',
// https://eslint.org/docs/rules/no-var
'no-var': 'error',
// https://eslint.org/docs/rules/one-var
'one-var': ['error', 'never'],
// https://eslint.org/docs/rules/default-case-last
'default-case-last': 'error',
// https://eslint.org/docs/rules/default-param-last
'default-param-last': 'error',
// https://eslint.org/docs/rules/grouped-accessor-pairs
'grouped-accessor-pairs': 'error',
// https://eslint.org/docs/rules/no-constructor-return
'no-constructor-return': 'error',
// https://eslint.org/docs/rules/array-callback-return
'array-callback-return': 'error',
// https://eslint.org/docs/rules/no-invalid-this
'no-invalid-this': 'error', // Believe this one actually surfaces some bugs
// https://eslint.org/docs/rules/func-style
'func-style': ['error', 'declaration'],
// https://eslint.org/docs/rules/no-unused-expressions
'no-unused-expressions': 'error',
// https://eslint.org/docs/rules/no-useless-concat
'no-useless-concat': 'error',
// https://eslint.org/docs/rules/radix
radix: 'error',
// https://eslint.org/docs/rules/require-await
'require-await': 'error',
// https://eslint.org/docs/rules/no-alert
'no-alert': 'error',
// https://eslint.org/docs/rules/no-useless-constructor
'no-useless-constructor': 'error',
// https://eslint.org/docs/rules/no-duplicate-imports
'no-duplicate-imports': 'error',
// https://eslint.org/docs/rules/no-implicit-coercion
'no-implicit-coercion': 'error',
//https://eslint.org/docs/rules/no-unneeded-ternary
'no-unneeded-ternary': 'error',
'unicorn/filename-case': [
'error',
{
cases: {
pascalCase: true
},
ignore: ['^.*\\.(js|cjs|mjs)$']
}
],
'vue/first-attribute-linebreak': 'error',
'vue/multiline-html-element-content-newline': 'off',
'vue/singleline-html-element-content-newline': 'off',
'vue/no-mutating-props': 'off' // TODO: Remove this rule and fix resulting errors
},
overrides: [
{
files: LEGACY_FILES,
rules: {
'no-unused-vars': [
'error',
{
vars: 'all',
args: 'none',
varsIgnorePattern: 'controller'
}
],
'no-nested-ternary': 'off',
'no-var': 'off',
'one-var': 'off'
}
}
]
};
module.exports = config;

16
.git-blame-ignore-revs Normal file
View File

@ -0,0 +1,16 @@
# git-blame ignored revisions
# To configure, run:
# git config blame.ignoreRevsFile .git-blame-ignore-revs
# Requires Git > 2.23
# See https://git-scm.com/docs/git-blame#Documentation/git-blame.txt---ignore-revs-fileltfilegt
# vue-eslint update 2019
14a0f84c1bcd56886d7c9e4e6afa8f7d292734e5
# eslint changes 2022
d80b6923541704ab925abf0047cbbc58735c27e2
# Copyright year update 2022
4a9744e916d24122a81092f6b7950054048ba860
# Copyright year update 2023
8040b275fcf2ba71b42cd72d4daa64bb25c19c2d
# Apply `prettier` formatting
caa7bc6faebc204f67aedae3e35fb0d0d3ce27a7

47
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@ -0,0 +1,47 @@
---
name: Bug report
about: File a Bug !
title: ''
labels: type:bug
assignees: ''
---
<!--- Focus on user impact in the title. Use the Summary Field to -->
<!--- describe the problem technically. -->
#### Summary
<!--- A description of the issue encountered. When possible, a description -->
<!--- of the impact of the issue. What use case does it impede?-->
#### Expected vs Current Behavior
<!--- Tell us what should have happened -->
#### Steps to Reproduce
<!--- Provide a link to a live example, or an unambiguous set of steps to -->
<!--- reproduce this bug. Include code to reproduce, if relevant -->
1.
2.
3.
4.
#### Environment
<!--- If encountered on local machine, execute the following:
<!--- npx envinfo --system --browsers --npmPackages --binaries --markdown -->
* Open MCT Version: <!--- date of build, version, or SHA -->
* Deployment Type: <!--- npm dev? VIPER Dev? openmct-yamcs? -->
* OS:
* Browser:
#### Impact Check List
<!--- Please select from the following options -->
- [ ] Data loss or misrepresented data?
- [ ] Regression? Did this used to work or has it always been broken?
- [ ] Is there a workaround available?
- [ ] Does this impact a critical component?
- [ ] Is this just a visual bug with no functional impact?
- [ ] Does this block the execution of e2e tests?
- [ ] Does this have an impact on Performance?
#### Additional Information
<!--- Include any screenshots, gifs, or logs which will expedite triage -->

5
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@ -0,0 +1,5 @@
blank_issues_enabled: true
contact_links:
- name: Discussions
url: https://github.com/nasa/openmct/discussions
about: Have a question about the project?

View File

@ -0,0 +1,20 @@
---
name: Enhancement request
about: Suggest an enhancement or new improvement for this project
title: ''
labels: type:enhancement
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.

View File

@ -0,0 +1,11 @@
---
name: Maintenance
about: Add, update or remove documentation, tests, or dependencies.
title: ''
labels: type:maintenance
assignees: ''
---
#### Summary
<!--- Generally describe the purpose of the change. -->

28
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@ -0,0 +1,28 @@
<!--- Note: Please open the PR in draft form until you are ready for active review. -->
Closes <!--- Insert Issue Number(s) this PR addresses. Start by typing # will open a dropdown of recent issues. Note: this does not work on PRs which target release branches -->
### Describe your changes:
<!--- Describe your changes and add any comments about your approach either here or inline if code comments aren't added -->
### All Submissions:
* [ ] Have you followed the guidelines in our [Contributing document](https://github.com/nasa/openmct/blob/master/CONTRIBUTING.md)?
* [ ] Have you checked to ensure there aren't other open [Pull Requests](https://github.com/nasa/openmct/pulls) for the same update/change?
* [ ] Is this a [notable change](../docs/src/process/release.md) that will require a special callout in the release notes? For example, will this break compatibility with existing APIs or projects that consume these plugins?
### Author Checklist
* [ ] Changes address original issue?
* [ ] Tests included and/or updated with changes?
* [ ] Has this been smoke tested?
* [ ] Have you associated this PR with a `type:` label? Note: this is not necessarily the same as the original issue.
* [ ] Have you associated a milestone with this PR? Note: leave blank if unsure.
* [ ] Testing instructions included in associated issue OR is this a dependency/testcase change?
### Reviewer Checklist
* [ ] Changes appear to address issue?
* [ ] Reviewer has tested changes by following the provided instructions?
* [ ] Changes appear not to be breaking changes?
* [ ] Appropriate automated tests included?
* [ ] Code style and in-line documentation are appropriate?

5
.github/codeql/codeql-config.yml vendored Normal file
View File

@ -0,0 +1,5 @@
name: 'Custom CodeQL config'
paths-ignore:
# Ignore e2e tests and framework
- e2e

42
.github/dependabot.yml vendored Normal file
View File

@ -0,0 +1,42 @@
version: 2
updates:
- package-ecosystem: 'npm'
directory: '/'
schedule:
interval: 'weekly'
open-pull-requests-limit: 10
rebase-strategy: 'disabled'
labels:
- 'pr:daveit'
- 'pr:e2e'
- 'type:maintenance'
- 'dependencies'
- 'pr:platform'
ignore:
#We have to source the playwright container which is not detected by Dependabot
- dependency-name: '@playwright/test'
- dependency-name: 'playwright-core'
#Lots of noise in these type patch releases.
- dependency-name: '@babel/eslint-parser'
update-types: ['version-update:semver-patch']
- dependency-name: 'eslint-plugin-vue'
update-types: ['version-update:semver-patch']
- dependency-name: 'babel-loader'
update-types: ['version-update:semver-patch']
- dependency-name: 'sinon'
update-types: ['version-update:semver-patch']
- dependency-name: 'moment-timezone'
update-types: ['version-update:semver-patch']
- dependency-name: '@types/lodash'
update-types: ['version-update:semver-patch']
- dependency-name: 'marked'
update-types: ['version-update:semver-patch']
- package-ecosystem: 'github-actions'
directory: '/'
schedule:
interval: 'daily'
rebase-strategy: 'disabled'
labels:
- 'pr:daveit'
- 'type:maintenance'
- 'dependencies'

26
.github/release.yml vendored Normal file
View File

@ -0,0 +1,26 @@
changelog:
categories:
- title: 💥 Notable Changes
labels:
- notable_change
- title: 🏕 Features
labels:
- type:feature
- title: 🎉 Enhancements
labels:
- type:enhancement
exclude:
labels:
- type:feature
- title: 🔧 Maintenance
labels:
- type:maintenance
- title: ⚡ Performance
labels:
- performance
- title: 👒 Dependencies
labels:
- dependencies
- title: 🐛 Bug Fixes
labels:
- "*"

44
.github/workflows/codeql-analysis.yml vendored Normal file
View File

@ -0,0 +1,44 @@
name: 'CodeQL'
on:
push:
branches: [master, 'release/*']
pull_request:
branches: [master, 'release/*']
paths-ignore:
- '**/*Spec.js'
- '**/*.md'
- '**/*.txt'
- '**/*.yml'
- '**/*.yaml'
- '**/*.spec.js'
- '**/*.config.js'
schedule:
- cron: '28 21 * * 3'
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
config-file: ./.github/codeql/codeql-config.yml
languages: javascript
queries: security-and-quality
- name: Autobuild
uses: github/codeql-action/autobuild@v3
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3

95
.github/workflows/e2e-couchdb.yml vendored Normal file
View File

@ -0,0 +1,95 @@
name: 'e2e-couchdb'
on:
push:
branches: master
workflow_dispatch:
pull_request:
types:
- labeled
- opened
schedule:
- cron: '0 0 * * *'
jobs:
e2e-couchdb:
if: contains(github.event.pull_request.labels.*.name, 'pr:e2e:couchdb') || github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || github.event.action == 'opened'
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 'lts/hydrogen'
- name: Cache NPM dependencies
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package.json') }}
restore-keys: |
${{ runner.os }}-node-
- run: npm ci --no-audit --progress=false
- name: Login to DockerHub
uses: docker/login-action@v3
continue-on-error: true
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- run: npx playwright@1.48.1 install
- name: Start CouchDB Docker Container and Init with Setup Scripts
run: |
export $(cat src/plugins/persistence/couch/.env.ci | xargs)
docker compose -f src/plugins/persistence/couch/couchdb-compose.yaml up --detach
sleep 3
bash src/plugins/persistence/couch/setup-couchdb.sh
bash src/plugins/persistence/couch/replace-localstorage-with-couchdb-indexhtml.sh
- name: Run CouchDB Tests
env:
COMMIT_INFO_SHA: ${{github.event.pull_request.head.sha }}
run: npm run test:e2e:couchdb
- name: Generate Code Coverage Report
run: npm run cov:e2e:report
- name: Publish Results to Codecov.io
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./coverage/e2e/lcov.info
flags: e2e-full
fail_ci_if_error: true
verbose: true
- name: Archive test results
if: success() || failure()
uses: actions/upload-artifact@v3
with:
path: test-results
- name: Archive html test results
if: success() || failure()
uses: actions/upload-artifact@v3
with:
path: html-test-results
- name: Remove pr:e2e:couchdb label (if present)
if: always()
uses: actions/github-script@v6
with:
script: |
const { owner, repo, number } = context.issue;
const labelToRemove = 'pr:e2e:couchdb';
try {
await github.rest.issues.removeLabel({
owner,
repo,
issue_number: number,
name: labelToRemove
});
} catch (error) {
core.warning(`Failed to remove ' + labelToRemove + ' label: ${error.message}`);
}

61
.github/workflows/e2e-flakefinder.yml vendored Normal file
View File

@ -0,0 +1,61 @@
name: 'pr:e2e:flakefinder'
on:
# push:
# branches: master
workflow_dispatch:
# pull_request:
# types:
# - labeled
# - opened
# schedule:
# - cron: '0 0 * * *'
jobs:
e2e-flakefinder:
if: contains(github.event.pull_request.labels.*.name, 'pr:e2e:flakefinder') || github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || github.event.action == 'opened'
runs-on: ubuntu-latest
timeout-minutes: 120
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 'lts/hydrogen'
- name: Cache NPM dependencies
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package.json') }}
restore-keys: |
${{ runner.os }}-node-
- run: npx playwright@1.48.1 install
- run: npm ci --no-audit --progress=false
- name: Run E2E Tests (Repeated 10 Times)
run: npm run test:e2e:ci -- --retries=0 --repeat-each=10 --max-failures=50
- name: Archive test results
if: success() || failure()
uses: actions/upload-artifact@v3
with:
path: test-results
- name: Remove pr:e2e:flakefinder label (if present)
if: always()
uses: actions/github-script@v6
with:
script: |
const { owner, repo, number } = context.issue;
const labelToRemove = 'pr:e2e:flakefinder';
try {
await github.rest.issues.removeLabel({
owner,
repo,
issue_number: number,
name: labelToRemove
});
} catch (error) {
core.warning(`Failed to remove ' + labelToRemove + ' label: ${error.message}`);
}

58
.github/workflows/e2e-perf.yml vendored Normal file
View File

@ -0,0 +1,58 @@
name: 'e2e-perf'
on:
push:
branches: master
workflow_dispatch:
pull_request:
types:
- labeled
- opened
schedule:
- cron: '0 0 * * *'
jobs:
e2e-full:
if: contains(github.event.pull_request.labels.*.name, 'pr:e2e:perf') || github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 'lts/hydrogen'
- name: Cache NPM dependencies
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package.json') }}
restore-keys: |
${{ runner.os }}-node-
- run: npx playwright@1.48.1 install
- run: npm ci --no-audit --progress=false
- run: npm run test:perf:localhost
- run: npm run test:perf:contract
- run: npm run test:perf:memory
- name: Archive test results
if: success() || failure()
uses: actions/upload-artifact@v3
with:
path: test-results
- name: Remove pr:e2e:perf label (if present)
if: always()
uses: actions/github-script@v6
with:
script: |
const { owner, repo, number } = context.issue;
const labelToRemove = 'pr:e2e:perf';
try {
await github.rest.issues.removeLabel({
owner,
repo,
issue_number: number,
name: labelToRemove
});
} catch (error) {
core.warning(`Failed to remove ' + labelToRemove + ' label: ${error.message}`);
}

68
.github/workflows/e2e-pr.yml vendored Normal file
View File

@ -0,0 +1,68 @@
name: 'e2e-pr'
on:
push:
branches: master
workflow_dispatch:
pull_request:
types:
- labeled
- opened
schedule:
- cron: '0 0 * * *'
jobs:
e2e-full:
if: contains(github.event.pull_request.labels.*.name, 'pr:e2e') || github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
runs-on: ${{ matrix.os }}
timeout-minutes: 60
strategy:
matrix:
os:
- ubuntu-latest
- windows-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 'lts/hydrogen'
- name: Cache NPM dependencies
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package.json') }}
restore-keys: |
${{ runner.os }}-node-
- run: npx playwright@1.47.2 install
- run: npx playwright install chrome-beta
- run: npm ci --no-audit --progress=false
- run: npm run test:e2e:full -- --max-failures=40
- run: npm run cov:e2e:report || true
- shell: bash
env:
SUPER_SECRET: ${{ secrets.CODECOV_TOKEN }}
run: |
npm run cov:e2e:full:publish
- name: Archive test results
if: success() || failure()
uses: actions/upload-artifact@v3
with:
path: test-results
- name: Remove pr:e2e label (if present)
if: always()
uses: actions/github-script@v6
with:
script: |
const { owner, repo, number } = context.issue;
const labelToRemove = 'pr:e2e';
try {
await github.rest.issues.removeLabel({
owner,
repo,
issue_number: number,
name: labelToRemove
});
} catch (error) {
core.warning(`Failed to remove ' + labelToRemove + ' label: ${error.message}`);
}

37
.github/workflows/npm-prerelease.yml vendored Normal file
View File

@ -0,0 +1,37 @@
# This workflow will run tests using node and then publish a package to npmjs when a prerelease is created
# For more information see: https://help.github.com/actions/language-and-framework-guides/publishing-nodejs-packages
name: npm_prerelease
on:
release:
types: [prereleased]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: lts/hydrogen
- run: npm ci
- run: |
echo "//registry.npmjs.org/:_authToken=$NODE_AUTH_TOKEN" >> ~/.npmrc
npm whoami
npm publish --access=public --tag unstable openmct
# - run: npm test
publish-npm-prerelease:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: lts/hydrogen
registry-url: https://registry.npmjs.org/
- run: npm ci
- run: npm publish --access=public --tag unstable
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

70
.github/workflows/pr-platform.yml vendored Normal file
View File

@ -0,0 +1,70 @@
name: 'pr-platform'
on:
push:
branches: master
workflow_dispatch:
pull_request:
types:
- labeled
- opened
schedule:
- cron: '0 0 * * *'
jobs:
pr-platform:
if: contains(github.event.pull_request.labels.*.name, 'pr:platform') || github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
runs-on: ${{ matrix.os }}
timeout-minutes: 60
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- macos-latest
- windows-latest
node_version:
- lts/iron
- lts/hydrogen
architecture:
- x64
name: Node ${{ matrix.node_version }} - ${{ matrix.architecture }} on ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Setup node
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node_version }}
architecture: ${{ matrix.architecture }}
- name: Cache NPM dependencies
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-${{ matrix.node_version }}-${{ hashFiles('**/package.json') }}
restore-keys: |
${{ runner.os }}-${{ matrix.node_version }}-
- run: npm ci --no-audit --progress=false
- run: npm test
- run: npm run lint -- --quiet
- name: Remove pr:platform label (if present)
if: always()
uses: actions/github-script@v6
with:
script: |
const { owner, repo, number } = context.issue;
const labelToRemove = 'pr:platform';
try {
await github.rest.issues.removeLabel({
owner,
repo,
issue_number: number,
name: labelToRemove
});
} catch (error) {
core.warning(`Failed to remove ' + labelToRemove + ' label: ${error.message}`);
}

19
.github/workflows/prcop-config.json vendored Normal file
View File

@ -0,0 +1,19 @@
{
"linters": [
{
"name": "descriptionRegexp",
"config": {
"regexp": "[x|X]] Testing instructions",
"errorMessage": ":police_officer: PR Description does not confirm that associated issue(s) contain Testing instructions"
}
},
{
"name": "descriptionMinWords",
"config": {
"minWordsCount": 160,
"errorMessage": ":police_officer: Please, be sure to use existing PR template."
}
}
],
"disableWord": "pr:daveit"
}

40
.github/workflows/prcop.yml vendored Normal file
View File

@ -0,0 +1,40 @@
name: PRCop
on:
pull_request:
types:
- labeled
- unlabeled
- milestoned
- demilestoned
- opened
- reopened
- synchronize
- edited
pull_request_review_comment:
types:
- created
env:
LABELS: ${{ join( github.event.pull_request.labels.*.name, ' ' ) }}
jobs:
prcop:
runs-on: ubuntu-latest
name: Template Check
steps:
- name: Linting Pull Request
uses: makaroni4/prcop@v1.0.35
with:
config-file: '.github/workflows/prcop-config.json'
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
check-type-label:
name: Check type Label
runs-on: ubuntu-latest
steps:
- if: contains( env.LABELS, 'type:' ) == false
run: exit 1
check-milestone:
name: Check Milestone
runs-on: ubuntu-latest
steps:
- if: github.event.pull_request.milestone == null && contains( env.LABELS, 'no milestone' ) == false
run: exit 1

36
.gitignore vendored
View File

@ -3,28 +3,50 @@
*.gzip
*.tgz
*.DS_Store
*.swp
# Compiled CSS, unless directly added
*.sass-cache
*COMPILE.css
*.css
*.css.map
# Intellij project configuration files
*.idea
*.iml
# External dependencies
# VSCode
.vscode/settings.json
# Build output
target
dist
# Mac OS X Finder
.DS_Store
# Closed source libraries
closed-lib
# Node dependencies
# Node, Bower dependencies
node_modules
bower_components
# Protractor logs
protractor/logs
# npm-debug log
npm-debug.log
# karma reports
report.*.json
# e2e test artifacts
test-results
html-test-results
# couchdb scripting artifacts
src/plugins/persistence/couch/.env.local
index.html.bak
# codecov artifacts
.nyc_output
coverage
codecov
# Don't commit MacOS screenshots
*-darwin.png

27
.npmignore Normal file
View File

@ -0,0 +1,27 @@
# Ignore everything first (will not ignore special files like LICENSE.md,
# README.md, and package.json)...
/**/*
# ...but include these folders...
!/dist/**/*
!/src/**/*
# We might be able to remove this if it is not imported by any project directly.
# https://github.com/nasa/openmct/issues/4992
!/example/**/*
# ...except for these files in the above folders.
/src/**/*Spec.js
/src/**/test/
# TODO move test utils into test/ folders
/src/utils/testing.js
# Also include these special top-level files.
!copyright-notice.js
!copyright-notice.html
!index.html
!openmct.js
!SECURITY.md
# Dont include the example html
dist/index.html

4
.npmrc Normal file
View File

@ -0,0 +1,4 @@
loglevel=warn
#Prevent folks from ignoring an important error when building from source
engine-strict=true

1
.nvmrc Normal file
View File

@ -0,0 +1 @@
lts/*

27
.prettierignore Normal file
View File

@ -0,0 +1,27 @@
# Docs
*.md
# Build output
target
dist
# Mac OS X Finder
.DS_Store
# Node dependencies
node_modules
# npm-debug log
npm-debug.log
# karma reports
report.*.json
# e2e test artifacts
test-results
html-test-results
# codecov artifacts
.nyc_output
coverage
codecov

6
.prettierrc Normal file
View File

@ -0,0 +1,6 @@
{
"trailingComma": "none",
"singleQuote": true,
"printWidth": 100,
"endOfLine": "auto"
}

13
.vscode/extensions.json vendored Normal file
View File

@ -0,0 +1,13 @@
{
// See https://go.microsoft.com/fwlink/?LinkId=827846 to learn about workspace recommendations.
// Extension identifier format: ${publisher}.${name}. Example: vscode.csharp
// List of extensions which should be recommended for users of this workspace.
"recommendations": [
"Vue.volar",
"dbaeumer.vscode-eslint",
"rvest.vs-code-prettier-eslint"
],
// List of extensions recommended by VS Code that should not be recommended for users of this workspace.
"unwantedRecommendations": ["octref.vetur"]
}

188
.webpack/webpack.common.mjs Normal file
View File

@ -0,0 +1,188 @@
/*
This is the OpenMCT common webpack file. It is imported by the other three webpack configurations:
- webpack.prod.mjs - the production configuration for OpenMCT (default)
- webpack.dev.mjs - the development configuration for OpenMCT
- webpack.coverage.mjs - imports webpack.dev.js and adds code coverage
There are separate npm scripts to use these configurations, though simply running `npm install`
will use the default production configuration.
*/
import { execSync } from 'node:child_process';
import fs from 'node:fs';
import path from 'node:path';
import { fileURLToPath } from 'node:url';
import CopyWebpackPlugin from 'copy-webpack-plugin';
import MiniCssExtractPlugin from 'mini-css-extract-plugin';
import { VueLoaderPlugin } from 'vue-loader';
import webpack from 'webpack';
import { merge } from 'webpack-merge';
let gitRevision = 'error-retrieving-revision';
let gitBranch = 'error-retrieving-branch';
const { version } = JSON.parse(fs.readFileSync(new URL('../package.json', import.meta.url)));
try {
gitRevision = execSync('git rev-parse HEAD').toString().trim();
gitBranch = execSync('git rev-parse --abbrev-ref HEAD').toString().trim();
} catch (err) {
console.warn(err);
}
const projectRootDir = fileURLToPath(new URL('../', import.meta.url));
/** @type {import('webpack').Configuration} */
const config = {
context: projectRootDir,
devServer: {
client: {
progress: true,
overlay: {
// Disable overlay for runtime errors.
// See: https://github.com/webpack/webpack-dev-server/issues/4771
runtimeErrors: false
}
}
},
entry: {
openmct: './openmct.js',
generatorWorker: './example/generator/generatorWorker.js',
couchDBChangesFeed: './src/plugins/persistence/couch/CouchChangesFeed.js',
inMemorySearchWorker: './src/api/objects/InMemorySearchWorker.js',
espressoTheme: './src/plugins/themes/espresso-theme.scss',
snowTheme: './src/plugins/themes/snow-theme.scss',
darkmatterTheme: './src/plugins/themes/darkmatter-theme.scss'
},
output: {
globalObject: 'this',
filename: '[name].js',
path: path.resolve(projectRootDir, 'dist'),
library: {
name: 'openmct',
type: 'umd',
export: 'default'
},
publicPath: '',
hashFunction: 'xxhash64',
clean: true
},
resolve: {
alias: {
'@': path.join(projectRootDir, 'src'),
legacyRegistry: path.join(projectRootDir, 'src/legacyRegistry'),
csv: 'comma-separated-values',
bourbon: 'bourbon.scss',
'plotly-basic': 'plotly.js-basic-dist-min',
'plotly-gl2d': 'plotly.js-gl2d-dist-min',
printj: 'printj/printj.mjs',
styles: path.join(projectRootDir, 'src/styles'),
MCT: path.join(projectRootDir, 'src/MCT'),
testUtils: path.join(projectRootDir, 'src/utils/testUtils.js'),
objectUtils: path.join(projectRootDir, 'src/api/objects/object-utils.js'),
utils: path.join(projectRootDir, 'src/utils'),
vue: 'vue/dist/vue.esm-bundler'
}
},
plugins: [
new webpack.DefinePlugin({
__OPENMCT_VERSION__: `'${version}'`,
__OPENMCT_BUILD_DATE__: `'${new Date()}'`,
__OPENMCT_REVISION__: `'${gitRevision}'`,
__OPENMCT_BUILD_BRANCH__: `'${gitBranch}'`,
__VUE_OPTIONS_API__: true, // enable/disable Options API support, default: true
__VUE_PROD_DEVTOOLS__: false // enable/disable devtools support in production, default: false
}),
new VueLoaderPlugin(),
new CopyWebpackPlugin({
patterns: [
{
from: 'src/images/favicons',
to: 'favicons'
},
{
from: './index.html',
transform: function (content) {
return content.toString().replace(/dist\//g, '');
}
},
{
from: 'src/plugins/imagery/layers',
to: 'imagery'
}
]
}),
new MiniCssExtractPlugin({
filename: '[name].css',
chunkFilename: '[name].css'
}),
// Add a UTF-8 BOM to CSS output to avoid random mojibake
new webpack.BannerPlugin({
test: /.*Theme\.css$/,
raw: true,
banner: '@charset "UTF-8";'
})
],
module: {
rules: [
{
test: /\.(sc|sa|c)ss$/,
use: [
MiniCssExtractPlugin.loader,
{
loader: 'css-loader'
},
{
loader: 'resolve-url-loader'
},
{
loader: 'sass-loader',
options: { sourceMap: true }
}
]
},
{
test: /\.vue$/,
loader: 'vue-loader',
options: {
compilerOptions: {
hoistStatic: false,
whitespace: 'preserve'
}
}
},
{
test: /\.html$/,
type: 'asset/source'
},
{
test: /\.(jpg|jpeg|png|svg)$/,
type: 'asset/resource',
generator: {
filename: 'images/[name][ext]'
}
},
{
test: /\.ico$/,
type: 'asset/resource',
generator: {
filename: 'icons/[name][ext]'
}
},
{
test: /\.(woff|woff2?|eot|ttf)$/,
type: 'asset/resource',
generator: {
filename: 'fonts/[name][ext]'
}
}
]
},
stats: 'errors-warnings',
performance: {
// We should eventually consider chunking to decrease
// these values
maxEntrypointSize: 27000000,
maxAssetSize: 27000000
}
};
export default config;

View File

@ -0,0 +1,31 @@
/*
This file extends the webpack.dev.mjs config to add babel istanbul coverage.
OpenMCT Continuous Integration servers use this configuration to add code coverage
information to pull requests.
*/
import config from './webpack.dev.mjs';
config.devtool = 'inline-source-map';
config.devServer.hot = false;
config.module.rules.push({
test: /\.js$/,
exclude: /(Spec\.js$)|(node_modules)/,
use: {
loader: 'babel-loader',
options: {
retainLines: true,
plugins: [
[
'babel-plugin-istanbul',
{
extension: ['.js', '.vue']
}
]
]
}
}
});
export default config;

49
.webpack/webpack.dev.mjs Normal file
View File

@ -0,0 +1,49 @@
/*
This configuration should be used for development purposes. It contains full source map, a
devServer (which be invoked using by `npm start`), and a non-minified Vue.js distribution.
If OpenMCT is to be used for a production server, use webpack.prod.mjs instead.
*/
import { fileURLToPath } from 'node:url';
import path from 'path';
import webpack from 'webpack';
import { merge } from 'webpack-merge';
import common from './webpack.common.mjs';
export default merge(common, {
mode: 'development',
watchOptions: {
// Since we use require.context, webpack is watching the entire directory.
// We need to exclude any files we don't want webpack to watch.
// See: https://webpack.js.org/configuration/watch/#watchoptions-exclude
ignored: [
'**/{node_modules,dist,docs,e2e}', // All files in node_modules, dist, docs, e2e,
'**/{*.yml,Procfile,webpack*.js,babel*.js,package*.json,tsconfig.json}', // Config files
'**/*.{sh,md,png,ttf,woff,svg}', // Non source files
'**/.*' // dotfiles and dotfolders
]
},
plugins: [
new webpack.DefinePlugin({
__OPENMCT_ROOT_RELATIVE__: '"dist/"'
})
],
devtool: 'eval-source-map',
devServer: {
devMiddleware: {
writeToDisk: (filePathString) => {
const filePath = path.parse(filePathString);
const shouldWrite = !filePath.base.includes('hot-update');
return shouldWrite;
}
},
watchFiles: ['src/**/*.css', 'example/**/*.css'],
static: {
directory: fileURLToPath(new URL('../dist', import.meta.url)),
publicPath: '/dist',
watch: false
}
}
});

19
.webpack/webpack.prod.mjs Normal file
View File

@ -0,0 +1,19 @@
/*
This configuration should be used for production installs.
It is the default webpack configuration.
*/
import webpack from 'webpack';
import { merge } from 'webpack-merge';
import common from './webpack.common.mjs';
export default merge(common, {
mode: 'production',
plugins: [
new webpack.DefinePlugin({
__OPENMCT_ROOT_RELATIVE__: '""'
})
],
devtool: 'eval-source-map'
});

1383
API.md Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
# Contributing to Open MCT Web
# Contributing to Open MCT
This document describes the process of contributing to Open MCT Web as well
This document describes the process of contributing to Open MCT as well
as the standards that will be applied when evaluating contributions.
Please be aware that additional agreements will be necessary before we can
@ -10,7 +10,7 @@ accept changes from external contributors.
The short version:
1. Write your contribution.
1. Write your contribution or describe your idea in the form of a [GitHub issue](https://github.com/nasa/openmct/issues/new/choose) or [start a GitHub discussion](https://github.com/nasa/openmct/discussions).
2. Make sure your contribution meets code, test, and commit message
standards as described below.
3. Submit a pull request from a topic branch back to `master`. Include a check
@ -18,12 +18,13 @@ The short version:
for review.)
4. Respond to any discussion. When the reviewer decides it's ready, they
will merge back `master` and fill out their own check list.
5. If you are a first-time contributor, please see [this discussion](https://github.com/nasa/openmct/discussions/3821) for further information.
## Contribution Process
Open MCT Web uses git for software version control, and for branching and
Open MCT uses git for software version control, and for branching and
merging. The central repository is at
https://github.com/nasa/openmctweb.git.
<https://github.com/nasa/openmct.git>.
### Roles
@ -43,9 +44,9 @@ the check-in process. These roles are:
Three basic types of branches may be included in the above repository:
1. Master branch.
2. Topic branches.
3. Developer branches.
1. Master branch
2. Topic branches
3. Developer branches
Branches which do not fit into the above categories may be created and used
during the course of development for various reasons, such as large-scale
@ -103,128 +104,138 @@ the name chosen could not be mistaken for a topic or master branch.
### Merging
When development is complete on an issue, the first step toward merging it
back into the master branch is to file a Pull Request. The contributions
back into the master branch is to file a Pull Request (PR). The contributions
should meet code, test, and commit message standards as described below,
and the pull request should include a completed author checklist, also
as described below. Pull requests may be assigned to specific team
members when appropriate (e.g. to draw to a specific person's attention.)
members when appropriate (e.g. to draw to a specific person's attention).
Code review should take place using discussion features within the pull
request. When the reviewer is satisfied, they should add a comment to
the pull request containing the reviewer checklist (from below) and complete
the merge back to the master branch.
Additionally:
* Every pull request must link to the issue that it addresses. Eg. “Addresses #1234” or “Closes #1234”. This is the responsibility of the pull requests __author__. If no issue exists, [create one](https://github.com/nasa/openmct/issues/new/choose).
* Every __author__ must include testing instructions. These instructions should identify the areas of code affected, and some minimal test steps. If addressing a bug, reproduction steps should be included, if they were not included in the original issue. If reproduction steps were included on the original issue, and are sufficient, refer to them.
* A pull request that closes an issue should say so in the description. Including the text “Closes #1234” will cause the linked issue to be automatically closed when the pull request is merged. This is the responsibility of the pull requests __author__.
* When a pull request is merged, and the corresponding issue closed, the __reviewer__ must add the tag “unverified” to the original issue. This will indicate that although the issue is closed, it has not been tested yet.
* Every PR must have two reviewers assigned, though only one approval is necessary for merge.
* Changes to API require approval by a senior developer.
* When creating a PR, it is the author's responsibility to apply any priority label from the issue to the PR as well. This helps with prioritization.
## Standards
Contributions to Open MCT Web are expected to meet the following standards.
Contributions to Open MCT are expected to meet the following standards.
In addition, reviewers should use general discretion before accepting
changes.
### Code Standards
JavaScript sources in Open MCT Web must satisfy JSLint under its default
settings. This is verified by the command line build.
JavaScript sources in Open MCT must satisfy the [ESLint](https://eslint.org/) rules defined in
this repository. [Prettier](https://prettier.io/) is used in conjunction with ESLint to enforce code style
via automated formatting. These are verified by the command line build.
#### Code Guidelines
JavaScript sources in Open MCT Web should:
The following guidelines are provided for anyone contributing source code to the Open MCT project:
* Use four spaces for indentation. Tabs should not be used.
* Include JSDoc for any exposed API (e.g. public methods, constructors.)
* Include non-JSDoc comments as-needed for explaining private variables,
methods, or algorithms when they are non-obvious.
* Define one public class per script, expressed as a constructor function
returned from an AMD-style module.
* Follow “Java-like” naming conventions. These includes:
* Classes should use camel case, first letter capitalized
(e.g. SomeClassName.)
* Methods, variables, fields, and function names should use camel case,
first letter lower-case (e.g. someVariableName.) Constants
(variables or fields which are meant to be declared and initialized
statically, and never changed) should use only capital letters, with
underscores between words (e.g. SOME_CONSTANT.)
* File name should be the name of the exported class, plus a .js extension
(e.g. SomeClassName.js)
* Avoid anonymous functions, except when functions are short (a few lines)
and/or their inclusion makes sense within the flow of the code
(e.g. as arguments to a forEach call.)
* Avoid deep nesting (especially of functions), except where necessary
(e.g. due to closure scope.)
* End with a single new-line character.
* Expose public methods by declaring them on the class's prototype.
* Within a given function's scope, do not mix declarations and imperative
code, and present these in the following order:
* First, variable declarations and initialization.
* Second, function declarations.
* Third, imperative statements.
* Finally, the returned value.
1. Write clean code. Heres a good summary - <https://github.com/ryanmcdermott/clean-code-javascript>.
1. Include JSDoc for any exposed API (e.g. public methods, classes).
1. Include non-JSDoc comments as-needed for explaining private variables,
methods, or algorithms when they are non-obvious. Otherwise code
should be self-documenting.
1. Classes and Vue components should use camel case, first letter capitalized
(e.g. SomeClassName).
1. Methods, variables, fields, events, and function names should use camelCase,
first letter lower-case (e.g. someVariableName).
1. Source files that export functions should use camelCase, first letter lower-case (eg. testTools.js)
1. Constants (variables or fields which are meant to be declared and
initialized statically, and never changed) should use only capital
letters, with underscores between words (e.g. SOME_CONSTANT). They should always be declared as `const`s
1. File names should be the name of the exported class, plus a .js extension
(e.g. SomeClassName.js).
1. Avoid anonymous functions, except when functions are short (one or two lines)
and their inclusion makes sense within the flow of the code
(e.g. as arguments to a forEach call). Anonymous functions should always be arrow functions.
1. Named functions are preferred over functions assigned to variables.
eg.
Deviations from Open MCT Web code style guidelines require two-party agreement,
```JavaScript
function renameObject(object, newName) {
Object.name = newName;
}
```
is preferable to
```JavaScript
const rename = (object, newName) => {
Object.name = newName;
}
```
1. Avoid deep nesting (especially of functions), except where necessary
(e.g. due to closure scope).
1. End with a single new-line character.
1. Always use ES6 `Class`es and inheritance rather than the pre-ES6 prototypal
pattern.
1. Within a given function's scope, do not mix declarations and imperative
code, and present these in the following order:
* First, variable declarations and initialization.
* Secondly, imperative statements.
* Finally, the returned value. A single return statement at the end of the function should be used, except where an early return would improve code clarity.
1. Avoid the use of "magic" values.
eg.
```JavaScript
const UNAUTHORIZED = 401;
if (responseCode === UNAUTHORIZED)
```
is preferable to
```JavaScript
if (responseCode === 401)
```
1. Use the ternary operator only for simple cases such as variable assignment. Nested ternaries should be avoided in all cases.
1. Unit Test specs should reside alongside the source code they test, not in a separate directory.
1. Organize code by feature, not by type.
eg.
```txt
- telemetryTable
- row
TableRow.js
TableRowCollection.js
TableRow.vue
- column
TableColumn.js
TableColumn.vue
plugin.js
pluginSpec.js
```
is preferable to
```txt
- telemetryTable
- components
TableRow.vue
TableColumn.vue
- collections
TableRowCollection.js
TableColumn.js
TableRow.js
plugin.js
pluginSpec.js
```
Deviations from Open MCT code style guidelines require two-party agreement,
typically from the author of the change and its reviewer.
#### Code Example
```js
/*global define*/
/**
* Bundles should declare themselves as namespaces in whichever source
* file is most like the "main point of entry" to the bundle.
* @namespace some/bundle
*/
define(
['./OtherClass'],
function (OtherClass) {
"use strict";
/**
* A summary of how to use this class goes here.
*
* @constructor
* @memberof some/bundle
*/
function ExampleClass() {
}
// Methods which are not intended for external use should
// not have JSDoc (or should be marked @private)
ExampleClass.prototype.privateMethod = function () {
};
/**
* A summary of this method goes here.
* @param {number} n a parameter
* @returns {number} a return value
*/
ExampleClass.prototype.publicMethod = function (n) {
return n * 2;
}
return ExampleClass;
}
);
```
### Test Standards
Automated testing shall occur whenever changes are merged into the main
development branch and must be confirmed alongside any pull request.
Automated tests are typically unit tests which exercise individual software
components. Tests are subject to code review along with the actual
implementation, to ensure that tests are applicable and useful.
Examples of useful tests:
* Tests which replicate bugs (or their root causes) to verify their
resolution.
* Tests which reflect details from software specifications.
* Tests which exercise edge or corner cases among inputs.
* Tests which verify expected interactions with other components in the
system.
During automated testing, code coverage metrics will be reported. Line
coverage must remain at or above 80%.
### Commit Message Standards
Commit messages should:
@ -234,7 +245,7 @@ Commit messages should:
line of white space.
* Contain a short (usually one word) reference to the feature or subsystem
the commit effects, in square brackets, at the start of the subject line
(e.g. `[Documentation] Draft of check-in process`)
(e.g. `[Documentation] Draft of check-in process`).
* Contain a reference to a relevant issue number in the body of the commit.
* This is important for traceability; while branch names also provide this,
you cannot tell from looking at a commit what branch it was authored on.
@ -250,9 +261,9 @@ Commit messages should:
Commit messages should not:
* Exceed 54 characters in length on the subject line.
* Exceed 72 characters in length in the body of the commit.
* Exceed 72 characters in length in the body of the commit,
* Except where necessary to maintain the structure of machine-readable or
machine-generated text (e.g. error messages)
machine-generated text (e.g. error messages).
See [Contributing to a Project](http://git-scm.com/book/ch5-2.html) from
Pro Git by Shawn Chacon and Ben Straub for a bit of the rationale behind
@ -260,42 +271,19 @@ these standards.
## Issue Reporting
Issues are tracked at https://github.com/nasa/openmctweb/issues
Issues should include:
* A short description of the issue encountered.
* A longer-form description of the issue encountered. When possible, steps to
reproduce the issue.
* When possible, a description of the impact of the issue. What use case does
it impede?
* An assessment of the severity of the issue.
Issues are tracked at <https://github.com/nasa/openmct/issues>.
Issue severity is categorized as follows (in ascending order):
* _Trivial_: Minimal impact on the usefulness and functionality of the
software; a "nice-to-have."
* _(Unspecified)_: Major loss of functionality or impairment of use.
* _Critical_: Large-scale loss of functionality or impairment of use,
such that remaining utility becomes marginal.
* _Blocker_: Harmful or otherwise unacceptable behavior. Must fix.
* _Trivial_: Minimal impact on the usefulness and functionality of the software; a "nice-to-have." Visual impact without functional impact,
* _Medium_: Some impairment of use, but simple workarounds exist
* _Critical_: Significant loss of functionality or impairment of use. Display of telemetry data is not affected though. Complex workarounds exist.
* _Blocker_: Major functionality is impaired or lost, threatening mission success. Display of telemetry data is impaired or blocked by the bug, which could lead to loss of situational awareness.
## Check Lists
The following check lists should be completed and attached to pull requests
when they are filed (author checklist) and when they are merged (reviewer
checklist.)
checklist).
### Author Checklist
1. Changes address original issue?
2. Unit tests included and/or updated with changes?
3. Command line build passes?
4. Expect to pass code review?
### Reviewer Checklist
1. Changes appear to address issue?
2. Appropriate unit tests included?
3. Code style and in-line documentation are appropriate?
4. Commit messages meet standards?
[Within PR Template](.github/PULL_REQUEST_TEMPLATE.md)

7
LICENSE.md Normal file
View File

@ -0,0 +1,7 @@
# Open MCT License
Open MCT, Copyright (c) 2014-2024, United States Government as represented by the Administrator of the National Aeronautics and Space Administration. All rights reserved.
Open MCT is licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

View File

@ -1,417 +0,0 @@
# Open MCT Web Licenses
Open MCT Web, Copyright (c) 2014-2015, United States Government as represented by the Administrator of the National Aeronautics and Space Administration. All rights reserved.
Open MCT Web is licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Open MCT Web includes source code licensed under additional open source licenses as follows.
## Software Components Licenses
This software includes components released under the following licenses:
---
### SuperSocket
#### Info
* Link: https://supersocket.codeplex.com/
* Version: 0.9.0.2
* Author: Kerry Jiang
* Description: Supports SuperWebSocket
#### License
Copyright 2012 Kerry Jiang (kerry-jiang@hotmail.com)
SuperSocket is licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
---
### SuperWebSocket
#### Info
* Link: https://superswebocket.codeplex.com/
* Version: 0.9.0.2
* Author: Kerry Jiang
* Description: WebSocket implementation for client-server communication
#### License
Copyright 2010-2013 Kerry Jiang (kerry-jiang@hotmail.com)
SuperWebSocket is licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
---
### log4net
#### Info
* Link: http://logging.apache.org/log4net/
* Version: 1.2.13
* Author: Apache Software Foundation
* Description: Logging.
#### License
Copyright © 2004-2015 Apache Software Foundation.
log4net is licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
---
### Blanket.js
#### Info
* Link: http://blanketjs.org/
* Version: 1.1.5
* Author: Alex Seville
* Description: Code coverage measurement and reporting
#### License
Copyright (c) 2013 Alex Seville
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### Jasmine
#### Info
* Link: http://jasmine.github.io/
* Version: 1.3.1
* Author: Pivotal Labs
* Description: Unit testing
#### License
Copyright (c) 2008-2011 Pivotal Labs
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### RequireJS
#### Info
* Link: http://requirejs.org/
* Version: 2.1.9
* Author: The Dojo Foundation
* Description: Script loader
#### License
Copyright (c) 2010-2015, The Dojo Foundation
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### AngularJS
#### Info
* Link: http://angularjs.org/
* Version: 1.2.26
* Author: Google
* Description: Client-side web application framework
#### License
Copyright (c) 2010-2014 Google, Inc. http://angularjs.org
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### Angular-Route
#### Info
* Link: http://angularjs.org/
* Version: 1.2.26
* Author: Google
* Description: Client-side view routing
#### License
Copyright (c) 2010-2014 Google, Inc. http://angularjs.org
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### ES6-Promise
#### Info
* Link: https://github.com/jakearchibald/es6-promise
* Version: 2.0.0
* Authors: Yehuda Katz, Tom Dale, Stefan Penner and contributors
* Description: Promise polyfill for pre-ECMAScript 6 browsers
#### License
Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### screenfull.js
#### Info
* Link: https://github.com/sindresorhus/screenfull.js/
* Version: 1.2.0
* Author: Sindre Sorhus
* Description: Wrapper for cross-browser usage of fullscreen API
#### License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### Math.uuid.js
#### Info
* Link: https://github.com/broofa/node-uuid
* Version: 1.4
* Author: Robert Kieffer
* Description: Unique identifer generation (code adapted.)
#### License
Copyright (c) 2010 Robert Kieffer
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### Modernizr
#### Info
* Link: http://modernizr.com
* Version: 2.6.2
* Author: Faruk Ateş
* Description: Browser/device capability finding
#### License
Copyright (c) 20092015
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### Normalize.css
#### Info
* Link: https://github.com/necolas/normalize.css
* Version: 1.1.2
* Authors: Nicolas Gallagher, Jonathan Neal
* Description: Browser style normalization
#### License
Copyright (c) Nicolas Gallagher and Jonathan Neal
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### Moment.js
#### Info
* Link: http://momentjs.com
* Version: 2.7.0
* Authors: Tim Wood, Iskren Chernev, Moment.js contributors
* Description: Time/date parsing/formatting
#### License
Copyright (c) 2011-2014 Tim Wood, Iskren Chernev, Moment.js contributors
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### Json.NET
#### Info
* Link: http://www.newtonsoft.com/json
* Version: 6.0.8
* Author: Newtonsoft
* Description: JSON serialization/deserialization
#### License
Copyright (c) 2007 James Newton-King
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### Nancy
#### Info
* Link: http://nancyfx.org
* Version: 0.23.2
* Author: Andreas Håkansson, Steven Robbins and contributors
* Description: Embedded web server
#### License
Copyright © 2010 Andreas Håkansson, Steven Robbins and contributors
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
---
### Nancy.Hosting.Self
#### Info
* Link: http://nancyfx.org
* Version: 0.23.2
* Author: Andreas Håkansson, Steven Robbins and contributors
* Description: Embedded web server
#### License
Copyright © 2010 Andreas Håkansson, Steven Robbins and contributors
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@ -1 +0,0 @@
web: node app.js --port $PORT --include example/localstorage

282
README.md
View File

@ -1,154 +1,190 @@
# Open MCT Web
# Open MCT [![license](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0) [![codecov](https://codecov.io/gh/nasa/openmct/branch/master/graph/badge.svg?token=7DQIipp3ej)](https://codecov.io/gh/nasa/openmct) [![This project is using Percy.io for visual regression testing.](https://percy.io/static/images/percy-badge.svg)](https://percy.io/b2e34b17/openmct) [![npm version](https://img.shields.io/npm/v/openmct.svg)](https://www.npmjs.com/package/openmct) ![CodeQL](https://github.com/nasa/openmct/workflows/CodeQL/badge.svg)
Open MCT Web is a web-based platform for mission operations user interface
software.
Open MCT (Open Mission Control Technologies) is a next-generation mission control framework for visualization of data on desktop and mobile devices. It is developed at NASA's Ames Research Center, and is being used by NASA for data analysis of spacecraft missions, as well as planning and operation of experimental rover systems. As a generalizable and open source framework, Open MCT could be used as the basis for building applications for planning, operation, and analysis of any systems producing telemetry data.
## Bundles
> [!NOTE]
> Please visit our [Official Site](https://nasa.github.io/openmct/) and [Getting Started Guide](https://nasa.github.io/openmct/getting-started/)
A bundle is a group of software components (including source code, declared
as AMD modules, as well as resources such as images and HTML templates)
that are intended to be added or removed as a single unit. A plug-in for
Open MCT Web will be expressed as a bundle; platform components are also
expressed as bundles.
Once you've created something amazing with Open MCT, showcase your work in our GitHub Discussions [Show and Tell](https://github.com/nasa/openmct/discussions/categories/show-and-tell) section. We love seeing unique and wonderful implementations of Open MCT!
A bundle is also just a directory which contains a file `bundle.json`,
which declares its contents.
![Screen Shot 2022-11-23 at 9 51 36 AM](https://user-images.githubusercontent.com/4215777/203617422-4d912bfc-766f-4074-8324-409d9bbe7c05.png)
The file `bundles.json` (note the plural), at the top level of the
repository, is a JSON file containing an array of all bundles (expressed as
directory names) to include in a running instance of Open MCT Web. Adding or
removing paths from this list will add or remove bundles from the running
application.
## Building and Running Open MCT Locally
### Bundle Contents
Building and running Open MCT in your local dev environment is very easy. Be sure you have [Git](https://git-scm.com/downloads) and [Node.js](https://nodejs.org/) installed, then follow the directions below. Need additional information? Check out the [Getting Started](https://nasa.github.io/openmct/getting-started/) page on our website.
(These instructions assume you are installing as a non-root user; developers have [reported issues](https://github.com/nasa/openmct/issues/1151) running these steps with root privileges.)
A bundle directory will contain:
1. Clone the source code:
* `bundle.json`, the declaration of the bundles contents.
* A source code directory, named `src` by convention. This contains all
JavaScript sources exposed by the bundle. These are declared as
AMD modules.
* A directory for other resources, named `res` by convention. This
contains all HTML templates, CSS files, images, and so forth to be
used within a given bundle.
* A library directory, named `lib` by convention. This contains all
external libraries used and/or exposed by the bundle.
* A test directory, named `test` by convention. This contains all unit
tests declared for the bundle, as well as a `suite.json` that acts
as a listing of these dependencies. See the section on unit testing
below.
```sh
git clone https://github.com/nasa/openmct.git
```
Following these bundle conventions is required, at present, to ensure
that Open MCT Web (and its build and tests) execute correctly.
2. (Optional) Install the correct node version using [nvm](https://github.com/nvm-sh/nvm):
```sh
nvm install
```
3. Install development dependencies (Note: Check the `package.json` engine for our tested and supported node versions):
```sh
npm install
```
4. Run a local development server:
```
npm start
```
> [!IMPORTANT]
> Open MCT is now running, and can be accessed by pointing a web browser at [http://localhost:8080/](http://localhost:8080/)
Open MCT is built using [`npm`](http://npmjs.com/) and [`webpack`](https://webpack.js.org/).
## Documentation
Documentation is available on the [Open MCT website](https://nasa.github.io/openmct/documentation/).
### Examples
The clearest examples for developing Open MCT plugins are in the
[tutorials](https://github.com/nasa/openmct-tutorial) provided in
our documentation.
> [!NOTE]
> We want Open MCT to be as easy to use, install, run, and develop for as
> possible, and your feedback will help us get there!
> Feedback can be provided via [GitHub issues](https://github.com/nasa/openmct/issues/new/choose),
> [Starting a GitHub Discussion](https://github.com/nasa/openmct/discussions),
> or by emailing us at [arc-dl-openmct@mail.nasa.gov](mailto:arc-dl-openmct@mail.nasa.gov).
## Developing Applications With Open MCT
For more on developing with Open MCT, see our documentation for a guide on [Developing Applications with Open MCT](./API.md#starting-an-open-mct-application).
## Compatibility
This is a fast moving project and we do our best to test and support the widest possible range of browsers, operating systems, and NodeJS APIs. We have a published list of support available in our package.json's `browserslist` key.
The project utilizes `nvm` to maintain consistent node and npm versions across all projects. For UNIX, MacOS, Windows WSL, and other POSIX-compliant shell environments, click [here](https://github.com/nvm-sh/nvm). For Windows, check out [nvm-windows](https://github.com/coreybutler/nvm-windows).
If you encounter an issue with a particular browser, OS, or NodeJS API, please [file an issue](https://github.com/nasa/openmct/issues/new/choose).
## Plugins
Open MCT can be extended via plugins that make calls to the Open MCT API. A plugin is a group
of software components (including source code and resources such as images and HTML templates)
that is intended to be added or removed as a single unit.
As well as providing an extension mechanism, most of the core Open MCT codebase is also
written as plugins.
For information on writing plugins, please see [our API documentation](./API.md#plugins).
## Tests
The repository for Open MCT Web includes a test suite that can be run
directly from the web browser, `test.html`. This page will:
Our automated test coverage comes in the form of unit, e2e, visual, performance, and security tests.
* Load `bundles.json` to determine which bundles are in the application.
* Load `test/suite.json` to determine which source files are to be tested.
This should contain an array of strings, where each is the name of an
AMD module in the bundle's source directory. For each source file:
* Code coverage instrumentation will be added, via Blanket.
* The associated test file will be loaded, via RequireJS. These will
be located in the bundle's test folder; the test runner will presume
these follow a naming convention where each module to be tested has a
corresponding test module with the suffix `Spec` in that folder.
* Jasmine will then be invoked to run all tests defined in the loaded
test modules. Code coverage reporting will be displayed at the bottom
of the test page.
### Unit Tests
At present, the test runner presumes that bundle conventions are followed
as above; that is, sources are contained in `src`, and tests are contained
in `test`. Additionally, individual test files must use the `Spec` suffix
as described above.
Unit Tests are written for [Jasmine](https://jasmine.github.io/api/edge/global)
and run by [Karma](http://karma-runner.github.io). To run:
An example of this is expressed in `platform/framework`, which follows
bundle conventions.
`npm test`
### Functional Testing
The test suite is configured to load any scripts ending with `Spec.js` found
in the `src` hierarchy. Full configuration details are found in
`karma.conf.js`. By convention, unit test scripts should be located
alongside the units that they test; for example, `src/foo/Bar.js` would be
tested by `src/foo/BarSpec.js`.
The tests described above are all at the unit-level; an additional
test suite using [Protractor](https://angular.github.io/protractor/)
us under development, in the `protractor` folder.
### e2e, Visual, and Performance Testing
To run:
Our e2e (end-to-end), Visual, and Performance tests leverage the Playwright framework and are executed using Playwright's test runner, [@playwright/test](https://playwright.dev/).
* Install protractor following the instructions above.
* `cd protractor`
* `npm install`
* `npm run all`
#### How to Run Tests
## Build
- **e2e Tests**: These tests are run on every commit. To run the tests locally, use:
Open MCT Web includes a Maven command line build. Although Open MCT Web
can be run as-is using the repository contents (that is, by viewing
`index.html` in a web browser), and its tests can be run in-place
similarly (that is, by viewing `test.html` in a browser), the command
line build allows machine-driven verification and packaging.
```sh
npm run test:e2e:ci
```
This build will:
- **Visual Tests**: For running the visual test suite, use:
* Check all sources (excluding those in directories named `lib`) with
JSLint for code style compliance. The build will fail if any sources
do not satisfy JSLint.
* Run unit tests. This is done by running `test.html` in a PhantomJS
browser-like environment. The build will fail if any tests fail.
* Package the application as a `war` (web archive) file. This is
convenient for deployment on Tomcat or similar. This archive will
include sources, resources, and libraries for bundles, as well
as the top-level files used to initiate running of the application
(`index.html` and `bundles.json`).
```sh
npm run test:e2e:visual
```
Run as `mvn clean install`.
- **Performance Tests**: To initiate the performance tests, enter:
# Glossary
```sh
npm run test:perf
```
Certain terms are used throughout Open MCT Web with consistent meanings
All tests are located within the `e2e/tests/` directory and are identified by the `*.e2e.spec.js` filename pattern. For more information about the e2e test suite, refer to the [README](./e2e/README.md).
### Security Tests
Each commit is analyzed for known security vulnerabilities using [CodeQL](https://codeql.github.com/docs/codeql-language-guides/codeql-library-for-javascript/). The list of CWE coverage items is available in the [CodeQL docs](https://codeql.github.com/codeql-query-help/javascript-cwe/). The CodeQL workflow is specified in the [CodeQL analysis file](./.github/workflows/codeql-analysis.yml) and the custom [CodeQL config](./.github/codeql/codeql-config.yml).
### Test Reporting and Code Coverage
Each test suite generates a report in CircleCI. For a complete overview of testing functionality, please see our [Circle CI Test Insights Dashboard](https://app.circleci.com/insights/github/nasa/openmct/workflows/the-nightly/overview?branch=master&reporting-window=last-30-days)
Our code coverage is generated during the runtime of our unit, e2e, and visual tests. The combination of those reports is published to [codecov.io](https://app.codecov.io/gh/nasa/openmct/)
For more on the specifics of our code coverage setup, [see](TESTING.md#code-coverage)
## Glossary
Certain terms are used throughout Open MCT with consistent meanings
or conventions. Any deviations from the below are issues and should be
addressed (either by updating this glossary or changing code to reflect
correct usage.) Other developer documentation, particularly in-line
documentation, may presume an understanding of these terms.
| Term | Definition |
|---------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| _plugin_ | A removable, reusable grouping of software elements. The application is composed of plugins. |
| _composition_ | In the context of a domain object, this term refers to the set of other domain objects that compose or are contained by that object. A domain object's composition is the set of domain objects that should appear immediately beneath it in a tree hierarchy. It is described in its model as an array of ids, providing a means to asynchronously retrieve the actual domain object instances associated with these identifiers. |
| _description_ | When used as an object property, this term refers to the human-readable description of a thing, usually a single sentence or short paragraph. It is most often used in the context of extensions, domain object models, or other similar application-specific objects. |
| _domain object_ | A meaningful object to the user and a distinct thing in the work supported by Open MCT. Anything that appears in the left-hand tree is a domain object. |
| _identifier_ | A tuple consisting of a namespace and a key, which together uniquely identifies a domain object. |
| _model_ | The persistent state associated with a domain object. A domain object's model is a JavaScript object that can be converted to JSON without losing information, meaning it contains no methods. |
| _name_ | When used as an object property, this term refers to the human-readable name for a thing. It is most often used in the context of extensions, domain object models, or other similar application-specific objects. |
| _navigation_ | This term refers to the current state of the application with respect to the user's expressed interest in a specific domain object. For example, when a user clicks on a domain object in the tree, they are navigating to it, and it is thereafter considered the navigated object until the user makes another such choice. |
| _namespace_ | A name used to identify a persistence store. A running Open MCT application could potentially use multiple persistence stores. |
## Open MCT v2.0.0
Support for our legacy bundle-based API, and the libraries that it was built on (like Angular 1.x), have now been removed entirely from this repository.
For now if you have an Open MCT application that makes use of the legacy API, [a plugin](https://github.com/nasa/openmct-legacy-plugin) is provided that bootstraps the legacy bundling mechanism and API. This plugin will not be maintained over the long term however, and the legacy support plugin will not be tested for compatibility with future versions of Open MCT. It is provided for convenience only.
### How do I know if I am using legacy API?
You might still be using legacy API if your source code
- Contains files named bundle.js, or bundle.json,
- Makes calls to `openmct.$injector()`, or `openmct.$angular`,
- Makes calls to `openmct.legacyRegistry`, `openmct.legacyExtension`, or `openmct.legacyBundle`.
### What should I do if I am using legacy API?
Please refer to [the modern Open MCT API](https://nasa.github.io/openmct/documentation/). Post any questions to the [Discussions section](https://github.com/nasa/openmct/discussions) of the Open MCT GitHub repository.
## Related Repos
> [!NOTE]
> Although Open MCT functions as a standalone project, it is primarily an extensible framework intended to be used as a dependency with users' own plugins and packaging. Furthermore, Open MCT is intended to be used with an HTTP server such as Apache or Nginx. A great example of hosting Open MCT with Apache is `openmct-quickstart` and can be found in the table below.
| Repository | Description |
| --- | --- |
| [openmct-tutorial](https://github.com/nasa/openmct-tutorial) | A great place for beginners to learn how to use and extend Open MCT. |
| [openmct-quickstart](https://github.com/scottbell/openmct-quickstart) | A working example of Open MCT integrated with Apache HTTP server, YAMCS telemetry, and Couch DB for persistence.
| [Open MCT YAMCS Plugin](https://github.com/akhenry/openmct-yamcs) | Plugin for integrating YAMCS telemetry and command server with Open MCT. |
| [openmct-performance](https://github.com/unlikelyzero/openmct-performance) | Resources for performance testing Open MCT. |
| [openmct-as-a-dependency](https://github.com/unlikelyzero/openmct-as-a-dependency) | An advanced guide for users on how to build, develop, and test Open MCT when it's used as a dependency. |
* _bundle_: A bundle is a removable, reusable grouping of software elements.
The application is composed of bundles. Plug-ins are bundles. For more
information, refer to framework documentation (under `platform/framework`.)
* _capability_: An object which exposes dynamic behavior or non-persistent
state associated with a domain object.
* _composition_: In the context of a domain object, this refers to the set of
other domain objects that compose or are contained by that object. A domain
object's composition is the set of domain objects that should appear
immediately beneath it in a tree hierarchy. A domain object's composition is
described in its model as an array of id's; its composition capability
provides a means to retrieve the actual domain object instances associated
with these identifiers asynchronously.
* _description_: When used as an object property, this refers to the human-readable
description of a thing; usually a single sentence or short paragraph.
(Most often used in the context of extensions, domain
object models, or other similar application-specific objects.)
* _domain object_: A meaningful object to the user; a distinct thing in
the work support by Open MCT Web. Anything that appears in the left-hand
tree is a domain object.
* _extension_: An extension is a unit of functionality exposed to the
platform in a declarative fashion by a bundle. For more
information, refer to framework documentation (under `platform/framework`.)
* _id_: A string which uniquely identifies a domain object.
* _key_: When used as an object property, this refers to the machine-readable
identifier for a specific thing in a set of things. (Most often used in the
context of extensions or other similar application-specific object sets.)
* _model_: The persistent state associated with a domain object. A domain
object's model is a JavaScript object which can be converted to JSON
without losing information (that is, it contains no methods.)
* _name_: When used as an object property, this refers to the human-readable
name for a thing. (Most often used in the context of extensions, domain
object models, or other similar application-specific objects.)
* _navigation_: Refers to the current state of the application with respect
to the user's expressed interest in a specific domain object; e.g. when
a user clicks on a domain object in the tree, they are _navigating_ to
it, and it is thereafter considered the _navigated_ object (until the
user makes another such choice.)
* _space_: A name used to identify a persistence store. Interactions with
persistence with generally involve a `space` parameter in some form, to
distinguish multiple persistence stores from one another (for cases
where there are multiple valid persistence locations available.)

29
SECURITY.md Normal file
View File

@ -0,0 +1,29 @@
# Security Policy
The Open MCT team secures our code base using a combination of code review, dependency review, and periodic security reviews. Static analysis performed during automated verification additionally safeguards against common coding errors which may result in vulnerabilities.
### Reporting a Vulnerability
For general defects, please for a [Bug Report](https://github.com/nasa/openmct/issues/new/choose)
To report a vulnerability for Open MCT please send a detailed report to [arc-dl-openmct](mailto:arc-dl-openmct@mail.nasa.gov).
See our [top-level security policy](https://github.com/nasa/openmct/security/policy) for additional information.
### CodeQL and LGTM
The [CodeQL GitHub Actions workflow](https://github.com/nasa/openmct/blob/master/.github/workflows/codeql-analysis.yml) is available to the public. To review the results, fork the repository and run the CodeQL workflow.
CodeQL is run for every pull-request in GitHub Actions.
### ESLint
Static analysis is run for every push on the master branch and every pull request on all branches in Github Actions.
For more information about ESLint, visit https://eslint.org/.
### General Support
For additional support, please open a [Github Discussion](https://github.com/nasa/openmct/discussions).
If you wish to report a cybersecurity incident or concern, please contact the NASA Security Operations Center either by phone at 1-877-627-2732 or via email address soc@nasa.gov.

122
TESTING.md Normal file
View File

@ -0,0 +1,122 @@
# Testing
Open MCT Testing is iterating and improving at a rapid pace. This document serves to capture and index existing testing documentation and house documentation which no other obvious location as our testing evolves.
## General Testing Process
Documentation located [here](./docs/src/process/testing/plan.md)
## Unit Testing
Unit testing is essential part of our test strategy and complements our e2e testing strategy.
#### Unit Test Guidelines
* Unit Test specs should reside alongside the source code they test, not in a separate directory.
* Unit test specs for plugins should be defined at the plugin level. Start with one test spec per plugin named pluginSpec.js, and as this test spec grows too big, break it up into multiple test specs that logically group related tests.
* Unit tests for API or for utility functions and classes may be defined at a per-source file level.
* Wherever possible only use and mock public API, builtin functions, and UI in your test specs. Do not directly invoke any private functions. ie. only call or mock functions and objects exposed by openmct.* (eg. openmct.telemetry, openmct.objectView, etc.), and builtin browser functions (fetch, requestAnimationFrame, setTimeout, etc.).
* Where builtin functions have been mocked, be sure to clear them between tests.
* Test at an appropriate level of isolation. Eg.
* If youre testing a view, you do not need to test the whole application UI, you can just fetch the view provider using the public API and render the view into an element that you have created.
* You do not need to test that the view switcher works, there should be separate tests for that.
* You do not need to test that telemetry providers work, you can mock openmct.telemetry.request() to feed test data to the view.
* Use your best judgement when deciding on appropriate scope.
* Automated tests for plugins should start by actually installing the plugin being tested, and then test that installing the plugin adds the desired features and behavior to Open MCT, observing the above rules.
* All variables used in a test spec, including any instances of the Open MCT API should be declared inside of an appropriate block scope (not at the root level of the source file), and should be initialized in the relevant beforeEach block. `beforeEach` is preferable to `beforeAll` to avoid leaking of state between tests.
* A `afterEach` or `afterAll` should be used to do any clean up necessary to prevent leakage of state between test specs. This can happen when functions on `window` are wrapped, or when the URL is changed. [A convenience function](https://github.com/nasa/openmct/blob/master/src/utils/testing.js#L59) is provided for resetting the URL and clearing builtin spies between tests.
#### Unit Test Examples
* [Example of an automated test spec for an object view plugin](https://github.com/nasa/openmct/blob/master/src/plugins/telemetryTable/pluginSpec.js)
* [Example of an automated test spec for API](https://github.com/nasa/openmct/blob/master/src/api/time/TimeAPISpec.js)
#### Unit Testing Execution
The unit tests can be executed in one of two ways:
`npm run test` which runs the entire suite against headless chrome
`npm run test:debug` for debugging the tests in realtime in an active chrome session.
## e2e, performance, and visual testing
Documentation located [here](./e2e/README.md)
## Code Coverage
It's up to the individual developer as to whether they want to add line coverage in the form of a unit test or e2e test.
Line Code Coverage is generated by our unit tests and e2e tests, then combined by ([Codecov.io Flags](https://docs.codecov.com/docs/flags)), and finally reported in GitHub PRs by Codecov.io's PR Bot. This workflow gives a comprehensive (if flawed) view of line coverage.
### Karma-istanbul
Line coverage is generated by our `karma-coverage-istanbul-reporter` package as defined in our `karma.conf.js` file:
```js
coverageIstanbulReporter: {
fixWebpackSourcePaths: true,
skipFilesWithNoCoverage: true,
dir: 'coverage/unit', //Sets coverage file to be consumed by codecov.io
reports: ['lcovonly']
},
```
Once the file is generated, it can be published to codecov with
```json
"cov:unit:publish": "codecov --disable=gcov -f ./coverage/unit/lcov.info -F unit",
```
### e2e
The e2e line coverage is a bit more complex than the karma implementation. This is the general sequence of events:
1. Each e2e suite will start webpack with the ```npm run start:coverage``` command with config `webpack.coverage.mjs` and the `babel-plugin-istanbul` plugin to generate code coverage during e2e test execution using our custom [baseFixture](./baseFixtures.js).
1. During testcase execution, each e2e shard will generate its piece of the larger coverage suite. **This coverage file is not merged**. The raw coverage file is stored in a `.nyc_report` directory.
1. [nyc](https://github.com/istanbuljs/nyc) converts this directory into a `lcov` file with the following command `npm run cov:e2e:report`
1. Most of the tests focus on chrome/ubuntu at a single resolution. This coverage is published to codecov with `npm run cov:e2e:ci:publish`.
1. The rest of our coverage only appears when run against persistent datastore (couchdb), non-ubuntu machines, and non-chrome browsers with the `npm run cov:e2e:full:publish` flag. Since this happens about once a day, we have leveraged codecov.io's carryforward flag to report on lines covered outside of each commit on an individual PR.
### Limitations in our code coverage reporting
Our code coverage implementation has some known limitations:
- [Variability](https://github.com/nasa/openmct/issues/5811)
- [Accuracy](https://github.com/nasa/openmct/issues/7015)
- [Vue instrumentation gaps](https://github.com/nasa/openmct/issues/4973)
## Troubleshooting CI
The following is an evolving guide to troubleshoot CI and PR issues.
### Github Checks failing
There are a few reasons that your GitHub PR could be failing beyond simple failed tests.
* Required Checks. We're leveraging required checks in GitHub so that we can quickly and precisely control what becomes and informational failure vs a hard requirement. The only way to determine the difference between a required vs information check is check for the `(Required)` emblem next to the step details in GitHub Checks.
* Not all required checks are run per commit. You may need to manually trigger addition GitHub checks with a `pr:<label>` label added to your PR.
### Flaky tests
(CircleCI's test insights feature)[https://circleci.com/blog/introducing-test-insights-with-flaky-test-detection/] collects historical data about the individual test results for both unit and e2e tests. Note: only a 14 day window of flake is available.
### Local=Pass and CI=Fail
Although rare, it is possible that your test can pass locally but fail in CI.
### Reset your workspace
It's possible that you're running with dependencies or a local environment which is out of sync with the branch you're working on. Make sure to execute the following:
```sh
nvm use
npm run clean
npm install
```
#### Run tests in the same container as CI
In extreme cases, tests can fail due to the constraints of running within a container. To execute tests in exactly the same way as run in CircleCI.
```sh
// Replace {X.X.X} with the current Playwright version
// from our package.json or circleCI configuration file
docker run --rm --network host --cpus="2" -v $(pwd):/work/ -w /work/ -it mcr.microsoft.com/playwright:v{X.X.X}-focal /bin/bash
npm install
```
At this point, you're running inside the same container and with 2 cpu cores. You can specify the unit tests:
```sh
npm run test
```
or e2e tests:
```sh
npx playwright test --config=e2e/playwright-ci.config.js --project=chrome --grep <the testcase name>
```

63
app.js
View File

@ -1,63 +0,0 @@
/*global require,process,console*/
/**
* Usage:
*
* npm install minimist express
* node app.js [options]
*/
(function () {
"use strict";
var BUNDLE_FILE = 'bundles.json',
options = require('minimist')(process.argv.slice(2)),
express = require('express'),
app = express(),
fs = require('fs');
// Defaults
options.port = options.port || options.p || 8080;
['include', 'exclude', 'i', 'x'].forEach(function (opt) {
options[opt] = options[opt] || [];
// Make sure includes/excludes always end up as arrays
options[opt] = Array.isArray(options[opt]) ?
options[opt] : [options[opt]];
});
options.include = options.include.concat(options.i);
options.exclude = options.exclude.concat(options.x);
// Show command line options
if (options.help || options.h) {
console.log("\nUsage: node app.js [options]\n");
console.log("Options:");
console.log(" --help, -h Show this message.");
console.log(" --port, -p <number> Specify port.");
console.log(" --include, -i <bundle> Include the specified bundle.");
console.log(" --exclude, -x <bundle> Exclude the specified bundle.");
console.log("");
process.exit(0);
}
// Override bundles.json for HTTP requests
app.use('/' + BUNDLE_FILE, function (req, res) {
var bundles = JSON.parse(fs.readFileSync(BUNDLE_FILE, 'utf8'));
// Handle command line inclusions/exclusions
bundles = bundles.concat(options.include);
bundles = bundles.filter(function (bundle) {
return options.exclude.indexOf(bundle) === -1;
});
bundles = bundles.filter(function (bundle, index) { // Uniquify
return bundles.indexOf(bundle) === index;
});
res.send(JSON.stringify(bundles));
});
// Expose everything else as static files
app.use(express['static']('.'));
// Finally, open the HTTP server
app.listen(options.port);
}());

View File

@ -1,11 +1,11 @@
#!/bin/bash
#*****************************************************************************
#* Open MCT Web, Copyright (c) 2014-2015, United States Government
#* Open MCT, Copyright (c) 2014-2024, United States Government
#* as represented by the Administrator of the National Aeronautics and Space
#* Administration. All rights reserved.
#*
#* Open MCT Web is licensed under the Apache License, Version 2.0 (the
#* Open MCT is licensed under the Apache License, Version 2.0 (the
#* "License"); you may not use this file except in compliance with the License.
#* You may obtain a copy of the License at
#* http://www.apache.org/licenses/LICENSE-2.0.
@ -16,23 +16,25 @@
#* License for the specific language governing permissions and limitations
#* under the License.
#*
#* Open MCT Web includes source code licensed under additional open source
#* Open MCT includes source code licensed under additional open source
#* licenses. See the Open Source Licenses file (LICENSES.md) included with
#* this source code distribution or the Licensing information page available
#* at runtime from the About dialog for additional information.
#*****************************************************************************
# Script to build and deploy docs to github pages.
# Script to build and deploy docs.
OUTPUT_DIRECTORY="target/docs"
REPOSITORY_URL="git@github.com:nasa/openmctweb.git"
OUTPUT_DIRECTORY="dist/docs"
# Docs, once built, are pushed to the private website repo
REPOSITORY_URL="git@github.com:nasa/openmct-website.git"
WEBSITE_DIRECTORY="website"
BUILD_SHA=`git rev-parse head`
BUILD_SHA=`git rev-parse HEAD`
# A remote will be created for the git repository we are pushing to.
# Don't worry, as this entire directory will get trashed inbetween builds.
# Don't worry, as this entire directory will get trashed in between builds.
REMOTE_NAME="documentation"
WEBSITE_BRANCH="gh-pages"
WEBSITE_BRANCH="master"
# Clean output directory, JSDOC will recreate
if [ -d $OUTPUT_DIRECTORY ]; then
@ -40,23 +42,21 @@ if [ -d $OUTPUT_DIRECTORY ]; then
fi
npm run docs
cd $OUTPUT_DIRECTORY || exit 1
echo "git init"
git init
echo "git clone $REPOSITORY_URL website"
git clone $REPOSITORY_URL website || exit 1
echo "cp -r $OUTPUT_DIRECTORY $WEBSITE_DIRECTORY"
cp -r $OUTPUT_DIRECTORY $WEBSITE_DIRECTORY
echo "cd $WEBSITE_DIRECTORY"
cd $WEBSITE_DIRECTORY || exit 1
# Configure github for CircleCI user.
git config user.email "buildbot@circleci.com"
git config user.name "BuildBot"
echo "git remote add $REMOTE_NAME $REPOSITORY_URL"
git remote add $REMOTE_NAME $REPOSITORY_URL
echo "git add ."
git add .
echo "git commit -m \"Generate docs from build $BUILD_SHA\""
git commit -m "Generate docs from build $BUILD_SHA"
echo "git push $REMOTE_NAME HEAD:$WEBSITE_BRANCH -f"
git push $REMOTE_NAME HEAD:$WEBSITE_BRANCH -f
echo "Documentation pushed to gh-pages branch."
echo "git commit -m \"Docs updated from build $BUILD_SHA\""
git commit -m "Docs updated from build $BUILD_SHA"
# Push to the website repo
git push

View File

@ -1,33 +0,0 @@
[
"platform/framework",
"platform/core",
"platform/representation",
"platform/commonUI/about",
"platform/commonUI/browse",
"platform/commonUI/edit",
"platform/commonUI/dialog",
"platform/commonUI/general",
"platform/commonUI/inspect",
"platform/commonUI/mobile",
"platform/commonUI/themes/espresso",
"platform/containment",
"platform/execution",
"platform/telemetry",
"platform/features/imagery",
"platform/features/layout",
"platform/features/pages",
"platform/features/plot",
"platform/features/scrolling",
"platform/features/events",
"platform/forms",
"platform/identity",
"platform/persistence/local",
"platform/persistence/queue",
"platform/policy",
"platform/entanglement",
"platform/search",
"example/imagery",
"example/eventGenerator",
"example/generator"
]

View File

@ -1,14 +0,0 @@
deployment:
production:
branch: master
commands:
- ./build-docs.sh
- git push git@heroku.com:openmctweb-demo.git $CIRCLE_SHA1:refs/heads/master
openmctweb-staging-un:
branch: search
heroku:
appname: openmctweb-staging-un
openmctweb-staging-deux:
branch: mobile
heroku:
appname: openmctweb-staging-deux

28
codecov.yml Normal file
View File

@ -0,0 +1,28 @@
codecov:
require_ci_to_pass: false #This setting will update the bot regardless of whether or not tests pass
coverage:
status:
project:
default:
informational: true
patch:
default:
informational: true
precision: 2
round: down
range: "66...100"
flags:
unit:
carryforward: false
e2e-ci:
carryforward: false
e2e-full:
carryforward: true
comment:
layout: "diff,flags,files,footer"
behavior: default
require_changes: false
show_carryforward_flags: true

21
copyright-notice.html Normal file
View File

@ -0,0 +1,21 @@
<!--
Open MCT, Copyright (c) 2014-2024, United States Government
as represented by the Administrator of the National Aeronautics and Space
Administration. All rights reserved.
Open MCT is licensed under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0.
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.
Open MCT includes source code licensed under additional open source
licenses. See the Open Source Licenses file (LICENSES.md) included with
this source code distribution or the Licensing information page available
at runtime from the About dialog for additional information.
-->

21
copyright-notice.js Normal file
View File

@ -0,0 +1,21 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/

View File

@ -1,193 +0,0 @@
/*****************************************************************************
* Open MCT Web, Copyright (c) 2014-2015, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT Web is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT Web includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
/*global require,process,GLOBAL*/
/*jslint nomen: false */
// Usage:
// node gendocs.js --in <source directory> --out <dest directory>
var CONSTANTS = {
DIAGRAM_WIDTH: 800,
DIAGRAM_HEIGHT: 500
};
GLOBAL.window = GLOBAL.window || GLOBAL; // nomnoml expects window to be defined
(function () {
"use strict";
var fs = require("fs"),
mkdirp = require("mkdirp"),
path = require("path"),
glob = require("glob"),
marked = require("marked"),
split = require("split"),
stream = require("stream"),
nomnoml = require('nomnoml'),
Canvas = require('canvas'),
options = require("minimist")(process.argv.slice(2));
// Convert from nomnoml source to a target PNG file.
function renderNomnoml(source, target) {
var canvas =
new Canvas(CONSTANTS.DIAGRAM_WIDTH, CONSTANTS.DIAGRAM_HEIGHT);
nomnoml.draw(canvas, source, 1.0);
canvas.pngStream().pipe(fs.createWriteStream(target));
}
// Stream transform.
// Pulls out nomnoml diagrams from fenced code blocks and renders them
// as PNG files in the output directory, prefixed with a provided name.
// The fenced code blocks will be replaced with Markdown in the
// output of this stream.
function nomnomlifier(outputDirectory, prefix) {
var transform = new stream.Transform({ objectMode: true }),
isBuilding = false,
counter = 1,
outputPath,
source = "";
transform._transform = function (chunk, encoding, done) {
if (!isBuilding) {
if (chunk.trim().indexOf("```nomnoml") === 0) {
var outputFilename = prefix + '-' + counter + '.png';
outputPath = path.join(outputDirectory, outputFilename);
this.push([
"\n![Diagram ",
counter,
"](",
outputFilename,
")\n\n"
].join(""));
isBuilding = true;
source = "";
counter += 1;
} else {
// Otherwise, pass through
this.push(chunk + '\n');
}
} else {
if (chunk.trim() === "```") {
// End nomnoml
renderNomnoml(source, outputPath);
isBuilding = false;
} else {
source += chunk + '\n';
}
}
done();
};
return transform;
}
// Convert from Github-flavored Markdown to HTML
function gfmifier() {
var transform = new stream.Transform({ objectMode: true }),
markdown = "";
transform._transform = function (chunk, encoding, done) {
markdown += chunk;
done();
};
transform._flush = function (done) {
this.push("<html><body>\n");
this.push(marked(markdown));
this.push("\n</body></html>\n");
done();
};
return transform;
}
// Custom renderer for marked; converts relative links from md to html,
// and makes headings linkable.
function CustomRenderer() {
var renderer = new marked.Renderer(),
customRenderer = Object.create(renderer);
customRenderer.heading = function (text, level) {
var escapedText = (text || "").trim().toLowerCase().replace(/\W/g, "-"),
aOpen = "<a name=\"" + escapedText + "\" href=\"#" + escapedText + "\">",
aClose = "</a>";
return aOpen + renderer.heading.apply(renderer, arguments) + aClose;
};
// Change links to .md files to .html
customRenderer.link = function (href, title, text) {
// ...but only if they look like relative paths
return (href || "").indexOf(":") === -1 && href[0] !== "/" ?
renderer.link(href.replace(/\.md/, ".html"), title, text) :
renderer.link.apply(renderer, arguments);
};
return customRenderer;
}
options['in'] = options['in'] || options.i;
options.out = options.out || options.o;
marked.setOptions({
renderer: new CustomRenderer(),
gfm: true,
tables: true,
breaks: false,
pedantic: false,
sanitize: true,
smartLists: true,
smartypants: false
});
// Convert all markdown files.
// First, pull out nomnoml diagrams.
// Then, convert remaining Markdown to HTML.
glob(options['in'] + "/**/*.md", {}, function (err, files) {
files.forEach(function (file) {
var destination = file.replace(options['in'], options.out)
.replace(/md$/, "html"),
destPath = path.dirname(destination),
prefix = path.basename(destination).replace(/\.html$/, "");
mkdirp(destPath, function (err) {
fs.createReadStream(file, { encoding: 'utf8' })
.pipe(split())
.pipe(nomnomlifier(destPath, prefix))
.pipe(gfmifier())
.pipe(fs.createWriteStream(destination, {
encoding: 'utf8'
}));
});
});
});
// Also copy over all HTML, CSS, or PNG files
glob(options['in'] + "/**/*.@(html|css|png)", {}, function (err, files) {
files.forEach(function (file) {
var destination = file.replace(options['in'], options.out),
destPath = path.dirname(destination);
mkdirp(destPath, function (err) {
fs.createReadStream(file, { encoding: 'utf8' })
.pipe(fs.createWriteStream(destination, {
encoding: 'utf8'
}));
});
});
});
}());

View File

@ -1,232 +0,0 @@
# Overview
The framework layer's most basic responsibility is allowing individual
software components to communicate. The software components it recognizes
are:
* _Extensions_: Individual units of functionality that can be added to
or removed from Open MCT Web. _Extension categories_ distinguish what
type of functionality is being added/removed.
* _Bundles_: A grouping of related extensions
(named after an analogous concept from [OSGi](http://www.osgi.org/))
that may be added or removed as a group.
The framework layer operates by taking a set of active bundles, and
exposing extensions to one another as-needed, using
[dependency injection](https://en.wikipedia.org/wiki/Dependency_injection).
Extensions are responsible for declaring their dependencies in a
manner which the framework layer can understand.
```nomnoml
#direction: down
[Open MCT Web|
[Dependency injection framework]-->[Platform bundle #1]
[Dependency injection framework]-->[Platform bundle #2]
[Dependency injection framework]-->[Plugin bundle #1]
[Dependency injection framework]-->[Plugin bundle #2]
[Platform bundle #1|[Extensions]]
[Platform bundle #2|[Extensions]]
[Plugin bundle #1|[Extensions]]
[Plugin bundle #2|[Extensions]]
[Platform bundle #1]<->[Platform bundle #2]
[Plugin bundle #1]<->[Platform bundle #2]
[Plugin bundle #1]<->[Plugin bundle #2]
]
```
The "dependency injection framework" in this case is
[AngularJS](https://angularjs.org/). Open MCT Web's framework layer
is really just a thin wrapper over Angular that recognizes the
concepts of bundles and extensions (as declared in JSON files) and
registering extensions with Angular. It additionally acts as a
mediator between Angular and [RequireJS](http://requirejs.org/),
which is used to load JavaScript sources which implement
extensions.
```nomnoml
[Framework layer|
[AngularJS]<-[Framework Component]
[RequireJS]<-[Framework Component]
[Framework Component]1o-*[Bundles]
]
```
It is worth noting that _no other components_ are "aware" of the
framework component directly; Angular and Require are _used by_ the
framework components, and extensions in various bundles will have
their dependencies satisfied by Angular as a consequence of registration
activities which were performed by the framework component.
## Application Initialization
The framework component initializes an Open MCT Web application following
a simple sequence of steps.
```nomnoml
[<start> Start]->[<state> Load bundles.json]
[Load bundles.json]->[<state> Load bundle.json files]
[Load bundle.json files]->[<state> Resolve implementations]
[Resolve implementations]->[<state> Register with Angular]
[Register with Angular]->[<state> Bootstrap application]
[Bootstrap application]->[<end> End]
```
1. __Loading bundles.json.__ A file named `bundles.json` is loaded to determine
which bundles to load. Bundles are given in this file as relative paths
which point to bundle directories.
2. __Load bundle.json files.__ Individual bundle definitions are loaded; a
`bundle.json` file is expected in each bundle directory.
2. __Resolving implementations.__ Any scripts which provide implementations for
extensions exposed by bundles are loaded, using RequireJS.
3. __Register with Angular.__ Resolved extensions are registered with Angular,
such that they can be used by the application at run-time. This stage
includes both registration of Angular built-ins (directives, controllers,
routes, constants, and services) as well as registration of non-Angular
extensions.
4. __Bootstrap application.__ Once all extensions have been registered,
the Angular application
[is bootstrapped](https://docs.angularjs.org/guide/bootstrap).
## Architectural Paradigm
```nomnoml
[Extension]
[Extension]o->[Dependency #1]
[Extension]o->[Dependency #2]
[Extension]o->[Dependency #3]
```
Open MCT Web's architecture relies on a simple premise: Individual units
(extensions) only have access to the dependencies they declare that they
need, and they acquire references to these dependencies via dependency
injection. This has several desirable traits:
* Programming to an interface is enforced. Any given dependency can be
swapped out for something which exposes an equivalent interface. This
improves flexibility against refactoring, simplifies testing, and
provides a common mechanism for extension and reconfiguration.
* The dependencies of a unit must be explicitly defined. This means that
it can be easily determined what a given unit's role is within the
larger system, in terms of what other components it will interact with.
It also helps to enforce good separation of concerns: When a set of
declared dependencies becomes long it is obvious, and this is usually
a sign that a given unit is involved in too many concerns and should
be refactored into smaller pieces.
* Individual units do not need to be aware of the framework; they need
only be aware of the interfaces to the components they specifically
use. This avoids introducing a ubiquitous dependency upon the framework
layer itself; it is plausible to modify or replace the framework
without making changes to individual software components which run upon
the framework.
A drawback to this approach is that it makes it difficult to define
"the architecture" of Open MCT Web, in terms of describing the specific
units that interact at run-time. The run-time architecture is determined
by the framework as the consequence of wiring together dependencies.
As such, the specific architecture of any given application built on
Open MCT Web can look very different.
Keeping that in mind, there are a few useful patterns supported by the
framework that are useful to keep in mind.
The specific service infrastructure provided by the platform is described
in the [Platform Architecture](Platform.md).
## Extension Categories
One of the capabilities that the framework component layers on top of
AngularJS is support for many-to-one dependencies. That is, a specific
extension may declare a dependency to _all extensions of a specific
category_, instead of being limited to declaring specific dependencies.
```nomnoml
#direction: right
[Specific Extension] 1 o-> * [Extension of Some Category]
```
This is useful for introducing specific extension points to an application.
Some unit of software will depend upon all extensions of a given category
and integrate their behavior into the system in some fashion; plugin authors
can then add new extensions of that category to augment existing behaviors.
Some developers may be familiar with the use of registries to achieve
similar characteristics. This approach is similar, except that the registry
is effectively implicit whenever a new extension category is used or
depended-upon. This has some advantages over a more straightforward
registry-based approach:
* These many-to-one relationships are expressed as dependencies; an
extension category is registered as having dependencies on all individual
extensions of this category. This avoids ordering issues that may occur
with more conventional registries, which may be observed before all
dependencies are resolved.
* The need for service registries of specific types is removed, reducing
the number of interfaces to manage within the system. Groups of
extensions are provided as arrays.
## Composite Services
Composite services (registered via extension category `components`) are
a pattern supported by the framework. These allow service instances to
be built from multiple components at run-time; support for this pattern
allows additional bundles to introduce or modify behavior associated
with these services without modifying or replacing original service
instances.
```nomnoml
#direction: down
[<abstract> FooService]
[FooDecorator #1]--:>[FooService]
[FooDecorator #n]--:>[FooService]
[FooAggregator]--:>[FooService]
[FooProvider #1]--:>[FooService]
[FooProvider #n]--:>[FooService]
[FooDecorator #1]o->[<state> ...decorators...]
[...decorators...]o->[FooDecorator #n]
[FooDecorator #n]o->[FooAggregator]
[FooAggregator]o->[FooProvider #1]
[FooAggregator]o->[<state> ...providers...]
[FooAggregator]o->[FooProvider #n]
[FooDecorator #1]--[<note> Exposed as fooService]
```
In this pattern, components all implement an interface which is
standardized for that service. Components additionally declare
that they belong to one of three types:
* __Providers.__ A provider actually implements the behavior
(satisfies the contract) for that kind of service. For instance,
if a service is responsible for looking up documents by an identifier,
one provider may do so by querying a database, while another may
do so by reading a static JSON document. From the outside, either
provider would look the same (they expose the same interface) and
they could be swapped out easily.
* __Aggregator.__ An aggregator takes many providers and makes them
behave as one. Again, this implements the same interface as an
individual provider, so users of the service do not need to be
concerned about the difference between consulting many providers
and consulting one. Continuing with the example of a service that
looks up documents by identifiers, an aggregator here might consult
all providers, and return any document is found (perhaps picking one
over the other or merging documents if there are multiple matches.)
* __Decorators.__ A decorator exposes the same interface as other
components, but instead of fully implementing the behavior associated
with that kind of service, it only acts as an intermediary, delegating
the actual behavior to a different component. Decorators may transform
inputs or outputs, or initiate some side effects associated with a
service. This is useful if certain common behavior associated with a
service (caching, for instance) may be useful across many different
implementations of that same service.
The framework will register extensions in this category such that an
aggregator will depend on all of its providers, and decorators will
depend upon on one another in a chain. The result of this compositing step
(the last decorator, if any; otherwise the aggregator, if any;
otherwise a single provider) will be exposed as a single service that
other extensions can acquire through dependency injection. Because all
components of the same type of service expose the same interface, users
of that service do not need to be aware that they are talking to an
aggregator or a provider, for instance.

View File

@ -1,714 +0,0 @@
# Overview
The Open MCT Web platform utilizes the [framework layer](Framework.md)
to provide an extensible baseline for applications which includes:
* A common user interface (and user interface paradigm) for dealing with
domain objects of various sorts.
* A variety of extension points for introducing new functionality
of various kinds within the context of the common user interface.
* A service infrastructure to support building additional components.
## Platform Architecture
While the framework provides a more general architectural paradigm for
building application, the platform adds more specificity by defining
additional extension types and allowing for integration with back end
components.
The run-time architecture of an Open MCT Web application can be categorized
into certain high-level tiers:
```nomnoml
[DOM]->[<state> AngularJS]
[AngularJS]->[Presentation Layer]
[Presentation Layer]->[Information Model]
[Presentation Layer]->[Service Infrastructure]
[Information Model]->[Service Infrastructure]
[Service Infrastructure]->[<state> Browser APIs]
[Browser APIs]->[Back-end]
```
Applications built using Open MCT Web may add or configure functionality
in __any of these tiers__.
* _DOM_: The rendered HTML document, composed from HTML templates which
have been processed by AngularJS and will be updated by AngularJS
to reflect changes from the presentation layer. User interactions
are initiated from here and invoke behavior in the presentation layer.
* [_Presentation layer_](#presentation-layer): The presentation layer
is responsible for updating (and providing information to update)
the displayed state of the application. The presentation layer consists
primarily of _controllers_ and _directives_. The presentation layer is
concerned with inspecting the information model and preparing it for
display.
* [_Information model_](#information-model): The information model
describes the state and behavior of the objects with which the user
interacts.
* [_Service infrastructure_](#service-infrastructure): The service
infrastructure is responsible for providing the underlying general
functionality needed to support the information model. This includes
exposing underlying sets of extensions and mediating with the
back-end.
* _Back-end_: The back-end is out of the scope of Open MCT Web, except
for the interfaces which are utilized by adapters participating in the
service infrastructure.
## Application Start-up
Once the
[application has been initialized](Framework.md#application-initialization)
Open MCT Web primarily operates in an event-driven paradigm; various
events (mouse clicks, timers firing, receiving responses to XHRs) trigger
the invocation of functions, typically in the presentation layer for
user actions or in the service infrastructure for server responses.
The "main point of entry" into an initialized Open MCT Web application
is effectively the
[route](https://docs.angularjs.org/api/ngRoute/service/$route#example)
which is associated with the URL used to access Open MCT Web (or a
default route.) This route will be associated with a template which
will be displayed; this template will include references to directives
and controllers which will be interpreted by Angular and used to
initialize the state of the display in a manner which is backed by
both the information model and the service infrastructure.
```nomnoml
[<start> Start]->[<state> page load]
[page load]->[<state> route selection]
[route selection]->[<state> compile, display template]
[compile, display template]->[Template]
[Template]->[<state> use Controllers]
[Template]->[<state> use Directives]
[use Controllers]->[Controllers]
[use Directives]->[Directives]
[Controllers]->[<state> consult information model]
[consult information model]->[<state> expose data]
[expose data]->[Angular]
[Angular]->[<state> update display]
[Directives]->[<state> add event listeners]
[Directives]->[<state> update display]
[add event listeners]->[<end> End]
[update display]->[<end> End]
```
# Presentation Layer
The presentation layer of Open MCT Web is responsible for providing
information to display within templates, and for handling interactions
which are initiated from templated DOM elements. AngularJS acts as
an intermediary between the web page as the user sees it, and the
presentation layer implemented as Open MCT Web extensions.
```nomnoml
[Presentation Layer|
[Angular built-ins|
[routes]
[controllers]
[directives]
[templates]
]
[Domain object representation|
[views]
[representations]
[representers]
[gestures]
]
]
```
## Angular built-ins
Several extension categories in the presentation layer map directly
to primitives from AngularJS:
* [_Controllers_](https://docs.angularjs.org/guide/controller) provide
data to templates, and expose functionality that can be called from
templates.
* [_Directives_](https://docs.angularjs.org/guide/directive) effectively
extend HTML to provide custom behavior associated with specific
attributes and tags.
* [_Routes_](https://docs.angularjs.org/api/ngRoute/service/$route#example)
are used to associate specific URLs (including the fragment identifier)
with specific application states. (In Open MCT Web, these are used to
describe the mode of usage - e.g. browse or edit - as well as to
identify the object being used.)
* [_Templates_](https://docs.angularjs.org/guide/templates) are partial
HTML documents that will be rendered and kept up-to-date by AngularJS.
Open MCT Web introduces a custom `mct-include` directive which acts
as a wrapper around `ng-include` to allow templates to be referred
to by symbolic names.
## Domain object representation
The remaining extension categories in the presentation layer are specific
to displaying domain objects.
* _Representations_ are templates that will be used to display
domain objects in specific ways (e.g. "as a tree node.")
* _Views_ are representations which are exposed to the user as options
for displaying domain objects.
* _Representers_ are extensions which modify or augment the process
of representing domain objects generally (e.g. by attaching
gestures to them.)
* _Gestures_ provide associations between specific user actions
(expressed as DOM events) and resulting behavior upon domain objects
(typically expressed as members of the `actions` extension category)
that can be reused across domain objects. For instance, `drag` and
`drop` are both gestures associated with using drag-and-drop to
modify the composition of domain objects by interacting with their
representations.
# Information Model
```nomnoml
#direction: right
[Information Model|
[DomainObject|
getId() : string
getModel() : object
getCapability(key : string) : Capability
hasCapability(key : string) : boolean
useCapability(key : string, args...) : *
]
[DomainObject] 1 +- 1 [Model]
[DomainObject] 1 o- * [Capability]
]
```
Domain objects are the most fundamental component of Open MCT Web's
information model. A domain object is some distinct thing relevant to a
user's work flow, such as a telemetry channel, display, or similar.
Open MCT Web is a tool for viewing, browsing, manipulating, and otherwise
interacting with a graph of domain objects.
A domain object should be conceived of as the union of the following:
* _Identifier_: A machine-readable string that uniquely identifies the
domain object within this application instance.
* _Model_: The persistent state of the domain object. A domain object's
model is a JavaScript object that can be losslessly converted to JSON.
* _Capabilities_: Dynamic behavior associated with the domain object.
Capabilities are JavaScript objects which provide additional methods
for interacting with the domain objects which expose those capabilities.
Not all domain objects expose all capabilities. The interface exposed
by any given capability will depend on its type (as identified
by the `key` argument.) For instance, a `persistence` capability
has a different interface from a `telemetry` capability. Using
capabilities requires some prior knowledge of their interface.
## Capabilities and Services
```nomnoml
#direction: right
[DomainObject]o-[FooCapability]
[FooCapability]o-[FooService]
[FooService]o-[foos]
```
At run-time, the user is primarily concerned with interacting with
domain objects. These interactions are ultimately supported via back-end
services, but to allow customization per-object, these are often mediated
by capabilities.
A common pattern that emerges in the Open MCT Platform is as follows:
* A `DomainObject` has some particular behavior that will be supported
by a service.
* A `Capability` of that domain object will define that behavior,
_for that domain object_, supported by a service.
* A `Service` utilized by that capability will perform the actual behavior.
* An extension category will be utilized by that capability to determine
the set of possible behaviors.
Concrete examples of capabilities which follow this pattern
(or a subset of this pattern) include:
```nomnoml
#direction: right
[DomainObject]1 o- *[Capability]
[Capability]<:--[TypeCapability]
[Capability]<:--[ActionCapability]
[Capability]<:--[PersistenceCapability]
[Capability]<:--[TelemetryCapability]
[TypeCapability]o-[TypeService]
[TypeService]o-[types]
[ActionCapability]o-[ActionService]
[ActionService]o-[actions]
[PersistenceCapability]o-[PersistenceService]
[TelemetryCapability]o-[TelemetryService]
```
# Service Infrastructure
Most services exposed by the Open MCT Web platform follow the
[composite services](Framework.md#composite-services) to permit
a higher degree of flexibility in how a service can be modified
or customized for specific applications.
To simplify usage for plugin developers, the platform also usually
includes a provider implementation for these service type that consumes
some extension category. For instance, an `ActionService` provider is
included which depends upon extension category `actions`, and exposes
all actions declared as such to the system. As such, plugin developers
can simply implement the new actions they wish to be made available without
worrying about the details of composite services or implementing a new
`ActionService` provider; however, the ability to implement a new provider
remains useful when the expressive power of individual extensions is
insufficient.
```nomnoml
[ Service Infrastructure |
[ObjectService]->[ModelService]
[ModelService]->[PersistenceService]
[ObjectService]->[CapabilityService]
[CapabilityService]->[capabilities]
[capabilities]->[TelemetryService]
[capabilities]->[PersistenceService]
[capabilities]->[TypeService]
[capabilities]->[ActionService]
[capabilities]->[ViewService]
[PersistenceService]->[<database> Document store]
[TelemetryService]->[<database> Telemetry source]
[ActionService]->[actions]
[ActionService]->[PolicyService]
[ViewService]->[PolicyService]
[ViewService]->[views]
[PolicyService]->[policies]
[TypeService]->[types]
]
```
A short summary of the roles of these services:
* _[ObjectService](#object-service)_: Allows retrieval of domain objects by
their identifiers; in practice, often the main point of entry into the
[information model](#information-model).
* _[ModelService](#model-service)_: Provides domain object models, retrieved
by their identifier.
* _[CapabilityService](#capability-service)_: Provides capabilities, as they
apply to specific domain objects (as judged from their model.)
* _[TelemetryService](#telemetry-service)_: Provides access to historical
and real-time telemetry data.
* _[PersistenceService](#persistence-service)_: Provides the ability to
store and retrieve documents (such as domain object models.)
* _[ActionService](#action-service)_: Provides distinct user actions that
can take place within the system (typically, upon or using domain objects.)
* _[ViewService](#view-service)_: Provides views for domain objects. A view
is a user-selectable representation of a domain object (in practice, an
HTML template.)
* _[PolicyService](#policy-service)_: Handles decisions about which
behavior are allowed within certain specific contexts.
* _[TypeService](#type-service)_: Provides information to distinguish
different types of domain objects from one another within the system.
## Object Service
```nomnoml
#direction: right
[<abstract> ObjectService|
getObjects(ids : Array.<string>) : Promise.<object.<string, DomainObject>>
]
[DomainObjectProvider]--:>[ObjectService]
[DomainObjectProvider]o-[ModelService]
[DomainObjectProvider]o-[CapabilityService]
```
As domain objects are central to Open MCT Web's information model,
acquiring domain objects is equally important.
```nomnoml
#direction: right
[<start> Start]->[<state> Look up models]
[<state> Look up models]->[<state> Look up capabilities]
[<state> Look up capabilities]->[<state> Instantiate DomainObject]
[<state> Instantiate DomainObject]->[<end> End]
```
Open MCT Web includes an implementation of an `ObjectService` which
satisfies this capability by:
* Consulting the [Model Service](#model-service) to acquire domain object
models by identifier.
* Passing these models to a [Capability Service](#capability-service) to
determine which capabilities are applicable.
* Combining these results together as [DomainObject](#information-model)
instances.
## Model Service
```nomnoml
#direction: down
[<abstract> ModelService|
getModels(ids : Array.<string>) : Promise.<object.<string, object>>
]
[StaticModelProvider]--:>[ModelService]
[RootModelProvider]--:>[ModelService]
[PersistedModelProvider]--:>[ModelService]
[ModelAggregator]--:>[ModelService]
[CachingModelDecorator]--:>[ModelService]
[MissingModelDecorator]--:>[ModelService]
[MissingModelDecorator]o-[CachingModelDecorator]
[CachingModelDecorator]o-[ModelAggregator]
[ModelAggregator]o-[StaticModelProvider]
[ModelAggregator]o-[RootModelProvider]
[ModelAggregator]o-[PersistedModelProvider]
[PersistedModelProvider]o-[PersistenceService]
[RootModelProvider]o-[roots]
[StaticModelProvider]o-[models]
```
The platform's model service is responsible for providing domain object
models (effectively, JSON documents describing the persistent state
associated with domain objects.) These are retrieved by identifier.
The platform includes multiple components of this variety:
* `PersistedModelProvider` looks up domain object models from
a persistence store (the [`PersistenceService`](#persistence-service));
this is how user-created and user-modified
domain object models are retrieved.
* `RootModelProvider` provides domain object models that have been
declared via the `roots` extension category. These will appear at the
top level of the tree hierarchy in the user interface.
* `StaticModelProvider` provides domain object models that have been
declared via the `models` extension category. This is useful for
allowing plugins to expose new domain objects declaratively.
* `ModelAggregator` merges together the results from multiple providers.
If multiple providers return models for the same domain object,
the most recently modified version (as determined by the `modified`
property of the model) is chosen.
* `CachingModelDecorator` caches model instances in memory. This
ensures that only a single instance of a domain object model is
present at any given time within the application, and prevent
redundant retrievals.
* `MissingModelDecorator` adds in placeholders when no providers
have returned domain object models for a specific identifier. This
allows the user to easily see that something was expected to be
present, but wasn't.
## Capability Service
```nomnoml
#direction: down
[<abstract> CapabilityService|
getCapabilities(model : object) : object.<string, Function>
]
[CoreCapabilityProvider]--:>[CapabilityService]
[QueuingPersistenceCapabilityDecorator]--:>[CapabilityService]
[CoreCapabilityProvider]o-[capabilities]
[QueuingPersistenceCapabilityDecorator]o-[CoreCapabilityProvider]
```
The capability service is responsible for determining which capabilities
are applicable for a given domain object, based on its model. Primarily,
this is handled by the `CoreCapabilityProvider`, which examines
capabilities exposed via the `capabilities` extension category.
Additionally, `platform/persistence/queue` decorates the persistence
capability specifically to batch persistence attempts among multiple
objects (this allows failures to be recognized and handled in groups.)
## Telemetry Service
```nomnoml
[<abstract> TelemetryService|
requestData(requests : Array.<TelemetryRequest>) : Promise.<object>
subscribe(requests : Array.<TelemetryRequest>) : Function
]<--:[TelemetryAggregator]
```
The telemetry service is responsible for acquiring telemetry data.
Notably, the platform does not include any providers for
`TelemetryService`; applications built on Open MCT Web will need to
implement a provider for this service if they wish to expose telemetry
data. This is usually the most important step for integrating Open MCT Web
into an existing telemetry system.
Requests for telemetry data are usually initiated in the
[presentation layer](#presentation-layer) by some `Controller` referenced
from a view. The `telemetryHandler` service is most commonly used (although
one could also use an object's `telemetry` capability directly) as this
handles capability delegation, by which a domain object such as a Telemetry
Panel can declare that its `telemetry` capability should be handled by the
objects it contains. Ultimately, the request for historical data and the
new subscriptions will reach the `TelemetryService`, and, by way of the
provider(s) which are present for that `TelemetryService`, will pass the
same requests to the back-end.
```nomnoml
[<start> Start]->[Controller]
[Controller]->[<state> declares object of interest]
[declares object of interest]->[TelemetryHandler]
[TelemetryHandler]->[<state> requests telemetry from capabilities]
[TelemetryHandler]->[<state> subscribes to telemetry using capabilities]
[requests telemetry from capabilities]->[TelemetryCapability]
[subscribes to telemetry using capabilities]->[TelemetryCapability]
[TelemetryCapability]->[<state> requests telemetry]
[TelemetryCapability]->[<state> subscribes to telemetry]
[requests telemetry]->[TelemetryService]
[subscribes to telemetry]->[TelemetryService]
[TelemetryService]->[<state> issues request]
[TelemetryService]->[<state> updates subscriptions]
[TelemetryService]->[<state> listens for real-time data]
[issues request]->[<database> Telemetry Back-end]
[updates subscriptions]->[Telemetry Back-end]
[listens for real-time data]->[Telemetry Back-end]
[Telemetry Back-end]->[<end> End]
```
The back-end, in turn, is expected to provide whatever historical
telemetry is available to satisfy the request that has been issue.
```nomnoml
[<start> Start]->[<database> Telemetry Back-end]
[Telemetry Back-end]->[<state> transmits historical telemetry]
[transmits historical telemetry]->[TelemetryService]
[TelemetryService]->[<state> packages telemetry, fulfills requests]
[packages telemetry, fulfills requests]->[TelemetryCapability]
[TelemetryCapability]->[<state> unpacks telemetry per-object, fulfills request]
[unpacks telemetry per-object, fulfills request]->[TelemetryHandler]
[TelemetryHandler]->[<state> exposes data]
[TelemetryHandler]->[<state> notifies controller]
[exposes data]->[Controller]
[notifies controller]->[Controller]
[Controller]->[<state> prepares data for template]
[prepares data for template]->[Template]
[Template]->[<state> displays data]
[displays data]->[<end> End]
```
One peculiarity of this approach is that we package many responses
together at once in the `TelemetryService`, then unpack these in the
`TelemetryCapability`, then repackage these in the `TelemetryHandler`.
The rationale for this is as follows:
* In the `TelemetryService`, we want to have the ability to combine
multiple requests into one call to the back-end, as many back-ends
will support this. It follows that we give the response as a single
object, packages in a manner that allows responses to individual
requests to be easily identified.
* In the `TelemetryCapability`, we want to provide telemetry for a
_single object_, so the telemetry data gets unpacked. This allows
for the unpacking of data to be handled in a single place, and
also permits a flexible substitution method; domain objects may have
implementations of the `telemetry` capability that do not use the
`TelemetryService` at all, while still maintaining compatibility
with any presentation layer code written to utilize this capability.
(This is true of capabilities generally.)
* In the `TelemetryHandler`, we want to group multiple responses back
together again to make it easy for the presentation layer to consume.
In this case, the grouping is different from what may have occurred
in the `TelemetryService`; this grouping is based on what is expected
to be useful _in a specific view_. The `TelemetryService`
may be receiving requests from multiple views.
```nomnoml
[<start> Start]->[<database> Telemetry Back-end]
[Telemetry Back-end]->[<state> notifies client of new data]
[notifies client of new data]->[TelemetryService]
[TelemetryService]->[<choice> relevant subscribers?]
[relevant subscribers?] yes ->[<state> notify subscribers]
[relevant subscribers?] no ->[<state> ignore]
[ignore]->[<end> Ignored]
[notify subscribers]->[TelemetryCapability]
[TelemetryCapability]->[<state> notify listener]
[notify listener]->[TelemetryHandler]
[TelemetryHandler]->[<state> exposes data]
[TelemetryHandler]->[<state> notifies controller]
[exposes data]->[Controller]
[notifies controller]->[Controller]
[Controller]->[<state> prepares data for template]
[prepares data for template]->[Template]
[Template]->[<state> displays data]
[displays data]->[<end> End]
```
The flow of real-time data is similar, and is handled by a sequence
of callbacks between the presentation layer component which is
interested in data and the telemetry service. Providers in the
telemetry service listen to the back-end for new data (via whatever
mechanism their specific back-end supports), package this data in
the same manner as historical data, and pass that to the callbacks
which are associated with relevant requests.
## Persistence Service
```nomnoml
#direction: right
[<abstract> PersistenceService|
listSpaces() : Promise.<Array.<string>>
listObjects() : Promise.<Array.<string>>
createObject(space : string, key : string, document : object) : Promise.<boolean>
readObject(space : string, key : string, document : object) : Promise.<object>
updateObject(space : string, key : string, document : object) : Promise.<boolean>
deleteObject(space : string, key : string, document : object) : Promise.<boolean>
]
[ElasticPersistenceProvider]--:>[PersistenceService]
[ElasticPersistenceProvider]->[<database> ElasticSearch]
[CouchPersistenceProvider]--:>[PersistenceService]
[CouchPersistenceProvider]->[<database> CouchDB]
```
Closely related to the notion of domain objects models is their
persistence. The `PersistenceService` allows these to be saved
and loaded. (Currently, this capability is only used for domain
object models, but the interface has been designed without this idea
in mind; other kinds of documents could be saved and loaded in the
same manner.)
There is no single definitive implementation of a `PersistenceService` in
the platform. Optional adapters are provided to store and load documents
from CouchDB and ElasticSearch, respectively; plugin authors may also
write additional adapters to utilize different back end technologies.
## Action Service
```nomnoml
[ActionService|
getActions(context : ActionContext) : Array.<Action>
]
[ActionProvider]--:>[ActionService]
[CreateActionProvider]--:>[ActionService]
[ActionAggregator]--:>[ActionService]
[LoggingActionDecorator]--:>[ActionService]
[PolicyActionDecorator]--:>[ActionService]
[LoggingActionDecorator]o-[PolicyActionDecorator]
[PolicyActionDecorator]o-[ActionAggregator]
[ActionAggregator]o-[ActionProvider]
[ActionAggregator]o-[CreateActionProvider]
[ActionProvider]o-[actions]
[CreateActionProvider]o-[TypeService]
[PolicyActionDecorator]o-[PolicyService]
```
Actions are discrete tasks or behaviors that can be initiated by a user
upon or using a domain object. Actions may appear as menu items or
buttons in the user interface, or may be triggered by certain gestures.
Responsibilities of platform components of the action service are as
follows:
* `ActionProvider` exposes actions registered via extension category
`actions`, supporting simple addition of new actions. Actions are
filtered down to match action contexts based on criteria defined as
part of an action's extension definition.
* `CreateActionProvider` provides the various Create actions which
populate the Create menu. These are driven by the available types,
so do not map easily ot extension category `actions`; instead, these
are generated after looking up which actions are available from the
[`TypeService`](#type-service).
* `ActionAggregator` merges together actions from multiple providers.
* `PolicyActionDecorator` enforces the `action` policy category by
filtering out actions which violate this policy, as determined by
consulting the [`PolicyService`](#policy-service).
* `LoggingActionDecorator` wraps exposed actions and writes to the
console when they are performed.
## View Service
```nomnoml
[ViewService|
getViews(domainObject : DomainObject) : Array.<View>
]
[ViewProvider]--:>[ViewService]
[PolicyViewDecorator]--:>[ViewService]
[ViewProvider]o-[views]
[PolicyViewDecorator]o-[ViewProvider]
```
The view service provides views that are relevant to a specified domain
object. A "view" is a user-selectable visualization of a domain object.
The responsibilities of components of the view service are as follows:
* `ViewProvider` exposes views registered via extension category
`views`, supporting simple addition of new views. Views are
filtered down to match domain objects based on criteria defined as
part of a view's extension definition.
* `PolicyViewDecorator` enforces the `view` policy category by
filtering out views which violate this policy, as determined by
consulting the [`PolicyService`](#policy-service).
## Policy Service
```nomnoml
[PolicyService|
allow(category : string, candidate : object, context : object, callback? : Function) : boolean
]
[PolicyProvider]--:>[PolicyService]
[PolicyProvider]o-[policies]
```
The policy service provides a general-purpose extensible decision-making
mechanism; plugins can add new extensions of category `policies` to
modify decisions of a known category.
Often, the policy service is referenced from a decorator for another
service, to filter down the results of using that service based on some
appropriate policy category.
The policy provider works by looking up all registered policy extensions
which are relevant to a particular _category_, then consulting each in
order to see if they allow a particular _candidate_ in a particular
_context_; the types for the `candidate` and `context` arguments will
vary depending on the `category`. Any one policy may disallow the
decision as a whole.
```nomnoml
[<start> Start]->[<state> is something allowed?]
[is something allowed?]->[PolicyService]
[PolicyService]->[<state> look up relevant policies by category]
[look up relevant policies by category]->[<state> consult policy #1]
[consult policy #1]->[Policy #1]
[Policy #1]->[<choice> policy #1 allows?]
[policy #1 allows?] no ->[<state> decision disallowed]
[policy #1 allows?] yes ->[<state> consult policy #2]
[consult policy #2]->[Policy #2]
[Policy #2]->[<choice> policy #2 allows?]
[policy #2 allows?] no ->[<state> decision disallowed]
[policy #2 allows?] yes ->[<state> consult policy #3]
[consult policy #3]->[<state> ...]
[...]->[<state> consult policy #n]
[consult policy #n]->[Policy #n]
[Policy #n]->[<choice> policy #n allows?]
[policy #n allows?] no ->[<state> decision disallowed]
[policy #n allows?] yes ->[<state> decision allowed]
[decision disallowed]->[<end> Disallowed]
[decision allowed]->[<end> Allowed]
```
The policy decision is effectively an "and" operation over the individual
policy decisions: That is, all policies must agree to allow a particular
policy decision, and the first policy to disallow a decision will cause
the entire decision to be disallowed. As a consequence of this, policies
should generally be written with a default behavior of "allow", and
should only disallow the specific circumstances they are intended to
disallow.
## Type Service
```nomnoml
[TypeService|
listTypes() : Array.<Type>
getType(key : string) : Type
]
[TypeProvider]--:>[TypeService]
[TypeProvider]o-[types]
```
The type service provides metadata about the different types of domain
objects that exist within an Open MCT Web application. The platform
implementation reads these types in from extension category `types`
and wraps them in a JavaScript interface.

View File

@ -1,78 +0,0 @@
# Introduction
The purpose of this document is to familiarize developers with the
overall architecture of Open MCT Web.
The target audience includes:
* _Platform maintainers_: Individuals involved in developing,
extending, and maintaing capabilities of the platform.
* _Integration developers_: Individuals tasked with integrated
Open MCT Web into a larger system, who need to understand
its inner workings sufficiently to complete this integration.
As the focus of this document is on architecture, whenever possible
implementation details (such as relevant API or JSON syntax) have been
omitted. These details may be found in the developer guide.
# Overview
Open MCT Web is client software: It runs in a web browser and
provides a user interface, while communicating with various
server-side resources through browser APIs.
```nomnoml
#direction: right
[Client|[Browser|[Open MCT Web]->[Browser APIs]]]
[Server|[Web services]]
[Client]<->[Server]
```
While Open MCT Web can be configured to run as a standalone client,
this is rarely very useful. Instead, it is intended to be used as a
display and interaction layer for information obtained from a
variety of back-end services. Doing so requires authoring or utilizing
adapter plugins which allow Open MCT Web to interact with these services.
Typically, the pattern here is to provide a known interface that
Open MCT Web can utilize, and implement it such that it interacts with
whatever back-end provides the relevant information.
Examples of back-ends that can be utilized in this fashion include
databases for the persistence of user-created objects, or sources of
telemetry data.
## Software Architecture
The simplest overview of Open MCT Web is to look at it as a "layered"
architecture, where each layer more clearly specifies the behavior
of the software.
```nomnoml
#direction: down
[Open MCT Web|
[Platform]<->[Application]
[Framework]->[Application]
[Framework]->[Platform]
]
```
These layers are:
* [_Framework_](Framework.md): The framework layer is responsible for
managing the interactions between application components. It has no
application-specific knowledge; at this layer, we have only
established an abstraction by which different software components
may communicate and/or interact.
* [_Platform_](Platform.md): The platform layer defines the general look, feel, and
behavior of Open MCT Web. This includes user-facing components like
Browse mode and Edit mode, as well as underlying elements of the
information model and the general service infrastructure.
* _Application_: The application layer defines specific features of
an application built on Open MCT Web. This includes adapters to
specific back-ends, new types of things for users to create, and
new ways of visualizing objects within the system. This layer
typically consists of a mix of custom plug-ins to Open MCT Web,
as well as optional features (such as Plot view) included alongside
the platform.

View File

@ -1,3 +0,0 @@
# Developer Guide
This is a placeholder for the developer guide.

121
docs/src/guide/security.md Normal file
View File

@ -0,0 +1,121 @@
# Security Guide
Open MCT is a rich client with plugin support that executes as a single page
web application in a browser environment. Security concerns and
vulnerabilities associated with the web as a platform should be considered
before deploying Open MCT (or any other web application) for mission or
production usage.
This document describes several important points to consider when developing
for or deploying Open MCT securely. Other resources such as
[Open Web Application Security Project (OWASP)](https://www.owasp.org)
provide a deeper and more general overview of security for web applications.
## Security Model
Open MCT has been architected assuming the following deployment pattern:
* A tagged, tested Open MCT version will be used.
* Externally authored plugins will be installed.
* A server will provide persistent storage, telemetry, and other shared data.
* Authorization, authentication, and auditing will be handled by a server.
## Security Procedures
The Open MCT team secures our code base using a combination of code review,
dependency review, and periodic security reviews. Static analysis performed
during automated verification additionally safeguards against common
coding errors which may result in vulnerabilities.
### Code Review
All contributions are reviewed by internal team members. External
contributors receive increased scrutiny for security and quality,
and must sign a licensing agreement.
### Dependency Review
Before integrating third-party dependencies, they are reviewed for security
and quality, with consideration given to authors and users of these
dependencies, as well as review of open source code.
### Periodic Security Reviews
Open MCT's code, design, and architecture are periodically reviewed
(approximately annually) for common security issues, such as the
[OWASP Top Ten](https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project).
## Security Concerns
Certain security concerns deserve special attention when deploying Open MCT,
or when authoring plugins.
### Identity Spoofing
Open MCT issues calls to web services with the privileges of a logged in user.
Compromised sources (either for Open MCT itself or a plugin) could
therefore allow malicious code to execute with those privileges.
To avoid this:
* Serve Open MCT and other scripts over SSL (https rather than http)
to prevent man-in-the-middle attacks.
* Exercise precautions such as security reviews for any plugins or
applications built for or with Open MCT to reject malicious changes.
### Information Disclosure
If Open MCT is used to handle or display sensitive data, any components
(such as adapter plugins) must take care to avoid leaking or disclosing
this information. For example, avoid sending sensitive data to third-party
servers or insecure APIs.
### Data Tampering
The web application architecture leaves open the possibility that direct
calls will be made to back-end services, circumventing Open MCT entirely.
As such, Open MCT assumes that server components will perform any necessary
data validation during calls issues to the server.
Additionally, plugins which serialize and write data to the server must
escape that data to avoid database injection attacks, and similar.
### Repudiation
Open MCT assumes that servers log any relevant interactions and associates
these with a user identity; the specific user actions taken within the
application are assumed not to be of concern for auditing.
In the absence of server-side logging, users may disclaim (maliciously,
mistakenly, or otherwise) actions taken within the system without any
way to prove otherwise.
If keeping client-level interactions is important, this will need to be
implemented via a plugin.
### Denial-of-service
Open MCT assumes that server-side components will be insulated against
denial-of-service attacks. Services should only permit resource-intensive
tasks to be initiated by known or trusted users.
### Elevation of Privilege
Corollary to the assumption that servers guide against identity spoofing,
Open MCT assumes that services do not allow a user to act with
inappropriately escalated privileges. Open MCT cannot protect against
such escalation; in the clearest case, a malicious actor could interact
with web services directly to exploit such a vulnerability.
## Additional Reading
The following resources have been used as a basis for identifying potential
security threats to Open MCT deployments in preparation of this document:
* [STRIDE model](https://www.owasp.org/index.php/Threat_Risk_Modeling#STRIDE)
* [Attack Surface Analysis Cheat Sheet](https://www.owasp.org/index.php/Attack_Surface_Analysis_Cheat_Sheet)
* [XSS Prevention Cheat Sheet](https://www.owasp.org/index.php/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet)

View File

@ -1,36 +0,0 @@
<!--
Open MCT Web, Copyright (c) 2014-2015, United States Government
as represented by the Administrator of the National Aeronautics and Space
Administration. All rights reserved.
Open MCT Web is licensed under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0.
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.
Open MCT Web includes source code licensed under additional open source
licenses. See the Open Source Licenses file (LICENSES.md) included with
this source code distribution or the Licensing information page available
at runtime from the About dialog for additional information.
-->
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>Open MCT Web Documentation</title>
</head>
<body class="user-environ" ng-view>
Sections:
<ul>
<li><a href="api/">API</a></li>
<li><a href="guide/">Developer Guide</a></li>
<li><a href="architecture/">Architecture Overview</a></li>
</ul>
</body>
</html>

26
docs/src/index.md Normal file
View File

@ -0,0 +1,26 @@
# Open MCT Documentation
## Overview
Documentation is provided to support the use and development of
Open MCT. It's recommended that before doing
any development with Open MCT you take some time to familiarize yourself
with the documentation below.
Open MCT provides functionality out of the box, but it's also a platform for
building rich mission operations applications based on modern web technology.
The platform is configured by plugins which extend the platform at a variety
of extension points. The details of how to
extend the platform are provided in the following documentation.
## Sections
* The [API](api/) uses inline documentation.
using [TypeScript](https://www.typescriptlang.org) and some legacy [JSDoc](https://jsdoc.app/). It describes the JavaScript objects and
functions that make up the software platform.
* The [Development Process](process/) document describes the
Open MCT software development cycle.
* The [tutorial](https://github.com/nasa/openmct-tutorial) and [plugin template](https://github.com/nasa/openmct-hello) give examples of extending the platform to add
functionality and integrate with data sources.

165
docs/src/process/cycle.md Normal file
View File

@ -0,0 +1,165 @@
# Development Cycle
Development of Open MCT occurs on an iterative cycle of
sprints and releases.
* A _sprint_ is three weeks in duration, and represents a
set of improvements that can be completed and tested by the
development team. Software at the end of the sprint is
"semi-stable"; it will have undergone reduced testing and may carry
defects or usability issues of lower severity, particularly if
there are workarounds.
* A _release_ occurs every four sprints. Releases are stable, and
will have undergone full acceptance testing to ensure that the
software behaves correctly and usably.
## Roles
The sprint process assumes the presence of a __project manager.__
The project manager is responsible for
making tactical decisions about what development work will be
performed, and for coordinating with stakeholders to arrive at
higher-level strategic decisions about desired functionality
and characteristics of the software, major external milestones,
and so forth.
In the absence of a dedicated project manager, this role may be rotated
among members of the development team on a per-sprint basis.
Responsibilities of the project manager including:
* Maintaining (with agreement of stakeholders) a "road map" of work
planned for future releases/sprints; this should be higher-level,
usually expressed as "themes",
with just enough specificity to gauge feasibility of plans,
relate work back to milestones, and identify longer-term
dependencies.
* Determining (with assistance from the rest of the team) which
issues to work on in a given sprint and how they shall be
assigned.
* Pre-planning subsequent sprints to ensure that all members of the
team always have a clear direction.
* Scheduling and/or ensuring adherence to
[process points](#process-points).
* Responding to changes within the sprint (shifting priorities,
new issues) and re-allocating work for the sprint as needed.
## Sprint Calendar
Certain [process points](#process-points) are regularly scheduled in
the sprint cycle.
### Sprints by Release
Allocation of work among sprints should be planned relative to release
goals and milestones. As a general guideline, higher-risk work (large
new features which may carry new defects, major refactoring, design
changes with uncertain effects on usability) should be allocated to
earlier sprints, allowing for time in later sprints to ensure stability.
| Sprint | Focus |
|:------:|:--------------------------------------------------------|
| __1__ | Prototyping, design, experimentation. |
| __2__ | New features, refinements, enhancements. |
| __3__ | Feature completion, low-risk enhancements, bug fixing. |
| __4__ | Stability & quality assurance. |
### Sprints 1-3
The first three sprints of a release are primarily centered around
development work, with regular acceptance testing in the third
week. During this third week, the top priority should be passing
acceptance testing (e.g. by resolving any blockers found); any
resources not needed for this effort should be used to begin work
for the subsequent sprint.
| Week | Mon | Tue | Wed | Thu | Fri |
|:-----:|:-------------------------:|:------:|:---:|:----------------------------:|:-------------------------------------:|
| __1__ | Sprint plan | Tag-up | | | |
| __2__ | | Tag-up | | | Code freeze and sprint branch |
| __3__ | Per-sprint testing | Triage | | _Per-sprint testing*_ | Ship and merge sprint branch to master|
&ast; If necessary.
### Sprint 4
The software must be stable at the end of the fourth sprint; because of
this, the fourth sprint is scheduled differently, with a heightened
emphasis on testing.
| Week | Mon | Tue | Wed | Thu | Fri |
|-------:|:-------------------------:|:------:|:---:|:----------------------------:|:-----------:|
| __1__ | Sprint plan | Tag-up | | | Code freeze |
| __2__ | Per-release testing | Triage | | | |
| __3__ | _Per-release testing*_ | Triage | | _Per-release testing*_ | Ship |
&ast; If necessary.
## Process Points
* __Sprint plan.__ Project manager allocates issues based on
theme(s) for sprint, then reviews with team. Each team member
should have roughly two weeks of work allocated (to allow time
in the third week for testing of work completed.)
* Project manager should also sketch out subsequent sprint so
that team may begin work for that sprint during the
third week, since testing and blocker resolution is unlikely
to require all available resources.
* Testing success criteria identified per issue (where necessary). This could be in the form of acceptance tests on the issue or detailing performance tests, for example.
* __Tag-up.__ Check in and status update among development team.
May amend plan for sprint as-needed.
* __Code freeze.__ Any new work from this sprint
(features, bug fixes, enhancements) must be integrated by the
end of the second week of the sprint. After code freeze, a sprint
branch will be created (and until the end of the sprint) the only
changes that should be merged into the sprint branch should
directly address issues needed to pass acceptance testing.
During this time, any other feature development will continue to
be merged into the master branch for the next sprint.
* __Sprint branch merge to master.__ After acceptance testing, the sprint branch
will be merged back to the master branch. Any code conflicts that
arise will be resolved by the team.
* [__Per-release Testing.__](testing/plan.md#per-release-testing)
Structured testing with predefined
success criteria. No release should ship without passing
acceptance tests. Time is allocated in each sprint for subsequent
rounds of acceptance testing if issues are identified during a
prior round. Specific details of acceptance testing need to be
agreed-upon with relevant stakeholders and delivery recipients,
and should be flexible enough to allow changes to plans
(e.g. deferring delivery of some feature in order to ensure
stability of other features.) Baseline testing includes:
* [__Testathon.__](testing/plan.md#user-testing)
Multi-user testing, involving as many users as
is feasible, plus development team. Open-ended; should verify
completed work from this sprint using the sprint branch, test
exploratory for regressions, et cetera.
* [__Long-Duration Test.__](testing/plan.md#long-duration-testing) A
test to verify that the software remains
stable after running for longer durations. May include some
combination of automated testing and user verification (e.g.
checking to verify that software remains subjectively
responsive at conclusion of test.)
* [__Unit Testing.__](testing/plan.md#unit-testing)
Automated testing integrated into the
build. (These tests are verified to pass more often than once
per sprint, as they run before any merge to master, but still
play an important role in per-release testing.)
* [__Per-sprint Testing.__](testing/plan.md#per-sprint-testing)
Subset of Pre-release Testing
which should be performed before shipping at the end of any
sprint. Time is allocated for a second round of
Pre-release Testing if the first round is not passed. Smoke tests collected from issues/PRs
* __Triage.__ Team reviews issues from acceptance testing and uses
success criteria to determine whether or not they should block
release, then formulates a plan to address these issues before
the next round of acceptance testing. Focus here should be on
ensuring software passes that testing in order to ship on time;
may prefer to disable malfunctioning components and fix them
in a subsequent sprint, for example.
* [__Ship.__](version.md) Tag a code snapshot that has passed release/sprint
testing and deploy that version. (Only true if relevant
testing has passed by this point; if testing has not
been passed, will need to make ad hoc decisions with stakeholders,
e.g. "extend the sprint" or "defer shipment until end of next
sprint.")

11
docs/src/process/index.md Normal file
View File

@ -0,0 +1,11 @@
# Development Process
The process used to develop Open MCT is described in the following
documents:
* The [Development Cycle](cycle.md) describes how and when specific
process points are repeated during development.
* The [Version Guide](version.md) describes version numbering for
Open MCT (both semantics and process.)
* The [Test Plan](testing/plan.md) summarizes the approaches used
to test Open MCT.

View File

@ -0,0 +1,30 @@
# Release of NASA Open MCT NPM Package
This document outlines the process and key considerations for releasing a new version of the NASA Open MCT project as an NPM (Node Package Manager) package.
## 1. Pre-requisites
Before releasing a new version of the NASA Open MCT NPM package, ensure all dependencies are updated, and comprehensive tests are performed. This ensures compatibility and performance of the Open MCT within the Node.js ecosystem.
## 2. Versioning
Versioning is a critical step for package release. The Open MCT team follows [Semantic Versioning (SemVer)](https://semver.org) that consists of three major components: MAJOR.MINOR.PATCH. These ensure a structured process for updating, bug fixes, backward compatibility, and software progress.
## 3. Changelog Maintenance
A comprehensive changelog file, `CHANGELOG.md`, documents any changes, adding a high level of transparencies for anyone desiring to look into the status of new and past progress. It includes the summation of any major new enhancements, changes, bug fixes, and the credits to the users responsible for each unique progress.
## 4. Notable Changes Labels on GitHub PRs
For the Open MCT package, we leverage GitHub's Pull Request (PR) mechanisms extensively, with three important PR labels dedicated to signifying 'notable_changes':
- **Breaking Change** Highlights the integration of changes that are suspected to break, or without a doubt will break, backward compatibility. These should signal to users the upgrade might be seamless only if dependency and integration factors are properly managed, if not, one should expect to manage atypical technical snags.
- **API change** Signifies when a contribution makes any complete or under layer changes to the communication or its supporting access processes. This label flags required see-through insight on how the web-based control panel sees and manipulates any value and or network logs.
- **Default Behavior Change:** In the incident an update either adjusts a form to or integrates a not previously kept setting or plugin. i.e. autoscale is enabled by default when working with plots.
## 6. Community & Contributions
A flat community and the rounded center are kept in continuous celebration, with the given station open for two open-specifying dialogues, research, and all-for development probing. State the ownership for a handed looped, a welcome for even structure-core and architectural draft and impend.
Thank you for your collaboration and commitment to moving the project onto a text big club.

View File

@ -0,0 +1,146 @@
# Test Plan
## Test Levels
Testing for Open MCT includes:
* _Smoke testing_: Brief, informal testing to verify that no major issues
or regressions are present in the software, or in specific features of
the software.
* _Unit testing_: Automated verification of the performance of individual
software components.
* _User testing_: Testing with a representative user base to verify
that application behaves usably and as specified.
* _Long-duration testing_: Testing which takes place over a long period
of time to detect issues which are not readily noticeable during
shorter test periods.
### Smoke Testing
Manual, non-rigorous testing of the software and/or specific features
of interest. Verifies that the software runs and that basic functionality
is present. The outcome of Smoke Testing should be a simplified list of Acceptance Tests which could be executed by another team member with sufficient context.
### Unit Testing
Unit tests are automated tests which exercise individual software
components. Tests are subject to code review along with the actual
implementation, to ensure that tests are applicable and useful.
Unit tests should meet
[test standards](https://github.com/nasa/openmctweb/blob/master/CONTRIBUTING.md#test-standards)
as described in the contributing guide.
### User Testing
User testing is performed at scheduled times involving target users
of the software or reasonable representatives, along with members of
the development team exercising known use cases. Users test the
software directly; the software should be configured as similarly to
its planned production configuration as is feasible without introducing
other risks (e.g. damage to data in a production instance.)
User testing will focus on the following activities:
* Verifying issues resolved since the last test session.
* Checking for regressions in areas related to recent changes.
* Using major or important features of the software,
as determined by the user.
* General "trying to break things."
During user testing, users will
[report issues](https://github.com/nasa/openmct/issues/new/choose)
as they are encountered.
Desired outcomes of user testing are:
* Identified software defects.
* Areas for usability improvement.
* Feature requests (particularly missed requirements.)
* Recorded issue verification.
### Long-duration Testing
Long-duration testing occurs over a twenty-four hour period. The
software is run in one or more stressing cases representative of expected
usage. After twenty-four hours, the software is evaluated for:
* Performance metrics: Have memory usage or CPU utilization increased
during this time period in unexpected or undesirable ways?
* Subjective usability: Does the software behave in the same way it did
at the start of the test? Is it as responsive?
Any defects or unexpected behavior identified during testing should be
[reported as issues](https://github.com/nasa/openmct/issues/new/choose)
and reviewed for severity.
## Test Performance
Tests are performed at various levels of frequency.
* _Per-merge_: Performed before any new changes are integrated into
the software.
* _Per-sprint_: Performed at the end of every [sprint](../cycle.md).
* _Per-release_: Performed at the end of every [release](../cycle.md).
### Per-merge Testing
Before changes are merged, the author of the changes must perform:
* _Smoke testing_ (both generally, and for areas which interact with
the new changes.)
* _Unit testing_ (as part of the automated build step.)
Changes are not merged until the author has affirmed that both
forms of testing have been performed successfully; this is documented
by the [Author Checklist](https://github.com/nasa/openmctweb/blob/master/CONTRIBUTING.md#author-checklist).
### Per-sprint Testing
Before a sprint is closed, the development team must additionally
perform:
* A relevant subset of [_user testing_](procedures.md#user-test-procedures)
identified by the acting [project manager](../cycle.md#roles).
* [_Long-duration testing_](procedures.md#long-duration-testing)
(specifically, for 24 hours.)
Issues are reported as a product of both forms of testing.
A sprint is not closed until both categories have been performed on
the latest snapshot of the software, _and_ no issues labelled as
["blocker"](https://github.com/nasa/openmctweb/blob/master/CONTRIBUTING.md#issue-reporting)
remain open.
### Per-release Testing
As [per-sprint testing](#per-sprint-testing), except that _user testing_
should cover all test cases, with less focus on changes from the specific
sprint or release.
Per-release testing should also include any acceptance testing steps
agreed upon with recipients of the software.
A release is not closed until both categories have been performed on
the latest snapshot of the software, _and_ no issues labelled as
["blocker" or "critical"](https://github.com/nasa/openmctweb/blob/master/CONTRIBUTING.md#issue-reporting)
remain open.
### Testathons
Testathons can be used as a means of performing per-sprint and per-release testing.
#### Timing
For per-sprint testing, a testathon is typically performed at the beginning of the third week of a sprint, and again later that week to verify any fixes. For per-release testing, a testathon is typically performed prior to any formal testing processes that are applicable to that release.
#### Process
1. Prior to the scheduled testathon, a list will be compiled of all issues that are closed and unverified.
2. For each issue, testers should review the associated PR for testing instructions. See the contributing guide for instructions on [pull requests](https://github.com/nasa/openmct/blob/master/CONTRIBUTING.md#merging).
3. As each issue is verified via testing, any team members testing it should leave a comment on that issue indicating that it has been verified fixed.
4. If a bug is found that relates to an issue being tested, notes should be included on the associated issue, and the issue should be reopened. Bug notes should include reproduction steps.
5. For any bugs that are not obviously related to any of the issues under test, a new issue should be created with details about the bug, including reproduction steps. If unsure about whether a bug relates to an issue being tested, just create a new issue.
6. At the end of the testathon, triage will take place, where all tested issues will be reviewed.
7. If verified fixed, an issue will remain closed, and will have the “unverified” label removed.
8. For any bugs found, a severity will be assigned.
9. A second testathon will be scheduled for later in the week that will aim to address all issues identified as blockers, as well as any other issues scoped by the team during triage.
10. Any issues that were not tested will remain "unverified" and will be picked up in the next testathon.

155
docs/src/process/version.md Normal file
View File

@ -0,0 +1,155 @@
# Version Guide
This document describes semantics and processes for providing version
numbers for Open MCT, and additionally provides guidelines for dependent
projects developed by the same team.
Versions are incremented at specific points in Open MCT's
[Development Cycle](cycle.md); see that document for a description of
sprints and releases.
## Audience
Individuals interested in consuming version numbers can be categorized as
follows:
* _Users_: Generally disinterested, occasionally wish to identify version
to cross-reference against documentation, or to report issues.
* _Testers_: Want to identify which version of the software they are
testing, e.g. to file issues for defects.
* _Internal developers_: Often, inverse of testers; want to identify which
version of software was/is in use when certain behavior is observed. Want
to be able to correlate versions in use with “streams” of development
(e.g. dev vs. prod), when possible.
* _External developers_: Need to understand which version of software is
in use when developing/maintaining plug-ins, in order to ensure
compatibility of their software.
## Version Reporting
Software versions should be reflected in the user interface of the
application in three ways:
* _Version number_: A semantic version (see below) which serves both to
uniquely identify releases, as well as to inform plug-in developers
about compatibility with previous releases.
* _Revision identifier_: While using git, the commit hash. Supports
internal developers and testers by uniquely identifying client
software snapshots.
* _Branding_: Identifies which variant is in use. (Typically, Open MCT
is re-branded when deployed for a specific mission or center.)
## Version Numbering
Open MCT shall provide version numbers consistent with
[Semantic Versioning 2.0.0](http://semver.org/). In summary, versions
are expressed in a "major.minor.patch" form, and incremented based on
nature of changes to external API. Breaking changes require a "major"
version increment; backwards-compatible changes require a "minor"
version increment; neutral changes (such as bug fixes) require a "patch"
version increment. A hyphen-separated suffix indicates a pre-release
version, which may be unstable or may not fully meet compatibility
requirements.
Additionally, the following project-specific standards will be used:
* During development, a "-next" suffix shall be appended to the
version number. The version number before the suffix shall reflect
the next expected version number for release.
* Prior to a 1.0.0 release, the _minor_ version will be incremented
on a per-release basis; the _patch_ version will be incremented on a
per-sprint basis.
* Starting at version 1.0.0, version numbers will be updated with each
completed sprint. The version number for the sprint shall be
determined relative to the previous released version; the decision
to increment the _major_, _minor_, or _patch_ version should be
made based on the nature of changes during that release. (It is
recommended that these numbers are incremented as changes are
introduced, such that at end of release the version number may
be chosen by simply removing the suffix.)
* The first three sprints in a release may be unstable; in these cases, a
unique version identifier should still be generated, but a suffix
should be included to indicate that the version is not necessarily
production-ready. Recommended suffixes are:
Sprint | Suffix
:------:|:--------:
1 | `-alpha`
2 | `-beta`
3 | `-rc`
### Scope of External API
"External API" refers to the API exposed to, documented for, and used by
plug-in developers. Changes to interfaces used internally by Open MCT
(or otherwise not documented for use externally) require only a _patch_
version bump.
## Incrementing Versions
At the end of a sprint, the [project manager](cycle.md#roles)
should update (or delegate the task of updating) Open MCT version
numbers by the following process:
1. Update version number in `package.json`
1. Checkout branch created for the last sprint that has been successfully tested.
2. Remove a `-next` suffix from the version in `package.json`.
3. Verify that resulting version number meets semantic versioning
requirements relative to previous stable version. Increment the
version number if necessary.
4. If version is considered unstable (which may be the case during
the first three sprints of a release), apply a new suffix per
[Version Numbering](#version-numbering) guidance above.
2. Tag the release.
1. Commit changes to `package.json` on the new branch created in
the previous step.
The commit message should reference the sprint being closed,
preferably by a URL reference to the associated Milestone in
GitHub.
2. Verify that build still completes, that application passes
smoke-testing, and that only differences from tested versions
are the changes to version number above.
3. Push the new branch.
4. Tag this commit with the version number, prepending the letter "v".
(e.g. `git tag v0.9.3-alpha`)
5. Push the tag to GitHub. (e.g. `git push origin v0.9.3-alpha`).
3. Upload a release archive.
1. Use the [GitHub release interface](https://github.com/nasa/openmct/releases)
to draft a new release.
2. Choose the existing tag for the new version (created and pushed above.)
Enter the tag name as the release name as well; see existing releases
for examples. (e.g. `Open MCT v0.9.3-alpha`)
3. Designate the release as a "pre-release" as appropriate (for instance,
when the version number has been suffixed as unstable, or when
the version number is below 1.0.0.)
4. Add release notes including any breaking changes, enhancements,
bug fixes with solutions in brief.
5. Publish the release.
4. Publish the release to npm
1. Login to npm
2. Checkout the tag created in the previous step.
3. In `package.json` change package to be public (private: false)
4. Test the package before publishing by doing `npm publish --dry-run`
if necessary.
5. Publish the package to the npmjs registry (e.g. `npm publish --access public`)
NOTE: Use the `--tag unstable` flag to the npm publish if this is a prerelease.
6. Confirm the package has been published (e.g. `https://www.npmjs.com/package/openmct`)
5. Update snapshot status in `package.json`
1. Create a new branch off the `master` branch.
2. Remove any suffix from the version number,
or increment the _patch_ version if there is no suffix.
3. Append a `-next` suffix.
4. Commit changes to `package.json` on the `master` branch.
The commit message should reference the sprint being opened,
preferably by a URL reference to the associated Milestone in
GitHub.
5. Verify that build still completes, that application passes
smoke-testing.
6. Create a PR to be merged into the `master` branch.
Projects dependent on Open MCT being co-developed by the Open MCT
team should follow a similar process, except that they should
additionally update their dependency on Open MCT to point to the
latest archive when removing their `-next` status, and
that they should be pointed back to the `master` branch after
this has completed.

38
e2e/.eslintrc.cjs Normal file
View File

@ -0,0 +1,38 @@
/* eslint-disable no-undef */
module.exports = {
extends: ['plugin:playwright/recommended'],
rules: {
'playwright/max-nested-describe': ['error', { max: 1 }],
'playwright/expect-expect': 'off'
},
overrides: [
{
//Apply Best Practices to externalFixtures and exampleTemplate.e2e.spec.js
files: [
'appActions.js',
'baseFixtures.js',
'pluginFixtures.js',
'**/exampleTemplate.e2e.spec.js'
],
rules: {
'playwright/no-raw-locators': 'error',
'playwright/no-nth-methods': 'error',
'playwright/no-get-by-title': 'error',
'playwright/prefer-comparison-matcher': 'error'
}
},
{
// Disable no-raw-locators for .contract.perf.spec.js files until https://github.com/grafana/xk6-browser/issues/1226
files: ['**/*.contract.perf.spec.js'],
rules: {
'playwright/no-raw-locators': 'off'
}
},
{
files: ['**/*.visual.spec.js'],
rules: {
'playwright/no-networkidle': 'off' //https://github.com/nasa/openmct/issues/7549
}
}
]
};

7
e2e/.npmignore Normal file
View File

@ -0,0 +1,7 @@
*
!appActions.js
!baseFixtures.js
!pluginFixtures.js
!avpFixtures.js
!index.js
!*.md

44
e2e/.percy.ci.yml Normal file
View File

@ -0,0 +1,44 @@
version: 2
snapshot:
widths: [1024]
min-height: 1440 # px
percyCSS: |
/* Clock indicator... your days are numbered */
.t-indicator-clock > .label {
opacity: 0 !important;
}
.c-input--datetime {
opacity: 0 !important;
}
/* Timer object text */
.c-ne__time-and-creator {
opacity: 0 !important;
}
/* Time Conductor ticks */
div.c-conductor-axis.c-conductor__ticks > svg {
opacity: 0 !important;
}
/* Embedded timestamp in notebooks */
.c-ne__embed__time{
opacity: 0 !important;
}
/* Time Conductor Start Time */
.c-compact-tc__setting-value{
opacity: 0 !important;
}
/* Chart Area for Plots */
.gl-plot-chart-area{
opacity: 0 !important;
}
/* SWG Time values on plot */
.gl-plot-x{
opacity: 0 !important;
}
/* Notification Time in modal */
.c-ne__time{
opacity: 0 !important;
}
/* Snapshot name with embedded time */
.l-browse-bar__snapshot-datetime{
opacity: 0 !important;
}

44
e2e/.percy.nightly.yml Normal file
View File

@ -0,0 +1,44 @@
version: 2
snapshot:
widths: [1024, 2000]
min-height: 1440 # px
percyCSS: |
/* Clock indicator... your days are numbered */
.t-indicator-clock > .label {
opacity: 0 !important;
}
.c-input--datetime {
opacity: 0 !important;
}
/* Timer object text */
.c-ne__time-and-creator {
opacity: 0 !important;
}
/* Time Conductor ticks */
div.c-conductor-axis.c-conductor__ticks > svg {
opacity: 0 !important;
}
/* Embedded timestamp in notebooks */
.c-ne__embed__time{
opacity: 0 !important;
}
/* Time Conductor Start Time */
.c-compact-tc__setting-value{
opacity: 0 !important;
}
/* Chart Area for Plots */
.gl-plot-chart-area{
opacity: 0 !important;
}
/* SWG Time values on plot */
.gl-plot-x{
opacity: 0 !important;
}
/* Notification Time in modal */
.c-ne__time{
opacity: 0 !important;
}
/* Snapshot name with embedded time */
.l-browse-bar__snapshot-datetime{
opacity: 0 !important;
}

647
e2e/README.md Normal file
View File

@ -0,0 +1,647 @@
# e2e testing
This document captures information specific to the e2e testing of Open MCT. For general information about testing, please see [the Open MCT README](https://github.com/nasa/openmct/blob/master/README.md#tests).
## Table of Contents
This document is designed to capture on the What, Why, and How's of writing and running e2e tests in Open MCT. Please use the built-in Github Table of Contents functionality at the top left of this page or the markup.
1. [Getting Started](#getting-started)
2. [Types of Testing](#types-of-e2e-testing)
3. [Architecture](#test-architecture-and-ci)
## Getting Started
While our team does our best to lower the barrier to entry to working with our e2e framework and Open MCT, there is a bit of work required to get from 0 to 1 test contributed.
### Getting started with Playwright
If this is your first time ever using the Playwright framework, we recommend going through the [Getting Started Guide](https://playwright.dev/docs/next/intro) which can be completed in about 15 minutes. This will give you a concise tour of Playwright's functionality and an understanding of the official Playwright documentation which we leverage in Open MCT.
### Getting started with Open MCT's implementation of Playwright
Once you've got an understanding of Playwright, you'll need a baseline understanding of Open MCT:
1. Follow the steps [Building and Running Open MCT Locally](../README.md#building-and-running-open-mct-locally)
2. Once you're serving Open MCT locally, create a 'Display Layout' object. Save it.
3. Create a 'Plot' Object (e.g.: 'Stacked Plot')
4. Create an Example Telemetry Object (e.g.: 'Sine Wave Generator')
5. Expand the Tree and note the hierarchy of objects which were created.
6. Navigate to the Demo Display Layout Object to edit and modify the embedded plot.
7. Modify the embedded plot with Telemetry Data.
What you've created is a display which mimics the display that a mission control operator might use to understand and model telemetry data.
Recreate the steps above with Playwright's codegen tool:
1. `npm run start` in a terminal window to serve Open MCT locally
2. `npx @playwright/test install` to install playwright and dependencies
3. Open another terminal window and start the Playwright codegen application `npx playwright codegen`
4. Navigate the browser to `http://localhost:8080`
5. Click the Create button and notice how your actions in the browser are being recorded in the Playwright Inspector
6. Continue through the steps 2-6 above
What you've created is an automated test which mimics the creation of a mission control display.
Next, you should walk through our implementation of Playwright in Open MCT:
1. Close any terminals which are serving up a local instance of Open MCT
2. Run our 'Getting Started' test in debug mode with `npm run test:e2e:local -- exampleTemplate --debug`
3. Step through each test step in the Playwright Inspector to see how we leverage Playwright's capabilities to test Open MCT
## Types of e2e Testing
e2e testing describes the layer at which a test is performed without prescribing the assertions which are made. Generally, when writing an e2e test, we have five choices to make on an assertion strategy:
1. Functional - Verifies the functional correctness of the application. Sometimes interchanged with e2e or regression testing.
2. Visual - Verifies the "look and feel" of the application and can only detect _undesirable changes when compared to a previous baseline_.
3. Snapshot - Similar to Visual in that it captures the "look" of the application and can only detect _undesirable changes when compared to a previous baseline_. **Generally not preferred due to advanced setup necessary.**
4. Accessibility - Verifies that the application meets the accessibility standards defined by the [WCAG organization](https://www.w3.org/WAI/standards-guidelines/wcag/).
5. Performance - Verifies that application provides a performant experience. Like Snapshot testing, these tests are generally not recommended due to their difficulty in providing a consistent result.
When choosing between the different testing strategies, think only about the assertion that is made at the end of the series of test steps. "I want to verify that the Timer plugin functions correctly" vs "I want to verify that the Timer plugin does not look different than originally designed".
We do not want to interleave visual and functional testing inside the same suite because visual test verification of correctness must happen with a 3rd party service. This service is not available when executing these tests in other contexts (i.e. VIPER).
### Functional Testing
The bulk of our e2e coverage lies in "functional" test coverage which verifies that Open MCT is functionally correct as well as defining _how we expect it to behave_. This enables us to test the application exactly as a user would, while prescribing exactly how a user can interact with the application via a web browser.
### Visual Testing
Visual Testing is an essential part of our e2e strategy as it ensures that the application _appears_ correctly to a user while it compliments the functional e2e suite. It would be impractical to make thousands of assertions functional assertions on the look and feel of the application. Visual testing is interested in getting the DOM into a specified state and then comparing that it has not changed against a baseline.
For a better understanding of the visual issues which affect Open MCT, please see our bug tracker with the `label:visual` filter applied [here](https://github.com/nasa/openmct/issues?q=label%3Abug%3Avisual+)
To read about how to write a good visual test, please see [How to write a great Visual Test](#how-to-write-a-great-visual-test).
`npm run test:e2e:visual` commands will run all of the visual tests against a local instance of Open MCT. If no `PERCY_TOKEN` API key is found in the terminal or command line environment variables, no visual comparisons will be made.
- `npm run test:e2e:visual:ci` will run against every commit and PR.
- `npm run test:e2e:visual:full` will run every night with additional comparisons made for Larger Displays and with the `snow` theme.
#### Percy.io
To make this possible, we're leveraging a 3rd party service, [Percy](https://percy.io/). This service maintains a copy of all changes, users, scm-metadata, and baselines to verify that the application looks and feels the same _unless approved by a Open MCT developer_. To request a Percy API token, please reach out to the Open MCT Dev team on GitHub. For more information, please see the official [Percy documentation](https://docs.percy.io/docs/visual-testing-basics).
At present, we are using percy with two configuration files: `./e2e/.percy.nightly.yml` and `./e2e/.percy.ci.yml`. This is mainly to reduce the number of snapshots.
### Advanced: Snapshot Testing (Not Recommended)
While snapshot testing offers a precise way to detect changes in your application without relying on third-party services like Percy.io, we've found that it doesn't offer any advantages over visual testing in our use-cases. Therefore, snapshot testing is **not recommended** for further implementation.
#### CI vs Manual Checks
Snapshot tests can be reliably executed in Continuous Integration (CI) environments but lack the manual oversight provided by visual testing platforms like Percy.io. This means they may miss issues that a human reviewer could catch during manual checks.
#### Example
A single visual test assertion in Percy.io can be executed across 10 different browser and resolution combinations without additional setup, providing comprehensive testing with minimal configuration. In contrast, a snapshot test is restricted to a single OS and browser resolution, requiring more effort to achieve the same level of coverage.
#### Further Reading
For those interested in the mechanics of snapshot testing with Playwright, you can refer to the [Playwright Snapshots Documentation](https://playwright.dev/docs/test-snapshots). However, keep in mind that we do not recommend using this approach.
#### Open MCT's implementation
- Our Snapshot tests receive a `@snapshot` tag.
- Snapshots need to be executed within the official Playwright container to ensure we're using the exact rendering platform in CI and locally. To do a valid comparison locally:
```sh
// Replace {X.X.X} with the current Playwright version
// from our package.json or circleCI configuration file
docker run --rm --network host -v $(pwd):/work/ -w /work/ -it mcr.microsoft.com/playwright:v{X.X.X}-focal /bin/bash
npm install
npm run test:e2e:checksnapshots
```
### Updating Snapshots
When the `@snapshot` tests fail, they will need to be evaluated to determine if the failure is an acceptable and desireable or an unintended regression.
To compare a snapshot, run a test and open the html report with the 'Expected' vs 'Actual' screenshot. If the actual screenshot is preferred, then the source-controlled 'Expected' snapshots will need to be updated with the following scripts.
```sh
// Replace {X.X.X} with the current Playwright version
// from our package.json or circleCI configuration file
docker run --rm --network host -v $(pwd):/work/ -w /work/ -it mcr.microsoft.com/playwright:v{X.X.X}-focal /bin/bash
npm install
npm run test:e2e:updatesnapshots
```
Once that's done, you'll need to run the following to verify that the changes do not cause more problems:
```sh
npm run test:e2e:checksnapshots
```
## Automated Accessibility (a11y) Testing
Open MCT incorporates accessibility testing through two primary methods to ensure its compliance with accessibility standards:
1. **Usage of Playwright's Locator Strategy**: Open MCT utilizes Playwright's locator strategy, specifically the [page.getByRole('') function](https://playwright.dev/docs/api/class-framelocator#frame-locator-get-by-role), to ensure that web elements are accessible via assistive technologies. This approach focuses on the accessibility of elements rather than full adherence to a11y guidelines, which is covered in the second method.
2. **Enforcing a11y Guidelines with Playwright Axe Plugin**: To rigorously enforce a11y guideline compliance, Open MCT employs the [playwright axe plugin](https://playwright.dev/docs/accessibility-testing). This is achieved through the `scanForA11yViolations` function within the visual testing suite. This method not only benefits from the existing coverage of the visual tests but also targets specific a11y issues, such as `color-contrast` violations, which are particularly pertinent in the context of visual testing.
### a11y Standards (WCAG and Section 508)
Playwright axe supports a wide range of [WCAG Standards](https://playwright.dev/docs/accessibility-testing#scanning-for-wcag-violations) to test against. Open MCT is testing against the [Section 508](https://www.section508.gov/test/testing-overview/) accessibility guidelines with the intent to support higher standards over time. As of 2024, Section508 requirements now map completely to WCAG 2.0 AA. In the future, Section 508 requirements may map to WCAG 2.1 AA.
### Reading an a11y test failure
When an a11y test fails, the result must be interpreted in the html test report or the a11y report json artifact stored in the `/test-results/` folder. The json structure should be parsed for `"violations"` by `"id"` and identified `"target"`. Example provided for the 'color-contrast-enhanced' violation.
```json
"violations":
{
"id": "color-contrast-enhanced",
"impact": "serious",
"html": "<span class=\"label c-indicator__label\">0 Snapshots <button aria-label=\"Show Snapshots\">Show</button></span>",
"target": [
".s-status-off > .label.c-indicator__label"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 6.51 (foreground color: #aaaaaa, background color: #262626, font size: 8.1pt (10.8px), font weight: normal). Expected contrast ratio of 7:1"
}
```
## Performance Testing
The open source performance tests function in three ways which match their naming and folder structure:
`tests/performance` - The tests at the root of this folder path detect functional changes which are mostly apparent with large performance regressions like [this](https://github.com/nasa/openmct/issues/6879). These tests run against openmct webpack in `production-mode` with the `npm run test:perf:localhost` script.
`tests/performance/contract/` - These tests serve as [contracts](https://martinfowler.com/bliki/ContractTest.html) for the locator logic, functionality, and assumptions will work in our downstream, closed source test suites. These tests run against openmct webpack in `dev-mode` with the `npm run test:perf:contract` script.
`tests/performance/memory/` - These tests execute memory leak detection checks in various ways. This is expected to evolve as we move to the `memlab` project. These tests run against openmct webpack in `production-mode` with the `npm run test:perf:memory` script.
These tests are expected to become blocking and gating with assertions as we extend the capabilities of Playwright.
In addition to the explicit definition of performance tests, we also ensure that our test timeout timing is "tight" to catch performance regressions detectable by action timeouts. i.e. [Notebooks load much slower than they used to #6459](https://github.com/nasa/openmct/issues/6459)
## Test Architecture and CI
### Architecture
### File Structure
Our file structure follows the type of type of testing being exercised at the e2e layer and files containing test suites which matcher application behavior or our `src` and `example` layout. This area is not well refined as we figure out what works best for closed source and downstream projects. This may change altogether if we move `e2e` to it's own npm package.
|File Path|Description|
|:-:|-|
|`./helper` | Contains helper functions or scripts which are leveraged directly within the test suites (e.g.: non-default plugin scripts injected into the DOM)|
|`./test-data` | Contains test data which is leveraged or generated in the functional, performance, or visual test suites (e.g.: localStorage data).|
|`./tests/functional` | The bulk of the tests are contained within this folder to verify the functionality of Open MCT.|
|`./tests/functional/example/` | Tests which specifically verify the example plugins (e.g.: Sine Wave Generator).|
|`./tests/functional/plugins/` | Tests which loosely test each plugin. This folder is the most likely to change. Note: some `@snapshot` tests are still contained within this structure.|
|`./tests/framework/` | Tests which verify that our testing framework's functionality and assumptions will continue to work based on further refactoring or Playwright version changes (e.g.: verifying custom fixtures and appActions).|
|`./tests/performance/` | Performance tests which should be run on every commit.|
|`./tests/performance/contract/` | A subset of performance tests which are designed to provide a contract between the open source tests which are run on every commit and the downstream tests which are run post merge and with other frameworks.|
|`./tests/performance/memory` | A subset of performance tests which are designed to test for memory leaks.|
|`./tests/visual-a11y/` | Visual tests and accessibility tests.|
|`./tests/visual-a11y/component/` | Visual and accessibility tests which are only run against a single component.|
|`./appActions.js` | Contains common methods which can be leveraged by test case authors to quickly move through the application when writing new tests.|
|`./baseFixture.js` | Contains base fixtures which only extend default `@playwright/test` functionality. The expectation is that these fixtures will be removed as the native Playwright API improves|
Our functional tests end in `*.e2e.spec.js`, visual tests in `*.visual.spec.js` and performance tests in `*.perf.spec.js`.
### Configuration
Where possible, we try to run Open MCT without modification or configuration change so that the Open MCT doesn't fail exclusively in "test mode" or in "production mode".
Open MCT is leveraging the [config file](https://playwright.dev/docs/test-configuration) pattern to describe the capabilities of Open MCT e2e _where_ it's run
|Config File|Description|
|:-:|-|
|`./playwright-ci.config.js` | Used when running in CI or to debug CI issues locally|
|`./playwright-local.config.js` | Used when running locally|
|`./playwright-performance.config.js` | Used when running performance tests in CI or locally|
|`./playwright-performance-devmode.config.js` | Used when running performance tests in CI or locally|
|`./playwright-visual-a11y.config.js` | Used to run the visual and a11y tests in CI or locally|
#### Test Tags
Test tags are a great way of organizing tests outside of a file structure. To learn more see the official documentation [here](https://playwright.dev/docs/test-annotations#tag-tests).
Current list of test tags:
|Test Tag|Description|
|:-:|-|
|`@mobile` | Test case or test suite is compatible with Playwright's iPad support and Open MCT's read-only mobile view (i.e. no create button).|
|`@a11y` | Test case or test suite to execute playwright-axe accessibility checks and generate a11y reports.|
|`@addInit` | Initializes the browser with an injected and artificial state. Useful for loading non-default plugins. Likely will not work outside of `npm start`.|
|`@localStorage` | Captures or generates session storage to manipulate browser state. Useful for excluding in tests which require a persistent backend (i.e. CouchDB). See [note](#utilizing-localstorage)|
|`@snapshot` | Uses Playwright's snapshot functionality to record a copy of the DOM for direct comparison. Must be run inside of the playwright container.|
|`@2p` | Indicates that multiple users are involved, or multiple tabs/pages are used. Useful for testing multi-user interactivity.|
|`@generatedata` | Indicates that a test is used to generate testdata or test the generated test data. Usually to be associated with localstorage, but this may grow over time.|
|`@clock` | A test which modifies the clock. These have expanded out of the visual tests and into the functional tests.
|`@framework` | A test for open mct e2e capabilities. This is primarily to ensure we don't break projects which depend on sourcing this project's fixtures like appActions.js.
### Continuous Integration
The cheapest time to catch a bug is pre-merge. Unfortunately, this is the most expensive time to run all of the tests since each merge event can consist of hundreds of commits. For this reason, we're selective in _what we run_ as much as _when we run it_.
We leverage CircleCI to run tests against each commit and inject the Test Reports which are generated by Playwright so that they team can keep track of flaky and [historical test trends](https://app.circleci.com/insights/github/nasa/openmct/workflows/overall-circleci-commit-status/tests?branch=master&reporting-window=last-30-days)
We leverage Github Actions / Workflows to execute tests as it gives us the ability to run against multiple operating systems with greater control over git event triggers (i.e. Run on a PR Comment event).
Our CI environment consists of 3 main modes of operation:
#### 1. Per-Commit Testing
CircleCI
- e2e tests against ubuntu and chrome
- Performance tests against ubuntu and chrome
- e2e tests are linted
- Visual and a11y tests are run in a single resolution on the default `espresso` theme
#### 2. Per-Merge Testing
Github Actions / Workflow
- Full suite against all browsers/projects. Triggered with Github Label Event 'pr:e2e'
- CouchDB Tests. Triggered on PR Create and again with Github Label Event 'pr:e2e:couchdb'
#### 3. Scheduled / Batch Testing
Nightly Testing in Circle CI
- Full e2e suite against ubuntu and chrome, firefox, and an MMOC resolution profile
- Performance tests against ubuntu and chrome
- CouchDB suite
- Visual and a11y Tests are run in the full profile
Github Actions / Workflow
- None at the moment
#### Parallelism and Fast Feedback
In order to provide fast feedback in the Per-Commit context, we try to keep total test feedback at 5 minutes or less. That is to say, A developer should have a pass/fail result in under 5 minutes.
Playwright has native support for semi-intelligent sharding. Read about it [here](https://playwright.dev/docs/test-parallel#shard-tests-between-multiple-machines).
We will be adjusting the parallelization of the Per-Commit tests to keep below the 5 minute total runtime threshold.
In addition to the Parallelization of Test Runners (Sharding), we're also running two concurrent threads on every Shard. This is the functional limit of what CircleCI Agents can support from a memory and CPU resource constraint.
So for every commit, Playwright is effectively running 4 x 2 concurrent browsercontexts to keep the overall runtime to a miminum.
At the same time, we don't want to waste CI resources on parallel runs, so we've configured each shard to fail after 5 test failures. Test failure logs are recorded and stored to allow fast triage.
### Cross-browser and Cross-operating system
#### **What's supported:**
We are leveraging the `browserslist` project to declare our supported list of browsers. We support macOS, Windows, and ubuntu 20+.
#### **Where it's tested:**
We lint on `browserslist` to ensure that we're not implementing deprecated browser APIs and are aware of browser API improvements over time.
We also have the need to execute our e2e tests across this published list of browsers. Our browsers and browser version matrix is found inside of our `./playwright-*.config.js`, but mostly follows in order of bleeding edge to stable:
- `playwright-chromium channel:beta`
- A beta version of Chromium from official chromium channels. As close to the bleeding edge as we can get.
- `playwright-chromium`
- A stable version of Chromium from the official chromium channels. This is always at least 1 version ahead of desktop chrome.
- `playwright-chrome`
- The stable channel of Chrome from the official chrome channels. This is always 2 versions behind chromium.
- `playwright-firefox`
- Firefox Latest Stable. Modified slightly by the playwright team to support a CDP Shim.
In terms of operating system testing, we're only limited by what the CI providers are able to support. The bulk of our testing is performed on the official playwright container which is based on ubuntu. Github Actions allows us to use `windows-latest` and `mac-latest` and is run as needed.
#### **Mobile**
We have a Mission-need to support iPad and mobile devices. To run our test suites with mobile devices, please see our `playwright-mobile.config.js` projects.
In general, our test suite is not designed to run against mobile devices as the mobile experience is a focused version of the application. Core functionality is missing (chiefly the 'Create' button). To bypass the object creation, we leverage the `storageState` properties for starting the mobile tests with localstorage.
For now, the mobile tests will exist in the /tests/mobile/ suites and be executed with the
```sh
npm run test:e2e:mobile
```
command.
#### **Skipping or executing tests based on browser, os, and/os browser version:**
Conditionally skipping tests based on browser (**RECOMMENDED**):
```js
test('Can adjust image brightness/contrast by dragging the sliders', async ({ page, browserName }) => {
// eslint-disable-next-line playwright/no-skipped-test
test.skip(browserName === 'firefox', 'This test needs to be updated to work with firefox');
// ...
```
Conditionally skipping tests based on OS:
```js
test('Can adjust image brightness/contrast by dragging the sliders', async ({ page }) => {
// eslint-disable-next-line playwright/no-skipped-test
test.skip(process.platform === 'darwin', 'This test needs to be updated to work with MacOS');
// ...
```
Skipping based on browser version (Rarely used): <https://github.com/microsoft/playwright/discussions/17318>
## Test Design, Best Practices, and Tips & Tricks
### Test Design
#### Test as the User
In general, strive to test only through the UI as a user would. As stated in the [Playwright Best Practices](https://playwright.dev/docs/best-practices#test-user-visible-behavior):
> "Automated tests should verify that the application code works for the end users, and avoid relying on implementation details such as things which users will not typically use, see, or even know about such as the name of a function, whether something is an array, or the CSS class of some element. The end user will see or interact with what is rendered on the page, so your test should typically only see/interact with the same rendered output."
By adhering to this principle, we can create tests that are both robust and reflective of actual user experiences.
#### How to make tests robust to function in other contexts (VISTA, COUCHDB, YAMCS, VIPER, etc.)
1. Leverage the use of `appActions.js` methods such as `createDomainObjectWithDefaults()`. This ensures that your tests will create unique instances of objects for your test to interact with.
1. Do not assert on the order or structure of objects available unless you created them yourself. These tests may be used against a persistent datastore like couchdb with many objects in the tree.
1. Do not search for your created objects. Open MCT does not performance uniqueness checks so it's possible that your tests will break when run twice.
1. Avoid creating locator aliases. This likely means that you're compensating for a bad locator. Improve the application instead.
1. Leverage `await page.goto('./', { waitUntil: 'domcontentloaded' });` instead of `{ waitUntil: 'networkidle' }`. Tests run against deployments with websockets often have issues with the networkidle detection.
#### How to make tests faster and more resilient to application changes
1. Avoid app interaction when possible. The best way of doing this is to navigate directly by URL:
```js
// You can capture the CreatedObjectInfo returned from this appAction:
const clock = await createDomainObjectWithDefaults(page, { type: 'Clock' });
// ...and use its `url` property to navigate directly to it later in the test:
await page.goto(clock.url);
```
1. Leverage `await page.goto('./', { waitUntil: 'domcontentloaded' });`
- Initial navigation should _almost_ always use the `{ waitUntil: 'domcontentloaded' }` option.
1. Avoid repeated setup to test a single assertion. Write longer tests with multiple soft assertions.
This ensures that your changes will be picked up with large refactors.
1. Use [user-facing locators](https://playwright.dev/docs/best-practices#use-locators) (Now a eslint rule!)
```js
page.getByRole('button', { name: 'Create' } )
```
Instead of
```js
page.locator('.c-create-button')
```
Note: `page.locator()` can be used in performance tests as xk6-browser does not yet support the new `page.getBy` pattern and css lookups can be [1.5x faster](https://serpapi.com/blog/css-selectors-faster-than-getbyrole-playwright/)
##### Utilizing LocalStorage
1. In order to save test runtime in the case of tests that require a decent amount of initial setup (such as in the case of testing complex displays), you may use [Playwright's `storageState` feature](https://playwright.dev/docs/api/class-browsercontext#browser-context-storage-state) to generate and load localStorage states.
1. To generate a localStorage state to be used in a test:
- Add an e2e test to our generateLocalStorageData suite which sets the initial state (creating/configuring objects, etc.), saving it in the `test-data` folder:
```js
// Save localStorage for future test execution
await context.storageState({
path: path.join(__dirname, '../../../e2e/test-data/display_layout_with_child_layouts.json')
});
```
- Load the state from file at the beginning of the desired test suite (within the `test.describe()`). (NOTE: the storage state will be used for each test in the suite, so you may need to create a new suite):
```js
const LOCALSTORAGE_PATH = path.resolve(
__dirname,
'../../../../test-data/display_layout_with_child_layouts.json'
);
test.use({
storageState: path.resolve(__dirname, LOCALSTORAGE_PATH)
});
```
### How to write a great test
- Avoid using css locators to find elements to the page. Use modern web accessible locators like `getByRole`
- Use our [App Actions](./appActions.js) for performing common actions whenever applicable.
- Use `waitForPlotsToRender()` before asserting against anything that is dependent upon plot series data being loaded and drawn.
- If you create an object outside of using the `createDomainObjectWithDefaults` App Action, make sure to fill in the 'Notes' section of your object with `page.testNotes`:
```js
// Fill the "Notes" section with information about the
// currently running test and its project.
const { testNotes } = page;
const notesInput = page.locator('form[name="mctForm"] #notes-textarea');
await notesInput.fill(testNotes);
```
#### How to Write a Great Visual Test
1. **Look for the Unknown Unknowns**: Avoid asserting on specific differences in the visual diff. Visual tests are most effective for identifying unknown unknowns.
2. **Get the App into Interesting States**: Prioritize getting Open MCT into unusual layouts or behaviors before capturing a visual snapshot. For instance, you could open a dropdown menu.
3. **Expect the Unexpected**: Use functional expect statements only to verify assumptions about the state between steps. A great visual test doesn't fail during the test itself, but rather when changes are reviewed in Percy.io.
4. **Control Variability**: Account for variations inherent in working with time-based telemetry and clocks.
- Utilize `percyCSS` to ignore time-based elements. For more details, consult our [percyCSS file](./.percy.ci.yml).
- Use Open MCT's fixed-time mode unless explicitly testing realtime clock
- Employ the `createExampleTelemetryObject` appAction to source telemetry and specify a `name` to avoid autogenerated names.
- Avoid creating objects with a time component like timers and clocks.
- Utilize the playwright clock() API. See @clock Annotations for examples.
5. **Hide the Tree and Inspector**: Generally, your test will not require comparisons involving the tree and inspector. These aspects are covered in component-specific tests (explained below). To exclude them from the comparison by default, navigate to the root of the main view with the tree and inspector hidden:
- `await page.goto('./#/browse/mine?hideTree=true&hideInspector=true')`
6. **Component-Specific Tests**: If you wish to focus on a particular component, use the `/visual-a11y/component/` folder and limit the scope of the comparison to that component. For instance:
```js
await percySnapshot(page, `Tree Pane w/ single level expanded (theme: ${theme})`, {
scope: treePane
});
```
- Note: The `scope` variable can be any valid CSS selector.
7. **Write many `percySnapshot` commands in a single test**: In line with our approach to longer functional tests, we recommend that many test percySnapshots are taken in a single test. For instance:
```js
//<Some interesting state>
await percySnapshot(page, `Before object expanded (theme: ${theme})`);
//<Click on object>
await percySnapshot(page, `object expanded (theme: ${theme})`);
//Select from object
await percySnapshot(page, `object selected (theme: ${theme})`)
```
8. **Use `networkidle` to wait for network requests to complete**: This is necessary to ensure that all network requests have completed before taking a snapshot. This ensures that icons are loaded and other assets are available. https://github.com/nasa/openmct/issues/7549
#### How to write a great network test
- Where possible, it is best to mock out third-party network activity to ensure we are testing application behavior of Open MCT.
- It is best to be as specific as possible about the expected network request/response structures in creating your mocks.
- Make sure to only mock requests which are relevant to the specific behavior being tested.
- Where possible, network requests and responses should be treated in an order-agnostic manner, as the order in which certain requests/responses happen is dynamic and subject to change.
Some examples of mocking network responses in regards to CouchDB can be found in our [couchdb.e2e.spec.js](./tests/functional/couchdb.e2e.spec.js) test file.
### Best Practices
For now, our best practices exist as self-tested, living documentation in our [exampleTemplate.e2e.spec.js](./tests/framework/exampleTemplate.e2e.spec.js) file.
For best practices with regards to mocking network responses, see our [couchdb.e2e.spec.js](./tests/functional/couchdb.e2e.spec.js) file.
### Tips & Tricks
The following contains a list of tips and tricks which don't exactly fit into a FAQ or Best Practices doc.
- (Advanced) Overriding the Browser's Clock
It is possible to override the browser's clock in order to control time-based elements. Since this can cause unwanted behavior -- i.e. Tree not rendering -- only use this sparingly. Use the `page.clock()` API as such:
```js
import { test, expect } from '../../pluginFixtures.js';
test.describe('foo test suite @clock', () => {
test.beforeEach(async ({ page }) => {
//Set clock time
await page.clock.install({ time: MISSION_TIME });
await page.clock.resume();
//Navigate to page with new clock
await page.goto('./', { waitUntil: 'domcontentloaded' });
});
test('bar here', async ({ page }) => {
/// ...
});
```
- Working with multiple pages
There are instances where multiple browser pages will needed to verify multi-page or multi-tab application behavior. Make sure to use the `@2p` annotation as well as name each page appropriately: i.e. `page1` and `page2` or `tab1` and `tab2` depending on the intended use case. Generally pages should be used unless testing `sharedWorker` code, specifically.
- Working with file downloads and JSON data
Open MCT has the capability of exporting certain objects in the form of a JSON file handled by the chrome browser. The best example of this type of test can be found in the exportAsJson test.
```js
const [download] = await Promise.all([
page.waitForEvent('download'), // Waits for the download event
page.getByLabel('Export as JSON').click() // Triggers the download
]);
// Wait for the download process to complete
const path = await download.path();
// Read the contents of the downloaded file using readFile from fs/promises
const fileContents = await fs.readFile(path, 'utf8');
const jsonData = JSON.parse(fileContents);
// Use the function to retrieve the key
const key = getFirstKeyFromOpenMctJson(jsonData);
// Verify the contents of the JSON file
expect(jsonData.openmct[key]).toHaveProperty('name', 'e2e folder');
```
### Reporting
Test Reporting is done through official Playwright reporters and the CI Systems which execute them.
We leverage the following official Playwright reporters:
- HTML
- junit
- github annotations
- Tracefile
- Screenshots
When running the tests locally with the `npm run test:e2e:local` command, the html report will open automatically on failure. Inside this HTML report will be a complete summary of the finished tests. If the tests failed, you'll see embedded links to screenshot failure, execution logs, and the Tracefile.
When looking at the reports run in CI, you'll leverage this same HTML Report which is hosted either in CircleCI or Github Actions as a build artifact.
### e2e Code Coverage
Our e2e code coverage is captured and combined with our unit test coverage. For more information, please see our [code coverage documentation](../TESTING.md)
#### Generating e2e code coverage
Please read more about our code coverage [here](../TESTING.md#code-coverage)
## Other
### About e2e testing
e2e testing is an industry-standard approach to automating the testing of web-based UIs such as Open MCT. Broadly speaking, e2e tests differentiate themselves from unit tests by preferring replication of real user interactions over execution of raw JavaScript functions.
Historically, the abstraction necessary to replicate real user behavior meant that:
- e2e tests were "expensive" due to how much code each test executed. The closer a test replicates the user, the more code is needed run during test execution. Unit tests could run smaller units of code more efficiently.
- e2e tests were flaky due to network conditions or the underlying protocols associated with testing a browser.
- e2e frameworks relied on a browser communication standard which lacked the observability and controls necessary needed to reach the code paths possible with unit and integration tests.
- e2e frameworks provided insufficient debug information on test failure
However, as the web ecosystem has matured to the point where mission-critical UIs can be written for the web (Open MCT), the e2e testing tools have matured as well. There are now fewer "trade-offs" when choosing to write an e2e test over any other type of test.
Modern e2e frameworks:
- Bypass the surface layer of the web-application-under-test and use a raw debugging protocol to observe and control application and browser state.
- These new browser-internal protocols enable near-instant, bi-directional communication between test code and the browser, speeding up test execution and making the tests as reliable as the application itself.
- Provide test debug tooling which enables developers to pinpoint failure
Furthermore, the abstraction necessary to run e2e tests as a user enables them to be extended to run within a variety of contexts. This matches the extensible design of Open MCT.
A single e2e test in Open MCT is extended to run:
- Against a matrix of browser versions.
- Against a matrix of OS platforms.
- Against a local development version of Open MCT.
- A version of Open MCT loaded as a dependency (VIPER, VISTA, etc)
- Against a variety of data sources or telemetry endpoints.
### Why Playwright?
[Playwright](https://playwright.dev/) was chosen as our e2e framework because it solves a few VIPER Mission needs:
1. First-class support for Automated Performance Testing
2. Official Chrome, Chrome Canary, and iPad Capabilities
3. Support for Browserless.io to run tests in a "hermetically sealed" environment
4. Ability to generate code coverage reports
### FAQ
- How does this help NASA missions?
- When should I write an e2e test instead of a unit test?
- When should I write a functional vs visual test?
- How is Open MCT extending default Playwright functionality?
- What about Component Testing?
### Writing Tests
Playwright provides 3 supported methods of debugging and authoring tests:
- A 'watch mode' for running tests locally and debugging on the fly
- A 'debug mode' for debugging tests and writing assertions against tests
- A 'VSCode plugin' for debugging tests within the VSCode IDE.
Generally, we encourage folks to use the watch mode and provide a script `npm run test:e2e:watch` which launches the launch mode ui and enables hot reloading on the dev server.
### e2e Troubleshooting
Please follow the general guide troubleshooting in [the general troubleshooting doc](../TESTING.md#troubleshooting-ci)
- Tests won't start because 'Error: <http://localhost:8080/># is already used...'
This error will appear when running the tests locally. Sometimes, the webserver is left in an orphaned state and needs to be cleaned up. To clear up the orphaned webserver, execute the following from your Terminal:
```lsof -n -i4TCP:8080 | awk '{print$2}' | tail -1 | xargs kill -9```
### Upgrading Playwright
In order to upgrade from one version of Playwright to another, the version should be updated in several places in both `openmct` and `openmct-yamcs` repos. An easy way to identify these locations is to search for the current version in all files and find/replace.
For reference, all of the locations where the version should be updated are listed below:
#### **In `openmct`:**
- `package.json`
- Both packages `@playwright/test` and `playwright-core` should be updated to the same target version.
- `.circleci/config.yml`
- `.github/workflows/e2e-couchdb.yml`
- `.github/workflows/e2e-pr.yml`
#### **In `openmct-yamcs`:**
- `package.json`
- `@playwright/test` should be updated to the target version.
- `.github/workflows/yamcs-quickstart-e2e.yml`

703
e2e/appActions.js Normal file
View File

@ -0,0 +1,703 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
/**
* The fixtures in this file are to be used to consolidate common actions performed by the
* various test suites. The goal is only to avoid duplication of code across test suites and not to abstract
* away the underlying functionality of the application. For more about the App Action pattern, see /e2e/README.md)
*
* For example, if two functions are nearly identical in
* timer.e2e.spec.js and notebook.e2e.spec.js, that function should be generalized and moved into this file.
*/
/**
* Defines parameters to be used in the creation of a domain object.
* @typedef {Object} CreateObjectOptions
* @property {string} type the type of domain object to create (e.g.: "Sine Wave Generator").
* @property {string} [name] the desired name of the created domain object.
* @property {string | import('../src/api/objects/ObjectAPI').Identifier} [parent] the Identifier or uuid of the parent object.
*/
/**
* Contains information about the newly created domain object.
* @typedef {Object} CreatedObjectInfo
* @property {string} name the name of the created object
* @property {string} uuid the uuid of the created object
* @property {string} url the relative url to the object (for use with `page.goto()`)
*/
/**
* Defines parameters to be used in the creation of a notification.
* @typedef {Object} CreateNotificationOptions
* @property {string} message the message
* @property {'info' | 'alert' | 'error'} severity the severity
* @property {import('../src/api/notifications/NotificationAPI').NotificationOptions} [notificationOptions] additional options
*/
import { expect } from '@playwright/test';
import { Buffer } from 'buffer';
import { v4 as genUuid } from 'uuid';
/**
* This common function creates a domain object with the default options. It is the preferred way of creating objects
* in the e2e suite when uninterested in properties of the objects themselves.
*
* @param {import('@playwright/test').Page} page - The Playwright page object.
* @param {Object} options - Options for creating the domain object.
* @param {string} options.type - The type of domain object to create (e.g., "Sine Wave Generator").
* @param {string} [options.name] - The desired name of the created domain object.
* @param {string | import('../src/api/objects/ObjectAPI').Identifier} [options.parent='mine'] - The Identifier or uuid of the parent object. Defaults to 'mine' folder
* @returns {Promise<CreatedObjectInfo>} An object containing information about the newly created domain object.
*/
async function createDomainObjectWithDefaults(page, { type, name, parent = 'mine' }) {
if (!name) {
name = `${type}:${genUuid()}`;
}
const parentUrl = await getHashUrlToDomainObject(page, parent);
// Navigate to the parent object. This is necessary to create the object
// in the correct location, such as a folder, layout, or plot.
await page.goto(parentUrl);
// Click the Create button
await page.getByRole('button', { name: 'Create', exact: true }).click();
// Click the object specified by 'type'-- case insensitive
await page.getByRole('menuitem', { name: new RegExp(`^${type}$`, 'i') }).click();
// Fill in the name of the object
await page.getByLabel('Title', { exact: true }).fill('');
await page.getByLabel('Title', { exact: true }).fill(name);
if (page.testNotes) {
// Fill the "Notes" section with information about the
// currently running test and its project.
// eslint-disable-next-line playwright/no-raw-locators
await page.locator('#notes-textarea').fill(page.testNotes);
}
await page.getByRole('button', { name: 'Save' }).click();
// Wait until the URL is updated
await page.waitForURL(`**/${parent}/*`);
const uuid = await getFocusedObjectUuid(page);
const objectUrl = await getHashUrlToDomainObject(page, uuid);
if (await _isInEditMode(page, uuid)) {
// Save (exit edit mode)
await page.getByRole('button', { name: 'Save' }).click();
await page.getByRole('listitem', { name: 'Save and Finish Editing' }).click();
}
return {
name,
uuid,
url: objectUrl
};
}
/**
* Generate a notification with the given options.
* @param {import('@playwright/test').Page} page
* @param {CreateNotificationOptions} createNotificationOptions
*/
async function createNotification(page, createNotificationOptions) {
await page.evaluate((_createNotificationOptions) => {
const { message, severity, options } = _createNotificationOptions;
const notificationApi = window.openmct.notifications;
if (severity === 'info') {
notificationApi.info(message, options);
} else if (severity === 'alert') {
notificationApi.alert(message, options);
} else {
notificationApi.error(message, options);
}
}, createNotificationOptions);
}
/**
* Create a Plan object from JSON with the provided options. Must be used with a json based plan.
* Please check appActions.e2e.spec.js for an example of how to use this function.
*
* @param {import('@playwright/test').Page} page
* @param {string} name
* @param {Object} json
* @param {string | import('../src/api/objects/ObjectAPI').Identifier} [parent] the uuid or identifier of the parent object. Defaults to 'mine'
* @returns {Promise<CreatedObjectInfo>} An object containing information about the newly created domain object.
*/
async function createPlanFromJSON(page, { name, json, parent = 'mine' }) {
const parentUrl = await getHashUrlToDomainObject(page, parent);
// Navigate to the parent object. This is necessary to create the object
// in the correct location, such as a folder, layout, or plot.
await page.goto(`${parentUrl}`);
await page.getByRole('button', { name: 'Create' }).click();
await page.getByRole('menuitem', { name: 'Plan' }).click();
// Fill in the name of the object or generate a random one
if (!name) {
name = `Plan:${genUuid()}`;
}
await page.getByLabel('Title', { exact: true }).fill('');
await page.getByLabel('Title', { exact: true }).fill(name);
// Upload buffer from memory
await page.getByLabel('Select File...').setInputFiles({
name: 'plan.txt',
mimeType: 'text/plain',
buffer: Buffer.from(JSON.stringify(json))
});
await page.getByLabel('Save').click();
// Wait until the URL is updated
await page.waitForURL(`**/${parent}/*`);
const uuid = await getFocusedObjectUuid(page);
const objectUrl = await getHashUrlToDomainObject(page, uuid);
return {
uuid,
name,
url: objectUrl
};
}
/**
* Create a standardized Telemetry Object (Sine Wave Generator) for use in visual tests
* and tests against plotting telemetry (e.g. logPlot tests).
* @param {import('@playwright/test').Page} page
* @param {string | import('../src/api/objects/ObjectAPI').Identifier} [parent] the uuid or identifier of the parent object. Defaults to 'mine'
* @returns {Promise<CreatedObjectInfo>} An object containing information about the telemetry object.
*/
async function createExampleTelemetryObject(page, parent = 'mine') {
const parentUrl = await getHashUrlToDomainObject(page, parent);
await page.goto(`${parentUrl}`);
await page.getByRole('button', { name: 'Create' }).click();
await page.getByRole('menuitem', { name: 'Sine Wave Generator' }).click();
const name = 'VIPER Rover Heading';
await page.getByLabel('Title', { exact: true }).fill(name);
// Fill out the fields with default values
await page.getByRole('spinbutton', { name: 'Period' }).fill('10');
await page.getByRole('spinbutton', { name: 'Amplitude' }).fill('1');
await page.getByRole('spinbutton', { name: 'Offset' }).fill('0');
await page.getByRole('spinbutton', { name: 'Data Rate (hz)' }).fill('1');
await page.getByRole('spinbutton', { name: 'Phase (radians)' }).fill('0');
await page.getByRole('spinbutton', { name: 'Randomness' }).fill('0');
await page.getByRole('spinbutton', { name: 'Loading Delay (ms)' }).fill('0');
await page.getByRole('button', { name: 'Save' }).click();
// Wait until the URL is updated
await page.waitForURL(`**/${parent}/*`);
const uuid = await getFocusedObjectUuid(page);
const url = await getHashUrlToDomainObject(page, uuid);
return {
name,
uuid,
url
};
}
/**
* Create a Stable State Telemetry Object (State Generator) for use in visual tests
* and tests against plotting telemetry (e.g. logPlot tests). This will change state every 2 seconds.
* @param {import('@playwright/test').Page} page
* @param {string | import('../src/api/objects/ObjectAPI').Identifier} [parent] the uuid or identifier of the parent object. Defaults to 'mine'
* @returns {Promise<CreatedObjectInfo>} An object containing information about the telemetry object.
*/
async function createStableStateTelemetry(page, parent = 'mine') {
const parentUrl = await getHashUrlToDomainObject(page, parent);
await page.goto(`${parentUrl}`);
const createdObject = await createDomainObjectWithDefaults(page, {
type: 'State Generator',
name: 'Stable State Generator'
});
// edit the state generator to have a 1 second update rate
await page.getByLabel('More actions').click();
await page.getByRole('menuitem', { name: 'Edit Properties...' }).click();
await page.getByLabel('State Duration (seconds)', { exact: true }).fill('2');
await page.getByLabel('Save').click();
// Wait until the URL is updated
const uuid = await getFocusedObjectUuid(page);
const url = await getHashUrlToDomainObject(page, uuid);
return {
name: createdObject.name,
uuid,
url
};
}
/**
* Navigates directly to a given object url, in fixed time mode, with the given start and end bounds. Note: does not set
* default view type.
*
* @param {import('@playwright/test').Page} page
* @param {string} url The url to the domainObject
* @param {string | number} start The starting time bound in milliseconds since epoch
* @param {string | number} end The ending time bound in milliseconds since epoch
*/
async function navigateToObjectWithFixedTimeBounds(page, url, start, end) {
await page.goto(
`${url}?tc.mode=fixed&tc.timeSystem=utc&tc.startBound=${start}&tc.endBound=${end}`
);
}
/**
* Navigates directly to a given object url, in real-time mode. Note: does not set
* default view type.
*
* @param {import('@playwright/test').Page} page
* @param {string} url The url to the domainObject
* @param {string | number} start The start offset in milliseconds
* @param {string | number} end The end offset in milliseconds
*/
async function navigateToObjectWithRealTime(page, url, start = '1800000', end = '30000') {
await page.goto(
`${url}?tc.mode=local&tc.startDelta=${start}&tc.endDelta=${end}&tc.timeSystem=utc`
);
}
/**
* Expands the entire object tree (every expandable tree item). Can be used to
* ensure that the tree is fully expanded before performing actions on objects.
* Can be applied to either the main tree or the create modal tree.
*
* @param {import('@playwright/test').Page} page
* @param {"Main Tree" | "Create Modal Tree"} [treeName="Main Tree"]
*/
async function expandEntireTree(page, treeName = 'Main Tree') {
const treeLocator = page.getByRole('tree', {
name: treeName
});
const collapsedTreeItems = treeLocator
.getByRole('treeitem', {
expanded: false
})
.getByLabel(/Expand/);
while ((await collapsedTreeItems.count()) > 0) {
//eslint-disable-next-line playwright/no-nth-methods
await collapsedTreeItems.nth(0).click();
// FIXME: Replace hard wait with something event-driven.
// Without the wait, this fails periodically due to a race condition
// with Vue rendering (loop exits prematurely).
// eslint-disable-next-line playwright/no-wait-for-timeout
await page.waitForTimeout(200);
}
}
/**
* Gets the UUID of the currently focused object by parsing the current URL
* and returning the last UUID in the path.
* @param {import('@playwright/test').Page} page
* @returns {Promise<string>} the uuid of the focused object
*/
async function getFocusedObjectUuid(page) {
const UUIDv4Regexp = /[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}/gi;
const focusedObjectUuid = await page.evaluate((regexp) => {
return window.location.href.split('?')[0].match(regexp).at(-1);
}, UUIDv4Regexp);
return focusedObjectUuid;
}
/**
* Returns the hashUrl to the domainObject given its uuid.
* Useful for directly navigating to the given domainObject.
*
* URLs returned will be of the form `'./browse/#/mine/<uuid0>/<uuid1>/...'`
*
* @param {import('@playwright/test').Page} page
* @param {string | import('../src/api/objects/ObjectAPI').Identifier} identifier the uuid or identifier of the object to get the url for
* @returns {Promise<string>} the url of the object
*/
async function getHashUrlToDomainObject(page, identifier) {
await page.waitForLoadState('domcontentloaded');
const hashUrl = await page.evaluate(async (objectIdentifier) => {
const path = await window.openmct.objects.getOriginalPath(objectIdentifier);
let url =
'./#/browse/' +
[...path]
.reverse()
.map((object) => window.openmct.objects.makeKeyString(object.identifier))
.join('/');
// Drop the vestigial '/ROOT' if it exists
if (url.includes('/ROOT')) {
url = url.split('/ROOT').join('');
}
return url;
}, identifier);
return hashUrl;
}
/**
* Utilizes the OpenMCT API to detect if the UI is in Edit mode.
* @private
* @param {import('@playwright/test').Page} page
* @param {string | import('../src/api/objects/ObjectAPI').Identifier} identifier
* @return {Promise<boolean>} true if the Open MCT is in Edit Mode
*/
async function _isInEditMode(page, identifier) {
// eslint-disable-next-line no-return-await
return await page.evaluate(() => window.openmct.editor.isEditing());
}
/**
* Set the time conductor mode to either fixed timespan or realtime mode.
* @private
* @param {import('@playwright/test').Page} page
* @param {boolean} [isFixedTimespan=true] true for fixed timespan mode, false for realtime mode; default is true
*/
async function _setTimeConductorMode(page, isFixedTimespan = true) {
// Click 'mode' button
await page.getByRole('button', { name: 'Time Conductor Mode', exact: true }).click();
await page.getByRole('button', { name: 'Time Conductor Mode Menu' }).click();
// Switch time conductor mode. Note, need to wait here for URL to update as the router is debounced.
if (isFixedTimespan) {
await page.getByRole('menuitem', { name: /Fixed Timespan/ }).click();
await page.waitForURL(/tc\.mode=fixed/);
} else {
await page.getByRole('menuitem', { name: /Real-Time/ }).click();
await page.waitForURL(/tc\.mode=local/);
}
//dismiss the time conductor popup
await page.getByLabel('Discard changes and close time popup').click();
}
/**
* Set the time conductor to fixed timespan mode
* @param {import('@playwright/test').Page} page
*/
async function setFixedTimeMode(page) {
await _setTimeConductorMode(page, true);
}
/**
* Set the time conductor to realtime mode
* @param {import('@playwright/test').Page} page
*/
async function setRealTimeMode(page) {
await _setTimeConductorMode(page, false);
}
/**
* @typedef {Object} OffsetValues
* @property {string | undefined} startHours
* @property {string | undefined} startMins
* @property {string | undefined} startSecs
* @property {string | undefined} endHours
* @property {string | undefined} endMins
* @property {string | undefined} endSecs
*/
/**
* Set the values (hours, mins, secs) for the TimeConductor offsets when in realtime mode
* @param {import('@playwright/test').Page} page
* @param {OffsetValues} offset - Object containing offset values
* @param {boolean} [offset.submitChanges=true] - If true, submit the offset changes; otherwise, discard them
*/
async function setTimeConductorOffset(
page,
{ startHours, startMins, startSecs, endHours, endMins, endSecs, submitChanges = true }
) {
if (startHours) {
await page.getByLabel('Start offset hours').fill(startHours);
}
if (startMins) {
await page.getByLabel('Start offset minutes').fill(startMins);
}
if (startSecs) {
await page.getByLabel('Start offset seconds').fill(startSecs);
}
if (endHours) {
await page.getByLabel('End offset hours').fill(endHours);
}
if (endMins) {
await page.getByLabel('End offset minutes').fill(endMins);
}
if (endSecs) {
await page.getByLabel('End offset seconds').fill(endSecs);
}
// Click the check button
if (submitChanges) {
await page.getByLabel('Submit time offsets').click();
} else {
await page.getByLabel('Discard changes and close time popup').click();
}
}
/**
* Set the values (hours, mins, secs) for the start time offset when in realtime mode
* @param {import('@playwright/test').Page} page
* @param {OffsetValues} offset
* @param {boolean} [submit=true] If true, submit the offset changes; otherwise, discard them
*/
async function setStartOffset(page, { submitChanges = true, ...offset }) {
// Click 'mode' button
await page.getByRole('button', { name: 'Time Conductor Mode', exact: true }).click();
await setTimeConductorOffset(page, { submitChanges, ...offset });
}
/**
* Set the values (hours, mins, secs) for the end time offset when in realtime mode
* @param {import('@playwright/test').Page} page
* @param {OffsetValues} offset
* @param {boolean} [submit=true] If true, submit the offset changes; otherwise, discard them
*/
async function setEndOffset(page, { submitChanges = true, ...offset }) {
// Click 'mode' button
await page.getByRole('button', { name: 'Time Conductor Mode', exact: true }).click();
await setTimeConductorOffset(page, { submitChanges, ...offset });
}
/**
* Set the time conductor bounds in fixed time mode
*
* NOTE: Unless explicitly testing the Time Conductor itself, it is advised to instead
* navigate directly to the object with the desired time bounds using `navigateToObjectWithFixedTimeBounds()`.
* @param {import('@playwright/test').Page} page
* @param {Object} bounds - The time conductor bounds
* @param {string} [bounds.startDate] - The start date in YYYY-MM-DD format
* @param {string} [bounds.startTime] - The start time in HH:mm:ss format
* @param {string} [bounds.endDate] - The end date in YYYY-MM-DD format
* @param {string} [bounds.endTime] - The end time in HH:mm:ss format
* @param {boolean} [bounds.submitChanges=true] - If true, submit the changes; otherwise, discard them.
*/
async function setTimeConductorBounds(page, { submitChanges = true, ...bounds }) {
const { startDate, endDate, startTime, endTime } = bounds;
// Open the time conductor popup
await page.getByRole('button', { name: 'Time Conductor Mode', exact: true }).click();
// FIXME: https://github.com/nasa/openmct/pull/7818
// eslint-disable-next-line playwright/no-wait-for-timeout
await page.waitForTimeout(500);
if (startDate) {
await page.getByLabel('Start date').fill(startDate);
}
if (startTime) {
await page.getByLabel('Start time').fill(startTime);
}
if (endDate) {
await page.getByLabel('End date').fill(endDate);
}
if (endTime) {
await page.getByLabel('End time').fill(endTime);
}
if (submitChanges) {
await page.getByLabel('Submit time bounds').click();
} else {
await page.getByLabel('Discard changes and close time popup').click();
}
}
/**
* Set the bounds of the visible conductor in fixed time mode.
* Requires that page already has an independent time conductor in view.
* @param {import('@playwright/test').Page} page
* @param {string} start - The start date in 'YYYY-MM-DD HH:mm:ss.SSSZ' format
* @param {string} end - The end date in 'YYYY-MM-DD HH:mm:ss.SSSZ' format
*/
async function setFixedIndependentTimeConductorBounds(page, { start, end }) {
// Activate Independent Time Conductor
await page.getByLabel('Enable Independent Time Conductor').click();
// Bring up the time conductor popup
await page.getByLabel('Independent Time Conductor Settings').click();
await expect(page.getByLabel('Time Conductor Options')).toBeInViewport();
await _setTimeBounds(page, start, end);
await page.keyboard.press('Enter');
}
/**
* Set the bounds of the visible conductor in fixed time mode
* @private
* @param {import('@playwright/test').Page} page
* @param {string} start - The start date in 'YYYY-MM-DD HH:mm:ss.SSSZ' format
* @param {string} end - The end date in 'YYYY-MM-DD HH:mm:ss.SSSZ' format
*/
async function _setTimeBounds(page, startDate, endDate) {
if (startDate) {
// Fill start time
await page
.getByRole('textbox', { name: 'Start date' })
.fill(startDate.toString().substring(0, 10));
await page
.getByRole('textbox', { name: 'Start time' })
.fill(startDate.toString().substring(11, 19));
}
if (endDate) {
// Fill end time
await page.getByRole('textbox', { name: 'End date' }).fill(endDate.toString().substring(0, 10));
await page
.getByRole('textbox', { name: 'End time' })
.fill(endDate.toString().substring(11, 19));
}
}
/**
* Waits and asserts that all plot series data on the page
* is loaded and drawn.
*
* In lieu of a better way to detect when a plot is done rendering,
* we [attach a class to the '.gl-plot' element](https://github.com/nasa/openmct/blob/5924d7ea95a0c2d4141c602a3c7d0665cb91095f/src/plugins/plot/MctPlot.vue#L27)
* once all pending series data has been loaded. The following appAction retrieves
* all plots on the page and waits up to the default timeout for the class to be
* attached to each plot.
* @param {import('@playwright/test').Page} page
* @param {number} [timeout] Provide a custom timeout in milliseconds to override the default timeout
*/
async function waitForPlotsToRender(page, { timeout } = {}) {
//eslint-disable-next-line playwright/no-raw-locators
const plotLocator = page.locator('.gl-plot');
for (const plot of await plotLocator.all()) {
await expect(plot).toHaveClass(/js-series-data-loaded/, { timeout });
}
}
/**
* @typedef {Object} PlotPixel
* @property {number} r The value of the red channel (0-255)
* @property {number} g The value of the green channel (0-255)
* @property {number} b The value of the blue channel (0-255)
* @property {number} a The value of the alpha channel (0-255)
* @property {string} strValue The rgba string value of the pixel
*/
/**
* Wait for all plots to render and then retrieve and return an array
* of canvas plot pixel data (RGBA values).
* @param {import('@playwright/test').Page} page
* @param {string} canvasSelector The selector for the canvas element
* @return {Promise<PlotPixel[]>}
*/
async function getCanvasPixels(page, canvasSelector) {
const canvasHandle = await page.evaluateHandle(
(canvas) => document.querySelector(canvas),
canvasSelector
);
const canvasContextHandle = await page.evaluateHandle(
(canvas) => canvas.getContext('2d'),
canvasHandle
);
await waitForPlotsToRender(page);
return page.evaluate(
([canvas, ctx]) => {
// The document canvas is where the plot points and lines are drawn.
// The only way to access the canvas is using document (using page.evaluate)
/** @type {ImageData} */
const data = ctx.getImageData(0, 0, canvas.width, canvas.height).data;
/** @type {number[]} */
const imageDataValues = Object.values(data);
/** @type {PlotPixel[]} */
const plotPixels = [];
// Each pixel consists of four values within the ImageData.data array. The for loop iterates by multiples of four.
// The values associated with each pixel are R (red), G (green), B (blue), and A (alpha), in that order.
for (let i = 0; i < imageDataValues.length; ) {
if (imageDataValues[i] > 0) {
plotPixels.push({
r: imageDataValues[i],
g: imageDataValues[i + 1],
b: imageDataValues[i + 2],
a: imageDataValues[i + 3],
strValue: `rgb(${imageDataValues[i]}, ${imageDataValues[i + 1]}, ${
imageDataValues[i + 2]
}, ${imageDataValues[i + 3]})`
});
}
i = i + 4;
}
return plotPixels;
},
[canvasHandle, canvasContextHandle]
);
}
/**
* Search for telemetry and link it to an object. objectName should come from the domainObject.name function.
* @param {import('@playwright/test').Page} page
* @param {string} parameterName
* @param {string} objectName
*/
async function linkParameterToObject(page, parameterName, objectName) {
await page.getByRole('searchbox', { name: 'Search Input' }).click();
await page.getByRole('searchbox', { name: 'Search Input' }).fill(parameterName);
await page.getByLabel('Object Results').getByText(parameterName).click();
await page.getByLabel('More actions').click();
await page.getByLabel('Create Link').click();
await page.getByLabel('Modal Overlay').getByLabel('Search Input').click();
await page.getByLabel('Modal Overlay').getByLabel('Search Input').fill(objectName);
await page.getByLabel('Modal Overlay').getByLabel(`Navigate to ${objectName}`).click();
await page.getByLabel('Save').click();
}
export {
createDomainObjectWithDefaults,
createExampleTelemetryObject,
createNotification,
createPlanFromJSON,
createStableStateTelemetry,
expandEntireTree,
getCanvasPixels,
linkParameterToObject,
navigateToObjectWithFixedTimeBounds,
navigateToObjectWithRealTime,
setEndOffset,
setFixedIndependentTimeConductorBounds,
setFixedTimeMode,
setRealTimeMode,
setStartOffset,
setTimeConductorBounds,
waitForPlotsToRender
};

161
e2e/avpFixtures.js Normal file
View File

@ -0,0 +1,161 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
/**
* avpFixtures.js
*
* @file This module provides custom fixtures specifically tailored for Accessibility, Visual, and Performance (AVP) tests.
* These fixtures extend the base functionality of the Playwright fixtures and appActions, and are designed to be
* generalized across all plugins. They offer functionalities like scanning for accessibility violations, integrating
* with axe-core, and more.
*
* IMPORTANT NOTE: This fixture file is not intended to be extended further by other fixtures. If you find yourself
* needing to do so, please consult the documentation and consider creating a specialized fixture or modifying the
* existing ones.
*/
import AxeBuilder from '@axe-core/playwright';
import fs from 'fs/promises';
import path from 'path';
import { fileURLToPath } from 'url';
import { expect, test } from './pluginFixtures.js';
// Constants for repeated values
const __dirname = path.dirname(fileURLToPath(import.meta.url));
const TEST_RESULTS_DIR = path.join(__dirname, './test-results');
const extendedTest = test.extend({
/**
* Overrides the default screenshot function to apply default options that should apply to all
* screenshots taken in the AVP tests.
*
* @param {import('@playwright/test').PlaywrightTestArgs} args - The Playwright test arguments.
* @param {Function} use - The function to use the page object.
* Defaults:
* - Disables animations
* - Masks the clock indicator
* - Masks the time conductor last update time in realtime mode
* - Masks the time conductor start bounds in fixed mode
* - Masks the time conductor end bounds in fixed mode
*/
page: async ({ page }, use) => {
const playwrightScreenshot = page.screenshot;
/**
* Override the screenshot function to always mask a given set of locators which will always
* show variance across screenshots. Defaults may be overridden by passing in options to the
* screenshot function.
* @param {import('@playwright/test').PageScreenshotOptions} options - The options for the screenshot.
* @returns {Promise<Buffer>} Returns the screenshot as a buffer.
*/
page.screenshot = async function (options = {}) {
const mask = [
this.getByLabel('Clock Indicator'), // Mask the clock indicator
this.getByLabel('Last update'), // Mask the time conductor last update time in realtime mode
this.getByLabel('Start bounds'), // Mask the time conductor start bounds in fixed mode
this.getByLabel('End bounds') // Mask the time conductor end bounds in fixed mode
];
const result = await playwrightScreenshot.call(this, {
animations: 'disabled',
mask,
...options // Pass through or override any options
});
return result;
};
await use(page);
}
});
/**
* Writes the accessibility report to the specified path.
*
* @param {string} reportPath - The path to write the report to.
* @param {Object} accessibilityScanResults - The results of the accessibility scan.
* @returns {Promise<Object>} The accessibility scan results.
* @throws Will throw an error if writing the report fails.
*/
async function writeAccessibilityReport(reportPath, accessibilityScanResults) {
try {
await fs.mkdir(path.dirname(reportPath), { recursive: true });
const data = JSON.stringify(accessibilityScanResults, null, 2);
await fs.writeFile(reportPath, data);
console.log(`Accessibility report with violations saved successfully as ${reportPath}`);
return accessibilityScanResults;
} catch (err) {
console.error(`Error writing the accessibility report to file ${reportPath}:`, err);
throw err;
}
}
/**
* Scans for accessibility violations on a page and writes a report to disk if violations are found.
* Automatically asserts that no violations should be present.
*
* @param {import('playwright').Page} page - The page object from Playwright.
* @param {string} testCaseName - The name of the test case.
* @param {{ reportName?: string }} [options={}] - The options for the report generation.
* @returns {Promise<Object|null>} Returns the accessibility scan results if violations are found, otherwise returns null.
*/
export async function scanForA11yViolations(page, testCaseName, options = {}) {
const builder = new AxeBuilder({ page });
builder.withTags(['wcag2aa']);
// https://github.com/dequelabs/axe-core/blob/develop/doc/rule-descriptions.md
const accessibilityScanResults = await builder.analyze();
// Assert that no violations should be present
expect
.soft(
accessibilityScanResults.violations,
`Accessibility violations found in test case: ${testCaseName}`
)
.toEqual([]);
// Check if there are any violations
if (accessibilityScanResults.violations.length > 0) {
const reportName = options.reportName || testCaseName;
const sanitizedReportName = reportName.replace(/\//g, '_');
const reportPath = path.join(
TEST_RESULTS_DIR,
'a11y-json-reports',
`${sanitizedReportName}.json`
);
try {
await page.screenshot({
path: path.join(TEST_RESULTS_DIR, 'a11y-screenshots', `${sanitizedReportName}.png`)
});
return await writeAccessibilityReport(reportPath, accessibilityScanResults);
} catch (err) {
console.error(`Error writing the accessibility report to file ${reportPath}:`, err);
throw err;
}
} else {
console.log('No accessibility violations found, no report generated.');
return null;
}
}
export { expect, extendedTest as test };

129
e2e/baseFixtures.js Normal file
View File

@ -0,0 +1,129 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
/**
* This file is dedicated to extending the base functionality of the `@playwright/test` framework.
* The functions in this file should be viewed as temporary or a shim to be removed as the RFEs in
* the Playwright GitHub repo are implemented. Functions which serve those RFEs are marked with corresponding
* GitHub issues.
*/
import { expect, request, test } from '@playwright/test';
import fs from 'fs';
import path from 'path';
import { fileURLToPath } from 'url';
import { v4 as uuid } from 'uuid';
/**
* Takes a `ConsoleMessage` and returns a formatted string. Used to enable console log error detection.
* @see {@link https://github.com/microsoft/playwright/discussions/11690 Github Discussion}
* @private
* @param {import('@playwright/test').ConsoleMessage} msg
* @returns {string} formatted string with message type, text, url, and line and column numbers
*/
function _consoleMessageToString(msg) {
const { url, lineNumber, columnNumber } = msg.location();
return `[${msg.type()}] ${msg.text()} at (${url} ${lineNumber}:${columnNumber})`;
}
/**
* Wait for all animations within the given element and subtrees to finish. Useful when
* verifying that css transitions have completed.
* @see {@link https://github.com/microsoft/playwright/issues/15660 Github RFE}
* @param {import('@playwright/test').Locator} locator
* @return {Promise<Animation[]>}
*/
function waitForAnimations(locator) {
return locator.evaluate((element) =>
Promise.all(element.getAnimations({ subtree: true }).map((animation) => animation.finished))
);
}
const istanbulCLIOutput = fileURLToPath(new URL('.nyc_output', import.meta.url));
const extendedTest = test.extend({
/**
* Path to output raw coverage files. Can be overridden in Playwright config file.
* @see {@link https://github.com/mxschmitt/playwright-test-coverage Github Example Project}
* @constant {string}
*/
coveragePath: [istanbulCLIOutput, { option: true }],
/**
* Extends the base context class to add codecoverage shim.
* @see {@link https://github.com/mxschmitt/playwright-test-coverage Github Project}
*/
context: async ({ context, coveragePath }, use) => {
await context.addInitScript(() =>
window.addEventListener('beforeunload', () =>
window.collectIstanbulCoverage(JSON.stringify(window.__coverage__))
)
);
await fs.promises.mkdir(coveragePath, { recursive: true });
await context.exposeFunction('collectIstanbulCoverage', (coverageJSON) => {
if (coverageJSON) {
fs.writeFileSync(
path.join(coveragePath, `playwright_coverage_${uuid()}.json`),
coverageJSON
);
}
});
await use(context);
for (const page of context.pages()) {
await page.evaluate(() => {
window.collectIstanbulCoverage(JSON.stringify(window.__coverage__));
});
}
},
/**
* If true, will assert against any console.error calls that occur during the test. Assertions occur
* during test teardown (after the test has completed).
*
* Default: `true`
*/
failOnConsoleError: [true, { option: true }],
/**
* Extends the base page class to enable console log error detection.
* @see {@link https://github.com/microsoft/playwright/discussions/11690 Github Discussion}
*/
page: async ({ page, failOnConsoleError }, use) => {
// Capture any console errors during test execution
const messages = [];
page.on('console', (msg) => messages.push(msg));
await use(page);
// Assert against console errors during teardown
if (failOnConsoleError) {
messages.forEach((msg) =>
// eslint-disable-next-line playwright/no-standalone-expect
expect
.soft(msg.type(), `Console error detected: ${_consoleMessageToString(msg)}`)
.not.toEqual('error')
);
}
}
});
export { expect, request, extendedTest as test, waitForAnimations };

36
e2e/constants.js Normal file
View File

@ -0,0 +1,36 @@
/**
* Constants which may be used across all e2e tests.
*/
/**
* Time Constants
* - Used for overriding the browser clock in tests.
*/
export const MISSION_TIME = 1732413600000; // Saturday, November 23, 2024 6:00:00 PM GMT-08:00 (Thanksgiving Dinner Time)
// Subtracting 30 minutes from MISSION_TIME
export const MISSION_TIME_FIXED_START = 1732413600000 - 1800000; // 1732411800000
// Adding 1 minute to MISSION_TIME
export const MISSION_TIME_FIXED_END = 1732413600000 + 60000; // 1732413660000
/**
* URL Constants
* These constants are used for initial navigation in visual tests, in either fixed or realtime mode.
* They navigate to the 'My Items' folder at MISSION_TIME.
* They set the following url parameters:
* - tc.mode - The time conductor mode ('fixed' or 'local')
* - tc.startBound - The time conductor start bound (when in fixed mode)
* - tc.endBound - The time conductor end bound (when in fixed mode)
* - tc.startDelta - The time conductor start delta (when in realtime mode)
* - tc.endDelta - The time conductor end delta (when in realtime mode)
* - tc.timeSystem - The time conductor time system ('utc')
* - view - The view to display ('grid')
* - hideInspector - Whether to hide the inspector (true)
* - hideTree - Whether to hide the tree (true)
* @typedef {string} VisualUrl
*/
/** @type {VisualUrl} */
export const VISUAL_FIXED_URL = `./#/browse/mine?tc.mode=fixed&tc.startBound=${MISSION_TIME_FIXED_START}&tc.endBound=${MISSION_TIME_FIXED_END}&tc.timeSystem=utc&view=grid&hideInspector=true&hideTree=true`;
/** @type {VisualUrl} */
export const VISUAL_REALTIME_URL =
'./#/browse/mine?tc.mode=local&tc.timeSystem=utc&view=grid&tc.startDelta=1800000&tc.endDelta=30000&hideTree=true&hideInspector=true';

View File

@ -0,0 +1,30 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
// This should be used to install the Example User
document.addEventListener('DOMContentLoaded', () => {
const openmct = window.openmct;
openmct.install(openmct.plugins.example.ExampleDataVisualizationSourcePlugin());
openmct.install(
openmct.plugins.InspectorDataVisualization({ type: 'exampleDataVisualizationSource' })
);
});

View File

@ -0,0 +1,28 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
// This should be used to install the Example Fault Provider, this will also install the FaultManagementPlugin (neither of which are installed by default).
document.addEventListener('DOMContentLoaded', () => {
const openmct = window.openmct;
openmct.install(openmct.plugins.example.ExampleFaultSource());
});

View File

@ -0,0 +1,30 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
// This should be used to install the Example Fault Provider, this will also install the FaultManagementPlugin (neither of which are installed by default).
document.addEventListener('DOMContentLoaded', () => {
const openmct = window.openmct;
const staticFaults = true;
openmct.install(openmct.plugins.example.ExampleFaultSource(staticFaults));
});

View File

@ -0,0 +1,27 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
// This should be used to install the Example User
document.addEventListener('DOMContentLoaded', () => {
const openmct = window.openmct;
openmct.install(openmct.plugins.example.ExampleUser());
});

View File

@ -0,0 +1,28 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
// This should be used to install the Example Fault Provider, this will also install the FaultManagementPlugin (neither of which are installed by default).
document.addEventListener('DOMContentLoaded', () => {
const openmct = window.openmct;
openmct.install(openmct.plugins.FaultManagement());
});

View File

@ -0,0 +1,71 @@
class DomainObjectViewProvider {
constructor(openmct) {
this.key = 'doViewProvider';
this.name = 'Domain Object View Provider';
this.openmct = openmct;
}
canView(domainObject) {
return domainObject.type === 'imageFileInput' || domainObject.type === 'jsonFileInput';
}
view(domainObject, objectPath) {
let content;
return {
show: function (element) {
const body = domainObject.selectFile.body;
const type = typeof body;
content = document.createElement('div');
content.id = 'file-input-type';
content.textContent = JSON.stringify(type);
element.appendChild(content);
},
destroy: function (element) {
element.removeChild(content);
content = undefined;
}
};
}
}
document.addEventListener('DOMContentLoaded', () => {
const openmct = window.openmct;
openmct.types.addType('jsonFileInput', {
key: 'jsonFileInput',
name: 'JSON File Input Object',
creatable: true,
form: [
{
name: 'Upload File',
key: 'selectFile',
control: 'file-input',
required: true,
text: 'Select File...',
type: 'application/json',
property: ['selectFile']
}
]
});
openmct.types.addType('imageFileInput', {
key: 'imageFileInput',
name: 'Image File Input Object',
creatable: true,
form: [
{
name: 'Upload File',
key: 'selectFile',
control: 'file-input',
required: true,
text: 'Select File...',
type: 'image/*',
property: ['selectFile']
}
]
});
openmct.objectViews.addProvider(new DomainObjectViewProvider(openmct));
});

View File

@ -0,0 +1,32 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
// This should be used to install the re-instal default Notebook plugin with a simple url whitelist.
// e.g.
// await page.addInitScript({ path: path.join(__dirname, 'addInitNotebookWithUrls.js') });
const NOTEBOOK_NAME = 'Notebook';
const URL_WHITELIST = ['google.com'];
document.addEventListener('DOMContentLoaded', () => {
const openmct = window.openmct;
openmct.install(openmct.plugins.Notebook(NOTEBOOK_NAME, URL_WHITELIST));
});

View File

@ -0,0 +1,27 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
// This should be used to install the Operator Status
document.addEventListener('DOMContentLoaded', () => {
const openmct = window.openmct;
openmct.install(openmct.plugins.OperatorStatus());
});

View File

@ -0,0 +1,30 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
// This should be used to install the non-default Restricted Notebook plugin since it is not installed by default.
// e.g.
// await page.addInitScript({ path: path.join(__dirname, 'addInitRestrictedNotebook.js') });
document.addEventListener('DOMContentLoaded', () => {
const openmct = window.openmct;
openmct.install(openmct.plugins.RestrictedNotebook('CUSTOM_NAME'));
});

View File

@ -0,0 +1,27 @@
(function () {
document.addEventListener('DOMContentLoaded', () => {
const PERSISTENCE_KEY = 'persistence-tests';
const openmct = window.openmct;
openmct.objects.addRoot({
namespace: PERSISTENCE_KEY,
key: PERSISTENCE_KEY
});
openmct.objects.addProvider(PERSISTENCE_KEY, {
get(identifier) {
if (identifier.key !== PERSISTENCE_KEY) {
return undefined;
} else {
return Promise.resolve({
identifier,
type: 'folder',
name: 'Persistence Testing',
location: 'ROOT',
composition: []
});
}
}
});
});
})();

247
e2e/helper/faultUtils.js Normal file
View File

@ -0,0 +1,247 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
import { fileURLToPath } from 'url';
import { expect } from '../pluginFixtures.js';
/**
* @param {import('@playwright/test').Page} page
* @returns {Promise<void>}
*/
export async function navigateToFaultManagementWithExample(page) {
await page.addInitScript({
path: fileURLToPath(new URL('./addInitExampleFaultProvider.js', import.meta.url))
});
await navigateToFaultItemInTree(page);
}
/**
* @param {import('@playwright/test').Page} page
* @returns {Promise<void>}
*/
export async function navigateToFaultManagementWithStaticExample(page) {
await page.addInitScript({
path: fileURLToPath(new URL('./addInitExampleFaultProviderStatic.js', import.meta.url))
});
await navigateToFaultItemInTree(page);
}
/**
* @param {import('@playwright/test').Page} page
* @returns {Promise<void>}
*/
export async function navigateToFaultManagementWithoutExample(page) {
await page.addInitScript({
path: fileURLToPath(new URL('./addInitFaultManagementPlugin.js', import.meta.url))
});
await navigateToFaultItemInTree(page);
}
/**
* @param {import('@playwright/test').Page} page
* @returns {Promise<void>}
*/
async function navigateToFaultItemInTree(page) {
await page.goto('./', { waitUntil: 'domcontentloaded' });
await page.waitForURL('**/#/browse/mine?**');
const faultManagementTreeItem = page
.getByRole('tree', {
name: 'Main Tree'
})
.getByRole('treeitem', {
name: 'Fault Management'
});
// Navigate to "Fault Management" from the tree
await faultManagementTreeItem.click();
}
/**
* @param {import('@playwright/test').Page} page
* @param {number} rowNumber
* @returns {Promise<void>}
*/
export async function acknowledgeFault(page, rowNumber) {
await openFaultRowMenu(page, rowNumber);
await page.getByLabel('Acknowledge', { exact: true }).click();
await page.getByLabel('Save').click();
}
/**
* @param {import('@playwright/test').Page} page
* @param {...number} nums
* @returns {Promise<void>}
*/
export async function shelveMultipleFaults(page, ...nums) {
const selectRows = nums.map((num) => {
return selectFaultItem(page, num);
});
await Promise.all(selectRows);
await page.getByLabel('Shelve selected faults').click();
await page.getByLabel('Save').click();
}
/**
* @param {import('@playwright/test').Page} page
* @param {...number} nums
* @returns {Promise<void>}
*/
export async function acknowledgeMultipleFaults(page, ...nums) {
const selectRows = nums.map((num) => {
return selectFaultItem(page, num);
});
await Promise.all(selectRows);
await page.getByLabel('Acknowledge selected faults').click();
await page.getByLabel('Save').click();
}
/**
* @param {import('@playwright/test').Page} page
* @param {number} rowNumber
* @returns {Promise<void>}
*/
export async function shelveFault(page, rowNumber) {
await openFaultRowMenu(page, rowNumber);
await page.getByLabel('Shelve', { exact: true }).click();
await page.getByLabel('Save').click();
}
/**
* @param {import('@playwright/test').Page} page
* @param {'severity' | 'newest-first' | 'oldest-first'} sort
* @returns {Promise<void>}
*/
export async function sortFaultsBy(page, sort) {
await page.getByTitle('Sort By').getByRole('combobox').selectOption(sort);
}
/**
* @param {import('@playwright/test').Page} page
* @param {'acknowledged' | 'shelved' | 'standard view'} view
* @returns {Promise<void>}
*/
export async function changeViewTo(page, view) {
await page.getByTitle('View Filter').getByRole('combobox').selectOption(view);
}
/**
* @param {import('@playwright/test').Page} page
* @param {number} rowNumber
* @returns {Promise<void>}
*/
export async function selectFaultItem(page, rowNumber) {
await page
.getByLabel('Select fault')
.nth(rowNumber - 1)
.check({
// Need force here because checkbox state is changed by an event emitted by the checkbox
// eslint-disable-next-line playwright/no-force-option
force: true
});
await expect(page.getByLabel('Select fault').nth(rowNumber - 1)).toBeChecked();
}
/**
* @param {import('@playwright/test').Page} page
* @param {number} rowNumber
* @returns {import('@playwright/test').Locator}
*/
export function getFault(page, rowNumber) {
const fault = page.getByLabel('Fault triggered at').nth(rowNumber - 1);
return fault;
}
/**
* @param {import('@playwright/test').Page} page
* @param {string} name
* @returns {import('@playwright/test').Locator}
*/
export function getFaultByName(page, name) {
const fault = page.getByLabel('Fault triggered at').filter({
hasText: name
});
return fault;
}
/**
* @param {import('@playwright/test').Page} page
* @param {number} rowNumber
* @returns {Promise<string>}
*/
export async function getFaultName(page, rowNumber) {
const faultName = await page
.getByLabel('Fault name', { exact: true })
.nth(rowNumber - 1)
.textContent();
return faultName;
}
/**
* @param {import('@playwright/test').Page} page
* @param {number} rowNumber
* @returns {Promise<string>}
*/
export async function getFaultNamespace(page, rowNumber) {
const faultNamespace = await page
.getByLabel('Fault namespace')
.nth(rowNumber - 1)
.textContent();
return faultNamespace;
}
/**
* @param {import('@playwright/test').Page} page
* @param {number} rowNumber
* @returns {Promise<string>}
*/
export async function getFaultTriggerTime(page, rowNumber) {
const faultTriggerTime = await page
.getByLabel('Last Trigger Time')
.nth(rowNumber - 1)
.textContent();
return faultTriggerTime.toString().trim();
}
/**
* @param {import('@playwright/test').Page} page
* @param {number} rowNumber
* @returns {Promise<void>}
*/
export async function openFaultRowMenu(page, rowNumber) {
// select
await page
.getByLabel('Fault triggered at')
.nth(rowNumber - 1)
.getByLabel('Disposition Actions')
.click();
}

View File

@ -0,0 +1,47 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
const isMac = process.platform === 'darwin';
const modifier = isMac ? 'Meta' : 'Control';
/**
* @param {import('@playwright/test').Page} page
*/
async function selectAll(page) {
await page.keyboard.press(`${modifier}+KeyA`);
}
/**
* @param {import('@playwright/test').Page} page
*/
async function copy(page) {
await page.keyboard.press(`${modifier}+KeyC`);
}
/**
* @param {import('@playwright/test').Page} page
*/
async function paste(page) {
await page.keyboard.press(`${modifier}+KeyV`);
}
export { copy, paste, selectAll };

View File

@ -0,0 +1,23 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
export * from './clipboard.js';

View File

@ -0,0 +1,33 @@
import { createDomainObjectWithDefaults } from '../appActions.js';
import { expect } from '../pluginFixtures.js';
const IMAGE_LOAD_DELAY = 5 * 1000;
const FIVE_MINUTES = 1000 * 60 * 5;
const THIRTY_SECONDS = 1000 * 30;
const MOUSE_WHEEL_DELTA_Y = 120;
/**
* @param {import('@playwright/test').Page} page
*/
async function createImageryViewWithShortDelay(page, { name, parent }) {
await createDomainObjectWithDefaults(page, {
name,
type: 'Example Imagery',
parent
});
await expect(page.locator('.l-browse-bar__object-name')).toContainText('Unnamed Example Imagery');
await page.getByLabel('More actions').click();
await page.getByLabel('Edit Properties').click();
// Clear and set Image load delay to minimum value
await page.locator('input[type="number"]').fill(`${IMAGE_LOAD_DELAY}`);
await page.getByLabel('Save').click();
}
export {
createImageryViewWithShortDelay,
FIVE_MINUTES,
IMAGE_LOAD_DELAY,
MOUSE_WHEEL_DELTA_Y,
THIRTY_SECONDS
};

164
e2e/helper/notebookUtils.js Normal file
View File

@ -0,0 +1,164 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
import { createDomainObjectWithDefaults } from '../appActions.js';
const NOTEBOOK_DROP_AREA = '.c-notebook__drag-area';
const CUSTOM_NAME = 'CUSTOM_NAME';
import { fileURLToPath } from 'url';
/**
* @param {import('@playwright/test').Page} page
* @param {string} text
*/
async function enterTextEntry(page, text) {
await addNotebookEntry(page);
await enterTextInLastEntry(page, text);
await commitEntry(page);
}
/**
* @param {import('@playwright/test').Page} page
*/
async function addNotebookEntry(page) {
await page.locator(NOTEBOOK_DROP_AREA).click();
}
/**
* @param {import('@playwright/test').Page} page
*/
async function enterTextInLastEntry(page, text) {
await page.getByLabel('Notebook Entry Input').last().fill(text);
}
/**
* @param {import('@playwright/test').Page} page
*/
async function dragAndDropEmbed(page, notebookObject) {
// Create example telemetry object
const swg = await createDomainObjectWithDefaults(page, {
type: 'Sine Wave Generator'
});
// Navigate to notebook
await page.goto(notebookObject.url);
// Expand the tree to reveal the notebook
await page.getByLabel('Show selected item in tree').click();
// Drag and drop the SWG into the notebook
await page.getByLabel(`Navigate to ${swg.name}`).dragTo(page.locator(NOTEBOOK_DROP_AREA));
await commitEntry(page);
}
/**
* @private
* @param {import('@playwright/test').Page} page
*/
async function commitEntry(page) {
//Click the Commit Entry button
await page.locator('.c-ne__save-button > button').click();
}
/**
* @param {import('@playwright/test').Page} page
*/
async function startAndAddRestrictedNotebookObject(page) {
await page.addInitScript({
path: fileURLToPath(new URL('./addInitRestrictedNotebook.js', import.meta.url))
});
await page.goto('./', { waitUntil: 'domcontentloaded' });
await page.waitForURL('**/browse/mine?**');
return createDomainObjectWithDefaults(page, {
type: CUSTOM_NAME,
name: 'Restricted Test Notebook'
});
}
/**
* @param {import('@playwright/test').Page} page
*/
async function lockPage(page) {
// Click the Commit Entries button
await page.getByLabel('Commit Entries').click();
// Wait until Lock Banner is visible
await page.locator('text=Lock Page').click();
}
/**
* Creates a notebook object and adds an entry.
* @param {import('@playwright/test').Page} - page to load
* @param {number} [iterations = 1] - the number of entries to create
*/
async function createNotebookAndEntry(page, iterations = 1) {
const notebook = createDomainObjectWithDefaults(page, { type: 'Notebook' });
for (let iteration = 0; iteration < iterations; iteration++) {
await enterTextEntry(page, `Entry ${iteration}`);
}
return notebook;
}
/**
* Creates a notebook object, adds an entry, and adds a tag.
* @param {import('@playwright/test').Page} page
* @param {number} [iterations = 1] - the number of entries (and tags) to create
*/
async function createNotebookEntryAndTags(page, iterations = 1) {
const notebook = await createNotebookAndEntry(page, iterations);
await page.getByRole('tab', { name: 'Annotations' }).click();
for (let iteration = 0; iteration < iterations; iteration++) {
// Hover and click "Add Tag" button
// Hover is needed here to "slow down" the actions while running in headless mode
await page.locator(`[aria-label="Notebook Entry"] >> nth = ${iteration}`).click();
await page.hover(`button:has-text("Add Tag")`);
await page.locator(`button:has-text("Add Tag")`).click();
// Click inside the tag search input
await page.locator('[placeholder="Type to select tag"]').click();
// Select the "Driving" tag
await page.locator('[aria-label="Autocomplete Options"] >> text=Driving').click();
// Hover and click "Add Tag" button
// Hover is needed here to "slow down" the actions while running in headless mode
await page.hover(`button:has-text("Add Tag")`);
await page.locator(`button:has-text("Add Tag")`).click();
// Click inside the tag search input
await page.locator('[placeholder="Type to select tag"]').click();
// Select the "Science" tag
await page.locator('[aria-label="Autocomplete Options"] >> text=Science').click();
}
return notebook;
}
export {
addNotebookEntry,
commitEntry,
createNotebookAndEntry,
createNotebookEntryAndTags,
dragAndDropEmbed,
enterTextEntry,
enterTextInLastEntry,
lockPage,
startAndAddRestrictedNotebookObject
};

241
e2e/helper/planningUtils.js Normal file
View File

@ -0,0 +1,241 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
import { createDomainObjectWithDefaults, createPlanFromJSON } from '../appActions.js';
import { expect } from '../pluginFixtures.js';
/**
* Asserts that the number of activities in the plan view matches the number of
* activities in the plan data within the specified time bounds. Performs an assertion
* for each activity in the plan data per group, using the earliest activity's
* start time as the start bound and the current activity's end time as the end bound.
* @param {import('@playwright/test').Page} page the page
* @param {Object} plan The raw plan json to assert against
* @param {string} planObjectUrl The URL of the object to assert against (plan or gantt chart)
*/
export async function assertPlanActivities(page, plan, planObjectUrl) {
const groups = Object.keys(plan);
for (const group of groups) {
for (let i = 0; i < plan[group].length; i++) {
// Set the startBound to the start time of the first activity in the group
const startBound = plan[group][0].start;
// Set the endBound to the end time of the current activity
let endBound = plan[group][i].end;
if (endBound === startBound) {
// Prevent oddities with setting start and end bound equal
// via URL params
endBound += 1;
}
// Switch to fixed time mode with all plan events within the bounds
await page.goto(
`${planObjectUrl}?tc.mode=fixed&tc.startBound=${startBound}&tc.endBound=${endBound}&tc.timeSystem=utc&view=plan.view`
);
// Assert that the number of activities in the plan view matches the number of
// activities in the plan data within the specified time bounds
await expect(page.locator('.activity-bounds')).toHaveCount(
Object.values(plan)
.flat()
.filter((event) =>
activitiesWithinTimeBounds(event.start, event.end, startBound, endBound)
).length
);
}
}
}
/**
* Returns true if the activities time bounds overlap, false otherwise.
* @param {number} start1 the start time of the first activity
* @param {number} end1 the end time of the first activity
* @param {number} start2 the start time of the second activity
* @param {number} end2 the end time of the second activity
* @returns {boolean} true if the activities overlap, false otherwise
*/
function activitiesWithinTimeBounds(start1, end1, start2, end2) {
return (
(start1 >= start2 && start1 <= end2) ||
(end1 >= start2 && end1 <= end2) ||
(start2 >= start1 && start2 <= end1) ||
(end2 >= start1 && end2 <= end1)
);
}
/**
* Asserts that the swim lanes / groups in the plan view matches the order of
* groups in the plan data.
* @param {import('@playwright/test').Page} page the page
* @param {Object} plan The raw plan json to assert against
* @param {string} objectUrl The URL of the object to assert against (plan or gantt chart)
*/
export async function assertPlanOrderedSwimLanes(page, plan, objectUrl) {
// Switch to the plan view
await page.goto(`${objectUrl}?view=plan.view`);
const planGroups = await page
.locator('.c-plan__contents > div > .c-swimlane__lane-label .c-object-label__name')
.all();
const groups = plan.Groups;
for (let i = 0; i < groups.length; i++) {
// Assert that the order of groups in the plan view matches the order of
// groups in the plan data
const groupName = planGroups[i];
await expect(groupName).toHaveText(groups[i].name);
}
}
/**
* Navigate to the plan view, switch to fixed time mode,
* and set the bounds to span all activities.
* @param {import('@playwright/test').Page} page
* @param {Object} planJson
* @param {string} planObjectUrl
*/
export async function setBoundsToSpanAllActivities(page, planJson, planObjectUrl) {
// Get the earliest start value
const start = getEarliestStartTime(planJson);
// Get the latest end value
const end = getLatestEndTime(planJson);
// Set the start and end bounds to the earliest start and latest end
await page.goto(
`${planObjectUrl}?tc.mode=fixed&tc.startBound=${start}&tc.endBound=${end}&tc.timeSystem=utc&view=plan.view`
);
}
/**
* @param {Object} planJson
* @returns {number}
*/
export function getEarliestStartTime(planJson) {
const activities = Object.values(planJson).flat();
return Math.min(...activities.map((activity) => activity.start));
}
/**
*
* @param {Object} planJson
* @returns {number}
*/
export function getLatestEndTime(planJson) {
const activities = Object.values(planJson).flat();
return Math.max(...activities.map((activity) => activity.end));
}
/**
*
* @param {object} planJson
* @returns {object}
*/
export function getFirstActivity(planJson) {
const groups = Object.keys(planJson);
const firstGroupKey = groups[0];
const firstGroupItems = planJson[firstGroupKey];
return firstGroupItems[0];
}
/**
* Uses the Open MCT API to set the status of a plan to 'draft'.
* @param {import('@playwright/test').Page} page
* @param {import('../../appActions').CreatedObjectInfo} plan
*/
export async function setDraftStatusForPlan(page, plan) {
await page.evaluate(async (planObject) => {
await window.openmct.status.set(planObject.uuid, 'draft');
}, plan);
}
export async function addPlanGetInterceptor(page) {
await page.waitForLoadState('load');
await page.evaluate(async () => {
await window.openmct.objects.addGetInterceptor({
appliesTo: (identifier, domainObject) => {
return domainObject && domainObject.type === 'plan';
},
invoke: (identifier, object) => {
if (object) {
object.sourceMap = {
orderedGroups: 'Groups'
};
}
return object;
}
});
});
}
/**
* Create a Plan from JSON and add it to a Timelist and Navigate to the Plan view
* @param {import('@playwright/test').Page} page
*/
export async function createTimelistWithPlanAndSetActivityInProgress(page, planJson) {
await page.goto('./', { waitUntil: 'domcontentloaded' });
const timelist = await createDomainObjectWithDefaults(page, {
name: 'Time List',
type: 'Time List'
});
await createPlanFromJSON(page, {
name: 'Test Plan',
json: planJson,
parent: timelist.uuid
});
// Ensure that all activities are shown in the expanded view
const groups = Object.keys(planJson);
const firstGroupKey = groups[0];
const firstGroupItems = planJson[firstGroupKey];
const firstActivityForPlan = firstGroupItems[0];
const lastActivity = firstGroupItems[firstGroupItems.length - 1];
const startBound = firstActivityForPlan.start;
const endBound = lastActivity.end;
// Switch to fixed time mode with all plan events within the bounds
await page.goto(
`${timelist.url}?tc.mode=fixed&tc.startBound=${startBound}&tc.endBound=${endBound}&tc.timeSystem=utc&view=timelist.view`
);
// Change the object to edit mode
await page.getByRole('button', { name: 'Edit Object' }).click();
// Find the display properties section in the inspector
await page.getByRole('tab', { name: 'View Properties' }).click();
// Switch to expanded view and save the setting
await page.getByLabel('Display Style').selectOption({ label: 'Expanded' });
// Click on the "Save" button
await page.getByRole('button', { name: 'Save' }).click();
await page.getByRole('listitem', { name: 'Save and Finish Editing' }).click();
const anActivity = page.getByRole('row').nth(0);
// Set the activity to in progress
await anActivity.click();
await page.getByRole('tab', { name: 'Activity' }).click();
await page.getByLabel('Activity Status', { exact: true }).selectOption({ label: 'In progress' });
}

189
e2e/helper/plotTagsUtils.js Normal file
View File

@ -0,0 +1,189 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
import { waitForPlotsToRender } from '../appActions.js';
import { expect } from '../pluginFixtures.js';
/**
* Given a canvas and a set of points, tags the points on the canvas.
* @param {import('@playwright/test').Page} page
* @param {HTMLCanvasElement} canvas a telemetry item with a plot
* @param {number} xEnd a telemetry item with a plot
* @param {number} yEnd a telemetry item with a plot
* @returns {Promise}
*/
export async function createTags({ page, canvas, xEnd = 700, yEnd = 520 }) {
await canvas.hover({ trial: true });
//Alt+Shift Drag Start to select some points to tag
await page.keyboard.down('Alt');
await page.keyboard.down('Shift');
await canvas.dragTo(canvas, {
sourcePosition: {
x: 1,
y: 1
},
targetPosition: {
x: xEnd,
y: yEnd
}
});
//Alt Drag End
await page.keyboard.up('Alt');
await page.keyboard.up('Shift');
//Wait for canvas to stabilize.
await canvas.hover({ trial: true });
// add some tags
await page.getByText('Annotations').click();
await page.getByRole('button', { name: /Add Tag/ }).click();
await page.getByPlaceholder('Type to select tag').click();
await page.getByText('Driving').click();
await page.getByRole('button', { name: /Add Tag/ }).click();
await page.getByPlaceholder('Type to select tag').click();
await page.getByText('Science').click();
}
/**
* Given a telemetry item (e.g., a Sine Wave Generator) with a plot, tests that the plot can be tagged.
* @param {import('@playwright/test').Page} page
* @param {import('../../../../appActions').CreatedObjectInfo} telemetryItem a telemetry item with a plot
* @returns {Promise}
*/
export async function testTelemetryItem(page, telemetryItem) {
// Check that telemetry item also received the tag
await page.goto(telemetryItem.url);
await expect(page.getByText('No tags to display for this item')).toBeVisible();
const canvas = page.locator('canvas').nth(1);
//Wait for canvas to stabilize.
await waitForPlotsToRender(page);
await expect(canvas).toBeInViewport();
await canvas.hover({ trial: true });
// click on the tagged plot point
await canvas.click({
position: {
x: 100,
y: 100
}
});
await expect(page.getByText('Science')).toBeVisible();
await expect(page.getByText('Driving')).toBeHidden();
}
/**
* Given a page, tests that tags are searchable, deletable, and persist across reloads.
* @param {import('@playwright/test').Page} page
* @returns {Promise}
*/
export async function basicTagsTests(page) {
// Search for Driving
await page.getByRole('searchbox', { name: 'Search Input' }).click();
// Clicking elsewhere should cause annotation selection to be cleared
await expect(page.getByText('No tags to display for this item')).toBeVisible();
//
await page.getByRole('searchbox', { name: 'Search Input' }).fill('driv');
// Always click on the first Sine Wave result
await page
.getByLabel('Search Result')
.getByText(/Sine Wave/)
.first()
.click();
// Delete Driving Tag
await page.hover('[aria-label="Tag"]:has-text("Driving")');
await page.locator('[aria-label="Remove tag Driving"]').click();
// Search for Science Tag
await page.getByRole('searchbox', { name: 'Search Input' }).click();
await page.getByRole('searchbox', { name: 'Search Input' }).fill('sc');
//Expect Science Tag to be present and and Driving Tags to be deleted
await expect(page.getByLabel('Search Result').first()).toContainText('Science');
await expect(page.getByLabel('Search Result').first()).not.toContainText('Driving');
// Search for Driving Tag and expect nothing found
await page.getByRole('searchbox', { name: 'Search Input' }).click();
await page.getByRole('searchbox', { name: 'Search Input' }).fill('driv');
await expect(page.getByText('No results found')).toBeVisible();
await page.reload({ waitUntil: 'domcontentloaded' });
await waitForPlotsToRender(page);
//Navigate to the Inspector and check that all tags have been removed
await expect(page.getByRole('tab', { name: 'Annotations' })).not.toHaveClass(/is-current/);
await page.getByRole('tab', { name: 'Annotations' }).click();
await expect(page.getByRole('tab', { name: 'Annotations' })).toHaveClass(/is-current/);
await expect(page.getByText('No tags to display for this item')).toBeVisible();
const canvas = page.locator('canvas').nth(1);
// click on the tagged plot point
await canvas.click({
position: {
x: 100,
y: 100
}
});
//Expect Science to be visible but Driving to be hidden
await expect(page.getByText('Science')).toBeVisible();
await expect(page.getByText('Driving')).toBeHidden();
//Click elsewhere
await page.locator('body').click();
//Click on tagged plot point again
await canvas.click({
position: {
x: 100,
y: 100
}
});
// Add Driving Tag again
await page.getByText('Annotations').click();
await page.getByRole('button', { name: /Add Tag/ }).click();
await page.getByPlaceholder('Type to select tag').click();
await page.getByText('Driving').click();
//Science and Driving Tags should be visible
await expect(page.getByText('Science')).toBeVisible();
await expect(page.getByText('Driving')).toBeVisible();
// Delete Driving Tag again
await page.hover('[aria-label="Tag"]:has-text("Driving")');
await page.locator('[aria-label="Remove tag Driving"]').click();
//Science Tag should be visible and Driving Tag should be hidden
await expect(page.getByText('Science')).toBeVisible();
await expect(page.getByText('Driving')).toBeHidden();
}

104
e2e/helper/stylingUtils.js Normal file
View File

@ -0,0 +1,104 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
import { expect } from '../pluginFixtures.js';
/**
* Converts a hex color value to its RGB equivalent.
*
* @param {string} hex - The hex color value. i.e. '#5b0f00'
* @returns {string} The RGB equivalent of the hex color.
*/
function hexToRGB(hex) {
const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
return result
? `rgb(${parseInt(result[1], 16)}, ${parseInt(result[2], 16)}, ${parseInt(result[3], 16)})`
: null;
}
/**
* Sets the background and text color of a given element.
*
* @param {import('@playwright/test').Page} page - The Playwright page object.
* @param {string} borderColorHex - The hex value of the border color to set, or 'No Style'.
* @param {string} backgroundColorHex - The hex value of the background color to set, or 'No Style'.
* @param {string} textColorHex - The hex value of the text color to set, or 'No Style'.
* @param {import('@playwright/test').Locator} locator - The Playwright locator for the element whose style is to be set.
*/
async function setStyles(page, borderColorHex, backgroundColorHex, textColorHex, locator) {
await locator.click(); // Assuming the locator is clickable and opens the style setting UI
await page.getByLabel('Set border color').click();
await page.getByLabel(borderColorHex).click();
await page.getByLabel('Set background color').click();
await page.getByLabel(backgroundColorHex).click();
await page.getByLabel('Set text color').click();
await page.getByLabel(textColorHex).click();
}
/**
* Checks if the styles of an element match the expected values.
*
* @param {string} expectedBorderColor - The expected border color in RGB format. Default is '#e6b8af' or 'rgb(230, 184, 175)'
* @param {string} expectedBackgroundColor - The expected background color in RGB format.
* @param {string} expectedTextColor - The expected text color in RGB format. Default is #aaaaaa or 'rgb(170, 170, 170)'
* @param {import('@playwright/test').Locator} locator - The Playwright locator for the element whose style is to be checked.
*/
async function checkStyles(
expectedBorderColor,
expectedBackgroundColor,
expectedTextColor,
locator
) {
const layoutStyles = await locator.evaluate((el) => {
return {
border: window.getComputedStyle(el).getPropertyValue('border-top-color'), //infer the left, right, and bottom
background: window.getComputedStyle(el).getPropertyValue('background-color'),
fontColor: window.getComputedStyle(el).getPropertyValue('color')
};
});
expect(layoutStyles.border).toContain(expectedBorderColor);
expect(layoutStyles.background).toContain(expectedBackgroundColor);
expect(layoutStyles.fontColor).toContain(expectedTextColor);
}
/**
* Checks if the font Styles of an element match the expected values.
*
* @param {string} expectedFontSize - The expected font size in '72px' format. Default is 'Default'
* @param {string} expectedFontWeight - The expected font Type. Format as '700' for bold. Default is 'Default'
* @param {string} expectedFontFamily - The expected font Type. Format as "\"Andale Mono\", sans-serif". Default is 'Default'
* @param {import('@playwright/test').Locator} locator - The Playwright locator for the element whose style is to be checked.
*/
async function checkFontStyles(expectedFontSize, expectedFontWeight, expectedFontFamily, locator) {
const layoutStyles = await locator.evaluate((el) => {
return {
fontSize: window.getComputedStyle(el).getPropertyValue('font-size'),
fontWeight: window.getComputedStyle(el).getPropertyValue('font-weight'),
fontFamily: window.getComputedStyle(el).getPropertyValue('font-family')
};
});
expect(layoutStyles.fontSize).toContain(expectedFontSize);
expect(layoutStyles.fontWeight).toContain(expectedFontWeight);
expect(layoutStyles.fontFamily).toContain(expectedFontFamily);
}
export { checkFontStyles, checkStyles, hexToRGB, setStyles };

View File

@ -0,0 +1,29 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
// This should be used to install the Darkmatter theme for Open MCT.
// e.g.
// await page.addInitScript({ path: path.join(__dirname, 'useDarkmatterTheme.js') });
document.addEventListener('DOMContentLoaded', () => {
const openmct = window.openmct;
openmct.install(openmct.plugins.DarkmatterTheme());
});

View File

@ -0,0 +1,30 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
// This should be used to install the Snow theme for Open MCT. Espresso is the default
// e.g.
// await page.addInitScript({ path: path.join(__dirname, 'useSnowTheme.js') });
document.addEventListener('DOMContentLoaded', () => {
const openmct = window.openmct;
openmct.install(openmct.plugins.Snow());
});

8
e2e/index.js Normal file
View File

@ -0,0 +1,8 @@
// Import everything from the specific fixture files
import * as appActions from './appActions.js';
import * as avpFixtures from './avpFixtures.js';
import * as baseFixtures from './baseFixtures.js';
import * as pluginFixtures from './pluginFixtures.js';
// Export these as named exports
export { appActions, avpFixtures, baseFixtures, pluginFixtures };

1449
e2e/package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

27
e2e/package.json Normal file
View File

@ -0,0 +1,27 @@
{
"name": "openmct-e2e",
"version": "4.1.0-next",
"description": "The Open MCT e2e framework",
"type": "module",
"module": "index.js",
"exports": {
".": {
"import": "./index.js"
}
},
"scripts": {
"test": "npx playwright test",
"test:visual": "percy exec"
},
"devDependencies": {
"@percy/cli": "1.27.4",
"@percy/playwright": "1.0.4",
"@playwright/test": "1.48.1",
"@axe-core/playwright": "4.8.5"
},
"author": {
"name": "National Aeronautics and Space Administration",
"url": "https://www.nasa.gov"
},
"license": "Apache-2.0"
}

View File

@ -0,0 +1,87 @@
// playwright.config.js
// @ts-check
// eslint-disable-next-line no-unused-vars
import { devices } from '@playwright/test';
import { fileURLToPath } from 'url';
const MAX_FAILURES = 5;
const NUM_WORKERS = 2;
/** @type {import('@playwright/test').PlaywrightTestConfig} */
const config = {
retries: 2, //Retries 2 times for a total of 3 runs. When running sharded and with max-failures=5, this should ensure that flake is managed without failing the full suite
testDir: 'tests',
grepInvert: /@mobile/, //Ignore mobile tests
testIgnore: '**/*.perf.spec.js', //Ignore performance tests and define in playwright-performance.config.js
timeout: 60 * 1000,
webServer: {
command: 'npm run start:coverage',
cwd: fileURLToPath(new URL('../', import.meta.url)), // Provide cwd for the root of the project
url: 'http://localhost:8080/#',
timeout: 200 * 1000,
reuseExistingServer: true //This was originally disabled to prevent differences in local debugging vs. CI. However, it significantly speeds up local debugging.
},
maxFailures: MAX_FAILURES, //Limits failures to 5 to reduce CI Waste
workers: NUM_WORKERS, //Limit to 2 for CircleCI Agent
use: {
baseURL: 'http://localhost:8080/',
headless: true,
ignoreHTTPSErrors: true,
screenshot: 'only-on-failure',
trace: 'on-first-retry',
video: 'off',
// @ts-ignore - custom configuration option for nyc codecoverage output path
coveragePath: fileURLToPath(new URL('../.nyc_output', import.meta.url))
},
projects: [
{
name: 'chrome',
testMatch: '**/*.e2e.spec.js', // only run e2e tests
use: {
browserName: 'chromium'
}
},
{
name: 'MMOC',
testMatch: '**/*.e2e.spec.js', // only run e2e tests
grepInvert: /@snapshot/,
use: {
browserName: 'chromium',
viewport: {
width: 2560,
height: 1440
}
}
},
{
name: 'firefox',
testMatch: '**/*.e2e.spec.js', // only run e2e tests
grepInvert: /@snapshot/,
use: {
browserName: 'firefox'
}
},
{
name: 'chrome-beta', //Only Chrome Beta is available on ubuntu -- not chrome canary
testMatch: '**/*.e2e.spec.js', // only run e2e tests
grepInvert: /@snapshot/,
use: {
browserName: 'chromium',
channel: 'chrome-beta'
}
}
],
reporter: [
['list'],
[
'html',
{
open: 'never',
outputFolder: '../html-test-results' //Must be in different location due to https://github.com/microsoft/playwright/issues/12840
}
],
['junit', { outputFile: '../test-results/results.xml' }]
]
};
export default config;

View File

@ -0,0 +1,89 @@
// playwright.config.js
// @ts-check
import { fileURLToPath } from 'url';
/** @type {import('@playwright/test').PlaywrightTestConfig} */
const config = {
retries: 0,
testDir: 'tests',
testMatch: '**/*.e2e.spec.js', // only run e2e tests
testIgnore: '**/*.perf.spec.js',
timeout: 30 * 1000,
webServer: {
command: 'npm run start:coverage',
cwd: fileURLToPath(new URL('../', import.meta.url)), // Provide cwd for the root of the project
url: 'http://localhost:8080/#',
timeout: 120 * 1000,
reuseExistingServer: true
},
workers: 1,
use: {
browserName: 'chromium',
baseURL: 'http://localhost:8080/',
headless: false,
ignoreHTTPSErrors: true,
screenshot: 'only-on-failure',
trace: 'retain-on-failure',
video: 'off'
},
projects: [
{
name: 'chrome',
use: {
browserName: 'chromium'
}
},
{
name: 'MMOC',
grepInvert: /@snapshot/,
use: {
browserName: 'chromium',
viewport: {
width: 2560,
height: 1440
}
}
},
{
name: 'safari',
grepInvert: /@snapshot/,
use: {
browserName: 'webkit'
}
},
{
name: 'firefox',
grepInvert: /@snapshot/,
use: {
browserName: 'firefox'
}
},
{
name: 'canary',
grepInvert: /@snapshot/,
use: {
browserName: 'chromium',
channel: 'chrome-canary' //Note this is not available in ubuntu/CircleCI
}
},
{
name: 'chrome-beta',
grepInvert: /@snapshot/,
use: {
browserName: 'chromium',
channel: 'chrome-beta'
}
}
],
reporter: [
['list'],
[
'html',
{
open: 'on-failure',
outputFolder: '../html-test-results' //Must be in different location due to https://github.com/microsoft/playwright/issues/12840
}
]
]
};
export default config;

View File

@ -0,0 +1,72 @@
// playwright.config.js
// @ts-check
import { devices } from '@playwright/test';
const MAX_FAILURES = 5;
import { fileURLToPath } from 'url';
/** @type {import('@playwright/test').PlaywrightTestConfig} */
const config = {
retries: 1, //Retries 2 times for a total of 3 runs. When running sharded and with max-failures=5, this should ensure that flake is managed without failing the full suite
testDir: 'tests',
testIgnore: '**/*.perf.spec.js', //Ignore performance tests and define in playwright-performance.config.js
timeout: 30 * 1000,
webServer: {
command: 'npm run start:coverage',
cwd: fileURLToPath(new URL('../', import.meta.url)), // Provide cwd for the root of the project
url: 'http://localhost:8080/#',
timeout: 200 * 1000,
reuseExistingServer: true //This was originally disabled to prevent differences in local debugging vs. CI. However, it significantly speeds up local debugging.
},
maxFailures: MAX_FAILURES, //Limits failures to 5 to reduce CI Waste
workers: 1, //Limit to 1 due to resource constraints similar to https://github.com/percy/cli/discussions/1067
use: {
baseURL: 'http://localhost:8080/',
headless: true,
ignoreHTTPSErrors: true,
screenshot: 'only-on-failure',
trace: 'on-first-retry',
video: 'off',
// @ts-ignore - custom configuration option for nyc codecoverage output path
coveragePath: fileURLToPath(new URL('../.nyc_output', import.meta.url))
},
projects: [
{
name: 'ipad',
grep: /@mobile/,
use: {
storageState: fileURLToPath(
new URL('./test-data/display_layout_with_child_layouts.json', import.meta.url)
),
browserName: 'webkit',
...devices['iPad (gen 7) landscape'] // Complete List https://github.com/microsoft/playwright/blob/main/packages/playwright-core/src/server/deviceDescriptorsSource.json
}
},
{
name: 'iphone',
grep: /@mobile/,
use: {
storageState: fileURLToPath(
new URL('./test-data/display_layout_with_child_layouts.json', import.meta.url)
),
browserName: 'webkit',
...devices['iPhone 14 Pro'] // Complete List https://github.com/microsoft/playwright/blob/main/packages/playwright-core/src/server/deviceDescriptorsSource.json
}
}
],
reporter: [
['list'],
[
'html',
{
open: 'never',
outputFolder: '../html-test-results' //Must be in different location due to https://github.com/microsoft/playwright/issues/12840
}
],
['junit', { outputFile: '../test-results/results.xml' }]
]
};
export default config;

View File

@ -0,0 +1,43 @@
// playwright.config.js
// @ts-check
import { fileURLToPath } from 'url';
/** @type {import('@playwright/test').PlaywrightTestConfig} */
const config = {
retries: 1, //Only for debugging purposes for trace: 'on-first-retry'
testDir: 'tests/performance/',
testMatch: '*.contract.perf.spec.js', //Run everything except contract tests which require marks in dev mode
timeout: 60 * 1000,
workers: 1, //Only run in serial with 1 worker
webServer: {
command: 'npm run start', //need development mode for performance.marks and others
cwd: fileURLToPath(new URL('../', import.meta.url)), // Provide cwd for the root of the project
url: 'http://localhost:8080/#',
timeout: 200 * 1000,
reuseExistingServer: false
},
use: {
browserName: 'chromium',
baseURL: 'http://localhost:8080/',
headless: true,
ignoreHTTPSErrors: false, //HTTP performance varies!
screenshot: 'off',
trace: 'on-first-retry',
video: 'off'
},
projects: [
{
name: 'chrome',
testIgnore: '*.memory.perf.spec.js', //Do not run memory tests without proper flags. Shouldn't get here
use: {
browserName: 'chromium'
}
}
],
reporter: [
['list'],
['junit', { outputFile: '../test-results/results.xml' }],
['json', { outputFile: '../test-results/results.json' }]
]
};
export default config;

View File

@ -0,0 +1,60 @@
// playwright.config.js
// @ts-check
import { fileURLToPath } from 'url';
/** @type {import('@playwright/test').PlaywrightTestConfig} */
const config = {
retries: 0, //Only for debugging purposes for trace: 'on-first-retry'
testDir: 'tests/performance/',
testIgnore: '*.contract.perf.spec.js', //Run everything except contract tests which require marks in dev mode
timeout: 60 * 1000,
workers: 1, //Only run in serial with 1 worker
webServer: {
command: 'npm run start:prod', //Production mode
cwd: fileURLToPath(new URL('../', import.meta.url)), // Provide cwd for the root of the project
url: 'http://localhost:8080/#',
timeout: 200 * 1000,
reuseExistingServer: false //Must be run with this option to prevent dev mode
},
use: {
baseURL: 'http://localhost:8080/',
headless: true,
ignoreHTTPSErrors: false, //HTTP performance varies!
screenshot: 'off',
trace: 'on-first-retry',
video: 'off'
},
projects: [
{
name: 'chrome-memory',
testMatch: '*.memory.perf.spec.js', //Only run memory tests
use: {
browserName: 'chromium',
launchOptions: {
args: [
'--no-sandbox',
'--disable-notifications',
'--use-fake-ui-for-media-stream',
'--use-fake-device-for-media-stream',
'--js-flags=--no-move-object-start --expose-gc',
'--enable-precise-memory-info',
'--display=:100'
]
}
}
},
{
name: 'chrome',
testIgnore: '*.memory.perf.spec.js', //Do not run memory tests without proper flags
use: {
browserName: 'chromium'
}
}
],
reporter: [
['list'],
['junit', { outputFile: '../test-results/results.xml' }],
['json', { outputFile: '../test-results/results.json' }]
]
};
export default config;

View File

@ -0,0 +1,61 @@
// playwright.config.js
// @ts-check
import { fileURLToPath } from 'url';
/** @type {import('@playwright/test').PlaywrightTestConfig<{ theme: string }>} */
const config = {
retries: 0, // Visual tests should never retry due to snapshot comparison errors. Leaving as a shim
testDir: 'tests/visual-a11y',
testMatch: '**/*.visual.spec.js', // only run visual tests
timeout: 60 * 1000,
workers: 1, //Lower stress on Circle CI Agent for Visual tests https://github.com/percy/cli/discussions/1067
webServer: {
command: 'npm run start:coverage',
cwd: fileURLToPath(new URL('../', import.meta.url)), // Provide cwd for the root of the project
url: 'http://localhost:8080/#',
timeout: 200 * 1000,
reuseExistingServer: true //This was originally disabled to prevent differences in local debugging vs. CI. However, it significantly speeds up local debugging.
},
use: {
baseURL: 'http://localhost:8080/',
headless: true, // this needs to remain headless to avoid visual changes due to GPU rendering in headed browsers
ignoreHTTPSErrors: true,
screenshot: 'only-on-failure',
trace: 'on-first-retry',
video: 'off'
},
projects: [
{
name: 'chrome',
use: {
browserName: 'chromium'
}
},
{
name: 'chrome-snow-theme', //Runs the same visual tests but with snow-theme enabled
use: {
browserName: 'chromium',
theme: 'snow'
}
},
{
name: 'darkmatter-theme', //Runs the same visual tests but with darkmatter-theme
use: {
browserName: 'chromium',
theme: 'darkmatter'
}
}
],
reporter: [
['list'],
['junit', { outputFile: '../test-results/results.xml' }],
[
'html',
{
open: 'on-failure',
outputFolder: '../html-test-results' //Must be in different location due to https://github.com/microsoft/playwright/issues/12840
}
]
]
};
export default config;

View File

@ -0,0 +1,71 @@
// playwright.config.js
// @ts-check
import { devices } from '@playwright/test';
import { fileURLToPath } from 'url';
/** @type {import('@playwright/test').PlaywrightTestConfig} */
const config = {
retries: 0, //Retries are not needed with watch mode
testDir: 'tests',
timeout: 60 * 1000,
webServer: {
command: 'npm run start', //Start in dev mode for hot reloading
cwd: fileURLToPath(new URL('../', import.meta.url)), // Provide cwd for the root of the project
url: 'http://localhost:8080/#',
timeout: 200 * 1000,
reuseExistingServer: true //This was originally disabled to prevent differences in local debugging vs. CI. However, it significantly speeds up local debugging.
},
workers: '75%', //Limit to 75% of the CPU to support running with dev server
use: {
baseURL: 'http://localhost:8080/',
headless: true,
ignoreHTTPSErrors: true,
screenshot: 'only-on-failure',
trace: 'on-first-retry',
video: 'off'
},
projects: [
{
name: 'chrome',
testMatch: '**/*.spec.js', // run all tests
use: {
browserName: 'chromium'
}
},
{
name: 'ipad',
grep: /@mobile/,
use: {
storageState: fileURLToPath(
new URL('./test-data/display_layout_with_child_layouts.json', import.meta.url)
),
browserName: 'webkit',
...devices['iPad (gen 7) landscape'] // Complete List https://github.com/microsoft/playwright/blob/main/packages/playwright-core/src/server/deviceDescriptorsSource.json
}
},
{
name: 'iphone',
grep: /@mobile/,
use: {
storageState: fileURLToPath(
new URL('./test-data/display_layout_with_child_layouts.json', import.meta.url)
),
browserName: 'webkit',
...devices['iPhone 14 Pro'] // Complete List https://github.com/microsoft/playwright/blob/main/packages/playwright-core/src/server/deviceDescriptorsSource.json
}
}
],
reporter: [
['list'],
[
'html',
{
open: 'never',
outputFolder: '../html-test-results' //Must be in different location due to https://github.com/microsoft/playwright/issues/12840
}
],
['junit', { outputFile: '../test-results/results.xml' }]
]
};
export default config;

165
e2e/pluginFixtures.js Normal file
View File

@ -0,0 +1,165 @@
/*****************************************************************************
* Open MCT, Copyright (c) 2014-2024, United States Government
* as represented by the Administrator of the National Aeronautics and Space
* Administration. All rights reserved.
*
* Open MCT is licensed under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* Open MCT includes source code licensed under additional open source
* licenses. See the Open Source Licenses file (LICENSES.md) included with
* this source code distribution or the Licensing information page available
* at runtime from the About dialog for additional information.
*****************************************************************************/
/**
* The file contains custom fixtures which extend the base functionality of the Playwright fixtures
* and appActions. These fixtures should be generalized across all plugins.
*/
// import { createDomainObjectWithDefaults } from './appActions.js';
import { fileURLToPath } from 'url';
import { expect, request, test } from './baseFixtures.js';
/**
* @typedef {Object} ObjectCreateOptions
* @property {string} type
* @property {string} name
*/
/**
* **NOTE: This feature is a work-in-progress and should not currently be used.**
*
* Used to create a new domain object as a part of getOrCreateDomainObject.
* @type {Map<string, string>}
*/
// const createdObjects = new Map();
/**
* This action will create a domain object for the test to reference and return the uuid. If an object
* of a given name already exists, it will return the uuid of that object to the test instead of creating
* a new file. The intent is to move object creation out of test suites which are not explicitly worried
* about object creation, while providing a consistent interface to retrieving objects in a persistentContext.
* @param {import('@playwright/test').Page} page
* @param {ObjectCreateOptions} options
* @returns {Promise<string>} uuid of the domain object
*/
// async function getOrCreateDomainObject(page, options) {
// const { type, name } = options;
// const objectName = name ? `${type}:${name}` : type;
// if (createdObjects.has(objectName)) {
// return createdObjects.get(objectName);
// }
// await createDomainObjectWithDefaults(page, type, name);
// const uuid = getHashUrlToDomainObject(page);
// createdObjects.set(objectName, uuid);
// return uuid;
// }
/**
* **NOTE: This feature is a work-in-progress and should not currently be used.**
*
* If provided, these options will be used to get or create the desired domain object before
* any tests or test hooks have run.
* The `uuid` of the `domainObject` will then be available to use within the scoped tests.
*
* ### Example:
* ```js
* test.describe("My test suite", () => {
* test.use({ objectCreateOptions: { type: "Telemetry Table", name: "My Telemetry Table" }});
* test("'My Telemetry Table' is created and provides a uuid", async ({ page, domainObject }) => {
* const { uuid } = domainObject;
* expect(uuid).toBeDefined();
* }))
* });
* ```
* @type {ObjectCreateOptions}
*/
// const objectCreateOptions = null;
/**
* The default theme for VIPER and Open MCT is the 'espresso' theme. Overriding this value with 'snow' in our playwright config.js
* will override the default theme by injecting the 'snow' theme on launch.
*
* ### Example:
* ```js
* projects: [
* {
* name: 'chrome-snow-theme',
* use: {
* browserName: 'chromium',
* theme: 'snow'
* ```
* @type {'snow' | 'espresso'}
*/
const theme = 'espresso';
/**
* The name of the "My Items" folder in the domain object tree.
*
* Default: `"My Items"`
*
* @type {string}
*/
const myItemsFolderName = 'My Items';
const extendedTest = test.extend({
// This should follow in the Project's configuration. Can be set to 'snow' in playwright config.js
theme: [theme, { option: true }],
// eslint-disable-next-line no-shadow
page: async ({ page, theme }, use, testInfo) => {
if (theme === 'snow') {
//inject snow theme
await page.addInitScript({
path: fileURLToPath(new URL('./helper/useSnowTheme.js', import.meta.url))
});
} else if (theme === 'darkmatter') {
//inject darkmatter theme
await page.addInitScript({
path: fileURLToPath(new URL('./helper/useDarkmatterTheme.js', import.meta.url))
});
}
// Attach info about the currently running test and its project.
// This will be used by appActions to fill in the created
// domain object's notes.
page.testNotes = [`${testInfo.titlePath.join('\n')}`, `${testInfo.project.name}`].join('\n');
await use(page);
},
myItemsFolderName: [myItemsFolderName, { option: true }],
// eslint-disable-next-line no-shadow
openmctConfig: async ({ myItemsFolderName }, use) => {
await use({ myItemsFolderName });
}
});
export { expect, request, extendedTest as test };
/**
* Takes a readable stream and returns a string.
* @param {ReadableStream} readable - the readable stream
* @return {Promise<String>} the stringified stream
*/
export async function streamToString(readable) {
let result = '';
for await (const chunk of readable) {
result += chunk;
}
return result;
}

Some files were not shown because too many files have changed in this diff Show More