@transferwise/approve-api-action-helpers
Version:
An http client that handles SCA protected requests gracefully
29 lines (28 loc) • 1.08 kB
JavaScript
/* eslint-disable fp/no-mutation */
/* eslint-disable unicorn/prefer-dom-node-append */
export const createForm = ({ target, token, approvalPageUrl, flow }) => {
const form = document.createElement('form');
const ottInput = document.createElement('input');
const libraryVersionInput = document.createElement('input');
const parentHostnameInput = document.createElement('input');
const flowInput = document.createElement('input');
form.style.display = 'none';
if (target) {
form.target = target;
}
form.method = 'POST';
form.action = approvalPageUrl;
ottInput.value = token;
ottInput.name = 'ott';
form.appendChild(ottInput);
libraryVersionInput.value = '[VI]{version}[/VI]'; // rollup injects version from package.json
libraryVersionInput.name = 'libVersion';
form.appendChild(libraryVersionInput);
parentHostnameInput.value = window.location.hostname;
parentHostnameInput.name = 'parentHostname';
form.appendChild(parentHostnameInput);
flowInput.value = flow;
flowInput.name = 'flow';
form.appendChild(flowInput);
return form;
};