@ks89/angular-modal-gallery 11.1.1 → 11.1.2

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 (32) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +1 -0
  3. package/esm2022/lib/components/accessible.component.mjs +6 -7
  4. package/esm2022/lib/components/carousel/carousel-previews/carousel-previews.component.mjs +6 -7
  5. package/esm2022/lib/components/carousel/carousel.component.mjs +7 -8
  6. package/esm2022/lib/components/current-image/current-image.component.mjs +7 -8
  7. package/esm2022/lib/components/current-image/loading-spinner/loading-spinner.component.mjs +5 -6
  8. package/esm2022/lib/components/dots/dots.component.mjs +6 -7
  9. package/esm2022/lib/components/modal-gallery/attach-to-overlay.service.mjs +6 -7
  10. package/esm2022/lib/components/modal-gallery/modal-gallery.component.mjs +7 -8
  11. package/esm2022/lib/components/modal-gallery/modal-gallery.service.mjs +6 -7
  12. package/esm2022/lib/components/plain-gallery/plain-gallery.component.mjs +7 -8
  13. package/esm2022/lib/components/previews/previews.component.mjs +6 -7
  14. package/esm2022/lib/components/upper-buttons/upper-buttons.component.mjs +6 -7
  15. package/esm2022/lib/directives/a-tag-bg-image.directive.mjs +6 -7
  16. package/esm2022/lib/directives/click-outside.directive.mjs +5 -6
  17. package/esm2022/lib/directives/description.directive.mjs +6 -7
  18. package/esm2022/lib/directives/direction.directive.mjs +6 -7
  19. package/esm2022/lib/directives/fallback-image.directive.mjs +6 -7
  20. package/esm2022/lib/directives/keyboard-navigation.directive.mjs +5 -6
  21. package/esm2022/lib/directives/margin.directive.mjs +6 -7
  22. package/esm2022/lib/directives/max-size.directive.mjs +6 -7
  23. package/esm2022/lib/directives/size.directive.mjs +6 -7
  24. package/esm2022/lib/directives/swipe.directive.mjs +5 -6
  25. package/esm2022/lib/directives/wrap.directive.mjs +6 -7
  26. package/esm2022/lib/modal-gallery.module.mjs +6 -7
  27. package/esm2022/lib/services/config.service.mjs +5 -6
  28. package/esm2022/lib/services/id-validator.service.mjs +5 -6
  29. package/fesm2022/ks89-angular-modal-gallery.mjs +103 -103
  30. package/fesm2022/ks89-angular-modal-gallery.mjs.map +1 -1
  31. package/lib/components/components.d.ts +1 -1
  32. package/package.json +1 -1
@@ -26,7 +26,7 @@ import * as i0 from "@angular/core";
26
26
  /**
27
27
  * Service to check if the provided id is unique
28
28
  */
29
- class IdValidatorService {
29
+ export class IdValidatorService {
30
30
  constructor() {
31
31
  this.ids = new Map();
32
32
  }
@@ -61,12 +61,11 @@ class IdValidatorService {
61
61
  this.ids.delete(galleryId);
62
62
  return true;
63
63
  }
64
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IdValidatorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
65
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IdValidatorService, providedIn: 'root' }); }
64
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: IdValidatorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
65
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: IdValidatorService, providedIn: 'root' }); }
66
66
  }
67
- export { IdValidatorService };
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IdValidatorService, decorators: [{
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: IdValidatorService, decorators: [{
69
68
  type: Injectable,
70
69
  args: [{ providedIn: 'root' }]
71
70
  }] });
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQtdmFsaWRhdG9yLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rczg5L2FuZ3VsYXItbW9kYWwtZ2FsbGVyeS9zcmMvbGliL3NlcnZpY2VzL2lkLXZhbGlkYXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFM0M7O0dBRUc7QUFDSCxNQUNhLGtCQUFrQjtJQUQvQjtRQUVFLFFBQUcsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO0tBa0NqQjtJQWhDQzs7Ozs7O09BTUc7SUFDSCxXQUFXLENBQUMsU0FBNkI7UUFDdkMsSUFBSSxTQUFTLEtBQUssU0FBUyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxTQUFTLEdBQUcsQ0FBQyxFQUFFO1lBQzVFLE1BQU0sSUFBSSxLQUFLLENBQUMsa0dBQWtHLENBQUMsQ0FBQztTQUNySDtRQUNELElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsU0FBUywrRUFBK0UsQ0FBQyxDQUFDO1NBQzVJO1FBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxTQUE2QjtRQUNsQyxJQUFJLFNBQVMsS0FBSyxTQUFTLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLFNBQVMsR0FBRyxDQUFDLEVBQUU7WUFDNUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxrR0FBa0csQ0FBQyxDQUFDO1NBQ3JIO1FBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDM0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzhHQWxDVSxrQkFBa0I7a0hBQWxCLGtCQUFrQixjQURMLE1BQU07O1NBQ25CLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gVGhlIE1JVCBMaWNlbnNlIChNSVQpXG5cbiBDb3B5cmlnaHQgKEMpIDIwMTctMjAyMyBTdGVmYW5vIENhcHBhIChLczg5KVxuXG4gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG5cbiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuXG4gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT04gSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxuIFNPRlRXQVJFLlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIGNoZWNrIGlmIHRoZSBwcm92aWRlZCBpZCBpcyB1bmlxdWVcbiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBJZFZhbGlkYXRvclNlcnZpY2Uge1xuICBpZHMgPSBuZXcgTWFwKCk7XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB0byBjaGVjayBhbmQgcmVzZXJ2ZSBhbiBpZCBmb3IgdGhlIGN1cnJlbnQgaW5zdGFuY2Ugb2YgdGhlIGxpYnJhcnkuXG4gICAqIEluIHRoaXMgd2F5LCBubyBvdGhlciBpbnN0YW5jZXMgY2FuIHVzZSB0aGUgc2FtZSBpZC5cbiAgICogQHBhcmFtIGdhbGxlcnlJZCBudW1iZXIgb3IgdW5kZWZpbmVkIHRoYXQgcmVwcmVzZW50cyB0aGUgdW5pcXVlIGlkIG9mIHRoZSBnYWxsZXJ5LlxuICAgKiBAcmV0dXJuIGJvb2xlYW4gdHJ1ZSBpZiBzdWNjZXNzLiBmYWxzZSBpcyBuZXZlciByZXR1cm5lZCwgaW5zdGVhZCBhbiBleGNlcHRpb24gaXMgdGhyb3duXG4gICAqIEB0aHJvd3MgYSBlcnJvciB3aXRoIGEgbWVzc2FnZSBpZiBnYWxsZXJ5SWQgaXMgbmVpdGhlciB1bmlxdWUsIDwgMCBvciBhbiBpbnRlZ2VyXG4gICAqL1xuICBjaGVja0FuZEFkZChnYWxsZXJ5SWQ6IG51bWJlciB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xuICAgIGlmIChnYWxsZXJ5SWQgPT09IHVuZGVmaW5lZCB8fCAhTnVtYmVyLmlzSW50ZWdlcihnYWxsZXJ5SWQpIHx8IGdhbGxlcnlJZCA8IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignWW91IG11c3QgcHJvdmlkZSBhIHZhbGlkIFtpZF09XCJ1bmlxdWUgaW50ZWdlciA+IDAgaGVyZVwiIHRvIHRoZSBnYWxsZXJ5L2Nhcm91c2VsIGluIHlvdXIgdGVtcGxhdGUnKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuaWRzLmdldChnYWxsZXJ5SWQpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBjcmVhdGUgZ2FsbGVyeSB3aXRoIGlkPSR7Z2FsbGVyeUlkfSBiZWNhdXNlIGFscmVhZHkgdXNlZCBpbiB5b3VyIGFwcGxpY2F0aW9uLiBUaGlzIG11c3QgYmUgYSB1bmlxdWUgaW50ZWdlciA+PSAwYCk7XG4gICAgfVxuICAgIHRoaXMuaWRzLnNldChnYWxsZXJ5SWQsIGdhbGxlcnlJZCk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIHRvIHJlbW92ZSBhIHJlc2VydmVkIGlkLiBJbiB0aGlzIHdheSB5b3UgYXJlIGFibGUgdG8gdXNlIHRoZSBpZCBhZ2FpbiBmb3IgYW5vdGhlciBpbnN0YW5jZSBvZiB0aGUgbGlicmFyeS5cbiAgICogQHBhcmFtIGdhbGxlcnlJZCBudW1iZXIgb3IgdW5kZWZpbmVkIHRoYXQgcmVwcmVzZW50cyB0aGUgdW5pcXVlIGlkIG9mIHRoZSBnYWxsZXJ5LlxuICAgKiBAcmV0dXJuIGJvb2xlYW4gdHJ1ZSBpZiBzdWNjZXNzLiBmYWxzZSBpcyBuZXZlciByZXR1cm5lZCwgaW5zdGVhZCBhbiBleGNlcHRpb24gaXMgdGhyb3duKlxuICAgKiBAdGhyb3dzIGEgZXJyb3Igd2l0aCBhIG1lc3NhZ2UgaWYgZ2FsbGVyeUlkIGlzIG5laXRoZXIgaW50ZWdlciBvciA8IDBcbiAgICogKiB0aGlzIHNob3VsZCBiZSBpbXByb3ZlZCB3aXRob3V0IHJldHVybiB0cnVlLCBiZWNhdXNlIGl0IGRvZXNuJ3QgbWFrZSBzZW5zZSEgOihcbiAgICovXG4gIHJlbW92ZShnYWxsZXJ5SWQ6IG51bWJlciB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xuICAgIGlmIChnYWxsZXJ5SWQgPT09IHVuZGVmaW5lZCB8fCAhTnVtYmVyLmlzSW50ZWdlcihnYWxsZXJ5SWQpIHx8IGdhbGxlcnlJZCA8IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignWW91IG11c3QgcHJvdmlkZSBhIHZhbGlkIFtpZF09XCJ1bmlxdWUgaW50ZWdlciA+IDAgaGVyZVwiIHRvIHRoZSBnYWxsZXJ5L2Nhcm91c2VsIGluIHlvdXIgdGVtcGxhdGUnKTtcbiAgICB9XG4gICAgdGhpcy5pZHMuZGVsZXRlKGdhbGxlcnlJZCk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cbiJdfQ==
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQtdmFsaWRhdG9yLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rczg5L2FuZ3VsYXItbW9kYWwtZ2FsbGVyeS9zcmMvbGliL3NlcnZpY2VzL2lkLXZhbGlkYXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFM0M7O0dBRUc7QUFFSCxNQUFNLE9BQU8sa0JBQWtCO0lBRC9CO1FBRUUsUUFBRyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7S0FrQ2pCO0lBaENDOzs7Ozs7T0FNRztJQUNILFdBQVcsQ0FBQyxTQUE2QjtRQUN2QyxJQUFJLFNBQVMsS0FBSyxTQUFTLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLFNBQVMsR0FBRyxDQUFDLEVBQUU7WUFDNUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxrR0FBa0csQ0FBQyxDQUFDO1NBQ3JIO1FBQ0QsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLGlDQUFpQyxTQUFTLCtFQUErRSxDQUFDLENBQUM7U0FDNUk7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLFNBQTZCO1FBQ2xDLElBQUksU0FBUyxLQUFLLFNBQVMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksU0FBUyxHQUFHLENBQUMsRUFBRTtZQUM1RSxNQUFNLElBQUksS0FBSyxDQUFDLGtHQUFrRyxDQUFDLENBQUM7U0FDckg7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7OEdBbENVLGtCQUFrQjtrSEFBbEIsa0JBQWtCLGNBREwsTUFBTTs7MkZBQ25CLGtCQUFrQjtrQkFEOUIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuIFRoZSBNSVQgTGljZW5zZSAoTUlUKVxuXG4gQ29weXJpZ2h0IChDKSAyMDE3LTIwMjMgU3RlZmFubyBDYXBwYSAoS3M4OSlcblxuIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuXG4gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsXG4gY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cblxuIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1JcbiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OIElORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEVcbiBTT0ZUV0FSRS5cbiAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogU2VydmljZSB0byBjaGVjayBpZiB0aGUgcHJvdmlkZWQgaWQgaXMgdW5pcXVlXG4gKi9cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgSWRWYWxpZGF0b3JTZXJ2aWNlIHtcbiAgaWRzID0gbmV3IE1hcCgpO1xuXG4gIC8qKlxuICAgKiBNZXRob2QgdG8gY2hlY2sgYW5kIHJlc2VydmUgYW4gaWQgZm9yIHRoZSBjdXJyZW50IGluc3RhbmNlIG9mIHRoZSBsaWJyYXJ5LlxuICAgKiBJbiB0aGlzIHdheSwgbm8gb3RoZXIgaW5zdGFuY2VzIGNhbiB1c2UgdGhlIHNhbWUgaWQuXG4gICAqIEBwYXJhbSBnYWxsZXJ5SWQgbnVtYmVyIG9yIHVuZGVmaW5lZCB0aGF0IHJlcHJlc2VudHMgdGhlIHVuaXF1ZSBpZCBvZiB0aGUgZ2FsbGVyeS5cbiAgICogQHJldHVybiBib29sZWFuIHRydWUgaWYgc3VjY2Vzcy4gZmFsc2UgaXMgbmV2ZXIgcmV0dXJuZWQsIGluc3RlYWQgYW4gZXhjZXB0aW9uIGlzIHRocm93blxuICAgKiBAdGhyb3dzIGEgZXJyb3Igd2l0aCBhIG1lc3NhZ2UgaWYgZ2FsbGVyeUlkIGlzIG5laXRoZXIgdW5pcXVlLCA8IDAgb3IgYW4gaW50ZWdlclxuICAgKi9cbiAgY2hlY2tBbmRBZGQoZ2FsbGVyeUlkOiBudW1iZXIgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcbiAgICBpZiAoZ2FsbGVyeUlkID09PSB1bmRlZmluZWQgfHwgIU51bWJlci5pc0ludGVnZXIoZ2FsbGVyeUlkKSB8fCBnYWxsZXJ5SWQgPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1lvdSBtdXN0IHByb3ZpZGUgYSB2YWxpZCBbaWRdPVwidW5pcXVlIGludGVnZXIgPiAwIGhlcmVcIiB0byB0aGUgZ2FsbGVyeS9jYXJvdXNlbCBpbiB5b3VyIHRlbXBsYXRlJyk7XG4gICAgfVxuICAgIGlmICh0aGlzLmlkcy5nZXQoZ2FsbGVyeUlkKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgY3JlYXRlIGdhbGxlcnkgd2l0aCBpZD0ke2dhbGxlcnlJZH0gYmVjYXVzZSBhbHJlYWR5IHVzZWQgaW4geW91ciBhcHBsaWNhdGlvbi4gVGhpcyBtdXN0IGJlIGEgdW5pcXVlIGludGVnZXIgPj0gMGApO1xuICAgIH1cbiAgICB0aGlzLmlkcy5zZXQoZ2FsbGVyeUlkLCBnYWxsZXJ5SWQpO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB0byByZW1vdmUgYSByZXNlcnZlZCBpZC4gSW4gdGhpcyB3YXkgeW91IGFyZSBhYmxlIHRvIHVzZSB0aGUgaWQgYWdhaW4gZm9yIGFub3RoZXIgaW5zdGFuY2Ugb2YgdGhlIGxpYnJhcnkuXG4gICAqIEBwYXJhbSBnYWxsZXJ5SWQgbnVtYmVyIG9yIHVuZGVmaW5lZCB0aGF0IHJlcHJlc2VudHMgdGhlIHVuaXF1ZSBpZCBvZiB0aGUgZ2FsbGVyeS5cbiAgICogQHJldHVybiBib29sZWFuIHRydWUgaWYgc3VjY2Vzcy4gZmFsc2UgaXMgbmV2ZXIgcmV0dXJuZWQsIGluc3RlYWQgYW4gZXhjZXB0aW9uIGlzIHRocm93bipcbiAgICogQHRocm93cyBhIGVycm9yIHdpdGggYSBtZXNzYWdlIGlmIGdhbGxlcnlJZCBpcyBuZWl0aGVyIGludGVnZXIgb3IgPCAwXG4gICAqICogdGhpcyBzaG91bGQgYmUgaW1wcm92ZWQgd2l0aG91dCByZXR1cm4gdHJ1ZSwgYmVjYXVzZSBpdCBkb2Vzbid0IG1ha2Ugc2Vuc2UhIDooXG4gICAqL1xuICByZW1vdmUoZ2FsbGVyeUlkOiBudW1iZXIgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcbiAgICBpZiAoZ2FsbGVyeUlkID09PSB1bmRlZmluZWQgfHwgIU51bWJlci5pc0ludGVnZXIoZ2FsbGVyeUlkKSB8fCBnYWxsZXJ5SWQgPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1lvdSBtdXN0IHByb3ZpZGUgYSB2YWxpZCBbaWRdPVwidW5pcXVlIGludGVnZXIgPiAwIGhlcmVcIiB0byB0aGUgZ2FsbGVyeS9jYXJvdXNlbCBpbiB5b3VyIHRlbXBsYXRlJyk7XG4gICAgfVxuICAgIHRoaXMuaWRzLmRlbGV0ZShnYWxsZXJ5SWQpO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG4iXX0=