@hmcts/media-viewer
Version:
29 lines • 4.58 kB
JavaScript
/**
* Helper Class
* Used for dynamic templates manipulation
* */
export class HtmlTemplatesHelper {
static setDescribedBy(errorMessage, config) {
if (!errorMessage) {
return config.hint ? `${config.id}-hint` : null;
}
else if (errorMessage && errorMessage.isInvalid) {
return config.hint ? `${config.id}-hint ${config.id}-error` : `${config.id}-error`;
}
else {
return config.hint ? `${config.id}-hint` : null;
}
}
static getAdjustedBoundingRect(element, log = true) {
const viewportX = window.visualViewport.offsetLeft;
const viewportY = window.visualViewport.offsetTop;
const viewportScale = window.visualViewport.scale;
const viewportPageX = window.visualViewport.pageLeft;
const viewportPageY = window.visualViewport.pageTop;
if (log && viewportX || viewportY || (viewportScale != 1) || viewportPageX || viewportPageY) {
console.log(`Element: ${element.id} Viewport X: ${viewportX}, Y: ${viewportY}, Scale: ${viewportScale}, PageX: ${viewportPageX}, PageY: ${viewportPageY}`);
}
return element.getBoundingClientRect();
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC10ZW1wbGF0ZXMuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvc2hhcmVkL3V0aWwvaGVscGVycy9odG1sLXRlbXBsYXRlcy5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztLQUdLO0FBRUwsTUFBTSxPQUFPLG1CQUFtQjtJQUU5QixNQUFNLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxNQUFNO1FBQ3hDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNsQixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDbEQsQ0FBQzthQUFNLElBQUksWUFBWSxJQUFJLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNsRCxPQUFRLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEVBQUUsU0FBUyxNQUFNLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEVBQUUsUUFBUSxDQUFDO1FBQ3RGLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ2xELENBQUM7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLHVCQUF1QixDQUFDLE9BQW9CLEVBQUUsTUFBZSxJQUFJO1FBQ3RFLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFBO1FBQ2xELE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDO1FBQ2xELE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDO1FBQ2xELE1BQU0sYUFBYSxHQUFJLE1BQU0sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDO1FBQ3RELE1BQU0sYUFBYSxHQUFJLE1BQU0sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDO1FBQ3JELElBQUksR0FBRyxJQUFJLFNBQVMsSUFBSSxTQUFTLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDLElBQUssYUFBYSxJQUFJLGFBQWEsRUFBRSxDQUFDO1lBQzdGLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxPQUFPLENBQUMsRUFBRSxnQkFBZ0IsU0FBUyxRQUFRLFNBQVMsWUFBWSxhQUFhLFlBQVksYUFBYSxZQUFZLGFBQWEsRUFBRSxDQUFDLENBQUM7UUFDN0osQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDekMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBIZWxwZXIgQ2xhc3NcbiAqIFVzZWQgZm9yIGR5bmFtaWMgdGVtcGxhdGVzIG1hbmlwdWxhdGlvblxuICogKi9cblxuZXhwb3J0IGNsYXNzIEh0bWxUZW1wbGF0ZXNIZWxwZXIge1xuXG4gIHN0YXRpYyBzZXREZXNjcmliZWRCeShlcnJvck1lc3NhZ2UsIGNvbmZpZykge1xuICAgIGlmICghZXJyb3JNZXNzYWdlKSB7XG4gICAgICByZXR1cm4gY29uZmlnLmhpbnQgPyBgJHtjb25maWcuaWR9LWhpbnRgIDogbnVsbDtcbiAgICB9IGVsc2UgaWYgKGVycm9yTWVzc2FnZSAmJiBlcnJvck1lc3NhZ2UuaXNJbnZhbGlkKSB7XG4gICAgICByZXR1cm4gIGNvbmZpZy5oaW50ID8gYCR7Y29uZmlnLmlkfS1oaW50ICR7Y29uZmlnLmlkfS1lcnJvcmAgOiBgJHtjb25maWcuaWR9LWVycm9yYDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGNvbmZpZy5oaW50ID8gYCR7Y29uZmlnLmlkfS1oaW50YCA6IG51bGw7XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIGdldEFkanVzdGVkQm91bmRpbmdSZWN0KGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBsb2c6IGJvb2xlYW4gPSB0cnVlKTogRE9NUmVjdCB7XG4gICAgY29uc3Qgdmlld3BvcnRYID0gd2luZG93LnZpc3VhbFZpZXdwb3J0Lm9mZnNldExlZnRcbiAgICBjb25zdCB2aWV3cG9ydFkgPSB3aW5kb3cudmlzdWFsVmlld3BvcnQub2Zmc2V0VG9wO1xuICAgIGNvbnN0IHZpZXdwb3J0U2NhbGUgPSB3aW5kb3cudmlzdWFsVmlld3BvcnQuc2NhbGU7XG4gICAgY29uc3Qgdmlld3BvcnRQYWdlWCAgPSB3aW5kb3cudmlzdWFsVmlld3BvcnQucGFnZUxlZnQ7XG4gICAgY29uc3Qgdmlld3BvcnRQYWdlWSAgPSB3aW5kb3cudmlzdWFsVmlld3BvcnQucGFnZVRvcDtcbiAgICBpZiAobG9nICYmIHZpZXdwb3J0WCB8fCB2aWV3cG9ydFkgfHwgKHZpZXdwb3J0U2NhbGUgIT0gMSkgIHx8IHZpZXdwb3J0UGFnZVggfHwgdmlld3BvcnRQYWdlWSkge1xuICAgICAgY29uc29sZS5sb2coYEVsZW1lbnQ6ICR7ZWxlbWVudC5pZH0gVmlld3BvcnQgWDogJHt2aWV3cG9ydFh9LCBZOiAke3ZpZXdwb3J0WX0sIFNjYWxlOiAke3ZpZXdwb3J0U2NhbGV9LCBQYWdlWDogJHt2aWV3cG9ydFBhZ2VYfSwgUGFnZVk6ICR7dmlld3BvcnRQYWdlWX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIH1cbn1cbiJdfQ==