@firestitch/list 18.0.19 → 18.0.21
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/app/classes/pagination-controller.d.ts +1 -0
- package/esm2022/app/classes/pagination-controller.mjs +4 -1
- package/esm2022/app/components/pagination/pagination.component.mjs +3 -3
- package/esm2022/app/fs-list.module.mjs +8 -1
- package/fesm2022/firestitch-list.mjs +11 -2
- package/fesm2022/firestitch-list.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -34,6 +34,9 @@ export class PaginationController {
|
|
|
34
34
|
get offset() {
|
|
35
35
|
return this._offset;
|
|
36
36
|
}
|
|
37
|
+
get limit() {
|
|
38
|
+
return this._limit;
|
|
39
|
+
}
|
|
37
40
|
get records() {
|
|
38
41
|
return this._records;
|
|
39
42
|
}
|
|
@@ -526,4 +529,4 @@ export class PaginationController {
|
|
|
526
529
|
this.pages = Math.ceil(this._records / this._limit);
|
|
527
530
|
}
|
|
528
531
|
}
|
|
529
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9jbGFzc2VzL3BhZ2luYXRpb24tY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZUFBZSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBV3ZFLE1BQU0sT0FBTyxvQkFBb0I7SUFFdkIsTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUNaLFFBQVEsQ0FBUztJQUNqQixLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsY0FBYztJQUN6QixZQUFZLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLE9BQU8sR0FBRyxDQUFDLENBQUM7SUFDWixPQUFPLEdBQUcsSUFBSSxlQUFlLENBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjO0lBQ3hELFNBQVMsR0FBdUIsa0JBQWtCLENBQUMsSUFBSSxDQUFDO0lBQ3hELFlBQVksR0FBRyxDQUFDLENBQUM7SUFDakIsYUFBYSxHQUFHLElBQUksT0FBTyxFQUFjLENBQUM7SUFDMUMsV0FBVyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFDbEMsV0FBVyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFDNUIsZUFBZSxDQUF1QjtJQUN0QyxPQUFPLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFFekMsSUFBVyxLQUFLLENBQUMsS0FBYTtRQUM1QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMz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V0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssV0FBVyxDQUFDLE1BQU07UUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ25DLENBQUM7UUFFRCxJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7O09BRUc7SUFDSyxhQUFhO1FBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVEOztPQUVHO0lBQ0ssaUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuXG5pbXBvcnQgeyBQYWdlQ2hhbmdlVHlwZSB9IGZyb20gJy4uL2VudW1zL3BhZ2UtY2hhbmdlLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uU3RyYXRlZ3kgfSBmcm9tICcuLi9lbnVtcy9wYWdpbmF0aW9uLXN0cmF0ZWd5LmVudW0nO1xuaW1wb3J0IHtcbiAgRnNMaXN0TG9hZE1vcmVDb25maWcsXG4gIEZzUGFnaW5nLFxuICBJUGFnaW5hdGlvblN0YXRlLFxuICBQYWdlQ2hhbmdlLFxuICBRdWVyeU1hbnlTdHJhdGVneSxcbiAgUXVlcnlPZmZzZXRTdHJhdGVneSxcbiAgUXVlcnlQYWdlU3RyYXRlZ3ksXG59IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbkNvbnRyb2xsZXIge1xuXG4gIHByaXZhdGUgX2xpbWl0ID0gMjU7XG4gIHByaXZhdGUgX3JlY29yZHM6IG51bWJlcjtcbiAgcHJpdmF0ZSBfcGFnZSA9IDE7IC8vIEFjdGl2ZSBwYWdlXG4gIHByaXZhdGUgX3BhZ2VSZWNvcmRzID0gMDtcbiAgcHJpdmF0ZSBfb2Zmc2V0ID0gMDtcbiAgcHJpdmF0ZSBfcGFnZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDApOyAvLyBUb3RhbCBwYWdlc1xuICBwcml2YXRlIF9zdHJhdGVneTogUGFnaW5hdGlvblN0cmF0ZWd5ID0gUGFnaW5hdGlvblN0cmF0ZWd5Lk5vbmU7XG4gIHByaXZhdGUgX3JlbW92ZWRSb3dzID0gMDtcbiAgcHJpdmF0ZSBfcGFnZUNoYW5nZWQkID0gbmV3IFN1YmplY3Q8UGFnZUNoYW5nZT4oKTtcbiAgcHJpdmF0ZSBfcGFnZVJlc2V0JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgX29uRGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIF9sb2FkTW9yZUNvbmZpZzogRnNMaXN0TG9hZE1vcmVDb25maWc7XG4gIHByaXZhdGUgX2xpbWl0cyA9IFsxMCwgMjUsIDUwLCAxMDAsIDIwMF07XG5cbiAgcHVibGljIHNldCBwYWdlcyh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fcGFnZXMkLm5leHQodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGdldCBwYWdlcygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9wYWdlcyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcGFnZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9wYWdlO1xuICB9XG5cbiAgcHVibGljIHNldCBwYWdlKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9wYWdlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBhZ2VSZWNvcmRzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2VSZWNvcmRzO1xuICB9XG5cbiAgcHVibGljIGdldCBvZmZzZXQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fb2Zmc2V0O1xuICB9XG5cbiAgcHVibGljIGdldCByZWNvcmRzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3JlY29yZHM7XG4gIH1cblxuICBwdWJsaWMgc2V0IHJlY29yZHModmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3JlY29yZHMgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcGFnZXMkKCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2VzJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpcmUgaWYgcGFnZSB3YXMgY2hhbmdlZFxuICAgKi9cbiAgcHVibGljIGdldCBwYWdlQ2hhbmdlZCQoKTogT2JzZXJ2YWJsZTxQYWdlQ2hhbmdlPiB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2VDaGFuZ2VkJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBhZ2VSZXNldCQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2VSZXNldCQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGVuYWJsZWRcbiAgICovXG4gIHB1YmxpYyBnZXQgZW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuaGFzTm9uZVN0cmF0ZWd5O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBMaW1pdHNcbiAgICovXG4gIHB1YmxpYyBnZXQgbGltaXRzKCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gdGhpcy5fbGltaXRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBsaW1pdHMsIHVwZGF0ZSBwYWdlcyBhcnJheSBhbmQgc2V0IG5ldyBsaW1pdCBwZXIgcGFnZVxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICovXG4gIHB1YmxpYyBzZXQgbGltaXRzKHZhbHVlKSB7XG4gICAgdGhpcy5fbGltaXRzID0gdmFsdWU7XG5cbiAgICBpZiAodGhpcy5fbGltaXRzLmxlbmd0aCA+IDAgJiYgdGhpcy5fbGltaXRzLmluZGV4T2YodGhpcy5fbGltaXQpID09PSAtMSkge1xuICAgICAgdGhpcy5fbGltaXQgPSB0aGlzLl9saW1pdHNbMF07XG4gICAgfSBlbHNlIGlmICh0aGlzLl9saW1pdHMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLl9saW1pdCA9IHRoaXMuX3JlY29yZHM7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEdldCBxdWVyeSBmb3IgcmVxdWVzdFxuICAgKi9cbiAgcHVibGljIGdldCBxdWVyeSgpIHtcbiAgICBzd2l0Y2ggKHRoaXMuc3RyYXRlZ3kpIHtcbiAgICAgIGNhc2UgUGFnaW5hdGlvblN0cmF0ZWd5LlBhZ2U6XG4gICAgICAgIHJldHVybiB0aGlzLnF1ZXJ5UGFnZVN0cmF0ZWd5O1xuICAgICAgY2FzZSBQYWdpbmF0aW9uU3RyYXRlZ3kuT2Zmc2V0OlxuICAgICAgICByZXR1cm4gdGhpcy5xdWVyeU9mZnNldFN0cmF0ZWd5O1xuICAgICAgY2FzZSBQYWdpbmF0aW9uU3RyYXRlZ3kuTWFueTpcbiAgICAgICAgcmV0dXJuIHRoaXMucXVlcnlNYW55U3RyYXRlZ3k7XG4gICAgfVxuXG4gICAgcmV0dXJuIHt9O1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkTW9yZVF1ZXJ5KCkge1xuICAgIHN3aXRjaCAodGhpcy5zdHJhdGVneSkge1xuICAgICAgY2FzZSBQYWdpbmF0aW9uU3RyYXRlZ3kuUGFnZToge1xuICAgICAgICByZXR1cm4gdGhpcy5xdWVyeTtcbiAgICAgIH1cblxuICAgICAgY2FzZSBQYWdpbmF0aW9uU3RyYXRlZ3kuT2Zmc2V0OiB7XG4gICAgICAgIGNvbnN0IHF1ZXJ5ID0gdGhpcy5xdWVyeU9mZnNldFN0cmF0ZWd5O1xuXG4gICAgICAgIHF1ZXJ5LmxpbWl0ID0gcXVlcnkub2Zmc2V0ICsgcXVlcnkubGltaXQ7XG4gICAgICAgIHF1ZXJ5Lm9mZnNldCA9IDA7XG5cbiAgICAgICAgcmV0dXJuIHF1ZXJ5O1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBRdWVyeSBmb3IgUGFnZSBTdHJhdGVneVxuICAgKi9cbiAgcHVibGljIGdldCBxdWVyeVBhZ2VTdHJhdGVneSgpOiBRdWVyeVBhZ2VTdHJhdGVneSB7XG4gICAgcmV0dXJuIHRoaXMuaGFzTm9uZVN0cmF0ZWd5XG4gICAgICA/IHt9XG4gICAgICA6IHtcbiAgICAgICAgcGFnZTogdGhpcy5fcGFnZSB8fCAxLFxuICAgICAgICBsaW1pdDogdGhpcy5fbGltaXQgfHwgMTAsXG4gICAgICAgIHJlY29yZENvdW50OiB0cnVlLFxuICAgICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBRdWVyeSBmb3IgT2Zmc2V0IFN0cmF0ZWd5XG4gICAqL1xuICBwdWJsaWMgZ2V0IHF1ZXJ5T2Zmc2V0U3RyYXRlZ3koKTogUXVlcnlPZmZzZXRTdHJhdGVneSB7XG4gICAgY29uc3QgcGFnZSA9IHRoaXMuX3BhZ2UgLSAxIHx8IDA7XG4gICAgY29uc3QgbGltaXQgPSB0aGlzLl9saW1pdCB8fCA1O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIG9mZnNldDogcGFnZSAqIGxpbWl0LFxuICAgICAgbGltaXQsXG4gICAgICByZWNvcmRDb3VudDogdHJ1ZSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIGdldCBxdWVyeU1hbnlTdHJhdGVneSgpOiBRdWVyeU1hbnlTdHJhdGVneSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnRoaXMucXVlcnlPZmZzZXRTdHJhdGVneSxcbiAgICAgIHJlY29yZENvdW50OiBmYWxzZSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBxdWVyeSBmb3IgbG9hZCBvbmx5IGNvdW50IG9mIGRlbGV0ZWQgcm93c1xuICAgKi9cbiAgcHVibGljIGdldCBsb2FkRGVsZXRlZE9mZnNldFF1ZXJ5KCkge1xuICAgIGNvbnN0IHBhZ2luYXRpb25PZmZzZXQgPSB0aGlzLl9saW1pdCAqIHRoaXMuX3BhZ2U7XG4gICAgY29uc3QgYWN0dWFsT2Zmc2V0ID0gTWF0aC5taW4odGhpcy5fcmVjb3JkcywgcGFnaW5hdGlvbk9mZnNldCk7XG4gICAgY29uc3Qgb2Zmc2V0ID0gTWF0aC5tYXgoMCwgYWN0dWFsT2Zmc2V0IC0gdGhpcy5fcmVtb3ZlZFJvd3MpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIG9mZnNldCxcbiAgICAgIGxpbWl0OiB0aGlzLl9yZW1vdmVkUm93cyxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIGdldCBpbml0aWFsaXplZCgpIHtcbiAgICByZXR1cm4gISF0aGlzLnBhZ2VzO1xuICB9XG5cbiAgcHVibGljIGdldCBzdHJhdGVneSgpIHtcbiAgICByZXR1cm4gdGhpcy5fc3RyYXRlZ3k7XG4gIH1cblxuICBwdWJsaWMgc2V0IHN0cmF0ZWd5KHN0cmF0ZWd5OiBQYWdpbmF0aW9uU3RyYXRlZ3kpIHtcbiAgICB0aGlzLl9zdHJhdGVneSA9IChzdHJhdGVneSA9PT0gdW5kZWZpbmVkKSA/IFBhZ2luYXRpb25TdHJhdGVneS5QYWdlIDogc3RyYXRlZ3k7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgcGFnaW5hdGlvbiBpbiBQYWdlIFN0cmF0ZWd5IE1vZGVcbiAgICovXG4gIHB1YmxpYyBnZXQgaGFzUGFnZVN0cmF0ZWd5KCkge1xuICAgIHJldHVybiB0aGlzLnN0cmF0ZWd5ID09PSBQYWdpbmF0aW9uU3RyYXRlZ3kuUGFnZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBwYWdpbmF0aW9uIGluIE9mZnNldCBTdHJhdGVneSBNb2RlXG4gICAqL1xuICBwdWJsaWMgZ2V0IGhhc09mZnNldFN0cmF0ZWd5KCkge1xuICAgIHJldHVybiB0aGlzLnN0cmF0ZWd5ID09PSBQYWdpbmF0aW9uU3RyYXRlZ3kuT2Zmc2V0O1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHBhZ2luYXRpb24gaW4gTm9uZSBTdHJhdGVneSBNb2RlXG4gICAqL1xuICBwdWJsaWMgZ2V0IGhhc05vbmVTdHJhdGVneSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdHJhdGVneSA9PT0gUGFnaW5hdGlvblN0cmF0ZWd5Lk5vbmU7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgcGFnaW5hdGlvbiBpbiBOb25lIFN0cmF0ZWd5IE1vZGVcbiAgICovXG4gIHB1YmxpYyBnZXQgaGFzTWFueVN0cmF0ZWd5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0cmF0ZWd5ID09PSBQYWdpbmF0aW9uU3RyYXRlZ3kuTWFueTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBwcmV2IHBhZ2UgY2FuIGJlIGFjdGl2YXRlZFxuICAgKlxuICAgKi9cbiAgcHVibGljICBnZXQgaGFzUHJldlBhZ2UoKTogYm9vbGVhbiB7XG4gICAgc3dpdGNoICh0aGlzLnN0cmF0ZWd5KSB7XG4gICAgICBjYXNlIFBhZ2luYXRpb25TdHJhdGVneS5QYWdlOlxuICAgICAgICByZXR1cm4gdGhpcy5faGFzUHJldlBhZ2VQYWdlU3RyYXRlZ3k7XG4gICAgICBjYXNlIFBhZ2luYXRpb25TdHJhdGVneS5PZmZzZXQ6XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNQcmV2UGFnZU9mZnNldFN0cmF0ZWd5O1xuICAgICAgY2FzZSBQYWdpbmF0aW9uU3RyYXRlZ3kuTWFueTpcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc1ByZXZQYWdlTWFueVN0cmF0ZWd5O1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBuZXh0IHBhZ2UgY2FuIGJlIGFjdGl2YXRlZFxuICAgKi9cbiAgcHVibGljIGdldCBoYXNOZXh0UGFnZSgpOiBib29sZWFuIHsgLy8gTmVlZCB0byBjaGVjayBpZiBwYWdlcyA9PT0gcGFnZSAmJiBwYWdlID09PSAxXG4gICAgc3dpdGNoICh0aGlzLnN0cmF0ZWd5KSB7XG4gICAgICBjYXNlIFBhZ2luYXRpb25TdHJhdGVneS5QYWdlOlxuICAgICAgICByZXR1cm4gdGhpcy5faGFzTmV4dFBhZ2VQYWdlU3RyYXRlZ3k7XG4gICAgICBjYXNlIFBhZ2luYXRpb25TdHJhdGVneS5PZmZzZXQ6XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNOZXh0UGFnZU9mZnNldFN0cmF0ZWd5O1xuICAgICAgY2FzZSBQYWdpbmF0aW9uU3RyYXRlZ3kuTWFueTpcbiAgICAgICAgcmV0dXJuICEhdGhpcy5fcGFnZVJlY29yZHMgJiYgdGhpcy5fbGltaXQgPT09IHRoaXMuX3BhZ2VSZWNvcmRzO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbG9hZE1vcmVFbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9sb2FkTW9yZUNvbmZpZy5lbmFibGVkO1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkTW9yZUxhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2xvYWRNb3JlQ29uZmlnLmxhYmVsO1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkTW9yZUJ1dHRvbkNvbG9yKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2xvYWRNb3JlQ29uZmlnLmJ1dHRvbkNvbG9yO1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkTW9yZUJ1dHRvbkNsYXNzKCk6IHN0cmluZyB7XG4gICAgaWYoIHRoaXMuX2xvYWRNb3JlQ29uZmlnLmJ1dHRvblR5cGUgPT09ICdiYXNpYycgKSB7XG4gICAgICByZXR1cm4gJyc7IFxuICAgIH1cblxuICAgIHJldHVybiBgbWF0LSR7dGhpcy5fbG9hZE1vcmVDb25maWcuYnV0dG9uVHlwZX0tYnV0dG9uYDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbG9hZE1vcmVCdXR0b25UeXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2xvYWRNb3JlQ29uZmlnLmJ1dHRvblR5cGU7XG4gIH1cblxuICAvKipcbiAgICogU1AtVDE5NzRcbiAgICogU2hvd2luZyAyNi01MCBvZiAzMzMgcmVzdWx0cyBzb3J0ZWQgYnkgTmFtZSwgQXNjZW5kaW5nXG4gICAqIFNob3dpbmcgMCByZXN1bHRzIHNvcnRlZCBieSBOYW1lLCBBc2NlbmRpbmdcbiAgICovXG4gIHB1YmxpYyBnZXQgc3RhdHVzTGFiZWwoKTogc3RyaW5nIHtcbiAgICBjb25zdCBzdGF0dXMgPSB0aGlzLmhhc01hbnlTdHJhdGVneSA/XG4gICAgICB0aGlzLm1hbnlTdGF0dXMgOiBcbiAgICAgIHRoaXMuZGVmYXVsdFN0YXR1cztcblxuICAgIHJldHVybiBPYmplY3QudmFsdWVzKHN0YXR1cylcbiAgICAgIC5maWx0ZXIoKHZhbHVlKSA9PiAhIXZhbHVlKVxuICAgICAgLmpvaW4oJy0nKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbWFueVN0YXR1cygpOiB7IGZyb206IG51bWJlciwgdG86IG51bWJlciB9IHtcbiAgICBjb25zdCBjdXJyZW50ID0gKHRoaXMuX3BhZ2UgLSAxKSAqIHRoaXMuX2xpbWl0O1xuICAgIGNvbnN0IGZyb20gPSBjdXJyZW50ICsgMTtcbiAgICBcbiAgICBpZih0aGlzLl9wYWdlUmVjb3JkcyA9PT0gMCkge1xuICAgICAgcmV0dXJuIHsgZnJvbTogY3VycmVudCwgdG86IDAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fcGFnZVJlY29yZHMgPCB0aGlzLl9saW1pdCA/XG4gICAgICB7IGZyb20sIHRvOiBjdXJyZW50ICsgdGhpcy5fcGFnZVJlY29yZHMgfSA6XG4gICAgICB7IGZyb20sIHRvOiBjdXJyZW50ICsgdGhpcy5fbGltaXQgfTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGVmYXVsdFN0YXR1cygpOiB7IGZyb206IG51bWJlciwgdG86IG51bWJlciB9IHtcbiAgICBjb25zdCBjdXJyZW50ID0gKHRoaXMuX3BhZ2UgLSAxKSAqIHRoaXMuX2xpbWl0O1xuICAgIGNvbnN0IGZyb20gPSBjdXJyZW50ICsgMTtcbiAgICBjb25zdCB0byA9IE1hdGgubWluKHRoaXMuX3JlY29yZHMsIGN1cnJlbnQgKyB0aGlzLl9saW1pdCk7XG5cbiAgICByZXR1cm4geyBmcm9tLCB0byB9O1xuICB9XG5cbiAgcHVibGljIGdldCBzdGF0ZSgpOiBJUGFnaW5hdGlvblN0YXRlIHtcbiAgICByZXR1cm4ge1xuICAgICAgZW5hYmxlZDogdGhpcy5lbmFibGVkLFxuICAgICAgc3RyYXRlZ3k6IHRoaXMuc3RyYXRlZ3ksXG4gICAgICBwYWdlOiB0aGlzLl9wYWdlLFxuICAgICAgb2Zmc2V0OiB0aGlzLl9vZmZzZXQsXG4gICAgICBsaW1pdDogdGhpcy5fbGltaXQsXG4gICAgICByZWNvcmRzOiB0aGlzLl9yZWNvcmRzLFxuICAgICAgcGFnZVJlY29yZHM6IHRoaXMuX3BhZ2VSZWNvcmRzLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgaW5pdFdpdGhDb25maWcoXG4gICAgY29uZmlnOiBGc1BhZ2luZyB8IGZhbHNlLFxuICAgIGxvYWRNb3JlOiBGc0xpc3RMb2FkTW9yZUNvbmZpZyB8IGJvb2xlYW4sXG4gICkge1xuXG4gICAgaWYgKGNvbmZpZykge1xuICAgICAgaWYgKGNvbmZpZy5saW1pdHMpIHtcbiAgICAgICAgdGhpcy5fbGltaXRzID0gY29uZmlnLmxpbWl0cztcbiAgICAgIH1cblxuICAgICAgaWYgKGNvbmZpZy5saW1pdCkge1xuICAgICAgICB0aGlzLl9saW1pdCA9IGNvbmZpZy5saW1pdDtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zdHJhdGVneSA9IGNvbmZpZy5zdHJhdGVneTtcbiAgICB9XG4gICAgXG4gICAgdGhpcy5zZXRMb2FkTW9yZShsb2FkTW9yZSk7XG4gIH1cblxuICAvKipcbiAgICogSWYgcGFnaW5hdGlvbiBoYXMgcHJldiBwYWdlIHdoZW4gUGFnZSBTdHJhdGVneVxuICAgKi9cbiAgcHJpdmF0ZSBnZXQgX2hhc1ByZXZQYWdlUGFnZVN0cmF0ZWd5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9wYWdlID4gMSAmJiB0aGlzLnBhZ2VzID4gMTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBwYWdpbmF0aW9uIGhhcyBwcmV2IHBhZ2Ugd2hlbiBPZmZzZXQgU3RyYXRlZ3lcbiAgICovXG4gIHByaXZhdGUgZ2V0IF9oYXNQcmV2UGFnZU9mZnNldFN0cmF0ZWd5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9vZmZzZXQgPj0gdGhpcy5fbGltaXQgJiYgdGhpcy5fcmVjb3JkcyA+IDE7XG4gIH1cblxuICAvKipcbiAgICogSWYgcGFnaW5hdGlvbiBoYXMgcHJldiBwYWdlIHdoZW4gT2Zmc2V0IFN0cmF0ZWd5XG4gICAqL1xuICBwcml2YXRlIGdldCBfaGFzUHJldlBhZ2VNYW55U3RyYXRlZ3koKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX29mZnNldCA+IDA7XG4gIH1cblxuICAvKipcbiAgICogSWYgcGFnaW5hdGlvbiBoYXMgbmV4dCBwYWdlIHdoZW4gUGFnZSBTdHJhdGVneVxuICAgKi9cbiAgcHJpdmF0ZSBnZXQgX2hhc05leHRQYWdlUGFnZVN0cmF0ZWd5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9wYWdlIDwgdGhpcy5wYWdlcyAmJiB0aGlzLnBhZ2VzID4gMTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBwYWdpbmF0aW9uIGhhcyBuZXh0IHBhZ2Ugd2hlbiBPZmZzZXQgU3RyYXRlZ3lcbiAgICovXG4gIHByaXZhdGUgZ2V0IF9oYXNOZXh0UGFnZU9mZnNldFN0cmF0ZWd5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAodGhpcy5fb2Zmc2V0ICsgdGhpcy5fbGltaXQpIDwgdGhpcy5fcmVjb3JkcyAmJiB0aGlzLl9yZWNvcmRzID4gMTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgcGFnaW5nIGNvbmZpZyBhbmQgYWxsIHJlbGF0ZWQgZmllbGRzXG4gICAqL1xuICBwdWJsaWMgdXBkYXRlUGFnaW5nKGNvbmZpZywgcGFnZVJlY29yZHM6IG51bWJlciA9IDAsIGxvYWRNb3JlT3BlcmF0aW9uID0gZmFsc2UpIHtcbiAgICBpZiAoIWxvYWRNb3JlT3BlcmF0aW9uKSB7XG4gICAgICB0aGlzLl9mcm9tUGFyYW1zKGNvbmZpZyk7XG4gICAgICB0aGlzLl9wYWdlUmVjb3JkcyA9IHBhZ2VSZWNvcmRzO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9yZWNvcmRzID0gY29uZmlnLnJlY29yZHM7XG5cbiAgICAgIGlmICh0aGlzLl9yZWNvcmRzIDwgdGhpcy5fcGFnZVJlY29yZHMpIHtcbiAgICAgICAgdGhpcy5fcGFnZVJlY29yZHMgPSB0aGlzLl9yZWNvcmRzO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9yZW1vdmVkUm93cyA9IDA7XG4gICAgfVxuXG4gICAgdGhpcy5fdXBkYXRlVG90YWxQYWdlcygpO1xuICB9XG5cbiAgLy8gLyoqXG4gIC8vICAqIFVwZGF0ZSBwYWdpbmcgd2hlbiBkYXRhIHNvdXJjZSBub3QgcmVtb3ZlXG4gIC8vICAqIEBwYXJhbSB7YW55W119IHJvd3NcbiAgLy8gICovXG4gIC8qcHVibGljIHVwZGF0ZVBhZ2luZ01hbnVhbChyb3dzOiBhbnlbXSkge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHJvd3MpICYmIHJvd3MubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5fcmVjb3JkcyA9IHJvd3MubGVuZ3RoO1xuICAgICAgdGhpcy5wYWdlcyA9IE1hdGguY2VpbChyb3dzLmxlbmd0aCAvIHRoaXMuX2xpbWl0KTtcbiAgICB9XG5cbiAgICB0aGlzLnVwZGF0ZVBhZ2VzQXJyYXkoKTtcbiAgICB0aGlzLnVwZGF0ZURpc3BsYXllZCgpO1xuICB9Ki9cblxuICAvKipcbiAgICogVXBkYXRlIHBhZ2VzIGFycmF5IHdpdGggbmV3IHBhZ2VzIGNvdW50XG4gICAqL1xuICAvLyBwdWJsaWMgdXBkYXRlUGFnZXNBcnJheSgpIHtcbiAgLy8gICBjb25zdCBNSURETEUgPSAyO1xuICAvLyAgIGNvbnN0IHBhZ2VzQXJyID0gW107XG5cbiAgLy8gICBsZXQgZnJvbSA9IDA7XG4gIC8vICAgbGV0IHRvID0gMDtcbiAgLy8gICBpZiAodGhpcy5fcGFnZSA8IE1JRERMRSkge1xuICAvLyAgICAgZnJvbSA9IE1JRERMRSAtIDE7XG4gIC8vICAgICB0byA9IE1JRERMRSArIDE7XG4gIC8vICAgfSBlbHNlIGlmICh0aGlzLl9wYWdlID49IE1JRERMRSAmJiB0aGlzLl9wYWdlIDw9IHRoaXMucGFnZXMgLSBNSURETEUgKyAxKSB7XG4gIC8vICAgICBmcm9tID0gdGhpcy5fcGFnZSAtIDE7XG4gIC8vICAgICB0byA9IHRoaXMuX3BhZ2UgKyAxO1xuICAvLyAgIH0gZWxzZSBpZiAodGhpcy5fcGFnZSA+IHRoaXMucGFnZXMgLSBNSURETEUgKyAxKSB7XG4gIC8vICAgICBmcm9tID0gdGhpcy5wYWdlcyAtIE1JRERMRSAtIDE7XG4gIC8vICAgICB0byA9IHRoaXMucGFnZXM7XG4gIC8vICAgfVxuXG4gIC8vICAgaWYgKCF0aGlzLnBhZ2VzIHx8IHRoaXMucGFnZXMgPCA1KSB7XG4gIC8vICAgICBmcm9tID0gMTtcbiAgLy8gICAgIHRvID0gdGhpcy5wYWdlcyB8fCAwO1xuICAvLyAgIH1cblxuICAvLyAgIGZvciAobGV0IGkgPSBmcm9tOyBpIDw9IHRvOyBpKyspIHtcbiAgLy8gICAgIHBhZ2VzQXJyLnB1c2goaSk7XG4gIC8vICAgfVxuXG4gIC8vICAgdGhpcy5wYWdlc0FycmF5ID0gT2JqZWN0LmFzc2lnbihbXSwgcGFnZXNBcnIpO1xuICAvLyB9XG5cbiAgcHVibGljIHNldExvYWRNb3JlKGNvbmZpZzogRnNMaXN0TG9hZE1vcmVDb25maWcgfCBib29sZWFuKSB7XG4gICAgY29uc3QgbG9hZE1vcmVDb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAnYm9vbGVhbicgPyBcbiAgICAgIHtcbiAgICAgICAgZW5hYmxlZDogISFjb25maWcsXG4gICAgICB9IDogXG4gICAgICAoXG4gICAgICAgIGNvbmZpZyA9PT0gdW5kZWZpbmVkID8ge30gOiB7XG4gICAgICAgICAgLi4uY29uZmlnLFxuICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgIH1cbiAgICAgICk7XG5cbiAgICB0aGlzLl9sb2FkTW9yZUNvbmZpZyA9IHtcbiAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgICAgbGFiZWw6ICdMb2FkIE1vcmUnLFxuICAgICAgYnV0dG9uVHlwZTogJ2Jhc2ljJyxcbiAgICAgIC4uLmxvYWRNb3JlQ29uZmlnLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0UGFnZVJlY29yZHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2VSZWNvcmRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBuZXcgbGltaXRcbiAgICpcbiAgICogQHBhcmFtIGxpbWl0XG4gICAqL1xuICBwdWJsaWMgc2V0TGltaXQobGltaXQpIHtcbiAgICB0aGlzLl9saW1pdCA9IGxpbWl0O1xuICAgIHRoaXMucmVzZXRQYWdpbmcoKTtcblxuICAgIHRoaXMuX3BhZ2VDaGFuZ2VkJFxuICAgICAgLm5leHQoe1xuICAgICAgICB0eXBlOiBQYWdlQ2hhbmdlVHlwZS5MaW1pdENoYW5nZWQsXG4gICAgICAgIHBheWxvYWQ6IGxpbWl0LFxuICAgICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogSWYgcGFnZSBpcyBhY3RpdmF0ZSBwYWdlXG4gICAqXG4gICAqIEBwYXJhbSBwYWdlXG4gICAqL1xuICBwdWJsaWMgaXNBY3RpdmUocGFnZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBwYWdlID09PSB0aGlzLl9wYWdlO1xuICB9XG5cbiAgLyoqXG4gICAqIEdvIHRvIHBhZ2VcbiAgICpcbiAgICogQHBhcmFtIHBhZ2VcbiAgICovXG4gIHB1YmxpYyBnb1RvUGFnZShwYWdlKSB7XG4gICAgaWYgKHBhZ2UgPj0gMSAmJiB0aGlzLl9wYWdlICE9PSBwYWdlKSB7XG4gICAgICB0aGlzLl9wYWdlID0gcGFnZTtcblxuICAgICAgdGhpcy5fdXBkYXRlT2Zmc2V0KCk7XG5cbiAgICAgIHRoaXMuX3BhZ2VDaGFuZ2VkJC5uZXh0KHtcbiAgICAgICAgdHlwZTogUGFnZUNoYW5nZVR5cGUuRGVmYXVsdCxcbiAgICAgICAgcGF5bG9hZDogcGFnZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldCBwYWdpbmcgbGlrZSBpdCB3YXMganVzdCBpbml0aWFsaXplZFxuICAgKi9cbiAgcHVibGljIHJlc2V0UGFnaW5nKCkge1xuICAgIHRoaXMuX3BhZ2UgPSAxO1xuICAgIHRoaXMuX29mZnNldCA9IDA7XG4gIH1cblxuICAvKipcbiAgICogR28gdG8gbmV4dCBwYWdlXG4gICAqL1xuICBwdWJsaWMgZ29OZXh0KCkge1xuICAgIGlmICh0aGlzLmhhc05leHRQYWdlKSB7XG4gICAgICB0aGlzLl9wYWdlKys7XG4gICAgICB0aGlzLl91cGRhdGVPZmZzZXQoKTtcblxuICAgICAgdGhpcy5fcGFnZUNoYW5nZWQkLm5leHQoe1xuICAgICAgICB0eXBlOiBQYWdlQ2hhbmdlVHlwZS5EZWZhdWx0LFxuICAgICAgICBwYXlsb2FkOiB0aGlzLl9wYWdlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEdvIHRvIGZpcnN0IHBhZ2VcbiAgICovXG4gIHB1YmxpYyBnb0ZpcnN0KCkge1xuICAgIGlmICh0aGlzLl9wYWdlID4gMSkge1xuICAgICAgdGhpcy5fcGFnZSA9IDE7XG4gICAgICB0aGlzLl91cGRhdGVPZmZzZXQoKTtcblxuICAgICAgdGhpcy5fcGFnZUNoYW5nZWQkLm5leHQoe1xuICAgICAgICB0eXBlOiBQYWdlQ2hhbmdlVHlwZS5EZWZhdWx0LFxuICAgICAgICBwYXlsb2FkOiB0aGlzLl9wYWdlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEdvIHRvIHByZXYgcGFnZVxuICAgKi9cbiAgcHVibGljIGdvUHJldigpIHtcbiAgICBpZiAodGhpcy5fcGFnZSA+IDEpIHtcbiAgICAgIHRoaXMuX3BhZ2UtLTtcblxuICAgICAgdGhpcy5fdXBkYXRlT2Zmc2V0KCk7XG5cbiAgICAgIHRoaXMuX3BhZ2VDaGFuZ2VkJC5uZXh0KHtcbiAgICAgICAgdHlwZTogUGFnZUNoYW5nZVR5cGUuRGVmYXVsdCxcbiAgICAgICAgcGF5bG9hZDogdGhpcy5fcGFnZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHbyB0byBsYXN0IHBhZ2VcbiAgICovXG4gIHB1YmxpYyBnb0xhc3QoKSB7XG4gICAgaWYgKHRoaXMuX3BhZ2UgIT09IHRoaXMucGFnZXMpIHtcbiAgICAgIHRoaXMuX3BhZ2UgPSB0aGlzLnBhZ2VzO1xuXG4gICAgICB0aGlzLl91cGRhdGVPZmZzZXQoKTtcblxuICAgICAgdGhpcy5fcGFnZUNoYW5nZWQkLm5leHQoe1xuICAgICAgICB0eXBlOiBQYWdlQ2hhbmdlVHlwZS5EZWZhdWx0LFxuICAgICAgICBwYXlsb2FkOiB0aGlzLl9wYWdlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBjb3VudCBvZiBkZWxldGVkIHJvd3MuIFRoaXMgY291bnQgd2lsbCBiZSBhcHBsaWVkIGZvciBvZmZzZXQgY2FsY1xuICAgKlxuICAgKiBAcGFyYW0gY291bnRcbiAgICovXG4gIHB1YmxpYyByZW1vdmVSb3dzKGNvdW50OiBudW1iZXIpIHtcbiAgICB0aGlzLl9yZW1vdmVkUm93cyArPSBjb3VudDtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVQYWdpbmF0aW9uKCkge1xuICAgIHRoaXMuX3VwZGF0ZVRvdGFsUGFnZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXN0cm95XG4gICAqL1xuICBwdWJsaWMgZGVzdHJveSgpIHtcbiAgICB0aGlzLl9vbkRlc3Ryb3kkLm5leHQobnVsbCk7XG4gICAgdGhpcy5fb25EZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBwYWdpbmcgc3RhdGVcbiAgICpcbiAgICogQHBhcmFtIHBhcmFtc1xuICAgKi9cbiAgcHJpdmF0ZSBfZnJvbVBhcmFtcyhwYXJhbXMpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubG9hZE1vcmVFbmFibGVkKSB7XG4gICAgICB0aGlzLl9saW1pdCA9IHBhcmFtcy5saW1pdCA/PyAyNTtcbiAgICB9XG5cbiAgICB0aGlzLl9yZWNvcmRzID0gcGFyYW1zLnJlY29yZHM7XG4gICAgdGhpcy5wYWdlcyA9IHBhcmFtcy5wYWdlcyB8fCAwO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGMgYW5kIHVwZGF0ZSBvZmZzZXRcbiAgICovXG4gIHByaXZhdGUgX3VwZGF0ZU9mZnNldCgpIHtcbiAgICB0aGlzLl9vZmZzZXQgPSB0aGlzLl9saW1pdCAqICh0aGlzLl9wYWdlIC0gMSk7XG4gIH1cblxuICAvKipcbiAgICogQ2FsYyBhbmQgdXBkYXRlIHRvdGFsIGNvdW50IG9mIHBhZ2VzXG4gICAqL1xuICBwcml2YXRlIF91cGRhdGVUb3RhbFBhZ2VzKCkge1xuICAgIHRoaXMucGFnZXMgPSBNYXRoLmNlaWwodGhpcy5fcmVjb3JkcyAvIHRoaXMuX2xpbWl0KTtcbiAgfVxufVxuIl19
|
|
532
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9jbGFzc2VzL3BhZ2luYXRpb24tY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZUFBZSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBV3ZFLE1BQU0sT0FBTyxvQkFBb0I7SUFFdkIsTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUNaLFFBQVEsQ0FBUztJQUNqQixLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsY0FBYztJQUN6QixZQUFZLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLE9BQU8sR0FBRyxDQUFDLENBQUM7SUFDWixPQUFPLEdBQUcsSUFBSSxlQUFlLENBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjO0lBQ3hELFNBQVMsR0FBdUIsa0JBQWtCLENBQUMsSUFBSSxDQUFDO0lBQ3hELFlBQVksR0FBRyxDQUFDLENBQUM7SUFDakIsYUFBYSxHQUFHLElBQUksT0FBTyxFQUFjLENBQUM7SUFDMUMsV0FBVyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFDbEMsV0FBVyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFDNUIsZUFBZSxDQUF1QjtJQUN0QyxPQUFPLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFFekMsSUFBVyxLQUFLLENBQUMsS0FBYTtRQUM1QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMz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QUFFLENBQUM7SUFDM0IsQ0FBQztJQUVEOztPQUVHO0lBQ0ksT0FBTztRQUNaLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxXQUFXLENBQUMsTUFBTTtRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDbkMsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUMvQixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRDs7T0FFRztJQUNLLGFBQWE7UUFDbkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5cbmltcG9ydCB7IFBhZ2VDaGFuZ2VUeXBlIH0gZnJvbSAnLi4vZW51bXMvcGFnZS1jaGFuZ2UtdHlwZS5lbnVtJztcbmltcG9ydCB7IFBhZ2luYXRpb25TdHJhdGVneSB9IGZyb20gJy4uL2VudW1zL3BhZ2luYXRpb24tc3RyYXRlZ3kuZW51bSc7XG5pbXBvcnQge1xuICBGc0xpc3RMb2FkTW9yZUNvbmZpZyxcbiAgRnNQYWdpbmcsXG4gIElQYWdpbmF0aW9uU3RhdGUsXG4gIFBhZ2VDaGFuZ2UsXG4gIFF1ZXJ5TWFueVN0cmF0ZWd5LFxuICBRdWVyeU9mZnNldFN0cmF0ZWd5LFxuICBRdWVyeVBhZ2VTdHJhdGVneSxcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5cbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uQ29udHJvbGxlciB7XG5cbiAgcHJpdmF0ZSBfbGltaXQgPSAyNTtcbiAgcHJpdmF0ZSBfcmVjb3JkczogbnVtYmVyO1xuICBwcml2YXRlIF9wYWdlID0gMTsgLy8gQWN0aXZlIHBhZ2VcbiAgcHJpdmF0ZSBfcGFnZVJlY29yZHMgPSAwO1xuICBwcml2YXRlIF9vZmZzZXQgPSAwO1xuICBwcml2YXRlIF9wYWdlcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMCk7IC8vIFRvdGFsIHBhZ2VzXG4gIHByaXZhdGUgX3N0cmF0ZWd5OiBQYWdpbmF0aW9uU3RyYXRlZ3kgPSBQYWdpbmF0aW9uU3RyYXRlZ3kuTm9uZTtcbiAgcHJpdmF0ZSBfcmVtb3ZlZFJvd3MgPSAwO1xuICBwcml2YXRlIF9wYWdlQ2hhbmdlZCQgPSBuZXcgU3ViamVjdDxQYWdlQ2hhbmdlPigpO1xuICBwcml2YXRlIF9wYWdlUmVzZXQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSBfb25EZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgX2xvYWRNb3JlQ29uZmlnOiBGc0xpc3RMb2FkTW9yZUNvbmZpZztcbiAgcHJpdmF0ZSBfbGltaXRzID0gWzEwLCAyNSwgNTAsIDEwMCwgMjAwXTtcblxuICBwdWJsaWMgc2V0IHBhZ2VzKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9wYWdlcyQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBhZ2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2VzJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBwYWdlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2U7XG4gIH1cblxuICBwdWJsaWMgc2V0IHBhZ2UodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3BhZ2UgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcGFnZVJlY29yZHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fcGFnZVJlY29yZHM7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG9mZnNldCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9vZmZzZXQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGxpbWl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2xpbWl0O1xuICB9XG5cbiAgcHVibGljIGdldCByZWNvcmRzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3JlY29yZHM7XG4gIH1cblxuICBwdWJsaWMgc2V0IHJlY29yZHModmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3JlY29yZHMgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcGFnZXMkKCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2VzJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpcmUgaWYgcGFnZSB3YXMgY2hhbmdlZFxuICAgKi9cbiAgcHVibGljIGdldCBwYWdlQ2hhbmdlZCQoKTogT2JzZXJ2YWJsZTxQYWdlQ2hhbmdlPiB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2VDaGFuZ2VkJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBhZ2VSZXNldCQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2VSZXNldCQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGVuYWJsZWRcbiAgICovXG4gIHB1YmxpYyBnZXQgZW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuaGFzTm9uZVN0cmF0ZWd5O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBMaW1pdHNcbiAgICovXG4gIHB1YmxpYyBnZXQgbGltaXRzKCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gdGhpcy5fbGltaXRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBsaW1pdHMsIHVwZGF0ZSBwYWdlcyBhcnJheSBhbmQgc2V0IG5ldyBsaW1pdCBwZXIgcGFnZVxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICovXG4gIHB1YmxpYyBzZXQgbGltaXRzKHZhbHVlKSB7XG4gICAgdGhpcy5fbGltaXRzID0gdmFsdWU7XG5cbiAgICBpZiAodGhpcy5fbGltaXRzLmxlbmd0aCA+IDAgJiYgdGhpcy5fbGltaXRzLmluZGV4T2YodGhpcy5fbGltaXQpID09PSAtMSkge1xuICAgICAgdGhpcy5fbGltaXQgPSB0aGlzLl9saW1pdHNbMF07XG4gICAgfSBlbHNlIGlmICh0aGlzLl9saW1pdHMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLl9saW1pdCA9IHRoaXMuX3JlY29yZHM7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEdldCBxdWVyeSBmb3IgcmVxdWVzdFxuICAgKi9cbiAgcHVibGljIGdldCBxdWVyeSgpIHtcbiAgICBzd2l0Y2ggKHRoaXMuc3RyYXRlZ3kpIHtcbiAgICAgIGNhc2UgUGFnaW5hdGlvblN0cmF0ZWd5LlBhZ2U6XG4gICAgICAgIHJldHVybiB0aGlzLnF1ZXJ5UGFnZVN0cmF0ZWd5O1xuICAgICAgY2FzZSBQYWdpbmF0aW9uU3RyYXRlZ3kuT2Zmc2V0OlxuICAgICAgICByZXR1cm4gdGhpcy5xdWVyeU9mZnNldFN0cmF0ZWd5O1xuICAgICAgY2FzZSBQYWdpbmF0aW9uU3RyYXRlZ3kuTWFueTpcbiAgICAgICAgcmV0dXJuIHRoaXMucXVlcnlNYW55U3RyYXRlZ3k7XG4gICAgfVxuXG4gICAgcmV0dXJuIHt9O1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkTW9yZVF1ZXJ5KCkge1xuICAgIHN3aXRjaCAodGhpcy5zdHJhdGVneSkge1xuICAgICAgY2FzZSBQYWdpbmF0aW9uU3RyYXRlZ3kuUGFnZToge1xuICAgICAgICByZXR1cm4gdGhpcy5xdWVyeTtcbiAgICAgIH1cblxuICAgICAgY2FzZSBQYWdpbmF0aW9uU3RyYXRlZ3kuT2Zmc2V0OiB7XG4gICAgICAgIGNvbnN0IHF1ZXJ5ID0gdGhpcy5xdWVyeU9mZnNldFN0cmF0ZWd5O1xuXG4gICAgICAgIHF1ZXJ5LmxpbWl0ID0gcXVlcnkub2Zmc2V0ICsgcXVlcnkubGltaXQ7XG4gICAgICAgIHF1ZXJ5Lm9mZnNldCA9IDA7XG5cbiAgICAgICAgcmV0dXJuIHF1ZXJ5O1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBRdWVyeSBmb3IgUGFnZSBTdHJhdGVneVxuICAgKi9cbiAgcHVibGljIGdldCBxdWVyeVBhZ2VTdHJhdGVneSgpOiBRdWVyeVBhZ2VTdHJhdGVneSB7XG4gICAgcmV0dXJuIHRoaXMuaGFzTm9uZVN0cmF0ZWd5XG4gICAgICA/IHt9XG4gICAgICA6IHtcbiAgICAgICAgcGFnZTogdGhpcy5fcGFnZSB8fCAxLFxuICAgICAgICBsaW1pdDogdGhpcy5fbGltaXQgfHwgMTAsXG4gICAgICAgIHJlY29yZENvdW50OiB0cnVlLFxuICAgICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBRdWVyeSBmb3IgT2Zmc2V0IFN0cmF0ZWd5XG4gICAqL1xuICBwdWJsaWMgZ2V0IHF1ZXJ5T2Zmc2V0U3RyYXRlZ3koKTogUXVlcnlPZmZzZXRTdHJhdGVneSB7XG4gICAgY29uc3QgcGFnZSA9IHRoaXMuX3BhZ2UgLSAxIHx8IDA7XG4gICAgY29uc3QgbGltaXQgPSB0aGlzLl9saW1pdCB8fCA1O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIG9mZnNldDogcGFnZSAqIGxpbWl0LFxuICAgICAgbGltaXQsXG4gICAgICByZWNvcmRDb3VudDogdHJ1ZSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIGdldCBxdWVyeU1hbnlTdHJhdGVneSgpOiBRdWVyeU1hbnlTdHJhdGVneSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnRoaXMucXVlcnlPZmZzZXRTdHJhdGVneSxcbiAgICAgIHJlY29yZENvdW50OiBmYWxzZSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBxdWVyeSBmb3IgbG9hZCBvbmx5IGNvdW50IG9mIGRlbGV0ZWQgcm93c1xuICAgKi9cbiAgcHVibGljIGdldCBsb2FkRGVsZXRlZE9mZnNldFF1ZXJ5KCkge1xuICAgIGNvbnN0IHBhZ2luYXRpb25PZmZzZXQgPSB0aGlzLl9saW1pdCAqIHRoaXMuX3BhZ2U7XG4gICAgY29uc3QgYWN0dWFsT2Zmc2V0ID0gTWF0aC5taW4odGhpcy5fcmVjb3JkcywgcGFnaW5hdGlvbk9mZnNldCk7XG4gICAgY29uc3Qgb2Zmc2V0ID0gTWF0aC5tYXgoMCwgYWN0dWFsT2Zmc2V0IC0gdGhpcy5fcmVtb3ZlZFJvd3MpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIG9mZnNldCxcbiAgICAgIGxpbWl0OiB0aGlzLl9yZW1vdmVkUm93cyxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIGdldCBpbml0aWFsaXplZCgpIHtcbiAgICByZXR1cm4gISF0aGlzLnBhZ2VzO1xuICB9XG5cbiAgcHVibGljIGdldCBzdHJhdGVneSgpIHtcbiAgICByZXR1cm4gdGhpcy5fc3RyYXRlZ3k7XG4gIH1cblxuICBwdWJsaWMgc2V0IHN0cmF0ZWd5KHN0cmF0ZWd5OiBQYWdpbmF0aW9uU3RyYXRlZ3kpIHtcbiAgICB0aGlzLl9zdHJhdGVneSA9IChzdHJhdGVneSA9PT0gdW5kZWZpbmVkKSA/IFBhZ2luYXRpb25TdHJhdGVneS5QYWdlIDogc3RyYXRlZ3k7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgcGFnaW5hdGlvbiBpbiBQYWdlIFN0cmF0ZWd5IE1vZGVcbiAgICovXG4gIHB1YmxpYyBnZXQgaGFzUGFnZVN0cmF0ZWd5KCkge1xuICAgIHJldHVybiB0aGlzLnN0cmF0ZWd5ID09PSBQYWdpbmF0aW9uU3RyYXRlZ3kuUGFnZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBwYWdpbmF0aW9uIGluIE9mZnNldCBTdHJhdGVneSBNb2RlXG4gICAqL1xuICBwdWJsaWMgZ2V0IGhhc09mZnNldFN0cmF0ZWd5KCkge1xuICAgIHJldHVybiB0aGlzLnN0cmF0ZWd5ID09PSBQYWdpbmF0aW9uU3RyYXRlZ3kuT2Zmc2V0O1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHBhZ2luYXRpb24gaW4gTm9uZSBTdHJhdGVneSBNb2RlXG4gICAqL1xuICBwdWJsaWMgZ2V0IGhhc05vbmVTdHJhdGVneSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdHJhdGVneSA9PT0gUGFnaW5hdGlvblN0cmF0ZWd5Lk5vbmU7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgcGFnaW5hdGlvbiBpbiBOb25lIFN0cmF0ZWd5IE1vZGVcbiAgICovXG4gIHB1YmxpYyBnZXQgaGFzTWFueVN0cmF0ZWd5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0cmF0ZWd5ID09PSBQYWdpbmF0aW9uU3RyYXRlZ3kuTWFueTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBwcmV2IHBhZ2UgY2FuIGJlIGFjdGl2YXRlZFxuICAgKlxuICAgKi9cbiAgcHVibGljICBnZXQgaGFzUHJldlBhZ2UoKTogYm9vbGVhbiB7XG4gICAgc3dpdGNoICh0aGlzLnN0cmF0ZWd5KSB7XG4gICAgICBjYXNlIFBhZ2luYXRpb25TdHJhdGVneS5QYWdlOlxuICAgICAgICByZXR1cm4gdGhpcy5faGFzUHJldlBhZ2VQYWdlU3RyYXRlZ3k7XG4gICAgICBjYXNlIFBhZ2luYXRpb25TdHJhdGVneS5PZmZzZXQ6XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNQcmV2UGFnZU9mZnNldFN0cmF0ZWd5O1xuICAgICAgY2FzZSBQYWdpbmF0aW9uU3RyYXRlZ3kuTWFueTpcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc1ByZXZQYWdlTWFueVN0cmF0ZWd5O1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBuZXh0IHBhZ2UgY2FuIGJlIGFjdGl2YXRlZFxuICAgKi9cbiAgcHVibGljIGdldCBoYXNOZXh0UGFnZSgpOiBib29sZWFuIHsgLy8gTmVlZCB0byBjaGVjayBpZiBwYWdlcyA9PT0gcGFnZSAmJiBwYWdlID09PSAxXG4gICAgc3dpdGNoICh0aGlzLnN0cmF0ZWd5KSB7XG4gICAgICBjYXNlIFBhZ2luYXRpb25TdHJhdGVneS5QYWdlOlxuICAgICAgICByZXR1cm4gdGhpcy5faGFzTmV4dFBhZ2VQYWdlU3RyYXRlZ3k7XG4gICAgICBjYXNlIFBhZ2luYXRpb25TdHJhdGVneS5PZmZzZXQ6XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNOZXh0UGFnZU9mZnNldFN0cmF0ZWd5O1xuICAgICAgY2FzZSBQYWdpbmF0aW9uU3RyYXRlZ3kuTWFueTpcbiAgICAgICAgcmV0dXJuICEhdGhpcy5fcGFnZVJlY29yZHMgJiYgdGhpcy5fbGltaXQgPT09IHRoaXMuX3BhZ2VSZWNvcmRzO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbG9hZE1vcmVFbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9sb2FkTW9yZUNvbmZpZy5lbmFibGVkO1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkTW9yZUxhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2xvYWRNb3JlQ29uZmlnLmxhYmVsO1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkTW9yZUJ1dHRvbkNvbG9yKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2xvYWRNb3JlQ29uZmlnLmJ1dHRvbkNvbG9yO1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkTW9yZUJ1dHRvbkNsYXNzKCk6IHN0cmluZyB7XG4gICAgaWYoIHRoaXMuX2xvYWRNb3JlQ29uZmlnLmJ1dHRvblR5cGUgPT09ICdiYXNpYycgKSB7XG4gICAgICByZXR1cm4gJyc7IFxuICAgIH1cblxuICAgIHJldHVybiBgbWF0LSR7dGhpcy5fbG9hZE1vcmVDb25maWcuYnV0dG9uVHlwZX0tYnV0dG9uYDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbG9hZE1vcmVCdXR0b25UeXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2xvYWRNb3JlQ29uZmlnLmJ1dHRvblR5cGU7XG4gIH1cblxuICAvKipcbiAgICogU1AtVDE5NzRcbiAgICogU2hvd2luZyAyNi01MCBvZiAzMzMgcmVzdWx0cyBzb3J0ZWQgYnkgTmFtZSwgQXNjZW5kaW5nXG4gICAqIFNob3dpbmcgMCByZXN1bHRzIHNvcnRlZCBieSBOYW1lLCBBc2NlbmRpbmdcbiAgICovXG4gIHB1YmxpYyBnZXQgc3RhdHVzTGFiZWwoKTogc3RyaW5nIHtcbiAgICBjb25zdCBzdGF0dXMgPSB0aGlzLmhhc01hbnlTdHJhdGVneSA/XG4gICAgICB0aGlzLm1hbnlTdGF0dXMgOiBcbiAgICAgIHRoaXMuZGVmYXVsdFN0YXR1cztcblxuICAgIHJldHVybiBPYmplY3QudmFsdWVzKHN0YXR1cylcbiAgICAgIC5maWx0ZXIoKHZhbHVlKSA9PiAhIXZhbHVlKVxuICAgICAgLmpvaW4oJy0nKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbWFueVN0YXR1cygpOiB7IGZyb206IG51bWJlciwgdG86IG51bWJlciB9IHtcbiAgICBjb25zdCBjdXJyZW50ID0gKHRoaXMuX3BhZ2UgLSAxKSAqIHRoaXMuX2xpbWl0O1xuICAgIGNvbnN0IGZyb20gPSBjdXJyZW50ICsgMTtcbiAgICBcbiAgICBpZih0aGlzLl9wYWdlUmVjb3JkcyA9PT0gMCkge1xuICAgICAgcmV0dXJuIHsgZnJvbTogY3VycmVudCwgdG86IDAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fcGFnZVJlY29yZHMgPCB0aGlzLl9saW1pdCA/XG4gICAgICB7IGZyb20sIHRvOiBjdXJyZW50ICsgdGhpcy5fcGFnZVJlY29yZHMgfSA6XG4gICAgICB7IGZyb20sIHRvOiBjdXJyZW50ICsgdGhpcy5fbGltaXQgfTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGVmYXVsdFN0YXR1cygpOiB7IGZyb206IG51bWJlciwgdG86IG51bWJlciB9IHtcbiAgICBjb25zdCBjdXJyZW50ID0gKHRoaXMuX3BhZ2UgLSAxKSAqIHRoaXMuX2xpbWl0O1xuICAgIGNvbnN0IGZyb20gPSBjdXJyZW50ICsgMTtcbiAgICBjb25zdCB0byA9IE1hdGgubWluKHRoaXMuX3JlY29yZHMsIGN1cnJlbnQgKyB0aGlzLl9saW1pdCk7XG5cbiAgICByZXR1cm4geyBmcm9tLCB0byB9O1xuICB9XG5cbiAgcHVibGljIGdldCBzdGF0ZSgpOiBJUGFnaW5hdGlvblN0YXRlIHtcbiAgICByZXR1cm4ge1xuICAgICAgZW5hYmxlZDogdGhpcy5lbmFibGVkLFxuICAgICAgc3RyYXRlZ3k6IHRoaXMuc3RyYXRlZ3ksXG4gICAgICBwYWdlOiB0aGlzLl9wYWdlLFxuICAgICAgb2Zmc2V0OiB0aGlzLl9vZmZzZXQsXG4gICAgICBsaW1pdDogdGhpcy5fbGltaXQsXG4gICAgICByZWNvcmRzOiB0aGlzLl9yZWNvcmRzLFxuICAgICAgcGFnZVJlY29yZHM6IHRoaXMuX3BhZ2VSZWNvcmRzLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgaW5pdFdpdGhDb25maWcoXG4gICAgY29uZmlnOiBGc1BhZ2luZyB8IGZhbHNlLFxuICAgIGxvYWRNb3JlOiBGc0xpc3RMb2FkTW9yZUNvbmZpZyB8IGJvb2xlYW4sXG4gICkge1xuXG4gICAgaWYgKGNvbmZpZykge1xuICAgICAgaWYgKGNvbmZpZy5saW1pdHMpIHtcbiAgICAgICAgdGhpcy5fbGltaXRzID0gY29uZmlnLmxpbWl0cztcbiAgICAgIH1cblxuICAgICAgaWYgKGNvbmZpZy5saW1pdCkge1xuICAgICAgICB0aGlzLl9saW1pdCA9IGNvbmZpZy5saW1pdDtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zdHJhdGVneSA9IGNvbmZpZy5zdHJhdGVneTtcbiAgICB9XG4gICAgXG4gICAgdGhpcy5zZXRMb2FkTW9yZShsb2FkTW9yZSk7XG4gIH1cblxuICAvKipcbiAgICogSWYgcGFnaW5hdGlvbiBoYXMgcHJldiBwYWdlIHdoZW4gUGFnZSBTdHJhdGVneVxuICAgKi9cbiAgcHJpdmF0ZSBnZXQgX2hhc1ByZXZQYWdlUGFnZVN0cmF0ZWd5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9wYWdlID4gMSAmJiB0aGlzLnBhZ2VzID4gMTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBwYWdpbmF0aW9uIGhhcyBwcmV2IHBhZ2Ugd2hlbiBPZmZzZXQgU3RyYXRlZ3lcbiAgICovXG4gIHByaXZhdGUgZ2V0IF9oYXNQcmV2UGFnZU9mZnNldFN0cmF0ZWd5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9vZmZzZXQgPj0gdGhpcy5fbGltaXQgJiYgdGhpcy5fcmVjb3JkcyA+IDE7XG4gIH1cblxuICAvKipcbiAgICogSWYgcGFnaW5hdGlvbiBoYXMgcHJldiBwYWdlIHdoZW4gT2Zmc2V0IFN0cmF0ZWd5XG4gICAqL1xuICBwcml2YXRlIGdldCBfaGFzUHJldlBhZ2VNYW55U3RyYXRlZ3koKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX29mZnNldCA+IDA7XG4gIH1cblxuICAvKipcbiAgICogSWYgcGFnaW5hdGlvbiBoYXMgbmV4dCBwYWdlIHdoZW4gUGFnZSBTdHJhdGVneVxuICAgKi9cbiAgcHJpdmF0ZSBnZXQgX2hhc05leHRQYWdlUGFnZVN0cmF0ZWd5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9wYWdlIDwgdGhpcy5wYWdlcyAmJiB0aGlzLnBhZ2VzID4gMTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBwYWdpbmF0aW9uIGhhcyBuZXh0IHBhZ2Ugd2hlbiBPZmZzZXQgU3RyYXRlZ3lcbiAgICovXG4gIHByaXZhdGUgZ2V0IF9oYXNOZXh0UGFnZU9mZnNldFN0cmF0ZWd5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAodGhpcy5fb2Zmc2V0ICsgdGhpcy5fbGltaXQpIDwgdGhpcy5fcmVjb3JkcyAmJiB0aGlzLl9yZWNvcmRzID4gMTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgcGFnaW5nIGNvbmZpZyBhbmQgYWxsIHJlbGF0ZWQgZmllbGRzXG4gICAqL1xuICBwdWJsaWMgdXBkYXRlUGFnaW5nKGNvbmZpZywgcGFnZVJlY29yZHM6IG51bWJlciA9IDAsIGxvYWRNb3JlT3BlcmF0aW9uID0gZmFsc2UpIHtcbiAgICBpZiAoIWxvYWRNb3JlT3BlcmF0aW9uKSB7XG4gICAgICB0aGlzLl9mcm9tUGFyYW1zKGNvbmZpZyk7XG4gICAgICB0aGlzLl9wYWdlUmVjb3JkcyA9IHBhZ2VSZWNvcmRzO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9yZWNvcmRzID0gY29uZmlnLnJlY29yZHM7XG5cbiAgICAgIGlmICh0aGlzLl9yZWNvcmRzIDwgdGhpcy5fcGFnZVJlY29yZHMpIHtcbiAgICAgICAgdGhpcy5fcGFnZVJlY29yZHMgPSB0aGlzLl9yZWNvcmRzO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9yZW1vdmVkUm93cyA9IDA7XG4gICAgfVxuXG4gICAgdGhpcy5fdXBkYXRlVG90YWxQYWdlcygpO1xuICB9XG5cbiAgLy8gLyoqXG4gIC8vICAqIFVwZGF0ZSBwYWdpbmcgd2hlbiBkYXRhIHNvdXJjZSBub3QgcmVtb3ZlXG4gIC8vICAqIEBwYXJhbSB7YW55W119IHJvd3NcbiAgLy8gICovXG4gIC8qcHVibGljIHVwZGF0ZVBhZ2luZ01hbnVhbChyb3dzOiBhbnlbXSkge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHJvd3MpICYmIHJvd3MubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5fcmVjb3JkcyA9IHJvd3MubGVuZ3RoO1xuICAgICAgdGhpcy5wYWdlcyA9IE1hdGguY2VpbChyb3dzLmxlbmd0aCAvIHRoaXMuX2xpbWl0KTtcbiAgICB9XG5cbiAgICB0aGlzLnVwZGF0ZVBhZ2VzQXJyYXkoKTtcbiAgICB0aGlzLnVwZGF0ZURpc3BsYXllZCgpO1xuICB9Ki9cblxuICAvKipcbiAgICogVXBkYXRlIHBhZ2VzIGFycmF5IHdpdGggbmV3IHBhZ2VzIGNvdW50XG4gICAqL1xuICAvLyBwdWJsaWMgdXBkYXRlUGFnZXNBcnJheSgpIHtcbiAgLy8gICBjb25zdCBNSURETEUgPSAyO1xuICAvLyAgIGNvbnN0IHBhZ2VzQXJyID0gW107XG5cbiAgLy8gICBsZXQgZnJvbSA9IDA7XG4gIC8vICAgbGV0IHRvID0gMDtcbiAgLy8gICBpZiAodGhpcy5fcGFnZSA8IE1JRERMRSkge1xuICAvLyAgICAgZnJvbSA9IE1JRERMRSAtIDE7XG4gIC8vICAgICB0byA9IE1JRERMRSArIDE7XG4gIC8vICAgfSBlbHNlIGlmICh0aGlzLl9wYWdlID49IE1JRERMRSAmJiB0aGlzLl9wYWdlIDw9IHRoaXMucGFnZXMgLSBNSURETEUgKyAxKSB7XG4gIC8vICAgICBmcm9tID0gdGhpcy5fcGFnZSAtIDE7XG4gIC8vICAgICB0byA9IHRoaXMuX3BhZ2UgKyAxO1xuICAvLyAgIH0gZWxzZSBpZiAodGhpcy5fcGFnZSA+IHRoaXMucGFnZXMgLSBNSURETEUgKyAxKSB7XG4gIC8vICAgICBmcm9tID0gdGhpcy5wYWdlcyAtIE1JRERMRSAtIDE7XG4gIC8vICAgICB0byA9IHRoaXMucGFnZXM7XG4gIC8vICAgfVxuXG4gIC8vICAgaWYgKCF0aGlzLnBhZ2VzIHx8IHRoaXMucGFnZXMgPCA1KSB7XG4gIC8vICAgICBmcm9tID0gMTtcbiAgLy8gICAgIHRvID0gdGhpcy5wYWdlcyB8fCAwO1xuICAvLyAgIH1cblxuICAvLyAgIGZvciAobGV0IGkgPSBmcm9tOyBpIDw9IHRvOyBpKyspIHtcbiAgLy8gICAgIHBhZ2VzQXJyLnB1c2goaSk7XG4gIC8vICAgfVxuXG4gIC8vICAgdGhpcy5wYWdlc0FycmF5ID0gT2JqZWN0LmFzc2lnbihbXSwgcGFnZXNBcnIpO1xuICAvLyB9XG5cbiAgcHVibGljIHNldExvYWRNb3JlKGNvbmZpZzogRnNMaXN0TG9hZE1vcmVDb25maWcgfCBib29sZWFuKSB7XG4gICAgY29uc3QgbG9hZE1vcmVDb25maWcgPSB0eXBlb2YgY29uZmlnID09PSAnYm9vbGVhbicgPyBcbiAgICAgIHtcbiAgICAgICAgZW5hYmxlZDogISFjb25maWcsXG4gICAgICB9IDogXG4gICAgICAoXG4gICAgICAgIGNvbmZpZyA9PT0gdW5kZWZpbmVkID8ge30gOiB7XG4gICAgICAgICAgLi4uY29uZmlnLFxuICAgICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgIH1cbiAgICAgICk7XG5cbiAgICB0aGlzLl9sb2FkTW9yZUNvbmZpZyA9IHtcbiAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgICAgbGFiZWw6ICdMb2FkIE1vcmUnLFxuICAgICAgYnV0dG9uVHlwZTogJ2Jhc2ljJyxcbiAgICAgIC4uLmxvYWRNb3JlQ29uZmlnLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0UGFnZVJlY29yZHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2VSZWNvcmRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBuZXcgbGltaXRcbiAgICpcbiAgICogQHBhcmFtIGxpbWl0XG4gICAqL1xuICBwdWJsaWMgc2V0TGltaXQobGltaXQpIHtcbiAgICB0aGlzLl9saW1pdCA9IGxpbWl0O1xuICAgIHRoaXMucmVzZXRQYWdpbmcoKTtcblxuICAgIHRoaXMuX3BhZ2VDaGFuZ2VkJFxuICAgICAgLm5leHQoe1xuICAgICAgICB0eXBlOiBQYWdlQ2hhbmdlVHlwZS5MaW1pdENoYW5nZWQsXG4gICAgICAgIHBheWxvYWQ6IGxpbWl0LFxuICAgICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogSWYgcGFnZSBpcyBhY3RpdmF0ZSBwYWdlXG4gICAqXG4gICAqIEBwYXJhbSBwYWdlXG4gICAqL1xuICBwdWJsaWMgaXNBY3RpdmUocGFnZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBwYWdlID09PSB0aGlzLl9wYWdlO1xuICB9XG5cbiAgLyoqXG4gICAqIEdvIHRvIHBhZ2VcbiAgICpcbiAgICogQHBhcmFtIHBhZ2VcbiAgICovXG4gIHB1YmxpYyBnb1RvUGFnZShwYWdlKSB7XG4gICAgaWYgKHBhZ2UgPj0gMSAmJiB0aGlzLl9wYWdlICE9PSBwYWdlKSB7XG4gICAgICB0aGlzLl9wYWdlID0gcGFnZTtcblxuICAgICAgdGhpcy5fdXBkYXRlT2Zmc2V0KCk7XG5cbiAgICAgIHRoaXMuX3BhZ2VDaGFuZ2VkJC5uZXh0KHtcbiAgICAgICAgdHlwZTogUGFnZUNoYW5nZVR5cGUuRGVmYXVsdCxcbiAgICAgICAgcGF5bG9hZDogcGFnZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldCBwYWdpbmcgbGlrZSBpdCB3YXMganVzdCBpbml0aWFsaXplZFxuICAgKi9cbiAgcHVibGljIHJlc2V0UGFnaW5nKCkge1xuICAgIHRoaXMuX3BhZ2UgPSAxO1xuICAgIHRoaXMuX29mZnNldCA9IDA7XG4gIH1cblxuICAvKipcbiAgICogR28gdG8gbmV4dCBwYWdlXG4gICAqL1xuICBwdWJsaWMgZ29OZXh0KCkge1xuICAgIGlmICh0aGlzLmhhc05leHRQYWdlKSB7XG4gICAgICB0aGlzLl9wYWdlKys7XG4gICAgICB0aGlzLl91cGRhdGVPZmZzZXQoKTtcblxuICAgICAgdGhpcy5fcGFnZUNoYW5nZWQkLm5leHQoe1xuICAgICAgICB0eXBlOiBQYWdlQ2hhbmdlVHlwZS5EZWZhdWx0LFxuICAgICAgICBwYXlsb2FkOiB0aGlzLl9wYWdlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEdvIHRvIGZpcnN0IHBhZ2VcbiAgICovXG4gIHB1YmxpYyBnb0ZpcnN0KCkge1xuICAgIGlmICh0aGlzLl9wYWdlID4gMSkge1xuICAgICAgdGhpcy5fcGFnZSA9IDE7XG4gICAgICB0aGlzLl91cGRhdGVPZmZzZXQoKTtcblxuICAgICAgdGhpcy5fcGFnZUNoYW5nZWQkLm5leHQoe1xuICAgICAgICB0eXBlOiBQYWdlQ2hhbmdlVHlwZS5EZWZhdWx0LFxuICAgICAgICBwYXlsb2FkOiB0aGlzLl9wYWdlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEdvIHRvIHByZXYgcGFnZVxuICAgKi9cbiAgcHVibGljIGdvUHJldigpIHtcbiAgICBpZiAodGhpcy5fcGFnZSA+IDEpIHtcbiAgICAgIHRoaXMuX3BhZ2UtLTtcblxuICAgICAgdGhpcy5fdXBkYXRlT2Zmc2V0KCk7XG5cbiAgICAgIHRoaXMuX3BhZ2VDaGFuZ2VkJC5uZXh0KHtcbiAgICAgICAgdHlwZTogUGFnZUNoYW5nZVR5cGUuRGVmYXVsdCxcbiAgICAgICAgcGF5bG9hZDogdGhpcy5fcGFnZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHbyB0byBsYXN0IHBhZ2VcbiAgICovXG4gIHB1YmxpYyBnb0xhc3QoKSB7XG4gICAgaWYgKHRoaXMuX3BhZ2UgIT09IHRoaXMucGFnZXMpIHtcbiAgICAgIHRoaXMuX3BhZ2UgPSB0aGlzLnBhZ2VzO1xuXG4gICAgICB0aGlzLl91cGRhdGVPZmZzZXQoKTtcblxuICAgICAgdGhpcy5fcGFnZUNoYW5nZWQkLm5leHQoe1xuICAgICAgICB0eXBlOiBQYWdlQ2hhbmdlVHlwZS5EZWZhdWx0LFxuICAgICAgICBwYXlsb2FkOiB0aGlzLl9wYWdlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBjb3VudCBvZiBkZWxldGVkIHJvd3MuIFRoaXMgY291bnQgd2lsbCBiZSBhcHBsaWVkIGZvciBvZmZzZXQgY2FsY1xuICAgKlxuICAgKiBAcGFyYW0gY291bnRcbiAgICovXG4gIHB1YmxpYyByZW1vdmVSb3dzKGNvdW50OiBudW1iZXIpIHtcbiAgICB0aGlzLl9yZW1vdmVkUm93cyArPSBjb3VudDtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVQYWdpbmF0aW9uKCkge1xuICAgIHRoaXMuX3VwZGF0ZVRvdGFsUGFnZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXN0cm95XG4gICAqL1xuICBwdWJsaWMgZGVzdHJveSgpIHtcbiAgICB0aGlzLl9vbkRlc3Ryb3kkLm5leHQobnVsbCk7XG4gICAgdGhpcy5fb25EZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBwYWdpbmcgc3RhdGVcbiAgICpcbiAgICogQHBhcmFtIHBhcmFtc1xuICAgKi9cbiAgcHJpdmF0ZSBfZnJvbVBhcmFtcyhwYXJhbXMpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubG9hZE1vcmVFbmFibGVkKSB7XG4gICAgICB0aGlzLl9saW1pdCA9IHBhcmFtcy5saW1pdCA/PyAyNTtcbiAgICB9XG5cbiAgICB0aGlzLl9yZWNvcmRzID0gcGFyYW1zLnJlY29yZHM7XG4gICAgdGhpcy5wYWdlcyA9IHBhcmFtcy5wYWdlcyB8fCAwO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGMgYW5kIHVwZGF0ZSBvZmZzZXRcbiAgICovXG4gIHByaXZhdGUgX3VwZGF0ZU9mZnNldCgpIHtcbiAgICB0aGlzLl9vZmZzZXQgPSB0aGlzLl9saW1pdCAqICh0aGlzLl9wYWdlIC0gMSk7XG4gIH1cblxuICAvKipcbiAgICogQ2FsYyBhbmQgdXBkYXRlIHRvdGFsIGNvdW50IG9mIHBhZ2VzXG4gICAqL1xuICBwcml2YXRlIF91cGRhdGVUb3RhbFBhZ2VzKCkge1xuICAgIHRoaXMucGFnZXMgPSBNYXRoLmNlaWwodGhpcy5fcmVjb3JkcyAvIHRoaXMuX2xpbWl0KTtcbiAgfVxufVxuIl19
|
|
@@ -22,14 +22,14 @@ export class FsPaginationComponent {
|
|
|
22
22
|
this.pagination.goLast();
|
|
23
23
|
}
|
|
24
24
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
25
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsPaginationComponent, selector: "fs-list-pagination", inputs: { pagination: "pagination", rows: "rows" }, ngImport: i0, template: "<div class=\"pagination-container\">\n @if (pagination.hasManyStrategy) {\n <ng-container *ngTemplateOutlet=\"strategyMany\"></ng-container>\n } @else if (pagination.loadMoreEnabled) {\n <ng-container *ngTemplateOutlet=\"strategyLoadMore\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"strategyOffsetPage\"></ng-container>\n }\n</div>\n<ng-template #strategyLoadMore>\n @if (pagination.hasNextPage) {\n <div class=\"fs-list-load-more\">\n <button\n mat-button\n type=\"button\"\n [class]=\"pagination.loadMoreButtonClass\"\n [color]=\"pagination.loadMoreButtonColor\"\n (click)=\"next()\">\n {{ pagination.loadMoreLabel }}\n </button>\n </div>\n }\n</ng-template>\n<ng-template #strategyOffsetPage>\n @if (pagination.
|
|
25
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsPaginationComponent, selector: "fs-list-pagination", inputs: { pagination: "pagination", rows: "rows" }, ngImport: i0, template: "<div class=\"pagination-container\">\n @if (pagination.hasManyStrategy) {\n <ng-container *ngTemplateOutlet=\"strategyMany\"></ng-container>\n } @else if (pagination.loadMoreEnabled) {\n <ng-container *ngTemplateOutlet=\"strategyLoadMore\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"strategyOffsetPage\"></ng-container>\n }\n</div>\n<ng-template #strategyLoadMore>\n @if (pagination.hasNextPage) {\n <div class=\"fs-list-load-more\">\n <button\n mat-button\n type=\"button\"\n [class]=\"pagination.loadMoreButtonClass\"\n [color]=\"pagination.loadMoreButtonColor\"\n (click)=\"next()\">\n {{ pagination.loadMoreLabel }}\n </button>\n </div>\n }\n</ng-template>\n<ng-template #strategyOffsetPage>\n @if (pagination.records > pagination.limit) {\n <ng-container *ngIf=\"pagination?.pages\"></ng-container>\n <ng-container\n [ngTemplateOutlet]=\"firstPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"prevPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <div class=\"number\">\n {{ pagination.page | fsFormatNumber }} of {{ pagination.pages | fsFormatNumber }}\n </div>\n <ng-container\n [ngTemplateOutlet]=\"nextPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasNextPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"lastPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasNextPage }\">\n </ng-container>\n }\n</ng-template>\n<ng-template #strategyMany>\n @if (!(pagination.pageRecords ===0 && pagination.page === 1)) {\n <ng-container\n [ngTemplateOutlet]=\"firstPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"prevPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <div class=\"number\">\n {{ pagination.page }}\n </div>\n <ng-container\n [ngTemplateOutlet]=\"nextPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasNextPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"lastPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: true }\">\n </ng-container>\n }\n</ng-template>\n<ng-template\n #firstPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"first\"\n [class.disabled]=\"disabled\"\n (click)=\"first()\">\n <mat-icon>\n first_page\n </mat-icon>\n </a>\n</ng-template>\n<ng-template\n #prevPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"previous\"\n [class.disabled]=\"disabled\"\n (click)=\"prev()\">\n <mat-icon>\n keyboard_arrow_left\n </mat-icon>\n </a>\n</ng-template>\n<ng-template\n #nextPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"next\"\n [class.disabled]=\"disabled\"\n (click)=\"next()\">\n <mat-icon>\n keyboard_arrow_right\n </mat-icon>\n </a>\n</ng-template>\n<ng-template\n #lastPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"last\"\n [class.disabled]=\"disabled\"\n (click)=\"last()\">\n <mat-icon>\n last_page\n </mat-icon>\n </a>\n</ng-template>", styles: [".pagination-container{display:flex;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none;width:100%}a{text-align:center;color:#000000de;text-decoration:none;font-size:15px;cursor:pointer;display:flex}a:not(.page){padding:10px}a.disabled{pointer-events:none;cursor:default;color:#d8d8d8}.number{font-size:90%}.fs-list-load-more button{width:100%;margin-top:10px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "pipe", type: i5.FsFormatNumberPipe, name: "fsFormatNumber" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
26
26
|
}
|
|
27
27
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsPaginationComponent, decorators: [{
|
|
28
28
|
type: Component,
|
|
29
|
-
args: [{ selector: 'fs-list-pagination', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"pagination-container\">\n @if (pagination.hasManyStrategy) {\n <ng-container *ngTemplateOutlet=\"strategyMany\"></ng-container>\n } @else if (pagination.loadMoreEnabled) {\n <ng-container *ngTemplateOutlet=\"strategyLoadMore\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"strategyOffsetPage\"></ng-container>\n }\n</div>\n<ng-template #strategyLoadMore>\n @if (pagination.hasNextPage) {\n <div class=\"fs-list-load-more\">\n <button\n mat-button\n type=\"button\"\n [class]=\"pagination.loadMoreButtonClass\"\n [color]=\"pagination.loadMoreButtonColor\"\n (click)=\"next()\">\n {{ pagination.loadMoreLabel }}\n </button>\n </div>\n }\n</ng-template>\n<ng-template #strategyOffsetPage>\n @if (pagination.
|
|
29
|
+
args: [{ selector: 'fs-list-pagination', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"pagination-container\">\n @if (pagination.hasManyStrategy) {\n <ng-container *ngTemplateOutlet=\"strategyMany\"></ng-container>\n } @else if (pagination.loadMoreEnabled) {\n <ng-container *ngTemplateOutlet=\"strategyLoadMore\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"strategyOffsetPage\"></ng-container>\n }\n</div>\n<ng-template #strategyLoadMore>\n @if (pagination.hasNextPage) {\n <div class=\"fs-list-load-more\">\n <button\n mat-button\n type=\"button\"\n [class]=\"pagination.loadMoreButtonClass\"\n [color]=\"pagination.loadMoreButtonColor\"\n (click)=\"next()\">\n {{ pagination.loadMoreLabel }}\n </button>\n </div>\n }\n</ng-template>\n<ng-template #strategyOffsetPage>\n @if (pagination.records > pagination.limit) {\n <ng-container *ngIf=\"pagination?.pages\"></ng-container>\n <ng-container\n [ngTemplateOutlet]=\"firstPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"prevPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <div class=\"number\">\n {{ pagination.page | fsFormatNumber }} of {{ pagination.pages | fsFormatNumber }}\n </div>\n <ng-container\n [ngTemplateOutlet]=\"nextPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasNextPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"lastPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasNextPage }\">\n </ng-container>\n }\n</ng-template>\n<ng-template #strategyMany>\n @if (!(pagination.pageRecords ===0 && pagination.page === 1)) {\n <ng-container\n [ngTemplateOutlet]=\"firstPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"prevPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <div class=\"number\">\n {{ pagination.page }}\n </div>\n <ng-container\n [ngTemplateOutlet]=\"nextPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasNextPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"lastPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: true }\">\n </ng-container>\n }\n</ng-template>\n<ng-template\n #firstPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"first\"\n [class.disabled]=\"disabled\"\n (click)=\"first()\">\n <mat-icon>\n first_page\n </mat-icon>\n </a>\n</ng-template>\n<ng-template\n #prevPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"previous\"\n [class.disabled]=\"disabled\"\n (click)=\"prev()\">\n <mat-icon>\n keyboard_arrow_left\n </mat-icon>\n </a>\n</ng-template>\n<ng-template\n #nextPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"next\"\n [class.disabled]=\"disabled\"\n (click)=\"next()\">\n <mat-icon>\n keyboard_arrow_right\n </mat-icon>\n </a>\n</ng-template>\n<ng-template\n #lastPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"last\"\n [class.disabled]=\"disabled\"\n (click)=\"last()\">\n <mat-icon>\n last_page\n </mat-icon>\n </a>\n</ng-template>", styles: [".pagination-container{display:flex;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none;width:100%}a{text-align:center;color:#000000de;text-decoration:none;font-size:15px;cursor:pointer;display:flex}a:not(.page){padding:10px}a.disabled{pointer-events:none;cursor:default;color:#d8d8d8}.number{font-size:90%}.fs-list-load-more button{width:100%;margin-top:10px}\n"] }]
|
|
30
30
|
}], propDecorators: { pagination: [{
|
|
31
31
|
type: Input
|
|
32
32
|
}], rows: [{
|
|
33
33
|
type: Input
|
|
34
34
|
}] } });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7O0FBUTNFLE1BQU0sT0FBTyxxQkFBcUI7SUFFaEIsVUFBVSxDQUF1QjtJQUNqQyxJQUFJLENBQUM7SUFFZCxLQUFLO1FBQ1YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU0sSUFBSTtRQUNULElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVNLElBQUk7UUFDVCxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTSxJQUFJO1FBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUMzQixDQUFDO3VHQW5CVSxxQkFBcUI7MkZBQXJCLHFCQUFxQiw4R0NmbEMsaWpJQWlJYzs7MkZEbEhELHFCQUFxQjtrQkFOakMsU0FBUzsrQkFDRSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTs4QkFJL0IsVUFBVTtzQkFBekIsS0FBSztnQkFDVSxJQUFJO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5cbmltcG9ydCB7IFBhZ2luYXRpb25Db250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9wYWdpbmF0aW9uLWNvbnRyb2xsZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmcy1saXN0LXBhZ2luYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vcGFnaW5hdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BhZ2luYXRpb24uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZzUGFnaW5hdGlvbkNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgcHVibGljIHBhZ2luYXRpb246IFBhZ2luYXRpb25Db250cm9sbGVyO1xuICBASW5wdXQoKSBwdWJsaWMgcm93cztcblxuICBwdWJsaWMgZmlyc3QoKSB7XG4gICAgdGhpcy5wYWdpbmF0aW9uLmdvRmlyc3QoKTtcbiAgfVxuXG4gIHB1YmxpYyBwcmV2KCkge1xuICAgIHRoaXMucGFnaW5hdGlvbi5nb1ByZXYoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZXh0KCkge1xuICAgIHRoaXMucGFnaW5hdGlvbi5nb05leHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBsYXN0KCkge1xuICAgIHRoaXMucGFnaW5hdGlvbi5nb0xhc3QoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInBhZ2luYXRpb24tY29udGFpbmVyXCI+XG4gIEBpZiAocGFnaW5hdGlvbi5oYXNNYW55U3RyYXRlZ3kpIHtcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic3RyYXRlZ3lNYW55XCI+PC9uZy1jb250YWluZXI+XG4gIH0gQGVsc2UgaWYgKHBhZ2luYXRpb24ubG9hZE1vcmVFbmFibGVkKSB7XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInN0cmF0ZWd5TG9hZE1vcmVcIj48L25nLWNvbnRhaW5lcj5cbiAgfSBAZWxzZSB7XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInN0cmF0ZWd5T2Zmc2V0UGFnZVwiPjwvbmctY29udGFpbmVyPlxuICB9XG48L2Rpdj5cbjxuZy10ZW1wbGF0ZSAjc3RyYXRlZ3lMb2FkTW9yZT5cbiAgQGlmIChwYWdpbmF0aW9uLmhhc05leHRQYWdlKSB7XG4gICAgPGRpdiBjbGFzcz1cImZzLWxpc3QtbG9hZC1tb3JlXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIFtjbGFzc109XCJwYWdpbmF0aW9uLmxvYWRNb3JlQnV0dG9uQ2xhc3NcIlxuICAgICAgICAgIFtjb2xvcl09XCJwYWdpbmF0aW9uLmxvYWRNb3JlQnV0dG9uQ29sb3JcIlxuICAgICAgICAgIChjbGljayk9XCJuZXh0KClcIj5cbiAgICAgICAge3sgcGFnaW5hdGlvbi5sb2FkTW9yZUxhYmVsIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgfVxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjc3RyYXRlZ3lPZmZzZXRQYWdlPlxuICBAaWYgKHBhZ2luYXRpb24ucmVjb3JkcyA+IHBhZ2luYXRpb24ubGltaXQpIHtcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwicGFnaW5hdGlvbj8ucGFnZXNcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJmaXJzdFBhZ2VCdXR0b25cIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgZGlzYWJsZWQ6ICFwYWdpbmF0aW9uLmhhc1ByZXZQYWdlIH1cIj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJwcmV2UGFnZUJ1dHRvblwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBkaXNhYmxlZDogIXBhZ2luYXRpb24uaGFzUHJldlBhZ2UgfVwiPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxkaXYgY2xhc3M9XCJudW1iZXJcIj5cbiAgICAgIHt7IHBhZ2luYXRpb24ucGFnZSB8IGZzRm9ybWF0TnVtYmVyIH19IG9mICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHBhZ2luYXRpb24ucGFnZXMgfCBmc0Zvcm1hdE51bWJlciB9fVxuICAgIDwvZGl2PlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm5leHRQYWdlQnV0dG9uXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGRpc2FibGVkOiAhcGFnaW5hdGlvbi5oYXNOZXh0UGFnZSB9XCI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwibGFzdFBhZ2VCdXR0b25cIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgZGlzYWJsZWQ6ICFwYWdpbmF0aW9uLmhhc05leHRQYWdlIH1cIj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgfVxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjc3RyYXRlZ3lNYW55PlxuICBAaWYgKCEocGFnaW5hdGlvbi5wYWdlUmVjb3JkcyA9PT0wICYmIHBhZ2luYXRpb24ucGFnZSA9PT0gMSkpIHtcbiAgICA8bmctY29udGFpbmVyXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJmaXJzdFBhZ2VCdXR0b25cIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgZGlzYWJsZWQ6ICFwYWdpbmF0aW9uLmhhc1ByZXZQYWdlIH1cIj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJwcmV2UGFnZUJ1dHRvblwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBkaXNhYmxlZDogIXBhZ2luYXRpb24uaGFzUHJldlBhZ2UgfVwiPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxkaXYgY2xhc3M9XCJudW1iZXJcIj5cbiAgICAgIHt7IHBhZ2luYXRpb24ucGFnZSB9fVxuICAgIDwvZGl2PlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm5leHRQYWdlQnV0dG9uXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGRpc2FibGVkOiAhcGFnaW5hdGlvbi5oYXNOZXh0UGFnZSB9XCI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwibGFzdFBhZ2VCdXR0b25cIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgZGlzYWJsZWQ6IHRydWUgfVwiPlxuICAgIDwvbmctY29udGFpbmVyPlxuICB9XG48L25nLXRlbXBsYXRlPlxuPG5nLXRlbXBsYXRlXG4gICAgI2ZpcnN0UGFnZUJ1dHRvblxuICAgIGxldC1kaXNhYmxlZD1cImRpc2FibGVkXCI+XG4gIDxhXG4gICAgICBtYXRSaXBwbGVcbiAgICAgIFttYXRSaXBwbGVSYWRpdXNdPVwiMTVcIlxuICAgICAgW21hdFJpcHBsZUNlbnRlcmVkXT1cInRydWVcIlxuICAgICAgY2xhc3M9XCJmaXJzdFwiXG4gICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgKGNsaWNrKT1cImZpcnN0KClcIj5cbiAgICA8bWF0LWljb24+XG4gICAgICBmaXJzdF9wYWdlXG4gICAgPC9tYXQtaWNvbj5cbiAgPC9hPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZVxuICAgICNwcmV2UGFnZUJ1dHRvblxuICAgIGxldC1kaXNhYmxlZD1cImRpc2FibGVkXCI+XG4gIDxhXG4gICAgICBtYXRSaXBwbGVcbiAgICAgIFttYXRSaXBwbGVSYWRpdXNdPVwiMTVcIlxuICAgICAgW21hdFJpcHBsZUNlbnRlcmVkXT1cInRydWVcIlxuICAgICAgY2xhc3M9XCJwcmV2aW91c1wiXG4gICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgKGNsaWNrKT1cInByZXYoKVwiPlxuICAgIDxtYXQtaWNvbj5cbiAgICAgIGtleWJvYXJkX2Fycm93X2xlZnRcbiAgICA8L21hdC1pY29uPlxuICA8L2E+XG48L25nLXRlbXBsYXRlPlxuPG5nLXRlbXBsYXRlXG4gICAgI25leHRQYWdlQnV0dG9uXG4gICAgbGV0LWRpc2FibGVkPVwiZGlzYWJsZWRcIj5cbiAgPGFcbiAgICAgIG1hdFJpcHBsZVxuICAgICAgW21hdFJpcHBsZVJhZGl1c109XCIxNVwiXG4gICAgICBbbWF0UmlwcGxlQ2VudGVyZWRdPVwidHJ1ZVwiXG4gICAgICBjbGFzcz1cIm5leHRcIlxuICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIChjbGljayk9XCJuZXh0KClcIj5cbiAgICA8bWF0LWljb24+XG4gICAgICBrZXlib2FyZF9hcnJvd19yaWdodFxuICAgIDwvbWF0LWljb24+XG4gIDwvYT5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGVcbiAgICAjbGFzdFBhZ2VCdXR0b25cbiAgICBsZXQtZGlzYWJsZWQ9XCJkaXNhYmxlZFwiPlxuICA8YVxuICAgICAgbWF0UmlwcGxlXG4gICAgICBbbWF0UmlwcGxlUmFkaXVzXT1cIjE1XCJcbiAgICAgIFttYXRSaXBwbGVDZW50ZXJlZF09XCJ0cnVlXCJcbiAgICAgIGNsYXNzPVwibGFzdFwiXG4gICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgKGNsaWNrKT1cImxhc3QoKVwiPlxuICAgIDxtYXQtaWNvbj5cbiAgICAgIGxhc3RfcGFnZVxuICAgIDwvbWF0LWljb24+XG4gIDwvYT5cbjwvbmctdGVtcGxhdGU+Il19
|
|
@@ -47,6 +47,7 @@ import { FsListGroupExpandTriggerDirective } from './directives/group-expand-tri
|
|
|
47
47
|
import { FsListGroupFooterDirective } from './directives/group-footer/group-footer.directive';
|
|
48
48
|
import { FsListGroupHeaderDirective } from './directives/group-header/group-header.directive';
|
|
49
49
|
import { FsListHeaderDirective } from './directives/header/header.directive';
|
|
50
|
+
import { PaginationStrategy } from './enums';
|
|
50
51
|
import { FS_LIST_CONFIG, FS_LIST_DEFAULT_CONFIG } from './fs-list.providers';
|
|
51
52
|
import { ActionLabelPipe } from './pipes';
|
|
52
53
|
import * as i0 from "@angular/core";
|
|
@@ -236,9 +237,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
236
237
|
}] });
|
|
237
238
|
export function fsListConfigFactory(config) {
|
|
238
239
|
return merge({
|
|
240
|
+
queryParam: true,
|
|
241
|
+
chips: true,
|
|
242
|
+
paging: {
|
|
243
|
+
strategy: PaginationStrategy.Offset,
|
|
244
|
+
limit: 25,
|
|
245
|
+
},
|
|
239
246
|
noResults: {
|
|
240
247
|
message: 'No Results Found',
|
|
241
248
|
},
|
|
242
249
|
}, config);
|
|
243
250
|
}
|
|
244
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtbGlzdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2ZzLWxpc3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sV0FBVyxD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Q1AsZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQiwwQkFBMEI7d0JBQzFCLDBCQUEwQjt3QkFDMUIsaUNBQWlDO3dCQUNqQyx5QkFBeUI7d0JBQ3pCLHNCQUFzQjt3QkFDdEIseUJBQXlCO3dCQUN6QixzQkFBc0I7d0JBQ3RCLCtCQUErQjtxQkFDaEM7aUJBQ0Y7O0FBaUJELE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxNQUFvQjtJQUN0RCxPQUFPLEtBQUssQ0FBQztRQUNYLFNBQVMsRUFBRTtZQUNULE9BQU8sRUFBRSxrQkFBa0I7U0FDNUI7S0FDYyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRDaGVja2JveE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcbmltcG9ydCB7IE1hdFJpcHBsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLXNwaW5uZXInO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuXG5pbXBvcnQgeyBGc0NvbW1vbk1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2NvbW1vbic7XG5pbXBvcnQgeyBGc0ZpbGVNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9maWxlJztcbmltcG9ydCB7IEZzRmlsdGVyTW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvZmlsdGVyJztcbmltcG9ydCB7IEZzTWVudU1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL21lbnUnO1xuaW1wb3J0IHsgRnNQcm9tcHRNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9wcm9tcHQnO1xuaW1wb3J0IHsgRnNTY3JvbGxNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9zY3JvbGwnO1xuXG5pbXBvcnQgeyBtZXJnZSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbmltcG9ydCB7IEZzQm9keUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ib2R5L2JvZHkuY29tcG9uZW50JztcbmltcG9ydCB7IEZzUm93QWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ib2R5L3Jvdy9hY3Rpb25zL2FjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IEZzQ2VsbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ib2R5L3Jvdy9jZWxsL2NlbGwuY29tcG9uZW50JztcbmltcG9ydCB7IEZzUm93SW5saW5lQWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2JvZHkvcm93L2lubGluZS1hY3Rpb24vaW5saW5lLWFjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNSb3dNZW51QWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2JvZHkvcm93L21lbnUtYWN0aW9uL21lbnUtYWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1Jvd0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ib2R5L3Jvdy9yb3cuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbWl6ZUNvbHNEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3VzdG9taXplLWNvbHMvY3VzdG9taXplLWNvbHMuY29tcG9uZW50JztcbmltcG9ydCB7IEZzRm9vdGVyQ2VsbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mb290ZXIvZm9vdGVyLXJvdy9mb290ZXItY2VsbC9mb290ZXItY2VsbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNGb290ZXJSb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci1yb3cvZm9vdGVyLXJvdy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNGb290ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNIZWFkQ2VsbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkL2hlYWQtY2VsbC9oZWFkLWNlbGwuY29tcG9uZW50JztcbmltcG9ydCB7IEZzSGVhZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkL2hlYWQuY29tcG9uZW50JztcbmltcG9ydCB7IEZzTGlzdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9saXN0L2xpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IEZzTGlzdExvYWRlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sb2FkZXIvbG9hZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0xpc3RNYW5hZ2VTYXZlZEZpbHRlcnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWFuYWdlLXNhdmVkLWZpbHRlcnMvbWFuYWdlLXNhdmVkLWZpbHRlcnMuY29tcG9uZW50JztcbmltcG9ydCB7IEZzUGFnaW5hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEZzTGlzdFNhdmVkRmlsdGVyc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zYXZlZC1maWx0ZXJzL3NhdmVkLWZpbHRlcnMuY29tcG9uZW50JztcbmltcG9ydCB7IEZzU3RhdHVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3N0YXR1cy9zdGF0dXMuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIEZzTGlzdEhlYWRpbmdDb250YWluZXJEaXJlY3RpdmUsIEZzTGlzdEhlYWRpbmdEaXJlY3RpdmUsIEZzTGlzdFN1YmhlYWRpbmdEaXJlY3RpdmUsXG59IGZyb20gJy4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBGc0xpc3RDZWxsRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NlbGwvY2VsbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0Q29sdW1uRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NvbHVtbi9jb2x1bW4uZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzTGlzdENvbnRlbnRJbml0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NvbnRlbnQtaW5pdC9jb250ZW50LWluaXQuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzTGlzdENvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvY29udGVudC9jb250ZW50LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3REcmFnZ2FibGVMaXN0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2RyYWdnYWJsZS1saXN0L2RyYWdnYWJsZS1saXN0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3REcmFnZ2FibGVSb3dEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZHJhZ2dhYmxlLXJvdy9kcmFnZ2FibGUtcm93LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RFbXB0eVN0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2VtcHR5LXN0YXRlL2VtcHR5LXN0YXRlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RGb290ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZm9vdGVyL2Zvb3Rlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0R3JvdXBFeHBhbmRUcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2dyb3VwLWV4cGFuZC10cmlnZ2VyL2dyb3VwLWV4cGFuZC10cmlnZ2VyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RHcm91cEZvb3RlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9ncm91cC1mb290ZXIvZ3JvdXAtZm9vdGVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RHcm91cEhlYWRlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9ncm91cC1oZWFkZXIvZ3JvdXAtaGVhZGVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RIZWFkZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvaGVhZGVyL2hlYWRlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRlNfTElTVF9DT05GSUcsIEZTX0xJU1RfREVGQVVMVF9DT05GSUcgfSBmcm9tICcuL2ZzLWxpc3QucHJvdmlkZXJzJztcbmltcG9ydCB7IEZzTGlzdENvbmZpZyB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBBY3Rpb25MYWJlbFBpcGUgfSBmcm9tICcuL3BpcGVzJztcblxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRNZW51TW9kdWxlLFxuICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgICBNYXRDaGVja2JveE1vZHVsZSxcbiAgICBNYXRSaXBwbGVNb2R1bGUsXG4gICAgRnNGaWx0ZXJNb2R1bGUsXG4gICAgRnNNZW51TW9kdWxlLFxuICAgIEZzU2Nyb2xsTW9kdWxlLFxuICAgIEZzUHJvbXB0TW9kdWxlLFxuICAgIE1hdERpYWxvZ01vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIEZzRmlsZU1vZHVsZSxcbiAgICBGc0NvbW1vbk1vZHVsZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgLy8gQ29tcG9uZW50c1xuICAgIEZzTGlzdENvbXBvbmVudCxcbiAgICBGc1Jvd0NvbXBvbmVudCxcbiAgICBGc1Jvd0FjdGlvbnNDb21wb25lbnQsXG4gICAgRnNSb3dJbmxpbmVBY3Rpb25Db21wb25lbnQsXG4gICAgRnNSb3dNZW51QWN0aW9uQ29tcG9uZW50LFxuICAgIEZzQ2VsbENvbXBvbmVudCxcbiAgICBGc0Zvb3RlclJvd0NvbXBvbmVudCxcbiAgICBGc0Zvb3RlckNlbGxDb21wb25lbnQsXG4gICAgRnNTdGF0dXNDb21wb25lbnQsXG4gICAgRnNMaXN0TG9hZGVyQ29tcG9uZW50LFxuICAgIEZzTGlzdFNhdmVkRmlsdGVyc0NvbXBvbmVudCxcbiAgICBGc0xpc3RNYW5hZ2VTYXZlZEZpbHRlcnNDb21wb25lbnQsXG5cbiAgICAvLyBJbnRlcm5hbCBDb21wb25lbnRzXG4gICAgRnNIZWFkQ29tcG9uZW50LFxuICAgIEZzSGVhZENlbGxDb21wb25lbnQsXG4gICAgRnNCb2R5Q29tcG9uZW50LFxuICAgIEZzRm9vdGVyQ29tcG9uZW50LFxuICAgIEZzUGFnaW5hdGlvbkNvbXBvbmVudCxcblxuICAgIC8vIERpcmVjdGl2ZXNcbiAgICBGc0xpc3RDb2x1bW5EaXJlY3RpdmUsXG4gICAgRnNMaXN0Q2VsbERpcmVjdGl2ZSxcbiAgICBGc0xpc3RIZWFkZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0Rm9vdGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEdyb3VwSGVhZGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEdyb3VwRm9vdGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEdyb3VwRXhwYW5kVHJpZ2dlckRpcmVjdGl2ZSxcbiAgICBGc0xpc3REcmFnZ2FibGVMaXN0RGlyZWN0aXZlLFxuICAgIEZzTGlzdERyYWdnYWJsZVJvd0RpcmVjdGl2ZSxcbiAgICBGc0xpc3RFbXB0eVN0YXRlRGlyZWN0aXZlLFxuICAgIEZzTGlzdENvbnRlbnREaXJlY3RpdmUsXG4gICAgRnNMaXN0Q29udGVudEluaXREaXJlY3RpdmUsXG4gICAgRnNMaXN0U3ViaGVhZGluZ0RpcmVjdGl2ZSxcbiAgICBGc0xpc3RIZWFkaW5nRGlyZWN0aXZlLFxuICAgIEZzTGlzdEhlYWRpbmdDb250YWluZXJEaXJlY3RpdmUsXG5cbiAgICAvLyBEaWFsb2dcbiAgICBDdXN0b21pemVDb2xzRGlhbG9nQ29tcG9uZW50LFxuXG4gICAgLy9QaXBlc1xuICAgIEFjdGlvbkxhYmVsUGlwZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEZzTGlzdENvbXBvbmVudCxcbiAgICBGc1Jvd0NvbXBvbmVudCxcbiAgICBGc0NlbGxDb21wb25lbnQsXG4gICAgRnNMaXN0TG9hZGVyQ29tcG9uZW50LFxuICAgIEZzTGlzdENvbHVtbkRpcmVjdGl2ZSxcbiAgICBGc0xpc3RDZWxsRGlyZWN0aXZlLFxuICAgIEZzTGlzdEhlYWRlckRpcmVjdGl2ZSxcbiAgICBGc0xpc3RGb290ZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0R3JvdXBIZWFkZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0R3JvdXBGb290ZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0R3JvdXBFeHBhbmRUcmlnZ2VyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEVtcHR5U3RhdGVEaXJlY3RpdmUsXG4gICAgRnNMaXN0Q29udGVudERpcmVjdGl2ZSxcbiAgICBGc0xpc3RTdWJoZWFkaW5nRGlyZWN0aXZlLFxuICAgIEZzTGlzdEhlYWRpbmdEaXJlY3RpdmUsXG4gICAgRnNMaXN0SGVhZGluZ0NvbnRhaW5lckRpcmVjdGl2ZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNMaXN0TW9kdWxlIHtcbiAgcHVibGljIHN0YXRpYyBmb3JSb290KGNvbmZpZzogRnNMaXN0Q29uZmlnID0ge30pOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEZzTGlzdE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogRnNMaXN0TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogRlNfTElTVF9DT05GSUcsIHVzZVZhbHVlOiBjb25maWcgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEZTX0xJU1RfREVGQVVMVF9DT05GSUcsXG4gICAgICAgICAgdXNlRmFjdG9yeTogZnNMaXN0Q29uZmlnRmFjdG9yeSxcbiAgICAgICAgICBkZXBzOiBbRlNfTElTVF9DT05GSUddLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmc0xpc3RDb25maWdGYWN0b3J5KGNvbmZpZzogRnNMaXN0Q29uZmlnKSB7XG4gIHJldHVybiBtZXJnZSh7XG4gICAgbm9SZXN1bHRzOiB7XG4gICAgICBtZXNzYWdlOiAnTm8gUmVzdWx0cyBGb3VuZCcsXG4gICAgfSxcbiAgfSBhcyBGc0xpc3RDb25maWcsIGNvbmZpZyk7XG59XG4iXX0=
|
|
251
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtbGlzdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2ZzLWxpc3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sV0FBVyxD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K0I7d0JBRS9CLFNBQVM7d0JBQ1QsNEJBQTRCO3dCQUU1QixPQUFPO3dCQUNQLGVBQWU7cUJBQ2hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsbUJBQW1CO3dCQUNuQixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsMEJBQTBCO3dCQUMxQiwwQkFBMEI7d0JBQzFCLGlDQUFpQzt3QkFDakMseUJBQXlCO3dCQUN6QixzQkFBc0I7d0JBQ3RCLHlCQUF5Qjt3QkFDekIsc0JBQXNCO3dCQUN0QiwrQkFBK0I7cUJBQ2hDO2lCQUNGOztBQWlCRCxNQUFNLFVBQVUsbUJBQW1CLENBQUMsTUFBb0I7SUFDdEQsT0FBTyxLQUFLLENBQUM7UUFDWCxVQUFVLEVBQUUsSUFBSTtRQUNoQixLQUFLLEVBQUUsSUFBSTtRQUNYLE1BQU0sRUFBRTtZQUNOLFFBQVEsRUFBRSxrQkFBa0IsQ0FBQyxNQUFNO1lBQ25DLEtBQUssRUFBRSxFQUFFO1NBQ1Y7UUFDRCxTQUFTLEVBQUU7WUFDVCxPQUFPLEVBQUUsa0JBQWtCO1NBQzVCO0tBQ2MsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUM3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBNYXRSaXBwbGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcblxuaW1wb3J0IHsgRnNDb21tb25Nb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9jb21tb24nO1xuaW1wb3J0IHsgRnNGaWxlTW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvZmlsZSc7XG5pbXBvcnQgeyBGc0ZpbHRlck1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbHRlcic7XG5pbXBvcnQgeyBGc01lbnVNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9tZW51JztcbmltcG9ydCB7IEZzUHJvbXB0TW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvcHJvbXB0JztcbmltcG9ydCB7IEZzU2Nyb2xsTW9kdWxlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvc2Nyb2xsJztcblxuaW1wb3J0IHsgbWVyZ2UgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5pbXBvcnQgeyBGc0JvZHlDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYm9keS9ib2R5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1Jvd0FjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYm9keS9yb3cvYWN0aW9ucy9hY3Rpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0NlbGxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYm9keS9yb3cvY2VsbC9jZWxsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1Jvd0lubGluZUFjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ib2R5L3Jvdy9pbmxpbmUtYWN0aW9uL2lubGluZS1hY3Rpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEZzUm93TWVudUFjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ib2R5L3Jvdy9tZW51LWFjdGlvbi9tZW51LWFjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNSb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYm9keS9yb3cvcm93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21pemVDb2xzRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbWl6ZS1jb2xzL2N1c3RvbWl6ZS1jb2xzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0Zvb3RlckNlbGxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci1yb3cvZm9vdGVyLWNlbGwvZm9vdGVyLWNlbGwuY29tcG9uZW50JztcbmltcG9ydCB7IEZzRm9vdGVyUm93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXItcm93L2Zvb3Rlci1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7IEZzRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZzSGVhZENlbGxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGVhZC9oZWFkLWNlbGwvaGVhZC1jZWxsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0hlYWRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGVhZC9oZWFkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0xpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbGlzdC9saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0xpc3RMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9hZGVyL2xvYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNMaXN0TWFuYWdlU2F2ZWRGaWx0ZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21hbmFnZS1zYXZlZC1maWx0ZXJzL21hbmFnZS1zYXZlZC1maWx0ZXJzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1BhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0xpc3RTYXZlZEZpbHRlcnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2F2ZWQtZmlsdGVycy9zYXZlZC1maWx0ZXJzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1N0YXR1c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zdGF0dXMvc3RhdHVzLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBGc0xpc3RIZWFkaW5nQ29udGFpbmVyRGlyZWN0aXZlLCBGc0xpc3RIZWFkaW5nRGlyZWN0aXZlLCBGc0xpc3RTdWJoZWFkaW5nRGlyZWN0aXZlLFxufSBmcm9tICcuL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgRnNMaXN0Q2VsbERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9jZWxsL2NlbGwuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzTGlzdENvbHVtbkRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9jb2x1bW4vY29sdW1uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RDb250ZW50SW5pdERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9jb250ZW50LWluaXQvY29udGVudC1pbml0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NvbnRlbnQvY29udGVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0RHJhZ2dhYmxlTGlzdERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9kcmFnZ2FibGUtbGlzdC9kcmFnZ2FibGUtbGlzdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0RHJhZ2dhYmxlUm93RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2RyYWdnYWJsZS1yb3cvZHJhZ2dhYmxlLXJvdy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0RW1wdHlTdGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9lbXB0eS1zdGF0ZS9lbXB0eS1zdGF0ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0Rm9vdGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Zvb3Rlci9mb290ZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzTGlzdEdyb3VwRXhwYW5kVHJpZ2dlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9ncm91cC1leHBhbmQtdHJpZ2dlci9ncm91cC1leHBhbmQtdHJpZ2dlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0R3JvdXBGb290ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZ3JvdXAtZm9vdGVyL2dyb3VwLWZvb3Rlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0R3JvdXBIZWFkZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZ3JvdXAtaGVhZGVyL2dyb3VwLWhlYWRlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0SGVhZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2hlYWRlci9oZWFkZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IFBhZ2luYXRpb25TdHJhdGVneSB9IGZyb20gJy4vZW51bXMnO1xuaW1wb3J0IHsgRlNfTElTVF9DT05GSUcsIEZTX0xJU1RfREVGQVVMVF9DT05GSUcgfSBmcm9tICcuL2ZzLWxpc3QucHJvdmlkZXJzJztcbmltcG9ydCB7IEZzTGlzdENvbmZpZyB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBBY3Rpb25MYWJlbFBpcGUgfSBmcm9tICcuL3BpcGVzJztcblxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRNZW51TW9kdWxlLFxuICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgICBNYXRDaGVja2JveE1vZHVsZSxcbiAgICBNYXRSaXBwbGVNb2R1bGUsXG4gICAgRnNGaWx0ZXJNb2R1bGUsXG4gICAgRnNNZW51TW9kdWxlLFxuICAgIEZzU2Nyb2xsTW9kdWxlLFxuICAgIEZzUHJvbXB0TW9kdWxlLFxuICAgIE1hdERpYWxvZ01vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIEZzRmlsZU1vZHVsZSxcbiAgICBGc0NvbW1vbk1vZHVsZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgLy8gQ29tcG9uZW50c1xuICAgIEZzTGlzdENvbXBvbmVudCxcbiAgICBGc1Jvd0NvbXBvbmVudCxcbiAgICBGc1Jvd0FjdGlvbnNDb21wb25lbnQsXG4gICAgRnNSb3dJbmxpbmVBY3Rpb25Db21wb25lbnQsXG4gICAgRnNSb3dNZW51QWN0aW9uQ29tcG9uZW50LFxuICAgIEZzQ2VsbENvbXBvbmVudCxcbiAgICBGc0Zvb3RlclJvd0NvbXBvbmVudCxcbiAgICBGc0Zvb3RlckNlbGxDb21wb25lbnQsXG4gICAgRnNTdGF0dXNDb21wb25lbnQsXG4gICAgRnNMaXN0TG9hZGVyQ29tcG9uZW50LFxuICAgIEZzTGlzdFNhdmVkRmlsdGVyc0NvbXBvbmVudCxcbiAgICBGc0xpc3RNYW5hZ2VTYXZlZEZpbHRlcnNDb21wb25lbnQsXG5cbiAgICAvLyBJbnRlcm5hbCBDb21wb25lbnRzXG4gICAgRnNIZWFkQ29tcG9uZW50LFxuICAgIEZzSGVhZENlbGxDb21wb25lbnQsXG4gICAgRnNCb2R5Q29tcG9uZW50LFxuICAgIEZzRm9vdGVyQ29tcG9uZW50LFxuICAgIEZzUGFnaW5hdGlvbkNvbXBvbmVudCxcblxuICAgIC8vIERpcmVjdGl2ZXNcbiAgICBGc0xpc3RDb2x1bW5EaXJlY3RpdmUsXG4gICAgRnNMaXN0Q2VsbERpcmVjdGl2ZSxcbiAgICBGc0xpc3RIZWFkZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0Rm9vdGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEdyb3VwSGVhZGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEdyb3VwRm9vdGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEdyb3VwRXhwYW5kVHJpZ2dlckRpcmVjdGl2ZSxcbiAgICBGc0xpc3REcmFnZ2FibGVMaXN0RGlyZWN0aXZlLFxuICAgIEZzTGlzdERyYWdnYWJsZVJvd0RpcmVjdGl2ZSxcbiAgICBGc0xpc3RFbXB0eVN0YXRlRGlyZWN0aXZlLFxuICAgIEZzTGlzdENvbnRlbnREaXJlY3RpdmUsXG4gICAgRnNMaXN0Q29udGVudEluaXREaXJlY3RpdmUsXG4gICAgRnNMaXN0U3ViaGVhZGluZ0RpcmVjdGl2ZSxcbiAgICBGc0xpc3RIZWFkaW5nRGlyZWN0aXZlLFxuICAgIEZzTGlzdEhlYWRpbmdDb250YWluZXJEaXJlY3RpdmUsXG5cbiAgICAvLyBEaWFsb2dcbiAgICBDdXN0b21pemVDb2xzRGlhbG9nQ29tcG9uZW50LFxuXG4gICAgLy9QaXBlc1xuICAgIEFjdGlvbkxhYmVsUGlwZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEZzTGlzdENvbXBvbmVudCxcbiAgICBGc1Jvd0NvbXBvbmVudCxcbiAgICBGc0NlbGxDb21wb25lbnQsXG4gICAgRnNMaXN0TG9hZGVyQ29tcG9uZW50LFxuICAgIEZzTGlzdENvbHVtbkRpcmVjdGl2ZSxcbiAgICBGc0xpc3RDZWxsRGlyZWN0aXZlLFxuICAgIEZzTGlzdEhlYWRlckRpcmVjdGl2ZSxcbiAgICBGc0xpc3RGb290ZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0R3JvdXBIZWFkZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0R3JvdXBGb290ZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0R3JvdXBFeHBhbmRUcmlnZ2VyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEVtcHR5U3RhdGVEaXJlY3RpdmUsXG4gICAgRnNMaXN0Q29udGVudERpcmVjdGl2ZSxcbiAgICBGc0xpc3RTdWJoZWFkaW5nRGlyZWN0aXZlLFxuICAgIEZzTGlzdEhlYWRpbmdEaXJlY3RpdmUsXG4gICAgRnNMaXN0SGVhZGluZ0NvbnRhaW5lckRpcmVjdGl2ZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNMaXN0TW9kdWxlIHtcbiAgcHVibGljIHN0YXRpYyBmb3JSb290KGNvbmZpZzogRnNMaXN0Q29uZmlnID0ge30pOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEZzTGlzdE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogRnNMaXN0TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogRlNfTElTVF9DT05GSUcsIHVzZVZhbHVlOiBjb25maWcgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEZTX0xJU1RfREVGQVVMVF9DT05GSUcsXG4gICAgICAgICAgdXNlRmFjdG9yeTogZnNMaXN0Q29uZmlnRmFjdG9yeSxcbiAgICAgICAgICBkZXBzOiBbRlNfTElTVF9DT05GSUddLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmc0xpc3RDb25maWdGYWN0b3J5KGNvbmZpZzogRnNMaXN0Q29uZmlnKSB7XG4gIHJldHVybiBtZXJnZSh7XG4gICAgcXVlcnlQYXJhbTogdHJ1ZSxcbiAgICBjaGlwczogdHJ1ZSxcbiAgICBwYWdpbmc6IHtcbiAgICAgIHN0cmF0ZWd5OiBQYWdpbmF0aW9uU3RyYXRlZ3kuT2Zmc2V0LFxuICAgICAgbGltaXQ6IDI1LFxuICAgIH0sXG4gICAgbm9SZXN1bHRzOiB7XG4gICAgICBtZXNzYWdlOiAnTm8gUmVzdWx0cyBGb3VuZCcsXG4gICAgfSxcbiAgfSBhcyBGc0xpc3RDb25maWcsIGNvbmZpZyk7XG59XG4iXX0=
|
|
@@ -3753,6 +3753,9 @@ class PaginationController {
|
|
|
3753
3753
|
get offset() {
|
|
3754
3754
|
return this._offset;
|
|
3755
3755
|
}
|
|
3756
|
+
get limit() {
|
|
3757
|
+
return this._limit;
|
|
3758
|
+
}
|
|
3756
3759
|
get records() {
|
|
3757
3760
|
return this._records;
|
|
3758
3761
|
}
|
|
@@ -5441,11 +5444,11 @@ class FsPaginationComponent {
|
|
|
5441
5444
|
this.pagination.goLast();
|
|
5442
5445
|
}
|
|
5443
5446
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5444
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsPaginationComponent, selector: "fs-list-pagination", inputs: { pagination: "pagination", rows: "rows" }, ngImport: i0, template: "<div class=\"pagination-container\">\n @if (pagination.hasManyStrategy) {\n <ng-container *ngTemplateOutlet=\"strategyMany\"></ng-container>\n } @else if (pagination.loadMoreEnabled) {\n <ng-container *ngTemplateOutlet=\"strategyLoadMore\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"strategyOffsetPage\"></ng-container>\n }\n</div>\n<ng-template #strategyLoadMore>\n @if (pagination.hasNextPage) {\n <div class=\"fs-list-load-more\">\n <button\n mat-button\n type=\"button\"\n [class]=\"pagination.loadMoreButtonClass\"\n [color]=\"pagination.loadMoreButtonColor\"\n (click)=\"next()\">\n {{ pagination.loadMoreLabel }}\n </button>\n </div>\n }\n</ng-template>\n<ng-template #strategyOffsetPage>\n @if (pagination.
|
|
5447
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsPaginationComponent, selector: "fs-list-pagination", inputs: { pagination: "pagination", rows: "rows" }, ngImport: i0, template: "<div class=\"pagination-container\">\n @if (pagination.hasManyStrategy) {\n <ng-container *ngTemplateOutlet=\"strategyMany\"></ng-container>\n } @else if (pagination.loadMoreEnabled) {\n <ng-container *ngTemplateOutlet=\"strategyLoadMore\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"strategyOffsetPage\"></ng-container>\n }\n</div>\n<ng-template #strategyLoadMore>\n @if (pagination.hasNextPage) {\n <div class=\"fs-list-load-more\">\n <button\n mat-button\n type=\"button\"\n [class]=\"pagination.loadMoreButtonClass\"\n [color]=\"pagination.loadMoreButtonColor\"\n (click)=\"next()\">\n {{ pagination.loadMoreLabel }}\n </button>\n </div>\n }\n</ng-template>\n<ng-template #strategyOffsetPage>\n @if (pagination.records > pagination.limit) {\n <ng-container *ngIf=\"pagination?.pages\"></ng-container>\n <ng-container\n [ngTemplateOutlet]=\"firstPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"prevPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <div class=\"number\">\n {{ pagination.page | fsFormatNumber }} of {{ pagination.pages | fsFormatNumber }}\n </div>\n <ng-container\n [ngTemplateOutlet]=\"nextPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasNextPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"lastPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasNextPage }\">\n </ng-container>\n }\n</ng-template>\n<ng-template #strategyMany>\n @if (!(pagination.pageRecords ===0 && pagination.page === 1)) {\n <ng-container\n [ngTemplateOutlet]=\"firstPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"prevPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <div class=\"number\">\n {{ pagination.page }}\n </div>\n <ng-container\n [ngTemplateOutlet]=\"nextPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasNextPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"lastPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: true }\">\n </ng-container>\n }\n</ng-template>\n<ng-template\n #firstPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"first\"\n [class.disabled]=\"disabled\"\n (click)=\"first()\">\n <mat-icon>\n first_page\n </mat-icon>\n </a>\n</ng-template>\n<ng-template\n #prevPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"previous\"\n [class.disabled]=\"disabled\"\n (click)=\"prev()\">\n <mat-icon>\n keyboard_arrow_left\n </mat-icon>\n </a>\n</ng-template>\n<ng-template\n #nextPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"next\"\n [class.disabled]=\"disabled\"\n (click)=\"next()\">\n <mat-icon>\n keyboard_arrow_right\n </mat-icon>\n </a>\n</ng-template>\n<ng-template\n #lastPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"last\"\n [class.disabled]=\"disabled\"\n (click)=\"last()\">\n <mat-icon>\n last_page\n </mat-icon>\n </a>\n</ng-template>", styles: [".pagination-container{display:flex;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none;width:100%}a{text-align:center;color:#000000de;text-decoration:none;font-size:15px;cursor:pointer;display:flex}a:not(.page){padding:10px}a.disabled{pointer-events:none;cursor:default;color:#d8d8d8}.number{font-size:90%}.fs-list-load-more button{width:100%;margin-top:10px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4$1.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "pipe", type: i5$1.FsFormatNumberPipe, name: "fsFormatNumber" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5445
5448
|
}
|
|
5446
5449
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsPaginationComponent, decorators: [{
|
|
5447
5450
|
type: Component,
|
|
5448
|
-
args: [{ selector: 'fs-list-pagination', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"pagination-container\">\n @if (pagination.hasManyStrategy) {\n <ng-container *ngTemplateOutlet=\"strategyMany\"></ng-container>\n } @else if (pagination.loadMoreEnabled) {\n <ng-container *ngTemplateOutlet=\"strategyLoadMore\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"strategyOffsetPage\"></ng-container>\n }\n</div>\n<ng-template #strategyLoadMore>\n @if (pagination.hasNextPage) {\n <div class=\"fs-list-load-more\">\n <button\n mat-button\n type=\"button\"\n [class]=\"pagination.loadMoreButtonClass\"\n [color]=\"pagination.loadMoreButtonColor\"\n (click)=\"next()\">\n {{ pagination.loadMoreLabel }}\n </button>\n </div>\n }\n</ng-template>\n<ng-template #strategyOffsetPage>\n @if (pagination.
|
|
5451
|
+
args: [{ selector: 'fs-list-pagination', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"pagination-container\">\n @if (pagination.hasManyStrategy) {\n <ng-container *ngTemplateOutlet=\"strategyMany\"></ng-container>\n } @else if (pagination.loadMoreEnabled) {\n <ng-container *ngTemplateOutlet=\"strategyLoadMore\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"strategyOffsetPage\"></ng-container>\n }\n</div>\n<ng-template #strategyLoadMore>\n @if (pagination.hasNextPage) {\n <div class=\"fs-list-load-more\">\n <button\n mat-button\n type=\"button\"\n [class]=\"pagination.loadMoreButtonClass\"\n [color]=\"pagination.loadMoreButtonColor\"\n (click)=\"next()\">\n {{ pagination.loadMoreLabel }}\n </button>\n </div>\n }\n</ng-template>\n<ng-template #strategyOffsetPage>\n @if (pagination.records > pagination.limit) {\n <ng-container *ngIf=\"pagination?.pages\"></ng-container>\n <ng-container\n [ngTemplateOutlet]=\"firstPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"prevPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <div class=\"number\">\n {{ pagination.page | fsFormatNumber }} of {{ pagination.pages | fsFormatNumber }}\n </div>\n <ng-container\n [ngTemplateOutlet]=\"nextPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasNextPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"lastPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasNextPage }\">\n </ng-container>\n }\n</ng-template>\n<ng-template #strategyMany>\n @if (!(pagination.pageRecords ===0 && pagination.page === 1)) {\n <ng-container\n [ngTemplateOutlet]=\"firstPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"prevPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasPrevPage }\">\n </ng-container>\n <div class=\"number\">\n {{ pagination.page }}\n </div>\n <ng-container\n [ngTemplateOutlet]=\"nextPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: !pagination.hasNextPage }\">\n </ng-container>\n <ng-container\n [ngTemplateOutlet]=\"lastPageButton\"\n [ngTemplateOutletContext]=\"{ disabled: true }\">\n </ng-container>\n }\n</ng-template>\n<ng-template\n #firstPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"first\"\n [class.disabled]=\"disabled\"\n (click)=\"first()\">\n <mat-icon>\n first_page\n </mat-icon>\n </a>\n</ng-template>\n<ng-template\n #prevPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"previous\"\n [class.disabled]=\"disabled\"\n (click)=\"prev()\">\n <mat-icon>\n keyboard_arrow_left\n </mat-icon>\n </a>\n</ng-template>\n<ng-template\n #nextPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"next\"\n [class.disabled]=\"disabled\"\n (click)=\"next()\">\n <mat-icon>\n keyboard_arrow_right\n </mat-icon>\n </a>\n</ng-template>\n<ng-template\n #lastPageButton\n let-disabled=\"disabled\">\n <a\n matRipple\n [matRippleRadius]=\"15\"\n [matRippleCentered]=\"true\"\n class=\"last\"\n [class.disabled]=\"disabled\"\n (click)=\"last()\">\n <mat-icon>\n last_page\n </mat-icon>\n </a>\n</ng-template>", styles: [".pagination-container{display:flex;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none;width:100%}a{text-align:center;color:#000000de;text-decoration:none;font-size:15px;cursor:pointer;display:flex}a:not(.page){padding:10px}a.disabled{pointer-events:none;cursor:default;color:#d8d8d8}.number{font-size:90%}.fs-list-load-more button{width:100%;margin-top:10px}\n"] }]
|
|
5449
5452
|
}], propDecorators: { pagination: [{
|
|
5450
5453
|
type: Input
|
|
5451
5454
|
}], rows: [{
|
|
@@ -6104,6 +6107,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
6104
6107
|
}] });
|
|
6105
6108
|
function fsListConfigFactory(config) {
|
|
6106
6109
|
return merge$1({
|
|
6110
|
+
queryParam: true,
|
|
6111
|
+
chips: true,
|
|
6112
|
+
paging: {
|
|
6113
|
+
strategy: PaginationStrategy.Offset,
|
|
6114
|
+
limit: 25,
|
|
6115
|
+
},
|
|
6107
6116
|
noResults: {
|
|
6108
6117
|
message: 'No Results Found',
|
|
6109
6118
|
},
|