@tiba-spark/client-shared-lib 25.3.0-97 → 25.3.0-98
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/libraries/directives/dynamic-ellipsis-tooltip.directive.mjs +149 -0
- package/esm2022/libraries/directives/index.mjs +2 -1
- package/fesm2022/tiba-spark-client-shared-lib.mjs +260 -116
- package/fesm2022/tiba-spark-client-shared-lib.mjs.map +1 -1
- package/libraries/directives/dynamic-ellipsis-tooltip.directive.d.ts +30 -0
- package/libraries/directives/dynamic-ellipsis-tooltip.directive.d.ts.map +1 -0
- package/libraries/directives/index.d.ts +1 -0
- package/libraries/directives/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { Directive, HostListener, Input } from '@angular/core';
|
|
2
|
+
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
3
|
+
import { findParentElement } from '../utils/element.util';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/material/tooltip";
|
|
6
|
+
export class DynamicEllipsisTooltipDirective {
|
|
7
|
+
constructor(matTooltip, elementRef, renderer) {
|
|
8
|
+
this.matTooltip = matTooltip;
|
|
9
|
+
this.elementRef = elementRef;
|
|
10
|
+
this.renderer = renderer;
|
|
11
|
+
this.originalPlaceholder = '';
|
|
12
|
+
this.truncatedPlaceholder = '';
|
|
13
|
+
}
|
|
14
|
+
ngAfterViewInit() {
|
|
15
|
+
if (this.querySelector?.length > 0) {
|
|
16
|
+
this.element = this.elementRef.nativeElement.querySelector(this.querySelector);
|
|
17
|
+
}
|
|
18
|
+
else if (this.findParentElementClass?.length > 0) {
|
|
19
|
+
this.element = findParentElement(this.elementRef, this.findParentElementClass);
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
this.element = this.elementRef.nativeElement;
|
|
23
|
+
}
|
|
24
|
+
this.originalPlaceholder = this.element['placeholder'];
|
|
25
|
+
if (this.originalPlaceholder?.length > 0) {
|
|
26
|
+
this.setupListeners();
|
|
27
|
+
this.setupResizeObserver();
|
|
28
|
+
this.calculateTruncatedPlaceholder();
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
ngOnDestroy() {
|
|
32
|
+
if (this.resizeObserver) {
|
|
33
|
+
this.resizeObserver.disconnect();
|
|
34
|
+
}
|
|
35
|
+
if (this.focusListener) {
|
|
36
|
+
this.element.removeEventListener('focus', this.focusListener);
|
|
37
|
+
}
|
|
38
|
+
if (this.blurListener) {
|
|
39
|
+
this.element.removeEventListener('blur', this.blurListener);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
setupListeners() {
|
|
43
|
+
const input = this.element;
|
|
44
|
+
this.focusListener = () => {
|
|
45
|
+
// On focus, use truncated placeholder if overflow exists
|
|
46
|
+
if (this.isPlaceholderOverflowing()) {
|
|
47
|
+
this.renderer.setAttribute(input, 'placeholder', this.truncatedPlaceholder);
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
this.blurListener = () => {
|
|
51
|
+
this.renderer.setAttribute(input, 'placeholder', this.truncatedPlaceholder);
|
|
52
|
+
};
|
|
53
|
+
input.addEventListener('focus', this.focusListener);
|
|
54
|
+
input.addEventListener('blur', this.blurListener);
|
|
55
|
+
}
|
|
56
|
+
calculateTruncatedPlaceholder() {
|
|
57
|
+
if (!this.originalPlaceholder)
|
|
58
|
+
return;
|
|
59
|
+
const input = this.element;
|
|
60
|
+
const maxWidth = this.getAvailableWidth();
|
|
61
|
+
if (this.getTextWidth(this.originalPlaceholder) <= maxWidth) {
|
|
62
|
+
this.truncatedPlaceholder = this.originalPlaceholder;
|
|
63
|
+
this.renderer.setAttribute(input, 'placeholder', this.truncatedPlaceholder);
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
// Binary search for optimal length
|
|
67
|
+
let left = 0;
|
|
68
|
+
let right = this.originalPlaceholder.length;
|
|
69
|
+
let bestFit = '';
|
|
70
|
+
while (left <= right) {
|
|
71
|
+
const mid = Math.floor((left + right) / 2);
|
|
72
|
+
const testText = this.originalPlaceholder.substring(0, mid) + '...';
|
|
73
|
+
const textWidth = this.getTextWidth(testText);
|
|
74
|
+
if (textWidth <= maxWidth) {
|
|
75
|
+
bestFit = testText;
|
|
76
|
+
left = mid + 1;
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
right = mid - 1;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
this.truncatedPlaceholder = bestFit || this.originalPlaceholder.substring(0, 10) + '...';
|
|
83
|
+
// Apply the truncated placeholder immediately
|
|
84
|
+
this.renderer.setAttribute(input, 'placeholder', this.truncatedPlaceholder);
|
|
85
|
+
}
|
|
86
|
+
getAvailableWidth() {
|
|
87
|
+
const input = this.element;
|
|
88
|
+
const computedStyle = window.getComputedStyle(input);
|
|
89
|
+
const paddingLeft = parseFloat(computedStyle.paddingLeft) || 0;
|
|
90
|
+
const paddingRight = parseFloat(computedStyle.paddingRight) || 0;
|
|
91
|
+
return input.clientWidth - paddingLeft - paddingRight;
|
|
92
|
+
}
|
|
93
|
+
getTextWidth(text) {
|
|
94
|
+
const input = this.element;
|
|
95
|
+
const computedStyle = window.getComputedStyle(input);
|
|
96
|
+
const canvas = document.createElement('canvas');
|
|
97
|
+
const context = canvas.getContext('2d');
|
|
98
|
+
context.font = `${computedStyle.fontSize} ${computedStyle.fontFamily}`;
|
|
99
|
+
return context.measureText(text).width;
|
|
100
|
+
}
|
|
101
|
+
isPlaceholderOverflowing() {
|
|
102
|
+
const textWidth = this.getTextWidth(this.originalPlaceholder);
|
|
103
|
+
const availableWidth = this.getAvailableWidth();
|
|
104
|
+
return textWidth > availableWidth;
|
|
105
|
+
}
|
|
106
|
+
setupResizeObserver() {
|
|
107
|
+
if ('ResizeObserver' in window) {
|
|
108
|
+
this.resizeObserver = new ResizeObserver(() => {
|
|
109
|
+
this.calculateTruncatedPlaceholder();
|
|
110
|
+
});
|
|
111
|
+
this.resizeObserver.observe(this.element);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
onMouseOver() {
|
|
115
|
+
if (this.element) {
|
|
116
|
+
this.checkPlaceholderOverflow();
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
checkPlaceholderOverflow() {
|
|
120
|
+
if (this.originalPlaceholder?.length > 0) {
|
|
121
|
+
this.matTooltip.disabled = !this.isPlaceholderOverflowing();
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
this.matTooltip.disabled = this.element.scrollWidth <= this.element.clientWidth;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicEllipsisTooltipDirective, deps: [{ token: i1.MatTooltip }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
128
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DynamicEllipsisTooltipDirective, isStandalone: true, selector: "[matTooltip][querySelector]", inputs: { querySelector: "querySelector", findParentElementClass: "findParentElementClass" }, host: { listeners: { "mouseover": "onMouseOver()" } }, providers: [
|
|
129
|
+
MatTooltipModule,
|
|
130
|
+
], ngImport: i0 }); }
|
|
131
|
+
}
|
|
132
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicEllipsisTooltipDirective, decorators: [{
|
|
133
|
+
type: Directive,
|
|
134
|
+
args: [{
|
|
135
|
+
selector: '[matTooltip][querySelector]',
|
|
136
|
+
standalone: true,
|
|
137
|
+
providers: [
|
|
138
|
+
MatTooltipModule,
|
|
139
|
+
]
|
|
140
|
+
}]
|
|
141
|
+
}], ctorParameters: () => [{ type: i1.MatTooltip }, { type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { querySelector: [{
|
|
142
|
+
type: Input
|
|
143
|
+
}], findParentElementClass: [{
|
|
144
|
+
type: Input
|
|
145
|
+
}], onMouseOver: [{
|
|
146
|
+
type: HostListener,
|
|
147
|
+
args: ['mouseover']
|
|
148
|
+
}] } });
|
|
149
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1lbGxpcHNpcy10b29sdGlwLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC1zaGFyZWQtbGliL3NyYy9saWJyYXJpZXMvZGlyZWN0aXZlcy9keW5hbWljLWVsbGlwc2lzLXRvb2x0aXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQXdCLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFBYyxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFTMUQsTUFBTSxPQUFPLCtCQUErQjtJQWExQyxZQUFvQixVQUFzQixFQUFVLFVBQW1DLEVBQVUsUUFBbUI7UUFBaEcsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFVLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQU41Ryx3QkFBbUIsR0FBVyxFQUFFLENBQUM7UUFDakMseUJBQW9CLEdBQVcsRUFBRSxDQUFDO0lBSzhFLENBQUM7SUFFbEgsZUFBZTtRQUNwQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNqRixDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ25ELElBQUksQ0FBQyxPQUFPLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUNqRixDQUFD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QUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQzlELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7UUFDbEYsQ0FBQztJQUNILENBQUM7K0dBbEpVLCtCQUErQjttR0FBL0IsK0JBQStCLCtOQUovQjtZQUNULGdCQUFnQjtTQUNqQjs7NEZBRVUsK0JBQStCO2tCQVAzQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw2QkFBNkI7b0JBQ3ZDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixTQUFTLEVBQUU7d0JBQ1QsZ0JBQWdCO3FCQUNqQjtpQkFDRjtnSUFHVSxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFtSXFCLFdBQVc7c0JBQXJDLFlBQVk7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25EZXN0cm95LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFRvb2x0aXAsIE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IGZpbmRQYXJlbnRFbGVtZW50IH0gZnJvbSAnLi4vdXRpbHMvZWxlbWVudC51dGlsJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW21hdFRvb2x0aXBdW3F1ZXJ5U2VsZWN0b3JdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljRWxsaXBzaXNUb29sdGlwRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcblxuICBASW5wdXQoKSBxdWVyeVNlbGVjdG9yOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGZpbmRQYXJlbnRFbGVtZW50Q2xhc3M6IHN0cmluZztcblxuICBwcml2YXRlIGVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuXG4gIHByaXZhdGUgb3JpZ2luYWxQbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XG4gIHByaXZhdGUgdHJ1bmNhdGVkUGxhY2Vob2xkZXI6IHN0cmluZyA9ICcnO1xuICBwcml2YXRlIHJlc2l6ZU9ic2VydmVyPzogUmVzaXplT2JzZXJ2ZXI7XG4gIHByaXZhdGUgZm9jdXNMaXN0ZW5lcj86ICgpID0+IHZvaWQ7XG4gIHByaXZhdGUgYmx1ckxpc3RlbmVyPzogKCkgPT4gdm9pZDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1hdFRvb2x0aXA6IE1hdFRvb2x0aXAsIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5xdWVyeVNlbGVjdG9yPy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLmVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKHRoaXMucXVlcnlTZWxlY3Rvcik7XG4gICAgfSBlbHNlIGlmICh0aGlzLmZpbmRQYXJlbnRFbGVtZW50Q2xhc3M/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuZWxlbWVudCA9IGZpbmRQYXJlbnRFbGVtZW50KHRoaXMuZWxlbWVudFJlZiwgdGhpcy5maW5kUGFyZW50RWxlbWVudENsYXNzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5lbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgdGhpcy5vcmlnaW5hbFBsYWNlaG9sZGVyID0gdGhpcy5lbGVtZW50WydwbGFjZWhvbGRlciddO1xuICAgIGlmICh0aGlzLm9yaWdpbmFsUGxhY2Vob2xkZXI/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuc2V0dXBMaXN0ZW5lcnMoKTtcbiAgICAgIHRoaXMuc2V0dXBSZXNpemVPYnNlcnZlcigpO1xuICAgICAgdGhpcy5jYWxjdWxhdGVUcnVuY2F0ZWRQbGFjZWhvbGRlcigpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLnJlc2l6ZU9ic2VydmVyKSB7XG4gICAgICB0aGlzLnJlc2l6ZU9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZm9jdXNMaXN0ZW5lcikge1xuICAgICAgdGhpcy5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2ZvY3VzJywgdGhpcy5mb2N1c0xpc3RlbmVyKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuYmx1ckxpc3RlbmVyKSB7XG4gICAgICB0aGlzLmVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignYmx1cicsIHRoaXMuYmx1ckxpc3RlbmVyKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldHVwTGlzdGVuZXJzKCkge1xuICAgIGNvbnN0IGlucHV0ID0gdGhpcy5lbGVtZW50O1xuXG4gICAgdGhpcy5mb2N1c0xpc3RlbmVyID0gKCkgPT4ge1xuICAgICAgLy8gT24gZm9jdXMsIHVzZSB0cnVuY2F0ZWQgcGxhY2Vob2xkZXIgaWYgb3ZlcmZsb3cgZXhpc3RzXG4gICAgICBpZiAodGhpcy5pc1BsYWNlaG9sZGVyT3ZlcmZsb3dpbmcoKSkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShpbnB1dCwgJ3BsYWNlaG9sZGVyJywgdGhpcy50cnVuY2F0ZWRQbGFjZWhvbGRlcik7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHRoaXMuYmx1ckxpc3RlbmVyID0gKCkgPT4ge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoaW5wdXQsICdwbGFjZWhvbGRlcicsIHRoaXMudHJ1bmNhdGVkUGxhY2Vob2xkZXIpO1xuICAgIH07XG5cbiAgICBpbnB1dC5hZGRFdmVudExpc3RlbmVyKCdmb2N1cycsIHRoaXMuZm9jdXNMaXN0ZW5lcik7XG4gICAgaW5wdXQuYWRkRXZlbnRMaXN0ZW5lcignYmx1cicsIHRoaXMuYmx1ckxpc3RlbmVyKTtcbiAgfVxuXG4gIHByaXZhdGUgY2FsY3VsYXRlVHJ1bmNhdGVkUGxhY2Vob2xkZXIoKSB7XG4gICAgaWYgKCF0aGlzLm9yaWdpbmFsUGxhY2Vob2xkZXIpIHJldHVybjtcblxuICAgIGNvbnN0IGlucHV0ID0gdGhpcy5lbGVtZW50O1xuICAgIGNvbnN0IG1heFdpZHRoID0gdGhpcy5nZXRBdmFpbGFibGVXaWR0aCgpO1xuXG4gICAgaWYgKHRoaXMuZ2V0VGV4dFdpZHRoKHRoaXMub3JpZ2luYWxQbGFjZWhvbGRlcikgPD0gbWF4V2lkdGgpIHtcbiAgICAgIHRoaXMudHJ1bmNhdGVkUGxhY2Vob2xkZXIgPSB0aGlzLm9yaWdpbmFsUGxhY2Vob2xkZXI7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShpbnB1dCwgJ3BsYWNlaG9sZGVyJywgdGhpcy50cnVuY2F0ZWRQbGFjZWhvbGRlcik7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gQmluYXJ5IHNlYXJjaCBmb3Igb3B0aW1hbCBsZW5ndGhcbiAgICBsZXQgbGVmdCA9IDA7XG4gICAgbGV0IHJpZ2h0ID0gdGhpcy5vcmlnaW5hbFBsYWNlaG9sZGVyLmxlbmd0aDtcbiAgICBsZXQgYmVzdEZpdCA9ICcnO1xuXG4gICAgd2hpbGUgKGxlZnQgPD0gcmlnaHQpIHtcbiAgICAgIGNvbnN0IG1pZCA9IE1hdGguZmxvb3IoKGxlZnQgKyByaWdodCkgLyAyKTtcbiAgICAgIGNvbnN0IHRlc3RUZXh0ID0gdGhpcy5vcmlnaW5hbFBsYWNlaG9sZGVyLnN1YnN0cmluZygwLCBtaWQpICsgJy4uLic7XG4gICAgICBjb25zdCB0ZXh0V2lkdGggPSB0aGlzLmdldFRleHRXaWR0aCh0ZXN0VGV4dCk7XG5cbiAgICAgIGlmICh0ZXh0V2lkdGggPD0gbWF4V2lkdGgpIHtcbiAgICAgICAgYmVzdEZpdCA9IHRlc3RUZXh0O1xuICAgICAgICBsZWZ0ID0gbWlkICsgMTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJpZ2h0ID0gbWlkIC0gMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnRydW5jYXRlZFBsYWNlaG9sZGVyID0gYmVzdEZpdCB8fCB0aGlzLm9yaWdpbmFsUGxhY2Vob2xkZXIuc3Vic3RyaW5nKDAsIDEwKSArICcuLi4nO1xuXG4gICAgLy8gQXBwbHkgdGhlIHRydW5jYXRlZCBwbGFjZWhvbGRlciBpbW1lZGlhdGVseVxuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGlucHV0LCAncGxhY2Vob2xkZXInLCB0aGlzLnRydW5jYXRlZFBsYWNlaG9sZGVyKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QXZhaWxhYmxlV2lkdGgoKTogbnVtYmVyIHtcbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuZWxlbWVudDtcbiAgICBjb25zdCBjb21wdXRlZFN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5wdXQpO1xuXG4gICAgY29uc3QgcGFkZGluZ0xlZnQgPSBwYXJzZUZsb2F0KGNvbXB1dGVkU3R5bGUucGFkZGluZ0xlZnQpIHx8IDA7XG4gICAgY29uc3QgcGFkZGluZ1JpZ2h0ID0gcGFyc2VGbG9hdChjb21wdXRlZFN0eWxlLnBhZGRpbmdSaWdodCkgfHwgMDtcblxuICAgIHJldHVybiBpbnB1dC5jbGllbnRXaWR0aCAtIHBhZGRpbmdMZWZ0IC0gcGFkZGluZ1JpZ2h0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRUZXh0V2lkdGgodGV4dDogc3RyaW5nKTogbnVtYmVyIHtcbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuZWxlbWVudDtcbiAgICBjb25zdCBjb21wdXRlZFN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5wdXQpO1xuXG4gICAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7XG4gICAgY29uc3QgY29udGV4dCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpITtcbiAgICBjb250ZXh0LmZvbnQgPSBgJHtjb21wdXRlZFN0eWxlLmZvbnRTaXplfSAke2NvbXB1dGVkU3R5bGUuZm9udEZhbWlseX1gO1xuXG4gICAgcmV0dXJuIGNvbnRleHQubWVhc3VyZVRleHQodGV4dCkud2lkdGg7XG4gIH1cblxuICBwcml2YXRlIGlzUGxhY2Vob2xkZXJPdmVyZmxvd2luZygpOiBib29sZWFuIHtcbiAgICBjb25zdCB0ZXh0V2lkdGggPSB0aGlzLmdldFRleHRXaWR0aCh0aGlzLm9yaWdpbmFsUGxhY2Vob2xkZXIpO1xuICAgIGNvbnN0IGF2YWlsYWJsZVdpZHRoID0gdGhpcy5nZXRBdmFpbGFibGVXaWR0aCgpO1xuICAgIHJldHVybiB0ZXh0V2lkdGggPiBhdmFpbGFibGVXaWR0aDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBSZXNpemVPYnNlcnZlcigpIHtcbiAgICBpZiAoJ1Jlc2l6ZU9ic2VydmVyJyBpbiB3aW5kb3cpIHtcbiAgICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKCkgPT4ge1xuICAgICAgICB0aGlzLmNhbGN1bGF0ZVRydW5jYXRlZFBsYWNlaG9sZGVyKCk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLmVsZW1lbnQpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlb3ZlcicpIG9uTW91c2VPdmVyKCkge1xuICAgIGlmICh0aGlzLmVsZW1lbnQpIHtcbiAgICAgIHRoaXMuY2hlY2tQbGFjZWhvbGRlck92ZXJmbG93KCk7XG4gICAgfVxuICB9XG5cbiAgY2hlY2tQbGFjZWhvbGRlck92ZXJmbG93KCkge1xuICAgIGlmICh0aGlzLm9yaWdpbmFsUGxhY2Vob2xkZXI/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMubWF0VG9vbHRpcC5kaXNhYmxlZCA9ICF0aGlzLmlzUGxhY2Vob2xkZXJPdmVyZmxvd2luZygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1hdFRvb2x0aXAuZGlzYWJsZWQgPSB0aGlzLmVsZW1lbnQuc2Nyb2xsV2lkdGggPD0gdGhpcy5lbGVtZW50LmNsaWVudFdpZHRoO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -3,6 +3,7 @@ export * from './shared-directives.module';
|
|
|
3
3
|
// Directives
|
|
4
4
|
export * from './autofocus.directive';
|
|
5
5
|
export * from './container-ref.directive';
|
|
6
|
+
export * from './dynamic-ellipsis-tooltip.directive';
|
|
6
7
|
export * from './ellipsis-multiline.directive';
|
|
7
8
|
export * from './formatted-input.directive';
|
|
8
9
|
export * from './is-ellipsis.directive';
|
|
@@ -12,4 +13,4 @@ export * from './offscreen.directive';
|
|
|
12
13
|
export * from './stop-propagation.directive';
|
|
13
14
|
export * from './tb-type-number.directive';
|
|
14
15
|
export * from './var.directive';
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtc2hhcmVkLWxpYi9zcmMvbGlicmFyaWVzL2RpcmVjdGl2ZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsU0FBUztBQUNULGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsYUFBYTtBQUNiLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gTW9kdWxlXG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC1kaXJlY3RpdmVzLm1vZHVsZSc7XG5cbi8vIERpcmVjdGl2ZXNcbmV4cG9ydCAqIGZyb20gJy4vYXV0b2ZvY3VzLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRhaW5lci1yZWYuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZHluYW1pYy1lbGxpcHNpcy10b29sdGlwLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2VsbGlwc2lzLW11bHRpbGluZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtYXR0ZWQtaW5wdXQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vaXMtZWxsaXBzaXMuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbWF0LWhpbnQtZXJyb3IuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbmF0aXZlLWVsZW1lbnQtaW5qZWN0b3IuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vb2Zmc2NyZWVuLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3N0b3AtcHJvcGFnYXRpb24uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdGItdHlwZS1udW1iZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdmFyLmRpcmVjdGl2ZSc7XG4iXX0=
|