2
0
Эх сурвалжийг харах

some stuff for external var support

Ivan Galakhov 4 жил өмнө
parent
commit
356119d8ef

+ 6 - 4
dashboard/src/components/form-refactor/PorterFormContextProvider.tsx

@@ -9,6 +9,8 @@ import { ShowIf, ShowIfAnd, ShowIfNot, ShowIfOr } from "../../shared/types";
 
 interface Props {
   rawFormData: PorterFormData;
+  initialVariables?: PorterFormVariableList;
+  overrideVariables?: PorterFormVariableList;
 }
 
 interface ContextProps {
@@ -65,6 +67,7 @@ export const PorterFormContextProvider: React.FC<Props> = (props) => {
         return {
           ...state,
           variables: action.mutateFunc(state.variables),
+          ...props.overrideVariables,
         };
     }
     return state;
@@ -72,9 +75,11 @@ export const PorterFormContextProvider: React.FC<Props> = (props) => {
 
   const [state, dispatch] = useReducer(handleAction, {
     components: {},
-    variables: {},
+    variables: props.initialVariables || {},
   });
 
+  console.log(state.variables);
+
   const evalShowIf = (
     vals: ShowIf,
     variables: PorterFormVariableList
@@ -121,9 +126,6 @@ export const PorterFormContextProvider: React.FC<Props> = (props) => {
     data: PorterFormData,
     variables: PorterFormVariableList
   ) => {
-    console.log(state.variables);
-    console.log(props.rawFormData);
-
     return {
       ...data,
       tabs: data.tabs.map((tab) => {

+ 6 - 1
dashboard/src/components/values-form/FormDebugger.tsx

@@ -159,7 +159,12 @@ export default class FormDebugger extends Component<PropsType, StateType> {
 
         <Heading>🎨 Rendered Form</Heading>
         <Br />
-        <PorterFormContextProvider rawFormData={formData as PorterFormData}>
+        <PorterFormContextProvider
+          rawFormData={formData as PorterFormData}
+          initialVariables={{
+            input_a: this.state.valuesToOverride.input_a.value,
+          }}
+        >
           <PorterForm
             rightTabOptions={this.state.showBonusTabs ? tabOptions : []}
             renderTabContents={this.renderTabContents}