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

Revert Telemetry #24

Merged
merged 2 commits into from
Feb 15, 2021
Merged

Revert Telemetry #24

merged 2 commits into from
Feb 15, 2021

Conversation

mihirsoni
Copy link
Contributor

Summary

Revert the Telemetry changes , we'll remove it from high level code and keep the rest of the code as it is.

Telemetry #10

Copy link
Contributor

@boktorbb boktorbb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@mihirsoni mihirsoni merged commit e8050eb into opensearch-project:main Feb 15, 2021
@mihirsoni mihirsoni deleted the revert_telementry branch February 15, 2021 19:44
peternied pushed a commit that referenced this pull request Mar 13, 2021
* Revert "Add missing brace lost during merge conflict (#22)"

This reverts commit c6db074.

* Revert "[PURIFY] usageCollector removal of ui metrics reporting (#10) (#18)"

This reverts commit f7243ff.

Signed-off-by: Peter Nied <[email protected]>
wanglam pushed a commit to wanglam/OpenSearch-Dashboards that referenced this pull request Jun 25, 2023
* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>
SuZhou-Joe pushed a commit to SuZhou-Joe/OpenSearch-Dashboards that referenced this pull request Jun 25, 2023
* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>
Hailong-am pushed a commit to Hailong-am/OpenSearch-Dashboards that referenced this pull request Jul 18, 2023
* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>
SuZhou-Joe pushed a commit to SuZhou-Joe/OpenSearch-Dashboards that referenced this pull request Jul 19, 2023
* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>
SuZhou-Joe added a commit to SuZhou-Joe/OpenSearch-Dashboards that referenced this pull request Jul 21, 2023
…project#31)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (#9)

