mirror of
https://github.com/empayre/fleet.git
synced 2024-11-06 17:05:18 +00:00
6bdddfacf0
Useful for SAML login users who cannot log in with `fleetctl login`. Instead they can pull their session token from the UI and configure the fleetctl client to use it. Closes #1865
34 lines
765 B
JavaScript
34 lines
765 B
JavaScript
import select from 'select';
|
|
|
|
const removeSelectedText = () => {
|
|
return global.window.getSelection().removeAllRanges();
|
|
};
|
|
|
|
export const copyText = (elementSelector) => {
|
|
const { document } = global;
|
|
|
|
const element = document.querySelector(elementSelector);
|
|
const input = element.querySelector('input');
|
|
input.type = 'text';
|
|
input.disabled = false;
|
|
|
|
select(input);
|
|
|
|
const canCopy = document.queryCommandEnabled('copy');
|
|
|
|
if (!canCopy) {
|
|
return false;
|
|
}
|
|
|
|
document.execCommand('copy');
|
|
input.type = 'password';
|
|
input.disabled = true;
|
|
removeSelectedText();
|
|
return true;
|
|
};
|
|
|
|
export const COPY_TEXT_SUCCESS = 'Text copied to clipboard';
|
|
export const COPY_TEXT_ERROR = 'Text not copied. Please copy manually.';
|
|
|
|
export default copyText;
|