@simpleangularcontrols/sac-common 16.0.0-rc.20 → 16.0.0-rc.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/common/basedatetimecontrol.d.ts +7 -3
- package/common/basedatetimecontrol.d.ts.map +1 -1
- package/common/basemodelcontrol.d.ts +5 -1
- package/common/basemodelcontrol.d.ts.map +1 -1
- package/common/baseuploadcontrol.d.ts +4 -0
- package/common/baseuploadcontrol.d.ts.map +1 -1
- package/controls/buttons/button.d.ts +26 -22
- package/controls/buttons/button.d.ts.map +1 -1
- package/controls/contextmenu/contextmenu.d.ts +9 -1
- package/controls/contextmenu/contextmenu.d.ts.map +1 -1
- package/controls/datetime/dateselector.d.ts +10 -2
- package/controls/datetime/dateselector.d.ts.map +1 -1
- package/controls/dialog/dialog.d.ts +6 -2
- package/controls/dialog/dialog.d.ts.map +1 -1
- package/controls/grid/grid.d.ts +23 -19
- package/controls/grid/grid.d.ts.map +1 -1
- package/controls/grid/gridbutton.d.ts +24 -5
- package/controls/grid/gridbutton.d.ts.map +1 -1
- package/controls/grid/gridcolumnbase.d.ts +18 -6
- package/controls/grid/gridcolumnbase.d.ts.map +1 -1
- package/controls/grid/gridimage.d.ts.map +1 -1
- package/controls/grid/paging.d.ts +34 -30
- package/controls/grid/paging.d.ts.map +1 -1
- package/controls/list/dropdown.d.ts +3 -3
- package/controls/list/dropdown.d.ts.map +1 -1
- package/controls/list/listbox.d.ts +2 -2
- package/controls/list/listbox.d.ts.map +1 -1
- package/controls/tabs/tab.d.ts +20 -16
- package/controls/tabs/tab.d.ts.map +1 -1
- package/controls/tinymce/tinymce.d.ts +26 -22
- package/controls/tinymce/tinymce.d.ts.map +1 -1
- package/controls/tooltip/tooltip.d.ts +9 -1
- package/controls/tooltip/tooltip.d.ts.map +1 -1
- package/controls/upload/dropzonemultiple.d.ts +4 -0
- package/controls/upload/dropzonemultiple.d.ts.map +1 -1
- package/controls/upload/dropzonesingle.d.ts +4 -0
- package/controls/upload/dropzonesingle.d.ts.map +1 -1
- package/controls/upload/uploadmultiple.d.ts +4 -0
- package/controls/upload/uploadmultiple.d.ts.map +1 -1
- package/controls/upload/uploadsingle.d.ts +4 -0
- package/controls/upload/uploadsingle.d.ts.map +1 -1
- package/controls/validation/validationsummary.d.ts +9 -5
- package/controls/validation/validationsummary.d.ts.map +1 -1
- package/esm2022/common/basedatetimecontrol.mjs +23 -23
- package/esm2022/common/basemodelcontrol.mjs +62 -60
- package/esm2022/common/baseuploadcontrol.mjs +52 -50
- package/esm2022/controls/buttons/button.mjs +23 -21
- package/esm2022/controls/contextmenu/contextmenu.mjs +20 -16
- package/esm2022/controls/datetime/dateselector.mjs +57 -49
- package/esm2022/controls/dialog/dialog.mjs +30 -19
- package/esm2022/controls/grid/grid.mjs +23 -19
- package/esm2022/controls/grid/gridbutton.mjs +20 -11
- package/esm2022/controls/grid/gridcolumnbase.mjs +17 -15
- package/esm2022/controls/grid/gridimage.mjs +3 -3
- package/esm2022/controls/grid/paging.mjs +44 -40
- package/esm2022/controls/list/dropdown.mjs +18 -9
- package/esm2022/controls/list/listbox.mjs +5 -5
- package/esm2022/controls/tabs/tab.mjs +23 -18
- package/esm2022/controls/tinymce/tinymce.mjs +35 -33
- package/esm2022/controls/tooltip/tooltip.mjs +31 -27
- package/esm2022/controls/upload/dropzonemultiple.mjs +7 -3
- package/esm2022/controls/upload/dropzonesingle.mjs +7 -3
- package/esm2022/controls/upload/uploadmultiple.mjs +7 -3
- package/esm2022/controls/upload/uploadsingle.mjs +7 -3
- package/esm2022/controls/validation/validationsummary.mjs +16 -14
- package/esm2022/interfaces/ISacConfigurationService.mjs +3 -3
- package/esm2022/interfaces/ISacIconService.mjs +3 -3
- package/esm2022/interfaces/ISacLabelSizes.mjs +3 -3
- package/esm2022/public_api.mjs +4 -4
- package/esm2022/services/sac-configuration.service.mjs +26 -20
- package/esm2022/services/sac-icon.service.mjs +27 -17
- package/esm2022/utilities/testingattribute.pipe.mjs +12 -0
- package/fesm2022/simpleangularcontrols-sac-common.mjs +1294 -1183
- package/fesm2022/simpleangularcontrols-sac-common.mjs.map +1 -1
- package/interfaces/ISacConfigurationService.d.ts +16 -12
- package/interfaces/ISacConfigurationService.d.ts.map +1 -1
- package/interfaces/ISacIconService.d.ts +20 -0
- package/interfaces/ISacIconService.d.ts.map +1 -1
- package/interfaces/ISacLabelSizes.d.ts +12 -12
- package/interfaces/ISacLabelSizes.d.ts.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +1 -0
- package/public_api.d.ts.map +1 -1
- package/services/sac-configuration.service.d.ts +13 -5
- package/services/sac-configuration.service.d.ts.map +1 -1
- package/services/sac-icon.service.d.ts +40 -0
- package/services/sac-icon.service.d.ts.map +1 -1
- package/simpleangularcontrols-sac-common-16.0.0-rc.21.tgz +0 -0
- package/utilities/testingattribute.pipe.d.ts +16 -0
- package/utilities/testingattribute.pipe.d.ts.map +1 -0
- package/simpleangularcontrols-sac-common-16.0.0-rc.20.tgz +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
function cov_26w9goxoda(){var path="/home/runner/work/simpleangularcontrols/simpleangularcontrols/ch.jnetwork.sac-controls/dist/sac-common/esm2022/controls/grid/paging.mjs";var hash="d2c47903fc2369fc8a750e17443a9a0ca4ab3310";var global=new Function("return this")();var gcv="__coverage__";var coverageData={path:"/home/runner/work/simpleangularcontrols/simpleangularcontrols/ch.jnetwork.sac-controls/dist/sac-common/esm2022/controls/grid/paging.mjs",statementMap:{"0":{start:{line:21,column:8},end:{line:21,column:31}},"1":{start:{line:25,column:8},end:{line:25,column:38}},"2":{start:{line:31,column:8},end:{line:31,column:37}},"3":{start:{line:37,column:8},end:{line:37,column:31}},"4":{start:{line:43,column:8},end:{line:43,column:29}},"5":{start:{line:47,column:8},end:{line:47,column:41}},"6":{start:{line:51,column:8},end:{line:51,column:33}},"7":{start:{line:55,column:8},end:{line:55,column:32}},"8":{start:{line:59,column:8},end:{line:59,column:31}},"9":{start:{line:63,column:8},end:{line:63,column:27}},"10":{start:{line:67,column:8},end:{line:67,column:29}},"11":{start:{line:68,column:8},end:{line:68,column:113}},"12":{start:{line:70,column:8},end:{line:70,column:68}},"13":{start:{line:71,column:8},end:{line:71,column:65}},"14":{start:{line:72,column:8},end:{line:72,column:134}},"15":{start:{line:80,column:8},end:{line:84,column:9}},"16":{start:{line:81,column:12},end:{line:81,column:49}},"17":{start:{line:82,column:12},end:{line:82,column:54}},"18":{start:{line:83,column:12},end:{line:83,column:39}},"19":{start:{line:85,column:8},end:{line:85,column:27}},"20":{start:{line:91,column:8},end:{line:91,column:68}},"21":{start:{line:97,column:8},end:{line:100,column:11}},"22":{start:{line:106,column:8},end:{line:106,column:67}},"23":{start:{line:106,column:54},end:{line:106,column:65}},"24":{start:{line:115,column:8},end:{line:117,column:9}},"25":{start:{line:116,column:12},end:{line:116,column:37}},"26":{start:{line:124,column:26},end:{line:124,column:73}},"27":{start:{line:125,column:8},end:{line:125,column:36}},"28":{start:{line:131,column:8},end:{line:133,column:9}},"29":{start:{line:132,column:12},end:{line:132,column:26}},"30":{start:{line:139,column:8},end:{line:139,column:40}},"31":{start:{line:145,column:8},end:{line:145,column:38}},"32":{start:{line:151,column:8},end:{line:153,column:9}},"33":{start:{line:152,column:12},end:{line:152,column:43}},"34":{start:{line:159,column:8},end:{line:161,column:9}},"35":{start:{line:160,column:12},end:{line:160,column:49}},"36":{start:{line:167,column:8},end:{line:169,column:9}},"37":{start:{line:168,column:12},end:{line:168,column:49}},"38":{start:{line:177,column:8},end:{line:177,column:29}},"39":{start:{line:178,column:8},end:{line:198,column:9}},"40":{start:{line:179,column:33},end:{line:179,column:78}},"41":{start:{line:181,column:12},end:{line:183,column:13}},"42":{start:{line:182,column:16},end:{line:182,column:35}},"43":{start:{line:185,column:12},end:{line:185,column:52}},"44":{start:{line:186,column:35},end:{line:186,column:73}},"45":{start:{line:187,column:33},end:{line:187,column:69}},"46":{start:{line:189,column:12},end:{line:191,column:13}},"47":{start:{line:190,column:16},end:{line:190,column:58}},"48":{start:{line:192,column:12},end:{line:194,column:13}},"49":{start:{line:192,column:25},end:{line:192,column:39}},"50":{start:{line:193,column:16},end:{line:193,column:40}},"51":{start:{line:197,column:12},end:{line:197,column:36}},"52":{start:{line:205,column:34},end:{line:205,column:58}},"53":{start:{line:206,column:35},end:{line:206,column:82}},"54":{start:{line:207,column:8},end:{line:212,column:9}},"55":{start:{line:208,column:12},end:{line:208,column:53}},"56":{start:{line:210,column:13},end:{line:212,column:9}},"57":{start:{line:211,column:12},end:{line:211,column:53}},"58":{start:{line:213,column:8},end:{line:213,column:35}},"59":{start:{line:220,column:36},end:{line:220,column:37}},"60":{start:{line:221,column:8},end:{line:221,column:57}},"61":{start:{line:222,column:8},end:{line:224,column:9}},"62":{start:{line:223,column:12},end:{line:223,column:55}},"63":{start:{line:225,column:8},end:{line:227,column:9}},"64":{start:{line:226,column:12},end:{line:226,column:38}},"65":{start:{line:228,column:8},end:{line:228,column:37}},"66":{start:{line:234,column:26},end:{line:234,column:71}},"67":{start:{line:235,column:8},end:{line:235,column:36}},"68":{start:{line:237,column:13},end:{line:237,column:200}},"69":{start:{line:238,column:13},end:{line:238,column:331}},"70":{start:{line:241,column:0},end:{line:257,column:20}},"71":{start:{line:243,column:42},end:{line:243,column:73}}},fnMap:{"0":{name:"(anonymous_0)",decl:{start:{line:17,column:4},end:{line:17,column:5}},loc:{start:{line:17,column:26},end:{line:73,column:5}},line:17},"1":{name:"(anonymous_1)",decl:{start:{line:79,column:4},end:{line:79,column:5}},loc:{start:{line:79,column:21},end:{line:86,column:5}},line:79},"2":{name:"(anonymous_2)",decl:{start:{line:90,column:4},end:{line:90,column:5}},loc:{start:{line:90,column:23},end:{line:92,column:5}},line:90},"3":{name:"(anonymous_3)",decl:{start:{line:96,column:4},end:{line:96,column:5}},loc:{start:{line:96,column:21},end:{line:101,column:5}},line:96},"4":{name:"(anonymous_4)",decl:{start:{line:105,column:4},end:{line:105,column:5}},loc:{start:{line:105,column:23},end:{line:107,column:5}},line:105},"5":{name:"(anonymous_5)",decl:{start:{line:106,column:45},end:{line:106,column:46}},loc:{start:{line:106,column:54},end:{line:106,column:65}},line:106},"6":{name:"(anonymous_6)",decl:{start:{line:114,column:4},end:{line:114,column:5}},loc:{start:{line:114,column:29},end:{line:118,column:5}},line:114},"7":{name:"(anonymous_7)",decl:{start:{line:123,column:4},end:{line:123,column:5}},loc:{start:{line:123,column:28},end:{line:126,column:5}},line:123},"8":{name:"(anonymous_8)",decl:{start:{line:130,column:4},end:{line:130,column:5}},loc:{start:{line:130,column:16},end:{line:134,column:5}},line:130},"9":{name:"(anonymous_9)",decl:{start:{line:138,column:4},end:{line:138,column:5}},loc:{start:{line:138,column:27},end:{line:140,column:5}},line:138},"10":{name:"(anonymous_10)",decl:{start:{line:144,column:4},end:{line:144,column:5}},loc:{start:{line:144,column:25},end:{line:146,column:5}},line:144},"11":{name:"(anonymous_11)",decl:{start:{line:150,column:4},end:{line:150,column:5}},loc:{start:{line:150,column:15},end:{line:154,column:5}},line:150},"12":{name:"(anonymous_12)",decl:{start:{line:158,column:4},end:{line:158,column:5}},loc:{start:{line:158,column:15},end:{line:162,column:5}},line:158},"13":{name:"(anonymous_13)",decl:{start:{line:166,column:4},end:{line:166,column:5}},loc:{start:{line:166,column:19},end:{line:170,column:5}},line:166},"14":{name:"(anonymous_14)",decl:{start:{line:176,column:4},end:{line:176,column:5}},loc:{start:{line:176,column:18},end:{line:199,column:5}},line:176},"15":{name:"(anonymous_15)",decl:{start:{line:204,column:4},end:{line:204,column:5}},loc:{start:{line:204,column:36},end:{line:214,column:5}},line:204},"16":{name:"(anonymous_16)",decl:{start:{line:219,column:4},end:{line:219,column:5}},loc:{start:{line:219,column:38},end:{line:229,column:5}},line:219},"17":{name:"(anonymous_17)",decl:{start:{line:233,column:4},end:{line:233,column:5}},loc:{start:{line:233,column:24},end:{line:236,column:5}},line:233},"18":{name:"(anonymous_18)",decl:{start:{line:243,column:28},end:{line:243,column:29}},loc:{start:{line:243,column:40},end:{line:243,column:75}},line:243}},branchMap:{"0":{loc:{start:{line:80,column:8},end:{line:84,column:9}},type:"if",locations:[{start:{line:80,column:8},end:{line:84,column:9}},{start:{line:80,column:8},end:{line:84,column:9}}],line:80},"1":{loc:{start:{line:115,column:8},end:{line:117,column:9}},type:"if",locations:[{start:{line:115,column:8},end:{line:117,column:9}},{start:{line:115,column:8},end:{line:117,column:9}}],line:115},"2":{loc:{start:{line:131,column:8},end:{line:133,column:9}},type:"if",locations:[{start:{line:131,column:8},end:{line:133,column:9}},{start:{line:131,column:8},end:{line:133,column:9}}],line:131},"3":{loc:{start:{line:151,column:8},end:{line:153,column:9}},type:"if",locations:[{start:{line:151,column:8},end:{line:153,column:9}},{start:{line:151,column:8},end:{line:153,column:9}}],line:151},"4":{loc:{start:{line:159,column:8},end:{line:161,column:9}},type:"if",locations:[{start:{line:159,column:8},end:{line:161,column:9}},{start:{line:159,column:8},end:{line:161,column:9}}],line:159},"5":{loc:{start:{line:167,column:8},end:{line:169,column:9}},type:"if",locations:[{start:{line:167,column:8},end:{line:169,column:9}},{start:{line:167,column:8},end:{line:169,column:9}}],line:167},"6":{loc:{start:{line:178,column:8},end:{line:198,column:9}},type:"if",locations:[{start:{line:178,column:8},end:{line:198,column:9}},{start:{line:178,column:8},end:{line:198,column:9}}],line:178},"7":{loc:{start:{line:181,column:12},end:{line:183,column:13}},type:"if",locations:[{start:{line:181,column:12},end:{line:183,column:13}},{start:{line:181,column:12},end:{line:183,column:13}}],line:181},"8":{loc:{start:{line:189,column:12},end:{line:191,column:13}},type:"if",locations:[{start:{line:189,column:12},end:{line:191,column:13}},{start:{line:189,column:12},end:{line:191,column:13}}],line:189},"9":{loc:{start:{line:206,column:35},end:{line:206,column:82}},type:"cond-expr",locations:[{start:{line:206,column:60},end:{line:206,column:78}},{start:{line:206,column:81},end:{line:206,column:82}}],line:206},"10":{loc:{start:{line:207,column:8},end:{line:212,column:9}},type:"if",locations:[{start:{line:207,column:8},end:{line:212,column:9}},{start:{line:207,column:8},end:{line:212,column:9}}],line:207},"11":{loc:{start:{line:210,column:13},end:{line:212,column:9}},type:"if",locations:[{start:{line:210,column:13},end:{line:212,column:9}},{start:{line:210,column:13},end:{line:212,column:9}}],line:210},"12":{loc:{start:{line:222,column:8},end:{line:224,column:9}},type:"if",locations:[{start:{line:222,column:8},end:{line:224,column:9}},{start:{line:222,column:8},end:{line:224,column:9}}],line:222},"13":{loc:{start:{line:225,column:8},end:{line:227,column:9}},type:"if",locations:[{start:{line:225,column:8},end:{line:227,column:9}},{start:{line:225,column:8},end:{line:227,column:9}}],line:225}},s:{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0},f:{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0},b:{"0":[0,0],"1":[0,0],"2":[0,0],"3":[0,0],"4":[0,0],"5":[0,0],"6":[0,0],"7":[0,0],"8":[0,0],"9":[0,0],"10":[0,0],"11":[0,0],"12":[0,0],"13":[0,0]},inputSourceMap:{version:3,file:"paging.js",sourceRoot:"",sources:["../../../../../projects/sac-common/src/controls/grid/paging.ts"],names:[],mappings:"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",sourcesContent:["import {\n Directive,\n EventEmitter,\n Injector,\n Input,\n Output,\n} from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ISacLocalisationService } from '../../interfaces/ISacLocalisationService';\nimport { ISacValidationKeyService } from '../../interfaces/ISacValidationKeyService';\nimport {\n SACLOCALISATION_SERVICE,\n SacDefaultLocalisationService,\n} from '../../services/sac-localisation.service';\nimport {\n SACVALIDATIONKEY_SERVICE,\n SacDefaultValidationKeyService,\n} from '../../services/sac-validationkey.service';\nimport { PagerData, PagerRequest } from './model';\n\n/**\n * Basic component for paging\n */\n@Directive()\nexport abstract class SacPagingCommon {\n // #region Properties\n\n /**\n * Service to receive standard validation message keys and texts\n */\n private validationKeyService: ISacValidationKeyService;\n\n /**\n * Service for error localization\n */\n protected lngResourceService: ISacLocalisationService;\n /**\n * Total number of rows\n */\n protected totalRowCount: number = 0;\n\n /**\n * Name of the grid. Used for ID and name designations\n */\n @Input()\n public name: string;\n /**\n * Deactivate page size selection\n */\n @Input()\n public pagesizedisabled: boolean = false;\n /**\n * Text in Page for number of page elements per page. The following interpolation texts are available:\n *\n * {{PAGESIZE}}: Number of elements per page\n */\n @Input()\n public pagesizes: string = '20|50|100';\n /**\n * Text in Page for number of page elements per page. The following interpolation texts are available:\n *\n * {{PAGESIZE}}: Number of elements per page\n */\n @Input()\n public pagesizetext: string = '';\n /**\n * Text in pager for 'Page x of y'. The following interpolation texts are available:\n * {{CURRENTPAGE}}: Current page\n * {{TOTALPAGES}}: Number of pages\n */\n @Input()\n public pagingtext: string = '';\n /**\n * Event when the page is changed in the grid. The new PageIndex is given as a parameter.\n */\n @Output()\n public paging: EventEmitter<PagerRequest> = new EventEmitter<PagerRequest>();\n\n /**\n * Active page index\n */\n public activePageIndex: number = 0;\n /**\n * First page index\n */\n public firstPageIndex: number = 0;\n /**\n * Last page index\n */\n public lastPageIndex: number = 0;\n /**\n * Number of elements per page\n */\n public pageSize: number = 20;\n /**\n * Item for each paging element (page number)\n */\n public paginators: Array<any> = [];\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Constructor\n * @parent SacFormCommon\n * @injector Injector\n */\n constructor(injector: Injector) {\n this.validationKeyService = injector.get(\n SACVALIDATIONKEY_SERVICE,\n new SacDefaultValidationKeyService()\n );\n\n // Set Default Values from Injector\n this.pagesizetext = this.validationKeyService.PagingEntries;\n this.pagingtext = this.validationKeyService.PagingPageOf;\n\n this.lngResourceService = injector.get(\n SACLOCALISATION_SERVICE,\n new SacDefaultLocalisationService(this.validationKeyService)\n );\n }\n\n // #endregion Constructors\n\n // #region Public Getters And Setters\n\n /**\n * Property for Pager Data\n */\n @Input()\n public set pagerdata(p: PagerData) {\n if (p != null) {\n this.totalRowCount = p.TotalRowCount;\n this.activePageIndex = p.CurrentPageIndex;\n this.pageSize = p.PageSize;\n }\n\n this.createPager();\n }\n\n /**\n * Property with text for total entries in page\n */\n public get PageSizeText(): Observable<string> {\n return this.lngResourceService.GetString(this.pagesizetext);\n }\n\n /**\n * Text with current page and total pages\n */\n public get PagingText(): Observable<string> {\n return this.lngResourceService.GetString(this.pagingtext, {\n CURRENTPAGE: this.getCurrentPageNumber(),\n TOTALPAGES: this.getTotalPageNumber(),\n });\n }\n\n /**\n * Returns the page sizes as a number array\n */\n public get getPageSizes(): number[] {\n return this.pagesizes.split('|').map((itm) => Number(itm));\n }\n\n // #endregion Public Getters And Setters\n\n // #region Public Methods\n\n /**\n * Changes the page to the new index\n * @param newPageIndex Page index. This corresponds to the page number - 1.\n */\n public changePage(newPageIndex: number) {\n if (this.activePageIndex !== newPageIndex) {\n this.paged(newPageIndex);\n }\n }\n\n /**\n * Changes the page size in the pager\n * @param newSize New number of elements per page\n */\n public changePageSize(newSize: number) {\n const pagerData: PagerRequest = new PagerRequest(\n newSize,\n this.activePageIndex\n );\n this.paging.emit(pagerData);\n }\n\n /**\n *Switch to 1st page\n */\n public firstPage() {\n if (this.activePageIndex !== this.firstPageIndex) {\n this.paged(0);\n }\n }\n\n /**\n * Returns the current page number\n */\n public getCurrentPageNumber(): number {\n return this.activePageIndex + 1;\n }\n\n /**\n * Returns the total number of pages\n */\n public getTotalPageNumber(): number {\n return this.lastPageIndex + 1;\n }\n\n /**\n * Paging on last page\n */\n public lastPage() {\n if (this.activePageIndex !== this.lastPageIndex) {\n this.paged(this.lastPageIndex);\n }\n }\n\n /**\n * Paging to next page\n */\n public nextPage() {\n if (this.activePageIndex !== this.lastPageIndex) {\n this.paged(this.activePageIndex + 1);\n }\n }\n\n /**\n * Paging one page back\n */\n public previousPage() {\n if (this.activePageIndex !== this.firstPageIndex) {\n this.paged(this.activePageIndex - 1);\n }\n }\n\n // #endregion Public Methods\n\n // #region Protected Methods\n\n /**\n * Generates the pager data\n */\n protected createPager() {\n this.paginators = [];\n\n if (this.totalRowCount > 0) {\n let totalPageCount = Math.ceil(this.totalRowCount / this.pageSize);\n\n // PageCount auf 1 stellen, wenn keine Records vorhanden sind.\n if (totalPageCount === 0) {\n totalPageCount = 1;\n }\n\n // PageIndex berechnen\n this.lastPageIndex = totalPageCount - 1;\n const startPageIndex = this.getStartPageIndex(totalPageCount);\n const endPageIndex = this.getEndPageIndex(totalPageCount);\n\n // Index Fix wenn Aktive Seite gr\xF6sser als letze Seite\n if (this.activePageIndex > this.lastPageIndex) {\n this.activePageIndex = this.lastPageIndex;\n }\n\n for (let i = startPageIndex; i <= endPageIndex; i++) {\n this.paginators.push(i);\n }\n } else {\n this.paginators.push(0);\n }\n }\n\n /**\n * Returns the last page index.\n * @param totalPageCount Total number of pages\n */\n protected getEndPageIndex(totalPageCount: number): number {\n let endingPageToDisplay = this.activePageIndex + 2;\n const maxEndingPageIndex = 4 > totalPageCount - 1 ? totalPageCount - 1 : 4;\n\n if (endingPageToDisplay > totalPageCount - 1) {\n endingPageToDisplay = totalPageCount - 1;\n } else if (this.activePageIndex < 2) {\n endingPageToDisplay = maxEndingPageIndex;\n }\n return endingPageToDisplay;\n }\n\n /**\n * Returns the start index\n * @param totalPageCount Total number of pages\n */\n protected getStartPageIndex(totalPageCount: number): number {\n let startingPageToDisplay: number = 0;\n startingPageToDisplay = this.activePageIndex - 2;\n\n if (totalPageCount - this.activePageIndex - 1 < 2) {\n startingPageToDisplay = totalPageCount - 5;\n }\n\n if (startingPageToDisplay < 0) {\n startingPageToDisplay = 0;\n }\n return startingPageToDisplay;\n }\n\n /**\n * method triggers the event that paging has taken place\n */\n protected paged(newPageIndex: number) {\n const pagerData: PagerRequest = new PagerRequest(\n this.pageSize,\n newPageIndex\n );\n this.paging.emit(pagerData);\n }\n\n // #endregion Protected Methods\n}\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"d2c47903fc2369fc8a750e17443a9a0ca4ab3310"};var coverage=global[gcv]||(global[gcv]={});if(!coverage[path]||coverage[path].hash!==hash){coverage[path]=coverageData;}var actualCoverage=coverage[path];{// @ts-ignore
|
|
2
|
-
cov_26w9goxoda=function(){return actualCoverage;};}return actualCoverage;}cov_26w9goxoda();import{
|
|
1
|
+
function cov_26w9goxoda(){var path="/home/runner/work/simpleangularcontrols/simpleangularcontrols/ch.jnetwork.sac-controls/dist/sac-common/esm2022/controls/grid/paging.mjs";var hash="da889d46a85ba0da25896f8391fe241fa5a96664";var global=new Function("return this")();var gcv="__coverage__";var coverageData={path:"/home/runner/work/simpleangularcontrols/simpleangularcontrols/ch.jnetwork.sac-controls/dist/sac-common/esm2022/controls/grid/paging.mjs",statementMap:{"0":{start:{line:22,column:8},end:{line:22,column:31}},"1":{start:{line:26,column:8},end:{line:26,column:33}},"2":{start:{line:30,column:8},end:{line:30,column:34}},"3":{start:{line:34,column:8},end:{line:34,column:32}},"4":{start:{line:38,column:8},end:{line:38,column:31}},"5":{start:{line:42,column:8},end:{line:42,column:33}},"6":{start:{line:46,column:8},end:{line:46,column:27}},"7":{start:{line:50,column:8},end:{line:50,column:38}},"8":{start:{line:56,column:8},end:{line:56,column:37}},"9":{start:{line:62,column:8},end:{line:62,column:31}},"10":{start:{line:66,column:8},end:{line:66,column:29}},"11":{start:{line:70,column:8},end:{line:70,column:41}},"12":{start:{line:76,column:8},end:{line:76,column:29}},"13":{start:{line:77,column:8},end:{line:77,column:113}},"14":{start:{line:79,column:8},end:{line:79,column:68}},"15":{start:{line:80,column:8},end:{line:80,column:65}},"16":{start:{line:81,column:8},end:{line:81,column:134}},"17":{start:{line:89,column:8},end:{line:89,column:68}},"18":{start:{line:95,column:8},end:{line:98,column:11}},"19":{start:{line:104,column:8},end:{line:104,column:67}},"20":{start:{line:104,column:54},end:{line:104,column:65}},"21":{start:{line:110,column:8},end:{line:114,column:9}},"22":{start:{line:111,column:12},end:{line:111,column:49}},"23":{start:{line:112,column:12},end:{line:112,column:54}},"24":{start:{line:113,column:12},end:{line:113,column:39}},"25":{start:{line:115,column:8},end:{line:115,column:27}},"26":{start:{line:124,column:8},end:{line:126,column:9}},"27":{start:{line:125,column:12},end:{line:125,column:37}},"28":{start:{line:133,column:26},end:{line:133,column:73}},"29":{start:{line:134,column:8},end:{line:134,column:36}},"30":{start:{line:140,column:8},end:{line:142,column:9}},"31":{start:{line:141,column:12},end:{line:141,column:26}},"32":{start:{line:148,column:8},end:{line:148,column:40}},"33":{start:{line:154,column:8},end:{line:154,column:38}},"34":{start:{line:160,column:8},end:{line:162,column:9}},"35":{start:{line:161,column:12},end:{line:161,column:43}},"36":{start:{line:168,column:8},end:{line:170,column:9}},"37":{start:{line:169,column:12},end:{line:169,column:49}},"38":{start:{line:176,column:8},end:{line:178,column:9}},"39":{start:{line:177,column:12},end:{line:177,column:49}},"40":{start:{line:186,column:8},end:{line:186,column:29}},"41":{start:{line:187,column:8},end:{line:207,column:9}},"42":{start:{line:188,column:33},end:{line:188,column:78}},"43":{start:{line:190,column:12},end:{line:192,column:13}},"44":{start:{line:191,column:16},end:{line:191,column:35}},"45":{start:{line:194,column:12},end:{line:194,column:52}},"46":{start:{line:195,column:35},end:{line:195,column:73}},"47":{start:{line:196,column:33},end:{line:196,column:69}},"48":{start:{line:198,column:12},end:{line:200,column:13}},"49":{start:{line:199,column:16},end:{line:199,column:58}},"50":{start:{line:201,column:12},end:{line:203,column:13}},"51":{start:{line:201,column:25},end:{line:201,column:39}},"52":{start:{line:202,column:16},end:{line:202,column:40}},"53":{start:{line:206,column:12},end:{line:206,column:36}},"54":{start:{line:214,column:34},end:{line:214,column:58}},"55":{start:{line:215,column:35},end:{line:215,column:82}},"56":{start:{line:216,column:8},end:{line:221,column:9}},"57":{start:{line:217,column:12},end:{line:217,column:53}},"58":{start:{line:219,column:13},end:{line:221,column:9}},"59":{start:{line:220,column:12},end:{line:220,column:53}},"60":{start:{line:222,column:8},end:{line:222,column:35}},"61":{start:{line:229,column:36},end:{line:229,column:37}},"62":{start:{line:230,column:8},end:{line:230,column:57}},"63":{start:{line:231,column:8},end:{line:233,column:9}},"64":{start:{line:232,column:12},end:{line:232,column:55}},"65":{start:{line:234,column:8},end:{line:236,column:9}},"66":{start:{line:235,column:12},end:{line:235,column:38}},"67":{start:{line:237,column:8},end:{line:237,column:37}},"68":{start:{line:243,column:26},end:{line:243,column:71}},"69":{start:{line:244,column:8},end:{line:244,column:36}},"70":{start:{line:246,column:13},end:{line:246,column:200}},"71":{start:{line:247,column:13},end:{line:247,column:363}},"72":{start:{line:250,column:0},end:{line:268,column:20}},"73":{start:{line:252,column:42},end:{line:252,column:73}}},fnMap:{"0":{name:"(anonymous_0)",decl:{start:{line:18,column:4},end:{line:18,column:5}},loc:{start:{line:18,column:26},end:{line:82,column:5}},line:18},"1":{name:"(anonymous_1)",decl:{start:{line:88,column:4},end:{line:88,column:5}},loc:{start:{line:88,column:23},end:{line:90,column:5}},line:88},"2":{name:"(anonymous_2)",decl:{start:{line:94,column:4},end:{line:94,column:5}},loc:{start:{line:94,column:21},end:{line:99,column:5}},line:94},"3":{name:"(anonymous_3)",decl:{start:{line:103,column:4},end:{line:103,column:5}},loc:{start:{line:103,column:23},end:{line:105,column:5}},line:103},"4":{name:"(anonymous_4)",decl:{start:{line:104,column:45},end:{line:104,column:46}},loc:{start:{line:104,column:54},end:{line:104,column:65}},line:104},"5":{name:"(anonymous_5)",decl:{start:{line:109,column:4},end:{line:109,column:5}},loc:{start:{line:109,column:21},end:{line:116,column:5}},line:109},"6":{name:"(anonymous_6)",decl:{start:{line:123,column:4},end:{line:123,column:5}},loc:{start:{line:123,column:29},end:{line:127,column:5}},line:123},"7":{name:"(anonymous_7)",decl:{start:{line:132,column:4},end:{line:132,column:5}},loc:{start:{line:132,column:28},end:{line:135,column:5}},line:132},"8":{name:"(anonymous_8)",decl:{start:{line:139,column:4},end:{line:139,column:5}},loc:{start:{line:139,column:16},end:{line:143,column:5}},line:139},"9":{name:"(anonymous_9)",decl:{start:{line:147,column:4},end:{line:147,column:5}},loc:{start:{line:147,column:27},end:{line:149,column:5}},line:147},"10":{name:"(anonymous_10)",decl:{start:{line:153,column:4},end:{line:153,column:5}},loc:{start:{line:153,column:25},end:{line:155,column:5}},line:153},"11":{name:"(anonymous_11)",decl:{start:{line:159,column:4},end:{line:159,column:5}},loc:{start:{line:159,column:15},end:{line:163,column:5}},line:159},"12":{name:"(anonymous_12)",decl:{start:{line:167,column:4},end:{line:167,column:5}},loc:{start:{line:167,column:15},end:{line:171,column:5}},line:167},"13":{name:"(anonymous_13)",decl:{start:{line:175,column:4},end:{line:175,column:5}},loc:{start:{line:175,column:19},end:{line:179,column:5}},line:175},"14":{name:"(anonymous_14)",decl:{start:{line:185,column:4},end:{line:185,column:5}},loc:{start:{line:185,column:18},end:{line:208,column:5}},line:185},"15":{name:"(anonymous_15)",decl:{start:{line:213,column:4},end:{line:213,column:5}},loc:{start:{line:213,column:36},end:{line:223,column:5}},line:213},"16":{name:"(anonymous_16)",decl:{start:{line:228,column:4},end:{line:228,column:5}},loc:{start:{line:228,column:38},end:{line:238,column:5}},line:228},"17":{name:"(anonymous_17)",decl:{start:{line:242,column:4},end:{line:242,column:5}},loc:{start:{line:242,column:24},end:{line:245,column:5}},line:242},"18":{name:"(anonymous_18)",decl:{start:{line:252,column:28},end:{line:252,column:29}},loc:{start:{line:252,column:40},end:{line:252,column:75}},line:252}},branchMap:{"0":{loc:{start:{line:110,column:8},end:{line:114,column:9}},type:"if",locations:[{start:{line:110,column:8},end:{line:114,column:9}},{start:{line:110,column:8},end:{line:114,column:9}}],line:110},"1":{loc:{start:{line:124,column:8},end:{line:126,column:9}},type:"if",locations:[{start:{line:124,column:8},end:{line:126,column:9}},{start:{line:124,column:8},end:{line:126,column:9}}],line:124},"2":{loc:{start:{line:140,column:8},end:{line:142,column:9}},type:"if",locations:[{start:{line:140,column:8},end:{line:142,column:9}},{start:{line:140,column:8},end:{line:142,column:9}}],line:140},"3":{loc:{start:{line:160,column:8},end:{line:162,column:9}},type:"if",locations:[{start:{line:160,column:8},end:{line:162,column:9}},{start:{line:160,column:8},end:{line:162,column:9}}],line:160},"4":{loc:{start:{line:168,column:8},end:{line:170,column:9}},type:"if",locations:[{start:{line:168,column:8},end:{line:170,column:9}},{start:{line:168,column:8},end:{line:170,column:9}}],line:168},"5":{loc:{start:{line:176,column:8},end:{line:178,column:9}},type:"if",locations:[{start:{line:176,column:8},end:{line:178,column:9}},{start:{line:176,column:8},end:{line:178,column:9}}],line:176},"6":{loc:{start:{line:187,column:8},end:{line:207,column:9}},type:"if",locations:[{start:{line:187,column:8},end:{line:207,column:9}},{start:{line:187,column:8},end:{line:207,column:9}}],line:187},"7":{loc:{start:{line:190,column:12},end:{line:192,column:13}},type:"if",locations:[{start:{line:190,column:12},end:{line:192,column:13}},{start:{line:190,column:12},end:{line:192,column:13}}],line:190},"8":{loc:{start:{line:198,column:12},end:{line:200,column:13}},type:"if",locations:[{start:{line:198,column:12},end:{line:200,column:13}},{start:{line:198,column:12},end:{line:200,column:13}}],line:198},"9":{loc:{start:{line:215,column:35},end:{line:215,column:82}},type:"cond-expr",locations:[{start:{line:215,column:60},end:{line:215,column:78}},{start:{line:215,column:81},end:{line:215,column:82}}],line:215},"10":{loc:{start:{line:216,column:8},end:{line:221,column:9}},type:"if",locations:[{start:{line:216,column:8},end:{line:221,column:9}},{start:{line:216,column:8},end:{line:221,column:9}}],line:216},"11":{loc:{start:{line:219,column:13},end:{line:221,column:9}},type:"if",locations:[{start:{line:219,column:13},end:{line:221,column:9}},{start:{line:219,column:13},end:{line:221,column:9}}],line:219},"12":{loc:{start:{line:231,column:8},end:{line:233,column:9}},type:"if",locations:[{start:{line:231,column:8},end:{line:233,column:9}},{start:{line:231,column:8},end:{line:233,column:9}}],line:231},"13":{loc:{start:{line:234,column:8},end:{line:236,column:9}},type:"if",locations:[{start:{line:234,column:8},end:{line:236,column:9}},{start:{line:234,column:8},end:{line:236,column:9}}],line:234}},s:{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0},f:{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0},b:{"0":[0,0],"1":[0,0],"2":[0,0],"3":[0,0],"4":[0,0],"5":[0,0],"6":[0,0],"7":[0,0],"8":[0,0],"9":[0,0],"10":[0,0],"11":[0,0],"12":[0,0],"13":[0,0]},inputSourceMap:{version:3,file:"paging.js",sourceRoot:"",sources:["../../../../../projects/sac-common/src/controls/grid/paging.ts"],names:[],mappings:"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",sourcesContent:["import { ISacLocalisationService } from '../../interfaces/ISacLocalisationService';\nimport { ISacValidationKeyService } from '../../interfaces/ISacValidationKeyService';\nimport { SACLOCALISATION_SERVICE, SacDefaultLocalisationService } from '../../services/sac-localisation.service';\nimport { SACVALIDATIONKEY_SERVICE, SacDefaultValidationKeyService } from '../../services/sac-validationkey.service';\nimport { createGuid } from '../../utilities/guid';\nimport { PagerData, PagerRequest } from './model';\nimport { Directive, EventEmitter, Injector, Input, Output } from '@angular/core';\nimport { Observable } from 'rxjs';\n\n/**\n * Basic component for paging\n */\n@Directive()\nexport abstract class SacPagingCommon {\n // #region Properties\n\n /**\n * Service to receive standard validation message keys and texts\n */\n private validationKeyService: ISacValidationKeyService;\n\n /**\n * Service for error localization\n */\n protected lngResourceService: ISacLocalisationService;\n\n /**\n * Total number of rows\n */\n protected totalRowCount: number = 0;\n\n /**\n * Active page index\n */\n public activePageIndex: number = 0;\n\n /**\n * Identifier used for the E2E data attribute.\n */\n @Input()\n public e2eidentifier: string | null = null;\n\n /**\n * First page index\n */\n public firstPageIndex: number = 0;\n\n /**\n * Last page index\n */\n public lastPageIndex: number = 0;\n\n /**\n * name of control\n */\n @Input()\n public name: string = createGuid();\n\n /**\n * Number of elements per page\n */\n public pageSize: number = 20;\n\n /**\n * Deactivate page size selection\n */\n @Input()\n public pagesizedisabled: boolean = false;\n\n /**\n * Text in Page for number of page elements per page. The following interpolation texts are available:\n *\n * {{PAGESIZE}}: Number of elements per page\n */\n @Input()\n public pagesizes: string = '20|50|100';\n\n /**\n * Text in Page for number of page elements per page. The following interpolation texts are available:\n *\n * {{PAGESIZE}}: Number of elements per page\n */\n @Input()\n public pagesizetext: string = '';\n\n /**\n * Item for each paging element (page number)\n */\n public paginators: Array<any> = [];\n\n /**\n * Event when the page is changed in the grid. The new PageIndex is given as a parameter.\n */\n @Output()\n public paging: EventEmitter<PagerRequest> = new EventEmitter<PagerRequest>();\n\n /**\n * Text in pager for 'Page x of y'. The following interpolation texts are available:\n * {{CURRENTPAGE}}: Current page\n * {{TOTALPAGES}}: Number of pages\n */\n @Input()\n public pagingtext: string = '';\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Constructor\n * @parent SacFormCommon\n * @injector Injector\n */\n constructor(injector: Injector) {\n this.validationKeyService = injector.get(\n SACVALIDATIONKEY_SERVICE,\n new SacDefaultValidationKeyService()\n );\n\n // Set Default Values from Injector\n this.pagesizetext = this.validationKeyService.PagingEntries;\n this.pagingtext = this.validationKeyService.PagingPageOf;\n\n this.lngResourceService = injector.get(\n SACLOCALISATION_SERVICE,\n new SacDefaultLocalisationService(this.validationKeyService)\n );\n }\n\n // #endregion Constructors\n\n // #region Public Getters And Setters\n\n /**\n * Property with text for total entries in page\n */\n public get PageSizeText(): Observable<string> {\n return this.lngResourceService.GetString(this.pagesizetext);\n }\n\n /**\n * Text with current page and total pages\n */\n public get PagingText(): Observable<string> {\n return this.lngResourceService.GetString(this.pagingtext, {\n CURRENTPAGE: this.getCurrentPageNumber(),\n TOTALPAGES: this.getTotalPageNumber(),\n });\n }\n\n /**\n * Returns the page sizes as a number array\n */\n public get getPageSizes(): number[] {\n return this.pagesizes.split('|').map((itm) => Number(itm));\n }\n\n /**\n * Property for Pager Data\n */\n @Input()\n public set pagerdata(p: PagerData) {\n if (p != null) {\n this.totalRowCount = p.TotalRowCount;\n this.activePageIndex = p.CurrentPageIndex;\n this.pageSize = p.PageSize;\n }\n\n this.createPager();\n }\n\n // #endregion Public Getters And Setters\n\n // #region Public Methods\n\n /**\n * Changes the page to the new index\n * @param newPageIndex Page index. This corresponds to the page number - 1.\n */\n public changePage(newPageIndex: number) {\n if (this.activePageIndex !== newPageIndex) {\n this.paged(newPageIndex);\n }\n }\n\n /**\n * Changes the page size in the pager\n * @param newSize New number of elements per page\n */\n public changePageSize(newSize: number) {\n const pagerData: PagerRequest = new PagerRequest(\n newSize,\n this.activePageIndex\n );\n this.paging.emit(pagerData);\n }\n\n /**\n *Switch to 1st page\n */\n public firstPage() {\n if (this.activePageIndex !== this.firstPageIndex) {\n this.paged(0);\n }\n }\n\n /**\n * Returns the current page number\n */\n public getCurrentPageNumber(): number {\n return this.activePageIndex + 1;\n }\n\n /**\n * Returns the total number of pages\n */\n public getTotalPageNumber(): number {\n return this.lastPageIndex + 1;\n }\n\n /**\n * Paging on last page\n */\n public lastPage() {\n if (this.activePageIndex !== this.lastPageIndex) {\n this.paged(this.lastPageIndex);\n }\n }\n\n /**\n * Paging to next page\n */\n public nextPage() {\n if (this.activePageIndex !== this.lastPageIndex) {\n this.paged(this.activePageIndex + 1);\n }\n }\n\n /**\n * Paging one page back\n */\n public previousPage() {\n if (this.activePageIndex !== this.firstPageIndex) {\n this.paged(this.activePageIndex - 1);\n }\n }\n\n // #endregion Public Methods\n\n // #region Protected Methods\n\n /**\n * Generates the pager data\n */\n protected createPager() {\n this.paginators = [];\n\n if (this.totalRowCount > 0) {\n let totalPageCount = Math.ceil(this.totalRowCount / this.pageSize);\n\n // PageCount auf 1 stellen, wenn keine Records vorhanden sind.\n if (totalPageCount === 0) {\n totalPageCount = 1;\n }\n\n // PageIndex berechnen\n this.lastPageIndex = totalPageCount - 1;\n const startPageIndex = this.getStartPageIndex(totalPageCount);\n const endPageIndex = this.getEndPageIndex(totalPageCount);\n\n // Index Fix wenn Aktive Seite gr\xF6sser als letze Seite\n if (this.activePageIndex > this.lastPageIndex) {\n this.activePageIndex = this.lastPageIndex;\n }\n\n for (let i = startPageIndex; i <= endPageIndex; i++) {\n this.paginators.push(i);\n }\n } else {\n this.paginators.push(0);\n }\n }\n\n /**\n * Returns the last page index.\n * @param totalPageCount Total number of pages\n */\n protected getEndPageIndex(totalPageCount: number): number {\n let endingPageToDisplay = this.activePageIndex + 2;\n const maxEndingPageIndex = 4 > totalPageCount - 1 ? totalPageCount - 1 : 4;\n\n if (endingPageToDisplay > totalPageCount - 1) {\n endingPageToDisplay = totalPageCount - 1;\n } else if (this.activePageIndex < 2) {\n endingPageToDisplay = maxEndingPageIndex;\n }\n return endingPageToDisplay;\n }\n\n /**\n * Returns the start index\n * @param totalPageCount Total number of pages\n */\n protected getStartPageIndex(totalPageCount: number): number {\n let startingPageToDisplay: number = 0;\n startingPageToDisplay = this.activePageIndex - 2;\n\n if (totalPageCount - this.activePageIndex - 1 < 2) {\n startingPageToDisplay = totalPageCount - 5;\n }\n\n if (startingPageToDisplay < 0) {\n startingPageToDisplay = 0;\n }\n return startingPageToDisplay;\n }\n\n /**\n * method triggers the event that paging has taken place\n */\n protected paged(newPageIndex: number) {\n const pagerData: PagerRequest = new PagerRequest(\n this.pageSize,\n newPageIndex\n );\n this.paging.emit(pagerData);\n }\n\n // #endregion Protected Methods\n}\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"da889d46a85ba0da25896f8391fe241fa5a96664"};var coverage=global[gcv]||(global[gcv]={});if(!coverage[path]||coverage[path].hash!==hash){coverage[path]=coverageData;}var actualCoverage=coverage[path];{// @ts-ignore
|
|
2
|
+
cov_26w9goxoda=function(){return actualCoverage;};}return actualCoverage;}cov_26w9goxoda();import{SACLOCALISATION_SERVICE,SacDefaultLocalisationService}from'../../services/sac-localisation.service';import{SACVALIDATIONKEY_SERVICE,SacDefaultValidationKeyService}from'../../services/sac-validationkey.service';import{createGuid}from'../../utilities/guid';import{PagerRequest}from'./model';import{Directive,EventEmitter,Input,Output}from'@angular/core';import*as i0 from"@angular/core";/**
|
|
3
3
|
* Basic component for paging
|
|
4
4
|
*/class SacPagingCommon{// #endregion Properties
|
|
5
5
|
// #region Constructors
|
|
@@ -10,76 +10,80 @@ cov_26w9goxoda=function(){return actualCoverage;};}return actualCoverage;}cov_26
|
|
|
10
10
|
*/constructor(injector){cov_26w9goxoda().f[0]++;cov_26w9goxoda().s[0]++;/**
|
|
11
11
|
* Total number of rows
|
|
12
12
|
*/this.totalRowCount=0;/**
|
|
13
|
+
* Active page index
|
|
14
|
+
*/cov_26w9goxoda().s[1]++;this.activePageIndex=0;/**
|
|
15
|
+
* Identifier used for the E2E data attribute.
|
|
16
|
+
*/cov_26w9goxoda().s[2]++;this.e2eidentifier=null;/**
|
|
17
|
+
* First page index
|
|
18
|
+
*/cov_26w9goxoda().s[3]++;this.firstPageIndex=0;/**
|
|
19
|
+
* Last page index
|
|
20
|
+
*/cov_26w9goxoda().s[4]++;this.lastPageIndex=0;/**
|
|
21
|
+
* name of control
|
|
22
|
+
*/cov_26w9goxoda().s[5]++;this.name=createGuid();/**
|
|
23
|
+
* Number of elements per page
|
|
24
|
+
*/cov_26w9goxoda().s[6]++;this.pageSize=20;/**
|
|
13
25
|
* Deactivate page size selection
|
|
14
|
-
*/cov_26w9goxoda().s[
|
|
26
|
+
*/cov_26w9goxoda().s[7]++;this.pagesizedisabled=false;/**
|
|
15
27
|
* Text in Page for number of page elements per page. The following interpolation texts are available:
|
|
16
28
|
*
|
|
17
29
|
* {{PAGESIZE}}: Number of elements per page
|
|
18
|
-
*/cov_26w9goxoda().s[
|
|
30
|
+
*/cov_26w9goxoda().s[8]++;this.pagesizes='20|50|100';/**
|
|
19
31
|
* Text in Page for number of page elements per page. The following interpolation texts are available:
|
|
20
32
|
*
|
|
21
33
|
* {{PAGESIZE}}: Number of elements per page
|
|
22
|
-
*/cov_26w9goxoda().s[
|
|
34
|
+
*/cov_26w9goxoda().s[9]++;this.pagesizetext='';/**
|
|
35
|
+
* Item for each paging element (page number)
|
|
36
|
+
*/cov_26w9goxoda().s[10]++;this.paginators=[];/**
|
|
37
|
+
* Event when the page is changed in the grid. The new PageIndex is given as a parameter.
|
|
38
|
+
*/cov_26w9goxoda().s[11]++;this.paging=new EventEmitter();/**
|
|
23
39
|
* Text in pager for 'Page x of y'. The following interpolation texts are available:
|
|
24
40
|
* {{CURRENTPAGE}}: Current page
|
|
25
41
|
* {{TOTALPAGES}}: Number of pages
|
|
26
|
-
*/cov_26w9goxoda().s[
|
|
27
|
-
|
|
28
|
-
*/cov_26w9goxoda().s[5]++;this.paging=new EventEmitter();/**
|
|
29
|
-
* Active page index
|
|
30
|
-
*/cov_26w9goxoda().s[6]++;this.activePageIndex=0;/**
|
|
31
|
-
* First page index
|
|
32
|
-
*/cov_26w9goxoda().s[7]++;this.firstPageIndex=0;/**
|
|
33
|
-
* Last page index
|
|
34
|
-
*/cov_26w9goxoda().s[8]++;this.lastPageIndex=0;/**
|
|
35
|
-
* Number of elements per page
|
|
36
|
-
*/cov_26w9goxoda().s[9]++;this.pageSize=20;/**
|
|
37
|
-
* Item for each paging element (page number)
|
|
38
|
-
*/cov_26w9goxoda().s[10]++;this.paginators=[];cov_26w9goxoda().s[11]++;this.validationKeyService=injector.get(SACVALIDATIONKEY_SERVICE,new SacDefaultValidationKeyService());// Set Default Values from Injector
|
|
39
|
-
cov_26w9goxoda().s[12]++;this.pagesizetext=this.validationKeyService.PagingEntries;cov_26w9goxoda().s[13]++;this.pagingtext=this.validationKeyService.PagingPageOf;cov_26w9goxoda().s[14]++;this.lngResourceService=injector.get(SACLOCALISATION_SERVICE,new SacDefaultLocalisationService(this.validationKeyService));}// #endregion Constructors
|
|
42
|
+
*/cov_26w9goxoda().s[12]++;this.pagingtext='';cov_26w9goxoda().s[13]++;this.validationKeyService=injector.get(SACVALIDATIONKEY_SERVICE,new SacDefaultValidationKeyService());// Set Default Values from Injector
|
|
43
|
+
cov_26w9goxoda().s[14]++;this.pagesizetext=this.validationKeyService.PagingEntries;cov_26w9goxoda().s[15]++;this.pagingtext=this.validationKeyService.PagingPageOf;cov_26w9goxoda().s[16]++;this.lngResourceService=injector.get(SACLOCALISATION_SERVICE,new SacDefaultLocalisationService(this.validationKeyService));}// #endregion Constructors
|
|
40
44
|
// #region Public Getters And Setters
|
|
41
45
|
/**
|
|
42
|
-
* Property for Pager Data
|
|
43
|
-
*/set pagerdata(p){cov_26w9goxoda().f[1]++;cov_26w9goxoda().s[15]++;if(p!=null){cov_26w9goxoda().b[0][0]++;cov_26w9goxoda().s[16]++;this.totalRowCount=p.TotalRowCount;cov_26w9goxoda().s[17]++;this.activePageIndex=p.CurrentPageIndex;cov_26w9goxoda().s[18]++;this.pageSize=p.PageSize;}else{cov_26w9goxoda().b[0][1]++;}cov_26w9goxoda().s[19]++;this.createPager();}/**
|
|
44
46
|
* Property with text for total entries in page
|
|
45
|
-
*/get PageSizeText(){cov_26w9goxoda().f[
|
|
47
|
+
*/get PageSizeText(){cov_26w9goxoda().f[1]++;cov_26w9goxoda().s[17]++;return this.lngResourceService.GetString(this.pagesizetext);}/**
|
|
46
48
|
* Text with current page and total pages
|
|
47
|
-
*/get PagingText(){cov_26w9goxoda().f[
|
|
49
|
+
*/get PagingText(){cov_26w9goxoda().f[2]++;cov_26w9goxoda().s[18]++;return this.lngResourceService.GetString(this.pagingtext,{CURRENTPAGE:this.getCurrentPageNumber(),TOTALPAGES:this.getTotalPageNumber()});}/**
|
|
48
50
|
* Returns the page sizes as a number array
|
|
49
|
-
*/get getPageSizes(){cov_26w9goxoda().f[
|
|
51
|
+
*/get getPageSizes(){cov_26w9goxoda().f[3]++;cov_26w9goxoda().s[19]++;return this.pagesizes.split('|').map(itm=>{cov_26w9goxoda().f[4]++;cov_26w9goxoda().s[20]++;return Number(itm);});}/**
|
|
52
|
+
* Property for Pager Data
|
|
53
|
+
*/set pagerdata(p){cov_26w9goxoda().f[5]++;cov_26w9goxoda().s[21]++;if(p!=null){cov_26w9goxoda().b[0][0]++;cov_26w9goxoda().s[22]++;this.totalRowCount=p.TotalRowCount;cov_26w9goxoda().s[23]++;this.activePageIndex=p.CurrentPageIndex;cov_26w9goxoda().s[24]++;this.pageSize=p.PageSize;}else{cov_26w9goxoda().b[0][1]++;}cov_26w9goxoda().s[25]++;this.createPager();}// #endregion Public Getters And Setters
|
|
50
54
|
// #region Public Methods
|
|
51
55
|
/**
|
|
52
56
|
* Changes the page to the new index
|
|
53
57
|
* @param newPageIndex Page index. This corresponds to the page number - 1.
|
|
54
|
-
*/changePage(newPageIndex){cov_26w9goxoda().f[6]++;cov_26w9goxoda().s[
|
|
58
|
+
*/changePage(newPageIndex){cov_26w9goxoda().f[6]++;cov_26w9goxoda().s[26]++;if(this.activePageIndex!==newPageIndex){cov_26w9goxoda().b[1][0]++;cov_26w9goxoda().s[27]++;this.paged(newPageIndex);}else{cov_26w9goxoda().b[1][1]++;}}/**
|
|
55
59
|
* Changes the page size in the pager
|
|
56
60
|
* @param newSize New number of elements per page
|
|
57
|
-
*/changePageSize(newSize){cov_26w9goxoda().f[7]++;const pagerData=(cov_26w9goxoda().s[
|
|
61
|
+
*/changePageSize(newSize){cov_26w9goxoda().f[7]++;const pagerData=(cov_26w9goxoda().s[28]++,new PagerRequest(newSize,this.activePageIndex));cov_26w9goxoda().s[29]++;this.paging.emit(pagerData);}/**
|
|
58
62
|
*Switch to 1st page
|
|
59
|
-
*/firstPage(){cov_26w9goxoda().f[8]++;cov_26w9goxoda().s[
|
|
63
|
+
*/firstPage(){cov_26w9goxoda().f[8]++;cov_26w9goxoda().s[30]++;if(this.activePageIndex!==this.firstPageIndex){cov_26w9goxoda().b[2][0]++;cov_26w9goxoda().s[31]++;this.paged(0);}else{cov_26w9goxoda().b[2][1]++;}}/**
|
|
60
64
|
* Returns the current page number
|
|
61
|
-
*/getCurrentPageNumber(){cov_26w9goxoda().f[9]++;cov_26w9goxoda().s[
|
|
65
|
+
*/getCurrentPageNumber(){cov_26w9goxoda().f[9]++;cov_26w9goxoda().s[32]++;return this.activePageIndex+1;}/**
|
|
62
66
|
* Returns the total number of pages
|
|
63
|
-
*/getTotalPageNumber(){cov_26w9goxoda().f[10]++;cov_26w9goxoda().s[
|
|
67
|
+
*/getTotalPageNumber(){cov_26w9goxoda().f[10]++;cov_26w9goxoda().s[33]++;return this.lastPageIndex+1;}/**
|
|
64
68
|
* Paging on last page
|
|
65
|
-
*/lastPage(){cov_26w9goxoda().f[11]++;cov_26w9goxoda().s[
|
|
69
|
+
*/lastPage(){cov_26w9goxoda().f[11]++;cov_26w9goxoda().s[34]++;if(this.activePageIndex!==this.lastPageIndex){cov_26w9goxoda().b[3][0]++;cov_26w9goxoda().s[35]++;this.paged(this.lastPageIndex);}else{cov_26w9goxoda().b[3][1]++;}}/**
|
|
66
70
|
* Paging to next page
|
|
67
|
-
*/nextPage(){cov_26w9goxoda().f[12]++;cov_26w9goxoda().s[
|
|
71
|
+
*/nextPage(){cov_26w9goxoda().f[12]++;cov_26w9goxoda().s[36]++;if(this.activePageIndex!==this.lastPageIndex){cov_26w9goxoda().b[4][0]++;cov_26w9goxoda().s[37]++;this.paged(this.activePageIndex+1);}else{cov_26w9goxoda().b[4][1]++;}}/**
|
|
68
72
|
* Paging one page back
|
|
69
|
-
*/previousPage(){cov_26w9goxoda().f[13]++;cov_26w9goxoda().s[
|
|
73
|
+
*/previousPage(){cov_26w9goxoda().f[13]++;cov_26w9goxoda().s[38]++;if(this.activePageIndex!==this.firstPageIndex){cov_26w9goxoda().b[5][0]++;cov_26w9goxoda().s[39]++;this.paged(this.activePageIndex-1);}else{cov_26w9goxoda().b[5][1]++;}}// #endregion Public Methods
|
|
70
74
|
// #region Protected Methods
|
|
71
75
|
/**
|
|
72
76
|
* Generates the pager data
|
|
73
|
-
*/createPager(){cov_26w9goxoda().f[14]++;cov_26w9goxoda().s[
|
|
74
|
-
cov_26w9goxoda().s[
|
|
75
|
-
cov_26w9goxoda().s[
|
|
76
|
-
cov_26w9goxoda().s[
|
|
77
|
+
*/createPager(){cov_26w9goxoda().f[14]++;cov_26w9goxoda().s[40]++;this.paginators=[];cov_26w9goxoda().s[41]++;if(this.totalRowCount>0){cov_26w9goxoda().b[6][0]++;let totalPageCount=(cov_26w9goxoda().s[42]++,Math.ceil(this.totalRowCount/this.pageSize));// PageCount auf 1 stellen, wenn keine Records vorhanden sind.
|
|
78
|
+
cov_26w9goxoda().s[43]++;if(totalPageCount===0){cov_26w9goxoda().b[7][0]++;cov_26w9goxoda().s[44]++;totalPageCount=1;}else{cov_26w9goxoda().b[7][1]++;}// PageIndex berechnen
|
|
79
|
+
cov_26w9goxoda().s[45]++;this.lastPageIndex=totalPageCount-1;const startPageIndex=(cov_26w9goxoda().s[46]++,this.getStartPageIndex(totalPageCount));const endPageIndex=(cov_26w9goxoda().s[47]++,this.getEndPageIndex(totalPageCount));// Index Fix wenn Aktive Seite grösser als letze Seite
|
|
80
|
+
cov_26w9goxoda().s[48]++;if(this.activePageIndex>this.lastPageIndex){cov_26w9goxoda().b[8][0]++;cov_26w9goxoda().s[49]++;this.activePageIndex=this.lastPageIndex;}else{cov_26w9goxoda().b[8][1]++;}cov_26w9goxoda().s[50]++;for(let i=(cov_26w9goxoda().s[51]++,startPageIndex);i<=endPageIndex;i++){cov_26w9goxoda().s[52]++;this.paginators.push(i);}}else{cov_26w9goxoda().b[6][1]++;cov_26w9goxoda().s[53]++;this.paginators.push(0);}}/**
|
|
77
81
|
* Returns the last page index.
|
|
78
82
|
* @param totalPageCount Total number of pages
|
|
79
|
-
*/getEndPageIndex(totalPageCount){cov_26w9goxoda().f[15]++;let endingPageToDisplay=(cov_26w9goxoda().s[
|
|
83
|
+
*/getEndPageIndex(totalPageCount){cov_26w9goxoda().f[15]++;let endingPageToDisplay=(cov_26w9goxoda().s[54]++,this.activePageIndex+2);const maxEndingPageIndex=(cov_26w9goxoda().s[55]++,4>totalPageCount-1?(cov_26w9goxoda().b[9][0]++,totalPageCount-1):(cov_26w9goxoda().b[9][1]++,4));cov_26w9goxoda().s[56]++;if(endingPageToDisplay>totalPageCount-1){cov_26w9goxoda().b[10][0]++;cov_26w9goxoda().s[57]++;endingPageToDisplay=totalPageCount-1;}else{cov_26w9goxoda().b[10][1]++;cov_26w9goxoda().s[58]++;if(this.activePageIndex<2){cov_26w9goxoda().b[11][0]++;cov_26w9goxoda().s[59]++;endingPageToDisplay=maxEndingPageIndex;}else{cov_26w9goxoda().b[11][1]++;}}cov_26w9goxoda().s[60]++;return endingPageToDisplay;}/**
|
|
80
84
|
* Returns the start index
|
|
81
85
|
* @param totalPageCount Total number of pages
|
|
82
|
-
*/getStartPageIndex(totalPageCount){cov_26w9goxoda().f[16]++;let startingPageToDisplay=(cov_26w9goxoda().s[
|
|
86
|
+
*/getStartPageIndex(totalPageCount){cov_26w9goxoda().f[16]++;let startingPageToDisplay=(cov_26w9goxoda().s[61]++,0);cov_26w9goxoda().s[62]++;startingPageToDisplay=this.activePageIndex-2;cov_26w9goxoda().s[63]++;if(totalPageCount-this.activePageIndex-1<2){cov_26w9goxoda().b[12][0]++;cov_26w9goxoda().s[64]++;startingPageToDisplay=totalPageCount-5;}else{cov_26w9goxoda().b[12][1]++;}cov_26w9goxoda().s[65]++;if(startingPageToDisplay<0){cov_26w9goxoda().b[13][0]++;cov_26w9goxoda().s[66]++;startingPageToDisplay=0;}else{cov_26w9goxoda().b[13][1]++;}cov_26w9goxoda().s[67]++;return startingPageToDisplay;}/**
|
|
83
87
|
* method triggers the event that paging has taken place
|
|
84
|
-
*/paged(newPageIndex){cov_26w9goxoda().f[17]++;const pagerData=(cov_26w9goxoda().s[66]++,new PagerRequest(this.pageSize,newPageIndex));cov_26w9goxoda().s[67]++;this.paging.emit(pagerData);}static{cov_26w9goxoda().s[68]++;this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"16.2.12",ngImport:i0,type:SacPagingCommon,deps:[{token:i0.Injector}],target:i0.ɵɵFactoryTarget.Directive});}static{cov_26w9goxoda().s[69]++;this.ɵdir=i0.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"16.2.12",type:SacPagingCommon,inputs:{name:"name",pagesizedisabled:"pagesizedisabled",pagesizes:"pagesizes",pagesizetext:"pagesizetext",pagingtext:"pagingtext",pagerdata:"pagerdata"},outputs:{paging:"paging"},ngImport:i0});}}export{SacPagingCommon};cov_26w9goxoda().s[70]++;i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"16.2.12",ngImport:i0,type:SacPagingCommon,decorators:[{type:Directive}],ctorParameters:function(){cov_26w9goxoda().f[18]++;cov_26w9goxoda().s[71]++;return[{type:i0.Injector}];},propDecorators:{name:[{type:Input}],pagesizedisabled:[{type:Input}],pagesizes:[{type:Input}],pagesizetext:[{type:Input}],pagingtext:[{type:Input}],paging:[{type:Output}],pagerdata:[{type:Input}]}});//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29udHJvbHMvZ3JpZC9wYWdpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBRVosS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLDZCQUE2QixHQUM5QixNQUFNLHlDQUF5QyxDQUFDO0FBQ2pELE9BQU8sRUFDTCx3QkFBd0IsRUFDeEIsOEJBQThCLEdBQy9CLE1BQU0sMENBQTBDLENBQUM7QUFDbEQsT0FBTyxFQUFhLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFFbEQ7O0dBRUc7QUFDSCxNQUNzQixlQUFlO0lBMkVuQyx3QkFBd0I7SUFFeEIsdUJBQXVCO0lBRXZCOzs7O09BSUc7SUFDSCxZQUFZLFFBQWtCO1FBeEU5Qjs7V0FFRztRQUNPLGtCQUFhLEdBQVcsQ0FBQyxDQUFDO1FBT3BDOztXQUVHO1FBRUkscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBQ3pDOzs7O1dBSUc7UUFFSSxjQUFTLEdBQVcsV0FBVyxDQUFDO1FBQ3ZDOzs7O1dBSUc7UUFFSSxpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQUNqQzs7OztXQUlHO1FBRUksZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUMvQjs7V0FFRztRQUVJLFdBQU0sR0FBK0IsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFFN0U7O1dBRUc7UUFDSSxvQkFBZSxHQUFXLENBQUMsQ0FBQztRQUNuQzs7V0FFRztRQUNJLG1CQUFjLEdBQVcsQ0FBQyxDQUFDO1FBQ2xDOztXQUVHO1FBQ0ksa0JBQWEsR0FBVyxDQUFDLENBQUM7UUFDakM7O1dBRUc7UUFDSSxhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQzdCOztXQUVHO1FBQ0ksZUFBVSxHQUFlLEVBQUUsQ0FBQztRQVlq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O0lBQ08sS0FBSyxDQUFDLFlBQW9CO1FBQ2xDLE1BQU0sU0FBUyxHQUFpQixJQUFJLFlBQVksQ0FDOUMsSUFBSSxDQUFDLFFBQVEsRUFDYixZQUFZLENBQ2IsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7K0dBelNtQixlQUFlO21HQUFmLGVBQWU7O1NBQWYsZUFBZTs0RkFBZixlQUFlO2tCQURwQyxTQUFTOytGQXNCRCxJQUFJO3NCQURWLEtBQUs7Z0JBTUMsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQVFDLFNBQVM7c0JBRGYsS0FBSztnQkFRQyxZQUFZO3NCQURsQixLQUFLO2dCQVFDLFVBQVU7c0JBRGhCLEtBQUs7Z0JBTUMsTUFBTTtzQkFEWixNQUFNO2dCQXlESSxTQUFTO3NCQURuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFdmVudEVtaXR0ZXIsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElTYWNMb2NhbGlzYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JU2FjTG9jYWxpc2F0aW9uU2VydmljZSc7XG5pbXBvcnQgeyBJU2FjVmFsaWRhdGlvbktleVNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNWYWxpZGF0aW9uS2V5U2VydmljZSc7XG5pbXBvcnQge1xuICBTQUNMT0NBTElTQVRJT05fU0VSVklDRSxcbiAgU2FjRGVmYXVsdExvY2FsaXNhdGlvblNlcnZpY2UsXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhYy1sb2NhbGlzYXRpb24uc2VydmljZSc7XG5pbXBvcnQge1xuICBTQUNWQUxJREFUSU9OS0VZX1NFUlZJQ0UsXG4gIFNhY0RlZmF1bHRWYWxpZGF0aW9uS2V5U2VydmljZSxcbn0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2FjLXZhbGlkYXRpb25rZXkuc2VydmljZSc7XG5pbXBvcnQgeyBQYWdlckRhdGEsIFBhZ2VyUmVxdWVzdCB9IGZyb20gJy4vbW9kZWwnO1xuXG4vKipcbiAqIEJhc2ljIGNvbXBvbmVudCBmb3IgcGFnaW5nXG4gKi9cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFNhY1BhZ2luZ0NvbW1vbiB7XG4gIC8vICNyZWdpb24gUHJvcGVydGllc1xuXG4gIC8qKlxuICAgKiBTZXJ2aWNlIHRvIHJlY2VpdmUgc3RhbmRhcmQgdmFsaWRhdGlvbiBtZXNzYWdlIGtleXMgYW5kIHRleHRzXG4gICAqL1xuICBwcml2YXRlIHZhbGlkYXRpb25LZXlTZXJ2aWNlOiBJU2FjVmFsaWRhdGlvbktleVNlcnZpY2U7XG5cbiAgLyoqXG4gICAqIFNlcnZpY2UgZm9yIGVycm9yIGxvY2FsaXphdGlvblxuICAgKi9cbiAgcHJvdGVjdGVkIGxuZ1Jlc291cmNlU2VydmljZTogSVNhY0xvY2FsaXNhdGlvblNlcnZpY2U7XG4gIC8qKlxuICAgKiBUb3RhbCBudW1iZXIgb2Ygcm93c1xuICAgKi9cbiAgcHJvdGVjdGVkIHRvdGFsUm93Q291bnQ6IG51bWJlciA9IDA7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGdyaWQuIFVzZWQgZm9yIElEIGFuZCBuYW1lIGRlc2lnbmF0aW9uc1xuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIERlYWN0aXZhdGUgcGFnZSBzaXplIHNlbGVjdGlvblxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHBhZ2VzaXplZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgLyoqXG4gICAqIFRleHQgaW4gUGFnZSBmb3IgbnVtYmVyIG9mIHBhZ2UgZWxlbWVudHMgcGVyIHBhZ2UuIFRoZSBmb2xsb3dpbmcgaW50ZXJwb2xhdGlvbiB0ZXh0cyBhcmUgYXZhaWxhYmxlOlxuICAgKlxuICAgKiB7e1BBR0VTSVpFfX06IE51bWJlciBvZiBlbGVtZW50cyBwZXIgcGFnZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHBhZ2VzaXplczogc3RyaW5nID0gJzIwfDUwfDEwMCc7XG4gIC8qKlxuICAgKiBUZXh0IGluIFBhZ2UgZm9yIG51bWJlciBvZiBwYWdlIGVsZW1lbnRzIHBlciBwYWdlLiBUaGUgZm9sbG93aW5nIGludGVycG9sYXRpb24gdGV4dHMgYXJlIGF2YWlsYWJsZTpcbiAgICpcbiAgICoge3tQQUdFU0laRX19OiBOdW1iZXIgb2YgZWxlbWVudHMgcGVyIHBhZ2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdlc2l6ZXRleHQ6IHN0cmluZyA9ICcnO1xuICAvKipcbiAgICogVGV4dCBpbiBwYWdlciBmb3IgJ1BhZ2UgeCBvZiB5Jy4gVGhlIGZvbGxvd2luZyBpbnRlcnBvbGF0aW9uIHRleHRzIGFyZSBhdmFpbGFibGU6XG4gICAqIHt7Q1VSUkVOVFBBR0V9fTogQ3VycmVudCBwYWdlXG4gICAqIHt7VE9UQUxQQUdFU319OiBOdW1iZXIgb2YgcGFnZXNcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdpbmd0ZXh0OiBzdHJpbmcgPSAnJztcbiAgLyoqXG4gICAqIEV2ZW50IHdoZW4gdGhlIHBhZ2UgaXMgY2hhbmdlZCBpbiB0aGUgZ3JpZC4gVGhlIG5ldyBQYWdlSW5kZXggaXMgZ2l2ZW4gYXMgYSBwYXJhbWV0ZXIuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHBhZ2luZzogRXZlbnRFbWl0dGVyPFBhZ2VyUmVxdWVzdD4gPSBuZXcgRXZlbnRFbWl0dGVyPFBhZ2VyUmVxdWVzdD4oKTtcblxuICAvKipcbiAgICogQWN0aXZlIHBhZ2UgaW5kZXhcbiAgICovXG4gIHB1YmxpYyBhY3RpdmVQYWdlSW5kZXg6IG51bWJlciA9IDA7XG4gIC8qKlxuICAgKiBGaXJzdCBwYWdlIGluZGV4XG4gICAqL1xuICBwdWJsaWMgZmlyc3RQYWdlSW5kZXg6IG51bWJlciA9IDA7XG4gIC8qKlxuICAgKiBMYXN0IHBhZ2UgaW5kZXhcbiAgICovXG4gIHB1YmxpYyBsYXN0UGFnZUluZGV4OiBudW1iZXIgPSAwO1xuICAvKipcbiAgICogTnVtYmVyIG9mIGVsZW1lbnRzIHBlciBwYWdlXG4gICAqL1xuICBwdWJsaWMgcGFnZVNpemU6IG51bWJlciA9IDIwO1xuICAvKipcbiAgICogSXRlbSBmb3IgZWFjaCBwYWdpbmcgZWxlbWVudCAocGFnZSBudW1iZXIpXG4gICAqL1xuICBwdWJsaWMgcGFnaW5hdG9yczogQXJyYXk8YW55PiA9IFtdO1xuXG4gIC8vICNlbmRyZWdpb24gUHJvcGVydGllc1xuXG4gIC8vICNyZWdpb24gQ29uc3RydWN0b3JzXG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdG9yXG4gICAqIEBwYXJlbnQgU2FjRm9ybUNvbW1vblxuICAgKiBAaW5qZWN0b3IgSW5qZWN0b3JcbiAgICovXG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHRoaXMudmFsaWRhdGlvbktleVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXG4gICAgICBTQUNWQUxJREFUSU9OS0VZX1NFUlZJQ0UsXG4gICAgICBuZXcgU2FjRGVmYXVsdFZhbGlkYXRpb25LZXlTZXJ2aWNlKClcbiAgICApO1xuXG4gICAgLy8gU2V0IERlZmF1bHQgVmFsdWVzIGZyb20gSW5qZWN0b3JcbiAgICB0aGlzLnBhZ2VzaXpldGV4dCA9IHRoaXMudmFsaWRhdGlvbktleVNlcnZpY2UuUGFnaW5nRW50cmllcztcbiAgICB0aGlzLnBhZ2luZ3RleHQgPSB0aGlzLnZhbGlkYXRpb25LZXlTZXJ2aWNlLlBhZ2luZ1BhZ2VPZjtcblxuICAgIHRoaXMubG5nUmVzb3VyY2VTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFxuICAgICAgU0FDTE9DQUxJU0FUSU9OX1NFUlZJQ0UsXG4gICAgICBuZXcgU2FjRGVmYXVsdExvY2FsaXNhdGlvblNlcnZpY2UodGhpcy52YWxpZGF0aW9uS2V5U2VydmljZSlcbiAgICApO1xuICB9XG5cbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcblxuICAvLyAjcmVnaW9uIFB1YmxpYyBHZXR0ZXJzIEFuZCBTZXR0ZXJzXG5cbiAgLyoqXG4gICAqIFByb3BlcnR5IGZvciBQYWdlciBEYXRhXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHBhZ2VyZGF0YShwOiBQYWdlckRhdGEpIHtcbiAgICBpZiAocCAhPSBudWxsKSB7XG4gICAgICB0aGlzLnRvdGFsUm93Q291bnQgPSBwLlRvdGFsUm93Q291bnQ7XG4gICAgICB0aGlzLmFjdGl2ZVBhZ2VJbmRleCA9IHAuQ3VycmVudFBhZ2VJbmRleDtcbiAgICAgIHRoaXMucGFnZVNpemUgPSBwLlBhZ2VTaXplO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlUGFnZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcm9wZXJ0eSB3aXRoIHRleHQgZm9yIHRvdGFsIGVudHJpZXMgaW4gcGFnZVxuICAgKi9cbiAgcHVibGljIGdldCBQYWdlU2l6ZVRleHQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5sbmdSZXNvdXJjZVNlcnZpY2UuR2V0U3RyaW5nKHRoaXMucGFnZXNpemV0ZXh0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUZXh0IHdpdGggY3VycmVudCBwYWdlIGFuZCB0b3RhbCBwYWdlc1xuICAgKi9cbiAgcHVibGljIGdldCBQYWdpbmdUZXh0KCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMubG5nUmVzb3VyY2VTZXJ2aWNlLkdldFN0cmluZyh0aGlzLnBhZ2luZ3RleHQsIHtcbiAgICAgIENVUlJFTlRQQUdFOiB0aGlzLmdldEN1cnJlbnRQYWdlTnVtYmVyKCksXG4gICAgICBUT1RBTFBBR0VTOiB0aGlzLmdldFRvdGFsUGFnZU51bWJlcigpLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHBhZ2Ugc2l6ZXMgYXMgYSBudW1iZXIgYXJyYXlcbiAgICovXG4gIHB1YmxpYyBnZXQgZ2V0UGFnZVNpemVzKCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gdGhpcy5wYWdlc2l6ZXMuc3BsaXQoJ3wnKS5tYXAoKGl0bSkgPT4gTnVtYmVyKGl0bSkpO1xuICB9XG5cbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xuXG4gIC8vICNyZWdpb24gUHVibGljIE1ldGhvZHNcblxuICAvKipcbiAgICogQ2hhbmdlcyB0aGUgcGFnZSB0byB0aGUgbmV3IGluZGV4XG4gICAqIEBwYXJhbSBuZXdQYWdlSW5kZXggUGFnZSBpbmRleC4gVGhpcyBjb3JyZXNwb25kcyB0byB0aGUgcGFnZSBudW1iZXIgLSAxLlxuICAgKi9cbiAgcHVibGljIGNoYW5nZVBhZ2UobmV3UGFnZUluZGV4OiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5hY3RpdmVQYWdlSW5kZXggIT09IG5ld1BhZ2VJbmRleCkge1xuICAgICAgdGhpcy5wYWdlZChuZXdQYWdlSW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDaGFuZ2VzIHRoZSBwYWdlIHNpemUgaW4gdGhlIHBhZ2VyXG4gICAqIEBwYXJhbSBuZXdTaXplIE5ldyBudW1iZXIgb2YgZWxlbWVudHMgcGVyIHBhZ2VcbiAgICovXG4gIHB1YmxpYyBjaGFuZ2VQYWdlU2l6ZShuZXdTaXplOiBudW1iZXIpIHtcbiAgICBjb25zdCBwYWdlckRhdGE6IFBhZ2VyUmVxdWVzdCA9IG5ldyBQYWdlclJlcXVlc3QoXG4gICAgICBuZXdTaXplLFxuICAgICAgdGhpcy5hY3RpdmVQYWdlSW5kZXhcbiAgICApO1xuICAgIHRoaXMucGFnaW5nLmVtaXQocGFnZXJEYXRhKTtcbiAgfVxuXG4gIC8qKlxuICAgKlN3aXRjaCB0byAxc3QgcGFnZVxuICAgKi9cbiAgcHVibGljIGZpcnN0UGFnZSgpIHtcbiAgICBpZiAodGhpcy5hY3RpdmVQYWdlSW5kZXggIT09IHRoaXMuZmlyc3RQYWdlSW5kZXgpIHtcbiAgICAgIHRoaXMucGFnZWQoMCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXJcbiAgICovXG4gIHB1YmxpYyBnZXRDdXJyZW50UGFnZU51bWJlcigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZVBhZ2VJbmRleCArIDE7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdG90YWwgbnVtYmVyIG9mIHBhZ2VzXG4gICAqL1xuICBwdWJsaWMgZ2V0VG90YWxQYWdlTnVtYmVyKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMubGFzdFBhZ2VJbmRleCArIDE7XG4gIH1cblxuICAvKipcbiAgICogUGFnaW5nIG9uIGxhc3QgcGFnZVxuICAgKi9cbiAgcHVibGljIGxhc3RQYWdlKCkge1xuICAgIGlmICh0aGlzLmFjdGl2ZVBhZ2VJbmRleCAhPT0gdGhpcy5sYXN0UGFnZUluZGV4KSB7XG4gICAgICB0aGlzLnBhZ2VkKHRoaXMubGFzdFBhZ2VJbmRleCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFBhZ2luZyB0byBuZXh0IHBhZ2VcbiAgICovXG4gIHB1YmxpYyBuZXh0UGFnZSgpIHtcbiAgICBpZiAodGhpcy5hY3RpdmVQYWdlSW5kZXggIT09IHRoaXMubGFzdFBhZ2VJbmRleCkge1xuICAgICAgdGhpcy5wYWdlZCh0aGlzLmFjdGl2ZVBhZ2VJbmRleCArIDEpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBQYWdpbmcgb25lIHBhZ2UgYmFja1xuICAgKi9cbiAgcHVibGljIHByZXZpb3VzUGFnZSgpIHtcbiAgICBpZiAodGhpcy5hY3RpdmVQYWdlSW5kZXggIT09IHRoaXMuZmlyc3RQYWdlSW5kZXgpIHtcbiAgICAgIHRoaXMucGFnZWQodGhpcy5hY3RpdmVQYWdlSW5kZXggLSAxKTtcbiAgICB9XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBNZXRob2RzXG5cbiAgLy8gI3JlZ2lvbiBQcm90ZWN0ZWQgTWV0aG9kc1xuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZXMgdGhlIHBhZ2VyIGRhdGFcbiAgICovXG4gIHByb3RlY3RlZCBjcmVhdGVQYWdlcigpIHtcbiAgICB0aGlzLnBhZ2luYXRvcnMgPSBbXTtcblxuICAgIGlmICh0aGlzLnRvdGFsUm93Q291bnQgPiAwKSB7XG4gICAgICBsZXQgdG90YWxQYWdlQ291bnQgPSBNYXRoLmNlaWwodGhpcy50b3RhbFJvd0NvdW50IC8gdGhpcy5wYWdlU2l6ZSk7XG5cbiAgICAgIC8vIFBhZ2VDb3VudCBhdWYgMSBzdGVsbGVuLCB3ZW5uIGtlaW5lIFJlY29yZHMgdm9yaGFuZGVuIHNpbmQuXG4gICAgICBpZiAodG90YWxQYWdlQ291bnQgPT09IDApIHtcbiAgICAgICAgdG90YWxQYWdlQ291bnQgPSAxO1xuICAgICAgfVxuXG4gICAgICAvLyBQYWdlSW5kZXggYmVyZWNobmVuXG4gICAgICB0aGlzLmxhc3RQYWdlSW5kZXggPSB0b3RhbFBhZ2VDb3VudCAtIDE7XG4gICAgICBjb25zdCBzdGFydFBhZ2VJbmRleCA9IHRoaXMuZ2V0U3RhcnRQYWdlSW5kZXgodG90YWxQYWdlQ291bnQpO1xuICAgICAgY29uc3QgZW5kUGFnZUluZGV4ID0gdGhpcy5nZXRFbmRQYWdlSW5kZXgodG90YWxQYWdlQ291bnQpO1xuXG4gICAgICAvLyBJbmRleCBGaXggd2VubiBBa3RpdmUgU2VpdGUgZ3LDtnNzZXIgYWxzIGxldHplIFNlaXRlXG4gICAgICBpZiAodGhpcy5hY3RpdmVQYWdlSW5kZXggPiB0aGlzLmxhc3RQYWdlSW5kZXgpIHtcbiAgICAgICAgdGhpcy5hY3RpdmVQYWdlSW5kZXggPSB0aGlzLmxhc3RQYWdlSW5kZXg7XG4gICAgICB9XG5cbiAgICAgIGZvciAobGV0IGkgPSBzdGFydFBhZ2VJbmRleDsgaSA8PSBlbmRQYWdlSW5kZXg7IGkrKykge1xuICAgICAgICB0aGlzLnBhZ2luYXRvcnMucHVzaChpKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5wYWdpbmF0b3JzLnB1c2goMCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGxhc3QgcGFnZSBpbmRleC5cbiAgICogQHBhcmFtIHRvdGFsUGFnZUNvdW50IFRvdGFsIG51bWJlciBvZiBwYWdlc1xuICAgKi9cbiAgcHJvdGVjdGVkIGdldEVuZFBhZ2VJbmRleCh0b3RhbFBhZ2VDb3VudDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBsZXQgZW5kaW5nUGFnZVRvRGlzcGxheSA9IHRoaXMuYWN0aXZlUGFnZUluZGV4ICsgMjtcbiAgICBjb25zdCBtYXhFbmRpbmdQYWdlSW5kZXggPSA0ID4gdG90YWxQYWdlQ291bnQgLSAxID8gdG90YWxQYWdlQ291bnQgLSAxIDogNDtcblxuICAgIGlmIChlbmRpbmdQYWdlVG9EaXNwbGF5ID4gdG90YWxQYWdlQ291bnQgLSAxKSB7XG4gICAgICBlbmRpbmdQYWdlVG9EaXNwbGF5ID0gdG90YWxQYWdlQ291bnQgLSAxO1xuICAgIH0gZWxzZSBpZiAodGhpcy5hY3RpdmVQYWdlSW5kZXggPCAyKSB7XG4gICAgICBlbmRpbmdQYWdlVG9EaXNwbGF5ID0gbWF4RW5kaW5nUGFnZUluZGV4O1xuICAgIH1cbiAgICByZXR1cm4gZW5kaW5nUGFnZVRvRGlzcGxheTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBzdGFydCBpbmRleFxuICAgKiBAcGFyYW0gdG90YWxQYWdlQ291bnQgVG90YWwgbnVtYmVyIG9mIHBhZ2VzXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0U3RhcnRQYWdlSW5kZXgodG90YWxQYWdlQ291bnQ6IG51bWJlcik6IG51bWJlciB7XG4gICAgbGV0IHN0YXJ0aW5nUGFnZVRvRGlzcGxheTogbnVtYmVyID0gMDtcbiAgICBzdGFydGluZ1BhZ2VUb0Rpc3BsYXkgPSB0aGlzLmFjdGl2ZVBhZ2VJbmRleCAtIDI7XG5cbiAgICBpZiAodG90YWxQYWdlQ291bnQgLSB0aGlzLmFjdGl2ZVBhZ2VJbmRleCAtIDEgPCAyKSB7XG4gICAgICBzdGFydGluZ1BhZ2VUb0Rpc3BsYXkgPSB0b3RhbFBhZ2VDb3VudCAtIDU7XG4gICAgfVxuXG4gICAgaWYgKHN0YXJ0aW5nUGFnZVRvRGlzcGxheSA8IDApIHtcbiAgICAgIHN0YXJ0aW5nUGFnZVRvRGlzcGxheSA9IDA7XG4gICAgfVxuICAgIHJldHVybiBzdGFydGluZ1BhZ2VUb0Rpc3BsYXk7XG4gIH1cblxuICAvKipcbiAgICogbWV0aG9kIHRyaWdnZXJzIHRoZSBldmVudCB0aGF0IHBhZ2luZyBoYXMgdGFrZW4gcGxhY2VcbiAgICovXG4gIHByb3RlY3RlZCBwYWdlZChuZXdQYWdlSW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IHBhZ2VyRGF0YTogUGFnZXJSZXF1ZXN0ID0gbmV3IFBhZ2VyUmVxdWVzdChcbiAgICAgIHRoaXMucGFnZVNpemUsXG4gICAgICBuZXdQYWdlSW5kZXhcbiAgICApO1xuICAgIHRoaXMucGFnaW5nLmVtaXQocGFnZXJEYXRhKTtcbiAgfVxuXG4gIC8vICNlbmRyZWdpb24gUHJvdGVjdGVkIE1ldGhvZHNcbn1cbiJdfQ==
|
|
85
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb3ZfMjZ3OWdveG9kYSIsImFjdHVhbENvdmVyYWdlIiwiRGlyZWN0aXZlIiwiRXZlbnRFbWl0dGVyIiwiSW5wdXQiLCJPdXRwdXQiLCJTQUNMT0NBTElTQVRJT05fU0VSVklDRSIsIlNhY0RlZmF1bHRMb2NhbGlzYXRpb25TZXJ2aWNlIiwiU0FDVkFMSURBVElPTktFWV9TRVJWSUNFIiwiU2FjRGVmYXVsdFZhbGlkYXRpb25LZXlTZXJ2aWNlIiwiUGFnZXJSZXF1ZXN0IiwiU2FjUGFnaW5nQ29tbW9uIiwiY29uc3RydWN0b3IiLCJpbmplY3RvciIsImYiLCJzIiwidG90YWxSb3dDb3VudCIsInBhZ2VzaXplZGlzYWJsZWQiLCJwYWdlc2l6ZXMiLCJwYWdlc2l6ZXRleHQiLCJwYWdpbmd0ZXh0IiwicGFnaW5nIiwiYWN0aXZlUGFnZUluZGV4IiwiZmlyc3RQYWdlSW5kZXgiLCJsYXN0UGFnZUluZGV4IiwicGFnZVNpemUiLCJwYWdpbmF0b3JzIiwidmFsaWRhdGlvbktleVNlcnZpY2UiLCJnZXQiLCJQYWdpbmdFbnRyaWVzIiwiUGFnaW5nUGFnZU9mIiwibG5nUmVzb3VyY2VTZXJ2aWNlIiwicGFnZXJkYXRhIiwicCIsImIiLCJUb3RhbFJvd0NvdW50IiwiQ3VycmVudFBhZ2VJbmRleCIsIlBhZ2VTaXplIiwiY3JlYXRlUGFnZXIiLCJQYWdlU2l6ZVRleHQiLCJHZXRTdHJpbmciLCJQYWdpbmdUZXh0IiwiQ1VSUkVOVFBBR0UiLCJnZXRDdXJyZW50UGFnZU51bWJlciIsIlRPVEFMUEFHRVMiLCJnZXRUb3RhbFBhZ2VOdW1iZXIiLCJnZXRQYWdlU2l6ZXMiLCJzcGxpdCIsIm1hcCIsIml0bSIsIk51bWJlciIsImNoYW5nZVBhZ2UiLCJuZXdQYWdlSW5kZXgiLCJwYWdlZCIsImNoYW5nZVBhZ2VTaXplIiwibmV3U2l6ZSIsInBhZ2VyRGF0YSIsImVtaXQiLCJmaXJzdFBhZ2UiLCJsYXN0UGFnZSIsIm5leHRQYWdlIiwicHJldmlvdXNQYWdlIiwidG90YWxQYWdlQ291bnQiLCJNYXRoIiwiY2VpbCIsInN0YXJ0UGFnZUluZGV4IiwiZ2V0U3RhcnRQYWdlSW5kZXgiLCJlbmRQYWdlSW5kZXgiLCJnZXRFbmRQYWdlSW5kZXgiLCJpIiwicHVzaCIsImVuZGluZ1BhZ2VUb0Rpc3BsYXkiLCJtYXhFbmRpbmdQYWdlSW5kZXgiLCJzdGFydGluZ1BhZ2VUb0Rpc3BsYXkiLCJkZXBzIiwidG9rZW4iLCJpMCIsIkluamVjdG9yIiwidGFyZ2V0IiwiybXJtUZhY3RvcnlUYXJnZXQiLCJpbnB1dHMiLCJuYW1lIiwib3V0cHV0cyIsIm5nSW1wb3J0IiwiZGVjb3JhdG9ycyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbnRyb2xzL2dyaWQvcGFnaW5nLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJU2FjTG9jYWxpc2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVNhY0xvY2FsaXNhdGlvblNlcnZpY2UnO1xuaW1wb3J0IHsgSVNhY1ZhbGlkYXRpb25LZXlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JU2FjVmFsaWRhdGlvbktleVNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgU0FDTE9DQUxJU0FUSU9OX1NFUlZJQ0UsXG4gIFNhY0RlZmF1bHRMb2NhbGlzYXRpb25TZXJ2aWNlLFxufSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYWMtbG9jYWxpc2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgU0FDVkFMSURBVElPTktFWV9TRVJWSUNFLFxuICBTYWNEZWZhdWx0VmFsaWRhdGlvbktleVNlcnZpY2UsXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhYy12YWxpZGF0aW9ua2V5LnNlcnZpY2UnO1xuaW1wb3J0IHsgUGFnZXJEYXRhLCBQYWdlclJlcXVlc3QgfSBmcm9tICcuL21vZGVsJztcblxuLyoqXG4gKiBCYXNpYyBjb21wb25lbnQgZm9yIHBhZ2luZ1xuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTYWNQYWdpbmdDb21tb24ge1xuICAvLyAjcmVnaW9uIFByb3BlcnRpZXNcblxuICAvKipcbiAgICogU2VydmljZSB0byByZWNlaXZlIHN0YW5kYXJkIHZhbGlkYXRpb24gbWVzc2FnZSBrZXlzIGFuZCB0ZXh0c1xuICAgKi9cbiAgcHJpdmF0ZSB2YWxpZGF0aW9uS2V5U2VydmljZTogSVNhY1ZhbGlkYXRpb25LZXlTZXJ2aWNlO1xuXG4gIC8qKlxuICAgKiBTZXJ2aWNlIGZvciBlcnJvciBsb2NhbGl6YXRpb25cbiAgICovXG4gIHByb3RlY3RlZCBsbmdSZXNvdXJjZVNlcnZpY2U6IElTYWNMb2NhbGlzYXRpb25TZXJ2aWNlO1xuICAvKipcbiAgICogVG90YWwgbnVtYmVyIG9mIHJvd3NcbiAgICovXG4gIHByb3RlY3RlZCB0b3RhbFJvd0NvdW50OiBudW1iZXIgPSAwO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBncmlkLiBVc2VkIGZvciBJRCBhbmQgbmFtZSBkZXNpZ25hdGlvbnNcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEZWFjdGl2YXRlIHBhZ2Ugc2l6ZSBzZWxlY3Rpb25cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdlc2l6ZWRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIC8qKlxuICAgKiBUZXh0IGluIFBhZ2UgZm9yIG51bWJlciBvZiBwYWdlIGVsZW1lbnRzIHBlciBwYWdlLiBUaGUgZm9sbG93aW5nIGludGVycG9sYXRpb24gdGV4dHMgYXJlIGF2YWlsYWJsZTpcbiAgICpcbiAgICoge3tQQUdFU0laRX19OiBOdW1iZXIgb2YgZWxlbWVudHMgcGVyIHBhZ2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdlc2l6ZXM6IHN0cmluZyA9ICcyMHw1MHwxMDAnO1xuICAvKipcbiAgICogVGV4dCBpbiBQYWdlIGZvciBudW1iZXIgb2YgcGFnZSBlbGVtZW50cyBwZXIgcGFnZS4gVGhlIGZvbGxvd2luZyBpbnRlcnBvbGF0aW9uIHRleHRzIGFyZSBhdmFpbGFibGU6XG4gICAqXG4gICAqIHt7UEFHRVNJWkV9fTogTnVtYmVyIG9mIGVsZW1lbnRzIHBlciBwYWdlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGFnZXNpemV0ZXh0OiBzdHJpbmcgPSAnJztcbiAgLyoqXG4gICAqIFRleHQgaW4gcGFnZXIgZm9yICdQYWdlIHggb2YgeScuIFRoZSBmb2xsb3dpbmcgaW50ZXJwb2xhdGlvbiB0ZXh0cyBhcmUgYXZhaWxhYmxlOlxuICAgKiB7e0NVUlJFTlRQQUdFfX06IEN1cnJlbnQgcGFnZVxuICAgKiB7e1RPVEFMUEFHRVN9fTogTnVtYmVyIG9mIHBhZ2VzXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGFnaW5ndGV4dDogc3RyaW5nID0gJyc7XG4gIC8qKlxuICAgKiBFdmVudCB3aGVuIHRoZSBwYWdlIGlzIGNoYW5nZWQgaW4gdGhlIGdyaWQuIFRoZSBuZXcgUGFnZUluZGV4IGlzIGdpdmVuIGFzIGEgcGFyYW1ldGVyLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBwYWdpbmc6IEV2ZW50RW1pdHRlcjxQYWdlclJlcXVlc3Q+ID0gbmV3IEV2ZW50RW1pdHRlcjxQYWdlclJlcXVlc3Q+KCk7XG5cbiAgLyoqXG4gICAqIEFjdGl2ZSBwYWdlIGluZGV4XG4gICAqL1xuICBwdWJsaWMgYWN0aXZlUGFnZUluZGV4OiBudW1iZXIgPSAwO1xuICAvKipcbiAgICogRmlyc3QgcGFnZSBpbmRleFxuICAgKi9cbiAgcHVibGljIGZpcnN0UGFnZUluZGV4OiBudW1iZXIgPSAwO1xuICAvKipcbiAgICogTGFzdCBwYWdlIGluZGV4XG4gICAqL1xuICBwdWJsaWMgbGFzdFBhZ2VJbmRleDogbnVtYmVyID0gMDtcbiAgLyoqXG4gICAqIE51bWJlciBvZiBlbGVtZW50cyBwZXIgcGFnZVxuICAgKi9cbiAgcHVibGljIHBhZ2VTaXplOiBudW1iZXIgPSAyMDtcbiAgLyoqXG4gICAqIEl0ZW0gZm9yIGVhY2ggcGFnaW5nIGVsZW1lbnQgKHBhZ2UgbnVtYmVyKVxuICAgKi9cbiAgcHVibGljIHBhZ2luYXRvcnM6IEFycmF5PGFueT4gPSBbXTtcblxuICAvLyAjZW5kcmVnaW9uIFByb3BlcnRpZXNcblxuICAvLyAjcmVnaW9uIENvbnN0cnVjdG9yc1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RvclxuICAgKiBAcGFyZW50IFNhY0Zvcm1Db21tb25cbiAgICogQGluamVjdG9yIEluamVjdG9yXG4gICAqL1xuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB0aGlzLnZhbGlkYXRpb25LZXlTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFxuICAgICAgU0FDVkFMSURBVElPTktFWV9TRVJWSUNFLFxuICAgICAgbmV3IFNhY0RlZmF1bHRWYWxpZGF0aW9uS2V5U2VydmljZSgpXG4gICAgKTtcblxuICAgIC8vIFNldCBEZWZhdWx0IFZhbHVlcyBmcm9tIEluamVjdG9yXG4gICAgdGhpcy5wYWdlc2l6ZXRleHQgPSB0aGlzLnZhbGlkYXRpb25LZXlTZXJ2aWNlLlBhZ2luZ0VudHJpZXM7XG4gICAgdGhpcy5wYWdpbmd0ZXh0ID0gdGhpcy52YWxpZGF0aW9uS2V5U2VydmljZS5QYWdpbmdQYWdlT2Y7XG5cbiAgICB0aGlzLmxuZ1Jlc291cmNlU2VydmljZSA9IGluamVjdG9yLmdldChcbiAgICAgIFNBQ0xPQ0FMSVNBVElPTl9TRVJWSUNFLFxuICAgICAgbmV3IFNhY0RlZmF1bHRMb2NhbGlzYXRpb25TZXJ2aWNlKHRoaXMudmFsaWRhdGlvbktleVNlcnZpY2UpXG4gICAgKTtcbiAgfVxuXG4gIC8vICNlbmRyZWdpb24gQ29uc3RydWN0b3JzXG5cbiAgLy8gI3JlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xuXG4gIC8qKlxuICAgKiBQcm9wZXJ0eSBmb3IgUGFnZXIgRGF0YVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBwYWdlcmRhdGEocDogUGFnZXJEYXRhKSB7XG4gICAgaWYgKHAgIT0gbnVsbCkge1xuICAgICAgdGhpcy50b3RhbFJvd0NvdW50ID0gcC5Ub3RhbFJvd0NvdW50O1xuICAgICAgdGhpcy5hY3RpdmVQYWdlSW5kZXggPSBwLkN1cnJlbnRQYWdlSW5kZXg7XG4gICAgICB0aGlzLnBhZ2VTaXplID0gcC5QYWdlU2l6ZTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZVBhZ2VyKCk7XG4gIH1cblxuICAvKipcbiAgICogUHJvcGVydHkgd2l0aCB0ZXh0IGZvciB0b3RhbCBlbnRyaWVzIGluIHBhZ2VcbiAgICovXG4gIHB1YmxpYyBnZXQgUGFnZVNpemVUZXh0KCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMubG5nUmVzb3VyY2VTZXJ2aWNlLkdldFN0cmluZyh0aGlzLnBhZ2VzaXpldGV4dCk7XG4gIH1cblxuICAvKipcbiAgICogVGV4dCB3aXRoIGN1cnJlbnQgcGFnZSBhbmQgdG90YWwgcGFnZXNcbiAgICovXG4gIHB1YmxpYyBnZXQgUGFnaW5nVGV4dCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmxuZ1Jlc291cmNlU2VydmljZS5HZXRTdHJpbmcodGhpcy5wYWdpbmd0ZXh0LCB7XG4gICAgICBDVVJSRU5UUEFHRTogdGhpcy5nZXRDdXJyZW50UGFnZU51bWJlcigpLFxuICAgICAgVE9UQUxQQUdFUzogdGhpcy5nZXRUb3RhbFBhZ2VOdW1iZXIoKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBwYWdlIHNpemVzIGFzIGEgbnVtYmVyIGFycmF5XG4gICAqL1xuICBwdWJsaWMgZ2V0IGdldFBhZ2VTaXplcygpOiBudW1iZXJbXSB7XG4gICAgcmV0dXJuIHRoaXMucGFnZXNpemVzLnNwbGl0KCd8JykubWFwKChpdG0pID0+IE51bWJlcihpdG0pKTtcbiAgfVxuXG4gIC8vICNlbmRyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcblxuICAvLyAjcmVnaW9uIFB1YmxpYyBNZXRob2RzXG5cbiAgLyoqXG4gICAqIENoYW5nZXMgdGhlIHBhZ2UgdG8gdGhlIG5ldyBpbmRleFxuICAgKiBAcGFyYW0gbmV3UGFnZUluZGV4IFBhZ2UgaW5kZXguIFRoaXMgY29ycmVzcG9uZHMgdG8gdGhlIHBhZ2UgbnVtYmVyIC0gMS5cbiAgICovXG4gIHB1YmxpYyBjaGFuZ2VQYWdlKG5ld1BhZ2VJbmRleDogbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4ICE9PSBuZXdQYWdlSW5kZXgpIHtcbiAgICAgIHRoaXMucGFnZWQobmV3UGFnZUluZGV4KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hhbmdlcyB0aGUgcGFnZSBzaXplIGluIHRoZSBwYWdlclxuICAgKiBAcGFyYW0gbmV3U2l6ZSBOZXcgbnVtYmVyIG9mIGVsZW1lbnRzIHBlciBwYWdlXG4gICAqL1xuICBwdWJsaWMgY2hhbmdlUGFnZVNpemUobmV3U2l6ZTogbnVtYmVyKSB7XG4gICAgY29uc3QgcGFnZXJEYXRhOiBQYWdlclJlcXVlc3QgPSBuZXcgUGFnZXJSZXF1ZXN0KFxuICAgICAgbmV3U2l6ZSxcbiAgICAgIHRoaXMuYWN0aXZlUGFnZUluZGV4XG4gICAgKTtcbiAgICB0aGlzLnBhZ2luZy5lbWl0KHBhZ2VyRGF0YSk7XG4gIH1cblxuICAvKipcbiAgICpTd2l0Y2ggdG8gMXN0IHBhZ2VcbiAgICovXG4gIHB1YmxpYyBmaXJzdFBhZ2UoKSB7XG4gICAgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4ICE9PSB0aGlzLmZpcnN0UGFnZUluZGV4KSB7XG4gICAgICB0aGlzLnBhZ2VkKDApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyXG4gICAqL1xuICBwdWJsaWMgZ2V0Q3VycmVudFBhZ2VOdW1iZXIoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVQYWdlSW5kZXggKyAxO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHRvdGFsIG51bWJlciBvZiBwYWdlc1xuICAgKi9cbiAgcHVibGljIGdldFRvdGFsUGFnZU51bWJlcigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmxhc3RQYWdlSW5kZXggKyAxO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhZ2luZyBvbiBsYXN0IHBhZ2VcbiAgICovXG4gIHB1YmxpYyBsYXN0UGFnZSgpIHtcbiAgICBpZiAodGhpcy5hY3RpdmVQYWdlSW5kZXggIT09IHRoaXMubGFzdFBhZ2VJbmRleCkge1xuICAgICAgdGhpcy5wYWdlZCh0aGlzLmxhc3RQYWdlSW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBQYWdpbmcgdG8gbmV4dCBwYWdlXG4gICAqL1xuICBwdWJsaWMgbmV4dFBhZ2UoKSB7XG4gICAgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4ICE9PSB0aGlzLmxhc3RQYWdlSW5kZXgpIHtcbiAgICAgIHRoaXMucGFnZWQodGhpcy5hY3RpdmVQYWdlSW5kZXggKyAxKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUGFnaW5nIG9uZSBwYWdlIGJhY2tcbiAgICovXG4gIHB1YmxpYyBwcmV2aW91c1BhZ2UoKSB7XG4gICAgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4ICE9PSB0aGlzLmZpcnN0UGFnZUluZGV4KSB7XG4gICAgICB0aGlzLnBhZ2VkKHRoaXMuYWN0aXZlUGFnZUluZGV4IC0gMSk7XG4gICAgfVxuICB9XG5cbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgTWV0aG9kc1xuXG4gIC8vICNyZWdpb24gUHJvdGVjdGVkIE1ldGhvZHNcblxuICAvKipcbiAgICogR2VuZXJhdGVzIHRoZSBwYWdlciBkYXRhXG4gICAqL1xuICBwcm90ZWN0ZWQgY3JlYXRlUGFnZXIoKSB7XG4gICAgdGhpcy5wYWdpbmF0b3JzID0gW107XG5cbiAgICBpZiAodGhpcy50b3RhbFJvd0NvdW50ID4gMCkge1xuICAgICAgbGV0IHRvdGFsUGFnZUNvdW50ID0gTWF0aC5jZWlsKHRoaXMudG90YWxSb3dDb3VudCAvIHRoaXMucGFnZVNpemUpO1xuXG4gICAgICAvLyBQYWdlQ291bnQgYXVmIDEgc3RlbGxlbiwgd2VubiBrZWluZSBSZWNvcmRzIHZvcmhhbmRlbiBzaW5kLlxuICAgICAgaWYgKHRvdGFsUGFnZUNvdW50ID09PSAwKSB7XG4gICAgICAgIHRvdGFsUGFnZUNvdW50ID0gMTtcbiAgICAgIH1cblxuICAgICAgLy8gUGFnZUluZGV4IGJlcmVjaG5lblxuICAgICAgdGhpcy5sYXN0UGFnZUluZGV4ID0gdG90YWxQYWdlQ291bnQgLSAxO1xuICAgICAgY29uc3Qgc3RhcnRQYWdlSW5kZXggPSB0aGlzLmdldFN0YXJ0UGFnZUluZGV4KHRvdGFsUGFnZUNvdW50KTtcbiAgICAgIGNvbnN0IGVuZFBhZ2VJbmRleCA9IHRoaXMuZ2V0RW5kUGFnZUluZGV4KHRvdGFsUGFnZUNvdW50KTtcblxuICAgICAgLy8gSW5kZXggRml4IHdlbm4gQWt0aXZlIFNlaXRlIGdyw7Zzc2VyIGFscyBsZXR6ZSBTZWl0ZVxuICAgICAgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4ID4gdGhpcy5sYXN0UGFnZUluZGV4KSB7XG4gICAgICAgIHRoaXMuYWN0aXZlUGFnZUluZGV4ID0gdGhpcy5sYXN0UGFnZUluZGV4O1xuICAgICAgfVxuXG4gICAgICBmb3IgKGxldCBpID0gc3RhcnRQYWdlSW5kZXg7IGkgPD0gZW5kUGFnZUluZGV4OyBpKyspIHtcbiAgICAgICAgdGhpcy5wYWdpbmF0b3JzLnB1c2goaSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucGFnaW5hdG9ycy5wdXNoKDApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBsYXN0IHBhZ2UgaW5kZXguXG4gICAqIEBwYXJhbSB0b3RhbFBhZ2VDb3VudCBUb3RhbCBudW1iZXIgb2YgcGFnZXNcbiAgICovXG4gIHByb3RlY3RlZCBnZXRFbmRQYWdlSW5kZXgodG90YWxQYWdlQ291bnQ6IG51bWJlcik6IG51bWJlciB7XG4gICAgbGV0IGVuZGluZ1BhZ2VUb0Rpc3BsYXkgPSB0aGlzLmFjdGl2ZVBhZ2VJbmRleCArIDI7XG4gICAgY29uc3QgbWF4RW5kaW5nUGFnZUluZGV4ID0gNCA+IHRvdGFsUGFnZUNvdW50IC0gMSA/IHRvdGFsUGFnZUNvdW50IC0gMSA6IDQ7XG5cbiAgICBpZiAoZW5kaW5nUGFnZVRvRGlzcGxheSA+IHRvdGFsUGFnZUNvdW50IC0gMSkge1xuICAgICAgZW5kaW5nUGFnZVRvRGlzcGxheSA9IHRvdGFsUGFnZUNvdW50IC0gMTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4IDwgMikge1xuICAgICAgZW5kaW5nUGFnZVRvRGlzcGxheSA9IG1heEVuZGluZ1BhZ2VJbmRleDtcbiAgICB9XG4gICAgcmV0dXJuIGVuZGluZ1BhZ2VUb0Rpc3BsYXk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgc3RhcnQgaW5kZXhcbiAgICogQHBhcmFtIHRvdGFsUGFnZUNvdW50IFRvdGFsIG51bWJlciBvZiBwYWdlc1xuICAgKi9cbiAgcHJvdGVjdGVkIGdldFN0YXJ0UGFnZUluZGV4KHRvdGFsUGFnZUNvdW50OiBudW1iZXIpOiBudW1iZXIge1xuICAgIGxldCBzdGFydGluZ1BhZ2VUb0Rpc3BsYXk6IG51bWJlciA9IDA7XG4gICAgc3RhcnRpbmdQYWdlVG9EaXNwbGF5ID0gdGhpcy5hY3RpdmVQYWdlSW5kZXggLSAyO1xuXG4gICAgaWYgKHRvdGFsUGFnZUNvdW50IC0gdGhpcy5hY3RpdmVQYWdlSW5kZXggLSAxIDwgMikge1xuICAgICAgc3RhcnRpbmdQYWdlVG9EaXNwbGF5ID0gdG90YWxQYWdlQ291bnQgLSA1O1xuICAgIH1cblxuICAgIGlmIChzdGFydGluZ1BhZ2VUb0Rpc3BsYXkgPCAwKSB7XG4gICAgICBzdGFydGluZ1BhZ2VUb0Rpc3BsYXkgPSAwO1xuICAgIH1cbiAgICByZXR1cm4gc3RhcnRpbmdQYWdlVG9EaXNwbGF5O1xuICB9XG5cbiAgLyoqXG4gICAqIG1ldGhvZCB0cmlnZ2VycyB0aGUgZXZlbnQgdGhhdCBwYWdpbmcgaGFzIHRha2VuIHBsYWNlXG4gICAqL1xuICBwcm90ZWN0ZWQgcGFnZWQobmV3UGFnZUluZGV4OiBudW1iZXIpIHtcbiAgICBjb25zdCBwYWdlckRhdGE6IFBhZ2VyUmVxdWVzdCA9IG5ldyBQYWdlclJlcXVlc3QoXG4gICAgICB0aGlzLnBhZ2VTaXplLFxuICAgICAgbmV3UGFnZUluZGV4XG4gICAgKTtcbiAgICB0aGlzLnBhZ2luZy5lbWl0KHBhZ2VyRGF0YSk7XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIFByb3RlY3RlZCBNZXRob2RzXG59XG4iXSwibWFwcGluZ3MiOiI2MHZCQTJHSztBQUFBQSxjQUFBLFNBQUFBLENBQUEsU0FBQUMsY0FBQSxXQUFBQSxjQUFBLEVBQUFELGNBQUEsR0EzR0wsT0FDRUUsU0FBUyxDQUNUQyxZQUFZLENBRVpDLEtBQUssQ0FDTEMsTUFBTSxLQUNELGVBQWUsQ0FJdEIsT0FDRUMsdUJBQXVCLENBQ3ZCQyw2QkFBNkIsS0FDeEIseUNBQXlDLENBQ2hELE9BQ0VDLHdCQUF3QixDQUN4QkMsOEJBQThCLEtBQ3pCLDBDQUEwQyxDQUNqRCxPQUFvQkMsWUFBWSxLQUFRLFNBQVMsQyxpQ0FFakQ7O0dBR0EsS0FDc0IsQ0FBQUMsZUFBZSxDQTJFbkM7QUFFQTtBQUVBOzs7O09BS0FDLFlBQVlDLFFBQWtCLEVBQUFiLGNBQUEsR0FBQWMsQ0FBQSxNQUFBZCxjQUFBLEdBQUFlLENBQUEsTUF4RTlCOztXQUdVLEtBQUFDLGFBQWEsQ0FBVyxDQUFDLENBT25DOztXQUFBaEIsY0FBQSxHQUFBZSxDQUFBLE1B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
|
|
88
|
+
*/paged(newPageIndex){cov_26w9goxoda().f[17]++;const pagerData=(cov_26w9goxoda().s[68]++,new PagerRequest(this.pageSize,newPageIndex));cov_26w9goxoda().s[69]++;this.paging.emit(pagerData);}static{cov_26w9goxoda().s[70]++;this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"16.2.12",ngImport:i0,type:SacPagingCommon,deps:[{token:i0.Injector}],target:i0.ɵɵFactoryTarget.Directive});}static{cov_26w9goxoda().s[71]++;this.ɵdir=i0.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"16.2.12",type:SacPagingCommon,inputs:{e2eidentifier:"e2eidentifier",name:"name",pagesizedisabled:"pagesizedisabled",pagesizes:"pagesizes",pagesizetext:"pagesizetext",pagingtext:"pagingtext",pagerdata:"pagerdata"},outputs:{paging:"paging"},ngImport:i0});}}export{SacPagingCommon};cov_26w9goxoda().s[72]++;i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"16.2.12",ngImport:i0,type:SacPagingCommon,decorators:[{type:Directive}],ctorParameters:function(){cov_26w9goxoda().f[18]++;cov_26w9goxoda().s[73]++;return[{type:i0.Injector}];},propDecorators:{e2eidentifier:[{type:Input}],name:[{type:Input}],pagesizedisabled:[{type:Input}],pagesizes:[{type:Input}],pagesizetext:[{type:Input}],paging:[{type:Output}],pagingtext:[{type:Input}],pagerdata:[{type:Input}]}});//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29udHJvbHMvZ3JpZC9wYWdpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLDZCQUE2QixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDakgsT0FBTyxFQUFFLHdCQUF3QixFQUFFLDhCQUE4QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDcEgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBYSxZQUFZLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQVksS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHakY7O0dBRUc7QUFDSCxNQUNzQixlQUFlO0lBMkZuQyx3QkFBd0I7SUFFeEIsdUJBQXVCO0lBRXZCOzs7O09BSUc7SUFDSCxZQUFZLFFBQWtCO1FBdkY5Qjs7V0FFRztRQUNPLGtCQUFhLEdBQVcsQ0FBQyxDQUFDO1FBRXBDOztXQUVHO1FBQ0ksb0JBQWUsR0FBVyxDQUFDLENBQUM7UUFFakM7O1dBRUc7UUFFSSxrQkFBYSxHQUFrQixJQUFJLENBQUM7UUFFN0M7O1dBRUc7UUFDSSxtQkFBYyxHQUFXLENBQUMsQ0FBQztRQUVsQzs7V0FFRztRQUNJLGtCQUFhLEdBQVcsQ0FBQyxDQUFDO1FBRS9COztXQUVHO1FBRUksU0FBSSxHQUFXLFVBQVUsRUFBRSxDQUFDO1FBRXJDOztXQUVHO1FBQ0ksYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUU3Qjs7V0FFRztRQUVJLHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUV6Qzs7OztXQUlHO1FBRUksY0FBUyxHQUFXLFdBQVcsQ0FBQztRQUV2Qzs7OztXQUlHO1FBRUksaUJBQVksR0FBVyxFQUFFLENBQUM7UUFFakM7O1dB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Q0FBQztTQUM1QztRQUVELElBQUkscUJBQXFCLEdBQUcsQ0FBQyxFQUFFO1lBQzdCLHFCQUFxQixHQUFHLENBQUMsQ0FBQztTQUMzQjtRQUNELE9BQU8scUJBQXFCLENBQUM7SUFDL0IsQ0FBQztJQUVEOztPQUVHO0lBQ08sS0FBSyxDQUFDLFlBQW9CO1FBQ2xDLE1BQU0sU0FBUyxHQUFpQixJQUFJLFlBQVksQ0FDOUMsSUFBSSxDQUFDLFFBQVEsRUFDYixZQUFZLENBQ2IsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7K0dBelRtQixlQUFlO21HQUFmLGVBQWU7O1NBQWYsZUFBZTs0RkFBZixlQUFlO2tCQURwQyxTQUFTOytGQTRCQyxhQUFhO3NCQURuQixLQUFLO2dCQWlCQyxJQUFJO3NCQURWLEtBQUs7Z0JBWUQsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQVNDLFNBQVM7c0JBRGYsS0FBSztnQkFTQyxZQUFZO3NCQURsQixLQUFLO2dCQVlDLE1BQU07c0JBRFosTUFBTTtnQkFTQSxVQUFVO3NCQURoQixLQUFLO2dCQTRESyxTQUFTO3NCQURuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVNhY0xvY2FsaXNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNMb2NhbGlzYXRpb25TZXJ2aWNlJztcbmltcG9ydCB7IElTYWNWYWxpZGF0aW9uS2V5U2VydmljZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVNhY1ZhbGlkYXRpb25LZXlTZXJ2aWNlJztcbmltcG9ydCB7IFNBQ0xPQ0FMSVNBVElPTl9TRVJWSUNFLCBTYWNEZWZhdWx0TG9jYWxpc2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhYy1sb2NhbGlzYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBTQUNWQUxJREFUSU9OS0VZX1NFUlZJQ0UsIFNhY0RlZmF1bHRWYWxpZGF0aW9uS2V5U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhYy12YWxpZGF0aW9ua2V5LnNlcnZpY2UnO1xuaW1wb3J0IHsgY3JlYXRlR3VpZCB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9ndWlkJztcbmltcG9ydCB7IFBhZ2VyRGF0YSwgUGFnZXJSZXF1ZXN0IH0gZnJvbSAnLi9tb2RlbCc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5qZWN0b3IsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBCYXNpYyBjb21wb25lbnQgZm9yIHBhZ2luZ1xuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTYWNQYWdpbmdDb21tb24ge1xuICAvLyAjcmVnaW9uIFByb3BlcnRpZXNcblxuICAvKipcbiAgICogU2VydmljZSB0byByZWNlaXZlIHN0YW5kYXJkIHZhbGlkYXRpb24gbWVzc2FnZSBrZXlzIGFuZCB0ZXh0c1xuICAgKi9cbiAgcHJpdmF0ZSB2YWxpZGF0aW9uS2V5U2VydmljZTogSVNhY1ZhbGlkYXRpb25LZXlTZXJ2aWNlO1xuXG4gIC8qKlxuICAgKiBTZXJ2aWNlIGZvciBlcnJvciBsb2NhbGl6YXRpb25cbiAgICovXG4gIHByb3RlY3RlZCBsbmdSZXNvdXJjZVNlcnZpY2U6IElTYWNMb2NhbGlzYXRpb25TZXJ2aWNlO1xuXG4gIC8qKlxuICAgKiBUb3RhbCBudW1iZXIgb2Ygcm93c1xuICAgKi9cbiAgcHJvdGVjdGVkIHRvdGFsUm93Q291bnQ6IG51bWJlciA9IDA7XG5cbiAgLyoqXG4gICAqIEFjdGl2ZSBwYWdlIGluZGV4XG4gICAqL1xuICBwdWJsaWMgYWN0aXZlUGFnZUluZGV4OiBudW1iZXIgPSAwO1xuXG4gICAgLyoqXG4gICAgICogSWRlbnRpZmllciB1c2VkIGZvciB0aGUgRTJFIGRhdGEgYXR0cmlidXRlLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGUyZWlkZW50aWZpZXI6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBGaXJzdCBwYWdlIGluZGV4XG4gICAqL1xuICBwdWJsaWMgZmlyc3RQYWdlSW5kZXg6IG51bWJlciA9IDA7XG5cbiAgLyoqXG4gICAqIExhc3QgcGFnZSBpbmRleFxuICAgKi9cbiAgcHVibGljIGxhc3RQYWdlSW5kZXg6IG51bWJlciA9IDA7XG5cbiAgICAvKipcbiAgICAgKiBuYW1lIG9mIGNvbnRyb2xcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBuYW1lOiBzdHJpbmcgPSBjcmVhdGVHdWlkKCk7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBlbGVtZW50cyBwZXIgcGFnZVxuICAgKi9cbiAgcHVibGljIHBhZ2VTaXplOiBudW1iZXIgPSAyMDtcblxuICAvKipcbiAgICogRGVhY3RpdmF0ZSBwYWdlIHNpemUgc2VsZWN0aW9uXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGFnZXNpemVkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUZXh0IGluIFBhZ2UgZm9yIG51bWJlciBvZiBwYWdlIGVsZW1lbnRzIHBlciBwYWdlLiBUaGUgZm9sbG93aW5nIGludGVycG9sYXRpb24gdGV4dHMgYXJlIGF2YWlsYWJsZTpcbiAgICpcbiAgICoge3tQQUdFU0laRX19OiBOdW1iZXIgb2YgZWxlbWVudHMgcGVyIHBhZ2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdlc2l6ZXM6IHN0cmluZyA9ICcyMHw1MHwxMDAnO1xuXG4gIC8qKlxuICAgKiBUZXh0IGluIFBhZ2UgZm9yIG51bWJlciBvZiBwYWdlIGVsZW1lbnRzIHBlciBwYWdlLiBUaGUgZm9sbG93aW5nIGludGVycG9sYXRpb24gdGV4dHMgYXJlIGF2YWlsYWJsZTpcbiAgICpcbiAgICoge3tQQUdFU0laRX19OiBOdW1iZXIgb2YgZWxlbWVudHMgcGVyIHBhZ2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdlc2l6ZXRleHQ6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBJdGVtIGZvciBlYWNoIHBhZ2luZyBlbGVtZW50IChwYWdlIG51bWJlcilcbiAgICovXG4gIHB1YmxpYyBwYWdpbmF0b3JzOiBBcnJheTxhbnk+ID0gW107XG5cbiAgLyoqXG4gICAqIEV2ZW50IHdoZW4gdGhlIHBhZ2UgaXMgY2hhbmdlZCBpbiB0aGUgZ3JpZC4gVGhlIG5ldyBQYWdlSW5kZXggaXMgZ2l2ZW4gYXMgYSBwYXJhbWV0ZXIuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHBhZ2luZzogRXZlbnRFbWl0dGVyPFBhZ2VyUmVxdWVzdD4gPSBuZXcgRXZlbnRFbWl0dGVyPFBhZ2VyUmVxdWVzdD4oKTtcblxuICAvKipcbiAgICogVGV4dCBpbiBwYWdlciBmb3IgJ1BhZ2UgeCBvZiB5Jy4gVGhlIGZvbGxvd2luZyBpbnRlcnBvbGF0aW9uIHRleHRzIGFyZSBhdmFpbGFibGU6XG4gICAqIHt7Q1VSUkVOVFBBR0V9fTogQ3VycmVudCBwYWdlXG4gICAqIHt7VE9UQUxQQUdFU319OiBOdW1iZXIgb2YgcGFnZXNcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdpbmd0ZXh0OiBzdHJpbmcgPSAnJztcblxuICAvLyAjZW5kcmVnaW9uIFByb3BlcnRpZXNcblxuICAvLyAjcmVnaW9uIENvbnN0cnVjdG9yc1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RvclxuICAgKiBAcGFyZW50IFNhY0Zvcm1Db21tb25cbiAgICogQGluamVjdG9yIEluamVjdG9yXG4gICAqL1xuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB0aGlzLnZhbGlkYXRpb25LZXlTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFxuICAgICAgU0FDVkFMSURBVElPTktFWV9TRVJWSUNFLFxuICAgICAgbmV3IFNhY0RlZmF1bHRWYWxpZGF0aW9uS2V5U2VydmljZSgpXG4gICAgKTtcblxuICAgIC8vIFNldCBEZWZhdWx0IFZhbHVlcyBmcm9tIEluamVjdG9yXG4gICAgdGhpcy5wYWdlc2l6ZXRleHQgPSB0aGlzLnZhbGlkYXRpb25LZXlTZXJ2aWNlLlBhZ2luZ0VudHJpZXM7XG4gICAgdGhpcy5wYWdpbmd0ZXh0ID0gdGhpcy52YWxpZGF0aW9uS2V5U2VydmljZS5QYWdpbmdQYWdlT2Y7XG5cbiAgICB0aGlzLmxuZ1Jlc291cmNlU2VydmljZSA9IGluamVjdG9yLmdldChcbiAgICAgIFNBQ0xPQ0FMSVNBVElPTl9TRVJWSUNFLFxuICAgICAgbmV3IFNhY0RlZmF1bHRMb2NhbGlzYXRpb25TZXJ2aWNlKHRoaXMudmFsaWRhdGlvbktleVNlcnZpY2UpXG4gICAgKTtcbiAgfVxuXG4gIC8vICNlbmRyZWdpb24gQ29uc3RydWN0b3JzXG5cbiAgLy8gI3JlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xuXG4gIC8qKlxuICAgKiBQcm9wZXJ0eSB3aXRoIHRleHQgZm9yIHRvdGFsIGVudHJpZXMgaW4gcGFnZVxuICAgKi9cbiAgcHVibGljIGdldCBQYWdlU2l6ZVRleHQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5sbmdSZXNvdXJjZVNlcnZpY2UuR2V0U3RyaW5nKHRoaXMucGFnZXNpemV0ZXh0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUZXh0IHdpdGggY3VycmVudCBwYWdlIGFuZCB0b3RhbCBwYWdlc1xuICAgKi9cbiAgcHVibGljIGdldCBQYWdpbmdUZXh0KCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMubG5nUmVzb3VyY2VTZXJ2aWNlLkdldFN0cmluZyh0aGlzLnBhZ2luZ3RleHQsIHtcbiAgICAgIENVUlJFTlRQQUdFOiB0aGlzLmdldEN1cnJlbnRQYWdlTnVtYmVyKCksXG4gICAgICBUT1RBTFBBR0VTOiB0aGlzLmdldFRvdGFsUGFnZU51bWJlcigpLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHBhZ2Ugc2l6ZXMgYXMgYSBudW1iZXIgYXJyYXlcbiAgICovXG4gIHB1YmxpYyBnZXQgZ2V0UGFnZVNpemVzKCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gdGhpcy5wYWdlc2l6ZXMuc3BsaXQoJ3wnKS5tYXAoKGl0bSkgPT4gTnVtYmVyKGl0bSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFByb3BlcnR5IGZvciBQYWdlciBEYXRhXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHBhZ2VyZGF0YShwOiBQYWdlckRhdGEpIHtcbiAgICBpZiAocCAhPSBudWxsKSB7XG4gICAgICB0aGlzLnRvdGFsUm93Q291bnQgPSBwLlRvdGFsUm93Q291bnQ7XG4gICAgICB0aGlzLmFjdGl2ZVBhZ2VJbmRleCA9IHAuQ3VycmVudFBhZ2VJbmRleDtcbiAgICAgIHRoaXMucGFnZVNpemUgPSBwLlBhZ2VTaXplO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlUGFnZXIoKTtcbiAgfVxuXG4gIC8vICNlbmRyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcblxuICAvLyAjcmVnaW9uIFB1YmxpYyBNZXRob2RzXG5cbiAgLyoqXG4gICAqIENoYW5nZXMgdGhlIHBhZ2UgdG8gdGhlIG5ldyBpbmRleFxuICAgKiBAcGFyYW0gbmV3UGFnZUluZGV4IFBhZ2UgaW5kZXguIFRoaXMgY29ycmVzcG9uZHMgdG8gdGhlIHBhZ2UgbnVtYmVyIC0gMS5cbiAgICovXG4gIHB1YmxpYyBjaGFuZ2VQYWdlKG5ld1BhZ2VJbmRleDogbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4ICE9PSBuZXdQYWdlSW5kZXgpIHtcbiAgICAgIHRoaXMucGFnZWQobmV3UGFnZUluZGV4KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hhbmdlcyB0aGUgcGFnZSBzaXplIGluIHRoZSBwYWdlclxuICAgKiBAcGFyYW0gbmV3U2l6ZSBOZXcgbnVtYmVyIG9mIGVsZW1lbnRzIHBlciBwYWdlXG4gICAqL1xuICBwdWJsaWMgY2hhbmdlUGFnZVNpemUobmV3U2l6ZTogbnVtYmVyKSB7XG4gICAgY29uc3QgcGFnZXJEYXRhOiBQYWdlclJlcXVlc3QgPSBuZXcgUGFnZXJSZXF1ZXN0KFxuICAgICAgbmV3U2l6ZSxcbiAgICAgIHRoaXMuYWN0aXZlUGFnZUluZGV4XG4gICAgKTtcbiAgICB0aGlzLnBhZ2luZy5lbWl0KHBhZ2VyRGF0YSk7XG4gIH1cblxuICAvKipcbiAgICpTd2l0Y2ggdG8gMXN0IHBhZ2VcbiAgICovXG4gIHB1YmxpYyBmaXJzdFBhZ2UoKSB7XG4gICAgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4ICE9PSB0aGlzLmZpcnN0UGFnZUluZGV4KSB7XG4gICAgICB0aGlzLnBhZ2VkKDApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyXG4gICAqL1xuICBwdWJsaWMgZ2V0Q3VycmVudFBhZ2VOdW1iZXIoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVQYWdlSW5kZXggKyAxO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHRvdGFsIG51bWJlciBvZiBwYWdlc1xuICAgKi9cbiAgcHVibGljIGdldFRvdGFsUGFnZU51bWJlcigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmxhc3RQYWdlSW5kZXggKyAxO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhZ2luZyBvbiBsYXN0IHBhZ2VcbiAgICovXG4gIHB1YmxpYyBsYXN0UGFnZSgpIHtcbiAgICBpZiAodGhpcy5hY3RpdmVQYWdlSW5kZXggIT09IHRoaXMubGFzdFBhZ2VJbmRleCkge1xuICAgICAgdGhpcy5wYWdlZCh0aGlzLmxhc3RQYWdlSW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBQYWdpbmcgdG8gbmV4dCBwYWdlXG4gICAqL1xuICBwdWJsaWMgbmV4dFBhZ2UoKSB7XG4gICAgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4ICE9PSB0aGlzLmxhc3RQYWdlSW5kZXgpIHtcbiAgICAgIHRoaXMucGFnZWQodGhpcy5hY3RpdmVQYWdlSW5kZXggKyAxKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUGFnaW5nIG9uZSBwYWdlIGJhY2tcbiAgICovXG4gIHB1YmxpYyBwcmV2aW91c1BhZ2UoKSB7XG4gICAgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4ICE9PSB0aGlzLmZpcnN0UGFnZUluZGV4KSB7XG4gICAgICB0aGlzLnBhZ2VkKHRoaXMuYWN0aXZlUGFnZUluZGV4IC0gMSk7XG4gICAgfVxuICB9XG5cbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgTWV0aG9kc1xuXG4gIC8vICNyZWdpb24gUHJvdGVjdGVkIE1ldGhvZHNcblxuICAvKipcbiAgICogR2VuZXJhdGVzIHRoZSBwYWdlciBkYXRhXG4gICAqL1xuICBwcm90ZWN0ZWQgY3JlYXRlUGFnZXIoKSB7XG4gICAgdGhpcy5wYWdpbmF0b3JzID0gW107XG5cbiAgICBpZiAodGhpcy50b3RhbFJvd0NvdW50ID4gMCkge1xuICAgICAgbGV0IHRvdGFsUGFnZUNvdW50ID0gTWF0aC5jZWlsKHRoaXMudG90YWxSb3dDb3VudCAvIHRoaXMucGFnZVNpemUpO1xuXG4gICAgICAvLyBQYWdlQ291bnQgYXVmIDEgc3RlbGxlbiwgd2VubiBrZWluZSBSZWNvcmRzIHZvcmhhbmRlbiBzaW5kLlxuICAgICAgaWYgKHRvdGFsUGFnZUNvdW50ID09PSAwKSB7XG4gICAgICAgIHRvdGFsUGFnZUNvdW50ID0gMTtcbiAgICAgIH1cblxuICAgICAgLy8gUGFnZUluZGV4IGJlcmVjaG5lblxuICAgICAgdGhpcy5sYXN0UGFnZUluZGV4ID0gdG90YWxQYWdlQ291bnQgLSAxO1xuICAgICAgY29uc3Qgc3RhcnRQYWdlSW5kZXggPSB0aGlzLmdldFN0YXJ0UGFnZUluZGV4KHRvdGFsUGFnZUNvdW50KTtcbiAgICAgIGNvbnN0IGVuZFBhZ2VJbmRleCA9IHRoaXMuZ2V0RW5kUGFnZUluZGV4KHRvdGFsUGFnZUNvdW50KTtcblxuICAgICAgLy8gSW5kZXggRml4IHdlbm4gQWt0aXZlIFNlaXRlIGdyw7Zzc2VyIGFscyBsZXR6ZSBTZWl0ZVxuICAgICAgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4ID4gdGhpcy5sYXN0UGFnZUluZGV4KSB7XG4gICAgICAgIHRoaXMuYWN0aXZlUGFnZUluZGV4ID0gdGhpcy5sYXN0UGFnZUluZGV4O1xuICAgICAgfVxuXG4gICAgICBmb3IgKGxldCBpID0gc3RhcnRQYWdlSW5kZXg7IGkgPD0gZW5kUGFnZUluZGV4OyBpKyspIHtcbiAgICAgICAgdGhpcy5wYWdpbmF0b3JzLnB1c2goaSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucGFnaW5hdG9ycy5wdXNoKDApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBsYXN0IHBhZ2UgaW5kZXguXG4gICAqIEBwYXJhbSB0b3RhbFBhZ2VDb3VudCBUb3RhbCBudW1iZXIgb2YgcGFnZXNcbiAgICovXG4gIHByb3RlY3RlZCBnZXRFbmRQYWdlSW5kZXgodG90YWxQYWdlQ291bnQ6IG51bWJlcik6IG51bWJlciB7XG4gICAgbGV0IGVuZGluZ1BhZ2VUb0Rpc3BsYXkgPSB0aGlzLmFjdGl2ZVBhZ2VJbmRleCArIDI7XG4gICAgY29uc3QgbWF4RW5kaW5nUGFnZUluZGV4ID0gNCA+IHRvdGFsUGFnZUNvdW50IC0gMSA/IHRvdGFsUGFnZUNvdW50IC0gMSA6IDQ7XG5cbiAgICBpZiAoZW5kaW5nUGFnZVRvRGlzcGxheSA+IHRvdGFsUGFnZUNvdW50IC0gMSkge1xuICAgICAgZW5kaW5nUGFnZVRvRGlzcGxheSA9IHRvdGFsUGFnZUNvdW50IC0gMTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4IDwgMikge1xuICAgICAgZW5kaW5nUGFnZVRvRGlzcGxheSA9IG1heEVuZGluZ1BhZ2VJbmRleDtcbiAgICB9XG4gICAgcmV0dXJuIGVuZGluZ1BhZ2VUb0Rpc3BsYXk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgc3RhcnQgaW5kZXhcbiAgICogQHBhcmFtIHRvdGFsUGFnZUNvdW50IFRvdGFsIG51bWJlciBvZiBwYWdlc1xuICAgKi9cbiAgcHJvdGVjdGVkIGdldFN0YXJ0UGFnZUluZGV4KHRvdGFsUGFnZUNvdW50OiBudW1iZXIpOiBudW1iZXIge1xuICAgIGxldCBzdGFydGluZ1BhZ2VUb0Rpc3BsYXk6IG51bWJlciA9IDA7XG4gICAgc3RhcnRpbmdQYWdlVG9EaXNwbGF5ID0gdGhpcy5hY3RpdmVQYWdlSW5kZXggLSAyO1xuXG4gICAgaWYgKHRvdGFsUGFnZUNvdW50IC0gdGhpcy5hY3RpdmVQYWdlSW5kZXggLSAxIDwgMikge1xuICAgICAgc3RhcnRpbmdQYWdlVG9EaXNwbGF5ID0gdG90YWxQYWdlQ291bnQgLSA1O1xuICAgIH1cblxuICAgIGlmIChzdGFydGluZ1BhZ2VUb0Rpc3BsYXkgPCAwKSB7XG4gICAgICBzdGFydGluZ1BhZ2VUb0Rpc3BsYXkgPSAwO1xuICAgIH1cbiAgICByZXR1cm4gc3RhcnRpbmdQYWdlVG9EaXNwbGF5O1xuICB9XG5cbiAgLyoqXG4gICAqIG1ldGhvZCB0cmlnZ2VycyB0aGUgZXZlbnQgdGhhdCBwYWdpbmcgaGFzIHRha2VuIHBsYWNlXG4gICAqL1xuICBwcm90ZWN0ZWQgcGFnZWQobmV3UGFnZUluZGV4OiBudW1iZXIpIHtcbiAgICBjb25zdCBwYWdlckRhdGE6IFBhZ2VyUmVxdWVzdCA9IG5ldyBQYWdlclJlcXVlc3QoXG4gICAgICB0aGlzLnBhZ2VTaXplLFxuICAgICAgbmV3UGFnZUluZGV4XG4gICAgKTtcbiAgICB0aGlzLnBhZ2luZy5lbWl0KHBhZ2VyRGF0YSk7XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIFByb3RlY3RlZCBNZXRob2RzXG59XG4iXX0=
|
|
89
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTQUNMT0NBTElTQVRJT05fU0VSVklDRSIsIlNhY0RlZmF1bHRMb2NhbGlzYXRpb25TZXJ2aWNlIiwiU0FDVkFMSURBVElPTktFWV9TRVJWSUNFIiwiU2FjRGVmYXVsdFZhbGlkYXRpb25LZXlTZXJ2aWNlIiwiY3JlYXRlR3VpZCIsIlBhZ2VyUmVxdWVzdCIsIkRpcmVjdGl2ZSIsIkV2ZW50RW1pdHRlciIsIklucHV0IiwiT3V0cHV0IiwiU2FjUGFnaW5nQ29tbW9uIiwiY29uc3RydWN0b3IiLCJpbmplY3RvciIsImNvdl8yNnc5Z294b2RhIiwiZiIsInMiLCJ0b3RhbFJvd0NvdW50IiwiYWN0aXZlUGFnZUluZGV4IiwiZTJlaWRlbnRpZmllciIsImZpcnN0UGFnZUluZGV4IiwibGFzdFBhZ2VJbmRleCIsIm5hbWUiLCJwYWdlU2l6ZSIsInBhZ2VzaXplZGlzYWJsZWQiLCJwYWdlc2l6ZXMiLCJwYWdlc2l6ZXRleHQiLCJwYWdpbmF0b3JzIiwicGFnaW5nIiwicGFnaW5ndGV4dCIsInZhbGlkYXRpb25LZXlTZXJ2aWNlIiwiZ2V0IiwiUGFnaW5nRW50cmllcyIsIlBhZ2luZ1BhZ2VPZiIsImxuZ1Jlc291cmNlU2VydmljZSIsIlBhZ2VTaXplVGV4dCIsIkdldFN0cmluZyIsIlBhZ2luZ1RleHQiLCJDVVJSRU5UUEFHRSIsImdldEN1cnJlbnRQYWdlTnVtYmVyIiwiVE9UQUxQQUdFUyIsImdldFRvdGFsUGFnZU51bWJlciIsImdldFBhZ2VTaXplcyIsInNwbGl0IiwibWFwIiwiaXRtIiwiTnVtYmVyIiwicGFnZXJkYXRhIiwicCIsImIiLCJUb3RhbFJvd0NvdW50IiwiQ3VycmVudFBhZ2VJbmRleCIsIlBhZ2VTaXplIiwiY3JlYXRlUGFnZXIiLCJjaGFuZ2VQYWdlIiwibmV3UGFnZUluZGV4IiwicGFnZWQiLCJjaGFuZ2VQYWdlU2l6ZSIsIm5ld1NpemUiLCJwYWdlckRhdGEiLCJlbWl0IiwiZmlyc3RQYWdlIiwibGFzdFBhZ2UiLCJuZXh0UGFnZSIsInByZXZpb3VzUGFnZSIsInRvdGFsUGFnZUNvdW50IiwiTWF0aCIsImNlaWwiLCJzdGFydFBhZ2VJbmRleCIsImdldFN0YXJ0UGFnZUluZGV4IiwiZW5kUGFnZUluZGV4IiwiZ2V0RW5kUGFnZUluZGV4IiwiaSIsInB1c2giLCJlbmRpbmdQYWdlVG9EaXNwbGF5IiwibWF4RW5kaW5nUGFnZUluZGV4Iiwic3RhcnRpbmdQYWdlVG9EaXNwbGF5IiwiZGVwcyIsInRva2VuIiwiaTAiLCJJbmplY3RvciIsInRhcmdldCIsIsm1ybVGYWN0b3J5VGFyZ2V0IiwiaW5wdXRzIiwib3V0cHV0cyIsIm5nSW1wb3J0IiwiZGVjb3JhdG9ycyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbnRyb2xzL2dyaWQvcGFnaW5nLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElTYWNMb2NhbGlzYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JU2FjTG9jYWxpc2F0aW9uU2VydmljZSc7XG5pbXBvcnQgeyBJU2FjVmFsaWRhdGlvbktleVNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNWYWxpZGF0aW9uS2V5U2VydmljZSc7XG5pbXBvcnQgeyBTQUNMT0NBTElTQVRJT05fU0VSVklDRSwgU2FjRGVmYXVsdExvY2FsaXNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYWMtbG9jYWxpc2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgU0FDVkFMSURBVElPTktFWV9TRVJWSUNFLCBTYWNEZWZhdWx0VmFsaWRhdGlvbktleVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYWMtdmFsaWRhdGlvbmtleS5zZXJ2aWNlJztcbmltcG9ydCB7IGNyZWF0ZUd1aWQgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvZ3VpZCc7XG5pbXBvcnQgeyBQYWdlckRhdGEsIFBhZ2VyUmVxdWVzdCB9IGZyb20gJy4vbW9kZWwnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIEluamVjdG9yLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogQmFzaWMgY29tcG9uZW50IGZvciBwYWdpbmdcbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2FjUGFnaW5nQ29tbW9uIHtcbiAgLy8gI3JlZ2lvbiBQcm9wZXJ0aWVzXG5cbiAgLyoqXG4gICAqIFNlcnZpY2UgdG8gcmVjZWl2ZSBzdGFuZGFyZCB2YWxpZGF0aW9uIG1lc3NhZ2Uga2V5cyBhbmQgdGV4dHNcbiAgICovXG4gIHByaXZhdGUgdmFsaWRhdGlvbktleVNlcnZpY2U6IElTYWNWYWxpZGF0aW9uS2V5U2VydmljZTtcblxuICAvKipcbiAgICogU2VydmljZSBmb3IgZXJyb3IgbG9jYWxpemF0aW9uXG4gICAqL1xuICBwcm90ZWN0ZWQgbG5nUmVzb3VyY2VTZXJ2aWNlOiBJU2FjTG9jYWxpc2F0aW9uU2VydmljZTtcblxuICAvKipcbiAgICogVG90YWwgbnVtYmVyIG9mIHJvd3NcbiAgICovXG4gIHByb3RlY3RlZCB0b3RhbFJvd0NvdW50OiBudW1iZXIgPSAwO1xuXG4gIC8qKlxuICAgKiBBY3RpdmUgcGFnZSBpbmRleFxuICAgKi9cbiAgcHVibGljIGFjdGl2ZVBhZ2VJbmRleDogbnVtYmVyID0gMDtcblxuICAgIC8qKlxuICAgICAqIElkZW50aWZpZXIgdXNlZCBmb3IgdGhlIEUyRSBkYXRhIGF0dHJpYnV0ZS5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBlMmVpZGVudGlmaWVyOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogRmlyc3QgcGFnZSBpbmRleFxuICAgKi9cbiAgcHVibGljIGZpcnN0UGFnZUluZGV4OiBudW1iZXIgPSAwO1xuXG4gIC8qKlxuICAgKiBMYXN0IHBhZ2UgaW5kZXhcbiAgICovXG4gIHB1YmxpYyBsYXN0UGFnZUluZGV4OiBudW1iZXIgPSAwO1xuXG4gICAgLyoqXG4gICAgICogbmFtZSBvZiBjb250cm9sXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nID0gY3JlYXRlR3VpZCgpO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgZWxlbWVudHMgcGVyIHBhZ2VcbiAgICovXG4gIHB1YmxpYyBwYWdlU2l6ZTogbnVtYmVyID0gMjA7XG5cbiAgLyoqXG4gICAqIERlYWN0aXZhdGUgcGFnZSBzaXplIHNlbGVjdGlvblxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHBhZ2VzaXplZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogVGV4dCBpbiBQYWdlIGZvciBudW1iZXIgb2YgcGFnZSBlbGVtZW50cyBwZXIgcGFnZS4gVGhlIGZvbGxvd2luZyBpbnRlcnBvbGF0aW9uIHRleHRzIGFyZSBhdmFpbGFibGU6XG4gICAqXG4gICAqIHt7UEFHRVNJWkV9fTogTnVtYmVyIG9mIGVsZW1lbnRzIHBlciBwYWdlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGFnZXNpemVzOiBzdHJpbmcgPSAnMjB8NTB8MTAwJztcblxuICAvKipcbiAgICogVGV4dCBpbiBQYWdlIGZvciBudW1iZXIgb2YgcGFnZSBlbGVtZW50cyBwZXIgcGFnZS4gVGhlIGZvbGxvd2luZyBpbnRlcnBvbGF0aW9uIHRleHRzIGFyZSBhdmFpbGFibGU6XG4gICAqXG4gICAqIHt7UEFHRVNJWkV9fTogTnVtYmVyIG9mIGVsZW1lbnRzIHBlciBwYWdlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGFnZXNpemV0ZXh0OiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogSXRlbSBmb3IgZWFjaCBwYWdpbmcgZWxlbWVudCAocGFnZSBudW1iZXIpXG4gICAqL1xuICBwdWJsaWMgcGFnaW5hdG9yczogQXJyYXk8YW55PiA9IFtdO1xuXG4gIC8qKlxuICAgKiBFdmVudCB3aGVuIHRoZSBwYWdlIGlzIGNoYW5nZWQgaW4gdGhlIGdyaWQuIFRoZSBuZXcgUGFnZUluZGV4IGlzIGdpdmVuIGFzIGEgcGFyYW1ldGVyLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBwYWdpbmc6IEV2ZW50RW1pdHRlcjxQYWdlclJlcXVlc3Q+ID0gbmV3IEV2ZW50RW1pdHRlcjxQYWdlclJlcXVlc3Q+KCk7XG5cbiAgLyoqXG4gICAqIFRleHQgaW4gcGFnZXIgZm9yICdQYWdlIHggb2YgeScuIFRoZSBmb2xsb3dpbmcgaW50ZXJwb2xhdGlvbiB0ZXh0cyBhcmUgYXZhaWxhYmxlOlxuICAgKiB7e0NVUlJFTlRQQUdFfX06IEN1cnJlbnQgcGFnZVxuICAgKiB7e1RPVEFMUEFHRVN9fTogTnVtYmVyIG9mIHBhZ2VzXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGFnaW5ndGV4dDogc3RyaW5nID0gJyc7XG5cbiAgLy8gI2VuZHJlZ2lvbiBQcm9wZXJ0aWVzXG5cbiAgLy8gI3JlZ2lvbiBDb25zdHJ1Y3RvcnNcblxuICAvKipcbiAgICogQ29uc3RydWN0b3JcbiAgICogQHBhcmVudCBTYWNGb3JtQ29tbW9uXG4gICAqIEBpbmplY3RvciBJbmplY3RvclxuICAgKi9cbiAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgdGhpcy52YWxpZGF0aW9uS2V5U2VydmljZSA9IGluamVjdG9yLmdldChcbiAgICAgIFNBQ1ZBTElEQVRJT05LRVlfU0VSVklDRSxcbiAgICAgIG5ldyBTYWNEZWZhdWx0VmFsaWRhdGlvbktleVNlcnZpY2UoKVxuICAgICk7XG5cbiAgICAvLyBTZXQgRGVmYXVsdCBWYWx1ZXMgZnJvbSBJbmplY3RvclxuICAgIHRoaXMucGFnZXNpemV0ZXh0ID0gdGhpcy52YWxpZGF0aW9uS2V5U2VydmljZS5QYWdpbmdFbnRyaWVzO1xuICAgIHRoaXMucGFnaW5ndGV4dCA9IHRoaXMudmFsaWRhdGlvbktleVNlcnZpY2UuUGFnaW5nUGFnZU9mO1xuXG4gICAgdGhpcy5sbmdSZXNvdXJjZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXG4gICAgICBTQUNMT0NBTElTQVRJT05fU0VSVklDRSxcbiAgICAgIG5ldyBTYWNEZWZhdWx0TG9jYWxpc2F0aW9uU2VydmljZSh0aGlzLnZhbGlkYXRpb25LZXlTZXJ2aWNlKVxuICAgICk7XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIENvbnN0cnVjdG9yc1xuXG4gIC8vICNyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcblxuICAvKipcbiAgICogUHJvcGVydHkgd2l0aCB0ZXh0IGZvciB0b3RhbCBlbnRyaWVzIGluIHBhZ2VcbiAgICovXG4gIHB1YmxpYyBnZXQgUGFnZVNpemVUZXh0KCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMubG5nUmVzb3VyY2VTZXJ2aWNlLkdldFN0cmluZyh0aGlzLnBhZ2VzaXpldGV4dCk7XG4gIH1cblxuICAvKipcbiAgICogVGV4dCB3aXRoIGN1cnJlbnQgcGFnZSBhbmQgdG90YWwgcGFnZXNcbiAgICovXG4gIHB1YmxpYyBnZXQgUGFnaW5nVGV4dCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmxuZ1Jlc291cmNlU2VydmljZS5HZXRTdHJpbmcodGhpcy5wYWdpbmd0ZXh0LCB7XG4gICAgICBDVVJSRU5UUEFHRTogdGhpcy5nZXRDdXJyZW50UGFnZU51bWJlcigpLFxuICAgICAgVE9UQUxQQUdFUzogdGhpcy5nZXRUb3RhbFBhZ2VOdW1iZXIoKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBwYWdlIHNpemVzIGFzIGEgbnVtYmVyIGFycmF5XG4gICAqL1xuICBwdWJsaWMgZ2V0IGdldFBhZ2VTaXplcygpOiBudW1iZXJbXSB7XG4gICAgcmV0dXJuIHRoaXMucGFnZXNpemVzLnNwbGl0KCd8JykubWFwKChpdG0pID0+IE51bWJlcihpdG0pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcm9wZXJ0eSBmb3IgUGFnZXIgRGF0YVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBwYWdlcmRhdGEocDogUGFnZXJEYXRhKSB7XG4gICAgaWYgKHAgIT0gbnVsbCkge1xuICAgICAgdGhpcy50b3RhbFJvd0NvdW50ID0gcC5Ub3RhbFJvd0NvdW50O1xuICAgICAgdGhpcy5hY3RpdmVQYWdlSW5kZXggPSBwLkN1cnJlbnRQYWdlSW5kZXg7XG4gICAgICB0aGlzLnBhZ2VTaXplID0gcC5QYWdlU2l6ZTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZVBhZ2VyKCk7XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBHZXR0ZXJzIEFuZCBTZXR0ZXJzXG5cbiAgLy8gI3JlZ2lvbiBQdWJsaWMgTWV0aG9kc1xuXG4gIC8qKlxuICAgKiBDaGFuZ2VzIHRoZSBwYWdlIHRvIHRoZSBuZXcgaW5kZXhcbiAgICogQHBhcmFtIG5ld1BhZ2VJbmRleCBQYWdlIGluZGV4LiBUaGlzIGNvcnJlc3BvbmRzIHRvIHRoZSBwYWdlIG51bWJlciAtIDEuXG4gICAqL1xuICBwdWJsaWMgY2hhbmdlUGFnZShuZXdQYWdlSW5kZXg6IG51bWJlcikge1xuICAgIGlmICh0aGlzLmFjdGl2ZVBhZ2VJbmRleCAhPT0gbmV3UGFnZUluZGV4KSB7XG4gICAgICB0aGlzLnBhZ2VkKG5ld1BhZ2VJbmRleCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoYW5nZXMgdGhlIHBhZ2Ugc2l6ZSBpbiB0aGUgcGFnZXJcbiAgICogQHBhcmFtIG5ld1NpemUgTmV3IG51bWJlciBvZiBlbGVtZW50cyBwZXIgcGFnZVxuICAgKi9cbiAgcHVibGljIGNoYW5nZVBhZ2VTaXplKG5ld1NpemU6IG51bWJlcikge1xuICAgIGNvbnN0IHBhZ2VyRGF0YTogUGFnZXJSZXF1ZXN0ID0gbmV3IFBhZ2VyUmVxdWVzdChcbiAgICAgIG5ld1NpemUsXG4gICAgICB0aGlzLmFjdGl2ZVBhZ2VJbmRleFxuICAgICk7XG4gICAgdGhpcy5wYWdpbmcuZW1pdChwYWdlckRhdGEpO1xuICB9XG5cbiAgLyoqXG4gICAqU3dpdGNoIHRvIDFzdCBwYWdlXG4gICAqL1xuICBwdWJsaWMgZmlyc3RQYWdlKCkge1xuICAgIGlmICh0aGlzLmFjdGl2ZVBhZ2VJbmRleCAhPT0gdGhpcy5maXJzdFBhZ2VJbmRleCkge1xuICAgICAgdGhpcy5wYWdlZCgwKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgY3VycmVudCBwYWdlIG51bWJlclxuICAgKi9cbiAgcHVibGljIGdldEN1cnJlbnRQYWdlTnVtYmVyKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlUGFnZUluZGV4ICsgMTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgcGFnZXNcbiAgICovXG4gIHB1YmxpYyBnZXRUb3RhbFBhZ2VOdW1iZXIoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5sYXN0UGFnZUluZGV4ICsgMTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYWdpbmcgb24gbGFzdCBwYWdlXG4gICAqL1xuICBwdWJsaWMgbGFzdFBhZ2UoKSB7XG4gICAgaWYgKHRoaXMuYWN0aXZlUGFnZUluZGV4ICE9PSB0aGlzLmxhc3RQYWdlSW5kZXgpIHtcbiAgICAgIHRoaXMucGFnZWQodGhpcy5sYXN0UGFnZUluZGV4KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUGFnaW5nIHRvIG5leHQgcGFnZVxuICAgKi9cbiAgcHVibGljIG5leHRQYWdlKCkge1xuICAgIGlmICh0aGlzLmFjdGl2ZVBhZ2VJbmRleCAhPT0gdGhpcy5sYXN0UGFnZUluZGV4KSB7XG4gICAgICB0aGlzLnBhZ2VkKHRoaXMuYWN0aXZlUGFnZUluZGV4ICsgMSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFBhZ2luZyBvbmUgcGFnZSBiYWNrXG4gICAqL1xuICBwdWJsaWMgcHJldmlvdXNQYWdlKCkge1xuICAgIGlmICh0aGlzLmFjdGl2ZVBhZ2VJbmRleCAhPT0gdGhpcy5maXJzdFBhZ2VJbmRleCkge1xuICAgICAgdGhpcy5wYWdlZCh0aGlzLmFjdGl2ZVBhZ2VJbmRleCAtIDEpO1xuICAgIH1cbiAgfVxuXG4gIC8vICNlbmRyZWdpb24gUHVibGljIE1ldGhvZHNcblxuICAvLyAjcmVnaW9uIFByb3RlY3RlZCBNZXRob2RzXG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyB0aGUgcGFnZXIgZGF0YVxuICAgKi9cbiAgcHJvdGVjdGVkIGNyZWF0ZVBhZ2VyKCkge1xuICAgIHRoaXMucGFnaW5hdG9ycyA9IFtdO1xuXG4gICAgaWYgKHRoaXMudG90YWxSb3dDb3VudCA+IDApIHtcbiAgICAgIGxldCB0b3RhbFBhZ2VDb3VudCA9IE1hdGguY2VpbCh0aGlzLnRvdGFsUm93Q291bnQgLyB0aGlzLnBhZ2VTaXplKTtcblxuICAgICAgLy8gUGFnZUNvdW50IGF1ZiAxIHN0ZWxsZW4sIHdlbm4ga2VpbmUgUmVjb3JkcyB2b3JoYW5kZW4gc2luZC5cbiAgICAgIGlmICh0b3RhbFBhZ2VDb3VudCA9PT0gMCkge1xuICAgICAgICB0b3RhbFBhZ2VDb3VudCA9IDE7XG4gICAgICB9XG5cbiAgICAgIC8vIFBhZ2VJbmRleCBiZXJlY2huZW5cbiAgICAgIHRoaXMubGFzdFBhZ2VJbmRleCA9IHRvdGFsUGFnZUNvdW50IC0gMTtcbiAgICAgIGNvbnN0IHN0YXJ0UGFnZUluZGV4ID0gdGhpcy5nZXRTdGFydFBhZ2VJbmRleCh0b3RhbFBhZ2VDb3VudCk7XG4gICAgICBjb25zdCBlbmRQYWdlSW5kZXggPSB0aGlzLmdldEVuZFBhZ2VJbmRleCh0b3RhbFBhZ2VDb3VudCk7XG5cbiAgICAgIC8vIEluZGV4IEZpeCB3ZW5uIEFrdGl2ZSBTZWl0ZSBncsO2c3NlciBhbHMgbGV0emUgU2VpdGVcbiAgICAgIGlmICh0aGlzLmFjdGl2ZVBhZ2VJbmRleCA+IHRoaXMubGFzdFBhZ2VJbmRleCkge1xuICAgICAgICB0aGlzLmFjdGl2ZVBhZ2VJbmRleCA9IHRoaXMubGFzdFBhZ2VJbmRleDtcbiAgICAgIH1cblxuICAgICAgZm9yIChsZXQgaSA9IHN0YXJ0UGFnZUluZGV4OyBpIDw9IGVuZFBhZ2VJbmRleDsgaSsrKSB7XG4gICAgICAgIHRoaXMucGFnaW5hdG9ycy5wdXNoKGkpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBhZ2luYXRvcnMucHVzaCgwKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgbGFzdCBwYWdlIGluZGV4LlxuICAgKiBAcGFyYW0gdG90YWxQYWdlQ291bnQgVG90YWwgbnVtYmVyIG9mIHBhZ2VzXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0RW5kUGFnZUluZGV4KHRvdGFsUGFnZUNvdW50OiBudW1iZXIpOiBudW1iZXIge1xuICAgIGxldCBlbmRpbmdQYWdlVG9EaXNwbGF5ID0gdGhpcy5hY3RpdmVQYWdlSW5kZXggKyAyO1xuICAgIGNvbnN0IG1heEVuZGluZ1BhZ2VJbmRleCA9IDQgPiB0b3RhbFBhZ2VDb3VudCAtIDEgPyB0b3RhbFBhZ2VDb3VudCAtIDEgOiA0O1xuXG4gICAgaWYgKGVuZGluZ1BhZ2VUb0Rpc3BsYXkgPiB0b3RhbFBhZ2VDb3VudCAtIDEpIHtcbiAgICAgIGVuZGluZ1BhZ2VUb0Rpc3BsYXkgPSB0b3RhbFBhZ2VDb3VudCAtIDE7XG4gICAgfSBlbHNlIGlmICh0aGlzLmFjdGl2ZVBhZ2VJbmRleCA8IDIpIHtcbiAgICAgIGVuZGluZ1BhZ2VUb0Rpc3BsYXkgPSBtYXhFbmRpbmdQYWdlSW5kZXg7XG4gICAgfVxuICAgIHJldHVybiBlbmRpbmdQYWdlVG9EaXNwbGF5O1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHN0YXJ0IGluZGV4XG4gICAqIEBwYXJhbSB0b3RhbFBhZ2VDb3VudCBUb3RhbCBudW1iZXIgb2YgcGFnZXNcbiAgICovXG4gIHByb3RlY3RlZCBnZXRTdGFydFBhZ2VJbmRleCh0b3RhbFBhZ2VDb3VudDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBsZXQgc3RhcnRpbmdQYWdlVG9EaXNwbGF5OiBudW1iZXIgPSAwO1xuICAgIHN0YXJ0aW5nUGFnZVRvRGlzcGxheSA9IHRoaXMuYWN0aXZlUGFnZUluZGV4IC0gMjtcblxuICAgIGlmICh0b3RhbFBhZ2VDb3VudCAtIHRoaXMuYWN0aXZlUGFnZUluZGV4IC0gMSA8IDIpIHtcbiAgICAgIHN0YXJ0aW5nUGFnZVRvRGlzcGxheSA9IHRvdGFsUGFnZUNvdW50IC0gNTtcbiAgICB9XG5cbiAgICBpZiAoc3RhcnRpbmdQYWdlVG9EaXNwbGF5IDwgMCkge1xuICAgICAgc3RhcnRpbmdQYWdlVG9EaXNwbGF5ID0gMDtcbiAgICB9XG4gICAgcmV0dXJuIHN0YXJ0aW5nUGFnZVRvRGlzcGxheTtcbiAgfVxuXG4gIC8qKlxuICAgKiBtZXRob2QgdHJpZ2dlcnMgdGhlIGV2ZW50IHRoYXQgcGFnaW5nIGhhcyB0YWtlbiBwbGFjZVxuICAgKi9cbiAgcHJvdGVjdGVkIHBhZ2VkKG5ld1BhZ2VJbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgcGFnZXJEYXRhOiBQYWdlclJlcXVlc3QgPSBuZXcgUGFnZXJSZXF1ZXN0KFxuICAgICAgdGhpcy5wYWdlU2l6ZSxcbiAgICAgIG5ld1BhZ2VJbmRleFxuICAgICk7XG4gICAgdGhpcy5wYWdpbmcuZW1pdChwYWdlckRhdGEpO1xuICB9XG5cbiAgLy8gI2VuZHJlZ2lvbiBQcm90ZWN0ZWQgTWV0aG9kc1xufVxuIl0sIm1hcHBpbmdzIjoiOzJGQUVBLE9BQVNBLHVCQUF1QixDQUFFQyw2QkFBNkIsS0FBUSx5Q0FBeUMsQ0FDaEgsT0FBU0Msd0JBQXdCLENBQUVDLDhCQUE4QixLQUFRLDBDQUEwQyxDQUNuSCxPQUFTQyxVQUFVLEtBQVEsc0JBQXNCLENBQ2pELE9BQW9CQyxZQUFZLEtBQVEsU0FBUyxDQUNqRCxPQUFTQyxTQUFTLENBQUVDLFlBQVksQ0FBWUMsS0FBSyxDQUFFQyxNQUFNLEtBQVEsZUFBZSxDLGlDQUdoRjs7R0FHQSxLQUNzQixDQUFBQyxlQUFlLENBMkZuQztBQUVB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LENBQUEsT0FDakQ0RCxxQkFBcUIsQ0FBR1gsY0FBYyxDQUFHLENBQUMsQyxDQUMzQyxLQUFBbkQsY0FBQSxHQUFBbUMsQ0FBQSxXQUFBbkMsY0FBQSxHQUFBRSxDQUFBLE9BRUQsR0FBSTRELHFCQUFxQixDQUFHLENBQUMsQ0FBRSxDQUFBOUQsY0FBQSxHQUFBbUMsQ0FBQSxVQUFBbkMsY0FBQSxHQUFBRSxDQUFBLE9BQzdCNEQscUJBQXFCLENBQUcsQ0FBQyxDLENBQzFCLEtBQUE5RCxjQUFBLEdBQUFtQyxDQUFBLFdBQUFuQyxjQUFBLEdBQUFFLENBQUEsT0FDRCxNQUFPLENBQUE0RCxxQkFBcUIsQ0FDOUIsQ0FFQTs7T0FHVXBCLEtBQUtBLENBQUNELFlBQW9CLEVBQUF6QyxjQUFBLEdBQUFDLENBQUEsT0FDbEMsS0FBTSxDQUFBNEMsU0FBUyxFQUFBN0MsY0FBQSxHQUFBRSxDQUFBLE9BQWlCLEdBQUksQ0FBQVYsWUFBWSxDQUM5QyxJQUFJLENBQUNpQixRQUFRLENBQ2JnQyxZQUFZLENBQ2IsRUFBQ3pDLGNBQUEsR0FBQUUsQ0FBQSxPQUNGLElBQUksQ0FBQ1ksTUFBTSxDQUFDZ0MsSUFBSSxDQUFDRCxTQUFTLENBQUMsQ0FDN0IsQyx3SEF6VG9CaEQsZUFBZSxDQUFBa0UsSUFBQSxHQUFBQyxLQUFBLENBQUFDLEVBQUEsQ0FBQUMsUUFBQSxHQUFBQyxNQUFBLENBQUFGLEVBQUEsQ0FBQUcsZUFBQSxDQUFBM0UsU0FBQSxJLDhHQUFmSSxlQUFlLENBQUF3RSxNQUFBLEVBQUFoRSxhQUFBLGlCQUFBRyxJQUFBLFFBQUFFLGdCQUFBLG9CQUFBQyxTQUFBLGFBQUFDLFlBQUEsZ0JBQUFHLFVBQUEsY0FBQWtCLFNBQUEsY0FBQXFDLE9BQUEsRUFBQXhELE1BQUEsV0FBQXlELFFBQUEsQ0FBQU4sRUFBQSxJLFFBQWZwRSxlQUFlLEVBQUFHLGNBQUEsR0FBQUUsQ0FBQSxPLG9GQUFmTCxlQUFlLENBQUEyRSxVQUFBLEcsS0FEcEMvRSxTLDRIQTRCVVksYUFBYSxHLEtBRG5CVixLLEdBaUJNYSxJQUFJLEcsS0FEVmIsSyxHQVlJZSxnQkFBZ0IsRyxLQUR0QmYsSyxHQVNNZ0IsU0FBUyxHLEtBRGZoQixLLEdBU01pQixZQUFZLEcsS0FEbEJqQixLLEdBWU1tQixNQUFNLEcsS0FEWmxCLE0sR0FTTW1CLFVBQVUsRyxLQURoQnBCLEssR0E0RFVzQyxTQUFTLEcsS0FEbkJ0QyxLIiwiaWdub3JlTGlzdCI6W119
|