@sbb-esta/lyne-elements 3.3.2 → 3.5.0

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 (108) hide show
  1. package/core/i18n/i18n.d.ts +5 -0
  2. package/core/i18n/i18n.d.ts.map +1 -1
  3. package/core/i18n/i18n.js +108 -84
  4. package/core/i18n.js +84 -80
  5. package/core/mixins/element-internals-mixin.js +6 -6
  6. package/core/mixins/form-associated-input-mixin.d.ts +1 -0
  7. package/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
  8. package/core/mixins/form-associated-input-mixin.js +2 -2
  9. package/core/styles/core/mediaqueries.scss +1 -1
  10. package/core/styles/core.scss +34 -1
  11. package/core/styles/mixins/typo.scss +88 -41
  12. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +530 -0
  13. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +1123 -0
  14. package/core.css +30 -0
  15. package/custom-elements.json +863 -147
  16. package/date-input/date-input.component.d.ts +5 -4
  17. package/date-input/date-input.component.d.ts.map +1 -1
  18. package/date-input/date-input.component.js +19 -21
  19. package/development/core/i18n/i18n.d.ts +5 -0
  20. package/development/core/i18n/i18n.d.ts.map +1 -1
  21. package/development/core/i18n/i18n.js +38 -10
  22. package/development/core/i18n.js +5 -1
  23. package/development/core/mixins/element-internals-mixin.js +3 -3
  24. package/development/core/mixins/form-associated-input-mixin.d.ts +1 -0
  25. package/development/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
  26. package/development/core/mixins/form-associated-input-mixin.js +3 -2
  27. package/development/date-input/date-input.component.d.ts +5 -4
  28. package/development/date-input/date-input.component.d.ts.map +1 -1
  29. package/development/date-input/date-input.component.js +5 -8
  30. package/development/dialog/dialog/dialog.component.d.ts +2 -0
  31. package/development/dialog/dialog/dialog.component.d.ts.map +1 -1
  32. package/development/dialog/dialog/dialog.component.js +6 -2
  33. package/development/dialog/dialog-title/dialog-title.component.js +2 -6
  34. package/development/file-selector/common/file-selector-common.d.ts +2 -1
  35. package/development/file-selector/common/file-selector-common.d.ts.map +1 -1
  36. package/development/file-selector/common/file-selector-common.js +64 -19
  37. package/development/file-selector/common.js +1 -1
  38. package/development/file-selector/file-selector/file-selector.component.d.ts.map +1 -1
  39. package/development/file-selector/file-selector/file-selector.component.js +12 -17
  40. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts +0 -7
  41. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts.map +1 -1
  42. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +32 -76
  43. package/development/{file-selector-common-csww18o8.js → file-selector-common-BxXdRZxt.js} +3 -3
  44. package/development/file-selector.js +1 -1
  45. package/development/form-field/form-field/form-field.component.d.ts.map +1 -1
  46. package/development/form-field/form-field/form-field.component.js +4 -4
  47. package/development/navigation/common/navigation-action-common.js +5 -8
  48. package/development/navigation/navigation/navigation.component.js +21 -4
  49. package/development/navigation/navigation-marker/navigation-marker.component.js +5 -8
  50. package/development/navigation/navigation-section/navigation-section.component.js +6 -19
  51. package/development/paginator/common/paginator-common.d.ts +3 -0
  52. package/development/paginator/common/paginator-common.d.ts.map +1 -1
  53. package/development/paginator/common/paginator-common.js +68 -10
  54. package/development/paginator/compact-paginator/compact-paginator.component.d.ts.map +1 -1
  55. package/development/paginator/compact-paginator/compact-paginator.component.js +8 -3
  56. package/development/paginator/paginator/paginator.component.d.ts +5 -0
  57. package/development/paginator/paginator/paginator.component.d.ts.map +1 -1
  58. package/development/paginator/paginator/paginator.component.js +28 -6
  59. package/development/sidebar/sidebar-title/sidebar-title.component.js +1 -1
  60. package/development/tabs/tab-group/tab-group.component.js +3 -4
  61. package/development/time-input/time-input.component.d.ts +5 -4
  62. package/development/time-input/time-input.component.d.ts.map +1 -1
  63. package/development/time-input/time-input.component.js +5 -8
  64. package/development/title/title-base.js +14 -67
  65. package/development/title/title.component.js +17 -14
  66. package/development/toast/toast.component.js +6 -9
  67. package/development/train/train-wagon/train-wagon.component.js +6 -9
  68. package/dialog/dialog/dialog.component.d.ts +2 -0
  69. package/dialog/dialog/dialog.component.d.ts.map +1 -1
  70. package/dialog/dialog/dialog.component.js +14 -10
  71. package/dialog/dialog-title/dialog-title.component.js +1 -1
  72. package/file-selector/common/file-selector-common.d.ts +2 -1
  73. package/file-selector/common/file-selector-common.d.ts.map +1 -1
  74. package/file-selector/common/file-selector-common.js +88 -63
  75. package/file-selector/common.js +1 -1
  76. package/file-selector/file-selector/file-selector.component.d.ts.map +1 -1
  77. package/file-selector/file-selector/file-selector.component.js +26 -31
  78. package/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts +0 -7
  79. package/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts.map +1 -1
  80. package/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +50 -74
  81. package/file-selector-common-Cn6U8goV.js +5 -0
  82. package/file-selector.js +1 -1
  83. package/form-field/form-field/form-field.component.d.ts.map +1 -1
  84. package/form-field/form-field/form-field.component.js +3 -3
  85. package/navigation/common/navigation-action-common.js +8 -8
  86. package/navigation/navigation/navigation.component.js +1 -1
  87. package/navigation/navigation-marker/navigation-marker.component.js +1 -1
  88. package/navigation/navigation-section/navigation-section.component.js +14 -14
  89. package/package.json +1 -1
  90. package/paginator/common/paginator-common.d.ts +3 -0
  91. package/paginator/common/paginator-common.d.ts.map +1 -1
  92. package/paginator/common/paginator-common.js +103 -63
  93. package/paginator/compact-paginator/compact-paginator.component.d.ts.map +1 -1
  94. package/paginator/compact-paginator/compact-paginator.component.js +13 -8
  95. package/paginator/paginator/paginator.component.d.ts +5 -0
  96. package/paginator/paginator/paginator.component.d.ts.map +1 -1
  97. package/paginator/paginator/paginator.component.js +77 -61
  98. package/sidebar/sidebar-title/sidebar-title.component.js +14 -14
  99. package/standard-theme.css +30 -0
  100. package/tabs/tab-group/tab-group.component.js +7 -7
  101. package/time-input/time-input.component.d.ts +5 -4
  102. package/time-input/time-input.component.d.ts.map +1 -1
  103. package/time-input/time-input.component.js +21 -22
  104. package/title/title-base.js +33 -33
  105. package/title/title.component.js +9 -9
  106. package/toast/toast.component.js +1 -1
  107. package/train/train-wagon/train-wagon.component.js +6 -6
  108. package/file-selector-common-Dw5d8vA4.js +0 -5
