| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- import { debounce } from './helpers';
- // Attach listener to DNS "Record" field to update its hint
- export default function handleDnsRecordHint() {
- const recordInput = document.querySelector('.js-dns-record-input');
- if (!recordInput) {
- return;
- }
- if (recordInput.value.trim() != '') {
- updateHint(recordInput);
- }
- recordInput.addEventListener(
- 'input',
- debounce((evt) => updateHint(evt.target))
- );
- }
- // Update DNS "Record" field hint
- function updateHint(input) {
- const domainInput = document.querySelector('.js-dns-record-domain');
- const hintElement = input.parentElement.querySelector('.hint');
- let hint = input.value.trim();
- // Clear the hint if input is empty
- if (hint === '') {
- hintElement.textContent = '';
- return;
- }
- // Set domain name without rec in case of @ entries
- if (hint === '@') {
- hint = '';
- }
- // Don't show prefix if domain name equals rec value
- if (hint === domainInput.value) {
- hint = '';
- }
- // Add dot at the end if needed
- if (hint !== '' && hint.slice(-1) !== '.') {
- hint += '.';
- }
- hintElement.textContent = hint + domainInput.value;
- }
|