Skip to content

Commit

Permalink
Pass theme and classes down to HelperText for TextArea, TextInput, Co…
Browse files Browse the repository at this point in the history
…mboBox, Select (dojo#937)

* Pass theme and classes down to text-area

* Add theme and classes for ComboBox, Select and TextInput

* Extend HelperTextProperties with ThemedProperties to fix type erorrs
  • Loading branch information
JamesLMilner authored and ericos committed Jan 3, 2020
1 parent 2864850 commit 1f44b14
Show file tree
Hide file tree
Showing 9 changed files with 34 additions and 13 deletions.
4 changes: 3 additions & 1 deletion src/combobox/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -487,7 +487,9 @@ export class ComboBox extends I18nMixin(ThemedMixin(FocusMixin(WidgetBase)))<Com
!this._open &&
w(HelperText, {
text: valid ? helperText : message,
valid
valid,
classes,
theme
}),
menu
];
Expand Down
4 changes: 3 additions & 1 deletion src/combobox/tests/unit/ComboBox.spec.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -273,7 +273,9 @@ const getExpectedVdom = function(
!open &&
w(HelperText, {
text: valid ? helperText : message,
valid
valid,
classes: undefined,
theme: useTestProperties ? {} : undefined
}),
menuVdom
]
Expand Down
4 changes: 2 additions & 2 deletions src/helper-text/index.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { WidgetBase } from '@dojo/framework/core/WidgetBase';
import { theme, ThemedMixin } from '@dojo/framework/core/mixins/Themed';
import { theme, ThemedMixin, ThemedProperties } from '@dojo/framework/core/mixins/Themed';
import * as css from '../theme/default/helper-text.m.css';
import { v } from '@dojo/framework/core/vdom';
import { VNode } from '@dojo/framework/core/interfaces';

export interface HelperTextProperties {
export interface HelperTextProperties extends ThemedProperties {
text?: string;
valid?: boolean;
}
Expand Down
2 changes: 1 addition & 1 deletion src/select/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -478,7 +478,7 @@ export class Select<T = any> extends ThemedMixin(FocusMixin(WidgetBase))<SelectP
)
: null,
useNativeElement ? this.renderNativeSelect() : this.renderCustomSelect(),
w(HelperText, { theme, text: helperText })
w(HelperText, { classes, theme, text: helperText })
]
);
}
Expand Down
4 changes: 2 additions & 2 deletions src/select/tests/unit/Select.spec.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -285,7 +285,7 @@ const expected = function(
)
: null,
selectVdom,
w(HelperText, { theme: undefined, text: helperText })
w(HelperText, { classes: undefined, theme: undefined, text: helperText })
]
);
};
Expand Down Expand Up @@ -616,7 +616,7 @@ registerSuite('Select', {
)
]
),
w(HelperText, { theme: undefined, text: undefined })
w(HelperText, { classes: undefined, theme: undefined, text: undefined })
]
)
);
Expand Down
7 changes: 6 additions & 1 deletion src/text-area/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,12 @@ export class TextArea extends ThemedMixin(FocusMixin(WidgetBase))<TextAreaProper
}
})
]),
w(HelperText, { text: computedHelperText, valid })
w(HelperText, {
text: computedHelperText,
valid,
classes,
theme
})
]
);
}
Expand Down
10 changes: 8 additions & 2 deletions src/text-area/tests/unit/TextArea.spec.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -111,15 +111,21 @@ const expected = function(
...inputOverrides
})
]),
w(HelperText, { text: helperTextValue, valid })
w(HelperText, { text: helperTextValue, valid, classes: undefined, theme: undefined })
]
);
};

const baseAssertion = assertionTemplate(() => (
<div key="root" classes={[css.root, null, null, null, null, null, null]}>
{textarea()}
<HelperText assertion-key="helperText" text={undefined} valid={true} />
<HelperText
assertion-key="helperText"
text={undefined}
valid={true}
classes={undefined}
theme={undefined}
/>
</div>
));

Expand Down
2 changes: 1 addition & 1 deletion src/text-input/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -335,7 +335,7 @@ export class TextInput extends ThemedMixin(FocusMixin(WidgetBase))<TextInputProp
])
]
),
w(HelperText, { text: computedHelperText, valid })
w(HelperText, { text: computedHelperText, valid, classes, theme })
]
);
}
Expand Down
10 changes: 8 additions & 2 deletions src/text-input/tests/unit/TextInput.spec.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ const expected = function({
...inputOverrides
})
]),
w(HelperText, { text: helperTextValue, valid })
w(HelperText, { text: helperTextValue, valid, classes: undefined, theme: undefined })
]
);
};
Expand All @@ -139,7 +139,13 @@ const baseAssertion = assertationTemplate(() => {
classes={[css.root, null, null, null, null, null, null, null, null]}
>
{input()}
<HelperText assertion-key="helperText" text={undefined} valid={undefined} />
<HelperText
assertion-key="helperText"
text={undefined}
valid={undefined}
classes={undefined}
theme={undefined}
/>
</div>
);
});
Expand Down

0 comments on commit 1f44b14

Please sign in to comment.