UNPKG

@asadi/angular-date-components

Version:

`Angular Date Components` is a comprehensive angular library of date-related components designed to meet the needs of applications that require localization based on various calendar systems. While the package currently includes two powerful components (S

75 lines 12.3 kB
export class ADCTableRowTools { constructor(renderer, element) { this.renderer = renderer; this.element = element; } /** * a method for setting height of the selected row based on event count * * @param eventsCount the number of events * * @returns void */ setHeight(height) { this.renderer.setStyle(this.element, "height", height); } get cells() { const allCells = Array().slice.call(this.cellsContainer.getElementsByClassName('column')); return allCells.filter(cell => cell.getAttribute('detail') == 'false'); } get horizontalOffset() { const allCells = Array().slice.call(this.cellsContainer.getElementsByClassName('column')); return allCells.filter(cell => cell.getAttribute('detail') == 'true').length == 0 ? 0 : 100; } get attachedEvents() { return Array().slice.call(this.eventsContainer.children); } get index() { const rowIndex = this.element.getAttribute('row-index'); if (rowIndex == null) throw new Error("row index is not available"); return +rowIndex; } get isSticky() { return this.element.getAttribute('sticky') == 'true'; } get width() { return this.element.scrollWidth - this.horizontalOffset; } attachEvent(event) { this.renderer.appendChild(this.eventsContainer, event); } attachTooltip(tooltipRef, position) { tooltipRef.style.visibility = 'hidden'; this.renderer.appendChild(this.tooltipContainer, tooltipRef); const tooltipRect = tooltipRef.getBoundingClientRect(); const containerRect = this.tooltipContainer.getBoundingClientRect(); // Mouse position relative to the container const x = position.x - containerRect.left; const y = position.y - containerRect.top; const xAlignment = x >= containerRect.width / 2 ? (tooltipRect.width * -1) : 10; const yAlignment = y < containerRect.height / 2 ? 10 : (tooltipRect.height * -1); tooltipRef.style.left = `${x + xAlignment}px`; tooltipRef.style.top = `${y + yAlignment}px`; tooltipRef.style.visibility = 'visible'; } clearEvents() { this.eventsContainer.innerHTML = ''; } clearTooltips() { this.tooltipContainer.innerHTML = ''; } get cellsContainer() { const children = Array().slice.call(this.element.children); return children.filter(child => child.getAttribute('cells') != null)[0]; } get eventsContainer() { const children = Array().slice.call(this.element.children); return children.filter(child => child.getAttribute('events') != null)[0]; } get tooltipContainer() { const children = Array().slice.call(this.element.children); return children.filter(child => child.getAttribute('tooltip') != null)[0]; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdmlldy1yb3cudG9vbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hc2FkaS9hbmd1bGFyLWRhdGUtY29tcG9uZW50cy9jb3JlL3NyYy91dGlscy90YWJsZS12aWV3LXJvdy50b29scy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sZ0JBQWdCO0lBRXpCLFlBQ1ksUUFBbUIsRUFDbkIsT0FBb0I7UUFEcEIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixZQUFPLEdBQVAsT0FBTyxDQUFhO0lBRS9CLENBQUM7SUFHRjs7Ozs7O09BTUc7SUFDSCxTQUFTLENBQUMsTUFBYztRQUVwQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFBSSxLQUFLO1FBRUwsTUFBTSxRQUFRLEdBQUcsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxDQUFrQixDQUFDO1FBRTNHLE9BQU8sUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLElBQUksT0FBTyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBRWhCLE1BQU0sUUFBUSxHQUFHLEtBQUssRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBa0IsQ0FBQztRQUUzRyxPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFD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QUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRUQsSUFBWSxlQUFlO1FBRXZCLE1BQU0sUUFBUSxHQUFHLEtBQUssRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQWtCLENBQUM7UUFDNUUsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQsSUFBWSxnQkFBZ0I7UUFFeEIsTUFBTSxRQUFRLEdBQUcsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBa0IsQ0FBQztRQUM1RSxPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzlFLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbmRlcmVyMiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgQURDVGFibGVSb3dUb29sc1xyXG57XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50OiBIVE1MRWxlbWVudCwgXHJcbiAgICApXHJcbiAgICB7fVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIGEgbWV0aG9kIGZvciBzZXR0aW5nIGhlaWdodCBvZiB0aGUgc2VsZWN0ZWQgcm93IGJhc2VkIG9uIGV2ZW50IGNvdW50XHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSBldmVudHNDb3VudCB0aGUgbnVtYmVyIG9mIGV2ZW50c1xyXG4gICAgICogXHJcbiAgICAgKiBAcmV0dXJucyB2b2lkXHJcbiAgICAgKi9cclxuICAgIHNldEhlaWdodChoZWlnaHQ6IHN0cmluZyk6IHZvaWRcclxuICAgIHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWxlbWVudCwgXCJoZWlnaHRcIiwgaGVpZ2h0KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgY2VsbHMoKTogSFRNTEVsZW1lbnRbXVxyXG4gICAge1xyXG4gICAgICAgIGNvbnN0IGFsbENlbGxzID0gQXJyYXkoKS5zbGljZS5jYWxsKHRoaXMuY2VsbHNDb250YWluZXIuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnY29sdW1uJykpIGFzIEhUTUxFbGVtZW50W107XHJcblxyXG4gICAgICAgIHJldHVybiBhbGxDZWxscy5maWx0ZXIoY2VsbCA9PiBjZWxsLmdldEF0dHJpYnV0ZSgnZGV0YWlsJykgPT0gJ2ZhbHNlJyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGhvcml6b250YWxPZmZzZXQoKTogbnVtYmVyXHJcbiAgICB7XHJcbiAgICAgICAgY29uc3QgYWxsQ2VsbHMgPSBBcnJheSgpLnNsaWNlLmNhbGwodGhpcy5jZWxsc0NvbnRhaW5lci5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdjb2x1bW4nKSkgYXMgSFRNTEVsZW1lbnRbXTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGFsbENlbGxzLmZpbHRlcihjZWxsID0+IGNlbGwuZ2V0QXR0cmlidXRlKCdkZXRhaWwnKSA9PSAndHJ1ZScpLmxlbmd0aCA9PSAwID8gMCA6IDEwMDtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgYXR0YWNoZWRFdmVudHMoKTogSFRNTEVsZW1lbnRbXVxyXG4gICAge1xyXG4gICAgICAgIHJldHVybiBBcnJheSgpLnNsaWNlLmNhbGwodGhpcy5ldmVudHNDb250YWluZXIuY2hpbGRyZW4pIGFzIEhUTUxFbGVtZW50W11cclxuICAgIH1cclxuXHJcbiAgICBnZXQgaW5kZXgoKTogbnVtYmVyXHJcbiAgICB7XHJcbiAgICAgICAgY29uc3Qgcm93SW5kZXggPSB0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCdyb3ctaW5kZXgnKTtcclxuXHJcbiAgICAgICAgaWYocm93SW5kZXggPT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKFwicm93IGluZGV4IGlzIG5vdCBhdmFpbGFibGVcIik7XHJcblxyXG4gICAgICAgIHJldHVybiArcm93SW5kZXg7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGlzU3RpY2t5KCk6IGJvb2xlYW5cclxuICAgIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgnc3RpY2t5JykgPT0gJ3RydWUnO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCB3aWR0aCgpOiBudW1iZXJcclxuICAgIHtcclxuICAgICAgICByZXR1cm4gKHRoaXMuZWxlbWVudCBhcyBIVE1MRWxlbWVudCkuc2Nyb2xsV2lkdGggLSB0aGlzLmhvcml6b250YWxPZmZzZXQ7XHJcbiAgICB9XHJcblxyXG4gICAgYXR0YWNoRXZlbnQoZXZlbnQ6IEhUTUxFbGVtZW50KVxyXG4gICAge1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5ldmVudHNDb250YWluZXIsIGV2ZW50KTtcclxuICAgIH1cclxuXHJcbiAgICBhdHRhY2hUb29sdGlwKHRvb2x0aXBSZWY6IEhUTUxFbGVtZW50LCBwb3NpdGlvbjoge3g6IG51bWJlciwgeTogbnVtYmVyfSk6IHZvaWRcclxuICAgIHtcclxuICAgICAgICB0b29sdGlwUmVmLnN0eWxlLnZpc2liaWxpdHkgPSAnaGlkZGVuJztcclxuXHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLnRvb2x0aXBDb250YWluZXIsIHRvb2x0aXBSZWYpO1xyXG5cclxuICAgICAgICBjb25zdCB0b29sdGlwUmVjdCA9IHRvb2x0aXBSZWYuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IHRoaXMudG9vbHRpcENvbnRhaW5lci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgICAgICBcclxuICAgICAgICAvLyBNb3VzZSBwb3NpdGlvbiByZWxhdGl2ZSB0byB0aGUgY29udGFpbmVyXHJcbiAgICAgICAgY29uc3QgeCA9IHBvc2l0aW9uLnggLSBjb250YWluZXJSZWN0LmxlZnQ7XHJcbiAgICAgICAgY29uc3QgeSA9IHBvc2l0aW9uLnkgLSBjb250YWluZXJSZWN0LnRvcDtcclxuXHJcbiAgICAgICAgY29uc3QgeEFsaWdubWVudCA9IHggPj0gY29udGFpbmVyUmVjdC53aWR0aCAvIDIgPyAodG9vbHRpcFJlY3Qud2lkdGggKiAtMSkgOiAxMDtcclxuICAgICAgICBjb25zdCB5QWxpZ25tZW50ID0geSA8IGNvbnRhaW5lclJlY3QuaGVpZ2h0IC8gMiA/IDEwIDogKHRvb2x0aXBSZWN0LmhlaWdodCAqIC0xKTtcclxuXHJcbiAgICAgICAgdG9vbHRpcFJlZi5zdHlsZS5sZWZ0ID0gYCR7eCArIHhBbGlnbm1lbnR9cHhgO1xyXG4gICAgICAgIHRvb2x0aXBSZWYuc3R5bGUudG9wID0gYCR7eSArIHlBbGlnbm1lbnR9cHhgO1xyXG5cclxuICAgICAgICB0b29sdGlwUmVmLnN0eWxlLnZpc2liaWxpdHkgPSAndmlzaWJsZSc7XHJcbiAgICB9XHJcblxyXG4gICAgY2xlYXJFdmVudHMoKTogdm9pZFxyXG4gICAge1xyXG4gICAgICAgIHRoaXMuZXZlbnRzQ29udGFpbmVyLmlubmVySFRNTCA9ICcnO1xyXG4gICAgfVxyXG5cclxuICAgIGNsZWFyVG9vbHRpcHMoKTogdm9pZFxyXG4gICAge1xyXG4gICAgICAgIHRoaXMudG9vbHRpcENvbnRhaW5lci5pbm5lckhUTUwgPSAnJztcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldCBjZWxsc0NvbnRhaW5lcigpOiBIVE1MRWxlbWVudFxyXG4gICAge1xyXG4gICAgICAgIGNvbnN0IGNoaWxkcmVuID0gQXJyYXkoKS5zbGljZS5jYWxsKHRoaXMuZWxlbWVudC5jaGlsZHJlbikgYXMgSFRNTEVsZW1lbnRbXTtcclxuICAgICAgICByZXR1cm4gY2hpbGRyZW4uZmlsdGVyKGNoaWxkID0+IGNoaWxkLmdldEF0dHJpYnV0ZSgnY2VsbHMnKSAhPSBudWxsKVswXTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldCBldmVudHNDb250YWluZXIoKTogSFRNTEVsZW1lbnRcclxuICAgIHtcclxuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IEFycmF5KCkuc2xpY2UuY2FsbCh0aGlzLmVsZW1lbnQuY2hpbGRyZW4pIGFzIEhUTUxFbGVtZW50W107XHJcbiAgICAgICAgcmV0dXJuIGNoaWxkcmVuLmZpbHRlcihjaGlsZCA9PiBjaGlsZC5nZXRBdHRyaWJ1dGUoJ2V2ZW50cycpICE9IG51bGwpWzBdO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0IHRvb2x0aXBDb250YWluZXIoKTogSFRNTEVsZW1lbnRcclxuICAgIHtcclxuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IEFycmF5KCkuc2xpY2UuY2FsbCh0aGlzLmVsZW1lbnQuY2hpbGRyZW4pIGFzIEhUTUxFbGVtZW50W107XHJcbiAgICAgICAgcmV0dXJuIGNoaWxkcmVuLmZpbHRlcihjaGlsZCA9PiBjaGlsZC5nZXRBdHRyaWJ1dGUoJ3Rvb2x0aXAnKSAhPSBudWxsKVswXTtcclxuICAgIH1cclxufSJdfQ==