@@ -320,6 +320,10 @@ let SbbDialogElement = (() => {
320
320
  this.id ||= `sbb-dialog-${nextId++}`;
321
321
  super.connectedCallback();
322
322
  }
323
+ /** Announce the accessibility label or dialog title for screen readers. */
324
+ announceTitle() {
325
+ this.setAriaLiveRefContent(this.accessibilityLabel || this.querySelector("sbb-dialog-title")?.innerText.trim());
326
+ }
323
327
  isZeroAnimationDuration() {
324
328
  return isZeroAnimationDuration(this, "--sbb-dialog-animation-duration");
325
329
  }
@@ -352,7 +356,7 @@ let SbbDialogElement = (() => {
352
356
  this.escapableOverlayController.connect();
353
357
  this.attachOpenOverlayEvents();
354
358
  this.focusTrapController.focusInitialElement();
355
- setTimeout(() => this.setAriaLiveRefContent(this.accessibilityLabel || this.querySelector("sbb-dialog-title")?.innerText.trim()));
359
+ setTimeout(() => this.announceTitle());
356
360
  this.focusTrapController.enabled = true;
357
361
  if (this._dialogContentElement) {
358
362
  this._dialogContentResizeObserver.observe(this._dialogContentElement);
@@ -436,4 +440,4 @@ let SbbDialogElement = (() => {
436
440
  export {
437
441
  SbbDialogElement
438
442
  };
439
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2RpYWxvZy9kaWFsb2cvZGlhbG9nLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZXNpemVDb250cm9sbGVyIH0gZnJvbSAnQGxpdC1sYWJzL29ic2VydmVycy9yZXNpemUtY29udHJvbGxlci5qcyc7XG5pbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBQcm9wZXJ0eVZhbHVlcywgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgZXZlbnRPcHRpb25zLCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IHJlZiB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3JlZi5qcyc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0L3N0YXRpYy1odG1sLmpzJztcblxuaW1wb3J0IHsgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24gfSBmcm9tICcuLi8uLi9jb3JlL2RvbS5qcyc7XG5pbXBvcnQgeyBvdmVybGF5UmVmcywgU2JiT3ZlcmxheUJhc2VFbGVtZW50IH0gZnJvbSAnLi4vLi4vb3ZlcmxheS5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2RpYWxvZy5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uLy4uL3NjcmVlbi1yZWFkZXItb25seS5qcyc7XG5cbmxldCBuZXh0SWQgPSAwO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGFuIGludGVyYWN0aXZlIG92ZXJsYXkgZWxlbWVudC5cbiAqXG4gKiBAc2xvdCBhY3Rpb25zIC0gVGhpcyBzbG90IGlzIHVzZWQgZm9yIHRoZSBhY3Rpb25zLCB0aGUgc2xvdCBpcyBhdXRvbWF0aWNhbGx5IGFzc2lnbmVkIHRvIHRoZSBgc2JiLWRpYWxvZy1hY3Rpb25zYCBlbGVtZW50LlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBwcm92aWRlIGEgYHNiYi1kaWFsb2ctdGl0bGVgLCBgc2JiLWRpYWxvZy1jb250ZW50YCBhbmQgYW4gb3B0aW9uYWwgYHNiYi1kaWFsb2ctYWN0aW9uc2AuXG4gKiBAY3NzcHJvcCBbLS1zYmItZGlhbG9nLXotaW5kZXg9dmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KV0gLSBUbyBzcGVjaWZ5IGEgY3VzdG9tIHN0YWNrIG9yZGVyLFxuICogdGhlIGB6LWluZGV4YCBjYW4gYmUgb3ZlcnJpZGRlbiBieSBkZWZpbmluZyB0aGlzIENTUyB2YXJpYWJsZS4gVGhlIGRlZmF1bHQgYHotaW5kZXhgIG9mIHRoZVxuICogY29tcG9uZW50IGlzIHNldCB0byBgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KWAgd2l0aCBhIHZhbHVlIG9mIGAxMDAwYC5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLWRpYWxvZycpXG5jbGFzcyBTYmJEaWFsb2dFbGVtZW50IGV4dGVuZHMgU2JiT3ZlcmxheUJhc2VFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqIEJhY2tkcm9wIGNsaWNrIGFjdGlvbi4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYmFja2Ryb3AtYWN0aW9uJyB9KSBwdWJsaWMgYWNjZXNzb3IgYmFja2Ryb3BBY3Rpb246ICdjbG9zZScgfCAnbm9uZScgPVxuICAgICdjbG9zZSc7XG5cbiAgLyoqIEJhY2tkcm9wIGRlbnNpdHkuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2JhY2tkcm9wJywgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3IgYmFja2Ryb3A6XG4gICAgfCAnb3BhcXVlJ1xuICAgIHwgJ3RyYW5zbHVjZW50JyA9ICdvcGFxdWUnO1xuXG4gIC8vIFdlIHVzZSBhIHRpbWVvdXQgYXMgYSB3b3JrYXJvdW5kIHRvIHRoZSBcIlJlc2l6ZU9ic2VydmVyIGxvb3AgY29tcGxldGVkIHdpdGggdW5kZWxpdmVyZWQgbm90aWZpY2F0aW9uc1wiIGVycm9yLlxuICAvLyBGb3IgbW9yZSBkZXRhaWxzOlxuICAvLyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9XSUNHL3Jlc2l6ZS1vYnNlcnZlci9pc3N1ZXMvMzgjaXNzdWVjb21tZW50LTQyMjEyNjAwNlxuICAvLyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9qdWdnbGUvcmVzaXplLW9ic2VydmVyL2lzc3Vlcy8xMDMjaXNzdWVjb21tZW50LTE3MTExNDgyODVcbiAgcHJpdmF0ZSBfZGlhbG9nQ29udGVudFJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZUNvbnRyb2xsZXIodGhpcywge1xuICAgIHRhcmdldDogbnVsbCxcbiAgICBza2lwSW5pdGlhbDogdHJ1ZSxcbiAgICBjYWxsYmFjazogKCkgPT4gc2V0VGltZW91dCgoKSA9PiB0aGlzLl91cGRhdGVPdmVyZmxvd1N0YXRlKCkpLFxuICB9KTtcblxuICBwcml2YXRlIF9kaWFsb2dDb250ZW50RWxlbWVudD86IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF9kaWFsb2dFbGVtZW50PzogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX2lzUG9pbnRlckRvd25FdmVudE9uRGlhbG9nOiBib29sZWFuID0gZmFsc2U7XG4gIHByb3RlY3RlZCBjbG9zZUF0dHJpYnV0ZTogc3RyaW5nID0gJ3NiYi1kaWFsb2ctY2xvc2UnO1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgY2xvc2VUYWc6IHN0cmluZyA9ICdzYmItZGlhbG9nLWNsb3NlLWJ1dHRvbic7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgLy8gQ2xvc2UgZGlhbG9nIG9uIGJhY2tkcm9wIGNsaWNrXG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ3BvaW50ZXJkb3duJywgdGhpcy5fcG9pbnRlckRvd25MaXN0ZW5lcik7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ3BvaW50ZXJ1cCcsIHRoaXMuX2Nsb3NlT25CYWNrZHJvcENsaWNrKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLmlkIHx8PSBgc2JiLWRpYWxvZy0ke25leHRJZCsrfWA7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpc1plcm9BbmltYXRpb25EdXJhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24odGhpcywgJy0tc2JiLWRpYWxvZy1hbmltYXRpb24tZHVyYXRpb24nKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVDbG9zaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuX2RpYWxvZ0NvbnRlbnRFbGVtZW50Py5zY3JvbGxUbygwLCAwKTtcbiAgICB0aGlzLnN0YXRlID0gJ2Nsb3NlZCc7XG4gICAgdGhpcy5oaWRlUG9wb3Zlcj8uKCk7XG5cbiAgICB0aGlzLmluZXJ0Q29udHJvbGxlci5kZWFjdGl2YXRlKCk7XG4gICAgaWYgKCF0aGlzLnNraXBGb2N1c1Jlc3RvcmF0aW9uKSB7XG4gICAgICAvLyBNYW51YWxseSBmb2N1cyBsYXN0IGZvY3VzZWQgZWxlbWVudFxuICAgICAgdGhpcy5sYXN0Rm9jdXNlZEVsZW1lbnQ/LmZvY3VzKCk7XG4gICAgfVxuICAgIHRoaXMub3Blbk92ZXJsYXlDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuZm9jdXNUcmFwQ29udHJvbGxlci5lbmFibGVkID0gZmFsc2U7XG4gICAgaWYgKHRoaXMuX2RpYWxvZ0NvbnRlbnRFbGVtZW50KSB7XG4gICAgICB0aGlzLl9kaWFsb2dDb250ZW50UmVzaXplT2JzZXJ2ZXIudW5vYnNlcnZlKHRoaXMuX2RpYWxvZ0NvbnRlbnRFbGVtZW50KTtcbiAgICB9XG4gICAgdGhpcy5yZW1vdmVJbnN0YW5jZUZyb21HbG9iYWxDb2xsZWN0aW9uKCk7XG4gICAgLy8gRW5hYmxlIHNjcm9sbGluZyBmb3IgY29udGVudCBiZWxvdyB0aGUgZGlhbG9nIGlmIG5vIGRpYWxvZyBpcyBvcGVuXG4gICAgaWYgKCFvdmVybGF5UmVmcy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuc2Nyb2xsSGFuZGxlci5lbmFibGVTY3JvbGwoKTtcbiAgICB9XG4gICAgdGhpcy5lc2NhcGFibGVPdmVybGF5Q29udHJvbGxlci5kaXNjb25uZWN0KCk7XG4gICAgdGhpcy5kaXNwYXRjaENsb3NlRXZlbnQoe1xuICAgICAgcmV0dXJuVmFsdWU6IHRoaXMucmV0dXJuVmFsdWUsXG4gICAgICBjbG9zZVRhcmdldDogdGhpcy5vdmVybGF5Q2xvc2VFbGVtZW50LFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZU9wZW5pbmcoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuaW5lcnRDb250cm9sbGVyLmFjdGl2YXRlKCk7XG4gICAgdGhpcy5lc2NhcGFibGVPdmVybGF5Q29udHJvbGxlci5jb25uZWN0KCk7XG4gICAgdGhpcy5hdHRhY2hPcGVuT3ZlcmxheUV2ZW50cygpO1xuICAgIHRoaXMuZm9jdXNUcmFwQ29udHJvbGxlci5mb2N1c0luaXRpYWxFbGVtZW50KCk7XG4gICAgLy8gVXNlIHRpbWVvdXQgdG8gcmVhZCBsYWJlbCBhZnRlciBmb2N1c2VkIGVsZW1lbnRcbiAgICBzZXRUaW1lb3V0KCgpID0+XG4gICAgICB0aGlzLnNldEFyaWFMaXZlUmVmQ29udGVudChcbiAgICAgICAgdGhpcy5hY2Nlc3NpYmlsaXR5TGFiZWwgfHwgdGhpcy5xdWVyeVNlbGVjdG9yKCdzYmItZGlhbG9nLXRpdGxlJyk/LmlubmVyVGV4dC50cmltKCksXG4gICAgICApLFxuICAgICk7XG4gICAgdGhpcy5mb2N1c1RyYXBDb250cm9sbGVyLmVuYWJsZWQgPSB0cnVlO1xuICAgIGlmICh0aGlzLl9kaWFsb2dDb250ZW50RWxlbWVudCkge1xuICAgICAgdGhpcy5fZGlhbG9nQ29udGVudFJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5fZGlhbG9nQ29udGVudEVsZW1lbnQpO1xuICAgIH1cbiAgICB0aGlzLmRpc3BhdGNoT3BlbkV2ZW50KCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICB0aGlzLl9zeW5jVGl0bGVOZWdhdGl2ZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCduZWdhdGl2ZScpKSB7XG4gICAgICB0aGlzLl9zeW5jVGl0bGVOZWdhdGl2ZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3N5bmNUaXRsZU5lZ2F0aXZlKCk6IHZvaWQge1xuICAgIGNvbnN0IGRpYWxvZ1RpdGxlID0gdGhpcy5xdWVyeVNlbGVjdG9yPy4oJ3NiYi1kaWFsb2ctdGl0bGUnKTtcbiAgICBjb25zdCBjbG9zZUJ1dHRvbiA9IHRoaXMucXVlcnlTZWxlY3Rvcj8uKCdzYmItZGlhbG9nLWNsb3NlLWJ1dHRvbicpO1xuXG4gICAgaWYgKGRpYWxvZ1RpdGxlKSB7XG4gICAgICBkaWFsb2dUaXRsZS5uZWdhdGl2ZSA9IHRoaXMubmVnYXRpdmU7XG4gICAgfVxuXG4gICAgaWYgKGNsb3NlQnV0dG9uKSB7XG4gICAgICBjbG9zZUJ1dHRvbi5uZWdhdGl2ZSA9IHRoaXMubmVnYXRpdmU7XG4gICAgfVxuICB9XG5cbiAgLyoqIENoZWNrIGlmIHRoZSBwb2ludGVyZG93biBldmVudCB0YXJnZXQgaXMgdHJpZ2dlcmVkIG9uIHRoZSBkaWFsb2cuICovXG4gIHByaXZhdGUgX3BvaW50ZXJEb3duTGlzdGVuZXIgPSAoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgIGlmICh0aGlzLmJhY2tkcm9wQWN0aW9uICE9PSAnY2xvc2UnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5faXNQb2ludGVyRG93bkV2ZW50T25EaWFsb2cgPVxuICAgICAgISF0aGlzLl9kaWFsb2dFbGVtZW50ICYmIGV2ZW50LmNvbXBvc2VkUGF0aCgpLmluY2x1ZGVzKHRoaXMuX2RpYWxvZ0VsZW1lbnQpO1xuICB9O1xuXG4gIC8qKiBDbG9zZSBkaWFsb2cgb24gYmFja2Ryb3AgY2xpY2suICovXG4gIHByaXZhdGUgX2Nsb3NlT25CYWNrZHJvcENsaWNrID0gKGV2ZW50OiBQb2ludGVyRXZlbnQpOiB2b2lkID0+IHtcbiAgICBpZiAoXG4gICAgICB0aGlzLmJhY2tkcm9wQWN0aW9uID09PSAnY2xvc2UnICYmXG4gICAgICAhdGhpcy5faXNQb2ludGVyRG93bkV2ZW50T25EaWFsb2cgJiZcbiAgICAgIHRoaXMuX2RpYWxvZ0VsZW1lbnQgJiZcbiAgICAgICFldmVudC5jb21wb3NlZFBhdGgoKS5pbmNsdWRlcyh0aGlzLl9kaWFsb2dFbGVtZW50KVxuICAgICkge1xuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIF91cGRhdGVPdmVyZmxvd1N0YXRlKCk6IHZvaWQge1xuICAgIHRoaXMudG9nZ2xlU3RhdGUoXG4gICAgICAnb3ZlcmZsb3dzJyxcbiAgICAgICh0aGlzLl9kaWFsb2dDb250ZW50RWxlbWVudD8uc2Nyb2xsVG9wID8/IDApICtcbiAgICAgICAgKHRoaXMuX2RpYWxvZ0NvbnRlbnRFbGVtZW50Py5vZmZzZXRIZWlnaHQgPz8gMCkgPFxuICAgICAgICAodGhpcy5fZGlhbG9nQ29udGVudEVsZW1lbnQ/LnNjcm9sbEhlaWdodCA/PyAwKSxcbiAgICApO1xuICB9XG5cbiAgQGV2ZW50T3B0aW9ucyh7IHBhc3NpdmU6IHRydWUgfSlcbiAgcHJpdmF0ZSBfZGV0ZWN0U2Nyb2xsZWRTdGF0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnRvZ2dsZVN0YXRlKCdzY3JvbGxlZCcsICh0aGlzLl9kaWFsb2dDb250ZW50RWxlbWVudD8uc2Nyb2xsVG9wID8/IDApID4gMCk7XG4gICAgdGhpcy5fdXBkYXRlT3ZlcmZsb3dTdGF0ZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLWRpYWxvZ19fY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBAYW5pbWF0aW9uZW5kPSR7dGhpcy5vbk92ZXJsYXlBbmltYXRpb25FbmR9XG4gICAgICAgICAgY2xhc3M9XCJzYmItZGlhbG9nXCJcbiAgICAgICAgICAke3JlZigoZWw/OiBFbGVtZW50KSA9PiAodGhpcy5fZGlhbG9nRWxlbWVudCA9IGVsIGFzIEhUTUxEaXZFbGVtZW50KSl9XG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBAY2xpY2s9JHsoZXZlbnQ6IEV2ZW50KSA9PiB0aGlzLmNsb3NlT25TYmJPdmVybGF5Q2xvc2VDbGljayhldmVudCl9XG4gICAgICAgICAgICBjbGFzcz1cInNiYi1kaWFsb2dfX3dyYXBwZXJcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItZGlhbG9nLXRpdGxlLXNlY3Rpb25cIj5cbiAgICAgICAgICAgICAgPHNsb3QgbmFtZT1cInRpdGxlLXNlY3Rpb25cIiBAc2xvdGNoYW5nZT0keygpID0+IHRoaXMuX3N5bmNUaXRsZU5lZ2F0aXZlKCl9Pjwvc2xvdD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cInNiYi1kaWFsb2ctY29udGVudC1jb250YWluZXJcIlxuICAgICAgICAgICAgICBAc2Nyb2xsPSR7KCkgPT4gdGhpcy5fZGV0ZWN0U2Nyb2xsZWRTdGF0ZSgpfVxuICAgICAgICAgICAgICAke3JlZigoZWw/OiBFbGVtZW50KSA9PiAodGhpcy5fZGlhbG9nQ29udGVudEVsZW1lbnQgPSBlbCBhcyBIVE1MRGl2RWxlbWVudCkpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxzbG90IG5hbWU9XCJhY3Rpb25zXCI+PC9zbG90PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPHNiYi1zY3JlZW4tcmVhZGVyLW9ubHkgYXJpYS1saXZlPVwicG9saXRlXCI+PC9zYmItc2NyZWVuLXJlYWRlci1vbmx5PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1kaWFsb2cnOiBTYmJEaWFsb2dFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWFBLElBQUksU0FBUztJQWFQLG9C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
443
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2RpYWxvZy9kaWFsb2cvZGlhbG9nLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZXNpemVDb250cm9sbGVyIH0gZnJvbSAnQGxpdC1sYWJzL29ic2VydmVycy9yZXNpemUtY29udHJvbGxlci5qcyc7XG5pbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBQcm9wZXJ0eVZhbHVlcywgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgZXZlbnRPcHRpb25zLCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IHJlZiB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3JlZi5qcyc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0L3N0YXRpYy1odG1sLmpzJztcblxuaW1wb3J0IHsgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24gfSBmcm9tICcuLi8uLi9jb3JlL2RvbS5qcyc7XG5pbXBvcnQgeyBvdmVybGF5UmVmcywgU2JiT3ZlcmxheUJhc2VFbGVtZW50IH0gZnJvbSAnLi4vLi4vb3ZlcmxheS5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2RpYWxvZy5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uLy4uL3NjcmVlbi1yZWFkZXItb25seS5qcyc7XG5cbmxldCBuZXh0SWQgPSAwO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGFuIGludGVyYWN0aXZlIG92ZXJsYXkgZWxlbWVudC5cbiAqXG4gKiBAc2xvdCBhY3Rpb25zIC0gVGhpcyBzbG90IGlzIHVzZWQgZm9yIHRoZSBhY3Rpb25zLCB0aGUgc2xvdCBpcyBhdXRvbWF0aWNhbGx5IGFzc2lnbmVkIHRvIHRoZSBgc2JiLWRpYWxvZy1hY3Rpb25zYCBlbGVtZW50LlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBwcm92aWRlIGEgYHNiYi1kaWFsb2ctdGl0bGVgLCBgc2JiLWRpYWxvZy1jb250ZW50YCBhbmQgYW4gb3B0aW9uYWwgYHNiYi1kaWFsb2ctYWN0aW9uc2AuXG4gKiBAY3NzcHJvcCBbLS1zYmItZGlhbG9nLXotaW5kZXg9dmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KV0gLSBUbyBzcGVjaWZ5IGEgY3VzdG9tIHN0YWNrIG9yZGVyLFxuICogdGhlIGB6LWluZGV4YCBjYW4gYmUgb3ZlcnJpZGRlbiBieSBkZWZpbmluZyB0aGlzIENTUyB2YXJpYWJsZS4gVGhlIGRlZmF1bHQgYHotaW5kZXhgIG9mIHRoZVxuICogY29tcG9uZW50IGlzIHNldCB0byBgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KWAgd2l0aCBhIHZhbHVlIG9mIGAxMDAwYC5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLWRpYWxvZycpXG5jbGFzcyBTYmJEaWFsb2dFbGVtZW50IGV4dGVuZHMgU2JiT3ZlcmxheUJhc2VFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqIEJhY2tkcm9wIGNsaWNrIGFjdGlvbi4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYmFja2Ryb3AtYWN0aW9uJyB9KSBwdWJsaWMgYWNjZXNzb3IgYmFja2Ryb3BBY3Rpb246ICdjbG9zZScgfCAnbm9uZScgPVxuICAgICdjbG9zZSc7XG5cbiAgLyoqIEJhY2tkcm9wIGRlbnNpdHkuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2JhY2tkcm9wJywgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3IgYmFja2Ryb3A6XG4gICAgfCAnb3BhcXVlJ1xuICAgIHwgJ3RyYW5zbHVjZW50JyA9ICdvcGFxdWUnO1xuXG4gIC8vIFdlIHVzZSBhIHRpbWVvdXQgYXMgYSB3b3JrYXJvdW5kIHRvIHRoZSBcIlJlc2l6ZU9ic2VydmVyIGxvb3AgY29tcGxldGVkIHdpdGggdW5kZWxpdmVyZWQgbm90aWZpY2F0aW9uc1wiIGVycm9yLlxuICAvLyBGb3IgbW9yZSBkZXRhaWxzOlxuICAvLyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9XSUNHL3Jlc2l6ZS1vYnNlcnZlci9pc3N1ZXMvMzgjaXNzdWVjb21tZW50LTQyMjEyNjAwNlxuICAvLyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9qdWdnbGUvcmVzaXplLW9ic2VydmVyL2lzc3Vlcy8xMDMjaXNzdWVjb21tZW50LTE3MTExNDgyODVcbiAgcHJpdmF0ZSBfZGlhbG9nQ29udGVudFJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZUNvbnRyb2xsZXIodGhpcywge1xuICAgIHRhcmdldDogbnVsbCxcbiAgICBza2lwSW5pdGlhbDogdHJ1ZSxcbiAgICBjYWxsYmFjazogKCkgPT4gc2V0VGltZW91dCgoKSA9PiB0aGlzLl91cGRhdGVPdmVyZmxvd1N0YXRlKCkpLFxuICB9KTtcblxuICBwcml2YXRlIF9kaWFsb2dDb250ZW50RWxlbWVudD86IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF9kaWFsb2dFbGVtZW50PzogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX2lzUG9pbnRlckRvd25FdmVudE9uRGlhbG9nOiBib29sZWFuID0gZmFsc2U7XG4gIHByb3RlY3RlZCBjbG9zZUF0dHJpYnV0ZTogc3RyaW5nID0gJ3NiYi1kaWFsb2ctY2xvc2UnO1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgY2xvc2VUYWc6IHN0cmluZyA9ICdzYmItZGlhbG9nLWNsb3NlLWJ1dHRvbic7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgLy8gQ2xvc2UgZGlhbG9nIG9uIGJhY2tkcm9wIGNsaWNrXG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ3BvaW50ZXJkb3duJywgdGhpcy5fcG9pbnRlckRvd25MaXN0ZW5lcik7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ3BvaW50ZXJ1cCcsIHRoaXMuX2Nsb3NlT25CYWNrZHJvcENsaWNrKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLmlkIHx8PSBgc2JiLWRpYWxvZy0ke25leHRJZCsrfWA7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgfVxuXG4gIC8qKiBBbm5vdW5jZSB0aGUgYWNjZXNzaWJpbGl0eSBsYWJlbCBvciBkaWFsb2cgdGl0bGUgZm9yIHNjcmVlbiByZWFkZXJzLiAqL1xuICBwdWJsaWMgYW5ub3VuY2VUaXRsZSgpOiB2b2lkIHtcbiAgICB0aGlzLnNldEFyaWFMaXZlUmVmQ29udGVudChcbiAgICAgIHRoaXMuYWNjZXNzaWJpbGl0eUxhYmVsIHx8IHRoaXMucXVlcnlTZWxlY3Rvcignc2JiLWRpYWxvZy10aXRsZScpPy5pbm5lclRleHQudHJpbSgpLFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKHRoaXMsICctLXNiYi1kaWFsb2ctYW5pbWF0aW9uLWR1cmF0aW9uJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlQ2xvc2luZygpOiB2b2lkIHtcbiAgICB0aGlzLl9kaWFsb2dDb250ZW50RWxlbWVudD8uc2Nyb2xsVG8oMCwgMCk7XG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zZWQnO1xuICAgIHRoaXMuaGlkZVBvcG92ZXI/LigpO1xuXG4gICAgdGhpcy5pbmVydENvbnRyb2xsZXIuZGVhY3RpdmF0ZSgpO1xuICAgIGlmICghdGhpcy5za2lwRm9jdXNSZXN0b3JhdGlvbikge1xuICAgICAgLy8gTWFudWFsbHkgZm9jdXMgbGFzdCBmb2N1c2VkIGVsZW1lbnRcbiAgICAgIHRoaXMubGFzdEZvY3VzZWRFbGVtZW50Py5mb2N1cygpO1xuICAgIH1cbiAgICB0aGlzLm9wZW5PdmVybGF5Q29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLmZvY3VzVHJhcENvbnRyb2xsZXIuZW5hYmxlZCA9IGZhbHNlO1xuICAgIGlmICh0aGlzLl9kaWFsb2dDb250ZW50RWxlbWVudCkge1xuICAgICAgdGhpcy5fZGlhbG9nQ29udGVudFJlc2l6ZU9ic2VydmVyLnVub2JzZXJ2ZSh0aGlzLl9kaWFsb2dDb250ZW50RWxlbWVudCk7XG4gICAgfVxuICAgIHRoaXMucmVtb3ZlSW5zdGFuY2VGcm9tR2xvYmFsQ29sbGVjdGlvbigpO1xuICAgIC8vIEVuYWJsZSBzY3JvbGxpbmcgZm9yIGNvbnRlbnQgYmVsb3cgdGhlIGRpYWxvZyBpZiBubyBkaWFsb2cgaXMgb3BlblxuICAgIGlmICghb3ZlcmxheVJlZnMubGVuZ3RoKSB7XG4gICAgICB0aGlzLnNjcm9sbEhhbmRsZXIuZW5hYmxlU2Nyb2xsKCk7XG4gICAgfVxuICAgIHRoaXMuZXNjYXBhYmxlT3ZlcmxheUNvbnRyb2xsZXIuZGlzY29ubmVjdCgpO1xuICAgIHRoaXMuZGlzcGF0Y2hDbG9zZUV2ZW50KHtcbiAgICAgIHJldHVyblZhbHVlOiB0aGlzLnJldHVyblZhbHVlLFxuICAgICAgY2xvc2VUYXJnZXQ6IHRoaXMub3ZlcmxheUNsb3NlRWxlbWVudCxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVPcGVuaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmVkJztcbiAgICB0aGlzLmluZXJ0Q29udHJvbGxlci5hY3RpdmF0ZSgpO1xuICAgIHRoaXMuZXNjYXBhYmxlT3ZlcmxheUNvbnRyb2xsZXIuY29ubmVjdCgpO1xuICAgIHRoaXMuYXR0YWNoT3Blbk92ZXJsYXlFdmVudHMoKTtcbiAgICB0aGlzLmZvY3VzVHJhcENvbnRyb2xsZXIuZm9jdXNJbml0aWFsRWxlbWVudCgpO1xuICAgIC8vIFVzZSB0aW1lb3V0IHRvIHJlYWQgbGFiZWwgYWZ0ZXIgZm9jdXNlZCBlbGVtZW50XG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmFubm91bmNlVGl0bGUoKSk7XG4gICAgdGhpcy5mb2N1c1RyYXBDb250cm9sbGVyLmVuYWJsZWQgPSB0cnVlO1xuICAgIGlmICh0aGlzLl9kaWFsb2dDb250ZW50RWxlbWVudCkge1xuICAgICAgdGhpcy5fZGlhbG9nQ29udGVudFJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5fZGlhbG9nQ29udGVudEVsZW1lbnQpO1xuICAgIH1cbiAgICB0aGlzLmRpc3BhdGNoT3BlbkV2ZW50KCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICB0aGlzLl9zeW5jVGl0bGVOZWdhdGl2ZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCduZWdhdGl2ZScpKSB7XG4gICAgICB0aGlzLl9zeW5jVGl0bGVOZWdhdGl2ZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3N5bmNUaXRsZU5lZ2F0aXZlKCk6IHZvaWQge1xuICAgIGNvbnN0IGRpYWxvZ1RpdGxlID0gdGhpcy5xdWVyeVNlbGVjdG9yPy4oJ3NiYi1kaWFsb2ctdGl0bGUnKTtcbiAgICBjb25zdCBjbG9zZUJ1dHRvbiA9IHRoaXMucXVlcnlTZWxlY3Rvcj8uKCdzYmItZGlhbG9nLWNsb3NlLWJ1dHRvbicpO1xuXG4gICAgaWYgKGRpYWxvZ1RpdGxlKSB7XG4gICAgICBkaWFsb2dUaXRsZS5uZWdhdGl2ZSA9IHRoaXMubmVnYXRpdmU7XG4gICAgfVxuXG4gICAgaWYgKGNsb3NlQnV0dG9uKSB7XG4gICAgICBjbG9zZUJ1dHRvbi5uZWdhdGl2ZSA9IHRoaXMubmVnYXRpdmU7XG4gICAgfVxuICB9XG5cbiAgLyoqIENoZWNrIGlmIHRoZSBwb2ludGVyZG93biBldmVudCB0YXJnZXQgaXMgdHJpZ2dlcmVkIG9uIHRoZSBkaWFsb2cuICovXG4gIHByaXZhdGUgX3BvaW50ZXJEb3duTGlzdGVuZXIgPSAoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgIGlmICh0aGlzLmJhY2tkcm9wQWN0aW9uICE9PSAnY2xvc2UnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5faXNQb2ludGVyRG93bkV2ZW50T25EaWFsb2cgPVxuICAgICAgISF0aGlzLl9kaWFsb2dFbGVtZW50ICYmIGV2ZW50LmNvbXBvc2VkUGF0aCgpLmluY2x1ZGVzKHRoaXMuX2RpYWxvZ0VsZW1lbnQpO1xuICB9O1xuXG4gIC8qKiBDbG9zZSBkaWFsb2cgb24gYmFja2Ryb3AgY2xpY2suICovXG4gIHByaXZhdGUgX2Nsb3NlT25CYWNrZHJvcENsaWNrID0gKGV2ZW50OiBQb2ludGVyRXZlbnQpOiB2b2lkID0+IHtcbiAgICBpZiAoXG4gICAgICB0aGlzLmJhY2tkcm9wQWN0aW9uID09PSAnY2xvc2UnICYmXG4gICAgICAhdGhpcy5faXNQb2ludGVyRG93bkV2ZW50T25EaWFsb2cgJiZcbiAgICAgIHRoaXMuX2RpYWxvZ0VsZW1lbnQgJiZcbiAgICAgICFldmVudC5jb21wb3NlZFBhdGgoKS5pbmNsdWRlcyh0aGlzLl9kaWFsb2dFbGVtZW50KVxuICAgICkge1xuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIF91cGRhdGVPdmVyZmxvd1N0YXRlKCk6IHZvaWQge1xuICAgIHRoaXMudG9nZ2xlU3RhdGUoXG4gICAgICAnb3ZlcmZsb3dzJyxcbiAgICAgICh0aGlzLl9kaWFsb2dDb250ZW50RWxlbWVudD8uc2Nyb2xsVG9wID8/IDApICtcbiAgICAgICAgKHRoaXMuX2RpYWxvZ0NvbnRlbnRFbGVtZW50Py5vZmZzZXRIZWlnaHQgPz8gMCkgPFxuICAgICAgICAodGhpcy5fZGlhbG9nQ29udGVudEVsZW1lbnQ/LnNjcm9sbEhlaWdodCA/PyAwKSxcbiAgICApO1xuICB9XG5cbiAgQGV2ZW50T3B0aW9ucyh7IHBhc3NpdmU6IHRydWUgfSlcbiAgcHJpdmF0ZSBfZGV0ZWN0U2Nyb2xsZWRTdGF0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnRvZ2dsZVN0YXRlKCdzY3JvbGxlZCcsICh0aGlzLl9kaWFsb2dDb250ZW50RWxlbWVudD8uc2Nyb2xsVG9wID8/IDApID4gMCk7XG4gICAgdGhpcy5fdXBkYXRlT3ZlcmZsb3dTdGF0ZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLWRpYWxvZ19fY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBAYW5pbWF0aW9uZW5kPSR7dGhpcy5vbk92ZXJsYXlBbmltYXRpb25FbmR9XG4gICAgICAgICAgY2xhc3M9XCJzYmItZGlhbG9nXCJcbiAgICAgICAgICAke3JlZigoZWw/OiBFbGVtZW50KSA9PiAodGhpcy5fZGlhbG9nRWxlbWVudCA9IGVsIGFzIEhUTUxEaXZFbGVtZW50KSl9XG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBAY2xpY2s9JHsoZXZlbnQ6IEV2ZW50KSA9PiB0aGlzLmNsb3NlT25TYmJPdmVybGF5Q2xvc2VDbGljayhldmVudCl9XG4gICAgICAgICAgICBjbGFzcz1cInNiYi1kaWFsb2dfX3dyYXBwZXJcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItZGlhbG9nLXRpdGxlLXNlY3Rpb25cIj5cbiAgICAgICAgICAgICAgPHNsb3QgbmFtZT1cInRpdGxlLXNlY3Rpb25cIiBAc2xvdGNoYW5nZT0keygpID0+IHRoaXMuX3N5bmNUaXRsZU5lZ2F0aXZlKCl9Pjwvc2xvdD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cInNiYi1kaWFsb2ctY29udGVudC1jb250YWluZXJcIlxuICAgICAgICAgICAgICBAc2Nyb2xsPSR7KCkgPT4gdGhpcy5fZGV0ZWN0U2Nyb2xsZWRTdGF0ZSgpfVxuICAgICAgICAgICAgICAke3JlZigoZWw/OiBFbGVtZW50KSA9PiAodGhpcy5fZGlhbG9nQ29udGVudEVsZW1lbnQgPSBlbCBhcyBIVE1MRGl2RWxlbWVudCkpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxzbG90IG5hbWU9XCJhY3Rpb25zXCI+PC9zbG90PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPHNiYi1zY3JlZW4tcmVhZGVyLW9ubHkgYXJpYS1saXZlPVwicG9saXRlXCI+PC9zYmItc2NyZWVuLXJlYWRlci1vbmx5PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1kaWFsb2cnOiBTYmJEaWFsb2dFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
@@ -7,15 +7,11 @@ const style = css`:host {
7
7
  display: block;
8
8
  margin-block: var(--sbb-dialog-padding-block);
9
9
  margin-inline: var(--sbb-dialog-padding-inline);
10
+ hyphens: auto;
10
11
  }
11
12
 
12
13
  :host([negative]) {
13
14
  --sbb-title-text-color-normal: var(--sbb-color-milk);
14
- }
15
-
16
- .sbb-title {
17
- hyphens: auto;
18
- margin: 0;
19
15
  }`;
20
16
  let SbbDialogTitleElement = (() => {
21
17
  var _a;
@@ -45,4 +41,4 @@ let SbbDialogTitleElement = (() => {
45
41
  export {
46
42
  SbbDialogTitleElement
47
43
  };
48
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXRpdGxlLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2RpYWxvZy9kaWFsb2ctdGl0bGUvZGlhbG9nLXRpdGxlLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYk5lZ2F0aXZlTWl4aW4gfSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgeyBTYmJUaXRsZUJhc2UgfSBmcm9tICcuLi8uLi90aXRsZS5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2RpYWxvZy10aXRsZS5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgdGl0bGUgaW5zaWRlIGEgZGlhbG9nIGhlYWRlci5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IGZvciB0aGUgY29udGVudCBvZiB0aGUgZGlhbG9nLXRpdGxlLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItZGlhbG9nLXRpdGxlJylcbmNsYXNzIFNiYkRpYWxvZ1RpdGxlRWxlbWVudCBleHRlbmRzIFNiYk5lZ2F0aXZlTWl4aW4oU2JiVGl0bGVCYXNlKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtTYmJUaXRsZUJhc2Uuc3R5bGVzLCBzdHlsZV07XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5sZXZlbCA9ICcyJyBhcyB0aGlzWydsZXZlbCddO1xuICAgIHRoaXMudmlzdWFsTGV2ZWwgPSAnNCcgYXMgdGhpc1sndmlzdWFsTGV2ZWwnXTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuc2xvdCB8fD0gJ3RpdGxlLXNlY3Rpb24nO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItZGlhbG9nLXRpdGxlJzogU2JiRGlhbG9nVGl0bGVFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQWVNLHlCQUFxQixNQUFBOzswQkFEMUIsY0FBYyxrQkFBa0IsQ0FBQzs7OztvQkFDRSxpQkFBaUIsWUFBWTtBQUFyQyxFQUFBLG1CQUFRLFlBQThCO0FBQUEsSUFHaEUsY0FBQTtBQUNFLFlBQUE7QUFDQSxXQUFLLFFBQVE7QUFDYixXQUFLLGNBQWM7QUFBQSxJQUNyQjtBQUFBLElBRWdCLG9CQUFpQjtBQUMvQixZQUFNLGtCQUFBO0FBQ04sV0FBSyxTQUFTO0FBQUEsSUFDaEI7QUFBQTs7QUFaRixpQkFBQSxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O1FBQ3lCLEdBQUEsU0FBeUIsQ0FBQyxhQUFhLFFBQVEsS0FBSyxHQUR2RSxrQkFBQSxZQUFBLHVCQUFBLEdBQXNCOzs7In0=
44
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXRpdGxlLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2RpYWxvZy9kaWFsb2ctdGl0bGUvZGlhbG9nLXRpdGxlLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYk5lZ2F0aXZlTWl4aW4gfSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgeyBTYmJUaXRsZUJhc2UgfSBmcm9tICcuLi8uLi90aXRsZS5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2RpYWxvZy10aXRsZS5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgdGl0bGUgaW5zaWRlIGEgZGlhbG9nIGhlYWRlci5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IGZvciB0aGUgY29udGVudCBvZiB0aGUgZGlhbG9nLXRpdGxlLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItZGlhbG9nLXRpdGxlJylcbmNsYXNzIFNiYkRpYWxvZ1RpdGxlRWxlbWVudCBleHRlbmRzIFNiYk5lZ2F0aXZlTWl4aW4oU2JiVGl0bGVCYXNlKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtTYmJUaXRsZUJhc2Uuc3R5bGVzLCBzdHlsZV07XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5sZXZlbCA9ICcyJyBhcyB0aGlzWydsZXZlbCddO1xuICAgIHRoaXMudmlzdWFsTGV2ZWwgPSAnNCcgYXMgdGhpc1sndmlzdWFsTGV2ZWwnXTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuc2xvdCB8fD0gJ3RpdGxlLXNlY3Rpb24nO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItZGlhbG9nLXRpdGxlJzogU2JiRGlhbG9nVGl0bGVFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0lBZU0seUJBQXFCLE1BQUE7OzBCQUQxQixjQUFjLGtCQUFrQixDQUFDOzs7O29CQUNFLGlCQUFpQixZQUFZO0FBQXJDLEVBQUEsbUJBQVEsWUFBOEI7QUFBQSxJQUdoRSxjQUFBO0FBQ0UsWUFBQTtBQUNBLFdBQUssUUFBUTtBQUNiLFdBQUssY0FBYztBQUFBLElBQ3JCO0FBQUEsSUFFZ0Isb0JBQWlCO0FBQy9CLFlBQU0sa0JBQUE7QUFDTixXQUFLLFNBQVM7QUFBQSxJQUNoQjtBQUFBOztBQVpGLGlCQUFBLE1BQUEsbUJBQUEsRUFBQSxPQUFBLFdBQUEsR0FBQSxrQkFBQSxFQUFBLE1BQUEsU0FBQSxNQUFBLFdBQUEsTUFBQSxVQUFBLFVBQUEsR0FBQSxNQUFBLHVCQUFBOzs7UUFDeUIsR0FBQSxTQUF5QixDQUFDLGFBQWEsUUFBUSxLQUFLLEdBRHZFLGtCQUFBLFlBQUEsdUJBQUEsR0FBc0I7OzsifQ==
@@ -1,7 +1,7 @@
1
1
  import { LitElement, TemplateResult } from 'lit';
2
2
  import { SbbSecondaryButtonStaticElement } from '../../button.js';
3
3
  import { SbbLanguageController } from '../../core/controllers.js';
4
- import { FormRestoreReason, FormRestoreState, Constructor } from '../../core/mixins.js';
4
+ import { Constructor, FormRestoreReason, FormRestoreState } from '../../core/mixins.js';
5
5
  declare const SbbFileSelectorCommonElementMixinType_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbFormAssociatedMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbElementInternalsMixinType> & typeof LitElement & import('../../core/mixins.js').SbbElementInternalsConstructor;
6
6
  export declare abstract class SbbFileSelectorCommonElementMixinType extends SbbFileSelectorCommonElementMixinType_base {
7
7
  accessor size: 's' | 'm';
@@ -16,6 +16,7 @@ export declare abstract class SbbFileSelectorCommonElementMixinType extends SbbF
16
16
  protected language: SbbLanguageController;
17
17
  protected abstract renderTemplate(input: TemplateResult): TemplateResult;
18
18
  protected createFileList(files: FileList): void;
19
+ protected getButtonLabel(): string;
19
20
  formResetCallback(): void;
20
21
  formStateRestoreCallback(state: FormRestoreState | null, reason: FormRestoreReason): void;
21
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"file-selector-common.d.ts","sourceRoot":"","sources":["../../../../../src/elements/file-selector/common/file-selector-common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAMtD,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,iBAAiB,CAAC;AAEvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AASlE,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAGrB,KAAK,WAAW,EAEjB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,kCAAkC,CAAC;AAC1C,OAAO,yCAAyC,CAAC;AACjD,OAAO,eAAe,CAAC;;AAEvB,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,qCAAsC,SAAQ,0CAE3E;IACC,SAAgB,IAAI,EAAE,GAAG,GAAG,GAAG,CAAC;IAChC,SAAgB,QAAQ,EAAE,OAAO,CAAC;IAClC,SAAgB,YAAY,EAAE,SAAS,GAAG,YAAY,CAAC;IACvD,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,kBAAkB,EAAE,MAAM,CAAC;IAC3C,SAAgB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;IACxC,IAAoB,KAAK,IAAI,MAAM,GAAG,IAAI,CAAC;IAC3C,IAAoB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE;IAChD,SAAS,CAAC,UAAU,EAAE,+BAA+B,CAAC;IACtD,SAAS,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IAC1C,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc;IACxE,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IACxC,iBAAiB,IAAI,IAAI;IACzB,wBAAwB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAAE,MAAM,EAAE,iBAAiB,GAAG,IAAI;CACjG;AAGD,eAAO,MAAM,iCAAiC,GAAI,CAAC,SAAS,WAAW,CAAC,UAAU,CAAC,EACjF,YAAY,CAAC,KACZ,WAAW,CAAC,qCAAqC,CAAC,GAAG,CAkQvD,CAAC"}
1
+ {"version":3,"file":"file-selector-common.d.ts","sourceRoot":"","sources":["../../../../../src/elements/file-selector/common/file-selector-common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAMtD,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,iBAAiB,CAAC;AAEvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAUlE,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAItB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,kCAAkC,CAAC;;AAE1C,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,qCAAsC,SAAQ,0CAE3E;IACC,SAAgB,IAAI,EAAE,GAAG,GAAG,GAAG,CAAC;IAChC,SAAgB,QAAQ,EAAE,OAAO,CAAC;IAClC,SAAgB,YAAY,EAAE,SAAS,GAAG,YAAY,CAAC;IACvD,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,kBAAkB,EAAE,MAAM,CAAC;IAC3C,SAAgB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;IACxC,IAAoB,KAAK,IAAI,MAAM,GAAG,IAAI,CAAC;IAC3C,IAAoB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE;IAChD,SAAS,CAAC,UAAU,EAAE,+BAA+B,CAAC;IACtD,SAAS,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IAC1C,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc;IACxE,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAC/C,SAAS,CAAC,cAAc,IAAI,MAAM;IAC3B,iBAAiB,IAAI,IAAI;IACzB,wBAAwB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAAE,MAAM,EAAE,iBAAiB,GAAG,IAAI;CACjG;AAGD,eAAO,MAAM,iCAAiC,GAAI,CAAC,SAAS,WAAW,CAAC,UAAU,CAAC,EACjF,YAAY,CAAC,KACZ,WAAW,CAAC,qCAAqC,CAAC,GAAG,CA+UvD,CAAC"}
@@ -15,11 +15,9 @@ import { SbbLanguageController } from "../../core/controllers.js";
15
15
  import { forceType } from "../../core/decorators.js";
16
16
  import { isLean } from "../../core/dom.js";
17
17
  import { forwardEvent } from "../../core/eventing.js";
18
- import { i18nFileSelectorCurrentlySelected, i18nFileSelectorDeleteFile, i18nFileSelectorButtonLabel } from "../../core/i18n.js";
18
+ import { i18nFileSelectorButtonLabelMultiple, i18nFileSelectorButtonLabel, i18nFileSelectorCurrentlySelected, i18nFileSelectorDeleteFile } from "../../core/i18n.js";
19
19
  import { SbbDisabledMixin, SbbFormAssociatedMixin, SbbElementInternalsMixin } from "../../core/mixins.js";
20
20
  import "../../button/secondary-button.js";
21
- import "../../button/secondary-button-static.js";
22
- import "../../icon.js";
23
21
  const SbbFileSelectorCommonElementMixin = (superclass) => {
24
22
  let SbbFileSelectorCommonElement = (() => {
25
23
  var _size_accessor_storage, _multiple_accessor_storage, _multipleMode_accessor_storage, _accept_accessor_storage, _accessibilityLabel_accessor_storage, _a;
@@ -58,6 +56,7 @@ const SbbFileSelectorCommonElementMixin = (superclass) => {
58
56
  this._files = (__runInitializers(this, _accessibilityLabel_extraInitializers), []);
59
57
  this._suffixes = ["B", "kB", "MB", "GB", "TB"];
60
58
  this.language = new SbbLanguageController(this);
59
+ this._counter = 0;
61
60
  }
62
61
  /**
63
62
  * Size variant, either s or m.
@@ -158,10 +157,14 @@ const SbbFileSelectorCommonElementMixin = (superclass) => {
158
157
  forwardEvent(event, this);
159
158
  }
160
159
  createFileList(files) {
160
+ const fileArray = Array.from(files);
161
+ if (!this.multiple && files.length > 1 || this.accept && fileArray.some((file) => !this.accept.split(",").some((a) => file.name.endsWith(a.trim())))) {
162
+ return;
163
+ }
161
164
  if (!this.multiple || this.multipleMode !== "persistent" || this.files.length === 0) {
162
- this.files = Array.from(files);
165
+ this.files = fileArray;
163
166
  } else {
164
- this.files = Array.from(files).filter(
167
+ this.files = fileArray.filter(
165
168
  // Remove duplicates
166
169
  (newFile) => this.files.findIndex((oldFile) => this._checkFileEquality(newFile, oldFile)) === -1
167
170
  ).concat(this.files);
@@ -169,6 +172,9 @@ const SbbFileSelectorCommonElementMixin = (superclass) => {
169
172
  this._updateA11yLiveRegion();
170
173
  this._dispatchFileChangedEvent();
171
174
  }
175
+ getButtonLabel() {
176
+ return this.multiple ? i18nFileSelectorButtonLabelMultiple[this.language.current] : i18nFileSelectorButtonLabel[this.language.current];
177
+ }
172
178
  _removeFile(file) {
173
179
  this.files = this.files.filter((f) => !this._checkFileEquality(file, f));
174
180
  this._updateA11yLiveRegion();
@@ -214,24 +220,63 @@ const SbbFileSelectorCommonElementMixin = (superclass) => {
214
220
  </${unsafeStatic(TAG_NAME.WRAPPER)}>
215
221
  `;
216
222
  }
223
+ _onDragEnter(event) {
224
+ this._counter++;
225
+ if (!this.disabled && !this.formDisabled) {
226
+ this._setDragState(event.target, true);
227
+ this._blockEvent(event);
228
+ }
229
+ }
230
+ _onDragLeave(event) {
231
+ this._counter--;
232
+ if (!this.disabled && !this.formDisabled && event.target === this._dragTarget && this._counter === 0) {
233
+ this._setDragState();
234
+ this._blockEvent(event);
235
+ }
236
+ }
237
+ _onFileDrop(event) {
238
+ this._counter = 0;
239
+ if (!this.disabled && !this.formDisabled) {
240
+ this._setDragState();
241
+ this._blockEvent(event);
242
+ this.createFileList(event.dataTransfer.files);
243
+ }
244
+ }
245
+ _blockEvent(event) {
246
+ event.stopPropagation();
247
+ event.preventDefault();
248
+ }
249
+ _setDragState(dragTarget = void 0, isDragEnter = false) {
250
+ this._dragTarget = dragTarget;
251
+ this.toggleState("active", isDragEnter);
252
+ this.loadButton.toggleAttribute("data-active", isDragEnter);
253
+ }
217
254
  render() {
218
- const ariaLabel = this.accessibilityLabel ? `${i18nFileSelectorButtonLabel[this.language.current]} - ${this.accessibilityLabel}` : void 0;
255
+ const ariaLabel = this.accessibilityLabel ? `${this.getButtonLabel()} - ${this.accessibilityLabel}` : void 0;
219
256
  return html`
220
257
  <div class="sbb-file-selector">
221
- ${this.renderTemplate(html`<input
222
- class="sbb-file-selector__visually-hidden"
223
- type="file"
224
- ?disabled="${this.disabled || this.formDisabled}"
225
- ?multiple="${this.multiple}"
226
- accept="${this.accept || nothing}"
227
- aria-label="${ariaLabel || nothing}"
228
- @change="${this._readFiles}"
229
- @focus="${this._onFocus}"
230
- @blur="${this._onBlur}"
231
- ${ref((el) => {
258
+ <div
259
+ class="sbb-file-selector__input-container"
260
+ @dragenter=${this._onDragEnter}
261
+ @dragover=${this._blockEvent}
262
+ @dragleave=${this._onDragLeave}
263
+ @drop=${this._onFileDrop}
264
+ >
265
+ ${this.renderTemplate(html`<input
266
+ class="sbb-file-selector__visually-hidden"
267
+ type="file"
268
+ ?disabled="${this.disabled || this.formDisabled}"
269
+ ?multiple="${this.multiple}"
270
+ accept="${this.accept || nothing}"
271
+ aria-label="${ariaLabel || nothing}"
272
+ @change="${this._readFiles}"
273
+ @focus="${this._onFocus}"
274
+ @blur="${this._onBlur}"
275
+ ${ref((el) => {
232
276
  this._hiddenInput = el;
233
277
  })}
234
- />`)}
278
+ />`)}
279
+ </div>
235
280
  <p
236
281
  role="status"
237
282
  class="sbb-file-selector__visually-hidden"
@@ -284,4 +329,4 @@ const SbbFileSelectorCommonElementMixin = (superclass) => {
284
329
  export {
285
330
  SbbFileSelectorCommonElementMixin
286
331
  };
287
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zZWxlY3Rvci1jb21tb24uanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9maWxlLXNlbGVjdG9yL2NvbW1vbi9maWxlLXNlbGVjdG9yLWNvbW1vbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IExpdEVsZW1lbnQsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IG5vdGhpbmcgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZWYgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZWYuanMnO1xuaW1wb3J0IHsgaHRtbCwgdW5zYWZlU3RhdGljIH0gZnJvbSAnbGl0L3N0YXRpYy1odG1sLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJTZWNvbmRhcnlCdXR0b25TdGF0aWNFbGVtZW50IH0gZnJvbSAnLi4vLi4vYnV0dG9uLmpzJztcbmltcG9ydCB7IHNiYklucHV0TW9kYWxpdHlEZXRlY3RvciB9IGZyb20gJy4uLy4uL2NvcmUvYTExeS5qcyc7XG5pbXBvcnQgeyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IGZvcmNlVHlwZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBpc0xlYW4gfSBmcm9tICcuLi8uLi9jb3JlL2RvbS5qcyc7XG5pbXBvcnQgeyBmb3J3YXJkRXZlbnQgfSBmcm9tICcuLi8uLi9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB7XG4gIGkxOG5GaWxlU2VsZWN0b3JCdXR0b25MYWJlbCxcbiAgaTE4bkZpbGVTZWxlY3RvckN1cnJlbnRseVNlbGVjdGVkLFxuICBpMThuRmlsZVNlbGVjdG9yRGVsZXRlRmlsZSxcbn0gZnJvbSAnLi4vLi4vY29yZS9pMThuLmpzJztcbmltcG9ydCB7XG4gIHR5cGUgRm9ybVJlc3RvcmVSZWFzb24sXG4gIHR5cGUgRm9ybVJlc3RvcmVTdGF0ZSxcbiAgU2JiRGlzYWJsZWRNaXhpbixcbiAgU2JiRm9ybUFzc29jaWF0ZWRNaXhpbixcbiAgdHlwZSBDb25zdHJ1Y3RvcixcbiAgU2JiRWxlbWVudEludGVybmFsc01peGluLFxufSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5cbmltcG9ydCAnLi4vLi4vYnV0dG9uL3NlY29uZGFyeS1idXR0b24uanMnO1xuaW1wb3J0ICcuLi8uLi9idXR0b24vc2Vjb25kYXJ5LWJ1dHRvbi1zdGF0aWMuanMnO1xuaW1wb3J0ICcuLi8uLi9pY29uLmpzJztcblxuZXhwb3J0IGRlY2xhcmUgYWJzdHJhY3QgY2xhc3MgU2JiRmlsZVNlbGVjdG9yQ29tbW9uRWxlbWVudE1peGluVHlwZSBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oXG4gIFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4oU2JiRWxlbWVudEludGVybmFsc01peGluKExpdEVsZW1lbnQpKSxcbikge1xuICBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ3MnIHwgJ20nO1xuICBwdWJsaWMgYWNjZXNzb3IgbXVsdGlwbGU6IGJvb2xlYW47XG4gIHB1YmxpYyBhY2Nlc3NvciBtdWx0aXBsZU1vZGU6ICdkZWZhdWx0JyB8ICdwZXJzaXN0ZW50JztcbiAgcHVibGljIGFjY2Vzc29yIGFjY2VwdDogc3RyaW5nO1xuICBwdWJsaWMgYWNjZXNzb3IgYWNjZXNzaWJpbGl0eUxhYmVsOiBzdHJpbmc7XG4gIHB1YmxpYyBhY2Nlc3NvciBmaWxlczogUmVhZG9ubHk8RmlsZT5bXTtcbiAgcHVibGljIG92ZXJyaWRlIGdldCB2YWx1ZSgpOiBzdHJpbmcgfCBudWxsO1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudWxsKTtcbiAgcHJvdGVjdGVkIGxvYWRCdXR0b246IFNiYlNlY29uZGFyeUJ1dHRvblN0YXRpY0VsZW1lbnQ7XG4gIHByb3RlY3RlZCBsYW5ndWFnZTogU2JiTGFuZ3VhZ2VDb250cm9sbGVyO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVuZGVyVGVtcGxhdGUoaW5wdXQ6IFRlbXBsYXRlUmVzdWx0KTogVGVtcGxhdGVSZXN1bHQ7XG4gIHByb3RlY3RlZCBjcmVhdGVGaWxlTGlzdChmaWxlczogRmlsZUxpc3QpOiB2b2lkO1xuICBwdWJsaWMgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZDtcbiAgcHVibGljIGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsIHJlYXNvbjogRm9ybVJlc3RvcmVSZWFzb24pOiB2b2lkO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG5leHBvcnQgY29uc3QgU2JiRmlsZVNlbGVjdG9yQ29tbW9uRWxlbWVudE1peGluID0gPFQgZXh0ZW5kcyBDb25zdHJ1Y3RvcjxMaXRFbGVtZW50Pj4oXG4gIHN1cGVyY2xhc3M6IFQsXG4pOiBDb25zdHJ1Y3RvcjxTYmJGaWxlU2VsZWN0b3JDb21tb25FbGVtZW50TWl4aW5UeXBlPiAmIFQgPT4ge1xuICBhYnN0cmFjdCBjbGFzcyBTYmJGaWxlU2VsZWN0b3JDb21tb25FbGVtZW50XG4gICAgZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4oU2JiRWxlbWVudEludGVybmFsc01peGluKHN1cGVyY2xhc3MpKSlcbiAgICBpbXBsZW1lbnRzIFBhcnRpYWw8U2JiRmlsZVNlbGVjdG9yQ29tbW9uRWxlbWVudE1peGluVHlwZT5cbiAge1xuICAgIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgICAgZmlsZWNoYW5nZWQ6ICdmaWxlY2hhbmdlZCcsXG4gICAgfSBhcyBjb25zdDtcblxuICAgIC8qKlxuICAgICAqIFNpemUgdmFyaWFudCwgZWl0aGVyIHMgb3IgbS5cbiAgICAgKiBAZGVmYXVsdCAnbScgLyAncycgKGxlYW4pXG4gICAgICovXG4gICAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ3MnIHwgJ20nID0gaXNMZWFuKCkgPyAncycgOiAnbSc7XG5cbiAgICAvKiogV2hldGhlciBtb3JlIHRoYW4gb25lIGZpbGUgY2FuIGJlIHNlbGVjdGVkLiAqL1xuICAgIEBmb3JjZVR5cGUoKVxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IEJvb2xlYW4gfSlcbiAgICBwdWJsaWMgYWNjZXNzb3IgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBuZXdseSBhZGRlZCBmaWxlcyBzaG91bGQgb3ZlcnJpZGUgdGhlIHByZXZpb3VzbHkgYWRkZWQgb25lcy4gKi9cbiAgICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdtdWx0aXBsZS1tb2RlJyB9KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBtdWx0aXBsZU1vZGU6ICdkZWZhdWx0JyB8ICdwZXJzaXN0ZW50JyA9ICdkZWZhdWx0JztcblxuICAgIC8qKiBBIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIGFsbG93ZWQgdW5pcXVlIGZpbGUgdHlwZSBzcGVjaWZpZXJzLiAqL1xuICAgIEBmb3JjZVR5cGUoKVxuICAgIEBwcm9wZXJ0eSgpXG4gICAgcHVibGljIGFjY2Vzc29yIGFjY2VwdDogc3RyaW5nID0gJyc7XG5cbiAgICAvKiogVGhpcyB3aWxsIGJlIGZvcndhcmRlZCBhcyBhcmlhLWxhYmVsIHRvIHRoZSBuYXRpdmUgaW5wdXQgZWxlbWVudC4gKi9cbiAgICBAZm9yY2VUeXBlKClcbiAgICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWxhYmVsJyB9KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5TGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgLyoqIFRoZSBwYXRoIG9mIHRoZSBmaXJzdCBzZWxlY3RlZCBmaWxlLiBFbXB0eSBzdHJpbmcgKCcnKSBpZiBubyBmaWxlIGlzIHNlbGVjdGVkICovXG4gICAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiBmYWxzZSB9KVxuICAgIHB1YmxpYyBzZXQgdmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpIHtcbiAgICAgIHRoaXMuX2hpZGRlbklucHV0LnZhbHVlID0gdmFsdWUgPz8gJyc7XG5cbiAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgdGhpcy5maWxlcyA9IFtdO1xuICAgICAgfVxuICAgIH1cbiAgICBwdWJsaWMgZ2V0IHZhbHVlKCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgcmV0dXJuIHRoaXMuX2hpZGRlbklucHV0Py52YWx1ZTtcbiAgICB9XG5cbiAgICAvKiogVGhlIGxpc3Qgb2Ygc2VsZWN0ZWQgZmlsZXMuICovXG4gICAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiBmYWxzZSB9KVxuICAgIHB1YmxpYyBzZXQgZmlsZXModmFsdWU6IFJlYWRvbmx5PEZpbGU+W10pIHtcbiAgICAgIHRoaXMuX2ZpbGVzID0gdmFsdWUgPz8gW107XG5cbiAgICAgIC8vIHVwZGF0ZSB0aGUgaW5uZXIgaW5wdXRcbiAgICAgIGNvbnN0IGR0OiBEYXRhVHJhbnNmZXIgPSBuZXcgRGF0YVRyYW5zZmVyKCk7XG4gICAgICB0aGlzLmZpbGVzLmZvckVhY2goKGU6IFJlYWRvbmx5PEZpbGU+KSA9PiBkdC5pdGVtcy5hZGQoZSkpO1xuICAgICAgdGhpcy5faGlkZGVuSW5wdXQuZmlsZXMgPSBkdC5maWxlcztcblxuICAgICAgdGhpcy51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICB9XG4gICAgcHVibGljIGdldCBmaWxlcygpOiBSZWFkb25seTxGaWxlPltdIHtcbiAgICAgIHJldHVybiB0aGlzLl9maWxlcztcbiAgICB9XG4gICAgcHJpdmF0ZSBfZmlsZXM6IFJlYWRvbmx5PEZpbGU+W10gPSBbXTtcblxuICAgIC8qKlxuICAgICAqIEZvcm0gdHlwZSBvZiBlbGVtZW50LlxuICAgICAqIEBkZWZhdWx0ICdmaWxlJ1xuICAgICAqL1xuICAgIHB1YmxpYyBvdmVycmlkZSBnZXQgdHlwZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuICdmaWxlJztcbiAgICB9XG5cbiAgICBwcml2YXRlIF9oaWRkZW5JbnB1dCE6IEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSBfc3VmZml4ZXM6IHN0cmluZ1tdID0gWydCJywgJ2tCJywgJ01CJywgJ0dCJywgJ1RCJ107XG4gICAgcHJpdmF0ZSBfbGl2ZVJlZ2lvbiE6IEhUTUxQYXJhZ3JhcGhFbGVtZW50O1xuICAgIHByb3RlY3RlZCBsb2FkQnV0dG9uITogU2JiU2Vjb25kYXJ5QnV0dG9uU3RhdGljRWxlbWVudDtcbiAgICBwcm90ZWN0ZWQgbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHJlbmRlclRlbXBsYXRlKGlucHV0OiBUZW1wbGF0ZVJlc3VsdCk6IFRlbXBsYXRlUmVzdWx0O1xuXG4gICAgcHVibGljIG92ZXJyaWRlIGZvcm1SZXNldENhbGxiYWNrKCk6IHZvaWQge1xuICAgICAgdGhpcy5maWxlcyA9IFtdO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBmb3JtU3RhdGVSZXN0b3JlQ2FsbGJhY2soXG4gICAgICBzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsXG4gICAgICBfcmVhc29uPzogRm9ybVJlc3RvcmVSZWFzb24sXG4gICAgKTogdm9pZCB7XG4gICAgICBpZiAoIXN0YXRlKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMuZmlsZXMgPSAoc3RhdGUgYXMgRm9ybURhdGEpLmdldEFsbCh0aGlzLm5hbWUpIGFzIFJlYWRvbmx5PEZpbGU+W107XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZUZvcm1WYWx1ZSgpOiB2b2lkIHtcbiAgICAgIGNvbnN0IGZvcm1WYWx1ZSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgICAgdGhpcy5maWxlcy5mb3JFYWNoKChmaWxlKSA9PiBmb3JtVmFsdWUuYXBwZW5kKHRoaXMubmFtZSwgZmlsZSkpO1xuICAgICAgdGhpcy5pbnRlcm5hbHMuc2V0Rm9ybVZhbHVlKGZvcm1WYWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfY2hlY2tGaWxlRXF1YWxpdHkoZmlsZTE6IFJlYWRvbmx5PEZpbGU+LCBmaWxlMjogUmVhZG9ubHk8RmlsZT4pOiBib29sZWFuIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIGZpbGUxLm5hbWUgPT09IGZpbGUyLm5hbWUgJiZcbiAgICAgICAgZmlsZTEuc2l6ZSA9PT0gZmlsZTIuc2l6ZSAmJlxuICAgICAgICBmaWxlMS5sYXN0TW9kaWZpZWQgPT09IGZpbGUyLmxhc3RNb2RpZmllZFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9vbkZvY3VzKCk6IHZvaWQge1xuICAgICAgaWYgKHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvci5tb3N0UmVjZW50TW9kYWxpdHkgPT09ICdrZXlib2FyZCcpIHtcbiAgICAgICAgdGhpcy5sb2FkQnV0dG9uLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1mb2N1cy12aXNpYmxlJywgdHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfb25CbHVyKCk6IHZvaWQge1xuICAgICAgdGhpcy5sb2FkQnV0dG9uLnJlbW92ZUF0dHJpYnV0ZSgnZGF0YS1mb2N1cy12aXNpYmxlJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfcmVhZEZpbGVzKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgY29uc3QgZmlsZUlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgICBpZiAoZmlsZUlucHV0LmZpbGVzKSB7XG4gICAgICAgIHRoaXMuY3JlYXRlRmlsZUxpc3QoZmlsZUlucHV0LmZpbGVzKTtcbiAgICAgIH1cbiAgICAgIGZvcndhcmRFdmVudChldmVudCwgdGhpcyk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZUZpbGVMaXN0KGZpbGVzOiBGaWxlTGlzdCk6IHZvaWQge1xuICAgICAgaWYgKCF0aGlzLm11bHRpcGxlIHx8IHRoaXMubXVsdGlwbGVNb2RlICE9PSAncGVyc2lzdGVudCcgfHwgdGhpcy5maWxlcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgdGhpcy5maWxlcyA9IEFycmF5LmZyb20oZmlsZXMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5maWxlcyA9IEFycmF5LmZyb20oZmlsZXMpXG4gICAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAgIC8vIFJlbW92ZSBkdXBsaWNhdGVzXG4gICAgICAgICAgICAobmV3RmlsZTogUmVhZG9ubHk8RmlsZT4pOiBib29sZWFuID0+XG4gICAgICAgICAgICAgIHRoaXMuZmlsZXMhLmZpbmRJbmRleCgob2xkRmlsZTogUmVhZG9ubHk8RmlsZT4pID0+XG4gICAgICAgICAgICAgICAgdGhpcy5fY2hlY2tGaWxlRXF1YWxpdHkobmV3RmlsZSwgb2xkRmlsZSksXG4gICAgICAgICAgICAgICkgPT09IC0xLFxuICAgICAgICAgIClcbiAgICAgICAgICAuY29uY2F0KHRoaXMuZmlsZXMpO1xuICAgICAgfVxuICAgICAgdGhpcy5fdXBkYXRlQTExeUxpdmVSZWdpb24oKTtcbiAgICAgIHRoaXMuX2Rpc3BhdGNoRmlsZUNoYW5nZWRFdmVudCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3JlbW92ZUZpbGUoZmlsZTogUmVhZG9ubHk8RmlsZT4pOiB2b2lkIHtcbiAgICAgIHRoaXMuZmlsZXMgPSB0aGlzLmZpbGVzLmZpbHRlcigoZjogUmVhZG9ubHk8RmlsZT4pID0+ICF0aGlzLl9jaGVja0ZpbGVFcXVhbGl0eShmaWxlLCBmKSk7XG4gICAgICB0aGlzLl91cGRhdGVBMTF5TGl2ZVJlZ2lvbigpO1xuXG4gICAgICAvLyBEaXNwYXRjaCBuYXRpdmUgZXZlbnRzIGFzIGlmIHRoZSByZXNldCBpcyBkb25lIHZpYSB0aGUgZmlsZSBzZWxlY3Rpb24gd2luZG93LlxuICAgICAgLyoqIFRoZSBpbnB1dCBldmVudCBmaXJlcyB3aGVuIHRoZSB2YWx1ZSBoYXMgYmVlbiBjaGFuZ2VkIGFzIGEgZGlyZWN0IHJlc3VsdCBvZiBhIHVzZXIgYWN0aW9uLiAqL1xuICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50KFxuICAgICAgICBuZXcgSW5wdXRFdmVudCgnaW5wdXQnLCB7XG4gICAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgICBjb21wb3NlZDogdHJ1ZSxcbiAgICAgICAgfSksXG4gICAgICApO1xuXG4gICAgICAvKipcbiAgICAgICAqIFRoZSBjaGFuZ2UgZXZlbnQgaXMgZmlyZWQgd2hlbiB0aGUgdXNlciBtb2RpZmllcyB0aGUgZWxlbWVudCdzIHZhbHVlLlxuICAgICAgICogVW5saWtlIHRoZSBpbnB1dCBldmVudCwgdGhlIGNoYW5nZSBldmVudCBpcyBub3QgbmVjZXNzYXJpbHkgZmlyZWRcbiAgICAgICAqIGZvciBlYWNoIGFsdGVyYXRpb24gdG8gYW4gZWxlbWVudCdzIHZhbHVlLlxuICAgICAgICovXG4gICAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuICAgICAgdGhpcy5fZGlzcGF0Y2hGaWxlQ2hhbmdlZEV2ZW50KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZGlzcGF0Y2hGaWxlQ2hhbmdlZEV2ZW50KCk6IHZvaWQge1xuICAgICAgLyoqXG4gICAgICAgKiBAdHlwZSB7Q3VzdG9tRXZlbnQ8UmVhZG9ubHk8RmlsZT5bXT59XG4gICAgICAgKiBBbiBldmVudCB3aGljaCBpcyBlbWl0dGVkIGVhY2ggdGltZSB0aGUgZmlsZSBsaXN0IGNoYW5nZXMuXG4gICAgICAgKi9cbiAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgbmV3IEN1c3RvbUV2ZW50PFJlYWRvbmx5PEZpbGU+W10+KCdmaWxlY2hhbmdlZCcsIHtcbiAgICAgICAgICBidWJibGVzOiB0cnVlLFxuICAgICAgICAgIGNvbXBvc2VkOiB0cnVlLFxuICAgICAgICAgIGRldGFpbDogdGhpcy5maWxlcyxcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH1cblxuICAgIC8qKiBDYWxjdWxhdGVzIHRoZSBjb3JyZWN0IHVuaXQgZm9yIHRoZSBmaWxlJ3Mgc2l6ZS4gKi9cbiAgICBwcml2YXRlIF9mb3JtYXRGaWxlU2l6ZShzaXplOiBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgY29uc3QgaTogbnVtYmVyID0gTWF0aC5mbG9vcihNYXRoLmxvZyhzaXplKSAvIE1hdGgubG9nKDEwMjQpKTtcbiAgICAgIHJldHVybiBgJHsoc2l6ZSAvIE1hdGgucG93KDEwMjQsIGkpKS50b0ZpeGVkKDApfSAke3RoaXMuX3N1ZmZpeGVzW2ldfWA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfdXBkYXRlQTExeUxpdmVSZWdpb24oKTogdm9pZCB7XG4gICAgICB0aGlzLl9saXZlUmVnaW9uLmlubmVyVGV4dCA9IGkxOG5GaWxlU2VsZWN0b3JDdXJyZW50bHlTZWxlY3RlZCh0aGlzLmZpbGVzLm1hcCgoZSkgPT4gZS5uYW1lKSlbXG4gICAgICAgIHRoaXMubGFuZ3VhZ2UuY3VycmVudFxuICAgICAgXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9yZW5kZXJGaWxlTGlzdCgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgICBjb25zdCBUQUdfTkFNRTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9XG4gICAgICAgIHRoaXMuZmlsZXMubGVuZ3RoID4gMVxuICAgICAgICAgID8geyBXUkFQUEVSOiAndWwnLCBFTEVNRU5UOiAnbGknIH1cbiAgICAgICAgICA6IHsgV1JBUFBFUjogJ2RpdicsIEVMRU1FTlQ6ICdzcGFuJyB9O1xuXG4gICAgICAvKiBlc2xpbnQtZGlzYWJsZSBsaXQvYmluZGluZy1wb3NpdGlvbnMgKi9cbiAgICAgIHJldHVybiBodG1sYFxuICAgICAgPCR7dW5zYWZlU3RhdGljKFRBR19OQU1FLldSQVBQRVIpfSBjbGFzcz0nc2JiLWZpbGUtc2VsZWN0b3JfX2ZpbGUtbGlzdCc+XG4gICAgICAgICR7dGhpcy5maWxlcy5tYXAoXG4gICAgICAgICAgKGZpbGU6IFJlYWRvbmx5PEZpbGU+KSA9PiBodG1sYFxuICAgICAgICAgICAgPCR7dW5zYWZlU3RhdGljKFRBR19OQU1FLkVMRU1FTlQpfSBjbGFzcz0nc2JiLWZpbGUtc2VsZWN0b3JfX2ZpbGUnPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSdzYmItZmlsZS1zZWxlY3Rvcl9fZmlsZS1kZXRhaWxzJz5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSdzYmItZmlsZS1zZWxlY3Rvcl9fZmlsZS1uYW1lJz4ke2ZpbGUubmFtZX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0nc2JiLWZpbGUtc2VsZWN0b3JfX2ZpbGUtc2l6ZSc+JHt0aGlzLl9mb3JtYXRGaWxlU2l6ZShmaWxlLnNpemUpfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDxzYmItc2Vjb25kYXJ5LWJ1dHRvblxuICAgICAgICAgICAgICAgIHNpemU9JyR7dGhpcy5zaXplfSdcbiAgICAgICAgICAgICAgICBpY29uLW5hbWU9J3RyYXNoLXNtYWxsJ1xuICAgICAgICAgICAgICAgIEBjbGljaz0nJHsoKSA9PiB0aGlzLl9yZW1vdmVGaWxlKGZpbGUpfSdcbiAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPScke2Ake2kxOG5GaWxlU2VsZWN0b3JEZWxldGVGaWxlW3RoaXMubGFuZ3VhZ2UuY3VycmVudF19IC0gJHtmaWxlLm5hbWV9YH0nXG4gICAgICAgICAgICAgID48L3NiYi1zZWNvbmRhcnktYnV0dG9uPlxuICAgICAgICAgICAgPC8ke3Vuc2FmZVN0YXRpYyhUQUdfTkFNRS5FTEVNRU5UKX0+YCxcbiAgICAgICAgKX1cbiAgICAgIDwvJHt1bnNhZmVTdGF0aWMoVEFHX05BTUUuV1JBUFBFUil9PlxuICAgIGA7XG4gICAgICAvKiBlc2xpbnQtZW5hYmxlIGxpdC9iaW5kaW5nLXBvc2l0aW9ucyAqL1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgICAgY29uc3QgYXJpYUxhYmVsID0gdGhpcy5hY2Nlc3NpYmlsaXR5TGFiZWxcbiAgICAgICAgPyBgJHtpMThuRmlsZVNlbGVjdG9yQnV0dG9uTGFiZWxbdGhpcy5sYW5ndWFnZS5jdXJyZW50XX0gLSAke3RoaXMuYWNjZXNzaWJpbGl0eUxhYmVsfWBcbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICByZXR1cm4gaHRtbGBcbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yXCI+XG4gICAgICAgICAgJHt0aGlzLnJlbmRlclRlbXBsYXRlKFxuICAgICAgICAgICAgaHRtbGA8aW5wdXRcbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9fdmlzdWFsbHktaGlkZGVuXCJcbiAgICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgICAgICA/ZGlzYWJsZWQ9XCIke3RoaXMuZGlzYWJsZWQgfHwgdGhpcy5mb3JtRGlzYWJsZWR9XCJcbiAgICAgICAgICAgICAgP211bHRpcGxlPVwiJHt0aGlzLm11bHRpcGxlfVwiXG4gICAgICAgICAgICAgIGFjY2VwdD1cIiR7dGhpcy5hY2NlcHQgfHwgbm90aGluZ31cIlxuICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiJHthcmlhTGFiZWwgfHwgbm90aGluZ31cIlxuICAgICAgICAgICAgICBAY2hhbmdlPVwiJHt0aGlzLl9yZWFkRmlsZXN9XCJcbiAgICAgICAgICAgICAgQGZvY3VzPVwiJHt0aGlzLl9vbkZvY3VzfVwiXG4gICAgICAgICAgICAgIEBibHVyPVwiJHt0aGlzLl9vbkJsdXJ9XCJcbiAgICAgICAgICAgICAgJHtyZWYoKGVsPzogRWxlbWVudCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX2hpZGRlbklucHV0ID0gZWwgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAvPmAsXG4gICAgICAgICAgKX1cbiAgICAgICAgICA8cFxuICAgICAgICAgICAgcm9sZT1cInN0YXR1c1wiXG4gICAgICAgICAgICBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yX192aXN1YWxseS1oaWRkZW5cIlxuICAgICAgICAgICAgJHtyZWYoKHA/OiBFbGVtZW50KSA9PiAodGhpcy5fbGl2ZVJlZ2lvbiA9IHAgYXMgSFRNTFBhcmFncmFwaEVsZW1lbnQpKX1cbiAgICAgICAgICA+PC9wPlxuICAgICAgICAgICR7dGhpcy5maWxlcy5sZW5ndGggPiAwID8gdGhpcy5fcmVuZGVyRmlsZUxpc3QoKSA6IG5vdGhpbmd9XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yX19lcnJvclwiPlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cImVycm9yXCI+PC9zbG90PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIGA7XG4gICAgfVxuICB9XG4gIHJldHVybiBTYmJGaWxlU2VsZWN0b3JDb21tb25FbGVtZW50IGFzIHVua25vd24gYXMgQ29uc3RydWN0b3I8U2JiRmlsZVNlbGVjdG9yQ29tbW9uRWxlbWVudE1peGluVHlwZT4gJlxuICAgIFQ7XG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFrRE8sTUFBTSxvQ0FBb0MsQ0FDL0MsZUFDMEQ7TUFDM0MsZ0NBQTRCLE1BQUE7O3NCQUNqQyxpQkFBaUIsdUJBQXVCLHlCQUF5QixVQUFVLENBQUMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUR4RSxXQUFBLG1CQUNMLFlBQThFO0FBQUE7O0FBV3pEO0FBSzdCO0FBSUE7QUFLQTtBQUtBO0FBbkI2QywyQkFBQSx5QkFaaEMsa0JBQUEsTUFBQSww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
332
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zZWxlY3Rvci1jb21tb24uanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9maWxlLXNlbGVjdG9yL2NvbW1vbi9maWxlLXNlbGVjdG9yLWNvbW1vbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IExpdEVsZW1lbnQsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IG5vdGhpbmcgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZWYgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZWYuanMnO1xuaW1wb3J0IHsgaHRtbCwgdW5zYWZlU3RhdGljIH0gZnJvbSAnbGl0L3N0YXRpYy1odG1sLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJTZWNvbmRhcnlCdXR0b25TdGF0aWNFbGVtZW50IH0gZnJvbSAnLi4vLi4vYnV0dG9uLmpzJztcbmltcG9ydCB7IHNiYklucHV0TW9kYWxpdHlEZXRlY3RvciB9IGZyb20gJy4uLy4uL2NvcmUvYTExeS5qcyc7XG5pbXBvcnQgeyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IGZvcmNlVHlwZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBpc0xlYW4gfSBmcm9tICcuLi8uLi9jb3JlL2RvbS5qcyc7XG5pbXBvcnQgeyBmb3J3YXJkRXZlbnQgfSBmcm9tICcuLi8uLi9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB7XG4gIGkxOG5GaWxlU2VsZWN0b3JCdXR0b25MYWJlbCxcbiAgaTE4bkZpbGVTZWxlY3RvckJ1dHRvbkxhYmVsTXVsdGlwbGUsXG4gIGkxOG5GaWxlU2VsZWN0b3JDdXJyZW50bHlTZWxlY3RlZCxcbiAgaTE4bkZpbGVTZWxlY3RvckRlbGV0ZUZpbGUsXG59IGZyb20gJy4uLy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQge1xuICB0eXBlIENvbnN0cnVjdG9yLFxuICB0eXBlIEZvcm1SZXN0b3JlUmVhc29uLFxuICB0eXBlIEZvcm1SZXN0b3JlU3RhdGUsXG4gIFNiYkRpc2FibGVkTWl4aW4sXG4gIFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpbixcbiAgU2JiRm9ybUFzc29jaWF0ZWRNaXhpbixcbn0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuXG5pbXBvcnQgJy4uLy4uL2J1dHRvbi9zZWNvbmRhcnktYnV0dG9uLmpzJztcblxuZXhwb3J0IGRlY2xhcmUgYWJzdHJhY3QgY2xhc3MgU2JiRmlsZVNlbGVjdG9yQ29tbW9uRWxlbWVudE1peGluVHlwZSBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oXG4gIFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4oU2JiRWxlbWVudEludGVybmFsc01peGluKExpdEVsZW1lbnQpKSxcbikge1xuICBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ3MnIHwgJ20nO1xuICBwdWJsaWMgYWNjZXNzb3IgbXVsdGlwbGU6IGJvb2xlYW47XG4gIHB1YmxpYyBhY2Nlc3NvciBtdWx0aXBsZU1vZGU6ICdkZWZhdWx0JyB8ICdwZXJzaXN0ZW50JztcbiAgcHVibGljIGFjY2Vzc29yIGFjY2VwdDogc3RyaW5nO1xuICBwdWJsaWMgYWNjZXNzb3IgYWNjZXNzaWJpbGl0eUxhYmVsOiBzdHJpbmc7XG4gIHB1YmxpYyBhY2Nlc3NvciBmaWxlczogUmVhZG9ubHk8RmlsZT5bXTtcbiAgcHVibGljIG92ZXJyaWRlIGdldCB2YWx1ZSgpOiBzdHJpbmcgfCBudWxsO1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudWxsKTtcbiAgcHJvdGVjdGVkIGxvYWRCdXR0b246IFNiYlNlY29uZGFyeUJ1dHRvblN0YXRpY0VsZW1lbnQ7XG4gIHByb3RlY3RlZCBsYW5ndWFnZTogU2JiTGFuZ3VhZ2VDb250cm9sbGVyO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVuZGVyVGVtcGxhdGUoaW5wdXQ6IFRlbXBsYXRlUmVzdWx0KTogVGVtcGxhdGVSZXN1bHQ7XG4gIHByb3RlY3RlZCBjcmVhdGVGaWxlTGlzdChmaWxlczogRmlsZUxpc3QpOiB2b2lkO1xuICBwcm90ZWN0ZWQgZ2V0QnV0dG9uTGFiZWwoKTogc3RyaW5nO1xuICBwdWJsaWMgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZDtcbiAgcHVibGljIGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsIHJlYXNvbjogRm9ybVJlc3RvcmVSZWFzb24pOiB2b2lkO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG5leHBvcnQgY29uc3QgU2JiRmlsZVNlbGVjdG9yQ29tbW9uRWxlbWVudE1peGluID0gPFQgZXh0ZW5kcyBDb25zdHJ1Y3RvcjxMaXRFbGVtZW50Pj4oXG4gIHN1cGVyY2xhc3M6IFQsXG4pOiBDb25zdHJ1Y3RvcjxTYmJGaWxlU2VsZWN0b3JDb21tb25FbGVtZW50TWl4aW5UeXBlPiAmIFQgPT4ge1xuICBhYnN0cmFjdCBjbGFzcyBTYmJGaWxlU2VsZWN0b3JDb21tb25FbGVtZW50XG4gICAgZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4oU2JiRWxlbWVudEludGVybmFsc01peGluKHN1cGVyY2xhc3MpKSlcbiAgICBpbXBsZW1lbnRzIFBhcnRpYWw8U2JiRmlsZVNlbGVjdG9yQ29tbW9uRWxlbWVudE1peGluVHlwZT5cbiAge1xuICAgIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgICAgZmlsZWNoYW5nZWQ6ICdmaWxlY2hhbmdlZCcsXG4gICAgfSBhcyBjb25zdDtcblxuICAgIC8qKlxuICAgICAqIFNpemUgdmFyaWFudCwgZWl0aGVyIHMgb3IgbS5cbiAgICAgKiBAZGVmYXVsdCAnbScgLyAncycgKGxlYW4pXG4gICAgICovXG4gICAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ3MnIHwgJ20nID0gaXNMZWFuKCkgPyAncycgOiAnbSc7XG5cbiAgICAvKiogV2hldGhlciBtb3JlIHRoYW4gb25lIGZpbGUgY2FuIGJlIHNlbGVjdGVkLiAqL1xuICAgIEBmb3JjZVR5cGUoKVxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IEJvb2xlYW4gfSlcbiAgICBwdWJsaWMgYWNjZXNzb3IgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBuZXdseSBhZGRlZCBmaWxlcyBzaG91bGQgb3ZlcnJpZGUgdGhlIHByZXZpb3VzbHkgYWRkZWQgb25lcy4gKi9cbiAgICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdtdWx0aXBsZS1tb2RlJyB9KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBtdWx0aXBsZU1vZGU6ICdkZWZhdWx0JyB8ICdwZXJzaXN0ZW50JyA9ICdkZWZhdWx0JztcblxuICAgIC8qKiBBIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIGFsbG93ZWQgdW5pcXVlIGZpbGUgdHlwZSBzcGVjaWZpZXJzLiAqL1xuICAgIEBmb3JjZVR5cGUoKVxuICAgIEBwcm9wZXJ0eSgpXG4gICAgcHVibGljIGFjY2Vzc29yIGFjY2VwdDogc3RyaW5nID0gJyc7XG5cbiAgICAvKiogVGhpcyB3aWxsIGJlIGZvcndhcmRlZCBhcyBhcmlhLWxhYmVsIHRvIHRoZSBuYXRpdmUgaW5wdXQgZWxlbWVudC4gKi9cbiAgICBAZm9yY2VUeXBlKClcbiAgICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWxhYmVsJyB9KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5TGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgLyoqIFRoZSBwYXRoIG9mIHRoZSBmaXJzdCBzZWxlY3RlZCBmaWxlLiBFbXB0eSBzdHJpbmcgKCcnKSBpZiBubyBmaWxlIGlzIHNlbGVjdGVkICovXG4gICAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiBmYWxzZSB9KVxuICAgIHB1YmxpYyBzZXQgdmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpIHtcbiAgICAgIHRoaXMuX2hpZGRlbklucHV0LnZhbHVlID0gdmFsdWUgPz8gJyc7XG5cbiAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgdGhpcy5maWxlcyA9IFtdO1xuICAgICAgfVxuICAgIH1cbiAgICBwdWJsaWMgZ2V0IHZhbHVlKCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgcmV0dXJuIHRoaXMuX2hpZGRlbklucHV0Py52YWx1ZTtcbiAgICB9XG5cbiAgICAvKiogVGhlIGxpc3Qgb2Ygc2VsZWN0ZWQgZmlsZXMuICovXG4gICAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiBmYWxzZSB9KVxuICAgIHB1YmxpYyBzZXQgZmlsZXModmFsdWU6IFJlYWRvbmx5PEZpbGU+W10pIHtcbiAgICAgIHRoaXMuX2ZpbGVzID0gdmFsdWUgPz8gW107XG5cbiAgICAgIC8vIHVwZGF0ZSB0aGUgaW5uZXIgaW5wdXRcbiAgICAgIGNvbnN0IGR0OiBEYXRhVHJhbnNmZXIgPSBuZXcgRGF0YVRyYW5zZmVyKCk7XG4gICAgICB0aGlzLmZpbGVzLmZvckVhY2goKGU6IFJlYWRvbmx5PEZpbGU+KSA9PiBkdC5pdGVtcy5hZGQoZSkpO1xuICAgICAgdGhpcy5faGlkZGVuSW5wdXQuZmlsZXMgPSBkdC5maWxlcztcblxuICAgICAgdGhpcy51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICB9XG4gICAgcHVibGljIGdldCBmaWxlcygpOiBSZWFkb25seTxGaWxlPltdIHtcbiAgICAgIHJldHVybiB0aGlzLl9maWxlcztcbiAgICB9XG4gICAgcHJpdmF0ZSBfZmlsZXM6IFJlYWRvbmx5PEZpbGU+W10gPSBbXTtcblxuICAgIC8qKlxuICAgICAqIEZvcm0gdHlwZSBvZiBlbGVtZW50LlxuICAgICAqIEBkZWZhdWx0ICdmaWxlJ1xuICAgICAqL1xuICAgIHB1YmxpYyBvdmVycmlkZSBnZXQgdHlwZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuICdmaWxlJztcbiAgICB9XG5cbiAgICBwcml2YXRlIF9oaWRkZW5JbnB1dCE6IEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgcHJpdmF0ZSBfc3VmZml4ZXM6IHN0cmluZ1tdID0gWydCJywgJ2tCJywgJ01CJywgJ0dCJywgJ1RCJ107XG4gICAgcHJpdmF0ZSBfbGl2ZVJlZ2lvbiE6IEhUTUxQYXJhZ3JhcGhFbGVtZW50O1xuICAgIHByb3RlY3RlZCBsb2FkQnV0dG9uITogU2JiU2Vjb25kYXJ5QnV0dG9uU3RhdGljRWxlbWVudDtcbiAgICBwcm90ZWN0ZWQgbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuXG4gICAgLy8gU2FmYXJpIGhhcyBhIHBlY3VsaWFyIGJlaGF2aW9yIHdoZW4gZHJhZ2dpbmcgZmlsZXMgb24gdGhlIGlubmVyIGJ1dHRvbiBpbiAnZHJvcHpvbmUnIHZhcmlhbnQ7XG4gICAgLy8gdGhpcyB3aWxsIHJlcXVpcmUgYSBjb3VudGVyIHRvIGNvcnJlY3RseSBoYW5kbGUgdGhlIGRyYWdFbnRlci9kcmFnTGVhdmUuXG4gICAgcHJpdmF0ZSBfY291bnRlcjogbnVtYmVyID0gMDtcbiAgICBwcml2YXRlIF9kcmFnVGFyZ2V0PzogSFRNTEVsZW1lbnQ7XG5cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVuZGVyVGVtcGxhdGUoaW5wdXQ6IFRlbXBsYXRlUmVzdWx0KTogVGVtcGxhdGVSZXN1bHQ7XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZCB7XG4gICAgICB0aGlzLmZpbGVzID0gW107XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhcbiAgICAgIHN0YXRlOiBGb3JtUmVzdG9yZVN0YXRlIHwgbnVsbCxcbiAgICAgIF9yZWFzb24/OiBGb3JtUmVzdG9yZVJlYXNvbixcbiAgICApOiB2b2lkIHtcbiAgICAgIGlmICghc3RhdGUpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5maWxlcyA9IChzdGF0ZSBhcyBGb3JtRGF0YSkuZ2V0QWxsKHRoaXMubmFtZSkgYXMgUmVhZG9ubHk8RmlsZT5bXTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgdXBkYXRlRm9ybVZhbHVlKCk6IHZvaWQge1xuICAgICAgY29uc3QgZm9ybVZhbHVlID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgICB0aGlzLmZpbGVzLmZvckVhY2goKGZpbGUpID0+IGZvcm1WYWx1ZS5hcHBlbmQodGhpcy5uYW1lLCBmaWxlKSk7XG4gICAgICB0aGlzLmludGVybmFscy5zZXRGb3JtVmFsdWUoZm9ybVZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9jaGVja0ZpbGVFcXVhbGl0eShmaWxlMTogUmVhZG9ubHk8RmlsZT4sIGZpbGUyOiBSZWFkb25seTxGaWxlPik6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgZmlsZTEubmFtZSA9PT0gZmlsZTIubmFtZSAmJlxuICAgICAgICBmaWxlMS5zaXplID09PSBmaWxlMi5zaXplICYmXG4gICAgICAgIGZpbGUxLmxhc3RNb2RpZmllZCA9PT0gZmlsZTIubGFzdE1vZGlmaWVkXG4gICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgX29uRm9jdXMoKTogdm9pZCB7XG4gICAgICBpZiAoc2JiSW5wdXRNb2RhbGl0eURldGVjdG9yLm1vc3RSZWNlbnRNb2RhbGl0eSA9PT0gJ2tleWJvYXJkJykge1xuICAgICAgICB0aGlzLmxvYWRCdXR0b24udG9nZ2xlQXR0cmlidXRlKCdkYXRhLWZvY3VzLXZpc2libGUnLCB0cnVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIF9vbkJsdXIoKTogdm9pZCB7XG4gICAgICB0aGlzLmxvYWRCdXR0b24ucmVtb3ZlQXR0cmlidXRlKCdkYXRhLWZvY3VzLXZpc2libGUnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9yZWFkRmlsZXMoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICBjb25zdCBmaWxlSW5wdXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICAgIGlmIChmaWxlSW5wdXQuZmlsZXMpIHtcbiAgICAgICAgdGhpcy5jcmVhdGVGaWxlTGlzdChmaWxlSW5wdXQuZmlsZXMpO1xuICAgICAgfVxuICAgICAgZm9yd2FyZEV2ZW50KGV2ZW50LCB0aGlzKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY3JlYXRlRmlsZUxpc3QoZmlsZXM6IEZpbGVMaXN0KTogdm9pZCB7XG4gICAgICBjb25zdCBmaWxlQXJyYXkgPSBBcnJheS5mcm9tKGZpbGVzKTtcbiAgICAgIGlmIChcbiAgICAgICAgKCF0aGlzLm11bHRpcGxlICYmIGZpbGVzLmxlbmd0aCA+IDEpIHx8XG4gICAgICAgICh0aGlzLmFjY2VwdCAmJlxuICAgICAgICAgIGZpbGVBcnJheS5zb21lKFxuICAgICAgICAgICAgKGZpbGUpID0+ICF0aGlzLmFjY2VwdC5zcGxpdCgnLCcpLnNvbWUoKGEpID0+IGZpbGUubmFtZS5lbmRzV2l0aChhLnRyaW0oKSkpLFxuICAgICAgICAgICkpXG4gICAgICApIHtcbiAgICAgICAgLy8gSWYgbXVsdGlwbGUgZmlsZXMgYXJlIHNlbGVjdGVkIGJ1dCB0aGUgc2VsZWN0b3IgaXMgbm90IGluIG11bHRpcGxlIG1vZGUsXG4gICAgICAgIC8vIGlnbm9yZSB0aGUgc2VsZWN0aW9uIChsaWtlIG5hdGl2ZSBiZWhhdmlvcikuXG4gICAgICAgIC8vIElmIHRoZSBhY2NlcHQgYXR0cmlidXRlIGlzIHNldCwgY2hlY2sgaWYgdGhlIHNlbGVjdGVkIGZpbGVzIG1hdGNoIHRoZSBhbGxvd2VkIHR5cGVzLlxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmICghdGhpcy5tdWx0aXBsZSB8fCB0aGlzLm11bHRpcGxlTW9kZSAhPT0gJ3BlcnNpc3RlbnQnIHx8IHRoaXMuZmlsZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRoaXMuZmlsZXMgPSBmaWxlQXJyYXk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmZpbGVzID0gZmlsZUFycmF5XG4gICAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAgIC8vIFJlbW92ZSBkdXBsaWNhdGVzXG4gICAgICAgICAgICAobmV3RmlsZTogUmVhZG9ubHk8RmlsZT4pOiBib29sZWFuID0+XG4gICAgICAgICAgICAgIHRoaXMuZmlsZXMhLmZpbmRJbmRleCgob2xkRmlsZTogUmVhZG9ubHk8RmlsZT4pID0+XG4gICAgICAgICAgICAgICAgdGhpcy5fY2hlY2tGaWxlRXF1YWxpdHkobmV3RmlsZSwgb2xkRmlsZSksXG4gICAgICAgICAgICAgICkgPT09IC0xLFxuICAgICAgICAgIClcbiAgICAgICAgICAuY29uY2F0KHRoaXMuZmlsZXMpO1xuICAgICAgfVxuICAgICAgdGhpcy5fdXBkYXRlQTExeUxpdmVSZWdpb24oKTtcbiAgICAgIHRoaXMuX2Rpc3BhdGNoRmlsZUNoYW5nZWRFdmVudCgpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXRCdXR0b25MYWJlbCgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMubXVsdGlwbGVcbiAgICAgICAgPyBpMThuRmlsZVNlbGVjdG9yQnV0dG9uTGFiZWxNdWx0aXBsZVt0aGlzLmxhbmd1YWdlLmN1cnJlbnRdXG4gICAgICAgIDogaTE4bkZpbGVTZWxlY3RvckJ1dHRvbkxhYmVsW3RoaXMubGFuZ3VhZ2UuY3VycmVudF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfcmVtb3ZlRmlsZShmaWxlOiBSZWFkb25seTxGaWxlPik6IHZvaWQge1xuICAgICAgdGhpcy5maWxlcyA9IHRoaXMuZmlsZXMuZmlsdGVyKChmOiBSZWFkb25seTxGaWxlPikgPT4gIXRoaXMuX2NoZWNrRmlsZUVxdWFsaXR5KGZpbGUsIGYpKTtcbiAgICAgIHRoaXMuX3VwZGF0ZUExMXlMaXZlUmVnaW9uKCk7XG5cbiAgICAgIC8vIERpc3BhdGNoIG5hdGl2ZSBldmVudHMgYXMgaWYgdGhlIHJlc2V0IGlzIGRvbmUgdmlhIHRoZSBmaWxlIHNlbGVjdGlvbiB3aW5kb3cuXG4gICAgICAvKiogVGhlIGlucHV0IGV2ZW50IGZpcmVzIHdoZW4gdGhlIHZhbHVlIGhhcyBiZWVuIGNoYW5nZWQgYXMgYSBkaXJlY3QgcmVzdWx0IG9mIGEgdXNlciBhY3Rpb24uICovXG4gICAgICB0aGlzLmRpc3BhdGNoRXZlbnQoXG4gICAgICAgIG5ldyBJbnB1dEV2ZW50KCdpbnB1dCcsIHtcbiAgICAgICAgICBidWJibGVzOiB0cnVlLFxuICAgICAgICAgIGNvbXBvc2VkOiB0cnVlLFxuICAgICAgICB9KSxcbiAgICAgICk7XG5cbiAgICAgIC8qKlxuICAgICAgICogVGhlIGNoYW5nZSBldmVudCBpcyBmaXJlZCB3aGVuIHRoZSB1c2VyIG1vZGlmaWVzIHRoZSBlbGVtZW50J3MgdmFsdWUuXG4gICAgICAgKiBVbmxpa2UgdGhlIGlucHV0IGV2ZW50LCB0aGUgY2hhbmdlIGV2ZW50IGlzIG5vdCBuZWNlc3NhcmlseSBmaXJlZFxuICAgICAgICogZm9yIGVhY2ggYWx0ZXJhdGlvbiB0byBhbiBlbGVtZW50J3MgdmFsdWUuXG4gICAgICAgKi9cbiAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NoYW5nZScsIHsgYnViYmxlczogdHJ1ZSB9KSk7XG4gICAgICB0aGlzLl9kaXNwYXRjaEZpbGVDaGFuZ2VkRXZlbnQoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9kaXNwYXRjaEZpbGVDaGFuZ2VkRXZlbnQoKTogdm9pZCB7XG4gICAgICAvKipcbiAgICAgICAqIEB0eXBlIHtDdXN0b21FdmVudDxSZWFkb25seTxGaWxlPltdPn1cbiAgICAgICAqIEFuIGV2ZW50IHdoaWNoIGlzIGVtaXR0ZWQgZWFjaCB0aW1lIHRoZSBmaWxlIGxpc3QgY2hhbmdlcy5cbiAgICAgICAqL1xuICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50KFxuICAgICAgICBuZXcgQ3VzdG9tRXZlbnQ8UmVhZG9ubHk8RmlsZT5bXT4oJ2ZpbGVjaGFuZ2VkJywge1xuICAgICAgICAgIGJ1YmJsZXM6IHRydWUsXG4gICAgICAgICAgY29tcG9zZWQ6IHRydWUsXG4gICAgICAgICAgZGV0YWlsOiB0aGlzLmZpbGVzLFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqIENhbGN1bGF0ZXMgdGhlIGNvcnJlY3QgdW5pdCBmb3IgdGhlIGZpbGUncyBzaXplLiAqL1xuICAgIHByaXZhdGUgX2Zvcm1hdEZpbGVTaXplKHNpemU6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICBjb25zdCBpOiBudW1iZXIgPSBNYXRoLmZsb29yKE1hdGgubG9nKHNpemUpIC8gTWF0aC5sb2coMTAyNCkpO1xuICAgICAgcmV0dXJuIGAkeyhzaXplIC8gTWF0aC5wb3coMTAyNCwgaSkpLnRvRml4ZWQoMCl9ICR7dGhpcy5fc3VmZml4ZXNbaV19YDtcbiAgICB9XG5cbiAgICBwcml2YXRlIF91cGRhdGVBMTF5TGl2ZVJlZ2lvbigpOiB2b2lkIHtcbiAgICAgIHRoaXMuX2xpdmVSZWdpb24uaW5uZXJUZXh0ID0gaTE4bkZpbGVTZWxlY3RvckN1cnJlbnRseVNlbGVjdGVkKHRoaXMuZmlsZXMubWFwKChlKSA9PiBlLm5hbWUpKVtcbiAgICAgICAgdGhpcy5sYW5ndWFnZS5jdXJyZW50XG4gICAgICBdO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3JlbmRlckZpbGVMaXN0KCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICAgIGNvbnN0IFRBR19OQU1FOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID1cbiAgICAgICAgdGhpcy5maWxlcy5sZW5ndGggPiAxXG4gICAgICAgICAgPyB7IFdSQVBQRVI6ICd1bCcsIEVMRU1FTlQ6ICdsaScgfVxuICAgICAgICAgIDogeyBXUkFQUEVSOiAnZGl2JywgRUxFTUVOVDogJ3NwYW4nIH07XG5cbiAgICAgIC8qIGVzbGludC1kaXNhYmxlIGxpdC9iaW5kaW5nLXBvc2l0aW9ucyAqL1xuICAgICAgcmV0dXJuIGh0bWxgXG4gICAgICA8JHt1bnNhZmVTdGF0aWMoVEFHX05BTUUuV1JBUFBFUil9IGNsYXNzPSdzYmItZmlsZS1zZWxlY3Rvcl9fZmlsZS1saXN0Jz5cbiAgICAgICAgJHt0aGlzLmZpbGVzLm1hcChcbiAgICAgICAgICAoZmlsZTogUmVhZG9ubHk8RmlsZT4pID0+IGh0bWxgXG4gICAgICAgICAgICA8JHt1bnNhZmVTdGF0aWMoVEFHX05BTUUuRUxFTUVOVCl9IGNsYXNzPSdzYmItZmlsZS1zZWxlY3Rvcl9fZmlsZSc+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9J3NiYi1maWxlLXNlbGVjdG9yX19maWxlLWRldGFpbHMnPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9J3NiYi1maWxlLXNlbGVjdG9yX19maWxlLW5hbWUnPiR7ZmlsZS5uYW1lfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSdzYmItZmlsZS1zZWxlY3Rvcl9fZmlsZS1zaXplJz4ke3RoaXMuX2Zvcm1hdEZpbGVTaXplKGZpbGUuc2l6ZSl9PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNiYi1zZWNvbmRhcnktYnV0dG9uXG4gICAgICAgICAgICAgICAgc2l6ZT0nJHt0aGlzLnNpemV9J1xuICAgICAgICAgICAgICAgIGljb24tbmFtZT0ndHJhc2gtc21hbGwnXG4gICAgICAgICAgICAgICAgQGNsaWNrPSckeygpID0+IHRoaXMuX3JlbW92ZUZpbGUoZmlsZSl9J1xuICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9JyR7YCR7aTE4bkZpbGVTZWxlY3RvckRlbGV0ZUZpbGVbdGhpcy5sYW5ndWFnZS5jdXJyZW50XX0gLSAke2ZpbGUubmFtZX1gfSdcbiAgICAgICAgICAgICAgPjwvc2JiLXNlY29uZGFyeS1idXR0b24+XG4gICAgICAgICAgICA8LyR7dW5zYWZlU3RhdGljKFRBR19OQU1FLkVMRU1FTlQpfT5gLFxuICAgICAgICApfVxuICAgICAgPC8ke3Vuc2FmZVN0YXRpYyhUQUdfTkFNRS5XUkFQUEVSKX0+XG4gICAgYDtcbiAgICAgIC8qIGVzbGludC1lbmFibGUgbGl0L2JpbmRpbmctcG9zaXRpb25zICovXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfb25EcmFnRW50ZXIoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgICAgdGhpcy5fY291bnRlcisrO1xuICAgICAgaWYgKCF0aGlzLmRpc2FibGVkICYmICF0aGlzLmZvcm1EaXNhYmxlZCkge1xuICAgICAgICB0aGlzLl9zZXREcmFnU3RhdGUoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50LCB0cnVlKTtcbiAgICAgICAgdGhpcy5fYmxvY2tFdmVudChldmVudCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfb25EcmFnTGVhdmUoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgICAgdGhpcy5fY291bnRlci0tO1xuICAgICAgaWYgKFxuICAgICAgICAhdGhpcy5kaXNhYmxlZCAmJlxuICAgICAgICAhdGhpcy5mb3JtRGlzYWJsZWQgJiZcbiAgICAgICAgZXZlbnQudGFyZ2V0ID09PSB0aGlzLl9kcmFnVGFyZ2V0ICYmXG4gICAgICAgIHRoaXMuX2NvdW50ZXIgPT09IDBcbiAgICAgICkge1xuICAgICAgICB0aGlzLl9zZXREcmFnU3RhdGUoKTtcbiAgICAgICAgdGhpcy5fYmxvY2tFdmVudChldmVudCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfb25GaWxlRHJvcChldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgICB0aGlzLl9jb3VudGVyID0gMDtcbiAgICAgIGlmICghdGhpcy5kaXNhYmxlZCAmJiAhdGhpcy5mb3JtRGlzYWJsZWQpIHtcbiAgICAgICAgdGhpcy5fc2V0RHJhZ1N0YXRlKCk7XG4gICAgICAgIHRoaXMuX2Jsb2NrRXZlbnQoZXZlbnQpO1xuICAgICAgICB0aGlzLmNyZWF0ZUZpbGVMaXN0KGV2ZW50LmRhdGFUcmFuc2ZlciEuZmlsZXMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgX2Jsb2NrRXZlbnQoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3NldERyYWdTdGF0ZShcbiAgICAgIGRyYWdUYXJnZXQ6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkLFxuICAgICAgaXNEcmFnRW50ZXI6IGJvb2xlYW4gPSBmYWxzZSxcbiAgICApOiB2b2lkIHtcbiAgICAgIHRoaXMuX2RyYWdUYXJnZXQgPSBkcmFnVGFyZ2V0O1xuICAgICAgdGhpcy50b2dnbGVTdGF0ZSgnYWN0aXZlJywgaXNEcmFnRW50ZXIpO1xuICAgICAgdGhpcy5sb2FkQnV0dG9uLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1hY3RpdmUnLCBpc0RyYWdFbnRlcik7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgICBjb25zdCBhcmlhTGFiZWwgPSB0aGlzLmFjY2Vzc2liaWxpdHlMYWJlbFxuICAgICAgICA/IGAke3RoaXMuZ2V0QnV0dG9uTGFiZWwoKX0gLSAke3RoaXMuYWNjZXNzaWJpbGl0eUxhYmVsfWBcbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICByZXR1cm4gaHRtbGBcbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yXCI+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9faW5wdXQtY29udGFpbmVyXCJcbiAgICAgICAgICAgIEBkcmFnZW50ZXI9JHt0aGlzLl9vbkRyYWdFbnRlcn1cbiAgICAgICAgICAgIEBkcmFnb3Zlcj0ke3RoaXMuX2Jsb2NrRXZlbnR9XG4gICAgICAgICAgICBAZHJhZ2xlYXZlPSR7dGhpcy5fb25EcmFnTGVhdmV9XG4gICAgICAgICAgICBAZHJvcD0ke3RoaXMuX29uRmlsZURyb3B9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgJHt0aGlzLnJlbmRlclRlbXBsYXRlKFxuICAgICAgICAgICAgICBodG1sYDxpbnB1dFxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLWZpbGUtc2VsZWN0b3JfX3Zpc3VhbGx5LWhpZGRlblwiXG4gICAgICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgICAgICAgID9kaXNhYmxlZD1cIiR7dGhpcy5kaXNhYmxlZCB8fCB0aGlzLmZvcm1EaXNhYmxlZH1cIlxuICAgICAgICAgICAgICAgID9tdWx0aXBsZT1cIiR7dGhpcy5tdWx0aXBsZX1cIlxuICAgICAgICAgICAgICAgIGFjY2VwdD1cIiR7dGhpcy5hY2NlcHQgfHwgbm90aGluZ31cIlxuICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCIke2FyaWFMYWJlbCB8fCBub3RoaW5nfVwiXG4gICAgICAgICAgICAgICAgQGNoYW5nZT1cIiR7dGhpcy5fcmVhZEZpbGVzfVwiXG4gICAgICAgICAgICAgICAgQGZvY3VzPVwiJHt0aGlzLl9vbkZvY3VzfVwiXG4gICAgICAgICAgICAgICAgQGJsdXI9XCIke3RoaXMuX29uQmx1cn1cIlxuICAgICAgICAgICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuX2hpZGRlbklucHV0ID0gZWwgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgLz5gLFxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8cFxuICAgICAgICAgICAgcm9sZT1cInN0YXR1c1wiXG4gICAgICAgICAgICBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yX192aXN1YWxseS1oaWRkZW5cIlxuICAgICAgICAgICAgJHtyZWYoKHA/OiBFbGVtZW50KSA9PiAodGhpcy5fbGl2ZVJlZ2lvbiA9IHAgYXMgSFRNTFBhcmFncmFwaEVsZW1lbnQpKX1cbiAgICAgICAgICA+PC9wPlxuICAgICAgICAgICR7dGhpcy5maWxlcy5sZW5ndGggPiAwID8gdGhpcy5fcmVuZGVyRmlsZUxpc3QoKSA6IG5vdGhpbmd9XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1maWxlLXNlbGVjdG9yX19lcnJvclwiPlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cImVycm9yXCI+PC9zbG90PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIGA7XG4gICAgfVxuICB9XG4gIHJldHVybiBTYmJGaWxlU2VsZWN0b3JDb21tb25FbGVtZW50IGFzIHVua25vd24gYXMgQ29uc3RydWN0b3I8U2JiRmlsZVNlbGVjdG9yQ29tbW9uRWxlbWVudE1peGluVHlwZT4gJlxuICAgIFQ7XG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBa0RPLE1BQU0sb0NBQW9DLENBQy9DLGVBQzBEO01BQzNDLGdDQUE0QixNQUFBOztzQkFDakMsaUJBQWlCLHVCQUF1Qix5QkFBeUIsVUFBVSxDQUFDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFEeEUsV0FBQSxtQkFDTCxZQUE4RTtBQUFBOztBQVd6RDtBQUs3QjtBQUlBO0FBS0E7QUFLQTtBQW5CNkMsMkJBQUEseUJBWmhDLGtCQUFBLE1BQUEsMEJBQUEsR0FBNEIsa0JBQUEsTUFBQSxvQkFZc0IsT0FBQSxJQUFXLE1BQU0sR0FBRztBQUtuRSwyQkFBQSw2QkFBQSxrQkFBQSxNQUFBLHVCQUFBLEdBQUEsa0JBQUEsTUFBQSx3QkFBb0IsS0FBSztBQUl6QiwyQkFBQSxpQ0FBQSxrQkFBQSxNQUFBLDJCQUFBLEdBQUEsa0JBQUEsTUFBQSw0QkFBeUMsU0FBUztB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
@@ -1,5 +1,5 @@
1
1
  import { SbbFileSelectorCommonElementMixin } from "./common/file-selector-common.js";
2
- import { f } from "../file-selector-common-csww18o8.js";
2
+ import { f } from "../file-selector-common-BxXdRZxt.js";
3
3
  export {
4
4
  SbbFileSelectorCommonElementMixin,
5
5
  f as fileSelectorCommonStyle
@@ -1 +1 @@
1
- {"version":3,"file":"file-selector.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/file-selector/file-selector/file-selector.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAU3E,OAAO,kCAAkC,CAAC;AAC1C,OAAO,yCAAyC,CAAC;AACjD,OAAO,eAAe,CAAC;;AAEvB;;;;GAIG;AACH,qBAGM,sBAAuB,SAAQ,2BAA6C;IAChF,OAAuB,MAAM,EAAE,cAAc,CAA2B;IACxE,gBAAuB,MAAM;;MAElB;cAEQ,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc;CAmBzE;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,mBAAmB,EAAE,sBAAsB,CAAC;KAC7C;CACF"}
1
+ {"version":3,"file":"file-selector.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/file-selector/file-selector/file-selector.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAS3E,OAAO,yCAAyC,CAAC;;AAEjD;;;;GAIG;AACH,qBAGM,sBAAuB,SAAQ,2BAA6C;IAChF,OAAuB,MAAM,EAAE,cAAc,CAA2B;IACxE,gBAAuB,MAAM;;MAElB;cAEQ,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc;CAiBzE;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,mBAAmB,EAAE,sBAAsB,CAAC;KAC7C;CACF"}
@@ -4,11 +4,8 @@ import { customElement } from "lit/decorators.js";
4
4
  import { ref } from "lit/directives/ref.js";
5
5
  import { html } from "lit/static-html.js";
6
6
  import { slotState } from "../../core/decorators.js";
7
- import { i18nFileSelectorButtonLabel } from "../../core/i18n.js";
8
7
  import { SbbFileSelectorCommonElementMixin, fileSelectorCommonStyle } from "../common.js";
9
- import "../../button/secondary-button.js";
10
8
  import "../../button/secondary-button-static.js";
11
- import "../../icon.js";
12
9
  let SbbFileSelectorElement = (() => {
13
10
  var _a;
14
11
  let _classDecorators = [customElement("sbb-file-selector"), slotState()];
@@ -19,21 +16,19 @@ let SbbFileSelectorElement = (() => {
19
16
  _a = class extends _classSuper {
20
17
  renderTemplate(input) {
21
18
  return html`
22
- <div class="sbb-file-selector__input-container">
23
- <label>
24
- <sbb-secondary-button-static
25
- size=${this.size}
26
- icon-name="folder-open-small"
27
- ?disabled=${this.disabled || this.formDisabled}
28
- ${ref((el) => {
19
+ <label>
20
+ <sbb-secondary-button-static
21
+ size=${this.size}
22
+ icon-name="folder-open-small"
23
+ ?disabled=${this.disabled || this.formDisabled}
24
+ ${ref((el) => {
29
25
  this.loadButton = el;
30
26
  })}
31
- >
32
- ${i18nFileSelectorButtonLabel[this.language.current]}
33
- </sbb-secondary-button-static>
34
- ${input}
35
- </label>
36
- </div>
27
+ >
28
+ ${this.getButtonLabel()}
29
+ </sbb-secondary-button-static>
30
+ ${input}
31
+ </label>
37
32
  `;
38
33
  }
39
34
  }, _classThis = _a, (() => {
@@ -49,4 +44,4 @@ let SbbFileSelectorElement = (() => {
49
44
  export {
50
45
  SbbFileSelectorElement
51
46
  };
52
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9maWxlLXNlbGVjdG9yL2ZpbGUtc2VsZWN0b3IvZmlsZS1zZWxlY3Rvci5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBDU1NSZXN1bHRHcm91cCwgTGl0RWxlbWVudCwgdHlwZSBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgcmVmIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvcmVmLmpzJztcbmltcG9ydCB7IGh0bWwgfSBmcm9tICdsaXQvc3RhdGljLWh0bWwuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYlNlY29uZGFyeUJ1dHRvblN0YXRpY0VsZW1lbnQgfSBmcm9tICcuLi8uLi9idXR0b24uanMnO1xuaW1wb3J0IHsgc2xvdFN0YXRlIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGkxOG5GaWxlU2VsZWN0b3JCdXR0b25MYWJlbCB9IGZyb20gJy4uLy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgeyBmaWxlU2VsZWN0b3JDb21tb25TdHlsZSwgU2JiRmlsZVNlbGVjdG9yQ29tbW9uRWxlbWVudE1peGluIH0gZnJvbSAnLi4vY29tbW9uLmpzJztcblxuaW1wb3J0ICcuLi8uLi9idXR0b24vc2Vjb25kYXJ5LWJ1dHRvbi5qcyc7XG5pbXBvcnQgJy4uLy4uL2J1dHRvbi9zZWNvbmRhcnktYnV0dG9uLXN0YXRpYy5qcyc7XG5pbXBvcnQgJy4uLy4uL2ljb24uanMnO1xuXG4vKipcbiAqIEl0IGFsbG93cyB0byBzZWxlY3Qgb25lIG9yIG1vcmUgZmlsZSBmcm9tIHN0b3JhZ2UgZGV2aWNlcyBhbmQgZGlzcGxheSB0aGVtLlxuICpcbiAqIEBzbG90IGVycm9yIC0gVXNlIHRoaXMgdG8gcHJvdmlkZSBhIGBzYmItZm9ybS1lcnJvcmAgdG8gc2hvdyBhbiBlcnJvciBtZXNzYWdlLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItZmlsZS1zZWxlY3RvcicpXG5Ac2xvdFN0YXRlKClcbmNsYXNzIFNiYkZpbGVTZWxlY3RvckVsZW1lbnQgZXh0ZW5kcyBTYmJGaWxlU2VsZWN0b3JDb21tb25FbGVtZW50TWl4aW4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBmaWxlU2VsZWN0b3JDb21tb25TdHlsZTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgZmlsZWNoYW5nZWQ6ICdmaWxlY2hhbmdlZCcsXG4gIH0gYXMgY29uc3Q7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlclRlbXBsYXRlKGlucHV0OiBUZW1wbGF0ZVJlc3VsdCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItZmlsZS1zZWxlY3Rvcl9faW5wdXQtY29udGFpbmVyXCI+XG4gICAgICAgIDxsYWJlbD5cbiAgICAgICAgICA8c2JiLXNlY29uZGFyeS1idXR0b24tc3RhdGljXG4gICAgICAgICAgICBzaXplPSR7dGhpcy5zaXplfVxuICAgICAgICAgICAgaWNvbi1uYW1lPVwiZm9sZGVyLW9wZW4tc21hbGxcIlxuICAgICAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5kaXNhYmxlZCB8fCB0aGlzLmZvcm1EaXNhYmxlZH1cbiAgICAgICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5sb2FkQnV0dG9uID0gZWwgYXMgU2JiU2Vjb25kYXJ5QnV0dG9uU3RhdGljRWxlbWVudDtcbiAgICAgICAgICAgIH0pfVxuICAgICAgICAgID5cbiAgICAgICAgICAgICR7aTE4bkZpbGVTZWxlY3RvckJ1dHRvbkxhYmVsW3RoaXMubGFuZ3VhZ2UuY3VycmVudF19XG4gICAgICAgICAgPC9zYmItc2Vjb25kYXJ5LWJ1dHRvbi1zdGF0aWM+XG4gICAgICAgICAgJHtpbnB1dH1cbiAgICAgICAgPC9sYWJlbD5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1maWxlLXNlbGVjdG9yJzogU2JiRmlsZVNlbGVjdG9yRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0lBc0JNLDBCQUFzQixNQUFBOztBQUYzQixNQUFBLG1CQUFBLENBQUEsY0FBYyxtQkFBbUIsR0FDakMsV0FBVzs7OztvQkFDeUIsa0NBQWtDLFVBQVU7QUFBcEQsRUFBQSxtQkFBUSxZQUE2QztBQUFBLElBTTdELGVBQWUsT0FBcUI7QUFDckQsYUFBTztBQUFBO0FBQUE7QUFBQTtBQUFBLG1CQUlRLEtBQUssSUFBSTtBQUFBO0FBQUEsd0JBRUosS0FBSyxZQUFZLEtBQUssWUFBWTtBQUFBLGNBQzVDLElBQUksQ0FBQyxPQUFzQjtBQUMzQixhQUFLLGFBQWE7QUFBQSxNQUNwQixDQUFDLENBQUM7QUFBQTtBQUFBLGNBRUEsNEJBQTRCLEtBQUssU0FBUyxPQUFPLENBQUM7QUFBQTtBQUFBLFlBRXBELEtBQUs7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQUlmO0FBQUE7O0FBeEJGLGlCQUFBLE1BQUEsbUJBQUEsRUFBQSxPQUFBLFdBQUEsR0FBQSxrQkFBQSxFQUFBLE1BQUEsU0FBQSxNQUFBLFdBQUEsTUFBQSxVQUFBLFVBQUEsR0FBQSxNQUFBLHVCQUFBOzs7UUFDeUIsR0FBQSxTQUF5Qix5QkFDekIsR0FBQSxTQUFTO0FBQUEsSUFDOUIsYUFBYTtBQUFBLEVBQUEsR0FIWCxrQkFBQSxZQUFBLHVCQUFBLEdBQXVCOzs7In0=
47
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9maWxlLXNlbGVjdG9yL2ZpbGUtc2VsZWN0b3IvZmlsZS1zZWxlY3Rvci5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBDU1NSZXN1bHRHcm91cCwgTGl0RWxlbWVudCwgdHlwZSBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgcmVmIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvcmVmLmpzJztcbmltcG9ydCB7IGh0bWwgfSBmcm9tICdsaXQvc3RhdGljLWh0bWwuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYlNlY29uZGFyeUJ1dHRvblN0YXRpY0VsZW1lbnQgfSBmcm9tICcuLi8uLi9idXR0b24uanMnO1xuaW1wb3J0IHsgc2xvdFN0YXRlIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGZpbGVTZWxlY3RvckNvbW1vblN0eWxlLCBTYmJGaWxlU2VsZWN0b3JDb21tb25FbGVtZW50TWl4aW4gfSBmcm9tICcuLi9jb21tb24uanMnO1xuXG5pbXBvcnQgJy4uLy4uL2J1dHRvbi9zZWNvbmRhcnktYnV0dG9uLXN0YXRpYy5qcyc7XG5cbi8qKlxuICogSXQgYWxsb3dzIHRvIHNlbGVjdCBvbmUgb3IgbW9yZSBmaWxlIGZyb20gc3RvcmFnZSBkZXZpY2VzIGFuZCBkaXNwbGF5IHRoZW0uXG4gKlxuICogQHNsb3QgZXJyb3IgLSBVc2UgdGhpcyB0byBwcm92aWRlIGEgYHNiYi1mb3JtLWVycm9yYCB0byBzaG93IGFuIGVycm9yIG1lc3NhZ2UuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1maWxlLXNlbGVjdG9yJylcbkBzbG90U3RhdGUoKVxuY2xhc3MgU2JiRmlsZVNlbGVjdG9yRWxlbWVudCBleHRlbmRzIFNiYkZpbGVTZWxlY3RvckNvbW1vbkVsZW1lbnRNaXhpbihMaXRFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IGZpbGVTZWxlY3RvckNvbW1vblN0eWxlO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBmaWxlY2hhbmdlZDogJ2ZpbGVjaGFuZ2VkJyxcbiAgfSBhcyBjb25zdDtcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyVGVtcGxhdGUoaW5wdXQ6IFRlbXBsYXRlUmVzdWx0KTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGxhYmVsPlxuICAgICAgICA8c2JiLXNlY29uZGFyeS1idXR0b24tc3RhdGljXG4gICAgICAgICAgc2l6ZT0ke3RoaXMuc2l6ZX1cbiAgICAgICAgICBpY29uLW5hbWU9XCJmb2xkZXItb3Blbi1zbWFsbFwiXG4gICAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5kaXNhYmxlZCB8fCB0aGlzLmZvcm1EaXNhYmxlZH1cbiAgICAgICAgICAke3JlZigoZWw/OiBFbGVtZW50KTogdm9pZCA9PiB7XG4gICAgICAgICAgICB0aGlzLmxvYWRCdXR0b24gPSBlbCBhcyBTYmJTZWNvbmRhcnlCdXR0b25TdGF0aWNFbGVtZW50O1xuICAgICAgICAgIH0pfVxuICAgICAgICA+XG4gICAgICAgICAgJHt0aGlzLmdldEJ1dHRvbkxhYmVsKCl9XG4gICAgICAgIDwvc2JiLXNlY29uZGFyeS1idXR0b24tc3RhdGljPlxuICAgICAgICAke2lucHV0fVxuICAgICAgPC9sYWJlbD5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItZmlsZS1zZWxlY3Rvcic6IFNiYkZpbGVTZWxlY3RvckVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQW1CTSwwQkFBc0IsTUFBQTs7QUFGM0IsTUFBQSxtQkFBQSxDQUFBLGNBQWMsbUJBQW1CLEdBQ2pDLFdBQVc7Ozs7b0JBQ3lCLGtDQUFrQyxVQUFVO0FBQXBELEVBQUEsbUJBQVEsWUFBNkM7QUFBQSxJQU03RCxlQUFlLE9BQXFCO0FBQ3JELGFBQU87QUFBQTtBQUFBO0FBQUEsaUJBR00sS0FBSyxJQUFJO0FBQUE7QUFBQSxzQkFFSixLQUFLLFlBQVksS0FBSyxZQUFZO0FBQUEsWUFDNUMsSUFBSSxDQUFDLE9BQXNCO0FBQzNCLGFBQUssYUFBYTtBQUFBLE1BQ3BCLENBQUMsQ0FBQztBQUFBO0FBQUEsWUFFQSxLQUFLLGdCQUFnQjtBQUFBO0FBQUEsVUFFdkIsS0FBSztBQUFBO0FBQUE7QUFBQSxJQUdiO0FBQUE7O0FBdEJGLGlCQUFBLE1BQUEsbUJBQUEsRUFBQSxPQUFBLFdBQUEsR0FBQSxrQkFBQSxFQUFBLE1BQUEsU0FBQSxNQUFBLFdBQUEsTUFBQSxVQUFBLFVBQUEsR0FBQSxNQUFBLHVCQUFBOzs7UUFDeUIsR0FBQSxTQUF5Qix5QkFDekIsR0FBQSxTQUFTO0FBQUEsSUFDOUIsYUFBYTtBQUFBLEVBQUEsR0FIWCxrQkFBQSxZQUFBLHVCQUFBLEdBQXVCOzs7In0=
@@ -12,13 +12,6 @@ export declare class SbbFileSelectorDropzoneElement extends SbbFileSelectorDropz
12
12
  };
13
13
  /** The title displayed in `dropzone` variant. */
14
14
  accessor titleContent: string;
15
- private _counter;
16
- private _dragTarget?;
17
- private _blockEvent;
18
- private _onDragEnter;
19
- private _onDragLeave;
20
- private _onFileDrop;
21
- private _setDragState;
22
15
  protected renderTemplate(input: TemplateResult): TemplateResult;
23
16
  }
24
17
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"file-selector-dropzone.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/file-selector/file-selector-dropzone/file-selector-dropzone.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAU3E,OAAO,kCAAkC,CAAC;AAC1C,OAAO,yCAAyC,CAAC;AACjD,OAAO,eAAe,CAAC;;AAIvB;;;;GAIG;AACH,qBAGM,8BAA+B,SAAQ,mCAA6C;IACxF,OAAuB,MAAM,EAAE,cAAc,CAAoC;IACjF,gBAAuB,MAAM;;MAElB;IAEX,iDAAiD;IACjD,SAEgB,YAAY,EAAE,MAAM,CAAM;IAI1C,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,WAAW,CAAC,CAAc;IAElC,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,aAAa;cASF,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc;CAqCzE;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,4BAA4B,EAAE,8BAA8B,CAAC;KAC9D;CACF"}
1
+ {"version":3,"file":"file-selector-dropzone.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/file-selector/file-selector-dropzone/file-selector-dropzone.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAa3E,OAAO,yCAAyC,CAAC;AACjD,OAAO,eAAe,CAAC;;AAIvB;;;;GAIG;AACH,qBAGM,8BAA+B,SAAQ,mCAA6C;IACxF,OAAuB,MAAM,EAAE,cAAc,CAAoC;IACjF,gBAAuB,MAAM;;MAElB;IAEX,iDAAiD;IACjD,SAEgB,YAAY,EAAE,MAAM,CAAM;cAEvB,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc;CA+BzE;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,4BAA4B,EAAE,8BAA8B,CAAC;KAC9D;CACF"}