Skip to content

Releases: NASA-AMMOS/aerie-ui

v1.4.0

03 Apr 22:12
f5ff556
Compare
Choose a tag to compare

Summary

  • Activity presets menu added for activity directives
  • Activity directives and simulated activities (spans) are now distinct
  • New timeline visualization for activities
  • Lock/unlock toggle added for activity directive form
  • Simulation panel includes start and end time input for temporal subset simulation
  • Simulation panel has new simulation history for toggling between past simulations
  • Timeline context menu for quicker interactions (e.g. delete activity)

What's Changed

Breaking Changes

Please see our latest upgrade guide for complete instructions for upgrading from 1.3.0 to 1.4.0.

New Features

Bug Fixes

  • Set Sim Bounds to Plan Bounds on Plan Creation by @Mythicaeda in #508
  • Explicitly check anchor_id against null by @duranb in #510
  • Remove logic in table that's setting selected row to null by @duranb in #513
  • Use $activityDirectivesList to take advantage of optimistic updates in directives table by @duranb in #516
  • Pass 'disabled' prop to activity preset input by @camargo in #523
  • Fix sim panel default args by @camargo in #526
  • Firefox activity selection fix by @AaronPlave in #530
  • Ensure input exists before attempting to modify properties by @AaronPlave in #532
  • Fix sim time for spans by @AaronPlave in #531
  • Fix for context menu assuming spans exist for a directive by @AaronPlave in #543
  • Account for simulation bounds in resource layers and timeline histogram by @AaronPlave in #549

Refactoring

  • Update Stellar and use new plan left and right arrow icons by @AaronPlave in #538

Testing

Documentation

Full Changelog: v1.3.0...v1.4.0

v1.3.0

17 Mar 16:24
a019ccc
Compare
Choose a tag to compare

Summary

  • Simulation is now correctly marked as dirty if anything in the plan or simulation config changes
  • The simulation error trace is now also shown in the error console along with the error message

What's Changed

Bug Fixes

  • Update stellar theme for ag-grid to use correct font source by @duranb in #444
  • Include external resources in resource layer filter options and sort options by @AaronPlave in #447
  • ActionDataGrid deleteItem event fix by @AaronPlave in #448
  • Mark Simulation as Dirty when Simulation Revision Changes by @Mythicaeda in #449

Refactoring

  • Remove deep GQL query for Seq JSON by @camargo in #439
  • Show both data and trace in error console if both are present by @mattdailis in #446

Build System and Dependencies

Full Changelog: v1.2.0...v1.3.0

v1.2.0

07 Mar 02:23
616f550
Compare
Choose a tag to compare

Summary

  • A big update to the view menu which makes view management easier. This includes a streamlined modal for listing views, and a toggle for changing the visible view grid panels. We also removed the view JSON editor since all view properties can now be updated directly in the UI.
  • The UI now automatically creates a scheduling specification for a plan if one does not already exist.
  • Lots of important bug fixes. See the list below.

What's Changed

Breaking Changes

Please see our latest upgrade guide for complete instructions for upgrading from 1.1.0 to 1.2.0.

New Features

  • Toggle view panels via new menu buttons by @duranb in #401
  • Add view download button to ViewsTable by @duranb in #418

Bug Fixes

  • Revalidate when selected activity changes by @duranb in #393
  • Fix error with nulls in target/source for conflicting and non-conflicting activities by @camargo in #394
  • Add check for existing selected nodes when auto scrolling table by @duranb in #402
  • Upgrade deps to latest by @camargo in #410
  • Make sure Monaco Editor setValue is not null by @camargo in #411
  • Support plans without scheduling specs by @jeffpamer in #403
  • Prevent plan creation invalid date by @duranb in #412
  • Pass update through view toggle by @camargo in #423
  • Fix menu overlapping by @camargo in #425

Refactoring

  • Update the UI with the changes to Sequences eDSL by @goetzrrGit in #383
  • Replace View Editor with View Upload Modal by @duranb in #391
  • Change the "reset view" copy depending on if viewing a saved view by @duranb in #424
  • Bump stellar version by @duranb in #431

New Contributors

Full Changelog: v1.1.0...v1.2.0

v1.1.0

14 Feb 23:15
de2199e
Compare
Choose a tag to compare