Add workspace dropdown list 

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (opensearch-project#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (opensearch-project#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (opensearch-project#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (opensearch-project#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (opensearch-project#25)

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

* Delete Workspace (opensearch-project#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (opensearch-project#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (opensearch-project#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (opensearch-project#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (opensearch-project#30)

* Move delete button to update page (opensearch-project#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (opensearch-project#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (opensearch-project#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (opensearch-project#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (opensearch-project#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (opensearch-project#39)

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

* Feature/menu change (opensearch-project#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (opensearch-project#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (opensearch-project#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (opensearch-project#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (opensearch-project#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (opensearch-project#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (opensearch-project#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with saved object management page

Signed-off-by: SuZhoue-Joe <[email protected]>

* Revert "feat: extract management code"

This reverts commit 9c765d2.

* Revert "feat: extract management code"

This reverts commit 526c28e.

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: refractor workspacesServiceMock

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make all test pass

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>
gaobinlong added a commit to gaobinlong/OpenSearch-Dashboards that referenced this pull request Jul 21, 2023
…ch-project#45)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (opensearch-project#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (opensearch-project#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (opensearch-project#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (opensearch-project#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (opensearch-project#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (opensearch-project#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (opensearch-project#9)

Add workspace dropdown list 

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (opensearch-project#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (opensearch-project#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (opensearch-project#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (opensearch-project#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (opensearch-project#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (opensearch-project#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (opensearch-project#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (opensearch-project#25)

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

* Delete Workspace (opensearch-project#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (opensearch-project#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (opensearch-project#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (opensearch-project#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (opensearch-project#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (opensearch-project#30)

* Move delete button to update page (opensearch-project#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (opensearch-project#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (opensearch-project#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (opensearch-project#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (opensearch-project#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (opensearch-project#39)

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

* Feature/menu change (opensearch-project#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (opensearch-project#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (opensearch-project#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (opensearch-project#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (opensearch-project#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (opensearch-project#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (opensearch-project#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* allow user to turn on/off workspace from advance settings (opensearch-project#46)

return 404 if accessing a workspace path when workspace is disabled

---------

Signed-off-by: Yulong Ruan <[email protected]>

* fix: unit test failure (opensearch-project#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Add workspace column into saved objects table (opensearch-project#44)

* Add workspace column into saved management page

Signed-off-by: Hailong Cui <[email protected]>

* savedObjectsManagement as optional dependency

Signed-off-by: Hailong Cui <[email protected]>

* i18n for column title

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* feat: make edit url clickable

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* fet: remove useless jump code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>
raintygao pushed a commit to raintygao/OpenSearch-Dashboards that referenced this pull request Aug 4, 2023
* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>
raintygao added a commit to raintygao/OpenSearch-Dashboards that referenced this pull request Aug 4, 2023
…project#31)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (opensearch-project#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (opensearch-project#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (opensearch-project#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (opensearch-project#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (opensearch-project#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (opensearch-project#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (opensearch-project#9)

Add workspace dropdown list 

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (opensearch-project#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (opensearch-project#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (opensearch-project#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (opensearch-project#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (opensearch-project#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (opensearch-project#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (opensearch-project#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (opensearch-project#25)

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

* Delete Workspace (opensearch-project#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (opensearch-project#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (opensearch-project#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (opensearch-project#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (opensearch-project#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (opensearch-project#30)

* Move delete button to update page (opensearch-project#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (opensearch-project#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (opensearch-project#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (opensearch-project#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (opensearch-project#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (opensearch-project#39)

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

* Feature/menu change (opensearch-project#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (opensearch-project#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (opensearch-project#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (opensearch-project#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (opensearch-project#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (opensearch-project#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (opensearch-project#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with saved object management page

Signed-off-by: SuZhoue-Joe <[email protected]>

* Revert "feat: extract management code"

This reverts commit 9c765d2.

* Revert "feat: extract management code"

This reverts commit 526c28e.

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: refractor workspacesServiceMock

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make all test pass

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>
raintygao added a commit to raintygao/OpenSearch-Dashboards that referenced this pull request Aug 4, 2023
…ch-project#45)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (opensearch-project#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (opensearch-project#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (opensearch-project#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (opensearch-project#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (opensearch-project#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (opensearch-project#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (opensearch-project#9)

Add workspace dropdown list 

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (opensearch-project#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (opensearch-project#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (opensearch-project#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (opensearch-project#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (opensearch-project#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (opensearch-project#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (opensearch-project#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (opensearch-project#25)

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

* Delete Workspace (opensearch-project#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (opensearch-project#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (opensearch-project#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (opensearch-project#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (opensearch-project#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (opensearch-project#30)

* Move delete button to update page (opensearch-project#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (opensearch-project#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (opensearch-project#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (opensearch-project#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (opensearch-project#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (opensearch-project#39)

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

* Feature/menu change (opensearch-project#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (opensearch-project#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (opensearch-project#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (opensearch-project#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (opensearch-project#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (opensearch-project#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (opensearch-project#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* allow user to turn on/off workspace from advance settings (opensearch-project#46)

return 404 if accessing a workspace path when workspace is disabled

---------

Signed-off-by: Yulong Ruan <[email protected]>

* fix: unit test failure (opensearch-project#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Add workspace column into saved objects table (opensearch-project#44)

* Add workspace column into saved management page

Signed-off-by: Hailong Cui <[email protected]>

* savedObjectsManagement as optional dependency

Signed-off-by: Hailong Cui <[email protected]>

* i18n for column title

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* feat: make edit url clickable

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* fet: remove useless jump code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>
SuZhou-Joe added a commit to SuZhou-Joe/OpenSearch-Dashboards that referenced this pull request Aug 24, 2023
…oject#62)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (#9)

Add workspace dropdown list 

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (#25)

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

* Delete Workspace (#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (#30)

* Move delete button to update page (#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (#39)

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

* Feature/menu change (#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c5dcde9e134f26b2d6a3df54a2d62e9274.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* allow user to turn on/off workspace from advance settings (#46)

return 404 if accessing a workspace path when workspace is disabled

---------

Signed-off-by: Yulong Ruan <[email protected]>

* fix: unit test failure (#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Add workspace column into saved objects table (#44)

* Add workspace column into saved management page

Signed-off-by: Hailong Cui <[email protected]>

* savedObjectsManagement as optional dependency

Signed-off-by: Hailong Cui <[email protected]>

* i18n for column title

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* fix missing mocks of workspacesSetup

Signed-off-by: Yulong Ruan <[email protected]>

* Integrate workspace service into saved object management (#31)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (#9)

Add workspace dropdown list 

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (#25)

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

* Delete Workspace (#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (#30)

* Move delete button to update page (#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (#39)

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

* Feature/menu change (#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c5dcde9e134f26b2d6a3df54a2d62e9274.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with saved object management page

Signed-off-by: SuZhoue-Joe <[email protected]>

* Revert "feat: extract management code"

This reverts commit 9c765d23aeae8bb76ab35a897e4abef9cc9da860.

* Revert "feat: extract management code"

This reverts commit 526c28e01b2a6b80e4f8ee7170b740f5c452b97c.

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: refractor workspacesServiceMock

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make all test pass

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>

* Feature: hide workspace from saved objects management page. (#45)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (#9)

Add workspace dropdown list 

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (#25)

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

* Delete Workspace (#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (#30)

* Move delete button to update page (#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (#39)

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

* Feature/menu change (#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c5dcde9e134f26b2d6a3df54a2d62e9274.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* allow user to turn on/off workspace from advance settings (#46)

return 404 if accessing a workspace path when workspace is disabled

---------

Signed-off-by: Yulong Ruan <[email protected]>

* fix: unit test failure (#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Add workspace column into saved objects table (#44)

* Add workspace column into saved management page

Signed-off-by: Hailong Cui <[email protected]>

* savedObjectsManagement as optional dependency

Signed-off-by: Hailong Cui <[email protected]>

* i18n for column title

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* feat: make edit url clickable

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* fet: remove useless jump code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>

* Add copy saved objects among workspaces functionality (#53)

* Add copy saved objects among workspaces functionality

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

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

* Fix bug

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

* Fix bug

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

---------

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

* add workspace saved objects client wrapper (#51)

* add workspace savedd objects client wrapper

Signed-off-by: Lin Wang <[email protected]>

* feat: add more methods to saved objects client wrapper

Signed-off-by: Lin Wang <[email protected]>

* feat: add findWithWorkspacePermissionControl in workspace saved objects client wrapper

Signed-off-by: Lin Wang <[email protected]>

* feat: throw 451 instead of interval error

Signed-off-by: Lin Wang <[email protected]>

* chore: fix workspace client init method type error

Signed-off-by: Lin Wang <[email protected]>

* feat: fix workspaces attribute type error in client wrapper

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Refactor navigation links from left menu hard code to workspace plugin register (#55)

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c5dcde9e134f26b2d6a3df54a2d62e9274.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

* Fix build error and part of test error (#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* Comment Alerts and Favorites in left menu

Signed-off-by: yuye-aws <[email protected]>

* Recover recently viewed items in left menu

Signed-off-by: yuye-aws <[email protected]>

* Move exit workspace from left menu to update page

Signed-off-by: yuye-aws <[email protected]>

* Remove unused import

Signed-off-by: yuye-aws <[email protected]>

* Add workspace category info

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace nav link

Signed-off-by: yuye-aws <[email protected]>

* Remove unused import

Signed-off-by: yuye-aws <[email protected]>

* Add FilteredNavLinks props to chrome service mock

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related constans from chrome

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related props from chrome and core

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related props from header

Signed-off-by: yuye-aws <[email protected]>

* Shorten import path for workspace updater

Signed-off-by: yuye-aws <[email protected]>

* Add euiIconType for workspace left menu category

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related props for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related props for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Implement navigation for delete and exit workspace

Signed-off-by: yuye-aws <[email protected]>

* Navigate external links through url change

Signed-off-by: yuye-aws <[email protected]>

* Implement filteredNavLinks and sort ChromeNavLinks in nav link service

Signed-off-by: yuye-aws <[email protected]>

* Add workspace list, see more, admin and overview into chromenavlinks

Signed-off-by: yuye-aws <[email protected]>

* fix: unit test failure (#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Fix osd bootstrap error

Signed-off-by: yuye-aws <[email protected]>

* Check workspace enabled for left menu

Signed-off-by: yuye-aws <[email protected]>

* Add home nav link to left menu when outside workspace

Signed-off-by: yuye-aws <[email protected]>

* Fix unit test for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Fix unit test for header

Signed-off-by: yuye-aws <[email protected]>

* Fix unit test for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Fix unit test for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Update snapshot for unit tests

Signed-off-by: yuye-aws <[email protected]>

* fix osd bootstrap error

Signed-off-by: yuye-aws <[email protected]>

* fix combinelatest import error

Signed-off-by: yuye-aws <[email protected]>

* update snapshot for unit tests

Signed-off-by: yuye-aws <[email protected]>

* variable rename

Signed-off-by: yuye-aws <[email protected]>

* move custom nav link to mock props

Signed-off-by: yuye-aws <[email protected]>

* move default filtered nav link to core

Signed-off-by: yuye-aws <[email protected]>

* change navigation method in workspace updater

Signed-off-by: yuye-aws <[email protected]>

* Update src/plugins/workspace/public/components/workspace_updater/workspace_updater.tsx

Co-authored-by: SuZhou-Joe <[email protected]>

* revert some unncessary changes

Signed-off-by: yuye-aws <[email protected]>

* fix navigation url bug

Signed-off-by: yuye-aws <[email protected]>

* move default filtered nav link value setting from core to workspace plugin

Signed-off-by: yuye-aws <[email protected]>

* move filter nav link to a new function

Signed-off-by: yuye-aws <[email protected]>

* process filter nav links when workspace is disabled

Signed-off-by: yuye-aws <[email protected]>

* change navigation method

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>
Co-authored-by: raintygao <[email protected]>

* fix: osd bootstrap error (#57)

* fix osd bootstrap error

Signed-off-by: yuye-aws <[email protected]>

* fix build plugins error

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: filter out ADMIN application and add feature dependency logic (#49)

* feat: filter out ADMIN application and add feature dependency logic

Signed-off-by: Lin Wang <[email protected]>

* feat: separate feature utils function

Signed-off-by: Lin Wang <[email protected]>

* feat: rename isFeatureDependBySelectedFeatures, separate generateFeatureDependencyMap and add annotation

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: do not register app when feature flag is off (#56)

* feat: do not register app when feature flag is off

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: comply with the category name

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: opt according to PR

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize the comment

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhou-Joe <[email protected]>

* Sort category and non-category nav link according to order in left menu (#60)

* change order for home

Signed-off-by: yuye-aws <[email protected]>

* Sort category and non-category navlink types in left menu

Signed-off-by: yuye-aws <[email protected]>

* change order for overview when inside workspace

Signed-off-by: yuye-aws <[email protected]>

* assign sorted unknowns to another variable

Signed-off-by: yuye-aws <[email protected]>

* change annotation

Signed-off-by: yuye-aws <[email protected]>

* refactor function getMergedNavLinks in left menu

Signed-off-by: yuye-aws <[email protected]>

* fix zero order bug

Signed-off-by: yuye-aws <[email protected]>

* add annotation

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* Refactor: Assign default value for filtered nav links (#64)

* remove default filtered nav link value set

Signed-off-by: yuye-aws <[email protected]>

* default value for nav link

Signed-off-by: yuye-aws <[email protected]>

* refactor currentworkspace logic

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* Permission control service for saved objects (#63)

* feat: move permission control to saved objects directory

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: use bulkGetObjects and fix unit test

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add http routes for validate & list

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: move permissionModes to common place

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: rename routes

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: some side effects

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: some side effects

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: make importing workspace-specific objects as copy

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make unit test pass

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: revert the workspace change

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make import support multiple workspaces

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: change logic

Signed-off-by: SuZhou-Joe <suzhou@am…
SuZhou-Joe pushed a commit to SuZhou-Joe/OpenSearch-Dashboards that referenced this pull request Sep 14, 2023
* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>
SuZhou-Joe added a commit to SuZhou-Joe/OpenSearch-Dashboards that referenced this pull request Sep 14, 2023
…project#31)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (#9)

Add workspace dropdown list

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (opensearch-project#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (opensearch-project#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (opensearch-project#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (opensearch-project#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (opensearch-project#25)

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

* Delete Workspace (opensearch-project#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (opensearch-project#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (opensearch-project#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (opensearch-project#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (opensearch-project#30)

* Move delete button to update page (opensearch-project#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (opensearch-project#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (opensearch-project#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (opensearch-project#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (opensearch-project#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (opensearch-project#39)

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

* Feature/menu change (opensearch-project#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (opensearch-project#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (opensearch-project#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (opensearch-project#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (opensearch-project#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (opensearch-project#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (opensearch-project#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with saved object management page

Signed-off-by: SuZhoue-Joe <[email protected]>

* Revert "feat: extract management code"

This reverts commit 9c765d2.

* Revert "feat: extract management code"

This reverts commit 526c28e.

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: refractor workspacesServiceMock

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make all test pass

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>
SuZhou-Joe added a commit to SuZhou-Joe/OpenSearch-Dashboards that referenced this pull request Sep 14, 2023
…ch-project#45)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (#9)

Add workspace dropdown list 

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (opensearch-project#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (opensearch-project#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (opensearch-project#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (opensearch-project#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (opensearch-project#25)

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

* Delete Workspace (opensearch-project#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (opensearch-project#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (opensearch-project#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (opensearch-project#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (opensearch-project#30)

* Move delete button to update page (opensearch-project#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (opensearch-project#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (opensearch-project#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (opensearch-project#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (opensearch-project#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (opensearch-project#39)

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

* Feature/menu change (opensearch-project#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (opensearch-project#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (opensearch-project#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (opensearch-project#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (opensearch-project#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (opensearch-project#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (opensearch-project#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* allow user to turn on/off workspace from advance settings (opensearch-project#46)

return 404 if accessing a workspace path when workspace is disabled

---------

Signed-off-by: Yulong Ruan <[email protected]>

* fix: unit test failure (opensearch-project#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Add workspace column into saved objects table (opensearch-project#44)

* Add workspace column into saved management page

Signed-off-by: Hailong Cui <[email protected]>

* savedObjectsManagement as optional dependency

Signed-off-by: Hailong Cui <[email protected]>

* i18n for column title

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* feat: make edit url clickable

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* fet: remove useless jump code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>
SuZhou-Joe added a commit to SuZhou-Joe/OpenSearch-Dashboards that referenced this pull request Sep 14, 2023
…oject#62)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (#9)

Add workspace dropdown list 

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (#25)

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

* Delete Workspace (#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (#30)

* Move delete button to update page (#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (#39)

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

* Feature/menu change (#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c5dcde9e134f26b2d6a3df54a2d62e9274.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* allow user to turn on/off workspace from advance settings (#46)

return 404 if accessing a workspace path when workspace is disabled

---------

Signed-off-by: Yulong Ruan <[email protected]>

* fix: unit test failure (#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Add workspace column into saved objects table (#44)

* Add workspace column into saved management page

Signed-off-by: Hailong Cui <[email protected]>

* savedObjectsManagement as optional dependency

Signed-off-by: Hailong Cui <[email protected]>

* i18n for column title

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* fix missing mocks of workspacesSetup

Signed-off-by: Yulong Ruan <[email protected]>

* Integrate workspace service into saved object management (#31)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (#9)

Add workspace dropdown list 

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (#25)

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

* Delete Workspace (#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (#30)

* Move delete button to update page (#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (#39)

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

* Feature/menu change (#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c5dcde9e134f26b2d6a3df54a2d62e9274.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with saved object management page

Signed-off-by: SuZhoue-Joe <[email protected]>

* Revert "feat: extract management code"

This reverts commit 9c765d23aeae8bb76ab35a897e4abef9cc9da860.

* Revert "feat: extract management code"

This reverts commit 526c28e01b2a6b80e4f8ee7170b740f5c452b97c.

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: refractor workspacesServiceMock

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make all test pass

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>

* Feature: hide workspace from saved objects management page. (#45)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (#9)

Add workspace dropdown list 

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (#25)

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

* Delete Workspace (#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (#30)

* Move delete button to update page (#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (#39)

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

* Feature/menu change (#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c5dcde9e134f26b2d6a3df54a2d62e9274.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* allow user to turn on/off workspace from advance settings (#46)

return 404 if accessing a workspace path when workspace is disabled

---------

Signed-off-by: Yulong Ruan <[email protected]>

* fix: unit test failure (#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Add workspace column into saved objects table (#44)

* Add workspace column into saved management page

Signed-off-by: Hailong Cui <[email protected]>

* savedObjectsManagement as optional dependency

Signed-off-by: Hailong Cui <[email protected]>

* i18n for column title

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* feat: make edit url clickable

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* fet: remove useless jump code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>

* Add copy saved objects among workspaces functionality (#53)

* Add copy saved objects among workspaces functionality

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

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

* Fix bug

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

* Fix bug

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

---------

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

* add workspace saved objects client wrapper (#51)

* add workspace savedd objects client wrapper

Signed-off-by: Lin Wang <[email protected]>

* feat: add more methods to saved objects client wrapper

Signed-off-by: Lin Wang <[email protected]>

* feat: add findWithWorkspacePermissionControl in workspace saved objects client wrapper

Signed-off-by: Lin Wang <[email protected]>

* feat: throw 451 instead of interval error

Signed-off-by: Lin Wang <[email protected]>

* chore: fix workspace client init method type error

Signed-off-by: Lin Wang <[email protected]>

* feat: fix workspaces attribute type error in client wrapper

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Refactor navigation links from left menu hard code to workspace plugin register (#55)

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c5dcde9e134f26b2d6a3df54a2d62e9274.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

* Fix build error and part of test error (#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* Comment Alerts and Favorites in left menu

Signed-off-by: yuye-aws <[email protected]>

* Recover recently viewed items in left menu

Signed-off-by: yuye-aws <[email protected]>

* Move exit workspace from left menu to update page

Signed-off-by: yuye-aws <[email protected]>

* Remove unused import

Signed-off-by: yuye-aws <[email protected]>

* Add workspace category info

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace nav link

Signed-off-by: yuye-aws <[email protected]>

* Remove unused import

Signed-off-by: yuye-aws <[email protected]>

* Add FilteredNavLinks props to chrome service mock

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related constans from chrome

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related props from chrome and core

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related props from header

Signed-off-by: yuye-aws <[email protected]>

* Shorten import path for workspace updater

Signed-off-by: yuye-aws <[email protected]>

* Add euiIconType for workspace left menu category

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related props for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related props for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Implement navigation for delete and exit workspace

Signed-off-by: yuye-aws <[email protected]>

* Navigate external links through url change

Signed-off-by: yuye-aws <[email protected]>

* Implement filteredNavLinks and sort ChromeNavLinks in nav link service

Signed-off-by: yuye-aws <[email protected]>

* Add workspace list, see more, admin and overview into chromenavlinks

Signed-off-by: yuye-aws <[email protected]>

* fix: unit test failure (#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Fix osd bootstrap error

Signed-off-by: yuye-aws <[email protected]>

* Check workspace enabled for left menu

Signed-off-by: yuye-aws <[email protected]>

* Add home nav link to left menu when outside workspace

Signed-off-by: yuye-aws <[email protected]>

* Fix unit test for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Fix unit test for header

Signed-off-by: yuye-aws <[email protected]>

* Fix unit test for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Fix unit test for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Update snapshot for unit tests

Signed-off-by: yuye-aws <[email protected]>

* fix osd bootstrap error

Signed-off-by: yuye-aws <[email protected]>

* fix combinelatest import error

Signed-off-by: yuye-aws <[email protected]>

* update snapshot for unit tests

Signed-off-by: yuye-aws <[email protected]>

* variable rename

Signed-off-by: yuye-aws <[email protected]>

* move custom nav link to mock props

Signed-off-by: yuye-aws <[email protected]>

* move default filtered nav link to core

Signed-off-by: yuye-aws <[email protected]>

* change navigation method in workspace updater

Signed-off-by: yuye-aws <[email protected]>

* Update src/plugins/workspace/public/components/workspace_updater/workspace_updater.tsx

Co-authored-by: SuZhou-Joe <[email protected]>

* revert some unncessary changes

Signed-off-by: yuye-aws <[email protected]>

* fix navigation url bug

Signed-off-by: yuye-aws <[email protected]>

* move default filtered nav link value setting from core to workspace plugin

Signed-off-by: yuye-aws <[email protected]>

* move filter nav link to a new function

Signed-off-by: yuye-aws <[email protected]>

* process filter nav links when workspace is disabled

Signed-off-by: yuye-aws <[email protected]>

* change navigation method

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>
Co-authored-by: raintygao <[email protected]>

* fix: osd bootstrap error (#57)

* fix osd bootstrap error

Signed-off-by: yuye-aws <[email protected]>

* fix build plugins error

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: filter out ADMIN application and add feature dependency logic (#49)

* feat: filter out ADMIN application and add feature dependency logic

Signed-off-by: Lin Wang <[email protected]>

* feat: separate feature utils function

Signed-off-by: Lin Wang <[email protected]>

* feat: rename isFeatureDependBySelectedFeatures, separate generateFeatureDependencyMap and add annotation

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: do not register app when feature flag is off (#56)

* feat: do not register app when feature flag is off

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: comply with the category name

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: opt according to PR

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize the comment

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhou-Joe <[email protected]>

* Sort category and non-category nav link according to order in left menu (#60)

* change order for home

Signed-off-by: yuye-aws <[email protected]>

* Sort category and non-category navlink types in left menu

Signed-off-by: yuye-aws <[email protected]>

* change order for overview when inside workspace

Signed-off-by: yuye-aws <[email protected]>

* assign sorted unknowns to another variable

Signed-off-by: yuye-aws <[email protected]>

* change annotation

Signed-off-by: yuye-aws <[email protected]>

* refactor function getMergedNavLinks in left menu

Signed-off-by: yuye-aws <[email protected]>

* fix zero order bug

Signed-off-by: yuye-aws <[email protected]>

* add annotation

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* Refactor: Assign default value for filtered nav links (#64)

* remove default filtered nav link value set

Signed-off-by: yuye-aws <[email protected]>

* default value for nav link

Signed-off-by: yuye-aws <[email protected]>

* refactor currentworkspace logic

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* Permission control service for saved objects (#63)

* feat: move permission control to saved objects directory

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: use bulkGetObjects and fix unit test

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add http routes for validate & list

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: move permissionModes to common place

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: rename routes

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: some side effects

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: some side effects

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: make importing workspace-specific objects as copy

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make unit test pass

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: revert the workspace change

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make import support multiple workspaces

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: change logic

Signed-off-by: SuZhou-Joe <suzhou@am…
Hailong-am pushed a commit to Hailong-am/OpenSearch-Dashboards that referenced this pull request Sep 15, 2023
* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>
Hailong-am added a commit to Hailong-am/OpenSearch-Dashboards that referenced this pull request Sep 15, 2023
…project#31)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (opensearch-project#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (opensearch-project#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (opensearch-project#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (opensearch-project#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (opensearch-project#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (opensearch-project#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (opensearch-project#9)

Add workspace dropdown list

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (opensearch-project#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (opensearch-project#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (opensearch-project#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (opensearch-project#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (opensearch-project#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (opensearch-project#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (opensearch-project#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (opensearch-project#25)

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

* Delete Workspace (opensearch-project#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (opensearch-project#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (opensearch-project#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (opensearch-project#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (opensearch-project#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (opensearch-project#30)

* Move delete button to update page (opensearch-project#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (opensearch-project#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (opensearch-project#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (opensearch-project#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (opensearch-project#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (opensearch-project#39)

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

* Feature/menu change (opensearch-project#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (opensearch-project#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (opensearch-project#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (opensearch-project#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (opensearch-project#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (opensearch-project#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (opensearch-project#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with saved object management page

Signed-off-by: SuZhoue-Joe <[email protected]>

* Revert "feat: extract management code"

This reverts commit 9c765d2.

* Revert "feat: extract management code"

This reverts commit 526c28e.

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: refractor workspacesServiceMock

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make all test pass

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>
Hailong-am added a commit to Hailong-am/OpenSearch-Dashboards that referenced this pull request Sep 15, 2023
…ch-project#45)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (opensearch-project#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (opensearch-project#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (opensearch-project#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (opensearch-project#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (opensearch-project#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (opensearch-project#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (opensearch-project#9)

Add workspace dropdown list 

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (opensearch-project#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (opensearch-project#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (opensearch-project#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (opensearch-project#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (opensearch-project#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (opensearch-project#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (opensearch-project#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (opensearch-project#25)

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

* Delete Workspace (opensearch-project#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (opensearch-project#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (opensearch-project#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (opensearch-project#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (opensearch-project#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (opensearch-project#30)

* Move delete button to update page (opensearch-project#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (opensearch-project#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (opensearch-project#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (opensearch-project#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (opensearch-project#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (opensearch-project#39)

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

* Feature/menu change (opensearch-project#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (opensearch-project#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (opensearch-project#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (opensearch-project#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (opensearch-project#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (opensearch-project#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (opensearch-project#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* allow user to turn on/off workspace from advance settings (opensearch-project#46)

return 404 if accessing a workspace path when workspace is disabled

---------

Signed-off-by: Yulong Ruan <[email protected]>

* fix: unit test failure (opensearch-project#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Add workspace column into saved objects table (opensearch-project#44)

* Add workspace column into saved management page

Signed-off-by: Hailong Cui <[email protected]>

* savedObjectsManagement as optional dependency

Signed-off-by: Hailong Cui <[email protected]>

* i18n for column title

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* feat: make edit url clickable

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* fet: remove useless jump code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>
Hailong-am added a commit to Hailong-am/OpenSearch-Dashboards that referenced this pull request Sep 15, 2023
…oject#62)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (#9)

Add workspace dropdown list

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (#25)

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

* Delete Workspace (#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (#30)

* Move delete button to update page (#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (#39)

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

* Feature/menu change (#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c5dcde9e134f26b2d6a3df54a2d62e9274.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* allow user to turn on/off workspace from advance settings (#46)

return 404 if accessing a workspace path when workspace is disabled

---------

Signed-off-by: Yulong Ruan <[email protected]>

* fix: unit test failure (#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Add workspace column into saved objects table (#44)

* Add workspace column into saved management page

Signed-off-by: Hailong Cui <[email protected]>

* savedObjectsManagement as optional dependency

Signed-off-by: Hailong Cui <[email protected]>

* i18n for column title

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* fix missing mocks of workspacesSetup

Signed-off-by: Yulong Ruan <[email protected]>

* Integrate workspace service into saved object management (#31)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (#9)

Add workspace dropdown list

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (#25)

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

* Delete Workspace (#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (#30)

* Move delete button to update page (#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (#39)

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

* Feature/menu change (#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c5dcde9e134f26b2d6a3df54a2d62e9274.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with saved object management page

Signed-off-by: SuZhoue-Joe <[email protected]>

* Revert "feat: extract management code"

This reverts commit 9c765d23aeae8bb76ab35a897e4abef9cc9da860.

* Revert "feat: extract management code"

This reverts commit 526c28e01b2a6b80e4f8ee7170b740f5c452b97c.

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: remove useless import

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: refractor workspacesServiceMock

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make all test pass

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>

* Feature: hide workspace from saved objects management page. (#45)

* setup workspace plugin project skeleton

Signed-off-by: Yulong Ruan <[email protected]>

* test: add unit tests

add license header

Signed-off-by: Yulong Ruan <[email protected]>

* workspace template init commit

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template into hooks

Signed-off-by: Hailong Cui <[email protected]>

* refacter workspace template hooks

Signed-off-by: Hailong Cui <[email protected]>

* update coverImage comments

Signed-off-by: Hailong Cui <[email protected]>

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add interfaces for workspaces client

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client type interface

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: changes to client implement

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: implement more for workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add workspace creator page (#5)

* feat: add workspace creator page

Signed-off-by: Lin Wang <[email protected]>

* feat: integrate with application workspace template

Signed-off-by: Lin Wang <[email protected]>

* feat: add max-width and remove image wrapper if not exists

Signed-off-by: Lin Wang <[email protected]>

* feat: update filter condition to align with collapsible nav

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add validation when load page (#8)

* fix: validation & query

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify file name to reduce confusion

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add landing logic to retrive workspace id

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add worklist observable

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make client more robust

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use Subject

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use BehaviorObject and optimize code (#14)

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: integrate with workspace create API (#13)

* feat: integrate with workspace create API

Signed-off-by: Lin Wang <[email protected]>

* feat: update to i18n text for toast

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Add currentWorkspace$ (#15)

* feat: add currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: add emit on currentWorkspace$

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* register plugin with workspace template (#16)

Signed-off-by: Hailong Cui <[email protected]>

* workspace dropdown list (#9)

Add workspace dropdown list

---------

Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: suzhou <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>

* init workspace menu stage 1 (#12)

* feat: init workspace menu stage 1

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

* fix: remove port diff

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

* feat: update menu logic

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

---------

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

* Fix template registration import error (#21)

* fix import error

Signed-off-by: Hailong Cui <[email protected]>

* fix osd bootstrap failure

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* Add workspace overview page (#19)

* feat: add workspace overview page

Signed-off-by: Lin Wang <[email protected]>

* refactor: move paths to common constants

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace overview item by custom nav in start phase

Signed-off-by: Lin Wang <[email protected]>

* refactor: change to currentWorkspace$ in workspace client

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: navigate to workspace create page after button clicked (#23)

Signed-off-by: Lin Wang <[email protected]>

* fix failed test snapshots (#22)

fix failed test snapshots

temporary fix: fetch functional test from main branch

fixed git error which cannot find ref due to feature branch `workspace`
not exists on repo opensearch-dashboards-functional-test

Signed-off-by: Yulong Ruan <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>

* change to currentWorkspace, wrap title using i18n (#20)

* change to currentWorkspace, wrap title using i18n

Signed-off-by: zhichao-aws <[email protected]>

* change import

Signed-off-by: zhichao-aws <[email protected]>

* directly return [] if currentWorkspace is null

Signed-off-by: zhichao-aws <[email protected]>

---------

Signed-off-by: zhichao-aws <[email protected]>

* add workspace switch (#17)

* feat: update workspace switch

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

* fix: fix switch error

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

* fix: fix prettier after merge

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

* chore: remove extra code after merge

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

---------

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

* Add update workspace page (#25)

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

* Delete Workspace (#24)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: redirect to overview page after workspace switch (#26)

Signed-off-by: Lin Wang <[email protected]>

* update menu filter logic (#28)

* feat: update menu logic

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

* fix: use navLinks to filter

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

---------

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

* feat: redirect to workspace overview page after created success (#29)

Signed-off-by: Lin Wang <[email protected]>

* [Feature] Complied saved_objects create/find (#18)

* temp: save

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make create/find support workspaces

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: build error

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: enable workspaces on saved client server side

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some optimization

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: extract management code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: merge fix

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: reuse common function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code when create

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless test code

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: redirect to workspace update page after workspace switch (#30)

* Move delete button to update page (#27)

* add delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* implement delete on workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* fix export on delete workspace modal

Signed-off-by: yuye-aws <[email protected]>

* add try catch to handle errors for workspace delete

Signed-off-by: yuye-aws <[email protected]>

* move visibility control to workspace overview page exlusively

Signed-off-by: yuye-aws <[email protected]>

* remove unused import

Signed-off-by: yuye-aws <[email protected]>

* change workspace overview route to workspace update

Signed-off-by: yuye-aws <[email protected]>

* move delete button from workspace overview page to update page

Signed-off-by: yuye-aws <[email protected]>

* remove update button from workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* recover router to workspace overview page

Signed-off-by: yuye-aws <[email protected]>

* change navigation url for workspace overview button on left side panel

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* fix: linting error

Signed-off-by: Yulong Ruan <[email protected]>

* remove duplicate EuiPage (#34)

* remove duplicate EuiPage

Signed-off-by: Hailong Cui <[email protected]>

* fix: remove duplicate workspace template

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* remove clear button, add the width of create button (#33)

Signed-off-by: zhichao-aws <[email protected]>

* rename OpenSearch Plugins to OpenSearch Features

this is a temporary fix just for demo, should be reverted later

Signed-off-by: Yulong Ruan <[email protected]>

* Add some logic check when overwrite a saved object (#32)

* feat: add some logic check when overwrite a saved object

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhoue-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>

* Add color, icon and defaultVISTheme for workspace (#36)

* feat: add color, icon and defaultVISTheme field for workspace saved object

Signed-off-by: Lin Wang <[email protected]>

* add new fields to workspace form

Signed-off-by: Lin Wang <[email protected]>

* feat: remove feature or group name hack

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: add workspace list (#39)

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

* Feature/menu change (#37)

* feat: register library menus

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: some update

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* feat: different left menu and exit workspace (#38)

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for collapsible nav: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Add three props to mock props for header: exitWorkspace, getWorkspaceUrl, workspaceList$

Signed-off-by: yuye-aws <[email protected]>

* Fix bugs for function createWorkspaceNavLink

Signed-off-by: yuye-aws <[email protected]>

* Remove unused constants

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c5dcde9e134f26b2d6a3df54a2d62e9274.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: make url stateful (#35)

* feat: make url stateful

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: remove useless change

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: optimize url listener

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: make formatUrlWithWorkspaceId extensible

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify to related components

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: modify the async format to be sync function

Signed-off-by: SuZhoue-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhoue-Joe <[email protected]>

* feat: use path to maintain workspace info

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>

* Fix build error and part of test error (#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* feat: optimize code (#40)

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: bootstrap error (#43)

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add workspace permission control interface (#41)

* feat: add workspace permission control interface

Signed-off-by: Lin Wang <[email protected]>

* feat: add request parameter for workspace permission control

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* allow user to turn on/off workspace from advance settings (#46)

return 404 if accessing a workspace path when workspace is disabled

---------

Signed-off-by: Yulong Ruan <[email protected]>

* fix: unit test failure (#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Add workspace column into saved objects table (#44)

* Add workspace column into saved management page

Signed-off-by: Hailong Cui <[email protected]>

* savedObjectsManagement as optional dependency

Signed-off-by: Hailong Cui <[email protected]>

* i18n for column title

Signed-off-by: Hailong Cui <[email protected]>

---------

Signed-off-by: Hailong Cui <[email protected]>

* feat: make edit url clickable

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add ui capability path

Signed-off-by: SuZhou-Joe <[email protected]>

* fet: remove useless jump code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: hide workspace from saved objects management page

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>

* Add copy saved objects among workspaces functionality (#53)

* Add copy saved objects among workspaces functionality

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

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

* Fix bug

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

* Fix bug

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

---------

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

* add workspace saved objects client wrapper (#51)

* add workspace savedd objects client wrapper

Signed-off-by: Lin Wang <[email protected]>

* feat: add more methods to saved objects client wrapper

Signed-off-by: Lin Wang <[email protected]>

* feat: add findWithWorkspacePermissionControl in workspace saved objects client wrapper

Signed-off-by: Lin Wang <[email protected]>

* feat: throw 451 instead of interval error

Signed-off-by: Lin Wang <[email protected]>

* chore: fix workspace client init method type error

Signed-off-by: Lin Wang <[email protected]>

* feat: fix workspaces attribute type error in client wrapper

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* Refactor navigation links from left menu hard code to workspace plugin register (#55)

* feature: add public/workspaces service

Signed-off-by: SuZhoue-Joe <[email protected]>

* Exit workspace from left menu

Signed-off-by: yuye-aws <[email protected]>

* Show exit workspace button with small window size

Signed-off-by: yuye-aws <[email protected]>

* Remove recently viewed and workspace overview on left menu

Signed-off-by: yuye-aws <[email protected]>

* Add buttons for outside, inside workspace case

Signed-off-by: yuye-aws <[email protected]>

* Implement home button and workspace over view button on left menu

Signed-off-by: yuye-aws <[email protected]>

* Implement workspace dropdown list in left menu

Signed-off-by: yuye-aws <[email protected]>

* Add props on recently accessed and custom nav link

Signed-off-by: yuye-aws <[email protected]>

* Reuse method getWorkspaceUrl

Signed-off-by: yuye-aws <[email protected]>

* Remove recently accessed and custom nav props in test

Signed-off-by: yuye-aws <[email protected]>

* Revert "Remove recently accessed and custom nav props in test"

This reverts commit 7895e5c5dcde9e134f26b2d6a3df54a2d62e9274.

* Wrap title with i18n

Signed-off-by: yuye-aws <[email protected]>

* Add redirect for workspace app

Signed-off-by: yuye-aws <[email protected]>

* Enable users to go to workspace lists page via see more under workspaces in left menu

Signed-off-by: yuye-aws <[email protected]>

* Fix build error and part of test error (#42)

* fix: fix build error and some ut

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

* chore: remove saved object client test diff

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

---------

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

* Comment Alerts and Favorites in left menu

Signed-off-by: yuye-aws <[email protected]>

* Recover recently viewed items in left menu

Signed-off-by: yuye-aws <[email protected]>

* Move exit workspace from left menu to update page

Signed-off-by: yuye-aws <[email protected]>

* Remove unused import

Signed-off-by: yuye-aws <[email protected]>

* Add workspace category info

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace nav link

Signed-off-by: yuye-aws <[email protected]>

* Remove unused import

Signed-off-by: yuye-aws <[email protected]>

* Add FilteredNavLinks props to chrome service mock

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related constans from chrome

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related props from chrome and core

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related props from header

Signed-off-by: yuye-aws <[email protected]>

* Shorten import path for workspace updater

Signed-off-by: yuye-aws <[email protected]>

* Add euiIconType for workspace left menu category

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related props for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Remove workspace related props for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Implement navigation for delete and exit workspace

Signed-off-by: yuye-aws <[email protected]>

* Navigate external links through url change

Signed-off-by: yuye-aws <[email protected]>

* Implement filteredNavLinks and sort ChromeNavLinks in nav link service

Signed-off-by: yuye-aws <[email protected]>

* Add workspace list, see more, admin and overview into chromenavlinks

Signed-off-by: yuye-aws <[email protected]>

* fix: unit test failure (#50)

Signed-off-by: SuZhou-Joe <[email protected]>

* Fix osd bootstrap error

Signed-off-by: yuye-aws <[email protected]>

* Check workspace enabled for left menu

Signed-off-by: yuye-aws <[email protected]>

* Add home nav link to left menu when outside workspace

Signed-off-by: yuye-aws <[email protected]>

* Fix unit test for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Fix unit test for header

Signed-off-by: yuye-aws <[email protected]>

* Fix unit test for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Fix unit test for collapsible nav

Signed-off-by: yuye-aws <[email protected]>

* Update snapshot for unit tests

Signed-off-by: yuye-aws <[email protected]>

* fix osd bootstrap error

Signed-off-by: yuye-aws <[email protected]>

* fix combinelatest import error

Signed-off-by: yuye-aws <[email protected]>

* update snapshot for unit tests

Signed-off-by: yuye-aws <[email protected]>

* variable rename

Signed-off-by: yuye-aws <[email protected]>

* move custom nav link to mock props

Signed-off-by: yuye-aws <[email protected]>

* move default filtered nav link to core

Signed-off-by: yuye-aws <[email protected]>

* change navigation method in workspace updater

Signed-off-by: yuye-aws <[email protected]>

* Update src/plugins/workspace/public/components/workspace_updater/workspace_updater.tsx

Co-authored-by: SuZhou-Joe <[email protected]>

* revert some unncessary changes

Signed-off-by: yuye-aws <[email protected]>

* fix navigation url bug

Signed-off-by: yuye-aws <[email protected]>

* move default filtered nav link value setting from core to workspace plugin

Signed-off-by: yuye-aws <[email protected]>

* move filter nav link to a new function

Signed-off-by: yuye-aws <[email protected]>

* process filter nav links when workspace is disabled

Signed-off-by: yuye-aws <[email protected]>

* change navigation method

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: SuZhoue-Joe <[email protected]>
Co-authored-by: raintygao <[email protected]>

* fix: osd bootstrap error (#57)

* fix osd bootstrap error

Signed-off-by: yuye-aws <[email protected]>

* fix build plugins error

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* feat: filter out ADMIN application and add feature dependency logic (#49)

* feat: filter out ADMIN application and add feature dependency logic

Signed-off-by: Lin Wang <[email protected]>

* feat: separate feature utils function

Signed-off-by: Lin Wang <[email protected]>

* feat: rename isFeatureDependBySelectedFeatures, separate generateFeatureDependencyMap and add annotation

Signed-off-by: Lin Wang <[email protected]>

---------

Signed-off-by: Lin Wang <[email protected]>

* feat: do not register app when feature flag is off (#56)

* feat: do not register app when feature flag is off

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: comply with the category name

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: opt according to PR

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize the comment

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhou-Joe <[email protected]>

* Sort category and non-category nav link according to order in left menu (#60)

* change order for home

Signed-off-by: yuye-aws <[email protected]>

* Sort category and non-category navlink types in left menu

Signed-off-by: yuye-aws <[email protected]>

* change order for overview when inside workspace

Signed-off-by: yuye-aws <[email protected]>

* assign sorted unknowns to another variable

Signed-off-by: yuye-aws <[email protected]>

* change annotation

Signed-off-by: yuye-aws <[email protected]>

* refactor function getMergedNavLinks in left menu

Signed-off-by: yuye-aws <[email protected]>

* fix zero order bug

Signed-off-by: yuye-aws <[email protected]>

* add annotation

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* Refactor: Assign default value for filtered nav links (#64)

* remove default filtered nav link value set

Signed-off-by: yuye-aws <[email protected]>

* default value for nav link

Signed-off-by: yuye-aws <[email protected]>

* refactor currentworkspace logic

Signed-off-by: yuye-aws <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>

* Permission control service for saved objects (#63)

* feat: move permission control to saved objects directory

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: use bulkGetObjects and fix unit test

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: add http routes for validate & list

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: move permissionModes to common place

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: rename routes

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: some side effects

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: some side effects

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: make importing workspace-specific objects as copy

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make unit test pass

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: revert the workspace change

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: make import support multiple workspaces

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: change logic

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: change logic

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: ci flow fail

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: copy to target workspace

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: revert changes

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: change public logic

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: update

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: revert some skipped test

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: type check

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize code

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: optimize logic

Signed-off-by: SuZhou-Joe <[email protected]>

* feat: update logic

Signed-off-by: SuZhou-Joe <[email protected]>

* temp: merge code

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: formatUrlWithWorkspaceId reference

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: remove useless export call

Signed-off-by: SuZhou-Joe <[email protected]>

* fix: omitIds

Signed-off-by: SuZhou-Joe <[email protected]>

---------

Signed-off-by: Yulong Ruan <[email protected]>
Signed-off-by: Hailong Cui <[email protected]>
Signed-off-by: SuZhoue-Joe <[email protected]>
Signed-off-by: Lin Wang <[email protected]>
Signed-off-by: zhichao-aws <[email protected]>
Signed-off-by: suzhou <[email protected]>
Signed-off-by: tygao <[email protected]>
Signed-off-by: gaobinlong <[email protected]>
Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: SuZhou-Joe <[email protected]>
Co-authored-by: Yulong Ruan <[email protected]>
Co-authored-by: Hailong Cui <[email protected]>
Co-authored-by: Lin Wang <[email protected]>
Co-authored-by: zhichao-aws <[email protected]>
Co-authored-by: raintygao <[email protected]>
Co-authored-by: gaobinlong <[email protected]>
Co-authored-by: Yuye Zhu <[email protected]>
ashwin-pc added a commit that referenced this pull request Feb 22, 2024
…ct (#5718)

* updating change set .yml template file according what agreed last meeting

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add 'Changelog' section to PR template

Signed-off-by: Johnathon Bowers <[email protected]>

* adding dummy change set files for work in release notes script

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* adding dummy change set files for work in release notes script

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* creating 'create_change_set_worflow.yml' file - starting version

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* commenting Build and Test worflow and correcting name for Create Change Set worflow

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* commenting Build and Test worflow and correcting name for Create Change Set worflow

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* uncommenting Build and Test workflow

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #2

* removing dummy changesets

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #2

* Add changeset for PR #2

* updating pull_request_template.md for changelog entries

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* removing old changeset with wrong format

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #2

* adding change sets dummy files 1.yml, 3.yml and 4.yml

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #2

* fix a line in changeset 2.yml file, add scripting for updating the changelog.md and generate a opensearch-dashboards.release-notes-pkgVersion.md when we make a release, have not implemented deleting all the changeset files in the script

Signed-off-by: Qiwen Li <[email protected]>

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Bump actions/checkout from v2 to v4

Signed-off-by: Johnathon Bowers <[email protected]>

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* release note script refactor + deletes fragment

added the deletiong of fragment files at the end.
Did minor refactoring/cleanup

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

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Update language in 'Changelog' section of PR template

Signed-off-by: Johnathon Bowers <[email protected]>

* Add changeset for PR #2

* Add changeset for PR #2

* Update src/dev/generate_release_note.ts

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

* Add changeset for PR #2

* Add first draft of changelog process README

Signed-off-by: Johnathon Bowers <[email protected]>

* Add changeset for PR #2

* changed error handling behaviors.

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

* Add changeset for PR #2

* Add more details to changelog README

Signed-off-by: Johnathon Bowers <[email protected]>

* Add changeset for PR #2

* added error

Signed-off-by: qiwen li <[email protected]>

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Abbreviate README and link to workflow README

Signed-off-by: Johnathon Bowers <[email protected]>

* Add changeset for PR #2

* Add changeset for PR #2

* deleting test.txt file used to test if other contributors of project were able to push updates to this branch

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #2

* fixing formatting in create_change_set_workflow.yml file

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* updating title for README.md in changelogs directory

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* updating description of README.md in changelogs directory

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* removing demo fragments and adding new single one specifiying new feat of Changelog and Release Notes projects in this PR

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #2

* removing demo fragment 2.yml

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #2

* removed fragment thats too long. added helper file, used async functions, and added validation.

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

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* adding 5519.yml fragment file and removing 2.yml dummy fragment file

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* updating changeset worflow removing syncronize option

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* deleting 5519.yml fragment file (now will be generated by workflow)

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #2

* Add changeset for PR #2

* removing 2.yml fragment dummy file

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #2

* Add changeset for PR #2

* removing 2.yml fragment dummy file

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* refactored code (deleteFragments, readFragments returns sections and paths)

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

* Add changeset for PR #2

* removing 2.yml fragment dummy file

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* moved deleteFragment to end of script

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

* removing changelog_verifier.yml

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* changed max_length to 100

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

* Add changeset for PR #2

* Add changeset for PR #2

* adding write permissions to for changeset workflow

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* removing 2.yml fragment dummy file

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* adding write permissions to for changeset workflow

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* adding write permissions to for changeset workflow

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* refactored code/main function, now move fragment to temp folder.

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

* Add test.txt

Signed-off-by: Johnathon Bowers <[email protected]>

* Remove test.txt

Signed-off-by: Johnathon Bowers <[email protected]>

* updating token name for workflow

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* update token name

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* Add changeset for PR #2

* updating changeset workflow by giving correct reference for checkout action

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* updating changeset workflow by removing reference for checkout action

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* updating github action event from pull_request to pull_request_target

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #19

* deleting fragment 19.yml

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* adding CHANGESET_TOKEN and related logic

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* changing event pull_request_target to pull_request

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #25

* changing event pull_request to pull_request_target

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add changeset for PR #24

* Add changeset for PR #24

* update changeset file 25.yml for PR #25

* update changeset file 25.yml for PR #25

* update changeset file 25.yml for PR #25

* update changeset file 25.yml for PR #25

* update changeset file 25.yml for PR #25

* update changeset file 25.yml for PR #25

* update changeset file 25.yml for PR #25

* update changeset file 25.yml for PR #25

* deleting workflow file for creating changeset files

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* update changeset file 25.yml for PR #25

* update changeset file 25.yml for PR #25

* removing fragment files

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* create changeset file 25.yml for PR #25

* update changeset file 25.yml for PR #25

* update changeset file 25.yml for PR #25

* update changeset file 25.yml for PR #25

* update changeset file 25.yml for PR #25

* update file 25.yml for PR #25

* update file 25.yml for PR #25

* test:
- Data ([#29](BigSamu#29))
- Data2 ([#29](BigSamu#29))

* create file 29.yml for PR #29

* test:
- Data ([#29](BigSamu#29))
- Data 2 ([#29](BigSamu#29))

* changeset file for PR #29 updated

* changeset file for PR #29 updated

* changeset file for PR #29 updated

* changeset file for PR #29 updated

* changeset file for PR #29 updated

* changeset file for PR #29 updated

* changeset file for PR #29 updated

* changeset file for PR #29 updated

* changeset file for PR #29 updated

* changeset file for PR #29 deleted

* changeset file for PR #29 created

* changeset file for PR #29 updated

* changeset file for PR #29 deleted

* changeset file for PR #29 created

* changeset file for PR #29 deleted

* changeset file for PR #29 created

* changeset file for PR #29 updated

* changeset file for PR #29 updated

* changeset file for PR #29 updated

* changeset file for PR #29 updated

* Changeset file for PR #29 updated

* Changeset file for PR #29 deleted

* Changeset file for PR #29 created

* Changeset file for PR #29 deleted

* Changeset file for PR #29 created

* Changeset file for PR #29 updated

* Changeset file for PR #29 updated

* Changeset file for PR #29 updated

* Changeset file for PR #29 updated

* Changeset file for PR #29 updated

* Changeset file for PR #29 deleted

* Changeset file for PR #29 created

* Changeset file for PR #29 deleted

* adding parse_changelog_workflow.yml file

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* updating permissions for parse changelog workflow

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* updating permissions for parse chaneglog action

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* updating permissions for parse chaneglog action

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* updating permissions for parse chaneglog action

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* updating permissions for parse chaneglog action

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* changing name of changelog action file

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* removing dummy fragment file '25.yml'

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* updating name of workflow in opensearch_changelog_workflow.yml file

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* addin dummy file

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* removing dummy file

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Add input secrets to be used in workflow runs

Signed-off-by: Johnathon Bowers <[email protected]>

* updating input variables for opensearch chnagelog workflow

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* updating location reusable workflow

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* changing branch for reusable workflow for developing manual checking approach of changesets

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* changing branch for reusable workflow to 'main'

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* changing branch for reusable workflow to 'main'

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* changing branch of chnagelog workflow to 'feat/manual-changesets' for dev purposes

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* removing 'token' input from 'opensearch_changelog_workflow.yml'

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>

* Revert "removing 'token' input from 'opensearch_changelog_workflow.yml'"

This reverts commit 9b1c1a6.

* Update .github/workflows/opensearch_changelog_workflow.yml

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

---------

Signed-off-by: Samuel Valdes Gutierrez <[email protected]>
Signed-off-by: Johnathon Bowers <[email protected]>
Signed-off-by: Qiwen Li <[email protected]>
Signed-off-by: CMDWillYang <[email protected]>
Signed-off-by: qiwen li <[email protected]>
Signed-off-by: Ashwin P Chandran <[email protected]>
Co-authored-by: Johnathon Bowers <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Qiwen Li <[email protected]>
Co-authored-by: CMDWillYang <[email protected]>
Co-authored-by: Ashwin P Chandran <[email protected]>
Co-authored-by: Anan Zhuang <[email protected]>
Co-authored-by: Josh Romero <[email protected]>
Co-authored-by: autochangeset[bot] <154024398+autochangeset[bot]@users.noreply.github.com>
Co-authored-by: opensearch-bot[bot] <154024398+opensearch-bot[bot]@users.noreply.github.com>
Co-authored-by: opensearch-bot-dev[bot] <154634848+opensearch-bot-dev[bot]@users.noreply.github.com>
sejli pushed a commit to sejli/OpenSearch-Dashboards that referenced this pull request Jul 11, 2024
As part of some work on opensearch-project#24, this PR introduces some mock-heavy tests for the SQL search strategy. It's also helpful to write down the loose interfaces expected from different methods -- not entirely sure if I got them all right.

Signed-off-by: Simeon Widdis <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants