Skip to content

Commit

Permalink
[Data Explorer] Merge main conflicts (#4800)
Browse files Browse the repository at this point in the history
* [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>

# Conflicts:
#	CHANGELOG.md

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]>
  • Loading branch information
1 parent 8c2e8bf commit 551e432
Show file tree
Hide file tree
Showing 106 changed files with 4,429 additions and 13,419 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
- [Console] Migrate `/lib/autocomplete/` module to TypeScript ([#4148](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4148))
- [Console] Migrate `/lib/!autocomplete/` module to TypeScript ([#4150](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4150))
- [Dashboard] Restructure the `Dashboard` plugin folder to be more cohesive with the project ([#4575](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4575))
- Refactor logo usage to centralize and optimize assets and improve tests ([#4702](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4702))

### 🔩 Tests

Expand Down
93 changes: 93 additions & 0 deletions packages/osd-dev-utils/src/serializers/flat_object_serializer.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
/*
* Copyright OpenSearch Contributors
* SPDX-License-Identifier: Apache-2.0
*/

const walk = (value: any, path: string[] = [], collector: string[] = []) => {
let objValue;
switch (Object.prototype.toString.call(value)) {
case '[object Map]':
case '[object WeakMap]':
// Turn into an Object so it can be iterated
objValue = Object.fromEntries(value);
break;

case '[object Set]':
case '[object WeakSet]':
// Turn into an Array so it can be iterated
objValue = Array.from(value);
break;

case '[object Object]':
case '[object Array]':
objValue = value;
break;

case '[object RegExp]':
case '[object Function]':
case '[object Date]':
case '[object Boolean]':
case '[object Number]':
case '[object Symbol]':
case '[object Error]':
collector.push(`${path.join('.')} = ${value.toString()}`);
break;

case '[object Null]':
collector.push(`${path.join('.')} = null`);
break;

case '[object Undefined]':
collector.push(`${path.join('.')} = undefined`);
break;

case '[object String]':
collector.push(`${path.join('.')} = ${JSON.stringify(value)}`);
break;

case '[object BigInt]':
collector.push(`${path.join('.')} = ${value.toString()}n`);
break;

default:
// if it is a TypedArray, turn it into an array
if (value instanceof Object.getPrototypeOf(Uint8Array)) {
objValue = Array.from(value);
}
}

// If objValue is set, it is an Array or Object that can be iterated; else bail.
if (!objValue) return collector;

if (Array.isArray(objValue)) {
objValue.forEach((v, i) => {
walk(v, [...path, i.toString()], collector);
});
} else {
// eslint-disable-next-line guard-for-in
for (const key in objValue) {
walk(objValue[key], [...path, key], collector);
}
}

return collector;
};

/**
* The serializer flattens objects into dotified key-value pairs, each on a line, and
* sorts them to aid in diff-ing.
*
* Example:
* { K: ["a", "b", { X: 1n }], Y: 1}
*
* Serialized:
* K.0 = "a"
* K.1 = "b"
* K.2.X = 1n
* Y = 1
*/
export const flatObjectSerializer = {
test: (value: any) =>
['[object Object]', '[object Array]'].includes(Object.prototype.toString.call(value)),
serialize: (value: any) => walk(value).sort().join('\n'),
};
1 change: 1 addition & 0 deletions packages/osd-dev-utils/src/serializers/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,3 +34,4 @@ export * from './recursive_serializer';
export * from './any_instance_serizlizer';
export * from './replace_serializer';
export * from './strip_promises_serizlizer';
export * from './flat_object_serializer';
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"font-family": {
"explanation": "All \"font-family\" styles should be inherited from OUI themes and components. Remove the rule.",
"approved": [
"src/plugins/discover_legacy/public/application/_discover.scss",
"src/plugins/maps_legacy/public/map/_leaflet_overrides.scss",
Expand Down
7 changes: 7 additions & 0 deletions src/core/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 { ImageType, ColorScheme, getLogos } from './logos';
export type { Logos } from './types';
Loading

0 comments on commit 551e432

Please sign in to comment.