@fundamental-ngx/core 0.46.0-rc.2 → 0.46.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.
Files changed (113) hide show
  1. package/button/base-button.d.ts +3 -1
  2. package/button/button.component.d.ts +6 -1
  3. package/content-density/content-density.module.d.ts +2 -3
  4. package/content-density/index.d.ts +3 -2
  5. package/content-density/provide-content-density.d.ts +7 -0
  6. package/date-picker/date-picker.component.d.ts +2 -0
  7. package/datetime-picker/datetime-picker.component.d.ts +4 -2
  8. package/dialog/base/dialog-base.service.d.ts +4 -3
  9. package/dialog/dialog-container/dialog-container.component.d.ts +8 -7
  10. package/dialog/index.d.ts +11 -10
  11. package/dialog/utils/dialog-container.model.d.ts +4 -0
  12. package/esm2022/avatar/avatar.component.mjs +3 -3
  13. package/esm2022/button/base-button.mjs +5 -3
  14. package/esm2022/button/button.component.mjs +21 -7
  15. package/esm2022/carousel/carousel.component.mjs +3 -3
  16. package/esm2022/checkbox/checkbox/checkbox.component.mjs +3 -3
  17. package/esm2022/content-density/content-density.module.mjs +6 -68
  18. package/esm2022/content-density/index.mjs +4 -3
  19. package/esm2022/content-density/provide-content-density.mjs +71 -0
  20. package/esm2022/date-picker/date-picker.component.mjs +14 -4
  21. package/esm2022/datetime-picker/datetime-picker.component.mjs +12 -7
  22. package/esm2022/dialog/base/dialog-base.service.mjs +7 -3
  23. package/esm2022/dialog/dialog-container/dialog-container.component.mjs +11 -11
  24. package/esm2022/dialog/index.mjs +12 -11
  25. package/esm2022/dialog/utils/dialog-container.model.mjs +2 -0
  26. package/esm2022/form/form-input-message-group/form-input-message-group.component.mjs +7 -3
  27. package/esm2022/generic-tag/fundamental-ngx-core-generic-tag.mjs +5 -0
  28. package/esm2022/generic-tag/generic-tag.component.mjs +75 -0
  29. package/esm2022/generic-tag/generic-tag.module.mjs +16 -0
  30. package/esm2022/generic-tag/index.mjs +4 -0
  31. package/esm2022/generic-tag/tokens.mjs +3 -0
  32. package/esm2022/illustrated-message/illustrated-message.component.mjs +3 -3
  33. package/esm2022/message-box/message-box-container/message-box-container.component.mjs +12 -12
  34. package/esm2022/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +3 -3
  35. package/esm2022/multi-input/multi-input.component.mjs +3 -3
  36. package/esm2022/pagination/pagination.component.mjs +1 -1
  37. package/esm2022/popover/popover-service/popover.service.mjs +10 -1
  38. package/esm2022/popover/popover.component.mjs +5 -1
  39. package/esm2022/rating-indicator/components/rating-indicator.component.mjs +3 -3
  40. package/esm2022/scrollbar/scrollbar.directive.mjs +15 -8
  41. package/esm2022/select/select.component.mjs +6 -4
  42. package/esm2022/theming/index.mjs +4 -3
  43. package/esm2022/theming/provide-theming.mjs +16 -0
  44. package/esm2022/theming/theming.module.mjs +6 -24
  45. package/esm2022/theming/tokens.mjs +5 -2
  46. package/esm2022/time-picker/time-picker.component.mjs +3 -3
  47. package/esm2022/token/token.component.mjs +2 -2
  48. package/esm2022/upload-collection/upload-collection-form-item/upload-collection-form-item.component.mjs +3 -3
  49. package/esm2022/wizard/wizard-step-indicator/wizard-step-indicator.component.mjs +3 -3
  50. package/fesm2022/fundamental-ngx-core-avatar.mjs +2 -2
  51. package/fesm2022/fundamental-ngx-core-avatar.mjs.map +1 -1
  52. package/fesm2022/fundamental-ngx-core-button.mjs +23 -7
  53. package/fesm2022/fundamental-ngx-core-button.mjs.map +1 -1
  54. package/fesm2022/fundamental-ngx-core-carousel.mjs +2 -2
  55. package/fesm2022/fundamental-ngx-core-carousel.mjs.map +1 -1
  56. package/fesm2022/fundamental-ngx-core-checkbox.mjs +2 -2
  57. package/fesm2022/fundamental-ngx-core-checkbox.mjs.map +1 -1
  58. package/fesm2022/fundamental-ngx-core-content-density.mjs +111 -103
  59. package/fesm2022/fundamental-ngx-core-content-density.mjs.map +1 -1
  60. package/fesm2022/fundamental-ngx-core-date-picker.mjs +13 -3
  61. package/fesm2022/fundamental-ngx-core-date-picker.mjs.map +1 -1
  62. package/fesm2022/fundamental-ngx-core-datetime-picker.mjs +11 -6
  63. package/fesm2022/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
  64. package/fesm2022/fundamental-ngx-core-dialog.mjs +160 -156
  65. package/fesm2022/fundamental-ngx-core-dialog.mjs.map +1 -1
  66. package/fesm2022/fundamental-ngx-core-form.mjs +5 -2
  67. package/fesm2022/fundamental-ngx-core-form.mjs.map +1 -1
  68. package/fesm2022/fundamental-ngx-core-generic-tag.mjs +96 -0
  69. package/fesm2022/fundamental-ngx-core-generic-tag.mjs.map +1 -0
  70. package/fesm2022/fundamental-ngx-core-illustrated-message.mjs +2 -2
  71. package/fesm2022/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
  72. package/fesm2022/fundamental-ngx-core-message-box.mjs +9 -9
  73. package/fesm2022/fundamental-ngx-core-message-box.mjs.map +1 -1
  74. package/fesm2022/fundamental-ngx-core-multi-input.mjs +4 -4
  75. package/fesm2022/fundamental-ngx-core-multi-input.mjs.map +1 -1
  76. package/fesm2022/fundamental-ngx-core-pagination.mjs +1 -1
  77. package/fesm2022/fundamental-ngx-core-pagination.mjs.map +1 -1
  78. package/fesm2022/fundamental-ngx-core-popover.mjs +13 -0
  79. package/fesm2022/fundamental-ngx-core-popover.mjs.map +1 -1
  80. package/fesm2022/fundamental-ngx-core-rating-indicator.mjs +2 -2
  81. package/fesm2022/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
  82. package/fesm2022/fundamental-ngx-core-scrollbar.mjs +14 -7
  83. package/fesm2022/fundamental-ngx-core-scrollbar.mjs.map +1 -1
  84. package/fesm2022/fundamental-ngx-core-select.mjs +5 -3
  85. package/fesm2022/fundamental-ngx-core-select.mjs.map +1 -1
  86. package/fesm2022/fundamental-ngx-core-theming.mjs +22 -23
  87. package/fesm2022/fundamental-ngx-core-theming.mjs.map +1 -1
  88. package/fesm2022/fundamental-ngx-core-time-picker.mjs +2 -2
  89. package/fesm2022/fundamental-ngx-core-time-picker.mjs.map +1 -1
  90. package/fesm2022/fundamental-ngx-core-token.mjs +2 -2
  91. package/fesm2022/fundamental-ngx-core-token.mjs.map +1 -1
  92. package/fesm2022/fundamental-ngx-core-upload-collection.mjs +2 -2
  93. package/fesm2022/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  94. package/fesm2022/fundamental-ngx-core-wizard.mjs +2 -2
  95. package/fesm2022/fundamental-ngx-core-wizard.mjs.map +1 -1
  96. package/form/form-input-message-group/form-input-message-group.component.d.ts +3 -1
  97. package/fundamental-ngx-core-v0.46.0-rc.21.tgz +0 -0
  98. package/generic-tag/README.md +25 -0
  99. package/generic-tag/generic-tag.component.d.ts +43 -0
  100. package/generic-tag/generic-tag.module.d.ts +7 -0
  101. package/generic-tag/index.d.ts +3 -0
  102. package/generic-tag/tokens.d.ts +2 -0
  103. package/message-box/message-box-container/message-box-container.component.d.ts +7 -6
  104. package/multi-input/multi-input.component.d.ts +3 -1
  105. package/package.json +9 -3
  106. package/popover/popover-service/popover.service.d.ts +4 -0
  107. package/popover/popover.component.d.ts +2 -0
  108. package/schematics/add-dependencies/index.js +4 -4
  109. package/scrollbar/scrollbar.directive.d.ts +4 -2
  110. package/select/select.component.d.ts +4 -2
  111. package/theming/index.d.ts +3 -2
  112. package/theming/provide-theming.d.ts +7 -0
  113. package/fundamental-ngx-core-v0.46.0-rc.2.tgz +0 -0
@@ -245,7 +245,7 @@ export class RatingIndicatorComponent {
245
245
  multi: true
246
246
  },
247
247
  registerFormItemControl(RatingIndicatorComponent)
