Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Unified query language selection in Data Explorer #5504

Closed
shanilpa opened this issue Nov 17, 2023 · 7 comments · Fixed by #6613
Closed

[Feature] Unified query language selection in Data Explorer #5504

shanilpa opened this issue Nov 17, 2023 · 7 comments · Fixed by #6613
Labels
data explorer Issues related to the Data Explorer project discover for discover reinvent enhancement New feature or request v2.14.0

Comments

@shanilpa
Copy link

shanilpa commented Nov 17, 2023

Context

The following issue describes a step towards unification towards a common Data Explorer in OpenSearch Dashboards. Currently (v2.11), in OpenSearch Dashboards there is support for several querying languages including DQL (Dashboards Query Language), Lucene, PPL (Piped Processing Language), and SQL. However, these query languages exist in separate applications with no clear way for users to access them outside of just knowing what is supported where. This results in a poor user experience. This issue existed for data sources which we resolved through an improved data source selector component. Now we seek to do the same for query languages.

The challenge

Part of this solution has been implemented in Observability Logs (v2.11) where users can select PPL, SQL and DQL as a query language from a query language selector - DQL redirects users to Discover. Within Discover users do not have a way to select the other available languages. This issue seeks to address this while improving, and unify the experience in Discover and Observability Logs.

Query picker in Observability Logs 2.11
image

Proposed solution short term

Discover:

image

Observability Logs:

image

The proposed solution places the query language switcher in the same location and with the same look and feel in both applications so users know where to find the functionality and expect consistent actions and behaviors.

Additional details

  1. Query language is dependent on the data source selected. Some data sources may not allow for querying with certain languages. As a result the query language picker needs to be dynamic and only show the querying languages supported for the selected data source
  2. Short term the query language acts as a redirection mechanism between Discover and Observability Logs applications.
  3. In future releases we will seek to break the query language selector and query bar from the composed component that contains the time range selector and execute button. This will allow users more space to query but also modularize the querying component for use elsewhere in the application. More information on the proposed North Star for Data Explorer.
image image
@shanilpa shanilpa added the enhancement New feature or request label Nov 17, 2023
@abbyhu2000 abbyhu2000 added data explorer Issues related to the Data Explorer project discover for discover reinvent and removed untriaged labels Nov 17, 2023
@abbyhu2000
Copy link
Member

Thanks @shanilpa!

After i start my initial implementation, I have some different opinions on this proposal:

  • On the UI mock, the <QueryLanguageSwitcher> is being switched to the left side, and the saved query button is switched to the right side.
    1. Pros: make the observability page and data explorer page look more consistent(since observability page has the query language selector on the left)
    2. Cons:
      1. <QueryLanguageSwitcher> is sub component <QueryBar> which is a sub component of <TopNav> within the data plugin. is an universal component which is used by multiple plugins, such as the dashboard plugin, discover plugin, visualize plugin. It also contains state management logics for persisting data across refresh and also persisting data when we navigate across different pages.
      <div className={className}>
        {this.props.prepend}
        <EuiOutsideClickDetector onOutsideClick={this.onOutsideClick}>
        ...
        </EuiOutsideClickDetector>

        <QueryLanguageSwitcher
          language={this.props.query.language}
          anchorPosition={this.props.languageSwitcherPopoverAnchorPosition}
          onSelectLanguage={this.onSelectLanguage}
          currentApp$={this.props.currentApp$}
        />
      </div>

Switching the locations will make discover page look inconsistent with the rest of the app(core pages such as dashboard page, visualize page). Current user flow include users navigate across visualize page, dashboard page and discover page and expecting the data from top nav(time filter, time refresh interval, global filter) to be persistent, however, making the switch on the top nav UI for discover page alone make this user flow confusing. Since the visualize, dashboard, and discover page are core pages that will always show, and observability page is an optional add-on plugin page, i think it is not worth it to switch the language selector’s position.

Implementation-wise, previously we have the query selector as a pop over button as part of the query bar; and now we want to change the query selector to a drop down and make it separate from the query bar, and put it in front of the query bar. We completely change the structure of this component, so implementation-wise, even though we can do a if(app === ‘data-explorer’), render this new structure, else() -> render the old way, but since it is so different, it feels pretty weird to me if we implement it this way.

I propose three solutions:

  1. Keep the language selector on the right, and making it a dropdown for the discover page. This way can keep the discover page look consistent with the rest of the app while also providing the options to choose PPL as well.
  2. The observability page should use the universal component that is provided by dashboard core, so it looks persistent with the rest of the core app.
  3. Detach the sub-components of and redesign so it provides more flexibility for the pages to arrange the components. This is a much bigger scope task since component involves with lots of the state managements logics.

  • In the proposal, it also mentions that when we do not have observability plugin installed, we should keep the for discover page as it is before. This requires that we add the observability plugin as an optional plugin dependency for the data plugin. However, when i try to implement it, there is an architectural conflicts — observability plugin has data plugin as a required dependency, and data plugin has observability plugin as an optional dependency while also being required to figure out whether observability plugin exists or not by itself. When i was implementing it this way, the compiler is complaining on this circular dependency. One solution is that: Observability plugin could add some service so that whenever it is installed, it will release some kind of signals to let the core plugin know that it installs.

Do you guys have any thoughts on this? @shanilpa @joshuarrrr @kavilla @AMoo-Miki

@shanilpa
Copy link
Author

shanilpa commented Nov 21, 2023

Thanks for the comment and deep dive into the implementation details @abbyhu2000.

I understand the need to make the experience consistent across the application however, the needs of the Discover application are evolving as we think about it's evolution into Data Explorer. These needs do not align with the needs of the < top nav > in other applications such as Dashboards anymore. For example, I don't see a clear customer need for a Dashboard to allow users to switch query languages.

Currently, the top nav used in the core application (Discover, Visualize Dashboards) isn't used in Observability. I am assuming the reason for this is due to the limitations of this component. If we look at the query bar for DQL - that is simply search which from a UX side can be handled in a single line for most cases. However, a query language like PPL or SQL requires wrapping of text, in this case that top nav has to be broken to support the needs of the query language - probably why Observability can't use the core component.

