From 9ab400154466148736c29bc39e578772f705f563 Mon Sep 17 00:00:00 2001
From: Alexander Rose <alex.rose@rcsb.org>
Date: Thu, 19 Sep 2019 17:09:15 -0700
Subject: [PATCH] get Behavior defaultParams from transformer params

---
 src/mol-plugin/spec.ts | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/mol-plugin/spec.ts b/src/mol-plugin/spec.ts
index 7bf04bddd..0a6eb41fe 100644
--- a/src/mol-plugin/spec.ts
+++ b/src/mol-plugin/spec.ts
@@ -9,6 +9,7 @@ import { StateTransformer, StateAction } from '../mol-state';
 import { StateTransformParameters } from './ui/state/common';
 import { PluginLayoutStateProps } from './layout';
 import { PluginStateAnimation } from './state/animation/model';
+import { ParamDefinition as PD } from '../mol-util/param-definition';
 
 export { PluginSpec }
 
@@ -40,8 +41,11 @@ namespace PluginSpec {
         defaultParams?: any
     }
 
-    export function Behavior<T extends StateTransformer>(transformer: T, defaultParams?: StateTransformer.Params<T>): Behavior {
-        return { transformer, defaultParams };
+    export function Behavior<T extends StateTransformer>(transformer: T, defaultParams: Partial<StateTransformer.Params<T>> = {}): Behavior {
+        const params = transformer.definition.params
+            ? PD.getDefaultValues(transformer.definition.params(undefined, undefined))
+            : {}
+        return { transformer, defaultParams: { ...params, ...defaultParams } };
     }
 
     export interface LayoutControls {
-- 
GitLab