* Extract shared add to dashboard flow
* Change how we save and add the new panels
* More cleanup
* Began updating tests
* Move and update tests
* set time range
* Fix lint / ts issues
* Fix time history step issue
* fix test
* Update betterer
* remove more tests that are now not needed
* work around cyclic dep
* Update
* Fixes
* fix lint
* remove unused type
* Disable genai title and description buttons when dashboard doesn't have at least one panel with a title or description
* Fix test
* Additional tooltip tests
* address pr feedback
* Fix test: Use const for panel title
---------
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
* add isNew notPersistedProperty to PanelModel
* if panel is newly created and user "Discard"s it, the panel is removed entirely
* add Todo's for when we remove the emptyDashboardPage FF
* add isNew to new panel after file dropping on dashboard page
* handle the "Apply" case
* CSV file dropping is not relevant to a new panel bc it doesnt open edit page
* Empty Dashboard state has its own CTA items and its own separate box to choose a library panel to create
* show empty dashboard screen if no panels
* add feature flag for empty dashboard redesign
* only show empty dashboard redesign if FF
* add-new-panel button is a dropdown with options: visualization, row, import, paste
* fix onPasteCopiedPanel types
* do not create new panel to new dashboard if emptyDashboardPage FF true
* ToolbarButton does not allow rendering of Dropdown's overlay - switch to Button
* remove panel-add icon's default size of xl
* separate components for add new panel from dash navigation bar