Skip to content

Commit

Permalink
[Data Explorer] Merge to main (opensearch-project#4806)
Browse files Browse the repository at this point in the history
* Squashed commit of the following:

commit 551e4328a21ed204eaa96039f878118dc82ee249
Author: Ashwin P Chandran <[email protected]>
Date:   Wed Aug 23 14:31:52 2023 -0700

    [Data Explorer] Merge main conflicts (#4800)

    * [Saved Object Service] Adds Repository Factory Provider (#4149)

    * Adds Repository Factory Provider

    Signed-off-by: Bandini Bhopi <[email protected]>

    * add category option for context menus (#4144)

    * enhance grouping for context menu options

    Signed-off-by: David Sinclair <[email protected]>

    * change log

    Signed-off-by: David Sinclair <[email protected]>

    * remove type export

    Signed-off-by: David Sinclair <[email protected]>

    * revert border and prevent destroy options

    Signed-off-by: David Sinclair <[email protected]>

    * update comments for building panels

    Signed-off-by: David Sinclair <[email protected]>

    * build panels tests and more comments

    Signed-off-by: David Sinclair <[email protected]>

    * add category option for context menus

    Signed-off-by: David Sinclair <[email protected]>

    * changelog

    Signed-off-by: David Sinclair <[email protected]>

    * add order to groups

    Signed-off-by: David Sinclair <[email protected]>

    * documentation, shorter copyrighty, minor cleanup

    Signed-off-by: David Sinclair <[email protected]>

    * changelog

    Signed-off-by: David Sinclair <[email protected]>

    ---------

    Signed-off-by: David Sinclair <[email protected]>
    Signed-off-by: David Sinclair <[email protected]>
    Signed-off-by: Ashish Agrawal <[email protected]>
    Co-authored-by: Ashish Agrawal <[email protected]>

    * [CCI] Add bluebird replaces for src/plugins/saved_objects (#4026)

    * Add bluebird replaces for src/plugins/saved_objects
    * Add changelog entry

    ---------

    Signed-off-by: Alexei Karikov <[email protected]>

    * Validate and correct change log after 2.8 release (#4275)

    Signed-off-by: Su <[email protected]>

    * [DEVELOPER_GUIDE]  resolving links (#3989)

    * links

    Signed-off-by: Aigerim Suleimenova <[email protected]>

    * new section for doveloper guide

    Signed-off-by: Aigerim Suleimenova <[email protected]>

    * updates

    Signed-off-by: Aigerim Suleimenova <[email protected]>

    * Update DEVELOPER_GUIDE.md

    Co-authored-by: Ashwin P Chandran <[email protected]>
    Signed-off-by: Aigerim Suleimenova <[email protected]>

    * Update DEVELOPER_GUIDE.md

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Aigerim Suleimenova <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Ashwin P Chandran <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Enable data client with sample data server side (#4268)

    * Enable data client with sample data server side

    * Add dataSourceId into savedObject

    Signed-off-by: Kristen Tian <[email protected]>

    * Functional list, install uninstall

    Signed-off-by: Kristen Tian <[email protected]>

    * add change log

    Signed-off-by: Kristen Tian <[email protected]>

    * address comments

    Signed-off-by: Kristen Tian <[email protected]>

    * add ut

    Signed-off-by: Kristen Tian <[email protected]>

    ---------

    Signed-off-by: Kristen Tian <[email protected]>

    * Upgrade the backport workflow (#4343)

    * Copy over the labels from the original PR
    * Label the backport PR with `autocut`
    * Label a PR that fails to backport

    Signed-off-by: Miki <[email protected]>

    * Hide any output from `use_node` checking for Node compatibility (#4237)

    Signed-off-by: Miki <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * [Vis Colors] Update default color in TSVB to use `ouiPaletteColorBlind()[0]` (#4363)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>

    * Add BWC tests for 2.7 and 2.8 (#4023)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>

    * [Vis colors] Replace vis_type_timeline colors with `ouiPaletteColorBlind()` (#4366)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>

    * [Lint] add custom stylelint rules and config (#4290)

    * [Lint] add custom stylelint rules and config

    Adding `@osd/stylelint-config` and `@osd/stylelint-plugin-stylelint` packages.

    These packages are utilized by OSD core and can be ran with the following:
    `yarn lint:style`

    Can be used to fix known non-compliant styling with the following:
    `yarn lint:style --fix`

    Can be used to audit untracked styling (based on defined rules) with the following:
    ```
    export OUI_AUDIT_ENABLED=true
    yarn lint:style
    ```

    ---

    `@osd/stylelint-config`

    Defines rules approved by UX and OSD core in JSON files and is added to OSD core.
    Within this commit is defined `colors.json` and `global_selectors.json`.

    `colors.json` defines a property that can be matched with a regex of a selector.
    If the selector is tracked it will have an `approved` value and a list of `rejected`
    values that UX knows if a value should be something.

    `global_selectors.json` defines a selector that if tracked, it will have an `approved`
    list of relative paths to files that can modify the global selector.

    ---

    `@osd/stylelint-plugin-stylelint`

    Creates the functionality that utilizes the JSON files within the `@osd/stylelint-config`.
    Within this commit is defined `no_custom_colors` and `no_modifying_global_selectors` rules.

    `no_custom_colors` checks if a property is a color property. It then utilizes a compliance
    engine helper to check the `colors.json` to see if the property being modified has a compliance
    rule available for the property for the specific selector and if it is not compliant.
    For example, if a selector matches `button` and we are trying to apply `background-color: red`
    to it. Stylelint will catch this and flag this as a known non-compliance issue since it knows
    that it should `$euiColorWarning`. If we pass `--fix` the property will be updated to be
    `$euiColorWarning`. If `OUI_AUDIT_ENABLED` is true it will catch all `background-color` being
    modified that is not being defined explicitly in `colors.json`

    `no_modifying_global_selectors` checks if a selector being modified is defined in
    `global_selectors.json` to see if a selector not defined in a specific list of approved files.
    For example, if a selector matches `#opensearch-dashboards-body` and it is being modified in
    `src/core/public/rendering/_base.scss`. Stylelint will catch this and flag this as a
    non-compliance issue. Since no other file should be modifying this selector. If we pass `--fix`
    the styling will be complete removed from the non-compliant file.

    ---

    Next steps:

    * Migrate these packages to OUI
    * Consider adding `yarn lint:style --fix` to the build release script here:
    https://github.com/opensearch-project/opensearch-build/blob/main/scripts/default/opensearch-dashboards/build.sh#L89

    Issue:
    https://github.com/opensearch-project/OpenSearch-Dashboards/issues/4246

    Signed-off-by: Kawika Avilla <[email protected]>

    * fix to use find

    Signed-off-by: Kawika Avilla <[email protected]>

    * Add regex matching and OUI modification lint

    Signed-off-by: Matt Provost <[email protected]>

    * add changelog

    Signed-off-by: Josh Romero <[email protected]>

    * address issues

    Signed-off-by: Kawika Avilla <[email protected]>

    ---------

    Signed-off-by: Kawika Avilla <[email protected]>
    Signed-off-by: Matt Provost <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Matt Provost <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Fix linked deps resolution (#4342)

    Signed-off-by: Miki <[email protected]>

    * Add configurable `defaults` to `uiSettings` (#4344)

    Also now:
    * `theme:darkMode` and `theme:version` can be configured via `defaults`
    * unauthenticated users are no longer forced to light mode

    Signed-off-by: Miki <[email protected]>

    * Refactor hardcode color to use OUI in `maps_legacy` (#4294)

    * Refactor color to use OUI
    * Pull theme value from actual active theme
    * Update changelog

    ---------

    Signed-off-by: Matt Provost <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Anan Zhuang <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Remove broken flot documentation link for Ruby API (#4384)

    * Remove broken documentation link for Ruby API

    https://apidock.com/ruby/Time/to_i is currently down for maintenance

    But we don't need this link anyway, because it's talking about standard methods.
    And we plan to deprecate flot_charts altogether: https://github.com/opensearch-project/OpenSearch-Dashboards/issues/4267

    Signed-off-by: Josh Romero <[email protected]>

    * remove leftover link brackets

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * [CCI] Fix relationships header overflow (#4070)

    * Fix relationships header overflow (#3967)

    Co-authored-by: Andrey Myssak <[email protected]>
    Signed-off-by: Sergey Myssak <[email protected]>

    * Replace relationships css file with oui classname (#3967)

    Co-authored-by: Andrey Myssak <[email protected]>
    Signed-off-by: Sergey Myssak <[email protected]>

    * Make title overflow wrap instead of truncation (#3967)

    Co-authored-by: Andrey Myssak <[email protected]>
    Signed-off-by: Sergey Myssak <[email protected]>

    * Remove icon from flyout header and wrap title

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Sergey Myssak <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Andrey Myssak <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Refactor color maps to use OUI color palettes (#4293)

    * Remove color_util

    Signed-off-by: Matt Provost <[email protected]>

    * Update changelog

    Signed-off-by: Matt Provost <[email protected]>

    * Revert "Remove color_util"

    This reverts commit 9ca9c56e6bc5d2750971e04a2df7028f5c472b8b.

    Signed-off-by: Matt Provost <[email protected]>

    * Refactor color maps to use Oui color palettes

    Signed-off-by: Matt Provost <[email protected]>

    * Update changelog pt 2: electric boogaloo

    Signed-off-by: Matt Provost <[email protected]>

    * Make gradients look better

    Signed-off-by: Matt Provost <[email protected]>

    * Fix typescript ignore

    Signed-off-by: Matt Provost <[email protected]>

    * Fix tests

    Signed-off-by: Matt Provost <[email protected]>

    * Add todo followup

    Signed-off-by: Matt Provost <[email protected]>

    ---------

    Signed-off-by: Matt Provost <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * [CCI] Remove unused tags in the navigation plugin (#3964)

    * Remove unused tags in the navigation plugin (#3962)

    Signed-off-by: Andrey Myssak <[email protected]>

    * Update CHANGELOG.md (#3962)

    Signed-off-by: Andrey Myssak <[email protected]>

    ---------

    Signed-off-by: Andrey Myssak <[email protected]>
    Signed-off-by: Manasvini B Suryanarayana <[email protected]>
    Co-authored-by: Manasvini B Suryanarayana <[email protected]>

    * [Stylelint] Add invalid properties rule (#4374)

    * Add invalid properties rule

    Signed-off-by: Matt Provost <[email protected]>

    * Update changelog

    Signed-off-by: Matt Provost <[email protected]>

    * Rename old variable

    Signed-off-by: Matt Provost <[email protected]>

    * Add types for configs

    Signed-off-by: Matt Provost <[email protected]>

    * Rename rule to no_restricted_properties

    Signed-off-by: Matt Provost <[email protected]>

    * Refactor duplicate functions into generic one

    Signed-off-by: Matt Provost <[email protected]>

    * Add type definitions

    Signed-off-by: Matt Provost <[email protected]>

    * Add some documentation about supported config types

    Signed-off-by: Matt Provost <[email protected]>

    * Update changelog

    Signed-off-by: Matt Provost <[email protected]>

    * Optchain instead of unwrapping source file

    Signed-off-by: Matt Provost <[email protected]>

    ---------

    Signed-off-by: Matt Provost <[email protected]>

    * Migrate from legacy elasticsearch client to opensearch-js client in `osd-opensearch-archiver` package (#4142)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Chore (deps): Bump OUI to 1.1.2 to add anomoly detection icon (#4408)

    * Chore (deps): Bump OUI to 1.1.1 to add anomoly detection icon

    Signed-off-by: Josh Romero <[email protected]>

    * update changelog

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * Excludes broken sass-lang link from Link checker (#4415)

    * fix: Link checker exclude

    Signed-off-by: Ashwin P Chandran <[email protected]>

    * just ignore the broken URL for now

    Signed-off-by: Ashwin P Chandran <[email protected]>

    ---------

    Signed-off-by: Ashwin P Chandran <[email protected]>

    * [Vis Colors] Update legacy seed colors to use `ouiPaletteColorBlind()` (#4348)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>

    * Release notes for 1.3.11 (#4423) (#4427)

    * chore: Adds 1.3.11 release notes

    * chore: Adds 1.3.11 release notes updated

    ---------

    (cherry picked from commit 63908e83196d6fa09a4230897c48ebfacebfbd25)

    Signed-off-by: Ashwin P Chandran <[email protected]>
    Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
    Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

    * Updates Release notes for 1.3.11 (#4428) (#4430)

    * chore: Adds 1.3.11 release notes

    * chore: Adds 1.3.11 release notes updated

    * chore: Adds 1.3.11 release notes adds skipped changelog PR

    ---------

    (cherry picked from commit 7de483fa3c02e2c526d85db1ebdbcd57f63ce192)

    Signed-off-by: Ashwin P Chandran <[email protected]>
    Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
    Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

    * [Stylelint] Add typing to Stylelint rules (#4392)

    * Add typing to Stylelint rules

    Signed-off-by: Matt Provost <[email protected]>

    * Extract get color property parent into function

    Signed-off-by: Matt Provost <[email protected]>

    * Optchain instead of unwrapping source file

    Signed-off-by: Matt Provost <[email protected]>

    ---------

    Signed-off-by: Matt Provost <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * [Vis colors] Update legacy mapped colors in charts plugin to use ouiPaletteColorBlind() (#4398)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>
    Co-authored-by: Ashwin P Chandran <[email protected]>

    * [CVE-2022-25883] Resolve semver to 7.5.3 and remove unused package (#4411)

    In this PR, we resolve semver to 7.5.3 from 5.x, 6.x and 7.x.
    There are breaking changes in API in 7.5.3 compared to 5.x/6.x.
    However, these API changes do not impact any usages.

    Issue Resolve
    https://github.com/opensearch-project/OpenSearch-Dashboards/issues/4370

    Signed-off-by: ananzh <[email protected]>
    Co-authored-by: Ashwin P Chandran <[email protected]>

    * Enable sample data with Multiple datasource frontend (#4412)

    Signed-off-by: Kristen Tian <[email protected]>

    * Feature (home): Add vis audit sample dashboard (#4339)

    * Feature (home): Add vis audit sample dashboard

    Signed-off-by: Josh Romero <[email protected]>

    * add changelog

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * Add fonts for previewing the new theme (#4381)

    Also:
    * Expose default font-family values as CSS variables
    * Make default fonts load from OSD and not OUI
    * Make fonts differentiable across themes
    * Use the theme font in the Legacy Editor

    Signed-off-by: Miki <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * possible fix for flakey ci9 test (#4450)

    * possible fix for flakey ci9 test

    Signed-off-by: Ashwin P Chandran <[email protected]>

    * fix syntax

    Signed-off-by: Ashwin P Chandran <[email protected]>

    ---------

    Signed-off-by: Ashwin P Chandran <[email protected]>

    * Chore (VisBuilder): Update icon to use OUI icon (#4446)

    * Chore (VisBuilder): Update icon to use OUI icon

    Fixes https://github.com/opensearch-project/OpenSearch-Dashboards/issues/3691

    Signed-off-by: Josh Romero <[email protected]>

    * update changelog

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * Relocate tutorials imagery (#4382)

    Signed-off-by: Miki <[email protected]>

    * Update main menu to display 'Dashboards' for consistency (#4453)

    * Update main menu to display 'Dashboards' for consistency. Fixes #4296
    This resolves the inconsistency highlighted in issue #4296 (https://github.com/opensearch-project/OpenSearch-Dashboards/issues/4296). The decision to make this change was made in issue #68 (https://github.com/opensearch-project/ux/issues/68)."
    * Update OpenSearch Dashboard to OpenSearch Dashboards for consistence
    * CHANGELOG.md update

    ---------

    Signed-off-by: Danila Gulderov <[email protected]>

    * Adding Matt as a maintainer (#4469)

    * Chore: Add Matt as a maintainer
    * Adds changelog

    ---------

    Signed-off-by: Ashwin P Chandran <[email protected]>

    * Add `color-scheme` to the root styling (#4477)

    Signed-off-by: Miki <[email protected]>

    * Refactor hardcoded color to use OUI in `region_map` (#4299)

    * Refactor hardcoded color to use OUI

    Signed-off-by: Matt Provost <[email protected]>

    * Update changelog

    Signed-off-by: Matt Provost <[email protected]>

    ---------

    Signed-off-by: Matt Provost <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * [Console] Convert lib/mappings to TypeScript (#4008)

    * Convert mappings.js to TypeScript

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * Convert mappings.test.js to TypeScript

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * Update CHANGELOG.md

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * Add test for getTypes with multi-index mode

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * type update

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * update typing

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * CHANGELOG fix

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * Changelog update

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * Update Changelog

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    ---------

    Signed-off-by: Sirazh Gabdullin <[email protected]>
    Signed-off-by: Kawika Avilla <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Signed-off-by: Anan Zhuang <[email protected]>
    Co-authored-by: Kawika Avilla <[email protected]>
    Co-authored-by: Qingyang(Abby) Hu <[email protected]>
    Co-authored-by: Ashwin P Chandran <[email protected]>
    Co-authored-by: Anan Zhuang <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Enable plugins to augment visualizations with additional data and context (#4361)

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Update header logo selection logic and assets (#4383)

    Signed-off-by: Miki <[email protected]>

    * [CI] Split build and verify into parallel jobs (#4467)

    * Also made linter and NOTICE validation run only on Linux

    Signed-off-by: Miki <[email protected]>

    * New management overview page and rename stack management to dashboard management (#4287)

    Support navigation changes for administrative features. This change includes
    * Rename stack management to Dashboard management
    * Add new management overview page
    * Replace Stack Management to Management overview page on home app categories page
    * Make home plugin optional for managemnet overview

    Issue Resolved:
    https://github.com/opensearch-project/OpenSearch-Dashboards/issues/4132

    ---------

    Signed-off-by: Hailong Cui <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>
    Co-authored-by: Ashwin P Chandran <[email protected]>

    * Retain the original sample data interface (#4526)

    Signed-off-by: Kristen Tian <[email protected]>

    * [Vis Augmenter Add UT for few fns (#4516)

    * Add UT for few fns

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * add changelog entry

    Signed-off-by: Tyler Ohlsen <[email protected]>

    ---------

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Bump tough-cookie from 4.0.0 to 4.1.3 (#4531)

    Bumps [tough-cookie](https://github.com/salesforce/tough-cookie) from 4.0.0 to 4.1.3.
    - [Release notes](https://github.com/salesforce/tough-cookie/releases)
    - [Changelog](https://github.com/salesforce/tough-cookie/blob/master/CHANGELOG.md)
    - [Commits](https://github.com/salesforce/tough-cookie/compare/v4.0.0...v4.1.3)

    ---
    updated-dependencies:
    - dependency-name: tough-cookie
      dependency-type: direct:development
    ...

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: ZilongX <[email protected]>

    * [Vis Augmenter] Update base vis height in view events flyout (#4535)

    * [Vis Augmenter] Update base vis height in view events flyout

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Update CHANGELOG

    Signed-off-by: Tyler Ohlsen <[email protected]>

    ---------

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Dashboard De-Angularization (#4502)

    Removes Angular from the `plugins/dashboard` utilizing React.

    This includes refactoring to address changes in state management but will require fast follow to
    address none blocking issues raised which can be found here:
    https://github.com/opensearch-project/OpenSearch-Dashboards/issues/3365

    Partially Resolves:
    https://github.com/opensearch-project/OpenSearch-Dashboards/issues/3365

    ---
    * Replace angular modules with react components
      * Use React to start up the dashboard app, and use react routing to configure basic
        routing for dashboard plugin.
    * [Dashboard De-Angular] Render dashboard listing page (#4015)
      * https://github.com/opensearch-project/OpenSearch-Dashboards/issues/4000
      * Render the dashboard listing component with basic functionalities:
        * When there is no dashboard, render the empty dashboard page
        * When there are dashboards, show the dashboard listing table
        * When click on the dashboard, show the editor page
        * Delete the dashboards when selected
        * Can use search bar to filter dashboard
    * Basic top nav bar for dashboard (#4108)
      * Basic top nav bar for dashboard
      *  This PR will add basic structure to render top nav bar, including a basic implementation for dashboard app state.
    * Render editor page with basic nav actions (#4213)
      * Added dashboard embeddable container to render the dashboard editor page.
    * Add visualization (#4257)
      * Add and save visualization to dashboard
    * Render empty screen (#4346)
      * Render empty screen with correct edit and view view when creating a new dashboard.
    * Fix routing (#4357)
      * Fix the edit action routing on the dashboard listing page; also fix routing when the route has no match. Add '_g' param to the URL on both dashboard listing page and dashboard editor page.
    * [Dashboard De-Angular] Enable time filter functionalities  (#4364)
      * Fix time filter on dashboard
      * Save dashboard with time restore
      * Dashboard be able to save query and app filter
      * Enable functional test for dashboard
      * Fix comments and add ui bootstrap back
    * No index pattern routing (#4401)
      * Should redirect to stack management page if there is no index pattern detected.
    * Add embed mode and other URL param options (#4407)
      * UI should render based on URL param options
    * [Dashboard De-Angular] Add dashboard class for discard flow (#3563)
      * Add Dashboard class for state managing
      * isDirty working for cancel flow
    * [Dashboard De-Angular] Add breadcrumb with view/edit mode and unsaved flow (#4479)
      * set isDirty back to false when saving successfully
    * Breadcrumb working
    * change to dashboards in breadcrumb
    * [Dashboard De-Angular] Enable URL title param for initial filter on dashboard listing (#4480)
      * Fix dashboard listing functional test
      * Can filter dashboards using URL title param
      * Fix the functional tests
    * [Dashboard De-Angular] Fix dashboard save and back button functional test (#4491)
      * fix copy on save and functional test 5
    * Fix back button navigation
      * Fix version migration for panels
      * Fix conversions between saved panel and container panel type
      * Fix redundant browser update by re-structure app state and global state sync logic in order for back button to work, also fix the corresponding functional test
    * migration version
    * Add initialization dirty flag and fix full mode filter bar
    * [Dashboard De-Angular] Fix filter and query related functional tests in functional test group 3 (#4495)
      * fix index pattern window
    * Fix time filter and query related functional test in group 3
    * [Dashboard De-Angular] Fix remaining functional tests (#4496)
      * fix dashboard state function test in group 4
    * fix expanding panel
    * fix dashboard listing delete (#4508)
    * [Dashboard De-Angular] Initial clean up and linter fix (#4511)
      * Clean up linter issues
    * Add changelog and other fixes
    * [Dashboard De-Angular] Cypress fix (#4521)
      * fix cypress
    * refactor scss files
    * delete old unit test for state management
    * Refactor app state and cleanup unused imports (#4504)
      * Clean up app state for Dashboards plugin.
      * Removes the dashboard container hook in place of a single dashboard app state container
      * Still recovers some follow-ups and clean up
      * Skips test for rendering of a legacy test.
    * Set dashboard container functions and fix license headers (#4540)
      * Set dashboard container after defining functions
        * renderEmpty was not being set prior to the current container was being dispatched.
      * fix up license headers for new files
      * add TODOs from PR

    Signed-off-by: abbyhu2000 <[email protected]>
    Signed-off-by: Kawika Avilla <[email protected]>
    Co-authored-by: Qingyang(Abby) Hu <[email protected]>
    Co-authored-by: Kawika Avilla <[email protected]>
    Co-authored-by: Miki <[email protected]>

    * Add v2.9.0 release notes (#4550)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>

    * Fix line to vega conversion bug (#4554)

    * Fix line to vega conversion bug

    Signed-off-by: Ashish Agrawal <[email protected]>

    * Update CHANGELOG and release notes

    Signed-off-by: Ashish Agrawal <[email protected]>

    * Address comments

    Signed-off-by: Ashish Agrawal <[email protected]>

    * Add more details to comment

    Signed-off-by: Ashish Agrawal <[email protected]>

    * Not a released changed, so no need to document

    Signed-off-by: Ashish Agrawal <[email protected]>

    ---------

    Signed-off-by: Ashish Agrawal <[email protected]>

    * Fix Node.js download link (#4556)

    https://mirrors.nodejs.org/ is no longer available which prevents the ability from release builds
    being made. Restoring back the original link.

    Follow-up should be considered about a caching mechanism and param to the CLI to utilize another link or path.

    Signed-off-by: Miki <[email protected]>

    * [Vis Augmenter] Fix stats API visualization ID bug (#4565)

    * Fix vis augmenter stats api vis ID map

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Update changelog

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Update tests

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Remove changelog entry

    Signed-off-by: Tyler Ohlsen <[email protected]>

    ---------

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * [CCI] Add new or remove extra tags and styles in `saved_objects_management` plugin (#4069)

    * Add new or remove extra tags and styles (#3967)

    Co-authored-by: Andrey Myssak <[email protected]>
    Signed-off-by: Sergey Myssak <[email protected]>

    * Remove extra Fragment tags (#3967)

    Co-authored-by: Andrey Myssak <[email protected]>
    Signed-off-by: Sergey Myssak <[email protected]>

    ---------

    Signed-off-by: Sergey Myssak <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Andrey Myssak <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Add documentation to vis_augmenter (#4527)

    * Add documentation to vis_augmenter

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Add more

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Add section about settings

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Minor nits

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * More nits

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Update changelog

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Update CHANGELOG.md

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Tyler Ohlsen <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * [Vis Augmenter] Fix bug of undefined tooltip when all plugin layers are empty (#4577)

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * [Dashboards] restructure folder to be more cohesive with the project (#4575)

    Fast follow to:
    https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4502

    * Cleanup to just use `utils`
    * Move empty screen into embeddables folder with related features
    * Get rid of the export file in favor matching other plugins
    * Combine folders of components that are related, e.g., top_nav

    Issue:
    https://github.com/opensearch-project/OpenSearch-Dashboards/issues/4574

    Signed-off-by: Kawika Avilla <[email protected]>

    * chore (home): Update visual consistency dashboard TSVB colors (#4501)

    To be consistent with https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4363

    The TSVB visualization saved object includes the default color value, so #4363 changed it for all new TSVB visualizations, but any existing saved objects,
    like those in the visualization consistency dashboard, need to be updated manually.

    Signed-off-by: Josh Romero <[email protected]>

    * [VisLib] Replace legend color palette with OUI color palette (#4365)

    * [VisLib] Replace legend color palette with OUI color palette

    Replace hard-coded palette (of 8 colors with 7 variations each) with rotations from euiPaletteColorBlind
    (of 10 colors with 7 variations each)

    Fixes https://github.com/opensearch-project/OpenSearch-Dashboards/issues/4321

    Signed-off-by: Josh Romero <[email protected]>

    * update changelog

    Signed-off-by: Josh Romero <[email protected]>

    * Update legend unit test

    Signed-off-by: Josh Romero <[email protected]>

    * Update hard-coded legend color values in functional tests

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * Bump word-wrap from 1.2.3 to 1.2.4 (#4589)

    * Bump word-wrap from 1.2.3 to 1.2.4

    Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.4.
    - [Release notes](https://github.com/jonschlinkert/word-wrap/releases)
    - [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4)

    ---
    updated-dependencies:
    - dependency-name: word-wrap
      dependency-type: indirect
    ...

    Signed-off-by: dependabot[bot] <[email protected]>

    * Add changelog

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: dependabot[bot] <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Josh Romero <[email protected]>

    * Removed KUI usage in maps_legacy plugin (#3998)

    * Removed KUI usage from map_legacy plugin

    Signed-off-by: Malika Shamgunova <[email protected]>

    * Removed KUI icon from maps_legacy plugin

    Signed-off-by: Malika Shamgunova <[email protected]>

    * import

    Signed-off-by: Malika Shamgunova <[email protected]>

    * Added to CHNAGELOG.md

    Signed-off-by: Malika Shamgunova <[email protected]>

    * Updated CHANGELOG.md

    Signed-off-by: Malika Shamgunova <[email protected]>

    * Update in CHANGELOG.md

    Signed-off-by: Malika Shamgunova <[email protected]>

    * Upgrade the backport workflow (#4343)

    * Copy over the labels from the original PR
    * Label the backport PR with `autocut`
    * Label a PR that fails to backport

    Signed-off-by: Miki <[email protected]>

    * Hide any output from `use_node` checking for Node compatibility (#4237)

    Signed-off-by: Miki <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Resolved merge conflicts

    Signed-off-by: Malika Shamgunova <[email protected]>

    * Apply suggestions from code review

    Resolve changelog conflicts

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Malika Shamgunova <[email protected]>
    Signed-off-by: Anan Zhuang <[email protected]>
    Signed-off-by: Miki <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Qingyang(Abby) Hu <[email protected]>
    Co-authored-by: Anan Zhuang <[email protected]>
    Co-authored-by: Miki <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Feature (home): Update visual consistency sample dashboard with more vis (#4581)

    * Feature (home): Update visual consistency sample dashboard with more vis

    Signed-off-by: Josh Romero <[email protected]>

    * Use the correct playground URL

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * Optimize `augment-vis` saved obj searching by adding arg to saved obj client (#4595)

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * [Markdown] Replace custom css styles and native html with OUI. (#4390)

    * replace custom styling

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * update CHANGELOG

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * Update CHANGELOG.md

    Co-authored-by: Miki <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Sirazh Gabdullin <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>
    Co-authored-by: Miki <[email protected]>

    * Add resource ID filtering in fetch `augment-vis` obj queries (#4608)

    Signed-off-by: Tyler Ohlsen <[email protected]>

    * Fix (styles): Make ace code editor themes consistent (#4609)

    * Fix (styles): Make ace code editor themes consistent

    Use "textmate" theme everywhere
    Update override selector to apply to root, to style portaled components, too (such as filter editor)

    Signed-off-by: Josh Romero <[email protected]>

    * add changelog

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * Enable theme-switching via Advanced Settings to preview the Next theme (#4475)

    * Enable theme-switching via Advanced Settings to preview the Next theme

    Also:
    * Remove the unused "v8 (beta)" theme
    * Remove the overrides that locked in the light default theme
    * Correct theme version selection logic in the legacy UI renderer
    * Use the latest preview of OUI

    Signed-off-by: Miki <[email protected]>

    * Enhance ComboBox handling in functional tests

    Signed-off-by: Miki <[email protected]>

    ---------

    Signed-off-by: Miki <[email protected]>

    * [Console] Converted all ```/lib/autocomplete/**/*.js``` files to typescript (#4148)

    Major changes are:
    * Convert autocomplete part to TS
    * reafactor and improve typing
    * clean comments for compileBodyDescription
    * refactor getTemplate

    ---------

    Signed-off-by: Sirazh Gabdullin <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * [Console] Convert all non-autocomplete lib files to typescript  (#4150)

    * Convert non-autocomplete part to TS

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * Update CHANGELOG.md

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * refactor and improve typing

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    ---------

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * [Table Visualization] Replace div containers with OuiFlex components (#4272)

    * replace div containers with OuiFlex

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * Update test to not include removed class

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * Update Changelog

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    * wrap table in FlexItem

    Signed-off-by: Sirazh Gabdullin <[email protected]>

    ---------

    Signed-off-by: Sirazh Gabdullin <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Chore(CHANGELOG): Update to CHANGELOG post 2.9 release (#4625)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>

    * Refactor/remove breadcrumb styling main (#4621)

    * chore(chrome): Remove OSD breadcrumb styling and classes

    Now that the breacrumb styling is coming from OUI

    Signed-off-by: Josh Romero <[email protected]>

    * chore (chrome): Remove other remnants of breadcrumb styling

    Essentially reverting:
    - https://github.com/opensearch-project/OpenSearch-Dashboards/pull/1954
    - https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2085

    Signed-off-by: Josh Romero <[email protected]>

    * Update snapshot

    Signed-off-by: Josh Romero <[email protected]>

    * add changelog

    Signed-off-by: Josh Romero <[email protected]>

    * Update header snapshot

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * Feat (home): Add remaining vis type examples (#4619)

    * Feat (home): Add remaining vis type examples

    - Add and improve vega equivalents

    Signed-off-by: Josh Romero <[email protected]>

    * add changelog

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * [i18n] fix generation scripts (#4252)

    * [i18n] fix generation scripts

    Gave file permissions to the i18n scripts

    Generated:
    https://github.com/opensearch-project/dashboards-i18n/pull/25

    With:
    ```
    ./scripts/use_node scripts/i18n_extract.js --output-dir plugins/dashboards-i18n/translations/
    ```

    Had to fix some issues generating the scripts for example incorrect namespacing.

    Issue:
    https://github.com/opensearch-project/OpenSearch-Dashboards/issues/867

    Signed-off-by: Kawika Avilla <[email protected]>

    * update snapshot

    Signed-off-by: Kawika Avilla <[email protected]>

    ---------

    Signed-off-by: Kawika Avilla <[email protected]>
    Signed-off-by: Qingyang(Abby) Hu <[email protected]>
    Co-authored-by: Ashwin P Chandran <[email protected]>
    Co-authored-by: Qingyang(Abby) Hu <[email protected]>

    * Feat (Discover): Update styles to be compatible with next theme (#4644)

    * Feat (Discover): Update styles to be compatible with next theme

    1. Change doc table source highlight to use standard color functions instead of transparency
    2. Build KUI CSS for next themes in OUI, and conditionally load to ensure surrounding doc view styled correctly
    3. Update histogram styles to follow design guidance and avoid theme-specific imports

    Signed-off-by: Josh Romero <[email protected]>

    * add changelog

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * Fix (Legacy Maps): Add necessary specificity for dark mode style over… (#4658)

    * Fix (Legacy Maps): Add necessary specificity for dark mode style overrides

    - wrap override styles in visualization selector
    - remove temp SASS var
    - update attribution background to be opaque for consistency with other controls
    - add raster tile filter to map tiles in dark mode, since OpenSearch doesn't serve dark mode raster tilesets
    - Fix tooltip behavior so that tooltip only appears when there's content to render

    fixes https://github.com/opensearch-project/dashboards-maps/issues/449, fixes https://github.com/opensearch-project/dashboards-maps/issues/450

    Signed-off-by: Josh Romero <[email protected]>

    * update changelog

    Signed-off-by: Josh Romero <[email protected]>

    * Fix spacing linter issues

    Signed-off-by: Josh Romero <[email protected]>

    * Update font-family overrides to use CSS var definitions

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * Bump `node-sass` to a version that uses a newer `libsass` (#4651)

    Also:
    * bump `sass-loader` to a version that supports this `node-sass`

    Signed-off-by: Miki <[email protected]>

    * Update webpack environment targets (#4649)

    Also:
    * Bump browserslist
    * Widen browser support matrix
    * Update browser typescript target to ES2018
    * Bump `autoprefixer` but remove its usage as it spams the logs about it being unnecessary

    Signed-off-by: Miki <[email protected]>

    * Reduce the amount of comments in compiled CSS (#4648)

    Signed-off-by: Miki <[email protected]>

    * units test for utils folder (#4641)

    Signed-off-by: abbyhu2000 <[email protected]>

    * Fix --font-text CSS var usage and add more leaflet font overrides (#4674)

    * Add missing quotes to --font-text CSS vars

    Signed-off-by: Josh Romero <[email protected]>

    * Fix usage of --font-text CSS var

    Remove quotes
    Add additional leaflet font family overrides
    Move legacy map custom button styles to separate file

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * Add saved objects service status api (#4696)

    Signed-off-by: Bandini Bhopi <[email protected]>

    * Chore: Add 1.3.12 release notes (#4690) (#4709)

    * Chore: Add 1.3.12 release notes

    and update changelog

    Signed-off-by: Josh Romero <[email protected]>

    * Add entries for late-resolving CVEs

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>
    (cherry picked from commit 492b055041dc02910b431c3d56fd98d20acac099)
    Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

    Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

    * Test (linkchecker): Exclude checking dead link (#4720)

    Link in copyright header must be preserved, but we shouldn't check for it

    Signed-off-by: Josh Romero <[email protected]>

    * [@osd/pm] Automate multi-target bootstrap and build (#4650)

    Also:
    * build @osd/std for multiple targets
    * convert @osd/i18n and @osd/ace from custom build scripts to targeted build process
    * have @osd/optimizer ignore already built artifacts

    Signed-off-by: Miki <[email protected]>

    * [chore] Update CHANGELOG.md with 1.3.12 release (#4739)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>

    * Feat (home): Remove color customizations from sample dashboards (#4741)

    * Feat (home): Remove color customizations from sample dashboards

    So that they better reflect default color palettes and theming

    - Remove `uiStateJSON` `vis.colors` and `vis.defaultColors` customizations
    - Remove `embeddableConfig` `vis.colors` and `vis.defaultColors` cusomtizations from dashboard `panelsJSON`
    - TSVB visualizations require explicit color picker values - use only defined categorical palette values
    - Replace named and explicit colors in vega spec with OUI palette values
    - Add missing `time_field` and `index_pattern` properties to TSVB configs that were missing them
    - Update vega/vega-lite default config to use `OuiTextColor` for `text` marks

    Signed-off-by: Josh Romero <[email protected]>

    * update changelog

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * Bump version of tinygradient from 0.4.3 to 1.1.5 (#4742)

    * Bump version of tinygradient from 0.4.3 to 1.1.5

    Signed-off-by: Matt Provost <[email protected]>

    * Update changelog

    Signed-off-by: Matt Provost <[email protected]>

    * Update to use carat version

    Signed-off-by: Matt Provost <[email protected]>

    ---------

    Signed-off-by: Matt Provost <[email protected]>

    * Remove visualization editor background (#4719)

    * Remove vis editor background

    Signed-off-by: Matt Provost <[email protected]>

    * Update changelog

    Signed-off-by: Matt Provost <[email protected]>

    ---------

    Signed-off-by: Matt Provost <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * [Dashboard De-Angular] Add unit tests for dashboard_listing and dashboard_top_nav (#4640)

    * Add unit tests

    Signed-off-by: abbyhu2000 <[email protected]>

    * fix other unit tests and update snapshots

    Signed-off-by: abbyhu2000 <[email protected]>

    * update snapshots

    Signed-off-by: abbyhu2000 <[email protected]>

    * fix osdUrlStateStorage

    Signed-off-by: abbyhu2000 <[email protected]>

    * fix snapshots

    Signed-off-by: abbyhu2000 <[email protected]>

    ---------

    Signed-off-by: abbyhu2000 <[email protected]>

    * [Stylelint] Add no_restricted_values linter rule (#4413)

    * Add no_restricted_values linter rule

    Signed-off-by: Matt Provost <[email protected]>

    * Update changelog

    Signed-off-by: Matt Provost <[email protected]>

    * Add explanation for file based configs

    Signed-off-by: Matt Provost <[email protected]>

    * Update error messages

    Signed-off-by: Matt Provost <[email protected]>

    ---------

    Signed-off-by: Matt Provost <[email protected]>
    Signed-off-by: Matt Provost <[email protected]>
    Co-authored-by: Ashwin P Chandran <[email protected]>
    Co-authored-by: Anan Zhuang <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Add @curq as co-maintainer (#4760)

    * Add @curq as co-maintainer

    Signed-off-by: Josh Romero <[email protected]>

    * add changelog

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Josh Romero <[email protected]>

    * [Tests] Add BWC tests for 2.9 and 2.10 versions (#4762)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>

    * Updated README.md (#4769)

    Changed a Typo in README.md file

    Signed-off-by: Suyash Srivastava <[email protected]>

    * Refactor logo usage (#4702)

    Also:
    * Move logos to a central location
    * Make the loading spinner color-scheme-aware
    * Recreate `OverviewPageHeader`, `HomeIcon`, `HeaderLogo`, `SolutionTitle`, `Welcome`, `Overview` tests
    * Enhance `ExitFullScreenButton`, `Header` tests
    * Tinified favicon assets

    Signed-off-by: Miki <[email protected]>

    * fixes merge conflict resolution error

    Signed-off-by: Ashwin P Chandran <[email protected]>

    * fixes snapshot

    Signed-off-by: Ashwin P Chandran <[email protected]>

    ---------

    Signed-off-by: Bandini Bhopi <[email protected]>
    Signed-off-by: David Sinclair <[email protected]>
    Signed-off-by: David Sinclair <[email protected]>
    Signed-off-by: Ashish Agrawal <[email protected]>
    Signed-off-by: Alexei Karikov <[email protected]>
    Signed-off-by: Su <[email protected]>
    Signed-off-by: Aigerim Suleimenova <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Signed-off-by: Kristen Tian <[email protected]>
    Signed-off-by: Miki <[email protected]>
    Signed-off-by: Manasvini B Suryanarayana <[email protected]>
    Signed-off-by: Kawika Avilla <[email protected]>
    Signed-off-by: Matt Provost <[email protected]>
    Signed-off-by: Sergey Myssak <[email protected]>
    Signed-off-by: Andrey Myssak <[email protected]>
    Signed-off-by: Ashwin P Chandran <[email protected]>
    Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
    Signed-off-by: ananzh <[email protected]>
    Signed-off-by: Danila Gulderov <[email protected]>
    Signed-off-by: Sirazh Gabdullin <[email protected]>
    Signed-off-by: Anan Zhuang <[email protected]>
    Signed-off-by: Tyler Ohlsen <[email protected]>
    Signed-off-by: Hailong Cui <[email protected]>
    Signed-off-by: dependabot[bot] <[email protected]>
    Signed-off-by: abbyhu2000 <[email protected]>
    Signed-off-by: Ashish Agrawal <[email protected]>
    Signed-off-by: Malika Shamgunova <[email protected]>
    Signed-off-by: Qingyang(Abby) Hu <[email protected]>
    Signed-off-by: Matt Provost <[email protected]>
    Signed-off-by: Suyash Srivastava <[email protected]>
    Co-authored-by: Bandini <[email protected]>
    Co-authored-by: David Sinclair <[email protected]>
    Co-authored-by: Ashish Agrawal <[email protected]>
    Co-authored-by: Alexei Karikov <[email protected]>
    Co-authored-by: Zhongnan Su <[email protected]>
    Co-authored-by: Aigerim Suleimenova <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>
    Co-authored-by: Kristen Tian <[email protected]>
    Co-authored-by: Miki <[email protected]>
    Co-authored-by: Manasvini B Suryanarayana <[email protected]>
    Co-authored-by: Kawika Avilla <[email protected]>
    Co-authored-by: Matt Provost <[email protected]>
    Co-authored-by: Anan Zhuang <[email protected]>
    Co-authored-by: Sergey Myssak <[email protected]>
    Co-authored-by: Andrey Myssak <[email protected]>
    Co-authored-by: Andrey Myssak <[email protected]>
    Co-authored-by: opensearch-trigger-bot[bot] <98922864+opensearch-trigger-bot[bot]@users.noreply.github.com>
    Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
    Co-authored-by: gulderov <[email protected]>
    Co-authored-by: Sirazh Gabdullin <[email protected]>
    Co-authored-by: Qingyang(Abby) Hu <[email protected]>
    Co-authored-by: Tyler Ohlsen <[email protected]>
    Co-authored-by: Hailong Cui <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: ZilongX <[email protected]>
    Co-authored-by: Miki <[email protected]>
    Co-authored-by: miamia1999 <[email protected]>
    Co-authored-by: Suyash Srivastava <[email protected]>

commit 8c2e8bf659bf7a3a8fad88c62f48ce350c4c5ce5
Author: Ashwin P Chandran <[email protected]>
Date:   Tue Aug 22 19:29:16 2023 -0700

    [Data Explorer] Altrnate result state views + fixes (#4764)

    * multiple minor fixes and no results view

    Signed-off-by: Ashwin P Chandran <[email protected]>

    * Apply suggestions from code review

    Co-authored-by: Miki <[email protected]>
    Signed-off-by: Ashwin P Chandran <[email protected]>

    ---------

    Signed-off-by: Ashwin P Chandran <[email protected]>
    Signed-off-by: Ashwin P Chandran <[email protected]>
    Co-authored-by: Miki <[email protected]>

commit c1ba8cd2f8de4082bc0849a3b57d7634d47c5551
Author: Qingyang(Abby) Hu <[email protected]>
Date:   Mon Aug 21 16:23:13 2023 -0700

    Merge main to feature (#4789)

    * [Saved Object Service] Adds Repository Factory Provider (#4149)

    * Adds Repository Factory Provider

    Signed-off-by: Bandini Bhopi <[email protected]>

    * add category option for context menus (#4144)

    * enhance grouping for context menu options

    Signed-off-by: David Sinclair <[email protected]>

    * change log

    Signed-off-by: David Sinclair <[email protected]>

    * remove type export

    Signed-off-by: David Sinclair <[email protected]>

    * revert border and prevent destroy options

    Signed-off-by: David Sinclair <[email protected]>

    * update comments for building panels

    Signed-off-by: David Sinclair <[email protected]>

    * build panels tests and more comments

    Signed-off-by: David Sinclair <[email protected]>

    * add category option for context menus

    Signed-off-by: David Sinclair <[email protected]>

    * changelog

    Signed-off-by: David Sinclair <[email protected]>

    * add order to groups

    Signed-off-by: David Sinclair <[email protected]>

    * documentation, shorter copyrighty, minor cleanup

    Signed-off-by: David Sinclair <[email protected]>

    * changelog

    Signed-off-by: David Sinclair <[email protected]>

    ---------

    Signed-off-by: David Sinclair <[email protected]>
    Signed-off-by: David Sinclair <[email protected]>
    Signed-off-by: Ashish Agrawal <[email protected]>
    Co-authored-by: Ashish Agrawal <[email protected]>

    * [CCI] Add bluebird replaces for src/plugins/saved_objects (#4026)

    * Add bluebird replaces for src/plugins/saved_objects
    * Add changelog entry

    ---------

    Signed-off-by: Alexei Karikov <[email protected]>

    * Validate and correct change log after 2.8 release (#4275)

    Signed-off-by: Su <[email protected]>

    * [DEVELOPER_GUIDE]  resolving links (#3989)

    * links

    Signed-off-by: Aigerim Suleimenova <[email protected]>

    * new section for doveloper guide

    Signed-off-by: Aigerim Suleimenova <[email protected]>

    * updates

    Signed-off-by: Aigerim Suleimenova <[email protected]>

    * Update DEVELOPER_GUIDE.md

    Co-authored-by: Ashwin P Chandran <[email protected]>
    Signed-off-by: Aigerim Suleimenova <[email protected]>

    * Update DEVELOPER_GUIDE.md

    Signed-off-by: Josh Romero <[email protected]>

    ---------

    Signed-off-by: Aigerim Suleimenova <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Ashwin P Chandran <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Enable data client with sample data server side (#4268)

    * Enable data client with sample data server side

    * Add dataSourceId into savedObject

    Signed-off-by: Kristen Tian <[email protected]>

    * Functional list, install uninstall

    Signed-off-by: Kristen Tian <[email protected]>

    * add change log

    Signed-off-by: Kristen Tian <[email protected]>

    * address comments

    Signed-off-by: Kristen Tian <[email protected]>

    * add ut

    Signed-off-by: Kristen Tian <[email protected]>

    ---------

    Signed-off-by: Kristen Tian <[email protected]>

    * Upgrade the backport workflow (#4343)

    * Copy over the labels from the original PR
    * Label the backport PR with `autocut`
    * Label a PR that fails to backport

    Signed-off-by: Miki <[email protected]>

    * Hide any output from `use_node` checking for Node compatibility (#4237)

    Signed-off-by: Miki <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * [Vis Colors] Update default color in TSVB to use `ouiPaletteColorBlind()[0]` (#4363)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>

    * Add BWC tests for 2.7 and 2.8 (#4023)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>

    * [Vis colors] Replace vis_type_timeline colors with `ouiPaletteColorBlind()` (#4366)

    Signed-off-by: Manasvini B Suryanarayana <[email protected]>

    * [Lint] add custom stylelint rules and config (#4290)

    * [Lint] add custom stylelint rules and config

    Adding `@osd/stylelint-config` and `@osd/stylelint-plugin-stylelint` packages.

    These packages are utilized by OSD core and can be ran with the following:
    `yarn lint:style`

    Can be used to fix known non-compliant styling with the following:
    `yarn lint:style --fix`

    Can be used to audit untracked styling (based on defined rules) with the following:
    ```
    export OUI_AUDIT_ENABLED=true
    yarn lint:style
    ```

    ---

    `@osd/stylelint-config`

    Defines rules approved by UX and OSD core in JSON files and is added to OSD core.
    Within this commit is defined `colors.json` and `global_selectors.json`.

    `colors.json` defines a property that can be matched with a regex of a selector.
    If the selector is tracked it will have an `approved` value and a list of `rejected`
    values that UX knows if a value should be something.

    `global_selectors.json` defines a selector that if tracked, it will have an `approved`
    list of relative paths to files that can modify the global selector.

    ---

    `@osd/stylelint-plugin-stylelint`

    Creates the functionality that utilizes the JSON files within the `@osd/stylelint-config`.
    Within this commit is defined `no_custom_colors` and `no_modifying_global_selectors` rules.

    `no_custom_colors` checks if a property is a color property. It then utilizes a compliance
    engine helper to check the `colors.json` to see if the property being modified has a compliance
    rule available for the property for the specific selector and if it is not compliant.
    For example, if a selector matches `button` and we are trying to apply `background-color: red`
    to it. Stylelint will catch this and flag this as a known non-compliance issue since it knows
    that it should `$euiColorWarning`. If we pass `--fix` the property will be updated to be
    `$euiColorWarning`. If `OUI_AUDIT_ENABLED` is true it will catch all `background-color` being
    modified that is not being defined explicitly in `colors.json`

    `no_modifying_global_selectors` checks if a selector being modified is defined in
    `global_selectors.json` to see if a selector not defined in a specific list of approved files.
    For example, if a selector matches `#opensearch-dashboards-body` and it is being modified in
    `src/core/public/rendering/_base.scss`. Stylelint will catch this and flag this as a
    non-compliance issue. Since no other file should be modifying this selector. If we pass `--fix`
    the styling will be complete removed from the non-compliant file.

    ---

    Next steps:

    * Migrate these packages to OUI
    * Consider adding `yarn lint:style --fix` to the build release script here:
    https://github.com/opensearch-project/opensearch-build/blob/main/scripts/default/opensearch-dashboards/build.sh#L89

    Issue:
    https://github.com/opensearch-project/OpenSearch-Dashboards/issues/4246

    Signed-off-by: Kawika Avilla <[email protected]>

    * fix to use find

    Signed-off-by: Kawika Avilla <[email protected]>

    * Add regex matching and OUI modification lint

    Signed-off-by: Matt Provost <[email protected]>

    * add changelog

    Signed-off-by: Josh Romero <[email protected]>

    * address issues

    Signed-off-by: Kawika Avilla <[email protected]>

    ---------

    Signed-off-by: Kawika Avilla <[email protected]>
    Signed-off-by: Matt Provost <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Matt Provost <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Fix linked deps resolution (#4342)

    Signed-off-by: Miki <[email protected]>

    * Add configurable `defaults` to `uiSettings` (#4344)

    Also now:
    * `theme:darkMode` and `theme:version` can be configured via `defaults`
    * unauthenticated users are no longer forced to light mode

    Signed-off-by: Miki <[email protected]>

    * Refactor hardcode color to use OUI in `maps_legacy` (#4294)

    * Refactor color to use OUI
    * Pull theme value from actual active theme
    * Update changelog

    ---------

    Signed-off-by: Matt Provost <[email protected]>
    Signed-off-by: Josh Romero <[email protected]>
    Co-authored-by: Anan Zhuang <[email protected]>
    Co-authored-by: Josh Romero <[email protected]>

    * Remove broken flot documentation link for Ruby API (#4384)

    * Remove broken documentation link for Ruby API

    https://apidock.com…
  • Loading branch information
ashwin-pc and ananzh authored Aug 30, 2023
1 parent 0188087 commit 4f909f9
Show file tree
Hide file tree
Showing 406 changed files with 16,091 additions and 792 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
- Remove visualization editor sidebar background ([#4719](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4719))
- [Vis Colors] Remove customized colors from sample visualizations and dashboards ([#4741](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4741))
- [Decouple] Allow plugin manifest config to define semver compatible OpenSearch plugin and verify if it is installed on the cluster([#4612](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4612))
- Adds Data explorer framework and implements Discover using it ([#4806](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4806))

### 🐛 Bug Fixes

Expand Down
6 changes: 3 additions & 3 deletions packages/osd-stylelint-config/config/global_selectors.json
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@
"src/plugins/vis_builder/public/application/components/searchable_dropdown.scss",
"src/plugins/vis_builder/public/application/components/side_nav.scss",
"packages/osd-ui-framework/src/components/button/button_group/_button_group.scss",
"src/plugins/discover/public/application/components/sidebar/discover_sidebar.scss",
"src/plugins/discover/public/application/angular/doc_table/components/table_row/_open.scss"
"src/plugins/discover_legacy/public/application/components/sidebar/discover_sidebar.scss",
"src/plugins/discover_legacy/public/application/angular/doc_table/components/table_row/_open.scss"
]
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"font-family": {
"explanation": "All \"font-family\" styles should be inherited from OUI themes and components. Remove the rule.",
"approved": [
"src/plugins/discover/public/application/_discover.scss",
"src/plugins/discover_legacy/public/application/_discover.scss",
"src/plugins/maps_legacy/public/map/_leaflet_overrides.scss",
"src/plugins/maps_legacy/public/map/_legend.scss",
"src/plugins/opensearch_dashboards_legacy/public/font_awesome/font_awesome.scss",
Expand All @@ -12,7 +12,8 @@
"src/plugins/data/public/ui/typeahead/_suggestion.scss",
"src/plugins/vis_type_timeseries/public/application/components/_error.scss",
"packages/osd-ui-framework/src/components/form/check_box/_check_box.scss",
"src/plugins/discover/public/application/components/doc_viewer/doc_viewer.scss"
"src/plugins/discover/public/application/components/doc_viewer/doc_viewer.scss",
"src/plugins/discover_legacy/public/application/components/doc_viewer/doc_viewer.scss"
]
}
}
}
7 changes: 7 additions & 0 deletions src/plugins/data_explorer/.i18nrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"prefix": "dataExplorer",
"paths": {
"dataExplorer": "."
},
"translations": ["translations/ja-JP.json"]
}
11 changes: 11 additions & 0 deletions src/plugins/data_explorer/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# dataExplorer

A OpenSearch Dashboards plugin

---

## Development

See the [OpenSearch Dashboards contributing
guide](https://github.com/opensearch-project/OpenSearch-Dashboards/blob/main/CONTRIBUTING.md) for instructions
setting up your development environment.
7 changes: 7 additions & 0 deletions src/plugins/data_explorer/common/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/*
* Copyright OpenSearch Contributors
* SPDX-License-Identifier: Apache-2.0
*/

export const PLUGIN_ID = 'data-explorer';
export const PLUGIN_NAME = 'Data Explorer';
18 changes: 18 additions & 0 deletions src/plugins/data_explorer/opensearch_dashboards.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"id": "dataExplorer",
"version": "1.0.0",
"opensearchDashboardsVersion": "opensearchDashboards",
"server": true,
"ui": true,
"requiredPlugins": [
"data",
"navigation",
"embeddable",
"expressions"
],
"optionalPlugins": [],
"requiredBundles": [
"opensearchDashboardsReact",
"opensearchDashboardsUtils"
]
}
41 changes: 41 additions & 0 deletions src/plugins/data_explorer/public/application.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
/*
* Copyright OpenSearch Contributors
* SPDX-License-Identifier: Apache-2.0
*/

import React from 'react';
import ReactDOM from 'react-dom';
import { Provider as ReduxProvider } from 'react-redux';
import { Router, Route, Switch } from 'react-router-dom';
import { AppMountParameters, CoreStart } from '../../../core/public';
import { OpenSearchDashboardsContextProvider } from '../../opensearch_dashboards_react/public';
import { DataExplorerServices } from './types';
import { DataExplorerApp } from './components/app';
import { Store } from './utils/state_management';

export const renderApp = (
core: CoreStart,
services: DataExplorerServices,
params: AppMountParameters,
store: Store
) => {
const { history, element } = params;
ReactDOM.render(
<Router history={history}>
<OpenSearchDashboardsContextProvider services={services}>
<ReduxProvider store={store}>
<services.i18n.Context>
<Switch>
<Route path={[`/:appId`, '/']} exact={false}>
<DataExplorerApp params={params} />
</Route>
</Switch>
</services.i18n.Context>
</ReduxProvider>
</OpenSearchDashboardsContextProvider>
</Router>,
element
);

return () => ReactDOM.unmountComponentAtNode(element);
};

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

36 changes: 36 additions & 0 deletions src/plugins/data_explorer/public/components/app.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
/*
* Copyright OpenSearch Contributors
* SPDX-License-Identifier: Apache-2.0
*/

import React, { useEffect } from 'react';
import { useLocation } from 'react-router-dom';
import { AppMountParameters } from '../../../../core/public';
import { useView } from '../utils/use';
import { AppContainer } from './app_container';
import { useOpenSearchDashboards } from '../../../opensearch_dashboards_react/public';
import { DataExplorerServices } from '../types';
import { syncQueryStateWithUrl } from '../../../data/public';

export const DataExplorerApp = ({ params }: { params: AppMountParameters }) => {
const { view } = useView();
const {
services: {
data: { query },
osdUrlStateStorage,
},
} = useOpenSearchDashboards<DataExplorerServices>();
const { pathname } = useLocation();

useEffect(() => {
// syncs `_g` portion of url with query services
const { stop } = syncQueryStateWithUrl(query, osdUrlStateStorage);

return () => stop();

// this effect should re-run when pathname is changed to preserve querystring part,
// so the global state is always preserved
}, [query, osdUrlStateStorage, pathname]);

return <AppContainer view={view} params={params} />;
};
18 changes: 18 additions & 0 deletions src/plugins/data_explorer/public/components/app_container.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
$osdHeaderOffset: $euiHeaderHeightCompensation;

.deSidebar {
max-width: 462px;
min-width: 400px;
}

.deLayout {
height: calc(100vh - #{$osdHeaderOffset});

&__canvas {
height: 100%;
}
}

.headerIsExpanded .deLayout {
height: calc(100vh - #{$osdHeaderOffset * 2});
}
45 changes: 45 additions & 0 deletions src/plugins/data_explorer/public/components/app_container.test.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
/*
* Copyright OpenSearch Contributors
* SPDX-License-Identifier: Apache-2.0
*/

import React from 'react';
import { AppContainer } from './app_container';
import { View } from '../services/view_service/view';
import { AppMountParameters } from '../../../../core/public';
import { render } from 'test_utils/testing_lib_helpers';

describe('DataExplorerApp', () => {
const createView = () => {
return new View({
id: 'test-view',
title: 'Test View',
defaultPath: '/test-path',
appExtentions: {} as any,
Canvas: (() => <div>canvas</div>) as any,
Panel: (() => <div>panel</div>) as any,
Context: (() => <div>Context</div>) as any,
});
};

const params: AppMountParameters = {
element: document.createElement('div'),
history: {} as any,
onAppLeave: jest.fn(),
setHeaderActionMenu: jest.fn(),
appBasePath: '',
};

it('should render NoView when a non existent view is selected', () => {
const { container } = render(<AppContainer params={params} />);

expect(container).toContainHTML('View not found');
});

it('should render the canvas and panel when selected', () => {
const view = createView();
const { container } = render(<AppContainer view={view} params={params} />);

expect(container).toMatchSnapshot();
});
});
39 changes: 39 additions & 0 deletions src/plugins/data_explorer/public/components/app_container.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/*
* Copyright OpenSearch Contributors
* SPDX-License-Identifier: Apache-2.0
*/

import React from 'react';
import { EuiPage, EuiPageBody } from '@elastic/eui';
import { Suspense } from 'react';
import { AppMountParameters } from '../../../../core/public';
import { Sidebar } from './sidebar';
import { NoView } from './no_view';
import { View } from '../services/view_service/view';
import './app_container.scss';

export const AppContainer = ({ view, params }: { view?: View; params: AppMountParameters }) => {
// TODO: Make this more robust.
if (!view) {
return <NoView />;
}

const { Canvas, Panel, Context } = view;

// Render the application DOM.
return (
<EuiPage className="deLayout" paddingSize="none">
{/* TODO: improve fallback state */}
<Suspense fallback={<div>Loading...</div>}>
<Context {...params}>
<Sidebar>
<Panel {...params} />
</Sidebar>
<EuiPageBody className="deLayout__canvas">
<Canvas {...params} />
</EuiPageBody>
</Context>
</Suspense>
</EuiPage>
);
};
40 changes: 40 additions & 0 deletions src/plugins/data_explorer/public/components/no_view.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
/*
* Copyright OpenSearch Contributors
* SPDX-License-Identifier: Apache-2.0
*/

import React from 'react';
import { EuiPageTemplate, EuiEmptyPrompt } from '@elastic/eui';
import { FormattedMessage } from '@osd/i18n/react';

export const NoView = () => {
return (
<EuiPageTemplate
template="centeredContent"
className="dePageTemplate"
pageContentProps={{
role: 'alertdialog',
color: 'plain',
hasBorder: false,
}}
>
<EuiEmptyPrompt
iconType="alert"
iconColor="danger"
title={
<h2>
<FormattedMessage id="dataExplorer.noView.title" defaultMessage="View not found" />
</h2>
}
body={
<p>
<FormattedMessage
id="dataExplorer.noView.body"
defaultMessage="The view you are trying to access does not exist. Please check the URL and try again."
/>
</p>
}
/>
</EuiPageTemplate>
);
};
Loading

0 comments on commit 4f909f9

Please sign in to comment.