You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by su...@apache.org on 2021/08/27 21:11:21 UTC

[superset] 01/01: use default keys (needs superset-ui upgrade)

This is an automated email from the ASF dual-hosted git repository.

suddjian pushed a commit to branch custom-default-color-scheme
in repository https://gitbox.apache.org/repos/asf/superset.git

commit adf06bf4bea42dcaf155fc26ebdbc4ecb84eb917
Author: David Aaron Suddjian <aa...@gmail.com>
AuthorDate: Fri Aug 27 14:08:59 2021 -0700

    use default keys (needs superset-ui upgrade)
---
 superset-frontend/src/setup/setupColors.ts | 26 +++++++++++++++++++++-----
 1 file changed, 21 insertions(+), 5 deletions(-)

diff --git a/superset-frontend/src/setup/setupColors.ts b/superset-frontend/src/setup/setupColors.ts
index 4068dd0..48b2303 100644
--- a/superset-frontend/src/setup/setupColors.ts
+++ b/superset-frontend/src/setup/setupColors.ts
@@ -32,15 +32,25 @@ import {
 } from '@superset-ui/core';
 import superset from '@superset-ui/core/lib/color/colorSchemes/categorical/superset';
 
+function findDefaultKey(
+  colorSchemes: (CategoricalScheme | SequentialScheme)[],
+  fallback: string,
+) {
+  return colorSchemes.reduce(
+    (defaultKey, scheme) => (scheme.isDefault ? scheme.id : defaultKey),
+    fallback,
+  );
+}
+
 export default function setupColors(
-  extraCategoricalColorSchemas: CategoricalScheme[] = [],
+  extraCategoricalColorSchemes: CategoricalScheme[] = [],
   extraSequentialColorSchemes: SequentialScheme[] = [],
 ) {
   // Register color schemes
   const categoricalSchemeRegistry = getCategoricalSchemeRegistry();
 
-  if (extraCategoricalColorSchemas?.length > 0) {
-    extraCategoricalColorSchemas.forEach(scheme => {
+  if (extraCategoricalColorSchemes?.length > 0) {
+    extraCategoricalColorSchemes.forEach(scheme => {
       categoricalSchemeRegistry.registerValue(scheme.id, scheme);
     });
   }
@@ -52,7 +62,10 @@ export default function setupColors(
       });
     },
   );
-  categoricalSchemeRegistry.setDefaultKey('supersetColors');
+
+  categoricalSchemeRegistry.setDefaultKey(
+    findDefaultKey(extraCategoricalColorSchemes, 'supersetColors'),
+  );
 
   const sequentialSchemeRegistry = getSequentialSchemeRegistry();
 
@@ -70,5 +83,8 @@ export default function setupColors(
       sequentialSchemeRegistry.registerValue(scheme.id, scheme);
     });
   });
-  sequentialSchemeRegistry.setDefaultKey('superset_seq_1');
+
+  sequentialSchemeRegistry.setDefaultKey(
+    findDefaultKey(extraSequentialColorSchemes, 'superset_seq_1'),
+  );
 }