Skip to content

Commit 1ee7ff7

Browse files
ActiveFieldId resetting fixed.
1 parent 14ead95 commit 1ee7ff7

File tree

13 files changed

+61
-63
lines changed

13 files changed

+61
-63
lines changed

packages/simplr-forms-dom/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,20 +41,20 @@
4141
"@types/webpack": "^2.2.15",
4242
"enzyme": "^2.8.0",
4343
"gulp": "github:gulpjs/gulp#4.0",
44-
"jest": "^19.0.2",
44+
"jest": "^20.0.1",
4545
"jest-enzyme": "^3.0.0",
4646
"mkdirp": "^0.5.1",
4747
"mv": "^2.1.1",
4848
"mz": "^2.6.0",
4949
"on-build-webpack": "^0.1.0",
5050
"react-dom": "^15.5.4",
5151
"react-test-renderer": "^15.5.4",
52-
"simplr-mvdir": "0.0.1-beta.6",
52+
"simplr-mvdir": "0.0.1-beta.7",
5353
"sinon": "^2.1.0",
54-
"ts-jest": "^19.0.8",
54+
"ts-jest": "^20.0.3",
5555
"ts-loader": "^2.0.3",
5656
"tslint": "^5.0.0",
57-
"typescript": "2.3.0",
57+
"typescript": "2.3.2",
5858
"webpack": "^2.4.1"
5959
},
6060
"dependencies": {

packages/simplr-forms-dom/src/abstractions/base-dom-field.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export interface BaseDomFieldState extends BaseFieldState {
77

88
export abstract class BaseDomField<TProps extends FieldProps, TState extends BaseDomFieldState>
99
extends BaseField<TProps, TState> {
10-
protected OnFocus = (event: React.FocusEvent<HTMLInputElement>) => {
10+
protected OnFocus = (event: React.FocusEvent<HTMLInputElement>): void => {
1111
const props = this.props as FieldProps;
1212
if (props.onFocus != null) {
1313
props.onFocus(event);
@@ -16,7 +16,7 @@ export abstract class BaseDomField<TProps extends FieldProps, TState extends Bas
1616
this.Focus();
1717
}
1818

19-
protected OnBlur = (event: React.FocusEvent<HTMLInputElement>) => {
19+
protected OnBlur = (event: React.FocusEvent<HTMLInputElement>): void => {
2020
const props = this.props as FieldProps;
2121
if (props.onBlur != null) {
2222
props.onBlur(event);
@@ -27,7 +27,7 @@ export abstract class BaseDomField<TProps extends FieldProps, TState extends Bas
2727

2828
public abstract renderField(): JSX.Element | null;
2929

30-
public render() {
30+
public render(): JSX.Element | null {
3131
// TODO: FieldTemplate
3232
return this.renderField();
3333
}

packages/simplr-forms-dom/src/components/clear.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export class Clear extends BaseContainer<ClearProps, ClearStateRecord> {
4141
return this.state.Submitting;
4242
}
4343

44-
protected OnButtonClick: React.MouseEventHandler<HTMLButtonElement> = (event) => {
44+
protected OnButtonClick: React.MouseEventHandler<HTMLButtonElement> = (event): void => {
4545
event.persist();
4646
this.FormStore.ClearFields(this.props.fieldIds);
4747

@@ -50,7 +50,7 @@ export class Clear extends BaseContainer<ClearProps, ClearStateRecord> {
5050
}
5151
}
5252

53-
render() {
53+
render(): JSX.Element | null {
5454
// TODO: Pass all other props.
5555
return <button
5656
type="button"

packages/simplr-forms-dom/src/components/fields-array.tsx

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -18,24 +18,21 @@ interface Dictionary {
1818
export class FieldsArray extends BaseFieldsArray<FieldsArrayProps, FieldsArrayState> {
1919
public Element: HTMLDivElement;
2020

21-
private setElementRef = (element: HTMLDivElement) => {
21+
private setElementRef = (element: HTMLDivElement): void => {
2222
this.Element = element;
2323
}
2424

25-
protected HTMLProps() {
26-
let notHTMLProps = ["name", "index", "destroyOnUnmount"];
27-
let newProps: { [id: string]: any } = {};
28-
29-
for (let key in this.props) {
30-
if ((this.props as Dictionary)[key] != null && notHTMLProps.indexOf(key) === -1) {
31-
newProps[key] = (this.props as Dictionary)[key];
32-
}
33-
}
34-
35-
return newProps;
25+
protected HTMLProps(): {} {
26+
const {
27+
name,
28+
index,
29+
destroyOnUnmount,
30+
children,
31+
...rest } = this.props;
32+
return rest;
3633
}
3734

38-
render() {
35+
render(): JSX.Element | null {
3936
return <div
4037
ref={this.setElementRef}
4138
{...this.HTMLProps() }

packages/simplr-forms-dom/src/components/fields-group.tsx

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -18,24 +18,20 @@ interface Dictionary {
1818
export class FieldsGroup extends BaseFieldsGroup<FieldsGroupProps, FieldsGroupState> {
1919
public Element: HTMLDivElement;
2020

21-
private setElementRef = (element: HTMLDivElement) => {
21+
private setElementRef = (element: HTMLDivElement): void => {
2222
this.Element = element;
2323
}
2424

25-
protected HTMLProps() {
26-
let notHTMLProps = ["name", "destroyOnUnmount"];
27-
let newProps: { [id: string]: any } = {};
28-
29-
for (let key in this.props) {
30-
if ((this.props as Dictionary)[key] != null && notHTMLProps.indexOf(key) === -1) {
31-
newProps[key] = (this.props as Dictionary)[key];
32-
}
33-
}
34-
35-
return newProps;
25+
protected HTMLProps(): {} {
26+
const {
27+
name,
28+
destroyOnUnmount,
29+
children,
30+
...rest } = this.props;
31+
return rest;
3632
}
3733

38-
render() {
34+
render(): JSX.Element | null {
3935
return <div
4036
ref={this.setElementRef}
4137
{...this.HTMLProps() }

packages/simplr-forms-dom/src/components/form.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export class Form extends BaseForm<FormProps, {}> {
4141
this.FormStore.SubmitForm(result);
4242
}
4343

44-
render() {
44+
render(): JSX.Element | null {
4545
return <form
4646
ref={this.SetElementRef}
4747
onSubmit={this.FormSubmitHandler}

packages/simplr-forms-dom/src/components/reset.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export class Reset extends BaseContainer<ResetProps, ResetStateRecord> {
4141
return this.state.Submitting;
4242
}
4343

44-
protected OnButtonClick: React.MouseEventHandler<HTMLButtonElement> = (event) => {
44+
protected OnButtonClick: React.MouseEventHandler<HTMLButtonElement> = (event): void => {
4545
event.persist();
4646
this.FormStore.ResetFields(this.props.fieldIds);
4747

@@ -50,7 +50,7 @@ export class Reset extends BaseContainer<ResetProps, ResetStateRecord> {
5050
}
5151
}
5252

53-
render() {
53+
render(): JSX.Element | null {
5454
// TODO: Pass all other props.
5555
return <button
5656
type="button"

packages/simplr-forms-dom/src/components/submit.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ export class Submit extends BaseContainer<SubmitProps, SubmitStateRecord> {
102102
this.state.Submitting);
103103
}
104104

105-
protected get InlineStyles() {
105+
protected get InlineStyles(): React.CSSProperties {
106106
let inlineStyles: React.CSSProperties = {};
107107

108108
if (this.props.style != null) {
@@ -116,7 +116,7 @@ export class Submit extends BaseContainer<SubmitProps, SubmitStateRecord> {
116116
return inlineStyles;
117117
}
118118

119-
render() {
119+
render(): JSX.Element | null {
120120
return <button
121121
type="submit"
122122
disabled={this.Disabled}

packages/simplr-forms/src/abstractions/base-fields-array.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,8 @@ export class BaseFieldsArray<TProps extends FieldsArrayProps,
4848
}
4949

5050
componentWillMount() {
51-
this.FieldsArrayId = this.FormStore.GetFieldsGroupId(`${this.props.name}${this.props.index}`, this.context.FieldsGroupId);
51+
const idBase = `${this.props.name}[${this.props.index}]`;
52+
this.FieldsArrayId = this.FormStore.GetFieldsGroupId(idBase, this.context.FieldsGroupId);
5253
if (this.FormStore.GetState().FieldsGroups.has(this.FieldsArrayId)) {
5354
throw new Error(`simplr-forms: FieldsArray '${this.FieldsArrayId}' already exists in form '${this.FormId}'.`);
5455
}

packages/simplr-forms/src/actions/form-store.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,39 +5,39 @@ export class StateChanged { }
55
export class FieldRegistered {
66
constructor(private fieldId: string) { }
77

8-
public get FieldId() {
8+
public get FieldId(): string {
99
return this.fieldId;
1010
}
1111
}
1212

1313
export class FieldsGroupRegistered {
1414
constructor(private fieldsGroupId: string) { }
1515

16-
public get FieldsGroupId() {
16+
public get FieldsGroupId(): string {
1717
return this.fieldsGroupId;
1818
}
1919
}
2020

2121
export class FieldsArrayRegistered {
2222
constructor(private fieldsGroupId: string) { }
2323

24-
public get FieldsArrayId() {
24+
public get FieldsArrayId(): string {
2525
return this.fieldsGroupId;
2626
}
2727
}
2828

2929
export class ValueChanged {
3030
constructor(private fieldId: string) { }
3131

32-
public get FieldId() {
32+
public get FieldId(): string {
3333
return this.fieldId;
3434
}
3535
}
3636

3737
export class FieldPropsChanged {
3838
constructor(private fieldId: string) { }
3939

40-
public get FieldId() {
40+
public get FieldId(): string {
4141
return this.fieldId;
4242
}
4343
}

0 commit comments

Comments
 (0)