UNPKG

primeng-shadowdom-directives

Version:
62 lines 8.21 kB
import { Directive, Host, Optional, Self } from '@angular/core'; import * as i0 from "@angular/core"; import * as i1 from "primeng/inputmask"; /* In angular 15, primeNg uses document from inject, but the logic is still same */ export class psdInputMaskDirective { constructor(hostEl) { this.hostEl = hostEl; // @ts-ignore hostEl.caret = (first, last) => { let range, begin, end; if (!hostEl.inputViewChild?.nativeElement.offsetParent || hostEl.inputViewChild.nativeElement !== hostEl.inputViewChild.nativeElement.getRootNode().activeElement) { return; } if (typeof first == 'number') { begin = first; end = typeof last === 'number' ? last : begin; if (hostEl.inputViewChild.nativeElement.setSelectionRange) { hostEl.inputViewChild.nativeElement.setSelectionRange(begin, end); } else if (hostEl.inputViewChild.nativeElement['createTextRange']) { range = hostEl.inputViewChild.nativeElement['createTextRange'](); range.collapse(true); range.moveEnd('character', end); range.moveStart('character', begin); range.select(); } } else { if (hostEl.inputViewChild.nativeElement.setSelectionRange) { begin = hostEl.inputViewChild.nativeElement.selectionStart; end = hostEl.inputViewChild.nativeElement.selectionEnd; } else if (document['selection'] && document['selection'].createRange) { range = document['selection'].createRange(); begin = 0 - range.duplicate().moveStart('character', -100000); end = begin + range.text.length; } return { begin: begin, end: end }; } }; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: psdInputMaskDirective, deps: [{ token: i1.InputMask, host: true, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: psdInputMaskDirective, selector: "[psdInputMask]", ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: psdInputMaskDirective, decorators: [{ type: Directive, args: [{ selector: '[psdInputMask]', }] }], ctorParameters: () => [{ type: i1.InputMask, decorators: [{ type: Host }, { type: Self }, { type: Optional }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRtYXNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJpbWVuZy1zaGFkb3dkb20tZGlyZWN0aXZlcy9zcmMvZGlyZWN0aXZlcy9pbnB1dG1hc2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBR2hFOztFQUVFO0FBS0YsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUF5RCxNQUFpQjtRQUFqQixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ3hFLGFBQWE7UUFDYixNQUFNLENBQUMsS0FBSyxHQUFHLENBQUMsS0FBYyxFQUFFLElBQWEsRUFBRSxFQUFFO1lBQy9DLElBQUksS0FBSyxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUM7WUFFdEIsSUFDRSxDQUFDLE1BQU0sQ0FBQyxjQUFjLEVBQUUsYUFBYSxDQUFDLFlBQVk7Z0JBQ2xELE1BQU0sQ0FBQyxjQUFjLENBQUMsYUFBYTtvQkFDakMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUMsYUFBYSxFQUNqRSxDQUFDO2dCQUNELE9BQU87WUFDVCxDQUFDO1lBRUQsSUFBSSxPQUFPLEtBQUssSUFBSSxRQUFRLEVBQUUsQ0FBQztnQkFDN0IsS0FBSyxHQUFHLEtBQUssQ0FBQztnQkFDZCxHQUFHLEdBQUcsT0FBTyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztnQkFDOUMsSUFBSSxNQUFNLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO29CQUMxRCxNQUFNLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ3BFLENBQUM7cUJBQU0sSUFBSSxNQUFNLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7b0JBQ2xFLEtBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7b0JBQ2pFLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQ3JCLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDO29CQUNoQyxLQUFLLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztvQkFDcEMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNqQixDQUFDO1lBQ0gsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksTUFBTSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztvQkFDMUQsS0FBSyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQztvQkFDM0QsR0FBRyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQztnQkFDekQsQ0FBQztxQkFBTSxJQUNKLFFBQWdCLENBQUMsV0FBVyxDQUFDO29CQUM3QixRQUFnQixDQUFDLFdBQVcsQ0FBQyxDQUFDLFdBQVcsRUFDMUMsQ0FBQztvQkFDRCxLQUFLLEdBQUksUUFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztvQkFDckQsS0FBSyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUM5RCxHQUFHLEdBQUcsS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO2dCQUNsQyxDQUFDO2dCQUVELE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQztZQUNwQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDO0lBQ0osQ0FBQzsrR0ExQ1UscUJBQXFCO21HQUFyQixxQkFBcUI7OzRGQUFyQixxQkFBcUI7a0JBSGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtpQkFDM0I7OzBCQUVjLElBQUk7OzBCQUFJLElBQUk7OzBCQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3QsIE9wdGlvbmFsLCBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbnB1dE1hc2sgfSBmcm9tICdwcmltZW5nL2lucHV0bWFzayc7XG5cbi8qXG4gIEluIGFuZ3VsYXIgMTUsIHByaW1lTmcgdXNlcyBkb2N1bWVudCBmcm9tIGluamVjdCwgYnV0IHRoZSBsb2dpYyBpcyBzdGlsbCBzYW1lXG4qL1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbcHNkSW5wdXRNYXNrXScsXG59KVxuZXhwb3J0IGNsYXNzIHBzZElucHV0TWFza0RpcmVjdGl2ZSB7XG4gIGNvbnN0cnVjdG9yKEBIb3N0KCkgQFNlbGYoKSBAT3B0aW9uYWwoKSBwcml2YXRlIHJlYWRvbmx5IGhvc3RFbDogSW5wdXRNYXNrKSB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGhvc3RFbC5jYXJldCA9IChmaXJzdD86IG51bWJlciwgbGFzdD86IG51bWJlcikgPT4ge1xuICAgICAgbGV0IHJhbmdlLCBiZWdpbiwgZW5kO1xuXG4gICAgICBpZiAoXG4gICAgICAgICFob3N0RWwuaW5wdXRWaWV3Q2hpbGQ/Lm5hdGl2ZUVsZW1lbnQub2Zmc2V0UGFyZW50IHx8XG4gICAgICAgIGhvc3RFbC5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50ICE9PVxuICAgICAgICAgIGhvc3RFbC5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LmdldFJvb3ROb2RlKCkuYWN0aXZlRWxlbWVudFxuICAgICAgKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVvZiBmaXJzdCA9PSAnbnVtYmVyJykge1xuICAgICAgICBiZWdpbiA9IGZpcnN0O1xuICAgICAgICBlbmQgPSB0eXBlb2YgbGFzdCA9PT0gJ251bWJlcicgPyBsYXN0IDogYmVnaW47XG4gICAgICAgIGlmIChob3N0RWwuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZSkge1xuICAgICAgICAgIGhvc3RFbC5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKGJlZ2luLCBlbmQpO1xuICAgICAgICB9IGVsc2UgaWYgKGhvc3RFbC5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50WydjcmVhdGVUZXh0UmFuZ2UnXSkge1xuICAgICAgICAgIHJhbmdlID0gaG9zdEVsLmlucHV0Vmlld0NoaWxkLm5hdGl2ZUVsZW1lbnRbJ2NyZWF0ZVRleHRSYW5nZSddKCk7XG4gICAgICAgICAgcmFuZ2UuY29sbGFwc2UodHJ1ZSk7XG4gICAgICAgICAgcmFuZ2UubW92ZUVuZCgnY2hhcmFjdGVyJywgZW5kKTtcbiAgICAgICAgICByYW5nZS5tb3ZlU3RhcnQoJ2NoYXJhY3RlcicsIGJlZ2luKTtcbiAgICAgICAgICByYW5nZS5zZWxlY3QoKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGhvc3RFbC5pbnB1dFZpZXdDaGlsZC5uYXRpdmVFbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKSB7XG4gICAgICAgICAgYmVnaW4gPSBob3N0RWwuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydDtcbiAgICAgICAgICBlbmQgPSBob3N0RWwuaW5wdXRWaWV3Q2hpbGQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25FbmQ7XG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgKGRvY3VtZW50IGFzIGFueSlbJ3NlbGVjdGlvbiddICYmXG4gICAgICAgICAgKGRvY3VtZW50IGFzIGFueSlbJ3NlbGVjdGlvbiddLmNyZWF0ZVJhbmdlXG4gICAgICAgICkge1xuICAgICAgICAgIHJhbmdlID0gKGRvY3VtZW50IGFzIGFueSlbJ3NlbGVjdGlvbiddLmNyZWF0ZVJhbmdlKCk7XG4gICAgICAgICAgYmVnaW4gPSAwIC0gcmFuZ2UuZHVwbGljYXRlKCkubW92ZVN0YXJ0KCdjaGFyYWN0ZXInLCAtMTAwMDAwKTtcbiAgICAgICAgICBlbmQgPSBiZWdpbiArIHJhbmdlLnRleHQubGVuZ3RoO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHsgYmVnaW46IGJlZ2luLCBlbmQ6IGVuZCB9O1xuICAgICAgfVxuICAgIH07XG4gIH1cbn1cbiJdfQ==