As we try and bring our experiences together and Data Explorer seeks to make things more cohesive for users we will have to take a look at redefining the top nav to support the unique needs of Data Explorer. Breaking up this component, does not mean we lose consistency across the application, but rather an opportunity to define something more flexible and scaleable that can deliver better experiences across the board.

With this said, I understand there are technical limitations with relation to the data plugin and how tightly the front end component is tied to it. I'd love to know more and see how we can evolve both towards a better experience for customers, and builders looking to use our core components in other places.

cc @ahopp @dagneyb if you have any thoughts and comments.

@ashwin-pc
Copy link
Member

@shanilpa There are two different problems we are trying to solve here and would love to hear your thoughts on my suggested approaches to solving for this.

Problem 1: Having more language options than just DQL and Lucene in Data Explorer (Needs to be dynamic such that plugins can define what they are) and switching to a view that can support them when selected.

Problem 2: Displaying it in a way thats in line with the north star

I have a few suggestions on how to solve them both with or without any modifications to the proposal, each with their pros and cons.

Solution 1: Create a new querybar component for Data Explorer.

Pros:

  • This approach no longer uses the standard query bar component from the data plugin and instead creates a new one that can evolve over time into the north star query component.
  • It also has the least tech debt because it does not add any unnecessary logic to the existing data plugin component
  • It can be implemented similar to the north star using the context bar for the time picker and the canvas for the query bar

Cons:

  • Initial investment to recreate the existing query bar functionality without breaking any features.

Solution 2: Modify the existing querybar to work differently in Data explorer

Pros:

  • Quicker to implement
  • Less duplication of code

Cons:

  • More tech debt because the north star querybar will have to be implemented quite differently anyways
  • Hardcoding. Since this is a short term solution, it does not make sense to create a generalized solution to solve the problem of having more query languages in the shared querybar component. So the only option here will be to hard code the extra logic to add PPL if the observability plugin exists. This is dangerous if left in there long term since historical context can be lost over time and break things. This applies to both the look and feel and the query selection problem too.

If there is no immediate urgency to implement the short term solution (and by immediate i mean you need it in a week or two), i'd highly recommend the first solution since that sets us up better for success with data explorer long term and also front loads a lot of the work we will have to do next to get to the north star.

@shanilpa
Copy link
Author

Thanks for the breakdown @ashwin-pc
I'm aligned with Solution 1 from a UX perspective. I think it puts us in a better position to deliver more focused, scaleable and useful query functionality to users.

@dagneyb, @ahopp thoughts?

@dagneyb
Copy link

dagneyb commented Nov 29, 2023

I'm aligned with Solution 1, but am interested in the LoE difference between the two approaches. My answer changes if its 2 weeks of work vs. 2 years :). @ashwin-pc could you do a high level estimate?

@shanilpa
Copy link
Author

shanilpa commented Mar 7, 2024

Updating with the most recent mocks for Discover and placement of the query language selector

image

@kavilla
Copy link
Member

kavilla commented May 2, 2024

Work related to this: #6613

@kavilla kavilla linked a pull request May 2, 2024 that will close this issue
7 tasks
@kavilla kavilla closed this as completed in 7d9b3cd May 9, 2024
abbyhu2000 pushed a commit to abbyhu2000/OpenSearch-Dashboards that referenced this issue May 9, 2024
Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

closes opensearch-project#6639
closes opensearch-project#6311

partially resolves:
opensearch-project#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
ashwin-pc pushed a commit that referenced this issue May 10, 2024
Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

closes #6639
closes #6311

partially resolves:
#5504

* add error data frame



move language to left, some styling and disable per app name



---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
abbyhu2000 added a commit to abbyhu2000/OpenSearch-Dashboards that referenced this issue May 10, 2024
…pensearch-project#6760)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

closes opensearch-project#6639
closes opensearch-project#6311

partially resolves:
opensearch-project#5504

* add error data frame

move language to left, some styling and disable per app name

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
yujin-emma pushed a commit to yujin-emma/OpenSearch-Dashboards that referenced this issue May 10, 2024
Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes opensearch-project#6639 
closes opensearch-project#6311

partially resolves:
opensearch-project#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
zhyuanqi pushed a commit that referenced this issue May 16, 2024
…rm (#6755)

* add test for toast button and validation form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6755 created/updated

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update src/plugins/data_source_management/public/components/toast_button/manage_data_source_button.tsx

Co-authored-by: Lu Yu <nluyu@amazon.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update manage_data_source_button.test.tsx

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for edit data source form (#6742)

* add test for edit data source form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6742 created/updated

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MQL] support enhancing language selector (#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes #6639 
closes #6311

partially resolves:
#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Make Field Name Search Filter Case Insensitive (#6759)

* Make Field Name Filter Case Insensitive

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>

* Changeset file for PR #6759 created/updated

---------

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* address naming for manage data source button test id

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com>
opensearch-trigger-bot bot pushed a commit that referenced this issue May 16, 2024
…rm (#6755)

* add test for toast button and validation form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6755 created/updated

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update src/plugins/data_source_management/public/components/toast_button/manage_data_source_button.tsx

Co-authored-by: Lu Yu <nluyu@amazon.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update manage_data_source_button.test.tsx

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for edit data source form (#6742)

* add test for edit data source form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6742 created/updated

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MQL] support enhancing language selector (#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes #6639
closes #6311

partially resolves:
#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Make Field Name Search Filter Case Insensitive (#6759)

* Make Field Name Filter Case Insensitive

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>

* Changeset file for PR #6759 created/updated

---------

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* address naming for manage data source button test id

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com>
(cherry picked from commit f728b5a)
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
yujin-emma pushed a commit to yujin-emma/OpenSearch-Dashboards that referenced this issue May 16, 2024
Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes opensearch-project#6639 
closes opensearch-project#6311

partially resolves:
opensearch-project#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
yujin-emma added a commit to yujin-emma/OpenSearch-Dashboards that referenced this issue May 16, 2024
…rm (opensearch-project#6755)

* add test for toast button and validation form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR opensearch-project#6755 created/updated

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update src/plugins/data_source_management/public/components/toast_button/manage_data_source_button.tsx

Co-authored-by: Lu Yu <nluyu@amazon.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update manage_data_source_button.test.tsx

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for edit data source form (opensearch-project#6742)

* add test for edit data source form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR opensearch-project#6742 created/updated

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MQL] support enhancing language selector (opensearch-project#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes opensearch-project#6639 
closes opensearch-project#6311

partially resolves:
opensearch-project#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Make Field Name Search Filter Case Insensitive (opensearch-project#6759)

* Make Field Name Filter Case Insensitive

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>

* Changeset file for PR opensearch-project#6759 created/updated

---------

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* address naming for manage data source button test id

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
BionIT added a commit that referenced this issue May 17, 2024
)

* adjust the aggregated view padding

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* WIP

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update src/plugins/data_source_management/public/components/data_source_aggregated_view/data_source_aggregated_view.tsx

Co-authored-by: Xinrui Bai-amazon <139305463+xinruiba@users.noreply.github.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6715 created/updated

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update CHANGELOG.md

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [saved objects] enable deletion of saved objects by type if configured (#6443)

* [saved objects] enable deletion of saved objects by type if configured

Adds the following settings:
```
migrations.delete.enabled
migrations.delete.types
```

`unknown` types already exist but the purpose of this type is for plugins
that are disabled. OpenSearch Dashboards gets confused when a plugin is not
defining a saved object type but the saved object exists. This can occur
when migrating from a non-OSD version and there exists non-compatiable
saved objects.

If OSD is failing to migrate an index because of a document, I can now
configure OSD to delete types of saved objects that I specified because
I know that these types should not be carried over.

resolves: #1040

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

* address comments

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

* Changeset file for PR #6443 created/updated

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [tests] fix tests related to #6443 (#6722)

* [tests] fix tests related to #6443

PR: 6443 merged in previous PR that had an immediate follow up PR
to that PR. But the followup pr was not merged into 6443.

The snapshots got updated to ensure the CI passed for 6443. But
once merged into main, failures were observed.

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

* Changeset file for PR #6722 created/updated

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* feat: add config for topRightNavigation (#6712)

* feat: add config for topRightNavigation

Signed-off-by: tygao <tygao@amazon.com>

* doc: update changelog

Signed-off-by: tygao <tygao@amazon.com>

* Changeset file for PR #6712 created/updated

* test: update context test

Signed-off-by: tygao <tygao@amazon.com>

* doc: update changelog

Signed-off-by: tygao <tygao@amazon.com>

* update changeset

Signed-off-by: tygao <tygao@amazon.com>

* update joi default value

Signed-off-by: tygao <tygao@amazon.com>

* add experimental annotation and add futureNavigation configuration

Signed-off-by: tygao <tygao@amazon.com>

* add experimental annotation and add futureNavigation configuration

Signed-off-by: tygao <tygao@amazon.com>

---------

Signed-off-by: tygao <tygao@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Ashwin P Chandran <ashwinpc@amazon.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* move the css to the data source aggregated view

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test]add more test for icon and aggregated view (#6729)

* add more test for icon and aggregated view

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6729 created/updated

* Update CHANGELOG.md

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* update css file space and use the oui color guideline number to replace the color name in css file

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [OSD Availability] Prevent OSD process crashes when disk is full (#6733)

* prevent crash when disk full

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

* change verbose to false

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

* add changeset file

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

* update changeset contexts

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

* change feature flag name

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

---------

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>
Co-authored-by: ZilongX <99905560+ZilongX@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MDS] Modify toast + popover warning to include incompatible datasources (#6678)

* Fix merge conflict

Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>

* Refactor to incompatibleDataSourcesExist

Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>

* Changeset file for PR #6678 created/updated

* Move required args to the top

Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>

---------

Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for edit data source form (#6742)

* add test for edit data source form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6742 created/updated

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MQL] support enhancing language selector (#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes #6639 
closes #6311

partially resolves:
#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Make Field Name Search Filter Case Insensitive (#6759)

* Make Field Name Filter Case Insensitive

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>

* Changeset file for PR #6759 created/updated

---------

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for error_menu, item, data_source_multi_selectable (#6752)

* add test for data_source_error_menu, data_source_item, data_source_multi_selectable

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6752 created/updated

* add content verify in test

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [2.14][chore] update release notes (#6705)

Updates releases notes. Partially populated with: yarn release_note:generate

And gathered the rest. Cleaned up changelog.

related to: #6254

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* add http://www.site.com to lycheeignore (#6771)

* add http://www.site.com to lycheeignore

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6771 created/updated

* Update .lycheeignore

Co-authored-by: Miki <amoo_miki@yahoo.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Miki <amoo_miki@yahoo.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Workspace] Fix: Show a error toast when workspace read only user delete saved objects (#6756)

* fix: show a error toast when workspace read only user delete saved objects

Signed-off-by: yubonluo <yubonluo@amazon.com>

* Changeset file for PR #6756 created/updated

* Changeset file for PR #6756 created/updated

* optimize the code

Signed-off-by: yubonluo <yubonluo@amazon.com>

* Display the delete modal after failing to delete.

Signed-off-by: yubonluo <yubonluo@amazon.com>

* Add some unit tests

Signed-off-by: yubonluo <yubonluo@amazon.com>

* Add some state assertions

Signed-off-by: yubonluo <yubonluo@amazon.com>

---------

Signed-off-by: yubonluo <yubonluo@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Updating security reachout email (#6778)

Signed-off-by: varun-lodaya <varunml@amazon.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* add @zhyuanqi as a maintainer (#6788)

* add @zhyuanqi as a maintainer

---------

Signed-off-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [OE] Adds dev doc script to precommit hook (#6585)

* Adds doc generation to pre commit hook

Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>

* Add check hook to pre commit

Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>

* Changeset file for PR #6585 created/updated

* Update error message

Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>

* Improve error message

Co-authored-by: Miki <amoo_miki@yahoo.com>
Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>

* fixes lint issue

Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>

---------

Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>
Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Miki <amoo_miki@yahoo.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Move @BSFishy to emeritus maintainer (#6790)

* Move @BSFishy to emeritus maintainer

Signed-off-by: Lu Yu <nluyu@amazon.com>

* Changeset file for PR #6790 created/updated

---------

Signed-off-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* add @mengweieric as maintainer (#6798)

* add @mengweieric as maintainer

Signed-off-by: Lu Yu <nluyu@amazon.com>

* Changeset file for PR #6798 created/updated

---------

Signed-off-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Add OpenAPI specification for get and create saved object APIs  (#6799)

* add openapi doc

Signed-off-by: Lu Yu <nluyu@amazon.com>

* add readme

Signed-off-by: Lu Yu <nluyu@amazon.com>

* Changeset file for PR #6799 created/updated

---------

Signed-off-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test]Add test for toast button and validation form (#6755)

* add test for toast button and validation form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6755 created/updated

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update src/plugins/data_source_management/public/components/toast_button/manage_data_source_button.tsx

Co-authored-by: Lu Yu <nluyu@amazon.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update manage_data_source_button.test.tsx

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for edit data source form (#6742)

* add test for edit data source form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6742 created/updated

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MQL] support enhancing language selector (#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes #6639 
closes #6311

partially resolves:
#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Make Field Name Search Filter Case Insensitive (#6759)

* Make Field Name Filter Case Insensitive

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>

* Changeset file for PR #6759 created/updated

---------

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* address naming for manage data source button test id

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: tygao <tygao@amazon.com>
Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>
Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Signed-off-by: yubonluo <yubonluo@amazon.com>
Signed-off-by: varun-lodaya <varunml@amazon.com>
Signed-off-by: Lu Yu <nluyu@amazon.com>
Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>
Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>
Co-authored-by: Xinrui Bai-amazon <139305463+xinruiba@users.noreply.github.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: tygao <tygao@amazon.com>
Co-authored-by: Ashwin P Chandran <ashwinpc@amazon.com>
Co-authored-by: Tao Liu <33105471+Flyingliuhub@users.noreply.github.com>
Co-authored-by: ZilongX <99905560+ZilongX@users.noreply.github.com>
Co-authored-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com>
Co-authored-by: Miki <amoo_miki@yahoo.com>
Co-authored-by: yuboluo <yubonluo@amazon.com>
Co-authored-by: Varun Lodaya <varunml@amazon.com>
Co-authored-by: Lu Yu <nluyu@amazon.com>
Flyingliuhub pushed a commit that referenced this issue May 17, 2024
…rm (#6755) (#6804)

* add test for toast button and validation form



* Changeset file for PR #6755 created/updated



* Update src/plugins/data_source_management/public/components/toast_button/manage_data_source_button.tsx





* Update manage_data_source_button.test.tsx



* [Multiple Datasource Test] Add test for edit data source form (#6742)

* add test for edit data source form



* Changeset file for PR #6742 created/updated

---------





* [MQL] support enhancing language selector (#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes #6639
closes #6311

partially resolves:
#5504

* add error data frame



move language to left, some styling and disable per app name



---------







* Make Field Name Search Filter Case Insensitive (#6759)

* Make Field Name Filter Case Insensitive



* Changeset file for PR #6759 created/updated

---------





* address naming for manage data source button test id



---------











(cherry picked from commit f728b5a)

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
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>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com>
opensearch-trigger-bot bot pushed a commit that referenced this issue Jun 3, 2024
)

* adjust the aggregated view padding

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* WIP

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update src/plugins/data_source_management/public/components/data_source_aggregated_view/data_source_aggregated_view.tsx

Co-authored-by: Xinrui Bai-amazon <139305463+xinruiba@users.noreply.github.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6715 created/updated

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update CHANGELOG.md

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [saved objects] enable deletion of saved objects by type if configured (#6443)

* [saved objects] enable deletion of saved objects by type if configured

Adds the following settings:
```
migrations.delete.enabled
migrations.delete.types
```

`unknown` types already exist but the purpose of this type is for plugins
that are disabled. OpenSearch Dashboards gets confused when a plugin is not
defining a saved object type but the saved object exists. This can occur
when migrating from a non-OSD version and there exists non-compatiable
saved objects.

If OSD is failing to migrate an index because of a document, I can now
configure OSD to delete types of saved objects that I specified because
I know that these types should not be carried over.

resolves: #1040

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

* address comments

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

* Changeset file for PR #6443 created/updated

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [tests] fix tests related to #6443 (#6722)

* [tests] fix tests related to #6443

PR: 6443 merged in previous PR that had an immediate follow up PR
to that PR. But the followup pr was not merged into 6443.

The snapshots got updated to ensure the CI passed for 6443. But
once merged into main, failures were observed.

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

* Changeset file for PR #6722 created/updated

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* feat: add config for topRightNavigation (#6712)

* feat: add config for topRightNavigation

Signed-off-by: tygao <tygao@amazon.com>

* doc: update changelog

Signed-off-by: tygao <tygao@amazon.com>

* Changeset file for PR #6712 created/updated

* test: update context test

Signed-off-by: tygao <tygao@amazon.com>

* doc: update changelog

Signed-off-by: tygao <tygao@amazon.com>

* update changeset

Signed-off-by: tygao <tygao@amazon.com>

* update joi default value

Signed-off-by: tygao <tygao@amazon.com>

* add experimental annotation and add futureNavigation configuration

Signed-off-by: tygao <tygao@amazon.com>

* add experimental annotation and add futureNavigation configuration

Signed-off-by: tygao <tygao@amazon.com>

---------

Signed-off-by: tygao <tygao@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Ashwin P Chandran <ashwinpc@amazon.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* move the css to the data source aggregated view

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test]add more test for icon and aggregated view (#6729)

* add more test for icon and aggregated view

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6729 created/updated

* Update CHANGELOG.md

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* update css file space and use the oui color guideline number to replace the color name in css file

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [OSD Availability] Prevent OSD process crashes when disk is full (#6733)

* prevent crash when disk full

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

* change verbose to false

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

* add changeset file

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

* update changeset contexts

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

* change feature flag name

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

---------

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>
Co-authored-by: ZilongX <99905560+ZilongX@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MDS] Modify toast + popover warning to include incompatible datasources (#6678)

* Fix merge conflict

Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>

* Refactor to incompatibleDataSourcesExist

Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>

* Changeset file for PR #6678 created/updated

* Move required args to the top

Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>

---------

Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for edit data source form (#6742)

* add test for edit data source form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6742 created/updated

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MQL] support enhancing language selector (#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes #6639
closes #6311

partially resolves:
#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Make Field Name Search Filter Case Insensitive (#6759)

* Make Field Name Filter Case Insensitive

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>

* Changeset file for PR #6759 created/updated

---------

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for error_menu, item, data_source_multi_selectable (#6752)

* add test for data_source_error_menu, data_source_item, data_source_multi_selectable

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6752 created/updated

* add content verify in test

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [2.14][chore] update release notes (#6705)

Updates releases notes. Partially populated with: yarn release_note:generate

And gathered the rest. Cleaned up changelog.

related to: #6254

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* add http://www.site.com to lycheeignore (#6771)

* add http://www.site.com to lycheeignore

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6771 created/updated

* Update .lycheeignore

Co-authored-by: Miki <amoo_miki@yahoo.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Miki <amoo_miki@yahoo.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Workspace] Fix: Show a error toast when workspace read only user delete saved objects (#6756)

* fix: show a error toast when workspace read only user delete saved objects

Signed-off-by: yubonluo <yubonluo@amazon.com>

* Changeset file for PR #6756 created/updated

* Changeset file for PR #6756 created/updated

* optimize the code

Signed-off-by: yubonluo <yubonluo@amazon.com>

* Display the delete modal after failing to delete.

Signed-off-by: yubonluo <yubonluo@amazon.com>

* Add some unit tests

Signed-off-by: yubonluo <yubonluo@amazon.com>

* Add some state assertions

Signed-off-by: yubonluo <yubonluo@amazon.com>

---------

Signed-off-by: yubonluo <yubonluo@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Updating security reachout email (#6778)

Signed-off-by: varun-lodaya <varunml@amazon.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* add @zhyuanqi as a maintainer (#6788)

* add @zhyuanqi as a maintainer

---------

Signed-off-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [OE] Adds dev doc script to precommit hook (#6585)

* Adds doc generation to pre commit hook

Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>

* Add check hook to pre commit

Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>

* Changeset file for PR #6585 created/updated

* Update error message

Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>

* Improve error message

Co-authored-by: Miki <amoo_miki@yahoo.com>
Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>

* fixes lint issue

Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>

---------

Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>
Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Miki <amoo_miki@yahoo.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Move @BSFishy to emeritus maintainer (#6790)

* Move @BSFishy to emeritus maintainer

Signed-off-by: Lu Yu <nluyu@amazon.com>

* Changeset file for PR #6790 created/updated

---------

Signed-off-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* add @mengweieric as maintainer (#6798)

* add @mengweieric as maintainer

Signed-off-by: Lu Yu <nluyu@amazon.com>

* Changeset file for PR #6798 created/updated

---------

Signed-off-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Add OpenAPI specification for get and create saved object APIs  (#6799)

* add openapi doc

Signed-off-by: Lu Yu <nluyu@amazon.com>

* add readme

Signed-off-by: Lu Yu <nluyu@amazon.com>

* Changeset file for PR #6799 created/updated

---------

Signed-off-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test]Add test for toast button and validation form (#6755)

* add test for toast button and validation form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6755 created/updated

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update src/plugins/data_source_management/public/components/toast_button/manage_data_source_button.tsx

Co-authored-by: Lu Yu <nluyu@amazon.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update manage_data_source_button.test.tsx

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for edit data source form (#6742)

* add test for edit data source form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR #6742 created/updated

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MQL] support enhancing language selector (#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes #6639
closes #6311

partially resolves:
#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Make Field Name Search Filter Case Insensitive (#6759)

* Make Field Name Filter Case Insensitive

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>

* Changeset file for PR #6759 created/updated

---------

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* address naming for manage data source button test id

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: tygao <tygao@amazon.com>
Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>
Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Signed-off-by: yubonluo <yubonluo@amazon.com>
Signed-off-by: varun-lodaya <varunml@amazon.com>
Signed-off-by: Lu Yu <nluyu@amazon.com>
Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>
Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>
Co-authored-by: Xinrui Bai-amazon <139305463+xinruiba@users.noreply.github.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: tygao <tygao@amazon.com>
Co-authored-by: Ashwin P Chandran <ashwinpc@amazon.com>
Co-authored-by: Tao Liu <33105471+Flyingliuhub@users.noreply.github.com>
Co-authored-by: ZilongX <99905560+ZilongX@users.noreply.github.com>
Co-authored-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com>
Co-authored-by: Miki <amoo_miki@yahoo.com>
Co-authored-by: yuboluo <yubonluo@amazon.com>
Co-authored-by: Varun Lodaya <varunml@amazon.com>
Co-authored-by: Lu Yu <nluyu@amazon.com>
(cherry picked from commit 9ef7404)
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
zhyuanqi pushed a commit that referenced this issue Jun 3, 2024
) (#6896)

* adjust the aggregated view padding



* WIP



* Update src/plugins/data_source_management/public/components/data_source_aggregated_view/data_source_aggregated_view.tsx





* Changeset file for PR #6715 created/updated



* Update CHANGELOG.md



* [saved objects] enable deletion of saved objects by type if configured (#6443)

* [saved objects] enable deletion of saved objects by type if configured

Adds the following settings:
```
migrations.delete.enabled
migrations.delete.types
```

`unknown` types already exist but the purpose of this type is for plugins
that are disabled. OpenSearch Dashboards gets confused when a plugin is not
defining a saved object type but the saved object exists. This can occur
when migrating from a non-OSD version and there exists non-compatiable
saved objects.

If OSD is failing to migrate an index because of a document, I can now
configure OSD to delete types of saved objects that I specified because
I know that these types should not be carried over.

resolves: #1040



* address comments



* Changeset file for PR #6443 created/updated

---------





* [tests] fix tests related to #6443 (#6722)

* [tests] fix tests related to #6443

PR: 6443 merged in previous PR that had an immediate follow up PR
to that PR. But the followup pr was not merged into 6443.

The snapshots got updated to ensure the CI passed for 6443. But
once merged into main, failures were observed.



* Changeset file for PR #6722 created/updated

---------





* feat: add config for topRightNavigation (#6712)

* feat: add config for topRightNavigation



* doc: update changelog



* Changeset file for PR #6712 created/updated

* test: update context test



* doc: update changelog



* update changeset



* update joi default value



* add experimental annotation and add futureNavigation configuration



* add experimental annotation and add futureNavigation configuration



---------






* move the css to the data source aggregated view



* [Multiple Datasource Test]add more test for icon and aggregated view (#6729)

* add more test for icon and aggregated view



* Changeset file for PR #6729 created/updated

* Update CHANGELOG.md

---------





* update css file space and use the oui color guideline number to replace the color name in css file



* [OSD Availability] Prevent OSD process crashes when disk is full (#6733)

* prevent crash when disk full



* change verbose to false



* add changeset file



* update changeset contexts



* change feature flag name



---------





* [MDS] Modify toast + popover warning to include incompatible datasources (#6678)

* Fix merge conflict



* Refactor to incompatibleDataSourcesExist



* Changeset file for PR #6678 created/updated

* Move required args to the top



---------





* [Multiple Datasource Test] Add test for edit data source form (#6742)

* add test for edit data source form



* Changeset file for PR #6742 created/updated

---------





* [MQL] support enhancing language selector (#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes #6639
closes #6311

partially resolves:
#5504

* add error data frame



move language to left, some styling and disable per app name



---------







* Make Field Name Search Filter Case Insensitive (#6759)

* Make Field Name Filter Case Insensitive



* Changeset file for PR #6759 created/updated

---------





* [Multiple Datasource Test] Add test for error_menu, item, data_source_multi_selectable (#6752)

* add test for data_source_error_menu, data_source_item, data_source_multi_selectable



* Changeset file for PR #6752 created/updated

* add content verify in test



---------





* [2.14][chore] update release notes (#6705)

Updates releases notes. Partially populated with: yarn release_note:generate

And gathered the rest. Cleaned up changelog.

related to: #6254




* add http://www.site.com to lycheeignore (#6771)

* add http://www.site.com to lycheeignore



* Changeset file for PR #6771 created/updated

* Update .lycheeignore




---------







* [Workspace] Fix: Show a error toast when workspace read only user delete saved objects (#6756)

* fix: show a error toast when workspace read only user delete saved objects



* Changeset file for PR #6756 created/updated

* Changeset file for PR #6756 created/updated

* optimize the code



* Display the delete modal after failing to delete.



* Add some unit tests



* Add some state assertions



---------





* Updating security reachout email (#6778)




* add @zhyuanqi as a maintainer (#6788)

* add @zhyuanqi as a maintainer

---------





* [OE] Adds dev doc script to precommit hook (#6585)

* Adds doc generation to pre commit hook



* Add check hook to pre commit



* Changeset file for PR #6585 created/updated

* Update error message



* Improve error message




* fixes lint issue



---------







* Move @BSFishy to emeritus maintainer (#6790)

* Move @BSFishy to emeritus maintainer



* Changeset file for PR #6790 created/updated

---------





* add @mengweieric as maintainer (#6798)

* add @mengweieric as maintainer



* Changeset file for PR #6798 created/updated

---------





* Add OpenAPI specification for get and create saved object APIs  (#6799)

* add openapi doc



* add readme



* Changeset file for PR #6799 created/updated

---------





* [Multiple Datasource Test]Add test for toast button and validation form (#6755)

* add test for toast button and validation form



* Changeset file for PR #6755 created/updated



* Update src/plugins/data_source_management/public/components/toast_button/manage_data_source_button.tsx





* Update manage_data_source_button.test.tsx



* [Multiple Datasource Test] Add test for edit data source form (#6742)

* add test for edit data source form



* Changeset file for PR #6742 created/updated

---------





* [MQL] support enhancing language selector (#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes #6639
closes #6311

partially resolves:
#5504

* add error data frame



move language to left, some styling and disable per app name



---------







* Make Field Name Search Filter Case Insensitive (#6759)

* Make Field Name Filter Case Insensitive



* Changeset file for PR #6759 created/updated

---------





* address naming for manage data source button test id



---------













---------




























(cherry picked from commit 9ef7404)

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: tygao <tygao@amazon.com>
Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>
Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Signed-off-by: yubonluo <yubonluo@amazon.com>
Signed-off-by: varun-lodaya <varunml@amazon.com>
Signed-off-by: Lu Yu <nluyu@amazon.com>
Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>
Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>
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>
Co-authored-by: Xinrui Bai-amazon <139305463+xinruiba@users.noreply.github.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: tygao <tygao@amazon.com>
Co-authored-by: Ashwin P Chandran <ashwinpc@amazon.com>
Co-authored-by: Tao Liu <33105471+Flyingliuhub@users.noreply.github.com>
Co-authored-by: ZilongX <99905560+ZilongX@users.noreply.github.com>
Co-authored-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com>
Co-authored-by: Miki <amoo_miki@yahoo.com>
Co-authored-by: yuboluo <yubonluo@amazon.com>
Co-authored-by: Varun Lodaya <varunml@amazon.com>
Co-authored-by: Lu Yu <nluyu@amazon.com>
LDrago27 pushed a commit to LDrago27/OpenSearch-Dashboards that referenced this issue Jun 3, 2024
Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes opensearch-project#6639 
closes opensearch-project#6311

partially resolves:
opensearch-project#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
LDrago27 added a commit to LDrago27/OpenSearch-Dashboards that referenced this issue Jun 3, 2024
…rm (opensearch-project#6755)

* add test for toast button and validation form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR opensearch-project#6755 created/updated

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update src/plugins/data_source_management/public/components/toast_button/manage_data_source_button.tsx

Co-authored-by: Lu Yu <nluyu@amazon.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update manage_data_source_button.test.tsx

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for edit data source form (opensearch-project#6742)

* add test for edit data source form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR opensearch-project#6742 created/updated

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MQL] support enhancing language selector (opensearch-project#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes opensearch-project#6639 
closes opensearch-project#6311

partially resolves:
opensearch-project#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Make Field Name Search Filter Case Insensitive (opensearch-project#6759)

* Make Field Name Filter Case Insensitive

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>

* Changeset file for PR opensearch-project#6759 created/updated

---------

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* address naming for manage data source button test id

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com>
LDrago27 added a commit to LDrago27/OpenSearch-Dashboards that referenced this issue Jun 3, 2024
…ensearch-project#6715)

* adjust the aggregated view padding

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* WIP

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update src/plugins/data_source_management/public/components/data_source_aggregated_view/data_source_aggregated_view.tsx

Co-authored-by: Xinrui Bai-amazon <139305463+xinruiba@users.noreply.github.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR opensearch-project#6715 created/updated

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update CHANGELOG.md

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [saved objects] enable deletion of saved objects by type if configured (opensearch-project#6443)

* [saved objects] enable deletion of saved objects by type if configured

Adds the following settings:
```
migrations.delete.enabled
migrations.delete.types
```

`unknown` types already exist but the purpose of this type is for plugins
that are disabled. OpenSearch Dashboards gets confused when a plugin is not
defining a saved object type but the saved object exists. This can occur
when migrating from a non-OSD version and there exists non-compatiable
saved objects.

If OSD is failing to migrate an index because of a document, I can now
configure OSD to delete types of saved objects that I specified because
I know that these types should not be carried over.

resolves: opensearch-project#1040

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

* address comments

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

* Changeset file for PR opensearch-project#6443 created/updated

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [tests] fix tests related to opensearch-project#6443 (opensearch-project#6722)

* [tests] fix tests related to opensearch-project#6443

PR: 6443 merged in previous PR that had an immediate follow up PR
to that PR. But the followup pr was not merged into 6443.

The snapshots got updated to ensure the CI passed for 6443. But
once merged into main, failures were observed.

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

* Changeset file for PR opensearch-project#6722 created/updated

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* feat: add config for topRightNavigation (opensearch-project#6712)

* feat: add config for topRightNavigation

Signed-off-by: tygao <tygao@amazon.com>

* doc: update changelog

Signed-off-by: tygao <tygao@amazon.com>

* Changeset file for PR opensearch-project#6712 created/updated

* test: update context test

Signed-off-by: tygao <tygao@amazon.com>

* doc: update changelog

Signed-off-by: tygao <tygao@amazon.com>

* update changeset

Signed-off-by: tygao <tygao@amazon.com>

* update joi default value

Signed-off-by: tygao <tygao@amazon.com>

* add experimental annotation and add futureNavigation configuration

Signed-off-by: tygao <tygao@amazon.com>

* add experimental annotation and add futureNavigation configuration

Signed-off-by: tygao <tygao@amazon.com>

---------

Signed-off-by: tygao <tygao@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Ashwin P Chandran <ashwinpc@amazon.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* move the css to the data source aggregated view

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test]add more test for icon and aggregated view (opensearch-project#6729)

* add more test for icon and aggregated view

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR opensearch-project#6729 created/updated

* Update CHANGELOG.md

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* update css file space and use the oui color guideline number to replace the color name in css file

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [OSD Availability] Prevent OSD process crashes when disk is full (opensearch-project#6733)

* prevent crash when disk full

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

* change verbose to false

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

* add changeset file

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

* update changeset contexts

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

* change feature flag name

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>

---------

Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>
Co-authored-by: ZilongX <99905560+ZilongX@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MDS] Modify toast + popover warning to include incompatible datasources (opensearch-project#6678)

* Fix merge conflict

Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>

* Refactor to incompatibleDataSourcesExist

Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>

* Changeset file for PR opensearch-project#6678 created/updated

* Move required args to the top

Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>

---------

Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for edit data source form (opensearch-project#6742)

* add test for edit data source form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR opensearch-project#6742 created/updated

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MQL] support enhancing language selector (opensearch-project#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes opensearch-project#6639 
closes opensearch-project#6311

partially resolves:
opensearch-project#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Make Field Name Search Filter Case Insensitive (opensearch-project#6759)

* Make Field Name Filter Case Insensitive

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>

* Changeset file for PR opensearch-project#6759 created/updated

---------

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for error_menu, item, data_source_multi_selectable (opensearch-project#6752)

* add test for data_source_error_menu, data_source_item, data_source_multi_selectable

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR opensearch-project#6752 created/updated

* add content verify in test

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [2.14][chore] update release notes (opensearch-project#6705)

Updates releases notes. Partially populated with: yarn release_note:generate

And gathered the rest. Cleaned up changelog.

related to: opensearch-project#6254

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* add http://www.site.com to lycheeignore (opensearch-project#6771)

* add http://www.site.com to lycheeignore

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR opensearch-project#6771 created/updated

* Update .lycheeignore

Co-authored-by: Miki <amoo_miki@yahoo.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Miki <amoo_miki@yahoo.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Workspace] Fix: Show a error toast when workspace read only user delete saved objects (opensearch-project#6756)

* fix: show a error toast when workspace read only user delete saved objects

Signed-off-by: yubonluo <yubonluo@amazon.com>

* Changeset file for PR opensearch-project#6756 created/updated

* Changeset file for PR opensearch-project#6756 created/updated

* optimize the code

Signed-off-by: yubonluo <yubonluo@amazon.com>

* Display the delete modal after failing to delete.

Signed-off-by: yubonluo <yubonluo@amazon.com>

* Add some unit tests

Signed-off-by: yubonluo <yubonluo@amazon.com>

* Add some state assertions

Signed-off-by: yubonluo <yubonluo@amazon.com>

---------

Signed-off-by: yubonluo <yubonluo@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Updating security reachout email (opensearch-project#6778)

Signed-off-by: varun-lodaya <varunml@amazon.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* add @zhyuanqi as a maintainer (opensearch-project#6788)

* add @zhyuanqi as a maintainer

---------

Signed-off-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [OE] Adds dev doc script to precommit hook (opensearch-project#6585)

* Adds doc generation to pre commit hook

Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>

* Add check hook to pre commit

Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>

* Changeset file for PR opensearch-project#6585 created/updated

* Update error message

Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>

* Improve error message

Co-authored-by: Miki <amoo_miki@yahoo.com>
Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>

* fixes lint issue

Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>

---------

Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>
Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Miki <amoo_miki@yahoo.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Move @BSFishy to emeritus maintainer (opensearch-project#6790)

* Move @BSFishy to emeritus maintainer

Signed-off-by: Lu Yu <nluyu@amazon.com>

* Changeset file for PR opensearch-project#6790 created/updated

---------

Signed-off-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* add @mengweieric as maintainer (opensearch-project#6798)

* add @mengweieric as maintainer

Signed-off-by: Lu Yu <nluyu@amazon.com>

* Changeset file for PR opensearch-project#6798 created/updated

---------

Signed-off-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Add OpenAPI specification for get and create saved object APIs  (opensearch-project#6799)

* add openapi doc

Signed-off-by: Lu Yu <nluyu@amazon.com>

* add readme

Signed-off-by: Lu Yu <nluyu@amazon.com>

* Changeset file for PR opensearch-project#6799 created/updated

---------

Signed-off-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test]Add test for toast button and validation form (opensearch-project#6755)

* add test for toast button and validation form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR opensearch-project#6755 created/updated

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update src/plugins/data_source_management/public/components/toast_button/manage_data_source_button.tsx

Co-authored-by: Lu Yu <nluyu@amazon.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Update manage_data_source_button.test.tsx

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [Multiple Datasource Test] Add test for edit data source form (opensearch-project#6742)

* add test for edit data source form

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Changeset file for PR opensearch-project#6742 created/updated

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* [MQL] support enhancing language selector (opensearch-project#6613)

Enable with `data.enhancements.enabled: true`

Allows for enhancing the data plugin UI service and search service.

#### Remaining work
* Address issue with time range being invalid if previous state successfully queried and set it with a time range format that is invalid for the new query language
  * For example, DQL with quick time range (4 weeks to now), get results. Switch to PPL, even though PPL has a default time range enhancement. The props date range saved in the app state takes priority and sets the time range to quick range causing an error. I can still modify the time range and get a successful query but it will first fail until the user updates it to a non quick time range.
* Add tests
* Disable for plugins that do not support the functionality
  * By default index patterns are created with a unique ID. However, it can be enabled to create an index pattern with a custom ID that matches the name of the index pattern (which in turn maps to indices).
  * For seamless integration, the temp data frame would need to check if the index pattern that maps to the data frame name. And get it's id.
  * This means that dashboards with visualizations that were created with an index pattern unique ID still require the existing index pattern to exist in memory.

### Issues Resolved

closes opensearch-project#6639 
closes opensearch-project#6311

partially resolves:
opensearch-project#5504

* add error data frame

Signed-off-by: Paul Sebastian <paulstn@amazon.com>

move language to left, some styling and disable per app name

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>

---------

Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* Make Field Name Search Filter Case Insensitive (opensearch-project#6759)

* Make Field Name Filter Case Insensitive

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>

* Changeset file for PR opensearch-project#6759 created/updated

---------

Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

* address naming for manage data source button test id

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Lu Yu <nluyu@amazon.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com>
Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>

---------

Signed-off-by: yujin-emma <yujin.emma.work@gmail.com>
Signed-off-by: Yu Jin <112784385+yujin-emma@users.noreply.github.com>
Signed-off-by: Kawika Avilla <kavilla414@gmail.com>
Signed-off-by: tygao <tygao@amazon.com>
Signed-off-by: Flyingliuhub <33105471+flyingliuhub@users.noreply.github.com>
Signed-off-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>
Signed-off-by: Paul Sebastian <paulstn@amazon.com>
Signed-off-by: Suchit Sahoo <suchsah@amazon.com>
Signed-off-by: yubonluo <yubonluo@amazon.com>
Signed-off-by: varun-lodaya <varunml@amazon.com>
Signed-off-by: Lu Yu <nluyu@amazon.com>
Signed-off-by: Ashwin P Chandran <ashwinpc@amazon.com>
Signed-off-by: Ashwin P Chandran <ashwinpc1993@gmail.com>
Co-authored-by: Xinrui Bai-amazon <139305463+xinruiba@users.noreply.github.com>
Co-authored-by: opensearch-changeset-bot[bot] <154024398+opensearch-changeset-bot[bot]@users.noreply.github.com>
Co-authored-by: Kawika Avilla <kavilla414@gmail.com>
Co-authored-by: tygao <tygao@amazon.com>
Co-authored-by: Ashwin P Chandran <ashwinpc@amazon.com>
Co-authored-by: Tao Liu <33105471+Flyingliuhub@users.noreply.github.com>
Co-authored-by: ZilongX <99905560+ZilongX@users.noreply.github.com>
Co-authored-by: Huy Nguyen <73027756+huyaboo@users.noreply.github.com>
Co-authored-by: Paul Sebastian <paulstn@amazon.com>
Co-authored-by: Suchit Sahoo <38322563+LDrago27@users.noreply.github.com>
Co-authored-by: Miki <amoo_miki@yahoo.com>
Co-authored-by: yuboluo <yubonluo@amazon.com>
Co-authored-by: Varun Lodaya <varunml@amazon.com>
Co-authored-by: Lu Yu <nluyu@amazon.com>
@github-project-automation github-project-automation bot moved this to 2.14.0 (Launched) in OpenSearch Project Roadmap Aug 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
data explorer Issues related to the Data Explorer project discover for discover reinvent enhancement New feature or request v2.14.0
Projects
Status: 2.14.0 (Launched)
Development

Successfully merging a pull request may close this issue.

6 participants