248
- ], usesOnChanges: true, ngImport: i0, template: "<!-- role=\"application\" is used in order to let user to change value with left/right arrows in JAWS, since JAWS ovverrides these actions -->\n<div class=\"fd-rating-indicator__container\" role=\"application\" aria-roledescription=\"Rating indicator\">\n <!-- Zero value if we don't have provided value from user, `ratingAverage` or `ratings` -->\n <ng-container *ngTemplateOutlet=\"zeroRate\"></ng-container>\n <!-- Available rate values -->\n <ng-container *ngFor=\"let rate of _rates; index as i; trackBy: trackByFn\">\n <input\n [attr.aria-label]=\"i | ratingStarLabel : _rates.length : allowHalves\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input\"\n [disabled]=\"disabled\"\n [id]=\"rate.id\"\n name=\"rating-{{ viewRatingUID }}\"\n [value]=\"rate.value\"\n [checked]=\"viewValue === rate.value\"\n (click)=\"onSelect(rate.value)\"\n />\n <label class=\"fd-rating-indicator__label\" [for]=\"rate.id\" aria-hidden=\"true\">\n <i *ngIf=\"ratedIcon\" class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon\"></i>\n <i *ngIf=\"unratedIcon\" class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon\"></i>\n </label>\n </ng-container>\n</div>\n<!-- Popover if displayAllRatings is true and we have ratings object -->\n<span\n [fdPopoverTrigger]=\"allRatingContent\"\n *ngIf=\"displayAllRatings && _ratingItems?.length; else dynamicText\"\n class=\"fd-rating-indicator__dynamic-text\"\n>\n (<span area-label=\"Total raiting\" fd-link>{{ totalRatings }}</span\n >)\n</span>\n<fd-popover\n #allRatingContent\n [triggers]=\"['mouseenter', 'mouseleave']\"\n [noArrow]=\"false\"\n placement=\"top\"\n additionalBodyClass=\"fd-rating-indicator__popover\"\n>\n <div class=\"fd-rating-indicator__sum-row\" [class]=\"sizeClass\" *ngFor=\"let rating of _ratingItems\">\n <div class=\"fd-rating-indicator__container\">\n <ng-container *ngFor=\"let rate of _rates; trackBy: trackByFn\">\n <span\n [class.fd-rating-indicator__input-checked]=\"rate.value === rating.rate\"\n class=\"fd-rating-indicator__input\"\n ></span>\n <label class=\"fd-rating-indicator__label\">\n <i *ngIf=\"ratedIcon\" class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon\"></i>\n <i *ngIf=\"unratedIcon\" class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon\"></i>\n </label>\n </ng-container>\n </div>\n ({{ rating.votes }})\n </div>\n</fd-popover>\n\n<ng-template #dynamicText>\n <span *ngIf=\"totalRatings\" class=\"fd-rating-indicator__dynamic-text\">({{ totalRatings }})</span>\n <span *ngIf=\"!totalRatings\" class=\"fd-rating-indicator__dynamic-text\"\n >({{ viewValue }} {{ dynamicTextIndicator }} {{ indicatorCount }})</span\n >\n</ng-template>\n<ng-template #zeroRate let-halves=\"halves\">\n <input\n aria-label=\"Reset to zero\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input fd-rating-indicator__input--zero-rating\"\n (click)=\"onSelect(0)\"\n [disabled]=\"disabled\"\n name=\"rating-{{ viewRatingUID }}{{ halves ? '-halves' : '' }}\"\n [checked]=\"viewValue === 0\"\n />\n <label class=\"fd-rating-indicator__label fd-rating-indicator__label--zero-rating\" aria-hidden=\"true\"></label>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.30.2-rc.6\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-rating-indicator{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem;-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-rating-indicator:after,.fd-rating-indicator:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator--cozy{--fontSize:1.5rem;--spacingBetweenIcons:.1875rem;margin:.8125rem 0}.fd-rating-indicator--compact{margin:.5rem 0}.fd-rating-indicator--compact,.fd-rating-indicator--condensed{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--xs{--fontSize:.75rem;--spacingBetweenIcons:1px}.fd-rating-indicator--sm{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--md{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem}.fd-rating-indicator--lg{--fontSize:2rem;--spacingBetweenIcons:.25rem}.fd-rating-indicator__container{-webkit-box-sizing:border-box;border:0;border-radius:var(--fdRating_Indicator_Border_Radius);box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-rating-indicator__container:after,.fd-rating-indicator__container:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator__container:focus-within{outline-color:var(--sapContent_FocusColor);outline-offset:var(--fdRating_Indicator_Focus_Outline_Offset, 0);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-rating-indicator__container:focus-within .fd-rating-indicator__input,.fd-rating-indicator__container:focus-within .fd-rating-indicator__label{outline:none!important}.fd-rating-indicator__input{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fontSize);line-height:var(--sapContent_LineHeight);margin:0;opacity:.0001;padding:0;position:absolute;top:0;width:var(--fontSize);z-index:-1}.fd-rating-indicator__input:after,.fd-rating-indicator__input:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator__input:checked.is-focus,.fd-rating-indicator__input:checked:focus{outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-rating-indicator__input:checked.is-focus+.fd-rating-indicator__label,.fd-rating-indicator__input:checked:focus+.fd-rating-indicator__label{outline-color:var(--sapContent_FocusColor);outline-offset:0;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-rating-indicator__label{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;display:flex;float:left;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fontSize);line-height:var(--sapContent_LineHeight);margin:0;margin-right:var(--spacingBetweenIcons);opacity:1;padding:0}.fd-rating-indicator__label:after,.fd-rating-indicator__label:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator__label:before{color:var(--sapContent_RatedColor);content:\"\\e065\";font-family:SAP-icons;font-size:var(--fontSize)}.fd-rating-indicator__label:last-child{margin-right:0}.fd-rating-indicator__label:hover:before{-webkit-transition:opacity .125s ease-in;opacity:var(--fdRating_Indicator_Selected_Hover_Opacity);transition:opacity .125s ease-in}.fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e0a1\"}.fd-rating-indicator__dynamic-text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 0 0 .5rem;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-rating-indicator__dynamic-text:after,.fd-rating-indicator__dynamic-text:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator--hide-dynamic-text>.fd-rating-indicator__dynamic-text{display:none}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__input:first-child+label,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__input:first-child+label{margin-right:0}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__label,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__label{float:right}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__label:last-child,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__label:last-child{margin-right:var(--spacingBetweenIcons)}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__dynamic-text,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__dynamic-text{margin-left:0;margin-right:.5rem}.fd-rating-indicator.is-disabled,.fd-rating-indicator:disabled,.fd-rating-indicator[aria-disabled=true]{opacity:var(--fdRating_Indicator_Disabled_Control_Opacity);pointer-events:none}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:before{color:var(--fdRating_Indicator_Disabled_Selected_Color);content:\"\\e065\"}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Disabled_Unselected_Color);content:\"\\e065\";font-size:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--display-mode{--fontSize:1rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label{margin-right:.125rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Display_Only_Selected_Color);content:\"\\e065\";font-size:var(--fontSize)}.fd-rating-indicator--display-mode .fd-rating-indicator__label[dir=rtl],[dir=rtl] .fd-rating-indicator--display-mode .fd-rating-indicator__label{margin-left:.125rem;margin-right:0}.fd-rating-indicator--display-mode,.fd-rating-indicator--non-interactive{pointer-events:none}.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e065\";font-size:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--icon .fd-rating-indicator__label{height:var(--fontSize);width:var(--fontSize)}.fd-rating-indicator--icon .fd-rating-indicator__label:after,.fd-rating-indicator--icon .fd-rating-indicator__label:before{content:none!important}.fd-rating-indicator--icon .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{font-size:var(--fontSize);height:100%;line-height:1}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{display:none}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated{display:block}.fd-rating-indicator--half-star .fd-rating-indicator__input{height:var(--fontSize);width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star .fd-rating-indicator__label{margin-right:0;overflow:hidden;width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6){flex-direction:row-reverse;margin-right:var(--spacingBetweenIcons)}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6)[dir=rtl],[dir=rtl] .fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6){margin-left:var(--spacingBetweenIcons);margin-right:0}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6)[dir=rtl]:last-child,[dir=rtl] .fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6):last-child{margin-left:0}.fd-rating-indicator--half-star .fd-rating-indicator__label:last-child{margin-right:0}.fd-rating-indicator--half-star .fd-rating-indicator--icon .fd-rating-indicator__label{width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star .fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio) * .5)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before{font-size:var(--fontSize)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio) * .5)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before{font-size:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__input--zero-rating,.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__label--zero-rating,.fd-rating-indicator__input--zero-rating,.fd-rating-indicator__label--zero-rating{margin:0;opacity:.0001;overflow:hidden;padding:0;width:0}.fd-rating-indicator__popover{padding:.5rem 0!important}.fd-rating-indicator__popover .fd-rating-indicator__sum-row{display:flex;align-items:center;padding:.5rem 1rem;margin:0}.fd-rating-indicator__popover .fd-rating-indicator__sum-row .fd-rating-indicator__container{margin-right:.5rem}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "directive", type: i2.PopoverTriggerDirective, selector: "[fdPopoverTrigger], [fd-popover-trigger]", inputs: ["fdPopoverTrigger"] }, { kind: "pipe", type: i3.RatingStarLabelPipe, name: "ratingStarLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
248
+ ], usesOnChanges: true, ngImport: i0, template: "<!-- role=\"application\" is used in order to let user to change value with left/right arrows in JAWS, since JAWS ovverrides these actions -->\n<div class=\"fd-rating-indicator__container\" role=\"application\" aria-roledescription=\"Rating indicator\">\n <!-- Zero value if we don't have provided value from user, `ratingAverage` or `ratings` -->\n <ng-container *ngTemplateOutlet=\"zeroRate\"></ng-container>\n <!-- Available rate values -->\n <ng-container *ngFor=\"let rate of _rates; index as i; trackBy: trackByFn\">\n <input\n [attr.aria-label]=\"i | ratingStarLabel : _rates.length : allowHalves\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input\"\n [disabled]=\"disabled\"\n [id]=\"rate.id\"\n name=\"rating-{{ viewRatingUID }}\"\n [value]=\"rate.value\"\n [checked]=\"viewValue === rate.value\"\n (click)=\"onSelect(rate.value)\"\n />\n <label class=\"fd-rating-indicator__label\" [for]=\"rate.id\" aria-hidden=\"true\">\n <i *ngIf=\"ratedIcon\" class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon\"></i>\n <i *ngIf=\"unratedIcon\" class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon\"></i>\n </label>\n </ng-container>\n</div>\n<!-- Popover if displayAllRatings is true and we have ratings object -->\n<span\n [fdPopoverTrigger]=\"allRatingContent\"\n *ngIf=\"displayAllRatings && _ratingItems?.length; else dynamicText\"\n class=\"fd-rating-indicator__dynamic-text\"\n>\n (<span aria-label=\"Total raiting\" fd-link>{{ totalRatings }}</span\n >)\n</span>\n<fd-popover\n #allRatingContent\n [triggers]=\"['mouseenter', 'mouseleave']\"\n [noArrow]=\"false\"\n placement=\"top\"\n additionalBodyClass=\"fd-rating-indicator__popover\"\n>\n <div class=\"fd-rating-indicator__sum-row\" [class]=\"sizeClass\" *ngFor=\"let rating of _ratingItems\">\n <div class=\"fd-rating-indicator__container\">\n <ng-container *ngFor=\"let rate of _rates; trackBy: trackByFn\">\n <span\n [class.fd-rating-indicator__input-checked]=\"rate.value === rating.rate\"\n class=\"fd-rating-indicator__input\"\n ></span>\n <label class=\"fd-rating-indicator__label\">\n <i *ngIf=\"ratedIcon\" class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon\"></i>\n <i *ngIf=\"unratedIcon\" class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon\"></i>\n </label>\n </ng-container>\n </div>\n ({{ rating.votes }})\n </div>\n</fd-popover>\n\n<ng-template #dynamicText>\n <span *ngIf=\"totalRatings\" class=\"fd-rating-indicator__dynamic-text\">({{ totalRatings }})</span>\n <span *ngIf=\"!totalRatings\" class=\"fd-rating-indicator__dynamic-text\"\n >({{ viewValue }} {{ dynamicTextIndicator }} {{ indicatorCount }})</span\n >\n</ng-template>\n<ng-template #zeroRate let-halves=\"halves\">\n <input\n aria-label=\"Reset to zero\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input fd-rating-indicator__input--zero-rating\"\n (click)=\"onSelect(0)\"\n [disabled]=\"disabled\"\n name=\"rating-{{ viewRatingUID }}{{ halves ? '-halves' : '' }}\"\n [checked]=\"viewValue === 0\"\n />\n <label class=\"fd-rating-indicator__label fd-rating-indicator__label--zero-rating\" aria-hidden=\"true\"></label>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.30.2-rc.6\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-rating-indicator{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem;-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-rating-indicator:after,.fd-rating-indicator:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator--cozy{--fontSize:1.5rem;--spacingBetweenIcons:.1875rem;margin:.8125rem 0}.fd-rating-indicator--compact{margin:.5rem 0}.fd-rating-indicator--compact,.fd-rating-indicator--condensed{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--xs{--fontSize:.75rem;--spacingBetweenIcons:1px}.fd-rating-indicator--sm{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--md{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem}.fd-rating-indicator--lg{--fontSize:2rem;--spacingBetweenIcons:.25rem}.fd-rating-indicator__container{-webkit-box-sizing:border-box;border:0;border-radius:var(--fdRating_Indicator_Border_Radius);box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-rating-indicator__container:after,.fd-rating-indicator__container:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator__container:focus-within{outline-color:var(--sapContent_FocusColor);outline-offset:var(--fdRating_Indicator_Focus_Outline_Offset, 0);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-rating-indicator__container:focus-within .fd-rating-indicator__input,.fd-rating-indicator__container:focus-within .fd-rating-indicator__label{outline:none!important}.fd-rating-indicator__input{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fontSize);line-height:var(--sapContent_LineHeight);margin:0;opacity:.0001;padding:0;position:absolute;top:0;width:var(--fontSize);z-index:-1}.fd-rating-indicator__input:after,.fd-rating-indicator__input:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator__input:checked.is-focus,.fd-rating-indicator__input:checked:focus{outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-rating-indicator__input:checked.is-focus+.fd-rating-indicator__label,.fd-rating-indicator__input:checked:focus+.fd-rating-indicator__label{outline-color:var(--sapContent_FocusColor);outline-offset:0;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-rating-indicator__label{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;display:flex;float:left;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fontSize);line-height:var(--sapContent_LineHeight);margin:0;margin-right:var(--spacingBetweenIcons);opacity:1;padding:0}.fd-rating-indicator__label:after,.fd-rating-indicator__label:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator__label:before{color:var(--sapContent_RatedColor);content:\"\\e065\";font-family:SAP-icons;font-size:var(--fontSize)}.fd-rating-indicator__label:last-child{margin-right:0}.fd-rating-indicator__label:hover:before{-webkit-transition:opacity .125s ease-in;opacity:var(--fdRating_Indicator_Selected_Hover_Opacity);transition:opacity .125s ease-in}.fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e0a1\"}.fd-rating-indicator__dynamic-text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 0 0 .5rem;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-rating-indicator__dynamic-text:after,.fd-rating-indicator__dynamic-text:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator--hide-dynamic-text>.fd-rating-indicator__dynamic-text{display:none}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__input:first-child+label,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__input:first-child+label{margin-right:0}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__label,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__label{float:right}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__label:last-child,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__label:last-child{margin-right:var(--spacingBetweenIcons)}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__dynamic-text,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__dynamic-text{margin-left:0;margin-right:.5rem}.fd-rating-indicator.is-disabled,.fd-rating-indicator:disabled,.fd-rating-indicator[aria-disabled=true]{opacity:var(--fdRating_Indicator_Disabled_Control_Opacity);pointer-events:none}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:before{color:var(--fdRating_Indicator_Disabled_Selected_Color);content:\"\\e065\"}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Disabled_Unselected_Color);content:\"\\e065\";font-size:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--display-mode{--fontSize:1rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label{margin-right:.125rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Display_Only_Selected_Color);content:\"\\e065\";font-size:var(--fontSize)}.fd-rating-indicator--display-mode .fd-rating-indicator__label[dir=rtl],[dir=rtl] .fd-rating-indicator--display-mode .fd-rating-indicator__label{margin-left:.125rem;margin-right:0}.fd-rating-indicator--display-mode,.fd-rating-indicator--non-interactive{pointer-events:none}.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e065\";font-size:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--icon .fd-rating-indicator__label{height:var(--fontSize);width:var(--fontSize)}.fd-rating-indicator--icon .fd-rating-indicator__label:after,.fd-rating-indicator--icon .fd-rating-indicator__label:before{content:none!important}.fd-rating-indicator--icon .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{font-size:var(--fontSize);height:100%;line-height:1}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{display:none}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated{display:block}.fd-rating-indicator--half-star .fd-rating-indicator__input{height:var(--fontSize);width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star .fd-rating-indicator__label{margin-right:0;overflow:hidden;width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6){flex-direction:row-reverse;margin-right:var(--spacingBetweenIcons)}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6)[dir=rtl],[dir=rtl] .fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6){margin-left:var(--spacingBetweenIcons);margin-right:0}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6)[dir=rtl]:last-child,[dir=rtl] .fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6):last-child{margin-left:0}.fd-rating-indicator--half-star .fd-rating-indicator__label:last-child{margin-right:0}.fd-rating-indicator--half-star .fd-rating-indicator--icon .fd-rating-indicator__label{width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star .fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio) * .5)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before{font-size:var(--fontSize)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio) * .5)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before{font-size:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__input--zero-rating,.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__label--zero-rating,.fd-rating-indicator__input--zero-rating,.fd-rating-indicator__label--zero-rating{margin:0;opacity:.0001;overflow:hidden;padding:0;width:0}.fd-rating-indicator__popover{padding:.5rem 0!important}.fd-rating-indicator__popover .fd-rating-indicator__sum-row{display:flex;align-items:center;padding:.5rem 1rem;margin:0}.fd-rating-indicator__popover .fd-rating-indicator__sum-row .fd-rating-indicator__container{margin-right:.5rem}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "directive", type: i2.PopoverTriggerDirective, selector: "[fdPopoverTrigger], [fd-popover-trigger]", inputs: ["fdPopoverTrigger"] }, { kind: "pipe", type: i3.RatingStarLabelPipe, name: "ratingStarLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
249
249
  }
250
250
  __decorate([
251
251
  applyCssClass,
@@ -262,7 +262,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
262
262
  multi: true
263
263
  },
264
264
  registerFormItemControl(RatingIndicatorComponent)
265
- ], template: "<!-- role=\"application\" is used in order to let user to change value with left/right arrows in JAWS, since JAWS ovverrides these actions -->\n<div class=\"fd-rating-indicator__container\" role=\"application\" aria-roledescription=\"Rating indicator\">\n <!-- Zero value if we don't have provided value from user, `ratingAverage` or `ratings` -->\n <ng-container *ngTemplateOutlet=\"zeroRate\"></ng-container>\n <!-- Available rate values -->\n <ng-container *ngFor=\"let rate of _rates; index as i; trackBy: trackByFn\">\n <input\n [attr.aria-label]=\"i | ratingStarLabel : _rates.length : allowHalves\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input\"\n [disabled]=\"disabled\"\n [id]=\"rate.id\"\n name=\"rating-{{ viewRatingUID }}\"\n [value]=\"rate.value\"\n [checked]=\"viewValue === rate.value\"\n (click)=\"onSelect(rate.value)\"\n />\n <label class=\"fd-rating-indicator__label\" [for]=\"rate.id\" aria-hidden=\"true\">\n <i *ngIf=\"ratedIcon\" class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon\"></i>\n <i *ngIf=\"unratedIcon\" class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon\"></i>\n </label>\n </ng-container>\n</div>\n<!-- Popover if displayAllRatings is true and we have ratings object -->\n<span\n [fdPopoverTrigger]=\"allRatingContent\"\n *ngIf=\"displayAllRatings && _ratingItems?.length; else dynamicText\"\n class=\"fd-rating-indicator__dynamic-text\"\n>\n (<span area-label=\"Total raiting\" fd-link>{{ totalRatings }}</span\n >)\n</span>\n<fd-popover\n #allRatingContent\n [triggers]=\"['mouseenter', 'mouseleave']\"\n [noArrow]=\"false\"\n placement=\"top\"\n additionalBodyClass=\"fd-rating-indicator__popover\"\n>\n <div class=\"fd-rating-indicator__sum-row\" [class]=\"sizeClass\" *ngFor=\"let rating of _ratingItems\">\n <div class=\"fd-rating-indicator__container\">\n <ng-container *ngFor=\"let rate of _rates; trackBy: trackByFn\">\n <span\n [class.fd-rating-indicator__input-checked]=\"rate.value === rating.rate\"\n class=\"fd-rating-indicator__input\"\n ></span>\n <label class=\"fd-rating-indicator__label\">\n <i *ngIf=\"ratedIcon\" class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon\"></i>\n <i *ngIf=\"unratedIcon\" class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon\"></i>\n </label>\n </ng-container>\n </div>\n ({{ rating.votes }})\n </div>\n</fd-popover>\n\n<ng-template #dynamicText>\n <span *ngIf=\"totalRatings\" class=\"fd-rating-indicator__dynamic-text\">({{ totalRatings }})</span>\n <span *ngIf=\"!totalRatings\" class=\"fd-rating-indicator__dynamic-text\"\n >({{ viewValue }} {{ dynamicTextIndicator }} {{ indicatorCount }})</span\n >\n</ng-template>\n<ng-template #zeroRate let-halves=\"halves\">\n <input\n aria-label=\"Reset to zero\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input fd-rating-indicator__input--zero-rating\"\n (click)=\"onSelect(0)\"\n [disabled]=\"disabled\"\n name=\"rating-{{ viewRatingUID }}{{ halves ? '-halves' : '' }}\"\n [checked]=\"viewValue === 0\"\n />\n <label class=\"fd-rating-indicator__label fd-rating-indicator__label--zero-rating\" aria-hidden=\"true\"></label>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.30.2-rc.6\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-rating-indicator{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem;-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-rating-indicator:after,.fd-rating-indicator:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator--cozy{--fontSize:1.5rem;--spacingBetweenIcons:.1875rem;margin:.8125rem 0}.fd-rating-indicator--compact{margin:.5rem 0}.fd-rating-indicator--compact,.fd-rating-indicator--condensed{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--xs{--fontSize:.75rem;--spacingBetweenIcons:1px}.fd-rating-indicator--sm{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--md{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem}.fd-rating-indicator--lg{--fontSize:2rem;--spacingBetweenIcons:.25rem}.fd-rating-indicator__container{-webkit-box-sizing:border-box;border:0;border-radius:var(--fdRating_Indicator_Border_Radius);box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-rating-indicator__container:after,.fd-rating-indicator__container:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator__container:focus-within{outline-color:var(--sapContent_FocusColor);outline-offset:var(--fdRating_Indicator_Focus_Outline_Offset, 0);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-rating-indicator__container:focus-within .fd-rating-indicator__input,.fd-rating-indicator__container:focus-within .fd-rating-indicator__label{outline:none!important}.fd-rating-indicator__input{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fontSize);line-height:var(--sapContent_LineHeight);margin:0;opacity:.0001;padding:0;position:absolute;top:0;width:var(--fontSize);z-index:-1}.fd-rating-indicator__input:after,.fd-rating-indicator__input:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator__input:checked.is-focus,.fd-rating-indicator__input:checked:focus{outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-rating-indicator__input:checked.is-focus+.fd-rating-indicator__label,.fd-rating-indicator__input:checked:focus+.fd-rating-indicator__label{outline-color:var(--sapContent_FocusColor);outline-offset:0;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-rating-indicator__label{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;display:flex;float:left;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fontSize);line-height:var(--sapContent_LineHeight);margin:0;margin-right:var(--spacingBetweenIcons);opacity:1;padding:0}.fd-rating-indicator__label:after,.fd-rating-indicator__label:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator__label:before{color:var(--sapContent_RatedColor);content:\"\\e065\";font-family:SAP-icons;font-size:var(--fontSize)}.fd-rating-indicator__label:last-child{margin-right:0}.fd-rating-indicator__label:hover:before{-webkit-transition:opacity .125s ease-in;opacity:var(--fdRating_Indicator_Selected_Hover_Opacity);transition:opacity .125s ease-in}.fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e0a1\"}.fd-rating-indicator__dynamic-text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 0 0 .5rem;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-rating-indicator__dynamic-text:after,.fd-rating-indicator__dynamic-text:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator--hide-dynamic-text>.fd-rating-indicator__dynamic-text{display:none}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__input:first-child+label,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__input:first-child+label{margin-right:0}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__label,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__label{float:right}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__label:last-child,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__label:last-child{margin-right:var(--spacingBetweenIcons)}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__dynamic-text,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__dynamic-text{margin-left:0;margin-right:.5rem}.fd-rating-indicator.is-disabled,.fd-rating-indicator:disabled,.fd-rating-indicator[aria-disabled=true]{opacity:var(--fdRating_Indicator_Disabled_Control_Opacity);pointer-events:none}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:before{color:var(--fdRating_Indicator_Disabled_Selected_Color);content:\"\\e065\"}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Disabled_Unselected_Color);content:\"\\e065\";font-size:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--display-mode{--fontSize:1rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label{margin-right:.125rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Display_Only_Selected_Color);content:\"\\e065\";font-size:var(--fontSize)}.fd-rating-indicator--display-mode .fd-rating-indicator__label[dir=rtl],[dir=rtl] .fd-rating-indicator--display-mode .fd-rating-indicator__label{margin-left:.125rem;margin-right:0}.fd-rating-indicator--display-mode,.fd-rating-indicator--non-interactive{pointer-events:none}.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e065\";font-size:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--icon .fd-rating-indicator__label{height:var(--fontSize);width:var(--fontSize)}.fd-rating-indicator--icon .fd-rating-indicator__label:after,.fd-rating-indicator--icon .fd-rating-indicator__label:before{content:none!important}.fd-rating-indicator--icon .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{font-size:var(--fontSize);height:100%;line-height:1}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{display:none}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated{display:block}.fd-rating-indicator--half-star .fd-rating-indicator__input{height:var(--fontSize);width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star .fd-rating-indicator__label{margin-right:0;overflow:hidden;width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6){flex-direction:row-reverse;margin-right:var(--spacingBetweenIcons)}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6)[dir=rtl],[dir=rtl] .fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6){margin-left:var(--spacingBetweenIcons);margin-right:0}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6)[dir=rtl]:last-child,[dir=rtl] .fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6):last-child{margin-left:0}.fd-rating-indicator--half-star .fd-rating-indicator__label:last-child{margin-right:0}.fd-rating-indicator--half-star .fd-rating-indicator--icon .fd-rating-indicator__label{width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star .fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio) * .5)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before{font-size:var(--fontSize)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio) * .5)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before{font-size:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__input--zero-rating,.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__label--zero-rating,.fd-rating-indicator__input--zero-rating,.fd-rating-indicator__label--zero-rating{margin:0;opacity:.0001;overflow:hidden;padding:0;width:0}.fd-rating-indicator__popover{padding:.5rem 0!important}.fd-rating-indicator__popover .fd-rating-indicator__sum-row{display:flex;align-items:center;padding:.5rem 1rem;margin:0}.fd-rating-indicator__popover .fd-rating-indicator__sum-row .fd-rating-indicator__container{margin-right:.5rem}\n"] }]
265
+ ], template: "<!-- role=\"application\" is used in order to let user to change value with left/right arrows in JAWS, since JAWS ovverrides these actions -->\n<div class=\"fd-rating-indicator__container\" role=\"application\" aria-roledescription=\"Rating indicator\">\n <!-- Zero value if we don't have provided value from user, `ratingAverage` or `ratings` -->\n <ng-container *ngTemplateOutlet=\"zeroRate\"></ng-container>\n <!-- Available rate values -->\n <ng-container *ngFor=\"let rate of _rates; index as i; trackBy: trackByFn\">\n <input\n [attr.aria-label]=\"i | ratingStarLabel : _rates.length : allowHalves\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input\"\n [disabled]=\"disabled\"\n [id]=\"rate.id\"\n name=\"rating-{{ viewRatingUID }}\"\n [value]=\"rate.value\"\n [checked]=\"viewValue === rate.value\"\n (click)=\"onSelect(rate.value)\"\n />\n <label class=\"fd-rating-indicator__label\" [for]=\"rate.id\" aria-hidden=\"true\">\n <i *ngIf=\"ratedIcon\" class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon\"></i>\n <i *ngIf=\"unratedIcon\" class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon\"></i>\n </label>\n </ng-container>\n</div>\n<!-- Popover if displayAllRatings is true and we have ratings object -->\n<span\n [fdPopoverTrigger]=\"allRatingContent\"\n *ngIf=\"displayAllRatings && _ratingItems?.length; else dynamicText\"\n class=\"fd-rating-indicator__dynamic-text\"\n>\n (<span aria-label=\"Total raiting\" fd-link>{{ totalRatings }}</span\n >)\n</span>\n<fd-popover\n #allRatingContent\n [triggers]=\"['mouseenter', 'mouseleave']\"\n [noArrow]=\"false\"\n placement=\"top\"\n additionalBodyClass=\"fd-rating-indicator__popover\"\n>\n <div class=\"fd-rating-indicator__sum-row\" [class]=\"sizeClass\" *ngFor=\"let rating of _ratingItems\">\n <div class=\"fd-rating-indicator__container\">\n <ng-container *ngFor=\"let rate of _rates; trackBy: trackByFn\">\n <span\n [class.fd-rating-indicator__input-checked]=\"rate.value === rating.rate\"\n class=\"fd-rating-indicator__input\"\n ></span>\n <label class=\"fd-rating-indicator__label\">\n <i *ngIf=\"ratedIcon\" class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon\"></i>\n <i *ngIf=\"unratedIcon\" class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon\"></i>\n </label>\n </ng-container>\n </div>\n ({{ rating.votes }})\n </div>\n</fd-popover>\n\n<ng-template #dynamicText>\n <span *ngIf=\"totalRatings\" class=\"fd-rating-indicator__dynamic-text\">({{ totalRatings }})</span>\n <span *ngIf=\"!totalRatings\" class=\"fd-rating-indicator__dynamic-text\"\n >({{ viewValue }} {{ dynamicTextIndicator }} {{ indicatorCount }})</span\n >\n</ng-template>\n<ng-template #zeroRate let-halves=\"halves\">\n <input\n aria-label=\"Reset to zero\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input fd-rating-indicator__input--zero-rating\"\n (click)=\"onSelect(0)\"\n [disabled]=\"disabled\"\n name=\"rating-{{ viewRatingUID }}{{ halves ? '-halves' : '' }}\"\n [checked]=\"viewValue === 0\"\n />\n <label class=\"fd-rating-indicator__label fd-rating-indicator__label--zero-rating\" aria-hidden=\"true\"></label>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.30.2-rc.6\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-rating-indicator{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem;-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-rating-indicator:after,.fd-rating-indicator:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator--cozy{--fontSize:1.5rem;--spacingBetweenIcons:.1875rem;margin:.8125rem 0}.fd-rating-indicator--compact{margin:.5rem 0}.fd-rating-indicator--compact,.fd-rating-indicator--condensed{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--xs{--fontSize:.75rem;--spacingBetweenIcons:1px}.fd-rating-indicator--sm{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--md{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem}.fd-rating-indicator--lg{--fontSize:2rem;--spacingBetweenIcons:.25rem}.fd-rating-indicator__container{-webkit-box-sizing:border-box;border:0;border-radius:var(--fdRating_Indicator_Border_Radius);box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-rating-indicator__container:after,.fd-rating-indicator__container:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator__container:focus-within{outline-color:var(--sapContent_FocusColor);outline-offset:var(--fdRating_Indicator_Focus_Outline_Offset, 0);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-rating-indicator__container:focus-within .fd-rating-indicator__input,.fd-rating-indicator__container:focus-within .fd-rating-indicator__label{outline:none!important}.fd-rating-indicator__input{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fontSize);line-height:var(--sapContent_LineHeight);margin:0;opacity:.0001;padding:0;position:absolute;top:0;width:var(--fontSize);z-index:-1}.fd-rating-indicator__input:after,.fd-rating-indicator__input:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator__input:checked.is-focus,.fd-rating-indicator__input:checked:focus{outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-rating-indicator__input:checked.is-focus+.fd-rating-indicator__label,.fd-rating-indicator__input:checked:focus+.fd-rating-indicator__label{outline-color:var(--sapContent_FocusColor);outline-offset:0;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-rating-indicator__label{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;display:flex;float:left;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fontSize);line-height:var(--sapContent_LineHeight);margin:0;margin-right:var(--spacingBetweenIcons);opacity:1;padding:0}.fd-rating-indicator__label:after,.fd-rating-indicator__label:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator__label:before{color:var(--sapContent_RatedColor);content:\"\\e065\";font-family:SAP-icons;font-size:var(--fontSize)}.fd-rating-indicator__label:last-child{margin-right:0}.fd-rating-indicator__label:hover:before{-webkit-transition:opacity .125s ease-in;opacity:var(--fdRating_Indicator_Selected_Hover_Opacity);transition:opacity .125s ease-in}.fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e0a1\"}.fd-rating-indicator__dynamic-text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 0 0 .5rem;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-rating-indicator__dynamic-text:after,.fd-rating-indicator__dynamic-text:before{box-sizing:inherit;font-size:inherit}.fd-rating-indicator--hide-dynamic-text>.fd-rating-indicator__dynamic-text{display:none}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__input:first-child+label,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__input:first-child+label{margin-right:0}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__label,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__label{float:right}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__label:last-child,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__label:last-child{margin-right:var(--spacingBetweenIcons)}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__dynamic-text,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__dynamic-text{margin-left:0;margin-right:.5rem}.fd-rating-indicator.is-disabled,.fd-rating-indicator:disabled,.fd-rating-indicator[aria-disabled=true]{opacity:var(--fdRating_Indicator_Disabled_Control_Opacity);pointer-events:none}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:before{color:var(--fdRating_Indicator_Disabled_Selected_Color);content:\"\\e065\"}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Disabled_Unselected_Color);content:\"\\e065\";font-size:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--display-mode{--fontSize:1rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label{margin-right:.125rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Display_Only_Selected_Color);content:\"\\e065\";font-size:var(--fontSize)}.fd-rating-indicator--display-mode .fd-rating-indicator__label[dir=rtl],[dir=rtl] .fd-rating-indicator--display-mode .fd-rating-indicator__label{margin-left:.125rem;margin-right:0}.fd-rating-indicator--display-mode,.fd-rating-indicator--non-interactive{pointer-events:none}.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e065\";font-size:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--icon .fd-rating-indicator__label{height:var(--fontSize);width:var(--fontSize)}.fd-rating-indicator--icon .fd-rating-indicator__label:after,.fd-rating-indicator--icon .fd-rating-indicator__label:before{content:none!important}.fd-rating-indicator--icon .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{font-size:var(--fontSize);height:100%;line-height:1}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{display:none}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated{display:block}.fd-rating-indicator--half-star .fd-rating-indicator__input{height:var(--fontSize);width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star .fd-rating-indicator__label{margin-right:0;overflow:hidden;width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6){flex-direction:row-reverse;margin-right:var(--spacingBetweenIcons)}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6)[dir=rtl],[dir=rtl] .fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6){margin-left:var(--spacingBetweenIcons);margin-right:0}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6)[dir=rtl]:last-child,[dir=rtl] .fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6):last-child{margin-left:0}.fd-rating-indicator--half-star .fd-rating-indicator__label:last-child{margin-right:0}.fd-rating-indicator--half-star .fd-rating-indicator--icon .fd-rating-indicator__label{width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star .fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio) * .5)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize) * .5)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before{font-size:var(--fontSize)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio) * .5)}.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before{font-size:calc(var(--fontSize) * var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__input--zero-rating,.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__label--zero-rating,.fd-rating-indicator__input--zero-rating,.fd-rating-indicator__label--zero-rating{margin:0;opacity:.0001;overflow:hidden;padding:0;width:0}.fd-rating-indicator__popover{padding:.5rem 0!important}.fd-rating-indicator__popover .fd-rating-indicator__sum-row{display:flex;align-items:center;padding:.5rem 1rem;margin:0}.fd-rating-indicator__popover .fd-rating-indicator__sum-row .fd-rating-indicator__container{margin-right:.5rem}\n"] }]
266
266
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { class: [{
267
267
  type: Input
268
268
  }], name: [{
@@ -315,4 +315,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
315
315
  }], ratingChanged: [{
316
316
  type: Output
317
317
  }], buildComponentCssClass: [] } });
318
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0aW5nLWluZGljYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9yYXRpbmctaW5kaWNhdG9yL2NvbXBvbmVudHMvcmF0aW5nLWluZGljYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9yYXRpbmctaW5kaWNhdG9yL2NvbXBvbmVudHMvcmF0aW5nLWluZGljYXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILFNBQVMsRUFHVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixVQUFVLEVBQ1YsdUJBQXVCLEVBRXZCLFdBQVcsRUFDWCxpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2pCLFVBQVUsRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekUsT0FBTyxFQUNILDBCQUEwQixFQUMxQixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBRWpCLHVCQUF1QixFQUMxQixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQW1CLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTVFLE9BQU8sRUFBRSx1QkFBdUIsRUFBbUIsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7QUFFdEYsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDO0FBMEJsQixNQUFNLE9BQU8sd0JBQXdCO0lBMkNqQzs7T0FFRztJQUNILElBQ0ksaUJBQWlCLENBQUMsS0FBYTtRQUMvQixNQUFNLEdBQUcsR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsMEJBQTBCLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxHQUFHLENB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QkFBcUIsaUJBR2hCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUseUJBQXlCLENBQUM7NEJBQ3ZELEtBQUssRUFBRSxJQUFJO3lCQUNkO3dCQUNELHVCQUF1QiwwQkFBMEI7cUJBQ3BEO2lJQU9ELEtBQUs7c0JBREosS0FBSztnQkFLTixJQUFJO3NCQURILEtBQUs7Z0JBUU4sU0FBUztzQkFGUixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGlCQUFpQjtnQkFROUIsY0FBYztzQkFGYixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGlCQUFpQjtnQkFXOUIsUUFBUTtzQkFIUCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLG1CQUFtQjs7c0JBQy9CLFdBQVc7dUJBQUMsb0JBQW9CO2dCQVNqQyxXQUFXO3NCQUZWLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsdUJBQXVCO2dCQU9oQyxpQkFBaUI7c0JBRHBCLEtBQUs7Z0JBVU4sV0FBVztzQkFEVixLQUFLO2dCQU9OLEtBQUs7c0JBREosS0FBSztnQkFPTixZQUFZO3NCQURYLEtBQUs7Z0JBT04sYUFBYTtzQkFEWixLQUFLO2dCQVFOLE9BQU87c0JBRE4sS0FBSztnQkFPTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBT04sU0FBUztzQkFEUixLQUFLO2dCQU1OLFdBQVc7c0JBRFYsS0FBSztnQkFPTixJQUFJO3NCQURILEtBQUs7Z0JBT04sb0JBQW9CO3NCQURuQixLQUFLO2dCQU9OLGFBQWE7c0JBRFosTUFBTTtnQkFrSFAsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgT25Jbml0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBIb3N0QmluZGluZyxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBmb3J3YXJkUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge1xuICAgIElORElDQVRPUl9ERUZBVUxUX0NBUEFDSVRZLFxuICAgIElORElDQVRPUl9QUkVGSVgsXG4gICAgSU5ESUNBVE9SX0NMQVNTRVMsXG4gICAgUmF0aW5nSW5kaWNhdG9yU2l6ZSxcbiAgICBSYXRpbmdJbmRpY2F0b3JTaXplRW51bVxufSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQ3NzQ2xhc3NCdWlsZGVyLCBhcHBseUNzc0NsYXNzIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyByZWdpc3RlckZvcm1JdGVtQ29udHJvbCwgRm9ybUl0ZW1Db250cm9sIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2Zvcm0nO1xuXG5sZXQgcmF0aW5nVUlEID0gMDtcblxuaW50ZXJmYWNlIE51bWJlcktleTxUPiB7XG4gICAgW2tleTogbnVtYmVyXTogVDtcbn1cblxuaW50ZXJmYWNlIFJhdGluZ1ZpZXdJdGVtIHtcbiAgICByYXRlOiBudW1iZXI7XG4gICAgdm90ZXM6IG51bWJlcjtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmZC1yYXRpbmctaW5kaWNhdG9yJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcmF0aW5nLWluZGljYXRvci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vcmF0aW5nLWluZGljYXRvci5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUmF0aW5nSW5kaWNhdG9yQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIHJlZ2lzdGVyRm9ybUl0ZW1Db250cm9sKFJhdGluZ0luZGljYXRvckNvbXBvbmVudClcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFJhdGluZ0luZGljYXRvckNvbXBvbmVudFxuICAgIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIENzc0NsYXNzQnVpbGRlciwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1JdGVtQ29udHJvbFxue1xuICAgIC8qKiBVc2VyJ3MgY3VzdG9tIGNsYXNzZXMgKi9cbiAgICBASW5wdXQoKVxuICAgIGNsYXNzOiBzdHJpbmc7XG5cbiAgICAvKiogU2V0cyBbbmFtZV0gYXR0cmlidXRlIG9mIGlucHV0LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgbmFtZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgYXJpYS1sYWJlbCBhdHRyaWJ1dGUgdG8gdGhlIGVsZW1lbnQuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1sYWJlbCcpXG4gICAgYXJpYUxhYmVsOiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgYXJpYS1sYWJlbGxlZGJ5IGF0dHJpYnV0ZSB0byB0aGUgZWxlbWVudC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWxhYmVsJylcbiAgICBhcmlhTGFiZWxsZWRCeTogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGFyaWEtZGlzYWJsZWQgYXR0cmlidXRlIHRvIHRoZSBlbGVtZW50LlxuICAgICAqIFNldHMgdGhlIGlzLWRpc2FibGVkIGNsYXNzIHRvIHRoZSBlbGVtZW50LlxuICAgICAqIFdoZXRoZXIgdGhlIHJhdGluZyBpbmRpY2F0b3IgaXMgZGlzYWJsZWRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaXMtZGlzYWJsZWQnKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWRpc2FibGVkJylcbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgaXMtZGlzcGxheS1tb2RlIGNsYXNzIHRvIHRoZSBlbGVtZW50LlxuICAgICAqIFdoZXRoZXIgdGhlIHJhdGluZyBpbmRpY2F0b3IgaXMgaW4gZGlzcGxheU1vZGVcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaXMtZGlzcGxheS1tb2RlJylcbiAgICBkaXNwbGF5TW9kZSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogTnVtYmVyIG9mIHJhdGVzIHRvIGRpc3BsYXlcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBpbmRpY2F0b3JDYXBhY2l0eSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIGNvbnN0IHZhbCA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlLCBJTkRJQ0FUT1JfREVGQVVMVF9DQVBBQ0lUWSk7XG4gICAgICAgIHRoaXMuX2luZGljYXRvckNhcGFjaXR5ID0gdmFsIDwgMSA/IElORElDQVRPUl9ERUZBVUxUX0NBUEFDSVRZIDogdmFsO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgb3Igbm90IHRvIGRpc3BsYXkgaGFsZiB2YWx1ZXMuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBhbGxvd0hhbHZlcyA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogVXNlcidzIHZhbHVlIG51bWJlciBvZiByYXRpbmdzLiBJZiBwcm92aWRlZCwgT3ZlcnJpZGVzIHJhdGluZ0F2ZXJhZ2UuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB2YWx1ZSA9IDA7XG5cbiAgICAvKipcbiAgICAgKiBUb3RhbCBudW1iZXIgb2YgcmF0aW5ncy4gSWYgcHJvdmlkZWQsIHdpbGwgZGlzcGxheSB0ZXh0IHNob3dpbmcgdGhlIHRvdGFsIG51bWJlciBvZiByYXRpbmdzLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgdG90YWxSYXRpbmdzOiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiBSYXRpbmcgYXZlcmFnZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcmF0aW5nQXZlcmFnZTogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogT2JqZWN0IGNvbnRhaW5pbmcga2V5LXZhbHVlIHBhaXJzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIHJhdGluZyBhbmQgdGhlIHZhbHVlIGlzIHRoZSB0b3RhbCBzdW0gb2YgdGhvc2UgcmF0aW5ncy5cbiAgICAgKiBPdmVycmlkZXMgdG90YWxSYXRpbmdzIGFuZCByYXRpbmdBdmVyYWdlLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcmF0aW5nczogTnVtYmVyS2V5PG51bWJlcj47XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIG9yIG5vdCB0byBkaXNwbGF5IHRoZSBwb3BvdmVyIHRoYXQgc2hvd3MgdGhlIHN1bSBvZiBlYWNoIHJhdGluZy4gUmVxdWlyZXMgW3JhdGluZ3NdIG9iamVjdC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGRpc3BsYXlBbGxSYXRpbmdzID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBJY29uIGNsYXNzIGZvciByYXRlZCBpY29uIGZyb20gZnVuZGFtZW50YWwtc3R5bGVzIGxpYiBodHRwczovL3NhcC5naXRodWIuaW8vZnVuZGFtZW50YWwtc3R5bGVzLz9wYXRoPS9kb2NzL2NvbXBvbmVudHMtaWNvbi0tc2l6ZXNcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHJhdGVkSWNvbjogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIEljb24gY2xhc3MgZm9yIHVucmF0ZWQgaWNvbiBmcm9tIGZ1bmRhbWVudGFsLXN0eWxlcyBsaWIgaHR0cHM6Ly9zYXAuZ2l0aHViLmlvL2Z1bmRhbWVudGFsLXN0eWxlcy8/cGF0aD0vZG9jcy9jb21wb25lbnRzLWljb24tLXNpemVzXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB1bnJhdGVkSWNvbjogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogUG9zc2libGUgdmFsdWVzIGFyZSAneHMnLCAnc20nLCAnbWQnLCAnbGcnLCAnY296eScsICdjb21wYWN0JywgJ2NvbmRlbnNlZCdcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNpemU6IFJhdGluZ0luZGljYXRvclNpemUgPSAnbWQnO1xuXG4gICAgLyoqXG4gICAgICogVGV4dCBkaXZpZGVyIGxhYmVsIGJldHdlZW4gdmlldyB2YWx1ZSBhbmQgaW5kaWNhdG9yIGNvdW50LlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZHluYW1pY1RleHRJbmRpY2F0b3IgPSAnb2YnO1xuXG4gICAgLyoqXG4gICAgICogRmlyZWQgd2hlbiB0aGUgdXNlciBzZXRzIG9yIGNoYW5nZXMgdGhlaXIgcmF0aW5nLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJhdGluZ0NoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc2l6ZUNsYXNzID0gdGhpcy5fZ2V0U2l6ZUNsYXNzKHRoaXMuc2l6ZSk7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfcmF0ZXM6IHsgaWQ6IHN0cmluZzsgdmFsdWU6IG51bWJlciB9W10gPSBbXTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9yYXRpbmdJdGVtczogUmF0aW5nVmlld0l0ZW1bXSA9IFtdO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9yYXRpbmdVSUQgPSByYXRpbmdVSUQrKztcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2luZGljYXRvckNhcGFjaXR5ID0gSU5ESUNBVE9SX0RFRkFVTFRfQ0FQQUNJVFk7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF92YWx1ZSA9IDA7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9oaWRlRHluYW1pY1RleHQgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVhZG9ubHkgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge31cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldCB2aWV3UmF0aW5nVUlEKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yYXRpbmdVSUQ7XG4gICAgfVxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IGluZGljYXRvckNvdW50KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pbmRpY2F0b3JDYXBhY2l0eTtcbiAgICB9XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgdmlld1ZhbHVlKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG9uQ2hhbmdlOiAodmFsdWU6IG51bWJlcikgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBvblRvdWNoZWQgPSAoKTogdm9pZCA9PiB7fTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5fY29udmVydFRvVmFsdWUoKTtcbiAgICAgICAgdGhpcy5fcmF0ZXMgPSB0aGlzLl9nZXRSYXRlcygpO1xuICAgICAgICB0aGlzLmJ1aWxkQ29tcG9uZW50Q3NzQ2xhc3MoKTtcbiAgICAgICAgdGhpcy5fZ2VuZXJhdGVSYXRpbmdzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICdjbGFzcycgaW4gY2hhbmdlcyB8fFxuICAgICAgICAgICAgJ3NpemUnIGluIGNoYW5nZXMgfHxcbiAgICAgICAgICAgICdyYXRlZEljb24nIGluIGNoYW5nZXMgfHxcbiAgICAgICAgICAgICd1bnJhdGVkSWNvbicgaW4gY2hhbmdlcyB8fFxuICAgICAgICAgICAgJ2FsbG93SGFsdmVzJyBpbiBjaGFuZ2VzXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCd2YWx1ZScgaW4gY2hhbmdlcykge1xuICAgICAgICAgICAgdGhpcy5fdmFsdWUgPSB0aGlzLl9jb252ZXJ0VG9WYWx1ZSgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICgnaW5kaWNhdG9yQ2FwYWNpdHknIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuX3JhdGVzID0gdGhpcy5fZ2V0UmF0ZXMoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoJ2FsbG93SGFsdmVzJyBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLl92YWx1ZSA9IHRoaXMuX2NvbnZlcnRUb1ZhbHVlKCk7XG4gICAgICAgICAgICB0aGlzLl9yYXRlcyA9IHRoaXMuX2dldFJhdGVzKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoJ3JhdGluZ3MnIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuX2dlbmVyYXRlUmF0aW5ncygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdmFsdWUgPSB0aGlzLl9wYXJzZVZhbHVlKHZhbHVlKTtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IG51bWJlcikgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICAgIH1cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBpdGVtOiB7IGlkOiBzdHJpbmc7IHZhbHVlOiBudW1iZXIgfSk6IG51bWJlciB8IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBpdGVtLmlkO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgb25TZWxlY3QodmFsdWU6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgICAgIHRoaXMucmF0aW5nQ2hhbmdlZC5lbWl0KHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlblxuICAgICAqIENzc0NsYXNzQnVpbGRlciBpbnRlcmZhY2UgaW1wbGVtZW50YXRpb25cbiAgICAgKiBmdW5jdGlvbiBtdXN0IHJldHVybiBzaW5nbGUgc3RyaW5nXG4gICAgICogZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIG9yZGVyIHdoaWNoIGNzcyBjbGFzc2VzIGFyZSBhcHBsaWVkXG4gICAgICovXG4gICAgQGFwcGx5Q3NzQ2xhc3NcbiAgICBidWlsZENvbXBvbmVudENzc0NsYXNzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgdGhpcy5zaXplQ2xhc3MgPSB0aGlzLl9nZXRTaXplQ2xhc3ModGhpcy5zaXplKTtcblxuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgSU5ESUNBVE9SX1BSRUZJWCxcbiAgICAgICAgICAgIHRoaXMuc2l6ZUNsYXNzLFxuICAgICAgICAgICAgdGhpcy5hbGxvd0hhbHZlcyA/IElORElDQVRPUl9DTEFTU0VTLmhhbHZlcyA6ICcnLFxuICAgICAgICAgICAgISF0aGlzLnJhdGVkSWNvbiAmJiAhIXRoaXMudW5yYXRlZEljb24gPyBJTkRJQ0FUT1JfQ0xBU1NFUy5pY29uIDogJycsXG4gICAgICAgICAgICB0aGlzLl9oaWRlRHluYW1pY1RleHQgfHwgIXRoaXMuX3ZhbHVlID8gSU5ESUNBVE9SX0NMQVNTRVMuaGlkZUR5bmFtaWNUZXh0IDogJycsXG4gICAgICAgICAgICB0aGlzLmNsYXNzXG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEdlbmVyYXRlIHJhdGluZyBpdGVtcyBmb3IgcG9wb3ZlciBjb250ZW50IGlmIHJhdGluZyBvYmplY3Qgd2FzIGRlZmluZWRcbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZW5lcmF0ZVJhdGluZ3MoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5yYXRpbmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmF0aW5ncyA9IE9iamVjdC5lbnRyaWVzKHRoaXMucmF0aW5ncylcbiAgICAgICAgICAgIC5maWx0ZXIoKFtyYXRlLCB2b3RlXSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IF9yYXRlID0gK3JhdGU7XG4gICAgICAgICAgICAgICAgcmV0dXJuICFpc05hTihfcmF0ZSkgJiYgIWlzTmFOKCt2b3RlKSAmJiBfcmF0ZSA+IDA7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLm1hcCgoW3JhdGUsIHZvdGVzXSkgPT4gKHsgcmF0ZTogK3JhdGUsIHZvdGVzIH0pKTtcbiAgICAgICAgaWYgKHJhdGluZ3MubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgeyB0b3RhbFZvdGVzLCB0b3RhbFJhdGluZyB9ID0gcmF0aW5ncy5yZWR1Y2UoXG4gICAgICAgICAgICAodG90YWwsIHJhdGluZykgPT4gKHtcbiAgICAgICAgICAgICAgICB0b3RhbFZvdGVzOiB0b3RhbC50b3RhbFZvdGVzICsgcmF0aW5nLnZvdGVzLFxuICAgICAgICAgICAgICAgIHRvdGFsUmF0aW5nOiB0b3RhbC50b3RhbFJhdGluZyArIHJhdGluZy5yYXRlICogcmF0aW5nLnZvdGVzXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHsgdG90YWxWb3RlczogMCwgdG90YWxSYXRpbmc6IDAgfVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuX3JhdGluZ0l0ZW1zID0gcmF0aW5ncztcbiAgICAgICAgdGhpcy5yYXRpbmdBdmVyYWdlID0gdG90YWxSYXRpbmcgLyB0b3RhbFZvdGVzO1xuICAgICAgICB0aGlzLnRvdGFsUmF0aW5ncyA9IHRvdGFsVm90ZXM7XG4gICAgICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5fY29udmVydFRvVmFsdWUoKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGdldCBjb252ZXJ0ZWQgdmlld1ZhbHVlIGZvciByZW5kZXIgaW4gY29tcG9uZW50IHRlbXBsYXRlIGZyb20gb3JpZ2luYWwgdmFsdWUgaWYgaXQgc3RpbGwgZXhpc3RzLCBvciByYXRpbmdBdmVyYWdlLlxuICAgICAqL1xuICAgIHByaXZhdGUgX2NvbnZlcnRUb1ZhbHVlKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wYXJzZVZhbHVlKHRoaXMudmFsdWUgfHwgdGhpcy5yYXRpbmdBdmVyYWdlKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGdldCBjb252ZXJ0ZWQgdmFsdWUgZnJvbSBvcmlnaW5hbCB0byB2aWV3IHZhbHVlIHdpdGggZGVwZW5kcyBvbiBoYWx2ZXNcbiAgICAgKiBGb3IgZXhhbXBsZSxcbiAgICAgKiAgb3JpZ2luYWwgdmFsdWUgaXMgZXF1YWwgdG8gMi4zNCwgeW91IHdpbGwgZ2V0IGFuZCByZW5kZXIgMlxuICAgICAqICBvcmlnaW5hbCB2YWx1ZSBpcyBlcXVhbCB0byAzLjc0LCB5b3Ugd2lsbCBnZXQgYW5kIHJlbmRlciA0XG4gICAgICovXG4gICAgcHJpdmF0ZSBfcGFyc2VWYWx1ZSh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZSA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaW50ZWdlciA9IE1hdGguZmxvb3IodmFsdWUpO1xuICAgICAgICBjb25zdCBmcmFjdGlvbmFsID0gdmFsdWUgJSAxO1xuICAgICAgICBsZXQgdiA9IGludGVnZXI7XG5cbiAgICAgICAgaWYgKHRoaXMuYWxsb3dIYWx2ZXMgJiYgZnJhY3Rpb25hbCA+IDAuMjUgJiYgZnJhY3Rpb25hbCA8PSAwLjUpIHtcbiAgICAgICAgICAgIHYgPSBpbnRlZ2VyICsgMC41O1xuICAgICAgICB9IGVsc2UgaWYgKGZyYWN0aW9uYWwgPiAwLjUpIHtcbiAgICAgICAgICAgIHYgPSBpbnRlZ2VyICsgMTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBNYXRoLm1pbih0aGlzLmluZGljYXRvckNvdW50LCB2KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGdldCByYXRpbmcgaWNvbnMgYXJyYXkgd2l0aCB2YWx1ZSBhbmQgdW5pYyBpZFxuICAgICAqL1xuICAgIHByaXZhdGUgX2dldFJhdGVzKCk6IHsgaWQ6IHN0cmluZzsgdmFsdWU6IG51bWJlciB9W10ge1xuICAgICAgICBjb25zdCB3aXRoSGFsdmVzID0gdGhpcy5hbGxvd0hhbHZlcyA/IDIgOiAxO1xuICAgICAgICByZXR1cm4gQXJyYXkodGhpcy5pbmRpY2F0b3JDb3VudCAqIHdpdGhIYWx2ZXMpXG4gICAgICAgICAgICAuZmlsbChgcmF0aW5nLSR7dGhpcy5fcmF0aW5nVUlEfWApXG4gICAgICAgICAgICAubWFwKChuYW1lLCBpbmRleCkgPT4gKHtcbiAgICAgICAgICAgICAgICBpZDogYCR7bmFtZX0tJHtpbmRleCArIDF9YCxcbiAgICAgICAgICAgICAgICB2YWx1ZTogKGluZGV4ICsgMSkgLyB3aXRoSGFsdmVzXG4gICAgICAgICAgICB9KSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGdldCByYXRpbmcgaWNvbnMgYXJyYXkgd2l0aCB2YWx1ZSBhbmQgdW5pYyBpZFxuICAgICAqL1xuICAgIHByaXZhdGUgX2dldFNpemVDbGFzcyhzaXplOiBSYXRpbmdJbmRpY2F0b3JTaXplKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke0lORElDQVRPUl9QUkVGSVh9LS0ke3NpemUgaW4gUmF0aW5nSW5kaWNhdG9yU2l6ZUVudW0gPyBzaXplIDogJ21kJ31gO1xuICAgIH1cbn1cbiIsIjwhLS0gIHJvbGU9XCJhcHBsaWNhdGlvblwiIGlzIHVzZWQgaW4gb3JkZXIgdG8gbGV0IHVzZXIgdG8gY2hhbmdlIHZhbHVlIHdpdGggbGVmdC9yaWdodCBhcnJvd3MgaW4gSkFXUywgc2luY2UgSkFXUyBvdnZlcnJpZGVzIHRoZXNlIGFjdGlvbnMgLS0+XG48ZGl2IGNsYXNzPVwiZmQtcmF0aW5nLWluZGljYXRvcl9fY29udGFpbmVyXCIgcm9sZT1cImFwcGxpY2F0aW9uXCIgYXJpYS1yb2xlZGVzY3JpcHRpb249XCJSYXRpbmcgaW5kaWNhdG9yXCI+XG4gICAgPCEtLSBaZXJvIHZhbHVlIGlmIHdlIGRvbid0IGhhdmUgcHJvdmlkZWQgdmFsdWUgZnJvbSB1c2VyLCBgcmF0aW5nQXZlcmFnZWAgb3IgYHJhdGluZ3NgIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ6ZXJvUmF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwhLS0gQXZhaWxhYmxlIHJhdGUgdmFsdWVzIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHJhdGUgb2YgX3JhdGVzOyBpbmRleCBhcyBpOyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImkgfCByYXRpbmdTdGFyTGFiZWwgOiBfcmF0ZXMubGVuZ3RoIDogYWxsb3dIYWx2ZXNcIlxuICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgY2xhc3M9XCJmZC1yYXRpbmctaW5kaWNhdG9yX19pbnB1dFwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgW2lkXT1cInJhdGUuaWRcIlxuICAgICAgICAgICAgbmFtZT1cInJhdGluZy17eyB2aWV3UmF0aW5nVUlEIH19XCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJyYXRlLnZhbHVlXCJcbiAgICAgICAgICAgIFtjaGVja2VkXT1cInZpZXdWYWx1ZSA9PT0gcmF0ZS52YWx1ZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25TZWxlY3QocmF0ZS52YWx1ZSlcIlxuICAgICAgICAvPlxuICAgICAgICA8bGFiZWwgY2xhc3M9XCJmZC1yYXRpbmctaW5kaWNhdG9yX19sYWJlbFwiIFtmb3JdPVwicmF0ZS5pZFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICAgICAgPGkgKm5nSWY9XCJyYXRlZEljb25cIiBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2xhYmVsLXJhdGVkXCIgW2NsYXNzXT1cInVucmF0ZWRJY29uXCI+PC9pPlxuICAgICAgICAgICAgPGkgKm5nSWY9XCJ1bnJhdGVkSWNvblwiIGNsYXNzPVwiZmQtcmF0aW5nLWluZGljYXRvcl9fbGFiZWwtdW5yYXRlZFwiIFtjbGFzc109XCJyYXRlZEljb25cIj48L2k+XG4gICAgICAgIDwvbGFiZWw+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbjwhLS0gUG9wb3ZlciBpZiBkaXNwbGF5QWxsUmF0aW5ncyBpcyB0cnVlIGFuZCB3ZSBoYXZlIHJhdGluZ3Mgb2JqZWN0IC0tPlxuPHNwYW5cbiAgICBbZmRQb3BvdmVyVHJpZ2dlcl09XCJhbGxSYXRpbmdDb250ZW50XCJcbiAgICAqbmdJZj1cImRpc3BsYXlBbGxSYXRpbmdzICYmIF9yYXRpbmdJdGVtcz8ubGVuZ3RoOyBlbHNlIGR5bmFtaWNUZXh0XCJcbiAgICBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2R5bmFtaWMtdGV4dFwiXG4+XG4gICAgKDxzcGFuIGFyZWEtbGFiZWw9XCJUb3RhbCByYWl0aW5nXCIgZmQtbGluaz57eyB0b3RhbFJhdGluZ3MgfX08L3NwYW5cbiAgICA+KVxuPC9zcGFuPlxuPGZkLXBvcG92ZXJcbiAgICAjYWxsUmF0aW5nQ29udGVudFxuICAgIFt0cmlnZ2Vyc109XCJbJ21vdXNlZW50ZXInLCAnbW91c2VsZWF2ZSddXCJcbiAgICBbbm9BcnJvd109XCJmYWxzZVwiXG4gICAgcGxhY2VtZW50PVwidG9wXCJcbiAgICBhZGRpdGlvbmFsQm9keUNsYXNzPVwiZmQtcmF0aW5nLWluZGljYXRvcl9fcG9wb3ZlclwiXG4+XG4gICAgPGRpdiBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX3N1bS1yb3dcIiBbY2xhc3NdPVwic2l6ZUNsYXNzXCIgKm5nRm9yPVwibGV0IHJhdGluZyBvZiBfcmF0aW5nSXRlbXNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2NvbnRhaW5lclwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcmF0ZSBvZiBfcmF0ZXM7IHRyYWNrQnk6IHRyYWNrQnlGblwiPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5mZC1yYXRpbmctaW5kaWNhdG9yX19pbnB1dC1jaGVja2VkXT1cInJhdGUudmFsdWUgPT09IHJhdGluZy5yYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1yYXRpbmctaW5kaWNhdG9yX19pbnB1dFwiXG4gICAgICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmZC1yYXRpbmctaW5kaWNhdG9yX19sYWJlbFwiPlxuICAgICAgICAgICAgICAgICAgICA8aSAqbmdJZj1cInJhdGVkSWNvblwiIGNsYXNzPVwiZmQtcmF0aW5nLWluZGljYXRvcl9fbGFiZWwtcmF0ZWRcIiBbY2xhc3NdPVwidW5yYXRlZEljb25cIj48L2k+XG4gICAgICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwidW5yYXRlZEljb25cIiBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2xhYmVsLXVucmF0ZWRcIiBbY2xhc3NdPVwicmF0ZWRJY29uXCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgICh7eyByYXRpbmcudm90ZXMgfX0pXG4gICAgPC9kaXY+XG48L2ZkLXBvcG92ZXI+XG5cbjxuZy10ZW1wbGF0ZSAjZHluYW1pY1RleHQ+XG4gICAgPHNwYW4gKm5nSWY9XCJ0b3RhbFJhdGluZ3NcIiBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2R5bmFtaWMtdGV4dFwiPih7eyB0b3RhbFJhdGluZ3MgfX0pPC9zcGFuPlxuICAgIDxzcGFuICpuZ0lmPVwiIXRvdGFsUmF0aW5nc1wiIGNsYXNzPVwiZmQtcmF0aW5nLWluZGljYXRvcl9fZHluYW1pYy10ZXh0XCJcbiAgICAgICAgPih7eyB2aWV3VmFsdWUgfX0ge3sgZHluYW1pY1RleHRJbmRpY2F0b3IgfX0ge3sgaW5kaWNhdG9yQ291bnQgfX0pPC9zcGFuXG4gICAgPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjemVyb1JhdGUgbGV0LWhhbHZlcz1cImhhbHZlc1wiPlxuICAgIDxpbnB1dFxuICAgICAgICBhcmlhLWxhYmVsPVwiUmVzZXQgdG8gemVyb1wiXG4gICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2lucHV0IGZkLXJhdGluZy1pbmRpY2F0b3JfX2lucHV0LS16ZXJvLXJhdGluZ1wiXG4gICAgICAgIChjbGljayk9XCJvblNlbGVjdCgwKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIG5hbWU9XCJyYXRpbmcte3sgdmlld1JhdGluZ1VJRCB9fXt7IGhhbHZlcyA/ICctaGFsdmVzJyA6ICcnIH19XCJcbiAgICAgICAgW2NoZWNrZWRdPVwidmlld1ZhbHVlID09PSAwXCJcbiAgICAvPlxuICAgIDxsYWJlbCBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2xhYmVsIGZkLXJhdGluZy1pbmRpY2F0b3JfX2xhYmVsLS16ZXJvLXJhdGluZ1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvbGFiZWw+XG48L25nLXRlbXBsYXRlPlxuIl19
318
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0aW5nLWluZGljYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9yYXRpbmctaW5kaWNhdG9yL2NvbXBvbmVudHMvcmF0aW5nLWluZGljYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9yYXRpbmctaW5kaWNhdG9yL2NvbXBvbmVudHMvcmF0aW5nLWluZGljYXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILFNBQVMsRUFHVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixVQUFVLEVBQ1YsdUJBQXVCLEVBRXZCLFdBQVcsRUFDWCxpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2pCLFVBQVUsRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekUsT0FBTyxFQUNILDBCQUEwQixFQUMxQixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBRWpCLHVCQUF1QixFQUMxQixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQW1CLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTVFLE9BQU8sRUFBRSx1QkFBdUIsRUFBbUIsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7QUFFdEYsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDO0FBMEJsQixNQUFNLE9BQU8sd0JBQXdCO0lBMkNqQzs7T0FFRztJQUNILElBQ0ksaUJBQWlCLENBQUMsS0FBYTtRQUMvQixNQUFNLEdBQUcsR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsMEJBQTBCLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxHQUFHLENB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QkFBcUIsaUJBR2hCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUseUJBQXlCLENBQUM7NEJBQ3ZELEtBQUssRUFBRSxJQUFJO3lCQUNkO3dCQUNELHVCQUF1QiwwQkFBMEI7cUJBQ3BEO2lJQU9ELEtBQUs7c0JBREosS0FBSztnQkFLTixJQUFJO3NCQURILEtBQUs7Z0JBUU4sU0FBUztzQkFGUixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGlCQUFpQjtnQkFROUIsY0FBYztzQkFGYixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGlCQUFpQjtnQkFXOUIsUUFBUTtzQkFIUCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLG1CQUFtQjs7c0JBQy9CLFdBQVc7dUJBQUMsb0JBQW9CO2dCQVNqQyxXQUFXO3NCQUZWLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsdUJBQXVCO2dCQU9oQyxpQkFBaUI7c0JBRHBCLEtBQUs7Z0JBVU4sV0FBVztzQkFEVixLQUFLO2dCQU9OLEtBQUs7c0JBREosS0FBSztnQkFPTixZQUFZO3NCQURYLEtBQUs7Z0JBT04sYUFBYTtzQkFEWixLQUFLO2dCQVFOLE9BQU87c0JBRE4sS0FBSztnQkFPTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBT04sU0FBUztzQkFEUixLQUFLO2dCQU1OLFdBQVc7c0JBRFYsS0FBSztnQkFPTixJQUFJO3NCQURILEtBQUs7Z0JBT04sb0JBQW9CO3NCQURuQixLQUFLO2dCQU9OLGFBQWE7c0JBRFosTUFBTTtnQkFrSFAsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgT25Jbml0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBIb3N0QmluZGluZyxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBmb3J3YXJkUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge1xuICAgIElORElDQVRPUl9ERUZBVUxUX0NBUEFDSVRZLFxuICAgIElORElDQVRPUl9QUkVGSVgsXG4gICAgSU5ESUNBVE9SX0NMQVNTRVMsXG4gICAgUmF0aW5nSW5kaWNhdG9yU2l6ZSxcbiAgICBSYXRpbmdJbmRpY2F0b3JTaXplRW51bVxufSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQ3NzQ2xhc3NCdWlsZGVyLCBhcHBseUNzc0NsYXNzIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyByZWdpc3RlckZvcm1JdGVtQ29udHJvbCwgRm9ybUl0ZW1Db250cm9sIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2Zvcm0nO1xuXG5sZXQgcmF0aW5nVUlEID0gMDtcblxuaW50ZXJmYWNlIE51bWJlcktleTxUPiB7XG4gICAgW2tleTogbnVtYmVyXTogVDtcbn1cblxuaW50ZXJmYWNlIFJhdGluZ1ZpZXdJdGVtIHtcbiAgICByYXRlOiBudW1iZXI7XG4gICAgdm90ZXM6IG51bWJlcjtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmZC1yYXRpbmctaW5kaWNhdG9yJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcmF0aW5nLWluZGljYXRvci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vcmF0aW5nLWluZGljYXRvci5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUmF0aW5nSW5kaWNhdG9yQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIHJlZ2lzdGVyRm9ybUl0ZW1Db250cm9sKFJhdGluZ0luZGljYXRvckNvbXBvbmVudClcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFJhdGluZ0luZGljYXRvckNvbXBvbmVudFxuICAgIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIENzc0NsYXNzQnVpbGRlciwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1JdGVtQ29udHJvbFxue1xuICAgIC8qKiBVc2VyJ3MgY3VzdG9tIGNsYXNzZXMgKi9cbiAgICBASW5wdXQoKVxuICAgIGNsYXNzOiBzdHJpbmc7XG5cbiAgICAvKiogU2V0cyBbbmFtZV0gYXR0cmlidXRlIG9mIGlucHV0LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgbmFtZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgYXJpYS1sYWJlbCBhdHRyaWJ1dGUgdG8gdGhlIGVsZW1lbnQuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1sYWJlbCcpXG4gICAgYXJpYUxhYmVsOiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgYXJpYS1sYWJlbGxlZGJ5IGF0dHJpYnV0ZSB0byB0aGUgZWxlbWVudC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWxhYmVsJylcbiAgICBhcmlhTGFiZWxsZWRCeTogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGFyaWEtZGlzYWJsZWQgYXR0cmlidXRlIHRvIHRoZSBlbGVtZW50LlxuICAgICAqIFNldHMgdGhlIGlzLWRpc2FibGVkIGNsYXNzIHRvIHRoZSBlbGVtZW50LlxuICAgICAqIFdoZXRoZXIgdGhlIHJhdGluZyBpbmRpY2F0b3IgaXMgZGlzYWJsZWRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaXMtZGlzYWJsZWQnKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWRpc2FibGVkJylcbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgaXMtZGlzcGxheS1tb2RlIGNsYXNzIHRvIHRoZSBlbGVtZW50LlxuICAgICAqIFdoZXRoZXIgdGhlIHJhdGluZyBpbmRpY2F0b3IgaXMgaW4gZGlzcGxheU1vZGVcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaXMtZGlzcGxheS1tb2RlJylcbiAgICBkaXNwbGF5TW9kZSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogTnVtYmVyIG9mIHJhdGVzIHRvIGRpc3BsYXlcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBpbmRpY2F0b3JDYXBhY2l0eSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIGNvbnN0IHZhbCA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlLCBJTkRJQ0FUT1JfREVGQVVMVF9DQVBBQ0lUWSk7XG4gICAgICAgIHRoaXMuX2luZGljYXRvckNhcGFjaXR5ID0gdmFsIDwgMSA/IElORElDQVRPUl9ERUZBVUxUX0NBUEFDSVRZIDogdmFsO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgb3Igbm90IHRvIGRpc3BsYXkgaGFsZiB2YWx1ZXMuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBhbGxvd0hhbHZlcyA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogVXNlcidzIHZhbHVlIG51bWJlciBvZiByYXRpbmdzLiBJZiBwcm92aWRlZCwgT3ZlcnJpZGVzIHJhdGluZ0F2ZXJhZ2UuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB2YWx1ZSA9IDA7XG5cbiAgICAvKipcbiAgICAgKiBUb3RhbCBudW1iZXIgb2YgcmF0aW5ncy4gSWYgcHJvdmlkZWQsIHdpbGwgZGlzcGxheSB0ZXh0IHNob3dpbmcgdGhlIHRvdGFsIG51bWJlciBvZiByYXRpbmdzLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgdG90YWxSYXRpbmdzOiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiBSYXRpbmcgYXZlcmFnZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcmF0aW5nQXZlcmFnZTogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogT2JqZWN0IGNvbnRhaW5pbmcga2V5LXZhbHVlIHBhaXJzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIHJhdGluZyBhbmQgdGhlIHZhbHVlIGlzIHRoZSB0b3RhbCBzdW0gb2YgdGhvc2UgcmF0aW5ncy5cbiAgICAgKiBPdmVycmlkZXMgdG90YWxSYXRpbmdzIGFuZCByYXRpbmdBdmVyYWdlLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcmF0aW5nczogTnVtYmVyS2V5PG51bWJlcj47XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIG9yIG5vdCB0byBkaXNwbGF5IHRoZSBwb3BvdmVyIHRoYXQgc2hvd3MgdGhlIHN1bSBvZiBlYWNoIHJhdGluZy4gUmVxdWlyZXMgW3JhdGluZ3NdIG9iamVjdC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGRpc3BsYXlBbGxSYXRpbmdzID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBJY29uIGNsYXNzIGZvciByYXRlZCBpY29uIGZyb20gZnVuZGFtZW50YWwtc3R5bGVzIGxpYiBodHRwczovL3NhcC5naXRodWIuaW8vZnVuZGFtZW50YWwtc3R5bGVzLz9wYXRoPS9kb2NzL2NvbXBvbmVudHMtaWNvbi0tc2l6ZXNcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHJhdGVkSWNvbjogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIEljb24gY2xhc3MgZm9yIHVucmF0ZWQgaWNvbiBmcm9tIGZ1bmRhbWVudGFsLXN0eWxlcyBsaWIgaHR0cHM6Ly9zYXAuZ2l0aHViLmlvL2Z1bmRhbWVudGFsLXN0eWxlcy8/cGF0aD0vZG9jcy9jb21wb25lbnRzLWljb24tLXNpemVzXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB1bnJhdGVkSWNvbjogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogUG9zc2libGUgdmFsdWVzIGFyZSAneHMnLCAnc20nLCAnbWQnLCAnbGcnLCAnY296eScsICdjb21wYWN0JywgJ2NvbmRlbnNlZCdcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNpemU6IFJhdGluZ0luZGljYXRvclNpemUgPSAnbWQnO1xuXG4gICAgLyoqXG4gICAgICogVGV4dCBkaXZpZGVyIGxhYmVsIGJldHdlZW4gdmlldyB2YWx1ZSBhbmQgaW5kaWNhdG9yIGNvdW50LlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZHluYW1pY1RleHRJbmRpY2F0b3IgPSAnb2YnO1xuXG4gICAgLyoqXG4gICAgICogRmlyZWQgd2hlbiB0aGUgdXNlciBzZXRzIG9yIGNoYW5nZXMgdGhlaXIgcmF0aW5nLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJhdGluZ0NoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc2l6ZUNsYXNzID0gdGhpcy5fZ2V0U2l6ZUNsYXNzKHRoaXMuc2l6ZSk7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfcmF0ZXM6IHsgaWQ6IHN0cmluZzsgdmFsdWU6IG51bWJlciB9W10gPSBbXTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9yYXRpbmdJdGVtczogUmF0aW5nVmlld0l0ZW1bXSA9IFtdO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9yYXRpbmdVSUQgPSByYXRpbmdVSUQrKztcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2luZGljYXRvckNhcGFjaXR5ID0gSU5ESUNBVE9SX0RFRkFVTFRfQ0FQQUNJVFk7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF92YWx1ZSA9IDA7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9oaWRlRHluYW1pY1RleHQgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVhZG9ubHkgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge31cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldCB2aWV3UmF0aW5nVUlEKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yYXRpbmdVSUQ7XG4gICAgfVxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IGluZGljYXRvckNvdW50KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pbmRpY2F0b3JDYXBhY2l0eTtcbiAgICB9XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgdmlld1ZhbHVlKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG9uQ2hhbmdlOiAodmFsdWU6IG51bWJlcikgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBvblRvdWNoZWQgPSAoKTogdm9pZCA9PiB7fTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5fY29udmVydFRvVmFsdWUoKTtcbiAgICAgICAgdGhpcy5fcmF0ZXMgPSB0aGlzLl9nZXRSYXRlcygpO1xuICAgICAgICB0aGlzLmJ1aWxkQ29tcG9uZW50Q3NzQ2xhc3MoKTtcbiAgICAgICAgdGhpcy5fZ2VuZXJhdGVSYXRpbmdzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICdjbGFzcycgaW4gY2hhbmdlcyB8fFxuICAgICAgICAgICAgJ3NpemUnIGluIGNoYW5nZXMgfHxcbiAgICAgICAgICAgICdyYXRlZEljb24nIGluIGNoYW5nZXMgfHxcbiAgICAgICAgICAgICd1bnJhdGVkSWNvbicgaW4gY2hhbmdlcyB8fFxuICAgICAgICAgICAgJ2FsbG93SGFsdmVzJyBpbiBjaGFuZ2VzXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCd2YWx1ZScgaW4gY2hhbmdlcykge1xuICAgICAgICAgICAgdGhpcy5fdmFsdWUgPSB0aGlzLl9jb252ZXJ0VG9WYWx1ZSgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICgnaW5kaWNhdG9yQ2FwYWNpdHknIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuX3JhdGVzID0gdGhpcy5fZ2V0UmF0ZXMoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoJ2FsbG93SGFsdmVzJyBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLl92YWx1ZSA9IHRoaXMuX2NvbnZlcnRUb1ZhbHVlKCk7XG4gICAgICAgICAgICB0aGlzLl9yYXRlcyA9IHRoaXMuX2dldFJhdGVzKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoJ3JhdGluZ3MnIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuX2dlbmVyYXRlUmF0aW5ncygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdmFsdWUgPSB0aGlzLl9wYXJzZVZhbHVlKHZhbHVlKTtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IG51bWJlcikgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICAgIH1cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBpdGVtOiB7IGlkOiBzdHJpbmc7IHZhbHVlOiBudW1iZXIgfSk6IG51bWJlciB8IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBpdGVtLmlkO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgb25TZWxlY3QodmFsdWU6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgICAgIHRoaXMucmF0aW5nQ2hhbmdlZC5lbWl0KHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlblxuICAgICAqIENzc0NsYXNzQnVpbGRlciBpbnRlcmZhY2UgaW1wbGVtZW50YXRpb25cbiAgICAgKiBmdW5jdGlvbiBtdXN0IHJldHVybiBzaW5nbGUgc3RyaW5nXG4gICAgICogZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIG9yZGVyIHdoaWNoIGNzcyBjbGFzc2VzIGFyZSBhcHBsaWVkXG4gICAgICovXG4gICAgQGFwcGx5Q3NzQ2xhc3NcbiAgICBidWlsZENvbXBvbmVudENzc0NsYXNzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgdGhpcy5zaXplQ2xhc3MgPSB0aGlzLl9nZXRTaXplQ2xhc3ModGhpcy5zaXplKTtcblxuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgSU5ESUNBVE9SX1BSRUZJWCxcbiAgICAgICAgICAgIHRoaXMuc2l6ZUNsYXNzLFxuICAgICAgICAgICAgdGhpcy5hbGxvd0hhbHZlcyA/IElORElDQVRPUl9DTEFTU0VTLmhhbHZlcyA6ICcnLFxuICAgICAgICAgICAgISF0aGlzLnJhdGVkSWNvbiAmJiAhIXRoaXMudW5yYXRlZEljb24gPyBJTkRJQ0FUT1JfQ0xBU1NFUy5pY29uIDogJycsXG4gICAgICAgICAgICB0aGlzLl9oaWRlRHluYW1pY1RleHQgfHwgIXRoaXMuX3ZhbHVlID8gSU5ESUNBVE9SX0NMQVNTRVMuaGlkZUR5bmFtaWNUZXh0IDogJycsXG4gICAgICAgICAgICB0aGlzLmNsYXNzXG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEdlbmVyYXRlIHJhdGluZyBpdGVtcyBmb3IgcG9wb3ZlciBjb250ZW50IGlmIHJhdGluZyBvYmplY3Qgd2FzIGRlZmluZWRcbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZW5lcmF0ZVJhdGluZ3MoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5yYXRpbmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcmF0aW5ncyA9IE9iamVjdC5lbnRyaWVzKHRoaXMucmF0aW5ncylcbiAgICAgICAgICAgIC5maWx0ZXIoKFtyYXRlLCB2b3RlXSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IF9yYXRlID0gK3JhdGU7XG4gICAgICAgICAgICAgICAgcmV0dXJuICFpc05hTihfcmF0ZSkgJiYgIWlzTmFOKCt2b3RlKSAmJiBfcmF0ZSA+IDA7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLm1hcCgoW3JhdGUsIHZvdGVzXSkgPT4gKHsgcmF0ZTogK3JhdGUsIHZvdGVzIH0pKTtcbiAgICAgICAgaWYgKHJhdGluZ3MubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgeyB0b3RhbFZvdGVzLCB0b3RhbFJhdGluZyB9ID0gcmF0aW5ncy5yZWR1Y2UoXG4gICAgICAgICAgICAodG90YWwsIHJhdGluZykgPT4gKHtcbiAgICAgICAgICAgICAgICB0b3RhbFZvdGVzOiB0b3RhbC50b3RhbFZvdGVzICsgcmF0aW5nLnZvdGVzLFxuICAgICAgICAgICAgICAgIHRvdGFsUmF0aW5nOiB0b3RhbC50b3RhbFJhdGluZyArIHJhdGluZy5yYXRlICogcmF0aW5nLnZvdGVzXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHsgdG90YWxWb3RlczogMCwgdG90YWxSYXRpbmc6IDAgfVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuX3JhdGluZ0l0ZW1zID0gcmF0aW5ncztcbiAgICAgICAgdGhpcy5yYXRpbmdBdmVyYWdlID0gdG90YWxSYXRpbmcgLyB0b3RhbFZvdGVzO1xuICAgICAgICB0aGlzLnRvdGFsUmF0aW5ncyA9IHRvdGFsVm90ZXM7XG4gICAgICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5fY29udmVydFRvVmFsdWUoKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGdldCBjb252ZXJ0ZWQgdmlld1ZhbHVlIGZvciByZW5kZXIgaW4gY29tcG9uZW50IHRlbXBsYXRlIGZyb20gb3JpZ2luYWwgdmFsdWUgaWYgaXQgc3RpbGwgZXhpc3RzLCBvciByYXRpbmdBdmVyYWdlLlxuICAgICAqL1xuICAgIHByaXZhdGUgX2NvbnZlcnRUb1ZhbHVlKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wYXJzZVZhbHVlKHRoaXMudmFsdWUgfHwgdGhpcy5yYXRpbmdBdmVyYWdlKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGdldCBjb252ZXJ0ZWQgdmFsdWUgZnJvbSBvcmlnaW5hbCB0byB2aWV3IHZhbHVlIHdpdGggZGVwZW5kcyBvbiBoYWx2ZXNcbiAgICAgKiBGb3IgZXhhbXBsZSxcbiAgICAgKiAgb3JpZ2luYWwgdmFsdWUgaXMgZXF1YWwgdG8gMi4zNCwgeW91IHdpbGwgZ2V0IGFuZCByZW5kZXIgMlxuICAgICAqICBvcmlnaW5hbCB2YWx1ZSBpcyBlcXVhbCB0byAzLjc0LCB5b3Ugd2lsbCBnZXQgYW5kIHJlbmRlciA0XG4gICAgICovXG4gICAgcHJpdmF0ZSBfcGFyc2VWYWx1ZSh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZSA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaW50ZWdlciA9IE1hdGguZmxvb3IodmFsdWUpO1xuICAgICAgICBjb25zdCBmcmFjdGlvbmFsID0gdmFsdWUgJSAxO1xuICAgICAgICBsZXQgdiA9IGludGVnZXI7XG5cbiAgICAgICAgaWYgKHRoaXMuYWxsb3dIYWx2ZXMgJiYgZnJhY3Rpb25hbCA+IDAuMjUgJiYgZnJhY3Rpb25hbCA8PSAwLjUpIHtcbiAgICAgICAgICAgIHYgPSBpbnRlZ2VyICsgMC41O1xuICAgICAgICB9IGVsc2UgaWYgKGZyYWN0aW9uYWwgPiAwLjUpIHtcbiAgICAgICAgICAgIHYgPSBpbnRlZ2VyICsgMTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBNYXRoLm1pbih0aGlzLmluZGljYXRvckNvdW50LCB2KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGdldCByYXRpbmcgaWNvbnMgYXJyYXkgd2l0aCB2YWx1ZSBhbmQgdW5pYyBpZFxuICAgICAqL1xuICAgIHByaXZhdGUgX2dldFJhdGVzKCk6IHsgaWQ6IHN0cmluZzsgdmFsdWU6IG51bWJlciB9W10ge1xuICAgICAgICBjb25zdCB3aXRoSGFsdmVzID0gdGhpcy5hbGxvd0hhbHZlcyA/IDIgOiAxO1xuICAgICAgICByZXR1cm4gQXJyYXkodGhpcy5pbmRpY2F0b3JDb3VudCAqIHdpdGhIYWx2ZXMpXG4gICAgICAgICAgICAuZmlsbChgcmF0aW5nLSR7dGhpcy5fcmF0aW5nVUlEfWApXG4gICAgICAgICAgICAubWFwKChuYW1lLCBpbmRleCkgPT4gKHtcbiAgICAgICAgICAgICAgICBpZDogYCR7bmFtZX0tJHtpbmRleCArIDF9YCxcbiAgICAgICAgICAgICAgICB2YWx1ZTogKGluZGV4ICsgMSkgLyB3aXRoSGFsdmVzXG4gICAgICAgICAgICB9KSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIGdldCByYXRpbmcgaWNvbnMgYXJyYXkgd2l0aCB2YWx1ZSBhbmQgdW5pYyBpZFxuICAgICAqL1xuICAgIHByaXZhdGUgX2dldFNpemVDbGFzcyhzaXplOiBSYXRpbmdJbmRpY2F0b3JTaXplKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke0lORElDQVRPUl9QUkVGSVh9LS0ke3NpemUgaW4gUmF0aW5nSW5kaWNhdG9yU2l6ZUVudW0gPyBzaXplIDogJ21kJ31gO1xuICAgIH1cbn1cbiIsIjwhLS0gIHJvbGU9XCJhcHBsaWNhdGlvblwiIGlzIHVzZWQgaW4gb3JkZXIgdG8gbGV0IHVzZXIgdG8gY2hhbmdlIHZhbHVlIHdpdGggbGVmdC9yaWdodCBhcnJvd3MgaW4gSkFXUywgc2luY2UgSkFXUyBvdnZlcnJpZGVzIHRoZXNlIGFjdGlvbnMgLS0+XG48ZGl2IGNsYXNzPVwiZmQtcmF0aW5nLWluZGljYXRvcl9fY29udGFpbmVyXCIgcm9sZT1cImFwcGxpY2F0aW9uXCIgYXJpYS1yb2xlZGVzY3JpcHRpb249XCJSYXRpbmcgaW5kaWNhdG9yXCI+XG4gICAgPCEtLSBaZXJvIHZhbHVlIGlmIHdlIGRvbid0IGhhdmUgcHJvdmlkZWQgdmFsdWUgZnJvbSB1c2VyLCBgcmF0aW5nQXZlcmFnZWAgb3IgYHJhdGluZ3NgIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ6ZXJvUmF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwhLS0gQXZhaWxhYmxlIHJhdGUgdmFsdWVzIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHJhdGUgb2YgX3JhdGVzOyBpbmRleCBhcyBpOyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImkgfCByYXRpbmdTdGFyTGFiZWwgOiBfcmF0ZXMubGVuZ3RoIDogYWxsb3dIYWx2ZXNcIlxuICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgY2xhc3M9XCJmZC1yYXRpbmctaW5kaWNhdG9yX19pbnB1dFwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgW2lkXT1cInJhdGUuaWRcIlxuICAgICAgICAgICAgbmFtZT1cInJhdGluZy17eyB2aWV3UmF0aW5nVUlEIH19XCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJyYXRlLnZhbHVlXCJcbiAgICAgICAgICAgIFtjaGVja2VkXT1cInZpZXdWYWx1ZSA9PT0gcmF0ZS52YWx1ZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25TZWxlY3QocmF0ZS52YWx1ZSlcIlxuICAgICAgICAvPlxuICAgICAgICA8bGFiZWwgY2xhc3M9XCJmZC1yYXRpbmctaW5kaWNhdG9yX19sYWJlbFwiIFtmb3JdPVwicmF0ZS5pZFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICAgICAgPGkgKm5nSWY9XCJyYXRlZEljb25cIiBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2xhYmVsLXJhdGVkXCIgW2NsYXNzXT1cInVucmF0ZWRJY29uXCI+PC9pPlxuICAgICAgICAgICAgPGkgKm5nSWY9XCJ1bnJhdGVkSWNvblwiIGNsYXNzPVwiZmQtcmF0aW5nLWluZGljYXRvcl9fbGFiZWwtdW5yYXRlZFwiIFtjbGFzc109XCJyYXRlZEljb25cIj48L2k+XG4gICAgICAgIDwvbGFiZWw+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbjwhLS0gUG9wb3ZlciBpZiBkaXNwbGF5QWxsUmF0aW5ncyBpcyB0cnVlIGFuZCB3ZSBoYXZlIHJhdGluZ3Mgb2JqZWN0IC0tPlxuPHNwYW5cbiAgICBbZmRQb3BvdmVyVHJpZ2dlcl09XCJhbGxSYXRpbmdDb250ZW50XCJcbiAgICAqbmdJZj1cImRpc3BsYXlBbGxSYXRpbmdzICYmIF9yYXRpbmdJdGVtcz8ubGVuZ3RoOyBlbHNlIGR5bmFtaWNUZXh0XCJcbiAgICBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2R5bmFtaWMtdGV4dFwiXG4+XG4gICAgKDxzcGFuIGFyaWEtbGFiZWw9XCJUb3RhbCByYWl0aW5nXCIgZmQtbGluaz57eyB0b3RhbFJhdGluZ3MgfX08L3NwYW5cbiAgICA+KVxuPC9zcGFuPlxuPGZkLXBvcG92ZXJcbiAgICAjYWxsUmF0aW5nQ29udGVudFxuICAgIFt0cmlnZ2Vyc109XCJbJ21vdXNlZW50ZXInLCAnbW91c2VsZWF2ZSddXCJcbiAgICBbbm9BcnJvd109XCJmYWxzZVwiXG4gICAgcGxhY2VtZW50PVwidG9wXCJcbiAgICBhZGRpdGlvbmFsQm9keUNsYXNzPVwiZmQtcmF0aW5nLWluZGljYXRvcl9fcG9wb3ZlclwiXG4+XG4gICAgPGRpdiBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX3N1bS1yb3dcIiBbY2xhc3NdPVwic2l6ZUNsYXNzXCIgKm5nRm9yPVwibGV0IHJhdGluZyBvZiBfcmF0aW5nSXRlbXNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2NvbnRhaW5lclwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcmF0ZSBvZiBfcmF0ZXM7IHRyYWNrQnk6IHRyYWNrQnlGblwiPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5mZC1yYXRpbmctaW5kaWNhdG9yX19pbnB1dC1jaGVja2VkXT1cInJhdGUudmFsdWUgPT09IHJhdGluZy5yYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1yYXRpbmctaW5kaWNhdG9yX19pbnB1dFwiXG4gICAgICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmZC1yYXRpbmctaW5kaWNhdG9yX19sYWJlbFwiPlxuICAgICAgICAgICAgICAgICAgICA8aSAqbmdJZj1cInJhdGVkSWNvblwiIGNsYXNzPVwiZmQtcmF0aW5nLWluZGljYXRvcl9fbGFiZWwtcmF0ZWRcIiBbY2xhc3NdPVwidW5yYXRlZEljb25cIj48L2k+XG4gICAgICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwidW5yYXRlZEljb25cIiBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2xhYmVsLXVucmF0ZWRcIiBbY2xhc3NdPVwicmF0ZWRJY29uXCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgICh7eyByYXRpbmcudm90ZXMgfX0pXG4gICAgPC9kaXY+XG48L2ZkLXBvcG92ZXI+XG5cbjxuZy10ZW1wbGF0ZSAjZHluYW1pY1RleHQ+XG4gICAgPHNwYW4gKm5nSWY9XCJ0b3RhbFJhdGluZ3NcIiBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2R5bmFtaWMtdGV4dFwiPih7eyB0b3RhbFJhdGluZ3MgfX0pPC9zcGFuPlxuICAgIDxzcGFuICpuZ0lmPVwiIXRvdGFsUmF0aW5nc1wiIGNsYXNzPVwiZmQtcmF0aW5nLWluZGljYXRvcl9fZHluYW1pYy10ZXh0XCJcbiAgICAgICAgPih7eyB2aWV3VmFsdWUgfX0ge3sgZHluYW1pY1RleHRJbmRpY2F0b3IgfX0ge3sgaW5kaWNhdG9yQ291bnQgfX0pPC9zcGFuXG4gICAgPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjemVyb1JhdGUgbGV0LWhhbHZlcz1cImhhbHZlc1wiPlxuICAgIDxpbnB1dFxuICAgICAgICBhcmlhLWxhYmVsPVwiUmVzZXQgdG8gemVyb1wiXG4gICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2lucHV0IGZkLXJhdGluZy1pbmRpY2F0b3JfX2lucHV0LS16ZXJvLXJhdGluZ1wiXG4gICAgICAgIChjbGljayk9XCJvblNlbGVjdCgwKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIG5hbWU9XCJyYXRpbmcte3sgdmlld1JhdGluZ1VJRCB9fXt7IGhhbHZlcyA/ICctaGFsdmVzJyA6ICcnIH19XCJcbiAgICAgICAgW2NoZWNrZWRdPVwidmlld1ZhbHVlID09PSAwXCJcbiAgICAvPlxuICAgIDxsYWJlbCBjbGFzcz1cImZkLXJhdGluZy1pbmRpY2F0b3JfX2xhYmVsIGZkLXJhdGluZy1pbmRpY2F0b3JfX2xhYmVsLS16ZXJvLXJhdGluZ1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvbGFiZWw+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -1,4 +1,4 @@
1
- import { Directive, ElementRef, HostBinding, HostListener, inject, Input, PLATFORM_ID, Renderer2 } from '@angular/core';
1
+ import { CSP_NONCE, Directive, ElementRef, HostBinding, HostListener, inject, Input, PLATFORM_ID, Renderer2 } from '@angular/core';
2
2
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
3
3
  import { DOCUMENT, isPlatformBrowser } from '@angular/common';
4
4
  import scrollbarStyles from 'fundamental-styles/dist/js/scrollbar';
@@ -59,12 +59,6 @@ export class ScrollbarDirective {
59
59
  }
60
60
  return this._overflow;
61
61
  }
62
- /** @hidden */
63
- onScroll(event) {
64
- if (this._inPopover) {
65
- event.stopImmediatePropagation();
66
- }
67
- }
68
62
  /**
69
63
  * @hidden
70
64
  */
@@ -77,6 +71,10 @@ export class ScrollbarDirective {
77
71
  /** @hidden */
78
72
  this._document = inject(DOCUMENT);
79
73
  /** @hidden */
74
+ this._csp_nonce = inject(CSP_NONCE, {
75
+ optional: true
76
+ });
77
+ /** @hidden */
80
78
  this._noHorizontalScroll = false;
81
79
  /** @hidden */
82
80
  this._noVerticalScroll = false;
@@ -87,10 +85,19 @@ export class ScrollbarDirective {
87
85
  if (!styleSheet && isPlatformBrowser(platform)) {
88
86
  styleSheet = renderer2.createElement('style');
89
87
  styleSheet.innerHTML = scrollbarStyles.cssSource;
88
+ if (this._csp_nonce) {
89
+ styleSheet?.setAttribute('nonce', this._csp_nonce);
90
+ }
90
91
  renderer2.appendChild(this._document.head, styleSheet);
91
92
  }
92
93
  }
93
94
  /** @hidden */
95
+ onScroll(event) {
96
+ if (this._inPopover) {
97
+ event.stopImmediatePropagation();
98
+ }
99
+ }
100
+ /** @hidden */
94
101
  ngOnDestroy() {
95
102
  if (--scrollbarElementsQuantity === 0) {
96
103
  styleSheet?.remove();
@@ -142,4 +149,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
142
149
  type: HostListener,
143
150
  args: ['scroll', ['$event']]
144
151
  }] } });
145
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3Njcm9sbGJhci9zY3JvbGxiYXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFFTCxXQUFXLEVBQ1gsU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUQsT0FBTyxlQUFlLE1BQU0sc0NBQXNDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFJckQsSUFBSSx5QkFBeUIsR0FBRyxDQUFDLENBQUM7QUFDbEMsSUFBSSxVQUFVLEdBQTRCLElBQUksQ0FBQztBQUUvQzs7Ozs7Ozs7Ozs7R0FXRztBQVNILE1BQU0sT0FBTyxrQkFBa0I7SUFDM0IsNERBQTREO0lBQzVELElBQ0ksa0JBQWtCLENBQUMsS0FBbUI7UUFDdEMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNsQixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztJQUNwQyxDQUFDO0lBRUQsMERBQTBEO0lBQzFELElBQ0ksZ0JBQWdCLENBQUMsS0FBbUI7UUFDcEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNoQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNsQyxDQUFDO0lB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LEtBQUs7Z0JBV0YsZ0JBQWdCO3NCQURuQixLQUFLO2dCQVdGLGFBQWE7c0JBRGhCLEtBQUs7Z0JBV04sZ0JBQWdCO3NCQURmLEtBQUs7Z0JBS0YsU0FBUztzQkFEWixXQUFXO3VCQUFDLGVBQWU7Z0JBT3hCLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxrQkFBa0I7Z0JBVzNCLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxrQkFBa0I7Z0JBeUIvQixRQUFRO3NCQURQLFlBQVk7dUJBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uRGVzdHJveSxcbiAgICBQTEFURk9STV9JRCxcbiAgICBSZW5kZXJlcjJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBET0NVTUVOVCwgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHNjcm9sbGJhclN0eWxlcyBmcm9tICdmdW5kYW1lbnRhbC1zdHlsZXMvZGlzdC9qcy9zY3JvbGxiYXInO1xuaW1wb3J0IHsgQ2RrU2Nyb2xsYWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcblxuZXhwb3J0IHR5cGUgU2Nyb2xsYmFyT3ZlcmZsb3dPcHRpb25zID0gJ2F1dG8nIHwgJ3Njcm9sbCcgfCAnaGlkZGVuJztcblxubGV0IHNjcm9sbGJhckVsZW1lbnRzUXVhbnRpdHkgPSAwO1xubGV0IHN0eWxlU2hlZXQ6IEhUTUxTdHlsZUVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuLyoqXG4gKiBUaGUgc2Nyb2xsYmFyIGRpcmVjdGl2ZS5cbiAqXG4gKiBDaGlsZHJlbiB1c2FnZTpcbiAqIGBgYGh0bWxcbiAqIDxkaXYgZmQtc2Nyb2xsYmFyPlxuICogPGRpdiBmZC1zY3JvbGxiYXIgbm9WZXJ0aWNhbFNjcm9sbD5cbiAqIDxkaXYgZmQtc2Nyb2xsYmFyIFtub1ZlcnRpY2FsU2Nyb2xsXT1cInRydWVcIj5cbiAqIDxkaXYgZmQtc2Nyb2xsYmFyIG5vSG9yaXpvbnRhbFNjcm9sbD5cbiAqIDxkaXYgZmQtc2Nyb2xsYmFyIFtub0hvcml6b250YWxTY3JvbGxdPVwidHJ1ZVwiPlxuICogYGBgXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkU2Nyb2xsYmFyXSwgW2ZkLXNjcm9sbGJhcl0nLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdmZC1zY3JvbGxiYXInXG4gICAgfSxcbiAgICBob3N0RGlyZWN0aXZlczogW0Nka1Njcm9sbGFibGVdLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgU2Nyb2xsYmFyRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICAvKiogV2hldGhlciBvdmVyZmxvdyBob3Jpem9udGFsIGNvbnRlbnQgc2hvdWxkIGJlIGhpZGRlbi4gKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBub0hvcml6b250YWxTY3JvbGwodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9ub0hvcml6b250YWxTY3JvbGwgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIGdldCBub0hvcml6b250YWxTY3JvbGwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9ub0hvcml6b250YWxTY3JvbGw7XG4gICAgfVxuXG4gICAgLyoqIFdoZXRoZXIgb3ZlcmZsb3cgdmVydGljYWwgY29udGVudCBzaG91bGQgYmUgaGlkZGVuLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IG5vVmVydGljYWxTY3JvbGwodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9ub1ZlcnRpY2FsU2Nyb2xsID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBnZXQgbm9WZXJ0aWNhbFNjcm9sbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX25vVmVydGljYWxTY3JvbGw7XG4gICAgfVxuXG4gICAgLyoqIFdoZXRoZXIgc2Nyb2xsYmFycyBzaG91bGQgYmUgdmlzaWJsZSBldmVuIGlmIGNvbnRlbnQgZml0cy4gKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBhbHdheXNWaXNpYmxlKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5fYWx3YXlzVmlzaWJsZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgZ2V0IGFsd2F5c1Zpc2libGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hbHdheXNWaXNpYmxlO1xuICAgIH1cblxuICAgIC8qKiBXaGV0aGVyIHRvIGZvcmNlIGFwcGx5IHRhYmluZGV4IGF0dHJpYnV0ZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIG92ZXJyaWRlVGFiaW5kZXggPSB0cnVlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIudGFiaW5kZXgnKVxuICAgIGdldCBfdGFiaW5kZXgoKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLm92ZXJyaWRlVGFiaW5kZXggPyAwIDogbnVsbDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnc3R5bGUub3ZlcmZsb3cteCcpXG4gICAgZ2V0IF9vdmVyZmxvd1goKTogU2Nyb2xsYmFyT3ZlcmZsb3dPcHRpb25zIHtcbiAgICAgICAgaWYgKHRoaXMubm9Ib3Jpem9udGFsU2Nyb2xsKSB7XG4gICAgICAgICAgICByZXR1cm4gJ2hpZGRlbic7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5fb3ZlcmZsb3c7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLm92ZXJmbG93LXknKVxuICAgIGdldCBfb3ZlcmZsb3dZKCk6IFNjcm9sbGJhck92ZXJmbG93T3B0aW9ucyB7XG4gICAgICAgIGlmICh0aGlzLm5vVmVydGljYWxTY3JvbGwpIHtcbiAgICAgICAgICAgIHJldHVybiAnaGlkZGVuJztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLl9vdmVyZmxvdztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9pblBvcG92ZXIgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZG9jdW1lbnQ6IERvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX25vSG9yaXpvbnRhbFNjcm9sbCA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9ub1ZlcnRpY2FsU2Nyb2xsID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2Fsd2F5c1Zpc2libGUgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RMaXN0ZW5lcignc2Nyb2xsJywgWyckZXZlbnQnXSlcbiAgICBvblNjcm9sbChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX2luUG9wb3Zlcikge1xuICAgICAgICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sIHJlbmRlcmVyMjogUmVuZGVyZXIyKSB7XG4gICAgICAgIHNjcm9sbGJhckVsZW1lbnRzUXVhbnRpdHkrKztcbiAgICAgICAgY29uc3QgcGxhdGZvcm0gPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuICAgICAgICBpZiAoIXN0eWxlU2hlZXQgJiYgaXNQbGF0Zm9ybUJyb3dzZXIocGxhdGZvcm0pKSB7XG4gICAgICAgICAgICBzdHlsZVNoZWV0ID0gcmVuZGVyZXIyLmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7XG4gICAgICAgICAgICBzdHlsZVNoZWV0IS5pbm5lckhUTUwgPSBzY3JvbGxiYXJTdHlsZXMuY3NzU291cmNlO1xuICAgICAgICAgICAgcmVuZGVyZXIyLmFwcGVuZENoaWxkKHRoaXMuX2RvY3VtZW50LmhlYWQsIHN0eWxlU2hlZXQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKC0tc2Nyb2xsYmFyRWxlbWVudHNRdWFudGl0eSA9PT0gMCkge1xuICAgICAgICAgICAgc3R5bGVTaGVldD8ucmVtb3ZlKCk7XG4gICAgICAgICAgICBzdHlsZVNoZWV0ID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBtZXRob2QgdG8gaW52b2tlIHNjcm9sbCAqL1xuICAgIHNjcm9sbChvcHRpb25zOiBTY3JvbGxUb09wdGlvbnMpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNjcm9sbChvcHRpb25zKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgZ2V0IF9vdmVyZmxvdygpOiBTY3JvbGxiYXJPdmVyZmxvd09wdGlvbnMge1xuICAgICAgICBpZiAodGhpcy5hbHdheXNWaXNpYmxlKSB7XG4gICAgICAgICAgICByZXR1cm4gJ3Njcm9sbCc7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gJ2F1dG8nO1xuICAgIH1cbn1cbiJdfQ==
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3Njcm9sbGJhci9zY3JvbGxiYXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBRUwsV0FBVyxFQUNYLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sZUFBZSxNQUFNLHNDQUFzQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBSXJELElBQUkseUJBQXlCLEdBQUcsQ0FBQyxDQUFDO0FBQ2xDLElBQUksVUFBVSxHQUE0QixJQUFJLENBQUM7QUFFL0M7Ozs7Ozs7Ozs7O0dBV0c7QUFTSCxNQUFNLE9BQU8sa0JBQWtCO0lBQzNCLDREQUE0RDtJQUM1RCxJQUNJLGtCQUFrQixDQUFDLEtBQW1CO1FBQ3RDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7SUFDcEMsQ0FBQztJQUVELDBEQUEwRDtJQUMxRCxJQUNJLGdCQUFnQixDQUFDLEtBQW1CO1FBQ3BDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFD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bEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQVI5QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwrQkFBK0I7b0JBQ3pDLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsY0FBYztxQkFDeEI7b0JBQ0QsY0FBYyxFQUFFLENBQUMsYUFBYSxDQUFDO29CQUMvQixVQUFVLEVBQUUsSUFBSTtpQkFDbkI7eUhBSU8sa0JBQWtCO3NCQURyQixLQUFLO2dCQVdGLGdCQUFnQjtzQkFEbkIsS0FBSztnQkFXRixhQUFhO3NCQURoQixLQUFLO2dCQVdOLGdCQUFnQjtzQkFEZixLQUFLO2dCQUtGLFNBQVM7c0JBRFosV0FBVzt1QkFBQyxlQUFlO2dCQU94QixVQUFVO3NCQURiLFdBQVc7dUJBQUMsa0JBQWtCO2dCQVczQixVQUFVO3NCQURiLFdBQVc7dUJBQUMsa0JBQWtCO2dCQStDL0IsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ1NQX05PTkNFLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIFBMQVRGT1JNX0lELFxuICAgIFJlbmRlcmVyMlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IERPQ1VNRU5ULCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgc2Nyb2xsYmFyU3R5bGVzIGZyb20gJ2Z1bmRhbWVudGFsLXN0eWxlcy9kaXN0L2pzL3Njcm9sbGJhcic7XG5pbXBvcnQgeyBDZGtTY3JvbGxhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuXG5leHBvcnQgdHlwZSBTY3JvbGxiYXJPdmVyZmxvd09wdGlvbnMgPSAnYXV0bycgfCAnc2Nyb2xsJyB8ICdoaWRkZW4nO1xuXG5sZXQgc2Nyb2xsYmFyRWxlbWVudHNRdWFudGl0eSA9IDA7XG5sZXQgc3R5bGVTaGVldDogSFRNTFN0eWxlRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4vKipcbiAqIFRoZSBzY3JvbGxiYXIgZGlyZWN0aXZlLlxuICpcbiAqIENoaWxkcmVuIHVzYWdlOlxuICogYGBgaHRtbFxuICogPGRpdiBmZC1zY3JvbGxiYXI+XG4gKiA8ZGl2IGZkLXNjcm9sbGJhciBub1ZlcnRpY2FsU2Nyb2xsPlxuICogPGRpdiBmZC1zY3JvbGxiYXIgW25vVmVydGljYWxTY3JvbGxdPVwidHJ1ZVwiPlxuICogPGRpdiBmZC1zY3JvbGxiYXIgbm9Ib3Jpem9udGFsU2Nyb2xsPlxuICogPGRpdiBmZC1zY3JvbGxiYXIgW25vSG9yaXpvbnRhbFNjcm9sbF09XCJ0cnVlXCI+XG4gKiBgYGBcbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZmRTY3JvbGxiYXJdLCBbZmQtc2Nyb2xsYmFyXScsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZkLXNjcm9sbGJhcidcbiAgICB9LFxuICAgIGhvc3REaXJlY3RpdmVzOiBbQ2RrU2Nyb2xsYWJsZV0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBTY3JvbGxiYXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIC8qKiBXaGV0aGVyIG92ZXJmbG93IGhvcml6b250YWwgY29udGVudCBzaG91bGQgYmUgaGlkZGVuLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IG5vSG9yaXpvbnRhbFNjcm9sbCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX25vSG9yaXpvbnRhbFNjcm9sbCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgZ2V0IG5vSG9yaXpvbnRhbFNjcm9sbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX25vSG9yaXpvbnRhbFNjcm9sbDtcbiAgICB9XG5cbiAgICAvKiogV2hldGhlciBvdmVyZmxvdyB2ZXJ0aWNhbCBjb250ZW50IHNob3VsZCBiZSBoaWRkZW4uICovXG4gICAgQElucHV0KClcbiAgICBzZXQgbm9WZXJ0aWNhbFNjcm9sbCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX25vVmVydGljYWxTY3JvbGwgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIGdldCBub1ZlcnRpY2FsU2Nyb2xsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fbm9WZXJ0aWNhbFNjcm9sbDtcbiAgICB9XG5cbiAgICAvKiogV2hldGhlciBzY3JvbGxiYXJzIHNob3VsZCBiZSB2aXNpYmxlIGV2ZW4gaWYgY29udGVudCBmaXRzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGFsd2F5c1Zpc2libGUodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9hbHdheXNWaXNpYmxlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBnZXQgYWx3YXlzVmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Fsd2F5c1Zpc2libGU7XG4gICAgfVxuXG4gICAgLyoqIFdoZXRoZXIgdG8gZm9yY2UgYXBwbHkgdGFiaW5kZXggYXR0cmlidXRlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgb3ZlcnJpZGVUYWJpbmRleCA9IHRydWU7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnYXR0ci50YWJpbmRleCcpXG4gICAgZ2V0IF90YWJpbmRleCgpOiBudW1iZXIgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcnJpZGVUYWJpbmRleCA/IDAgOiBudWxsO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5vdmVyZmxvdy14JylcbiAgICBnZXQgX292ZXJmbG93WCgpOiBTY3JvbGxiYXJPdmVyZmxvd09wdGlvbnMge1xuICAgICAgICBpZiAodGhpcy5ub0hvcml6b250YWxTY3JvbGwpIHtcbiAgICAgICAgICAgIHJldHVybiAnaGlkZGVuJztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLl9vdmVyZmxvdztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnc3R5bGUub3ZlcmZsb3cteScpXG4gICAgZ2V0IF9vdmVyZmxvd1koKTogU2Nyb2xsYmFyT3ZlcmZsb3dPcHRpb25zIHtcbiAgICAgICAgaWYgKHRoaXMubm9WZXJ0aWNhbFNjcm9sbCkge1xuICAgICAgICAgICAgcmV0dXJuICdoaWRkZW4nO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuX292ZXJmbG93O1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2luUG9wb3ZlciA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9kb2N1bWVudDogRG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jc3Bfbm9uY2UgPSBpbmplY3QoQ1NQX05PTkNFLCB7XG4gICAgICAgIG9wdGlvbmFsOiB0cnVlXG4gICAgfSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX25vSG9yaXpvbnRhbFNjcm9sbCA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9ub1ZlcnRpY2FsU2Nyb2xsID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2Fsd2F5c1Zpc2libGUgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiwgcmVuZGVyZXIyOiBSZW5kZXJlcjIpIHtcbiAgICAgICAgc2Nyb2xsYmFyRWxlbWVudHNRdWFudGl0eSsrO1xuICAgICAgICBjb25zdCBwbGF0Zm9ybSA9IGluamVjdChQTEFURk9STV9JRCk7XG4gICAgICAgIGlmICghc3R5bGVTaGVldCAmJiBpc1BsYXRmb3JtQnJvd3NlcihwbGF0Zm9ybSkpIHtcbiAgICAgICAgICAgIHN0eWxlU2hlZXQgPSByZW5kZXJlcjIuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTtcbiAgICAgICAgICAgIHN0eWxlU2hlZXQhLmlubmVySFRNTCA9IHNjcm9sbGJhclN0eWxlcy5jc3NTb3VyY2U7XG4gICAgICAgICAgICBpZiAodGhpcy5fY3NwX25vbmNlKSB7XG4gICAgICAgICAgICAgICAgc3R5bGVTaGVldD8uc2V0QXR0cmlidXRlKCdub25jZScsIHRoaXMuX2NzcF9ub25jZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZW5kZXJlcjIuYXBwZW5kQ2hpbGQodGhpcy5fZG9jdW1lbnQuaGVhZCwgc3R5bGVTaGVldCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ3Njcm9sbCcsIFsnJGV2ZW50J10pXG4gICAgb25TY3JvbGwoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9pblBvcG92ZXIpIHtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKC0tc2Nyb2xsYmFyRWxlbWVudHNRdWFudGl0eSA9PT0gMCkge1xuICAgICAgICAgICAgc3R5bGVTaGVldD8ucmVtb3ZlKCk7XG4gICAgICAgICAgICBzdHlsZVNoZWV0ID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBtZXRob2QgdG8gaW52b2tlIHNjcm9sbCAqL1xuICAgIHNjcm9sbChvcHRpb25zOiBTY3JvbGxUb09wdGlvbnMpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNjcm9sbChvcHRpb25zKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgZ2V0IF9vdmVyZmxvdygpOiBTY3JvbGxiYXJPdmVyZmxvd09wdGlvbnMge1xuICAgICAgICBpZiAodGhpcy5hbHdheXNWaXNpYmxlKSB7XG4gICAgICAgICAgICByZXR1cm4gJ3Njcm9sbCc7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gJ2F1dG8nO1xuICAgIH1cbn1cbiJdfQ==