@libs-ui/components-table 0.2.311-0 → 0.2.312-1

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.
@@ -1,10 +1,13 @@
1
1
  import { Pipe } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class LibsUiTableCalculatorColumnPipe {
4
- transform(header, offsetWidth, headerLeftConfig, headerRightConfig) {
4
+ transform(header, ignoreCalculatorWidthHeader, offsetWidth, headerLeftConfig, headerRightConfig) {
5
5
  if (!header?.ngStyle) {
6
6
  return undefined;
7
7
  }
8
+ if (ignoreCalculatorWidthHeader) {
9
+ return header.ngStyle;
10
+ }
8
11
  const mixHeaderConfig = [...(headerLeftConfig || []), ...(headerRightConfig || [])];
9
12
  let totalPxWidthHeader = mixHeaderConfig.reduce((acc, curr) => acc + this.getWidthPxOfStyle(curr), 0);
10
13
  const totalPercentWidthHeader = mixHeaderConfig.reduce((acc, curr) => acc + this.getWidthPercentOfStyle(curr), 0);
@@ -77,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
77
80
  standalone: true,
78
81
  }]
79
82
  }] });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRvci1jb2x1bW4ucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMtdWkvY29tcG9uZW50cy90YWJsZS9zcmMvcGlwZXMvY2FsY3VsYXRvci1jb2x1bW4ucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLCtCQUErQjtJQUMxQyxTQUFTLENBQUMsTUFBc0MsRUFBRSxXQUFtQixFQUFFLGdCQUE0QyxFQUFFLGlCQUE2QztRQUNoSyxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDO1lBQ3JCLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7UUFFRCxNQUFNLGVBQWUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsaUJBQWlCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVwRixJQUFJLGtCQUFrQixHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3RHLE1BQU0sdUJBQXVCLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbEgsTUFBTSx1REFBdUQsR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLHNEQUFzRCxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlC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LFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxRQUFRLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDOUUsT0FBTyxDQUFDLENBQUM7UUFDWCxDQUFDO1FBQ0QsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLElBQUksR0FBRyxDQUFDLENBQUM7UUFDL0IsUUFBUSxHQUFHLFFBQVEsQ0FBQyxRQUFRLElBQUksR0FBRyxDQUFDLENBQUM7UUFDckMsSUFBSSxHQUFHLFFBQVEsQ0FBQyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksR0FBRyxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pDLE9BQU8sQ0FBQyxDQUFDO1FBQ1gsQ0FBQztRQUNELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRU8sY0FBYyxDQUFDLGVBQXVCLEVBQUUsT0FBb0I7UUFDbEUsT0FBTztZQUNMLEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSxPQUFPLGVBQWUsSUFBSTtZQUNoQyxLQUFLLEVBQUUsR0FBRyxlQUFlLElBQUk7WUFDN0IsUUFBUSxFQUFFLEdBQUcsZUFBZSxJQUFJO1NBQ2pDLENBQUM7SUFDSixDQUFDO3dHQTVFVSwrQkFBK0I7c0dBQS9CLCtCQUErQjs7NEZBQS9CLCtCQUErQjtrQkFKM0MsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsaUNBQWlDO29CQUN2QyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJVGFibGVIZWFkZXJDb25maWcgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3RhYmxlLWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVFlQRV9PQkpFQ1QgfSBmcm9tICdAbGlicy11aS9pbnRlcmZhY2VzLXR5cGVzJztcbkBQaXBlKHtcbiAgbmFtZTogJ0xpYnNVaVRhYmxlQ2FsY3VsYXRvckNvbHVtblBpcGUnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBMaWJzVWlUYWJsZUNhbGN1bGF0b3JDb2x1bW5QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybShoZWFkZXI6IElUYWJsZUhlYWRlckNvbmZpZyB8IHVuZGVmaW5lZCwgb2Zmc2V0V2lkdGg6IG51bWJlciwgaGVhZGVyTGVmdENvbmZpZz86IEFycmF5PElUYWJsZUhlYWRlckNvbmZpZz4sIGhlYWRlclJpZ2h0Q29uZmlnPzogQXJyYXk8SVRhYmxlSGVhZGVyQ29uZmlnPik6IFRZUEVfT0JKRUNUIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIWhlYWRlcj8ubmdTdHlsZSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBjb25zdCBtaXhIZWFkZXJDb25maWcgPSBbLi4uKGhlYWRlckxlZnRDb25maWcgfHwgW10pLCAuLi4oaGVhZGVyUmlnaHRDb25maWcgfHwgW10pXTtcblxuICAgIGxldCB0b3RhbFB4V2lkdGhIZWFkZXIgPSBtaXhIZWFkZXJDb25maWcucmVkdWNlKChhY2MsIGN1cnIpID0+IGFjYyArIHRoaXMuZ2V0V2lkdGhQeE9mU3R5bGUoY3VyciksIDApO1xuICAgIGNvbnN0IHRvdGFsUGVyY2VudFdpZHRoSGVhZGVyID0gbWl4SGVhZGVyQ29uZmlnLnJlZHVjZSgoYWNjLCBjdXJyKSA9PiBhY2MgKyB0aGlzLmdldFdpZHRoUGVyY2VudE9mU3R5bGUoY3VyciksIDApO1xuICAgIGNvbnN0IHRvdGFsV2lkdGhJc1B4Q29sdW1uSWZUYWJsZVdpZHRoR3JhbmRUb3RhbENvbHVtbnNIZWFkZXIgPSBtaXhIZWFkZXJDb25maWcucmVkdWNlKChhY2MsIGN1cnIpID0+IGFjYyArIChjdXJyLmtlZXBXaWR0aElzUHhDb2x1bW5JZlRhYmxlV2lkdGhHcmFuZFRvdGFsQ29sdW1uc0hlYWRlciA/IHRoaXMuZ2V0V2lkdGhQeE9mU3R5bGUoY3VycikgOiAwKSwgMCk7XG5cbiAgICBpZiAobWl4SGVhZGVyQ29uZmlnLnNvbWUoKGhlYWRlcikgPT4gaGVhZGVyLmlzU2hvd0luZGV4T25Sb3cpKSB7XG4gICAgICBvZmZzZXRXaWR0aCAtPSA1MDtcbiAgICB9XG5cbiAgICBpZiAodG90YWxXaWR0aElzUHhDb2x1bW5JZlRhYmxlV2lkdGhHcmFuZFRvdGFsQ29sdW1uc0hlYWRlcikge1xuICAgICAgb2Zmc2V0V2lkdGggLT0gdG90YWxXaWR0aElzUHhDb2x1bW5JZlRhYmxlV2lkdGhHcmFuZFRvdGFsQ29sdW1uc0hlYWRlcjtcbiAgICAgIHRvdGFsUHhXaWR0aEhlYWRlciAtPSB0b3RhbFdpZHRoSXNQeENvbHVtbklmVGFibGVXaWR0aEdyYW5kVG90YWxDb2x1bW5zSGVhZGVyO1xuICAgIH1cblxuICAgIGxldCBwZXJjZW50ID0gdGhpcy5nZXRXaWR0aFBlcmNlbnRPZlN0eWxlKGhlYWRlcik7XG4gICAgaWYgKHBlcmNlbnQpIHtcbiAgICAgIG9mZnNldFdpZHRoIC09IHRvdGFsUHhXaWR0aEhlYWRlcjtcbiAgICAgIGNvbnN0IHBlcmNlbnREaXZpZGUgPSAodG90YWxQZXJjZW50V2lkdGhIZWFkZXIgLSAxMDApIC8gbWl4SGVhZGVyQ29uZmlnLmxlbmd0aDtcbiAgICAgIHBlcmNlbnQgLT0gcGVyY2VudERpdmlkZTtcbiAgICAgIGNvbnN0IHdpZHRoQ2FsY3VsYXRvciA9IChwZXJjZW50IC8gMTAwKSAqIG9mZnNldFdpZHRoO1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0U3R5bGVVcGRhdGUod2lkdGhDYWxjdWxhdG9yLCBoZWFkZXIubmdTdHlsZSk7XG4gICAgfVxuXG4gICAgY29uc3Qgd2lkdGggPSB0aGlzLmdldFdpZHRoUHhPZlN0eWxlKGhlYWRlcik7XG4gICAgaWYgKHRvdGFsUHhXaWR0aEhlYWRlciA+IG9mZnNldFdpZHRoIHx8IGhlYWRlci5rZWVwV2lkdGhJc1B4Q29sdW1uSWZUYWJsZVdpZHRoR3JhbmRUb3RhbENvbHVtbnNIZWFkZXIgfHwgdG90YWxQZXJjZW50V2lkdGhIZWFkZXIpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFN0eWxlVXBkYXRlKHdpZHRoLCBoZWFkZXIubmdTdHlsZSk7XG4gICAgfVxuICAgIGNvbnN0IHdpZHRoQ2FsY3VsYXRvciA9ICh3aWR0aCAvIHRvdGFsUHhXaWR0aEhlYWRlcikgKiBvZmZzZXRXaWR0aDtcbiAgICByZXR1cm4gdGhpcy5nZXRTdHlsZVVwZGF0ZSh3aWR0aENhbGN1bGF0b3IsIGhlYWRlci5uZ1N0eWxlKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0V2lkdGhQeE9mU3R5bGUoaGVhZGVyR2V0V2lkdGg6IElUYWJsZUhlYWRlckNvbmZpZyk6IG51bWJlciB7XG4gICAgbGV0IHsgZmxleCwgd2lkdGgsIG1heFdpZHRoIH0gPSBoZWFkZXJHZXRXaWR0aC5uZ1N0eWxlIHx8IHt9O1xuICAgIGlmIChmbGV4Py5pbmNsdWRlcygnJScpIHx8IHdpZHRoPy5pbmNsdWRlcygnJScpIHx8IG1heFdpZHRoPy5pbmNsdWRlcygnJScpKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgd2lkdGggPSBwYXJzZUludCh3aWR0aCB8fCAnMCcpO1xuICAgIG1heFdpZHRoID0gcGFyc2VJbnQobWF4V2lkdGggfHwgJzAnKTtcbiAgICBmbGV4ID0gcGFyc2VJbnQoKGZsZXggfHwgJzAnKS5zcGxpdCgnICcpLnBvcCgpIHx8ICcwJyk7XG5cbiAgICBpZiAoIWZsZXggJiYgIXdpZHRoICYmICFtYXhXaWR0aCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIGNvbnN0IHdpZHRoTWF4ID0gTWF0aC5tYXgod2lkdGgsIG1heFdpZHRoLCBmbGV4KTtcbiAgICByZXR1cm4gd2lkdGhNYXg7XG4gIH1cblxuICBwcml2YXRlIGdldFdpZHRoUGVyY2VudE9mU3R5bGUoaGVhZGVyR2V0V2lkdGg6IElUYWJsZUhlYWRlckNvbmZpZyk6IG51bWJlciB7XG4gICAgbGV0IHsgZmxleCwgd2lkdGgsIG1heFdpZHRoIH0gPSBoZWFkZXJHZXRXaWR0aC5uZ1N0eWxlIHx8IHt9O1xuICAgIGlmIChmbGV4Py5pbmNsdWRlcygncHgnKSB8fCB3aWR0aD8uaW5jbHVkZXMoJ3B4JykgfHwgbWF4V2lkdGg/LmluY2x1ZGVzKCdweCcpKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgd2lkdGggPSBwYXJzZUludCh3aWR0aCB8fCAnMCcpO1xuICAgIG1heFdpZHRoID0gcGFyc2VJbnQobWF4V2lkdGggfHwgJzAnKTtcbiAgICBmbGV4ID0gcGFyc2VJbnQoKGZsZXggfHwgJzAnKS5zcGxpdCgnICcpLnBvcCgpIHx8ICcwJyk7XG4gICAgaWYgKCFmbGV4ICYmICF3aWR0aCAmJiAhbWF4V2lkdGgpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICBjb25zdCB3aWR0aE1heCA9IE1hdGgubWF4KHdpZHRoLCBtYXhXaWR0aCwgZmxleCk7XG4gICAgcmV0dXJuIHdpZHRoTWF4O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTdHlsZVVwZGF0ZSh3aWR0aENhbGN1bGF0b3I6IG51bWJlciwgbmdTdHlsZTogVFlQRV9PQkpFQ1QpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4ubmdTdHlsZSxcbiAgICAgIGZsZXg6IGAwIDAgJHt3aWR0aENhbGN1bGF0b3J9cHhgLFxuICAgICAgd2lkdGg6IGAke3dpZHRoQ2FsY3VsYXRvcn1weGAsXG4gICAgICBtYXhXaWR0aDogYCR7d2lkdGhDYWxjdWxhdG9yfXB4YCxcbiAgICB9O1xuICB9XG59XG4iXX0=
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRvci1jb2x1bW4ucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMtdWkvY29tcG9uZW50cy90YWJsZS9zcmMvcGlwZXMvY2FsY3VsYXRvci1jb2x1bW4ucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLCtCQUErQjtJQUMxQyxTQUFTLENBQUMsTUFBc0MsRUFBRSwyQkFBb0MsRUFBRSxXQUFtQixFQUFFLGdCQUE0QyxFQUFFLGlCQUE2QztRQUN0TSxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDO1lBQ3JCLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7UUFDRCxJQUFJLDJCQUEyQixFQUFFLENBQUM7WUFDaEMsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQ3hCLENBQUM7UUFFRCxNQUFNLGVBQWUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsaUJBQWlCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVwRixJQUFJLGtCQUFrQixHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3RHLE1BQU0sdUJBQXVCLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbEgsTUFBTSx1REFBdUQsR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLElB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eyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJVGFibGVIZWFkZXJDb25maWcgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3RhYmxlLWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVFlQRV9PQkpFQ1QgfSBmcm9tICdAbGlicy11aS9pbnRlcmZhY2VzLXR5cGVzJztcbkBQaXBlKHtcbiAgbmFtZTogJ0xpYnNVaVRhYmxlQ2FsY3VsYXRvckNvbHVtblBpcGUnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBMaWJzVWlUYWJsZUNhbGN1bGF0b3JDb2x1bW5QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybShoZWFkZXI6IElUYWJsZUhlYWRlckNvbmZpZyB8IHVuZGVmaW5lZCwgaWdub3JlQ2FsY3VsYXRvcldpZHRoSGVhZGVyOiBib29sZWFuLCBvZmZzZXRXaWR0aDogbnVtYmVyLCBoZWFkZXJMZWZ0Q29uZmlnPzogQXJyYXk8SVRhYmxlSGVhZGVyQ29uZmlnPiwgaGVhZGVyUmlnaHRDb25maWc/OiBBcnJheTxJVGFibGVIZWFkZXJDb25maWc+KTogVFlQRV9PQkpFQ1QgfCB1bmRlZmluZWQge1xuICAgIGlmICghaGVhZGVyPy5uZ1N0eWxlKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBpZiAoaWdub3JlQ2FsY3VsYXRvcldpZHRoSGVhZGVyKSB7XG4gICAgICByZXR1cm4gaGVhZGVyLm5nU3R5bGU7XG4gICAgfVxuXG4gICAgY29uc3QgbWl4SGVhZGVyQ29uZmlnID0gWy4uLihoZWFkZXJMZWZ0Q29uZmlnIHx8IFtdKSwgLi4uKGhlYWRlclJpZ2h0Q29uZmlnIHx8IFtdKV07XG5cbiAgICBsZXQgdG90YWxQeFdpZHRoSGVhZGVyID0gbWl4SGVhZGVyQ29uZmlnLnJlZHVjZSgoYWNjLCBjdXJyKSA9PiBhY2MgKyB0aGlzLmdldFdpZHRoUHhPZlN0eWxlKGN1cnIpLCAwKTtcbiAgICBjb25zdCB0b3RhbFBlcmNlbnRXaWR0aEhlYWRlciA9IG1peEhlYWRlckNvbmZpZy5yZWR1Y2UoKGFjYywgY3VycikgPT4gYWNjICsgdGhpcy5nZXRXaWR0aFBlcmNlbnRPZlN0eWxlKGN1cnIpLCAwKTtcbiAgICBjb25zdCB0b3RhbFdpZHRoSXNQeENvbHVtbklmVGFibGVXaWR0aEdyYW5kVG90YWxDb2x1bW5zSGVhZGVyID0gbWl4SGVhZGVyQ29uZmlnLnJlZHVjZSgoYWNjLCBjdXJyKSA9PiBhY2MgKyAoY3Vyci5rZWVwV2lkdGhJc1B4Q29sdW1uSWZUYWJsZVdpZHRoR3JhbmRUb3RhbENvbHVtbnNIZWFkZXIgPyB0aGlzLmdldFdpZHRoUHhPZlN0eWxlKGN1cnIpIDogMCksIDApO1xuXG4gICAgaWYgKG1peEhlYWRlckNvbmZpZy5zb21lKChoZWFkZXIpID0+IGhlYWRlci5pc1Nob3dJbmRleE9uUm93KSkge1xuICAgICAgb2Zmc2V0V2lkdGggLT0gNTA7XG4gICAgfVxuXG4gICAgaWYgKHRvdGFsV2lkdGhJc1B4Q29sdW1uSWZUYWJsZVdpZHRoR3JhbmRUb3RhbENvbHVtbnNIZWFkZXIpIHtcbiAgICAgIG9mZnNldFdpZHRoIC09IHRvdGFsV2lkdGhJc1B4Q29sdW1uSWZUYWJsZVdpZHRoR3JhbmRUb3RhbENvbHVtbnNIZWFkZXI7XG4gICAgICB0b3RhbFB4V2lkdGhIZWFkZXIgLT0gdG90YWxXaWR0aElzUHhDb2x1bW5JZlRhYmxlV2lkdGhHcmFuZFRvdGFsQ29sdW1uc0hlYWRlcjtcbiAgICB9XG5cbiAgICBsZXQgcGVyY2VudCA9IHRoaXMuZ2V0V2lkdGhQZXJjZW50T2ZTdHlsZShoZWFkZXIpO1xuICAgIGlmIChwZXJjZW50KSB7XG4gICAgICBvZmZzZXRXaWR0aCAtPSB0b3RhbFB4V2lkdGhIZWFkZXI7XG4gICAgICBjb25zdCBwZXJjZW50RGl2aWRlID0gKHRvdGFsUGVyY2VudFdpZHRoSGVhZGVyIC0gMTAwKSAvIG1peEhlYWRlckNvbmZpZy5sZW5ndGg7XG4gICAgICBwZXJjZW50IC09IHBlcmNlbnREaXZpZGU7XG4gICAgICBjb25zdCB3aWR0aENhbGN1bGF0b3IgPSAocGVyY2VudCAvIDEwMCkgKiBvZmZzZXRXaWR0aDtcbiAgICAgIHJldHVybiB0aGlzLmdldFN0eWxlVXBkYXRlKHdpZHRoQ2FsY3VsYXRvciwgaGVhZGVyLm5nU3R5bGUpO1xuICAgIH1cblxuICAgIGNvbnN0IHdpZHRoID0gdGhpcy5nZXRXaWR0aFB4T2ZTdHlsZShoZWFkZXIpO1xuICAgIGlmICh0b3RhbFB4V2lkdGhIZWFkZXIgPiBvZmZzZXRXaWR0aCB8fCBoZWFkZXIua2VlcFdpZHRoSXNQeENvbHVtbklmVGFibGVXaWR0aEdyYW5kVG90YWxDb2x1bW5zSGVhZGVyIHx8IHRvdGFsUGVyY2VudFdpZHRoSGVhZGVyKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRTdHlsZVVwZGF0ZSh3aWR0aCwgaGVhZGVyLm5nU3R5bGUpO1xuICAgIH1cbiAgICBjb25zdCB3aWR0aENhbGN1bGF0b3IgPSAod2lkdGggLyB0b3RhbFB4V2lkdGhIZWFkZXIpICogb2Zmc2V0V2lkdGg7XG4gICAgcmV0dXJuIHRoaXMuZ2V0U3R5bGVVcGRhdGUod2lkdGhDYWxjdWxhdG9yLCBoZWFkZXIubmdTdHlsZSk7XG4gIH1cblxuICBwcml2YXRlIGdldFdpZHRoUHhPZlN0eWxlKGhlYWRlckdldFdpZHRoOiBJVGFibGVIZWFkZXJDb25maWcpOiBudW1iZXIge1xuICAgIGxldCB7IGZsZXgsIHdpZHRoLCBtYXhXaWR0aCB9ID0gaGVhZGVyR2V0V2lkdGgubmdTdHlsZSB8fCB7fTtcbiAgICBpZiAoZmxleD8uaW5jbHVkZXMoJyUnKSB8fCB3aWR0aD8uaW5jbHVkZXMoJyUnKSB8fCBtYXhXaWR0aD8uaW5jbHVkZXMoJyUnKSkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHdpZHRoID0gcGFyc2VJbnQod2lkdGggfHwgJzAnKTtcbiAgICBtYXhXaWR0aCA9IHBhcnNlSW50KG1heFdpZHRoIHx8ICcwJyk7XG4gICAgZmxleCA9IHBhcnNlSW50KChmbGV4IHx8ICcwJykuc3BsaXQoJyAnKS5wb3AoKSB8fCAnMCcpO1xuXG4gICAgaWYgKCFmbGV4ICYmICF3aWR0aCAmJiAhbWF4V2lkdGgpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICBjb25zdCB3aWR0aE1heCA9IE1hdGgubWF4KHdpZHRoLCBtYXhXaWR0aCwgZmxleCk7XG4gICAgcmV0dXJuIHdpZHRoTWF4O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRXaWR0aFBlcmNlbnRPZlN0eWxlKGhlYWRlckdldFdpZHRoOiBJVGFibGVIZWFkZXJDb25maWcpOiBudW1iZXIge1xuICAgIGxldCB7IGZsZXgsIHdpZHRoLCBtYXhXaWR0aCB9ID0gaGVhZGVyR2V0V2lkdGgubmdTdHlsZSB8fCB7fTtcbiAgICBpZiAoZmxleD8uaW5jbHVkZXMoJ3B4JykgfHwgd2lkdGg/LmluY2x1ZGVzKCdweCcpIHx8IG1heFdpZHRoPy5pbmNsdWRlcygncHgnKSkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHdpZHRoID0gcGFyc2VJbnQod2lkdGggfHwgJzAnKTtcbiAgICBtYXhXaWR0aCA9IHBhcnNlSW50KG1heFdpZHRoIHx8ICcwJyk7XG4gICAgZmxleCA9IHBhcnNlSW50KChmbGV4IHx8ICcwJykuc3BsaXQoJyAnKS5wb3AoKSB8fCAnMCcpO1xuICAgIGlmICghZmxleCAmJiAhd2lkdGggJiYgIW1heFdpZHRoKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgY29uc3Qgd2lkdGhNYXggPSBNYXRoLm1heCh3aWR0aCwgbWF4V2lkdGgsIGZsZXgpO1xuICAgIHJldHVybiB3aWR0aE1heDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U3R5bGVVcGRhdGUod2lkdGhDYWxjdWxhdG9yOiBudW1iZXIsIG5nU3R5bGU6IFRZUEVfT0JKRUNUKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5nU3R5bGUsXG4gICAgICBmbGV4OiBgMCAwICR7d2lkdGhDYWxjdWxhdG9yfXB4YCxcbiAgICAgIHdpZHRoOiBgJHt3aWR0aENhbGN1bGF0b3J9cHhgLFxuICAgICAgbWF4V2lkdGg6IGAke3dpZHRoQ2FsY3VsYXRvcn1weGAsXG4gICAgfTtcbiAgfVxufVxuIl19