UNPKG

primeng-shadowdom-directives

Version:
74 lines 9.38 kB
import { NgModule } from '@angular/core'; import { psdOverlayPanelDirective, psdInputMaskDirective, psdMenuDirective, psdSlideMenuDirective, psdSplitButtonDirective, psdTieredMenuDirective, psdCalendarDirective, } from './directives'; import { DomHandler } from 'primeng/dom'; import * as i0 from "@angular/core"; DomHandler.getScrollableParents = (element) => { let scrollableParents = []; if (element) { let parents = DomHandler.getParents(element).filter((item) => !(item instanceof ShadowRoot)); const overflowRegex = /(auto|scroll)/; const overflowCheck = (node) => { let styleDeclaration = window['getComputedStyle'](node, null); return (overflowRegex.test(styleDeclaration.getPropertyValue('overflow')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflowX')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflowY'))); }; for (let parent of parents) { let scrollSelectors = parent.nodeType === 1 && parent.dataset['scrollselectors']; if (scrollSelectors) { let selectors = scrollSelectors.split(','); for (let selector of selectors) { let el = DomHandler.findSingle(parent, selector); if (el && overflowCheck(el)) { scrollableParents.push(el); } } } if (parent.nodeType !== 9 && overflowCheck(parent)) { scrollableParents.push(parent); } } } return scrollableParents; }; export class PrimeNGShadowDOMDirective { static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PrimeNGShadowDOMDirective, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); } static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: PrimeNGShadowDOMDirective, declarations: [psdMenuDirective, psdOverlayPanelDirective, psdInputMaskDirective, psdSlideMenuDirective, psdSplitButtonDirective, psdTieredMenuDirective, psdCalendarDirective], exports: [psdMenuDirective, psdOverlayPanelDirective, psdInputMaskDirective, psdSlideMenuDirective, psdSplitButtonDirective, psdTieredMenuDirective, psdCalendarDirective] }); } static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PrimeNGShadowDOMDirective }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PrimeNGShadowDOMDirective, decorators: [{ type: NgModule, args: [{ declarations: [ psdMenuDirective, psdOverlayPanelDirective, psdInputMaskDirective, psdSlideMenuDirective, psdSplitButtonDirective, psdTieredMenuDirective, psdCalendarDirective, ], exports: [ psdMenuDirective, psdOverlayPanelDirective, psdInputMaskDirective, psdSlideMenuDirective, psdSplitButtonDirective, psdTieredMenuDirective, psdCalendarDirective, ], }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWVuZy1zaGFkb3dkb20tZGlyZWN0aXZlcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9wcmltZW5nLXNoYWRvd2RvbS1kaXJlY3RpdmVzL3NyYy9wcmltZW5nLXNoYWRvd2RvbS1kaXJlY3RpdmVzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCx3QkFBd0IsRUFDeEIscUJBQXFCLEVBQ3JCLGdCQUFnQixFQUNoQixxQkFBcUIsRUFDckIsdUJBQXVCLEVBQ3ZCLHNCQUFzQixFQUN0QixvQkFBb0IsR0FDckIsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFFekMsVUFBVSxDQUFDLG9CQUFvQixHQUFHLENBQUMsT0FBWSxFQUFFLEVBQUU7SUFDakQsSUFBSSxpQkFBaUIsR0FBRyxFQUFFLENBQUM7SUFFM0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUNaLElBQUksT0FBTyxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUNqRCxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksWUFBWSxVQUFVLENBQUMsQ0FDN0MsQ0FBQztRQUNGLE1BQU0sYUFBYSxHQUFHLGVBQWUsQ0FBQztRQUN0QyxNQUFNLGFBQWEsR0FBRyxDQUFDLElBQVMsRUFBRSxFQUFFO1lBQ2xDLElBQUksZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzlELE9BQU8sQ0FDTCxhQUFhLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUNqRSxhQUFhLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUNsRSxhQUFhLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQ25FLENBQUM7UUFDSixDQUFDLENBQUM7UUFFRixLQUFLLElBQUksTUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQzNCLElBQUksZUFBZSxHQUNqQixNQUFNLENBQUMsUUFBUSxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDN0QsSUFBSSxlQUFlLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxTQUFTLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDM0MsS0FBSyxJQUFJLFFBQVEsSUFBSSxTQUFTLEVBQUUsQ0FBQztvQkFDL0IsSUFBSSxFQUFFLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7b0JBQ2pELElBQUksRUFBRSxJQUFJLGFBQWEsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO3dCQUM1QixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQzdCLENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7WUFFRCxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssQ0FBQyxJQUFJLGFBQWEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO2dCQUNuRCxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDakMsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxpQkFBaUIsQ0FBQztBQUMzQixDQUFDLENBQUM7QUFzQkYsTUFBTSxPQUFPLHlCQUF5QjsrR0FBekIseUJBQXlCO2dIQUF6Qix5QkFBeUIsaUJBbEJsQyxnQkFBZ0I7WUFDaEIsd0JBQXdCO1lBQ3hCLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsdUJBQXVCO1lBQ3ZCLHNCQUFzQjtZQUN0QixvQkFBb0IsYUFHcEIsZ0JBQWdCO1lBQ2hCLHdCQUF3QjtZQUN4QixxQkFBcUI7WUFDckIscUJBQXFCO1lBQ3JCLHVCQUF1QjtZQUN2QixzQkFBc0I7WUFDdEIsb0JBQW9CO2dIQUdYLHlCQUF5Qjs7NEZBQXpCLHlCQUF5QjtrQkFwQnJDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGdCQUFnQjt3QkFDaEIsd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2QixzQkFBc0I7d0JBQ3RCLG9CQUFvQjtxQkFDckI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGdCQUFnQjt3QkFDaEIsd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2QixzQkFBc0I7d0JBQ3RCLG9CQUFvQjtxQkFDckI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgcHNkT3ZlcmxheVBhbmVsRGlyZWN0aXZlLFxuICBwc2RJbnB1dE1hc2tEaXJlY3RpdmUsXG4gIHBzZE1lbnVEaXJlY3RpdmUsXG4gIHBzZFNsaWRlTWVudURpcmVjdGl2ZSxcbiAgcHNkU3BsaXRCdXR0b25EaXJlY3RpdmUsXG4gIHBzZFRpZXJlZE1lbnVEaXJlY3RpdmUsXG4gIHBzZENhbGVuZGFyRGlyZWN0aXZlLFxufSBmcm9tICcuL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgRG9tSGFuZGxlciB9IGZyb20gJ3ByaW1lbmcvZG9tJztcblxuRG9tSGFuZGxlci5nZXRTY3JvbGxhYmxlUGFyZW50cyA9IChlbGVtZW50OiBhbnkpID0+IHtcbiAgbGV0IHNjcm9sbGFibGVQYXJlbnRzID0gW107XG5cbiAgaWYgKGVsZW1lbnQpIHtcbiAgICBsZXQgcGFyZW50cyA9IERvbUhhbmRsZXIuZ2V0UGFyZW50cyhlbGVtZW50KS5maWx0ZXIoXG4gICAgICAoaXRlbTogYW55KSA9PiAhKGl0ZW0gaW5zdGFuY2VvZiBTaGFkb3dSb290KVxuICAgICk7XG4gICAgY29uc3Qgb3ZlcmZsb3dSZWdleCA9IC8oYXV0b3xzY3JvbGwpLztcbiAgICBjb25zdCBvdmVyZmxvd0NoZWNrID0gKG5vZGU6IGFueSkgPT4ge1xuICAgICAgbGV0IHN0eWxlRGVjbGFyYXRpb24gPSB3aW5kb3dbJ2dldENvbXB1dGVkU3R5bGUnXShub2RlLCBudWxsKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIG92ZXJmbG93UmVnZXgudGVzdChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ292ZXJmbG93JykpIHx8XG4gICAgICAgIG92ZXJmbG93UmVnZXgudGVzdChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ292ZXJmbG93WCcpKSB8fFxuICAgICAgICBvdmVyZmxvd1JlZ2V4LnRlc3Qoc3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKCdvdmVyZmxvd1knKSlcbiAgICAgICk7XG4gICAgfTtcblxuICAgIGZvciAobGV0IHBhcmVudCBvZiBwYXJlbnRzKSB7XG4gICAgICBsZXQgc2Nyb2xsU2VsZWN0b3JzID1cbiAgICAgICAgcGFyZW50Lm5vZGVUeXBlID09PSAxICYmIHBhcmVudC5kYXRhc2V0WydzY3JvbGxzZWxlY3RvcnMnXTtcbiAgICAgIGlmIChzY3JvbGxTZWxlY3RvcnMpIHtcbiAgICAgICAgbGV0IHNlbGVjdG9ycyA9IHNjcm9sbFNlbGVjdG9ycy5zcGxpdCgnLCcpO1xuICAgICAgICBmb3IgKGxldCBzZWxlY3RvciBvZiBzZWxlY3RvcnMpIHtcbiAgICAgICAgICBsZXQgZWwgPSBEb21IYW5kbGVyLmZpbmRTaW5nbGUocGFyZW50LCBzZWxlY3Rvcik7XG4gICAgICAgICAgaWYgKGVsICYmIG92ZXJmbG93Q2hlY2soZWwpKSB7XG4gICAgICAgICAgICBzY3JvbGxhYmxlUGFyZW50cy5wdXNoKGVsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKHBhcmVudC5ub2RlVHlwZSAhPT0gOSAmJiBvdmVyZmxvd0NoZWNrKHBhcmVudCkpIHtcbiAgICAgICAgc2Nyb2xsYWJsZVBhcmVudHMucHVzaChwYXJlbnQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzY3JvbGxhYmxlUGFyZW50cztcbn07XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIHBzZE1lbnVEaXJlY3RpdmUsXG4gICAgcHNkT3ZlcmxheVBhbmVsRGlyZWN0aXZlLFxuICAgIHBzZElucHV0TWFza0RpcmVjdGl2ZSxcbiAgICBwc2RTbGlkZU1lbnVEaXJlY3RpdmUsXG4gICAgcHNkU3BsaXRCdXR0b25EaXJlY3RpdmUsXG4gICAgcHNkVGllcmVkTWVudURpcmVjdGl2ZSxcbiAgICBwc2RDYWxlbmRhckRpcmVjdGl2ZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIHBzZE1lbnVEaXJlY3RpdmUsXG4gICAgcHNkT3ZlcmxheVBhbmVsRGlyZWN0aXZlLFxuICAgIHBzZElucHV0TWFza0RpcmVjdGl2ZSxcbiAgICBwc2RTbGlkZU1lbnVEaXJlY3RpdmUsXG4gICAgcHNkU3BsaXRCdXR0b25EaXJlY3RpdmUsXG4gICAgcHNkVGllcmVkTWVudURpcmVjdGl2ZSxcbiAgICBwc2RDYWxlbmRhckRpcmVjdGl2ZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgUHJpbWVOR1NoYWRvd0RPTURpcmVjdGl2ZSB7fVxuIl19