Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
import * as React from 'react';
import { OneFormState } from '@skava/packages/features/Forms';
import { errorContainer } from '@skava/packages/core/notifications';
import { locationContainerLite } from '@skava/packages/core/location';
import { estimateShippingContainer } from './state';
import { CalculateButton, StyledForm } from './styled';
const validation = {
    async onSubmit(args) {
        const { zipCode } = args.state.toJSON();
        console.log({ zipCode });
        errorContainer.setMessage('getting location...');
        locationContainerLite.clear();
        locationContainerLite.setZipCode(zipCode);
        await locationContainerLite.fetchGeoCodeIfNeeded();
        errorContainer.setMessage('estimating...');
        await estimateShippingContainer.onSubmit();
        errorContainer.setMessage('done...');
    },
};
const renderButtonGroup = () => React.createElement(CalculateButton, null);
class EstimateShippingForm extends React.PureComponent {
    constructor() {
        super(...arguments);
        this.observableFormState = new OneFormState().setInputsList([
            /**
             * @qa qa-zipcode-textbox
             */
            {
                propertyName: 'zipCode',
                type: 'zip',
            },
        ]);
    }
    render() {
        return (React.createElement(StyledForm, { validation: validation, state: this.observableFormState, renderButtonGroup: renderButtonGroup }));
    }
}
export { EstimateShippingForm };
//# sourceMappingURL=Form.js.map