JSFiddle - React, Tailwind, and code Playground

by CommandLineDesign

JavaScript

// ::::::::::::::::::::: Native Object Extensions :::::::::::::::::::::
Object.prototype.getKeyByValue = function (value) {
    for (var prop in this) {
        if (this.hasOwnProperty(prop)) {
            if (this[prop] === value) return prop;
        }
    }
}

// ::::::::::::::::::::: Data :::::::::::::::::::::
//ShippingForm
var shippingAddress = {
    "first_name": "test",
    "last_name": "test",
    "company_name": "test222company",
    "phone_number": "+375291104685",
    "street_address1": "123 fake street",
    "street_address2": "this was a shipping address field",
    "city": "san francisco",
    "states": "CA",
    "zip": "94116",
    "countries": "US",
    "commercial_address": 0,
    "default": 1
};
var shippingFieldsMap = {
    'country': 'countries',
    'thoroughfare': 'street_address1',
    'premise': 'street_address2',
    'locality': 'localityFields',
    'localityname': 'city',
    'administrativearea': 'states',
    'postalcode': 'zip',
    'firstName': 'first_name',
    'lastName': 'last_name',
    'company': 'company_name',
    'phone': 'phone_number',
    'commercialAddress': 'commercial_address',
    'defaultKey': 'default'
};

//BillingForm
var billingAddress = {
    "bill_first_name": "test",
    "bill_last_name": "test",
    "bill_company_name": null,
    "bill_phone_number": "+375291104685",
    "bill_street_address1": "test",
    "bill_street_address2": "",
    "bill_city": "san francisco",
    "bill_states": "CA",
    "bill_zip": "94116",
    "bill_countries": "US",
    "bill_default": 1
};

var billingFieldsMap = {
    'country': 'bill_countries',
    'thoroughfare': 'bill_street_address1',
    'premise': 'bill_street_address2',
    'locality': 'bill_localityFields',
    'localityname': 'bill_city',
    'administrativearea': 'bill_states',
    'postalcode': 'bill_zip',
    'firstName': 'bill_first_name',
    'lastName': 'bill_last_name',
    'company': 'bill_company_name',
    'phone': 'bill_phone_number',
   ...