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

[1.x] Custom Branding (#826) #898

Merged
merged 1 commit into from
Nov 1, 2021

Conversation

kavilla
Copy link
Member

@kavilla kavilla commented Nov 1, 2021

Custom branding

  • Make top left logo on the main screen configurable
    • Add a new config opensearchDashboards.branding.logoUrl in yaml file
      for making top left corner logo on the main screen configurable. If
      URL is invalid, the default OpenSearch logo will be shown.
  • Welcome page title and logo configurable (Make welcome page logo and title configurable #738)
    • Add two new configs branding.smallLogoUrl and branding.title
      in the yaml file for making the welcome page logo and title
      configurable. If URL is invalid, the default branding will be shown.
  • Make loading page logo and title configurable (Make loading page logo and title configurable  #746)
    • Add one new config branding.loadingLogoUrl for making loading page logo
      configurable. URL can be in svg and gif format. If no loading logo is found,
      the static logo with a horizontal bar loading bar will be shown. If logo is also
      not found, the default OpenSearch loading logo and spinner will be shown.
  • Branding configs rename and improvement (Branding config rename and improvement #771)
    • Change config smallLogoUrl to logoUrl, config logoUrl to fullLogoUrl to emphasize that thumbnail version
      of the logo will be used mostly in the application. Full version of the logo will only be used on the main
      page nav bar. If full logo is not provided, thumbnail logo will be used on the nav bar. Some config improvement
      includes fixing the validation error when inputting empty string, and add title validation function.
  • Branding config structure change and renaming (Branding config structure change and renaming #793)
    • Change the branding related config to a map structure in the yml file.
      Also rename the configs according to the official branding guidelines.
      The full logo on the main page header will be called logo; the small
      logo icon will be called mark.
  • Darkmode configurations for header logo, welcome logo and loading logo (Dark mode configurations for header logo, welcome logo and loading logo #797)
    • Add dark mode configs in the yml file that allows user to configure a
      dark mode version of the logo. When user toggles dark mode under the
      Advanced Setting, the logo will be rendered accordingly.
  • Add favicon configuration (Add favicon configuration #801)
    • Added a configuration on favicon inside opensearchDashboards.branding
      in the yml file. If user inputs a valid URL, we gurantee basic browser
      favicon customization, while remaining places show the default browser/device
      favicon icon. If user does not provide a valid URL for favicon, the
      opensearch favicon icon will be used.
  • Make home page primary dashboard card logo and title configurable (Make home page primary dashboard card logo and title configurable #809)
    • Home page dashboard card logo and title can be customized by config
      mark.defaultUrl and mark.darkModeUrl. Unit test and functional test
      are also written.
  • Side menu logo configuration
    • Make logo for opensearch dashboard side menu be configurable.
      Use config mark.defaultUrl and mark.darkModeUrl.
  • Overview Header Logo Configuration
    • Make logo for opensearch dashboard overview header logo be configurable.
      Use config mark.defaultUrl and mark.darkModeUrl.
  • Redirect URL not allowed
    • Add an addtional parameter to the checkUrlValid function
      so that max redirect count is 0. We do not allow URLs that
      can be redirected because of potential security issues.
  • Store default opensearch branding asset folder
    • Store the original opensearch branding logos in an asset folder,
      instead of making API calls.
  • [Branding] handle comments from PR

Backport PR:
#897

Signed-off-by: Abby Hu abigailhu2000@gmail.com
Co-authored-by: Kawika Avilla kavilla414@gmail.com

* Make top left logo on the main screen configurable

Add a new config opensearchDashboards.branding.logoUrl in yaml file
for making top left corner logo on the main screen configurable. If
URL is invalid, the default OpenSearch logo will be shown.

Signed-off-by: Abby Hu <abigailhu2000@gmail.com>

* Welcome page title and logo configurable (opensearch-project#738)

Add two new configs branding.smallLogoUrl and branding.title
in the yaml file for making the welcome page logo and title
 configurable. If URL is invalid, the default branding will be shown.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Make loading page logo and title configurable (opensearch-project#746)

Add one new config branding.loadingLogoUrl for making loading page logo
configurable. URL can be in svg and gif format. If no loading logo is found,
the static logo with a horizontal bar loading bar will be shown. If logo is also
not found, the default OpenSearch loading logo and spinner will be shown.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Branding configs rename and improvement (opensearch-project#771)

Change config smallLogoUrl to logoUrl, config logoUrl to fullLogoUrl to emphasize that thumbnail version
of the logo will be used mostly in the application. Full version of the logo will only be used on the main
page nav bar. If full logo is not provided, thumbnail logo will be used on the nav bar. Some config improvement
includes fixing the validation error when inputting empty string, and add title validation function.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Branding config structure change and renaming (opensearch-project#793)

Change the branding related config to a map structure in the yml file.
Also rename the configs according to the official branding guidelines.
The full logo on the main page header will be called logo; the small
logo icon will be called mark.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Darkmode configurations for header logo, welcome logo and loading logo (opensearch-project#797)

Add dark mode configs in the yml file that allows user to configure a
dark mode version of the logo. When user toggles dark mode under the
Advanced Setting, the logo will be rendered accordingly.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Add favicon configuration (opensearch-project#801)

Added a configuration on favicon inside opensearchDashboards.branding
in the yml file. If user inputs a valid URL, we gurantee basic browser
favicon customization, while remaining places show the default browser/device
favicon icon. If user does not provide a valid URL for favicon, the
opensearch favicon icon will be used.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Make home page primary dashboard card logo and title configurable (opensearch-project#809)

Home page dashboard card logo and title can be customized by config
mark.defaultUrl and mark.darkModeUrl. Unit test and functional test
are also written.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Side menu logo configuration

Make logo for opensearch dashboard side menu be configurable.
Use config mark.defaultUrl and mark.darkModeUrl.

Signed-off-by: Abby Hu <abigailhu2000@gmail.com>

* Overview Header Logo Configuration

Make logo for opensearch dashboard overview header logo be configurable.
Use config mark.defaultUrl and mark.darkModeUrl.

Signed-off-by: Abby Hu <abigailhu2000@gmail.com>

* Redirect URL not allowed

Add an addtional parameter to the checkUrlValid function
so that max redirect count is 0. We do not allow URLs that
can be redirected because of potential security issues.

Signed-off-by: Abby Hu <abigailhu2000@gmail.com>

* Store default opensearch branding asset folder

Store the original opensearch branding logos in an asset folder,
instead of making API calls.

Signed-off-by: Abby Hu <abigailhu2000@gmail.com>

* [Branding] handle comments from PR

Handling the helper function rename and grammar issues.

To avoid risk, we will not remove the duplicate code for 1.2 and
everything related to those comments (ie function renames).

That will be handled in 1.3. Here is the issue tracking it:

opensearch-project#895

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

Co-authored-by: Kawika Avilla <kavilla414@gmail.com>

Backport PR:
opensearch-project#897
Copy link
Contributor

@tmarkley tmarkley left a comment

Choose a reason for hiding this comment

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

LGTM!

@kavilla kavilla merged commit 1c28cfd into opensearch-project:1.x Nov 1, 2021
@kavilla kavilla deleted the avillk/1.x/custombranding branch November 1, 2021 23:01
seanneumann pushed a commit that referenced this pull request Nov 2, 2021
* Make top left logo on the main screen configurable

Add a new config opensearchDashboards.branding.logoUrl in yaml file
for making top left corner logo on the main screen configurable. If
URL is invalid, the default OpenSearch logo will be shown.

Signed-off-by: Abby Hu <abigailhu2000@gmail.com>

* Welcome page title and logo configurable (#738)

Add two new configs branding.smallLogoUrl and branding.title
in the yaml file for making the welcome page logo and title
 configurable. If URL is invalid, the default branding will be shown.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Make loading page logo and title configurable (#746)

Add one new config branding.loadingLogoUrl for making loading page logo
configurable. URL can be in svg and gif format. If no loading logo is found,
the static logo with a horizontal bar loading bar will be shown. If logo is also
not found, the default OpenSearch loading logo and spinner will be shown.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Branding configs rename and improvement (#771)

Change config smallLogoUrl to logoUrl, config logoUrl to fullLogoUrl to emphasize that thumbnail version
of the logo will be used mostly in the application. Full version of the logo will only be used on the main
page nav bar. If full logo is not provided, thumbnail logo will be used on the nav bar. Some config improvement
includes fixing the validation error when inputting empty string, and add title validation function.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Branding config structure change and renaming (#793)

Change the branding related config to a map structure in the yml file.
Also rename the configs according to the official branding guidelines.
The full logo on the main page header will be called logo; the small
logo icon will be called mark.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Darkmode configurations for header logo, welcome logo and loading logo (#797)

Add dark mode configs in the yml file that allows user to configure a
dark mode version of the logo. When user toggles dark mode under the
Advanced Setting, the logo will be rendered accordingly.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Add favicon configuration (#801)

Added a configuration on favicon inside opensearchDashboards.branding
in the yml file. If user inputs a valid URL, we gurantee basic browser
favicon customization, while remaining places show the default browser/device
favicon icon. If user does not provide a valid URL for favicon, the
opensearch favicon icon will be used.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Make home page primary dashboard card logo and title configurable (#809)

Home page dashboard card logo and title can be customized by config
mark.defaultUrl and mark.darkModeUrl. Unit test and functional test
are also written.

Signed-off-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>

* Side menu logo configuration

Make logo for opensearch dashboard side menu be configurable.
Use config mark.defaultUrl and mark.darkModeUrl.

Signed-off-by: Abby Hu <abigailhu2000@gmail.com>

* Overview Header Logo Configuration

Make logo for opensearch dashboard overview header logo be configurable.
Use config mark.defaultUrl and mark.darkModeUrl.

Signed-off-by: Abby Hu <abigailhu2000@gmail.com>

* Redirect URL not allowed

Add an addtional parameter to the checkUrlValid function
so that max redirect count is 0. We do not allow URLs that
can be redirected because of potential security issues.

Signed-off-by: Abby Hu <abigailhu2000@gmail.com>

* Store default opensearch branding asset folder

Store the original opensearch branding logos in an asset folder,
instead of making API calls.

Signed-off-by: Abby Hu <abigailhu2000@gmail.com>

* [Branding] handle comments from PR

Handling the helper function rename and grammar issues.

To avoid risk, we will not remove the duplicate code for 1.2 and
everything related to those comments (ie function renames).

That will be handled in 1.3. Here is the issue tracking it:

#895

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

Co-authored-by: Kawika Avilla <kavilla414@gmail.com>

Backport PR:
#897

Co-authored-by: Qingyang(Abby) Hu <abigailhu2000@gmail.com>
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.

3 participants