Summary of New Features

  • You can now anchor activity directives to each other using the "Selected Activity" panel!
  • The UI view menu has been given a make over. It is now easier to manage UI views, and you are now notified if a UI view has unsaved changes.
  • The plan page nav bar menus (simulation, scheduling, constraints, and expansion) have been changed to status menus with action buttons. You can still visit those panels by changing the panels in the panel menu directly.
  • Table items are now automatically scrolled to when selected (e.g. the activity table selected activity).

Breaking Changes

There are no UI breaking changes in this release. Please see our latest upgrade guide for complete instructions for upgrading from 1.0.2 to 1.1.0.

What's Changed

New Features

Bug Fixes

  • Draw ParameterBaseRightAdornments on Struct Params by @Mythicaeda in #384
  • Account for null target activity in non-conflicting activity in plan merge by @duranb in #388

Refactoring

Testing

  • Update banananation model to latest for e2e tests by @camargo in #368
  • Reactivate scheduling tests by @camargo in #373
  • Fix e2e test for opening GraphQL console by @camargo in #378

Continuous Integration

Full Changelog: v1.0.2...v1.1.0

v1.0.2

25 Jan 23:35
7df7089
Compare
Choose a tag to compare

Summary of New Features

  • Major update to timeline layer editing. The timeline editor now has the ability to add, update, delete, and customize layers.
  • The delete key now works for deleting activities when focused on the timeline.
  • A clear error console button has been added for errors that are dismissible.
  • Tables now have resize options in their context menu.
  • Scheduling goals and conditions now clearly show their associated plan.
  • The create plan date picker now pre-populates the end time with the start time if a start time is selected.
  • The UI Docker image now is auto-built for multiple machine architectures.
  • Ellipsis have been added to the activity types list to account for overflow of long activity names.
  • Migrated to a new documentation site: https://nasa-ammos.github.io/aerie-docs

Breaking Changes

Please see our latest upgrade guide for complete instructions for upgrading from 1.0.1 to 1.0.2.

  • The UI view /view/validate endpoint was moved from the gateway to the UI server. Any downstream code must now POST to /view/validate on the UI server. The UI server has the same API so no other changes are needed other than changing the target server. So if you are running Aerie locally with the default ports and configuration you would change http://localhost:9000/view/validate to http://localhost/view/validate.

  • The UI view schema has replaced Regex filters with lists specifying the given type. To show activities in a timeline layer you now need to specify the list of activity types you want to show. For example to show activities with type BakeBananaBread, BananaNap, and BiteBanana you can do:

    {
      "filter": {
        "activity": {
          "types": ["BakeBananaBread", "BananaNap", "BiteBanana"]
        }
      }
    }

    Similarly for resources you now need to specify a resource name you want to show. For example to show the /peel resource you can do:

    {
      "filter": {
        "resource": {
          "names": ["/peel"]
        }
      }
    }

    These replace the type and name field from the activity and resource filters respectively. Any downstream code needs to be updated to account for this.

What's Changed

New Features

Bug Fixes

  • Forward events to recursive calls of the SplitGrid component by @AaronPlave in #312
  • Do not clear last toast when same message is spammed quickly by @duranb in #329
  • Update showOnInit to showOnCreate by @duranb in #336
  • Add ellipsis to list item by @camargo in #348
  • Replace simulation subscriptions with queries by @camargo in #351

Refactoring

Testing

  • Output JUnit XML for unit tests by @camargo in #316
  • Update expansion rule to latest format in e2e test by @camargo in #355

Continuous Integration

  • Add multi-arch image build, update action versions by @skovati in #322

Build System and Dependencies

Full Changelog: v1.0.1...v1.0.2

v1.0.1

19 Dec 19:35
Compare
Choose a tag to compare

Summary of New Features

  • Timeline editor includes a new form to edit the timeline and timeline rows. Layer editing coming soon.
  • Create and edit global scheduling conditions, and use them in scheduling for a plan.
  • Add more errors to console and allow dragging-to-resize the console height.
  • Add app route information to page title for better location context.
  • Various bug fixes.

What's Changed

New Features

Bug Fixes

  • Set valueSource to none for computed attributes by @mattdailis in #260
  • Properly reset highlighted activity keys in merge review by @AaronPlave in #263
  • Handle case for undefined columnStates in table menu by @duranb in #271
  • Create scheduling specification on branch creation by @Mythicaeda in #272
  • Account for leap year when validating timestamps by @duranb in #310

Refactoring

Continuous Integration

Build System and Dependencies

Full Changelog: v1.0.0...v1.0.1

v1.0.0

15 Nov 02:16
833792b
Compare
Choose a tag to compare

Summary of New Features

  • Plan merge and collaboration. You can now create a branch from a plan, make a merge request to a parent plan, and interactively review merge requests!
  • Long y-axis labels for timeline rows are now truncated in the middle with ellipsis.
  • Text editors (e.g. sequences, scheduling goals, etc.) now notify of unsaved changes if you change form fields (before it just notified of changes if you changed the editor).
  • Vertical guides have been updated to a sleek new design. You can now click-to-drop or click-to-delete vertical guides for a timeline.
  • A link to our documentation website has been added to the nav bar menu.
  • An awesome new Aerie logo by @lklyne has been added to the nav bar.

What's Changed

New Features

Bug Fixes

Refactoring

Testing

Continuous Integration

Documentation

Build System and Dependencies

Other Changes

New Contributors

Full Changelog: v0.13.2...v1.0.0

v0.13.2

19 Oct 19:53
Compare
Choose a tag to compare

Summary of New Features

  • A timeline histogram that shows the distribution of activities in the timeline and a constraint violations heat map.
  • New timeline time-range slider and better timeline zoom controls with hotkeys.
  • Improved timeline tick rendering.
  • Error console that displays simulation and scheduling errors. As the system evolves more errors will be displayed here.
  • An activity table column selection menu for adding and removing columns. Column preferences are saved with the UI view.
  • Two new buttons have been added to the activity table header to auto-resize columns based on screen width, or content.

Breaking Changes

  • The UI view activity table column field start_time value has been renamed to start_time_doy. An example can be found here.

What's Changed

New Features

Bug Fixes

  • fix: e2e scheduling test by @camargo in #169
  • fix: get activities by simulation dataset id by @camargo in #172
  • fix: update simulation error derivation to return empty array instead of null by @duranb in #175
  • fix: set z-index of console so panels do not overlap over it by @duranb in #177
  • fix: tooltip positioning during box drag by @AaronPlave in #189
  • fix: timeline scroll bar by @camargo in #192
  • fix: make activity table use start_time_doy instead of start_time by @duranb in #194

Refactoring

Testing

Continuous Integration

  • ci: use Java 19 to build Aerie in test workflow by @camargo in #191

Documentation

Build System and Dependencies

Full Changelog: v0.13.1...0.13.2

v0.13.1

03 Oct 19:51
Compare
Choose a tag to compare

Summary of New Features

  • Simulation and scheduling results are now subscribed to. Thus you no longer need to keep pressing the 'simulate' or 'scheduling' button to get results. After pressing the button once the results will be automatically available in the UI once the operation completes.
  • Right-click context menu for tables so you can select and delete rows.
  • Icons for parameter input fields that show the data source of the parameter. For example a parameter can come from a model or user.
  • Vertical timeline cursor that shows the time when you hover over a timeline row.
  • New view menu on the plan page so you can save a view from the top-level navigation bar.
  • Timeline row headers with row name and collapsible state.
  • Text editors now have save hotkey (cmd+s or ctrl+s).
  • Expansion set table is now filterable.
  • Create a sequence by uploading a .seq.json file.
  • Added up and down arrows to adjust scheduling goal priority in the goal list on the plan page.
  • Added sweet Aerie logo to app header and favicon!

Breaking Changes

  • All Aerie UI environment variables are now prefixed with PUBLIC_. This is for security so we do not expose non-application environment variables to the browser client. Please see the updated environment variable documentation and docker-compose.yml for examples of what you need to update.
  • The UI view timeline row schema has been updated with an expanded and name property to accommodate the new timeline row headers. You will need to update your view JSONs with these two properties for every timeline row. An example can be seen here and here.
  • The UI view IFrame component has been renamed to IFramePanel.

What's Changed

New Features

  • feat: auto query scheduling and simulation results by @camargo in #131
  • feat: add context menu to tables with deletable items by @duranb in #132
  • feat: subscribable store vars by @camargo in #136
  • feat: display activity directive value source and validation messages by @AaronPlave in #139
  • feat: prevent menu from going off screen by @duranb in #140
  • feat: add vertical timeline cursor by @jeffpamer in #141
  • feat: add view menu to plan page by @camargo in #142
  • feat: timeline row headers by @AaronPlave in #143
  • feat: add save hot key to editors by @camargo in #144
  • feat: add iframe panel component by @camargo in #145
  • feat: filterable expansion set table by @duranb in #148
  • feat: make all drag handles as large as default activity view's by @duranb in #149
  • feat: subscribe to sim datasets and activities by @camargo in #150
  • feat: create sequence from .seq.json file by @camargo in #156
  • feat: display activity name in timeline by @camargo in #157
  • feat: more intuitive scheduling goal priority controls by @jeffpamer in #165
  • feat: add logo and favicon by @jeffpamer in #167

Bug Fixes

  • fix: sample real profile rate calculation for y-value by @camargo in #135
  • fix: invalidate all routes after login/logout by @camargo in #160
  • fix: display activity label correctly for children by @camargo in #161
  • fix: overlapping activities by @camargo in #163
  • fix: query id instead of dataset_id by @JoelCourtney in #164
  • fix: update seq json queries to latest spec by @camargo in #168

Refactoring

  • refactor: update parameter validation schema by @camargo in #133
  • refactor: subscribe to activity directive metadata schemas by @camargo in #134
  • refactor: add new dictionary to store after create by @camargo in #138
  • refactor: prefix public env vars by @camargo in #147

Testing

Continuous Integration

  • ci: add nasa-scrub conversion utilities by @skovati in #155

Build System and Dependencies

Styling

New Contributors

  • @JoelCourtney made their first contribution in #164
  • Shout-out to @lklyne who has continued to provide amazing designs for this application

Full Changelog: v0.13.0...v0.13.1

v0.13.0

06 Sep 18:25
Compare
Choose a tag to compare

Summary of New Features

  • New activity directive metadata fields were added to the selected activity form. See the wiki entry for how to add your own metadata fields to an activity type.
  • All tables in the UI now use a data grid with row filtering, row sorting, column resizing, and column reordering.
  • You can now delete many activities at a time in the activities table by selecting multiple activities and right clicking.
  • You can now delete many views at a time in the views table by selecting multiple views and right clicking.
  • Dragging activities on the timeline is now locked by default. You can shift+click an activity to unlock and drag it.
  • Activity table changes (e.g. column sizes or sorts) are now saved to UI view.
  • A sequence editor has been added for creating, editing, reviewing, and generating .seq.json for user-defined sequences.
  • Users are now visually notified about unsaved changes in editors (e.g. constraints, scheduling, or sequence editors).

Breaking Changes

The UI view activity tables schema has been updated with columnDefs and columnStates properties to reflect the types ag-grid ColDef and ColumnState respectively. See the updated wiki entry for an example of how to update your default UI views to the new schema.

What's Changed

New Features

  • feat: add activity directive metadata fields to activity form by @AaronPlave in #86
  • feat: convert all <Table /> components to <DataGrid /> components by @duranb in #96
  • feat: add hover background on datepicker month and year dropdowns by @duranb in #97
  • feat: batch delete activities with ag-grid by @duranb in #98
  • feat: use real profile schema by @camargo in #100
  • feat: add plan lock/unlock functionality by @jeffpamer in #101
  • feat: replace status badge text with icons, update intermediate state colors by @jeffpamer in #105
  • feat: select model in scheduling goal editor by @camargo in #107
  • feat: bulk delete views by @duranb in #108
  • feat: use new stellar eraser icon to match design by @duranb in #113
  • feat: validate select field on input and dispatch event by @AaronPlave in #116
  • feat: save activity table column config by @duranb in #119
  • feat: sequence editor by @camargo in #120
  • feat: update editor save button style to reflect presence of unsaved edits by @jeffpamer in #123
  • feat: inline forms for activity directive metadata by @AaronPlave in #124
  • feat: add filters on all tables by @duranb in #128

Bug Fixes

  • fix: bind selected activity id to the table by @duranb in #103
  • fix: Prevent deletion of system views by @duranb in #110
  • fix: only call isRowSelectable when defined by @duranb in #111
  • fix: ui freezes with multiple timelines open by @Mythicaeda in #121

Refactoring

  • refactor: rename activity to activity_directive by @camargo in #102
  • refactor: update Stellar and some BS font icons to use Stellar SVG icons by @AaronPlave in #118
  • refactor: use bootstrap-icon SVGs throughout by @camargo in #129

Testing

Continuous Integration

Documentation

  • docs: update CODEOWNERS file to use Aerie frontend team by @skovati in #125

Build System and Dependencies

Styling

New Contributors

Full Changelog: v0.12.3...v0.13.0