parse() {
		const tasks = [];

		if (Array.isArray(this.children))
			for (let i = 0; i < this.children.length; i++)
				tasks.push(this.children[i].parse());

		return Promise.all(tasks);
	}
Parse the form input values.

The `parse()` function recursively walks the form element tree and
triggers input value reading and validation for each child element.

Elements which are hidden due to unsatisfied dependencies are skipped.

@returns {Promise<void>}
Returns a promise resolving once the entire form completed parsing all
input values. The returned promise is rejected if any parsed values do
not meet the validation constraints of their respective elements.