@fundamental-ngx/core 0.58.0-rc.7 → 0.58.0-rc.70

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 (124) hide show
  1. package/button/index.d.ts +1 -1
  2. package/card/index.d.ts +8 -4
  3. package/combobox/index.d.ts +9 -1
  4. package/dialog/index.d.ts +2 -2
  5. package/feed-input/index.d.ts +1 -1
  6. package/fesm2022/fundamental-ngx-core-action-sheet.mjs +4 -4
  7. package/fesm2022/fundamental-ngx-core-action-sheet.mjs.map +1 -1
  8. package/fesm2022/fundamental-ngx-core-avatar.mjs +2 -2
  9. package/fesm2022/fundamental-ngx-core-avatar.mjs.map +1 -1
  10. package/fesm2022/fundamental-ngx-core-button.mjs.map +1 -1
  11. package/fesm2022/fundamental-ngx-core-card.mjs.map +1 -1
  12. package/fesm2022/fundamental-ngx-core-combobox.mjs +44 -8
  13. package/fesm2022/fundamental-ngx-core-combobox.mjs.map +1 -1
  14. package/fesm2022/fundamental-ngx-core-datetime.mjs +1 -1
  15. package/fesm2022/fundamental-ngx-core-datetime.mjs.map +1 -1
  16. package/fesm2022/fundamental-ngx-core-dialog.mjs +2 -2
  17. package/fesm2022/fundamental-ngx-core-dialog.mjs.map +1 -1
  18. package/fesm2022/fundamental-ngx-core-feed-input.mjs +2 -2
  19. package/fesm2022/fundamental-ngx-core-feed-input.mjs.map +1 -1
  20. package/fesm2022/fundamental-ngx-core-flexible-column-layout.mjs +2 -2
  21. package/fesm2022/fundamental-ngx-core-flexible-column-layout.mjs.map +1 -1
  22. package/fesm2022/fundamental-ngx-core-form.mjs +2 -2
  23. package/fesm2022/fundamental-ngx-core-form.mjs.map +1 -1
  24. package/fesm2022/fundamental-ngx-core-illustrated-message.mjs +2 -2
  25. package/fesm2022/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
  26. package/fesm2022/fundamental-ngx-core-input-group.mjs.map +1 -1
  27. package/fesm2022/fundamental-ngx-core-list.mjs.map +1 -1
  28. package/fesm2022/fundamental-ngx-core-menu.mjs +2 -2
  29. package/fesm2022/fundamental-ngx-core-menu.mjs.map +1 -1
  30. package/fesm2022/fundamental-ngx-core-message-box.mjs.map +1 -1
  31. package/fesm2022/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  32. package/fesm2022/fundamental-ngx-core-multi-input.mjs +1 -2
  33. package/fesm2022/fundamental-ngx-core-multi-input.mjs.map +1 -1
  34. package/fesm2022/fundamental-ngx-core-nested-list.mjs +4 -4
  35. package/fesm2022/fundamental-ngx-core-nested-list.mjs.map +1 -1
  36. package/fesm2022/fundamental-ngx-core-notification.mjs +3 -1
  37. package/fesm2022/fundamental-ngx-core-notification.mjs.map +1 -1
  38. package/fesm2022/fundamental-ngx-core-object-status.mjs +2 -2
  39. package/fesm2022/fundamental-ngx-core-object-status.mjs.map +1 -1
  40. package/fesm2022/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
  41. package/fesm2022/fundamental-ngx-core-popover.mjs +2 -2
  42. package/fesm2022/fundamental-ngx-core-popover.mjs.map +1 -1
  43. package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs +2 -2
  44. package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs.map +1 -1
  45. package/fesm2022/fundamental-ngx-core-segmented-button.mjs +3 -3
  46. package/fesm2022/fundamental-ngx-core-segmented-button.mjs.map +1 -1
  47. package/fesm2022/fundamental-ngx-core-shellbar.mjs +32 -5
  48. package/fesm2022/fundamental-ngx-core-shellbar.mjs.map +1 -1
  49. package/fesm2022/fundamental-ngx-core-table.mjs +4 -4
  50. package/fesm2022/fundamental-ngx-core-table.mjs.map +1 -1
  51. package/fesm2022/fundamental-ngx-core-tabs.mjs.map +1 -1
  52. package/fesm2022/fundamental-ngx-core-theming.mjs +2 -3
  53. package/fesm2022/fundamental-ngx-core-theming.mjs.map +1 -1
  54. package/fesm2022/fundamental-ngx-core-time-picker.mjs.map +1 -1
  55. package/fesm2022/fundamental-ngx-core-time.mjs.map +1 -1
  56. package/fesm2022/fundamental-ngx-core-toolbar.mjs.map +1 -1
  57. package/fesm2022/fundamental-ngx-core-tree.mjs.map +1 -1
  58. package/fesm2022/fundamental-ngx-core-user-menu.mjs +2 -2
  59. package/fesm2022/fundamental-ngx-core-user-menu.mjs.map +1 -1
  60. package/form/index.d.ts +2 -2
  61. package/input-group/index.d.ts +1 -1
  62. package/list/index.d.ts +4 -4
  63. package/menu/index.d.ts +2 -2
  64. package/message-box/index.d.ts +1 -1
  65. package/multi-combobox/index.d.ts +2 -2
  66. package/multi-input/index.d.ts +1 -1
  67. package/nested-list/index.d.ts +11 -11
  68. package/notification/index.d.ts +2 -0
  69. package/overflow-layout/index.d.ts +4 -4
  70. package/package.json +19 -19
  71. package/popover/index.d.ts +2 -2
  72. package/segmented-button/index.d.ts +3 -3
  73. package/shellbar/index.d.ts +13 -2
  74. package/table/index.d.ts +2 -2
  75. package/tabs/index.d.ts +3 -3
  76. package/time/index.d.ts +1 -1
  77. package/time-picker/index.d.ts +1 -1
  78. package/toolbar/index.d.ts +1 -1
  79. package/tree/index.d.ts +3 -3
  80. package/schematics/add-animations/index.d.ts +0 -7
  81. package/schematics/add-animations/index.js +0 -83
  82. package/schematics/add-animations/index.js.map +0 -1
  83. package/schematics/add-animations/schema.json +0 -21
  84. package/schematics/add-dependencies/index.d.ts +0 -7
  85. package/schematics/add-dependencies/index.js +0 -105
  86. package/schematics/add-dependencies/index.js.map +0 -1
  87. package/schematics/add-dependencies/schema.json +0 -15
  88. package/schematics/add-styles/index.d.ts +0 -7
  89. package/schematics/add-styles/index.js +0 -97
  90. package/schematics/add-styles/index.js.map +0 -1
  91. package/schematics/add-styles/schema.json +0 -21
  92. package/schematics/add-theming/index.d.ts +0 -7
  93. package/schematics/add-theming/index.js +0 -108
  94. package/schematics/add-theming/index.js.map +0 -1
  95. package/schematics/add-theming/schema.json +0 -72
  96. package/schematics/collection.json +0 -40
  97. package/schematics/models/schema.d.ts +0 -6
  98. package/schematics/models/schema.js +0 -3
  99. package/schematics/models/schema.js.map +0 -1
  100. package/schematics/ng-add/index.d.ts +0 -9
  101. package/schematics/ng-add/index.js +0 -30
  102. package/schematics/ng-add/index.js.map +0 -1
  103. package/schematics/ng-add/schema.json +0 -84
  104. package/schematics/utils/calls-providers-function.d.ts +0 -11
  105. package/schematics/utils/calls-providers-function.js +0 -54
  106. package/schematics/utils/calls-providers-function.js.map +0 -1
  107. package/schematics/utils/file-utils.d.ts +0 -2
  108. package/schematics/utils/file-utils.js +0 -26
  109. package/schematics/utils/file-utils.js.map +0 -1
  110. package/schematics/utils/main-ts-file-path.d.ts +0 -2
  111. package/schematics/utils/main-ts-file-path.js +0 -27
  112. package/schematics/utils/main-ts-file-path.js.map +0 -1
  113. package/schematics/utils/ng-module-utils.d.ts +0 -6
  114. package/schematics/utils/ng-module-utils.js +0 -71
  115. package/schematics/utils/ng-module-utils.js.map +0 -1
  116. package/schematics/utils/one-time-packages.d.ts +0 -6
  117. package/schematics/utils/one-time-packages.js +0 -39
  118. package/schematics/utils/one-time-packages.js.map +0 -1
  119. package/schematics/utils/package-utils.d.ts +0 -10
  120. package/schematics/utils/package-utils.js +0 -25
  121. package/schematics/utils/package-utils.js.map +0 -1
  122. package/schematics/utils/workspace.d.ts +0 -40
  123. package/schematics/utils/workspace.js +0 -110
  124. package/schematics/utils/workspace.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-toolbar.mjs","sources":["../tmp-esm2022/toolbar/abstract-toolbar-item.class.js","../tmp-esm2022/toolbar/deprecated-toolbar-size.directive.js","../tmp-esm2022/toolbar/tokens.js","../tmp-esm2022/toolbar/toolbar-item.directive.js","../tmp-esm2022/toolbar/toolbar-form-label.directive.js","../tmp-esm2022/toolbar/toolbar-label.directive.js","../tmp-esm2022/toolbar/toolbar-overflow-button-menu.directive.js","../tmp-esm2022/toolbar/toolbar-overflow-button.directive.js","../tmp-esm2022/toolbar/toolbar-separator.component.js","../tmp-esm2022/toolbar/toolbar-spacer.directive.js","../tmp-esm2022/toolbar/toolbar.component.js","../tmp-esm2022/toolbar/toolbar.module.js","../tmp-esm2022/toolbar/fundamental-ngx-core-toolbar.js"],"sourcesContent":["export class ToolbarItem {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtdG9vbGJhci1pdGVtLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3Rvb2xiYXIvYWJzdHJhY3QtdG9vbGJhci1pdGVtLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBZ0IsV0FBVztDQU1oQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJmbG93UHJpb3JpdHkgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUb29sYmFySXRlbSB7XG4gICAgYWJzdHJhY3QgZWxlbWVudDogSFRNTEVsZW1lbnQ7XG4gICAgYWJzdHJhY3QgaXNTcGFjZXI6IGJvb2xlYW47XG4gICAgYWJzdHJhY3Qgd2lkdGg6IG51bWJlcjtcbiAgICBhYnN0cmFjdCBwcmlvcml0eTogT3ZlcmZsb3dQcmlvcml0eTtcbiAgICBhYnN0cmFjdCBncm91cDogbnVtYmVyO1xufVxuIl19","import { Directive, forwardRef, Input, isDevMode } from '@angular/core';\nimport { CONTENT_DENSITY_DIRECTIVE, ContentDensityMode } from '@fundamental-ngx/core/content-density';\nimport { BehaviorSubject } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class DeprecatedToolbarSizeDirective extends BehaviorSubject {\n /** Size of the toolbar. */\n set size(value) {\n switch (value) {\n case 'cozy':\n this.next(ContentDensityMode.COZY);\n break;\n case 'compact':\n this.next(ContentDensityMode.COMPACT);\n break;\n case 'condensed':\n this.next(ContentDensityMode.CONDENSED);\n break;\n default:\n this.next(ContentDensityMode.COMPACT);\n }\n }\n /** @hidden */\n constructor() {\n super(ContentDensityMode.COMPACT);\n /** @hidden */\n this.alternative = {\n name: 'Use [fdContentDensity] directive instead',\n link: ['/core', 'content-density']\n };\n this.message = `Usage of fd-toolbar[size] is deprecated`;\n if (isDevMode()) {\n console.warn(`${this.message}. Use [fdContentDensity] directive instead.`);\n }\n }\n /** @hidden */\n ngOnDestroy() {\n this.complete();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: DeprecatedToolbarSizeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: DeprecatedToolbarSizeDirective, isStandalone: true, selector: \"fd-toolbar[size]\", inputs: { size: \"size\" }, providers: [\n {\n provide: CONTENT_DENSITY_DIRECTIVE,\n useExisting: forwardRef(() => DeprecatedToolbarSizeDirective)\n }\n ], usesInheritance: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: DeprecatedToolbarSizeDirective, decorators: [{\n type: Directive,\n args: [{\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fd-toolbar[size]',\n providers: [\n {\n provide: CONTENT_DENSITY_DIRECTIVE,\n useExisting: forwardRef(() => DeprecatedToolbarSizeDirective)\n }\n ],\n standalone: true\n }]\n }], ctorParameters: () => [], propDecorators: { size: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjYXRlZC10b29sYmFyLXNpemUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3Rvb2xiYXIvZGVwcmVjYXRlZC10b29sYmFyLXNpemUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFbkYsT0FBTyxFQUNILHlCQUF5QixFQUN6QixrQkFBa0IsRUFFckIsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQWV2QyxNQUFNLE9BQU8sOEJBQ1QsU0FBUSxlQUF3QztJQUdoRCwyQkFBMkI7SUFDM0IsSUFDSSxJQUFJLENBQUMsS0FBa0I7UUFDdkIsUUFBUSxLQUFLLEVBQUUsQ0FBQztZQUNaLEtBQUssTUFBTTtnQkFDUCxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNuQyxNQUFNO1lBQ1YsS0FBSyxTQUFTO2dCQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3RDLE1BQU07WUFDVixLQUFLLFdBQVc7Z0JBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDeEMsTUFBTTtZQUNWO2dCQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUMsQ0FBQztJQUNMLENBQUM7SUFXRCxjQUFjO0lBQ2Q7UUFDSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFSdEMsY0FBYztRQUNMLGdCQUFXLEdBQUc7WUFDbkIsSUFBSSxFQUFFLDBDQUEwQztZQUNoRCxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUM7U0FDckMsQ0FBQztRQUtFLElBQUksQ0FBQyxPQUFPLEdBQUcseUNBQXlDLENBQUM7UUFDekQsSUFBSSxTQUFTLEVBQUUsRUFBRSxDQUFDO1lBQ2QsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLDZDQUE2QyxDQUFDLENBQUM7UUFDL0UsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ2QsV0FBVztRQUNQLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQixDQUFDOzhHQTNDUSw4QkFBOEI7a0dBQTlCLDhCQUE4Qix5RkFSNUI7WUFDUDtnQkFDSSxPQUFPLEVBQUUseUJBQXlCO2dCQUNsQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDhCQUE4QixDQUFDO2FBQ2hFO1NBQ0o7OzJGQUdRLDhCQUE4QjtrQkFYMUMsU0FBUzttQkFBQztvQkFDUCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUseUJBQXlCOzRCQUNsQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwrQkFBK0IsQ0FBQzt5QkFDaEU7cUJBQ0o7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ25CO3dEQU9PLElBQUk7c0JBRFAsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgZm9yd2FyZFJlZiwgSW5wdXQsIGlzRGV2TW9kZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2R1bGVEZXByZWNhdGlvbiB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7XG4gICAgQ09OVEVOVF9ERU5TSVRZX0RJUkVDVElWRSxcbiAgICBDb250ZW50RGVuc2l0eU1vZGUsXG4gICAgTG9jYWxDb250ZW50RGVuc2l0eU1vZGVcbn0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2NvbnRlbnQtZGVuc2l0eSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcblxudHlwZSBUb29sYmFyU2l6ZSA9ICdjb3p5JyB8ICdjb21wYWN0JyB8ICdjb25kZW5zZWQnIHwgbnVsbDtcblxuQERpcmVjdGl2ZSh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2ZkLXRvb2xiYXJbc2l6ZV0nLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBDT05URU5UX0RFTlNJVFlfRElSRUNUSVZFLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGVwcmVjYXRlZFRvb2xiYXJTaXplRGlyZWN0aXZlKVxuICAgICAgICB9XG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERlcHJlY2F0ZWRUb29sYmFyU2l6ZURpcmVjdGl2ZVxuICAgIGV4dGVuZHMgQmVoYXZpb3JTdWJqZWN0PExvY2FsQ29udGVudERlbnNpdHlNb2RlPlxuICAgIGltcGxlbWVudHMgT25EZXN0cm95LCBNb2R1bGVEZXByZWNhdGlvblxue1xuICAgIC8qKiBTaXplIG9mIHRoZSB0b29sYmFyLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHNpemUodmFsdWU6IFRvb2xiYXJTaXplKSB7XG4gICAgICAgIHN3aXRjaCAodmFsdWUpIHtcbiAgICAgICAgICAgIGNhc2UgJ2NvenknOlxuICAgICAgICAgICAgICAgIHRoaXMubmV4dChDb250ZW50RGVuc2l0eU1vZGUuQ09aWSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdjb21wYWN0JzpcbiAgICAgICAgICAgICAgICB0aGlzLm5leHQoQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1QpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnY29uZGVuc2VkJzpcbiAgICAgICAgICAgICAgICB0aGlzLm5leHQoQ29udGVudERlbnNpdHlNb2RlLkNPTkRFTlNFRCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRoaXMubmV4dChDb250ZW50RGVuc2l0eU1vZGUuQ09NUEFDVCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IG1lc3NhZ2U6IHN0cmluZztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgYWx0ZXJuYXRpdmUgPSB7XG4gICAgICAgIG5hbWU6ICdVc2UgW2ZkQ29udGVudERlbnNpdHldIGRpcmVjdGl2ZSBpbnN0ZWFkJyxcbiAgICAgICAgbGluazogWycvY29yZScsICdjb250ZW50LWRlbnNpdHknXVxuICAgIH07XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcihDb250ZW50RGVuc2l0eU1vZGUuQ09NUEFDVCk7XG4gICAgICAgIHRoaXMubWVzc2FnZSA9IGBVc2FnZSBvZiBmZC10b29sYmFyW3NpemVdIGlzIGRlcHJlY2F0ZWRgO1xuICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybihgJHt0aGlzLm1lc3NhZ2V9LiBVc2UgW2ZkQ29udGVudERlbnNpdHldIGRpcmVjdGl2ZSBpbnN0ZWFkLmApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb21wbGV0ZSgpO1xuICAgIH1cbn1cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const FD_TOOLBAR = new InjectionToken('FdToolbarComponent');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3Rvb2xiYXIvdG9rZW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLElBQUksY0FBYyxDQUFDLG9CQUFvQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgRkRfVE9PTEJBUiA9IG5ldyBJbmplY3Rpb25Ub2tlbignRmRUb29sYmFyQ29tcG9uZW50Jyk7XG4iXX0=","import { Directive, ElementRef, forwardRef, inject, Input } from '@angular/core';\nimport { ToolbarItem } from './abstract-toolbar-item.class';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarItemDirective {\n constructor() {\n /** The priority of the item. */\n this.fdOverflowPriority = \"high\" /* OverflowPriorityEnum.HIGH */;\n /** The group number of the item. */\n this.fdOverflowGroup = 0;\n /** @hidden */\n this.lastWidth = 0;\n /** @hidden */\n this._elementRef = inject(ElementRef);\n }\n /** @hidden */\n get group() {\n return this.fdOverflowGroup;\n }\n /** @hidden */\n get priority() {\n return this.fdOverflowPriority;\n }\n /** @hidden */\n get element() {\n return this._elementRef.nativeElement;\n }\n /** @hidden */\n get isSpacer() {\n return this.element.classList.contains('fd-toolbar__spacer');\n }\n /** @hidden */\n get width() {\n if (!this.element.clientWidth) {\n return this.lastWidth;\n }\n this.lastWidth = this.element.clientWidth + 8; // ELEMENT_MARGIN\n return this.lastWidth;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarItemDirective, isStandalone: true, selector: \"[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]\", inputs: { fdOverflowPriority: \"fdOverflowPriority\", fdOverflowGroup: \"fdOverflowGroup\" }, providers: [{ provide: ToolbarItem, useExisting: forwardRef(() => ToolbarItemDirective) }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarItemDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]',\n providers: [{ provide: ToolbarItem, useExisting: forwardRef(() => ToolbarItemDirective) }],\n standalone: true\n }]\n }], propDecorators: { fdOverflowPriority: [{\n type: Input\n }], fdOverflowGroup: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS90b29sYmFyL3Rvb2xiYXItaXRlbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQVE1RCxNQUFNLE9BQU8sb0JBQW9CO0lBTGpDO1FBTUksZ0NBQWdDO1FBRWhDLHVCQUFrQiwwQ0FBK0M7UUFDakUsb0NBQW9DO1FBRXBDLG9CQUFlLEdBQUcsQ0FBQyxDQUFDO1FBK0JwQixjQUFjO1FBQ04sY0FBUyxHQUFHLENBQUMsQ0FBQztRQUV0QixjQUFjO1FBQ0csZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7S0FDckQ7SUFsQ0csY0FBYztJQUNkLElBQUksS0FBSztRQUNMLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsY0FBYztJQUNkLElBQUksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDO0lBQ25DLENBQUM7SUFFRCxjQUFjO0lBQ2QsSUFBSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztJQUMxQyxDQUFDO0lBRUQsY0FBYztJQUNkLElBQUksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELGNBQWM7SUFDZCxJQUFJLEtBQUs7UUFDTCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUM1QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDMUIsQ0FBQztRQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUMsaUJBQWlCO1FBQ2hFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMxQixDQUFDOzhHQW5DUSxvQkFBb0I7a0dBQXBCLG9CQUFvQixtTUFIbEIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLENBQUM7OzJGQUdqRixvQkFBb0I7a0JBTGhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDREQUE0RDtvQkFDdEUsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHFCQUFxQixDQUFDLEVBQUUsQ0FBQztvQkFDMUYsVUFBVSxFQUFFLElBQUk7aUJBQ25COzhCQUlHLGtCQUFrQjtzQkFEakIsS0FBSztnQkFJTixlQUFlO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIGluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE92ZXJmbG93UHJpb3JpdHkgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBUb29sYmFySXRlbSB9IGZyb20gJy4vYWJzdHJhY3QtdG9vbGJhci1pdGVtLmNsYXNzJztcbmltcG9ydCB7IE92ZXJmbG93UHJpb3JpdHlFbnVtIH0gZnJvbSAnLi90b29sYmFyLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkLXRvb2xiYXItaXRlbV0sIFtmZE92ZXJmbG93R3JvdXBdLCBbZmRPdmVyZmxvd1ByaW9yaXR5XScsXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBUb29sYmFySXRlbSwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVG9vbGJhckl0ZW1EaXJlY3RpdmUpIH1dLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgVG9vbGJhckl0ZW1EaXJlY3RpdmUgaW1wbGVtZW50cyBUb29sYmFySXRlbSB7XG4gICAgLyoqIFRoZSBwcmlvcml0eSBvZiB0aGUgaXRlbS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGZkT3ZlcmZsb3dQcmlvcml0eTogT3ZlcmZsb3dQcmlvcml0eSA9IE92ZXJmbG93UHJpb3JpdHlFbnVtLkhJR0g7XG4gICAgLyoqIFRoZSBncm91cCBudW1iZXIgb2YgdGhlIGl0ZW0uICovXG4gICAgQElucHV0KClcbiAgICBmZE92ZXJmbG93R3JvdXAgPSAwO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgZ3JvdXAoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmRPdmVyZmxvd0dyb3VwO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IHByaW9yaXR5KCk6IE92ZXJmbG93UHJpb3JpdHkge1xuICAgICAgICByZXR1cm4gdGhpcy5mZE92ZXJmbG93UHJpb3JpdHk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgZWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgaXNTcGFjZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdmZC10b29sYmFyX19zcGFjZXInKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldCB3aWR0aCgpOiBudW1iZXIge1xuICAgICAgICBpZiAoIXRoaXMuZWxlbWVudC5jbGllbnRXaWR0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubGFzdFdpZHRoO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubGFzdFdpZHRoID0gdGhpcy5lbGVtZW50LmNsaWVudFdpZHRoICsgODsgLy8gRUxFTUVOVF9NQVJHSU5cbiAgICAgICAgcmV0dXJuIHRoaXMubGFzdFdpZHRoO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBsYXN0V2lkdGggPSAwO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xufVxuIl19","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarFormLabelDirective extends ToolbarItemDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarFormLabelDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarFormLabelDirective, isStandalone: true, selector: \"[fd-toolbar-form-label]\", host: { classAttribute: \"fd-form-label fd-toolbar__overflow-form-label fd-toolbar__overflow-form-label--text\" }, usesInheritance: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarFormLabelDirective, decorators: [{\n type: Directive,\n args: [{\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-toolbar-form-label]',\n host: {\n class: 'fd-form-label fd-toolbar__overflow-form-label fd-toolbar__overflow-form-label--text'\n },\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1mb3JtLWxhYmVsLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS90b29sYmFyL3Rvb2xiYXItZm9ybS1sYWJlbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFVaEUsTUFBTSxPQUFPLHlCQUEwQixTQUFRLG9CQUFvQjs4R0FBdEQseUJBQXlCO2tHQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBUnJDLFNBQVM7bUJBQUM7b0JBQ1AsOERBQThEO29CQUM5RCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLHFGQUFxRjtxQkFDL0Y7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb29sYmFySXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vdG9vbGJhci1pdGVtLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yXG4gICAgc2VsZWN0b3I6ICdbZmQtdG9vbGJhci1mb3JtLWxhYmVsXScsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZkLWZvcm0tbGFiZWwgZmQtdG9vbGJhcl9fb3ZlcmZsb3ctZm9ybS1sYWJlbCBmZC10b29sYmFyX19vdmVyZmxvdy1mb3JtLWxhYmVsLS10ZXh0J1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBUb29sYmFyRm9ybUxhYmVsRGlyZWN0aXZlIGV4dGVuZHMgVG9vbGJhckl0ZW1EaXJlY3RpdmUge31cbiJdfQ==","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarLabelDirective extends ToolbarItemDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarLabelDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarLabelDirective, isStandalone: true, selector: \"[fd-toolbar-label]\", host: { classAttribute: \"fd-label fd-toolbar__overflow-label\" }, usesInheritance: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarLabelDirective, decorators: [{\n type: Directive,\n args: [{\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-toolbar-label]',\n host: {\n class: 'fd-label fd-toolbar__overflow-label'\n },\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1sYWJlbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvdG9vbGJhci90b29sYmFyLWxhYmVsLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQVVoRSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsb0JBQW9COzhHQUFsRCxxQkFBcUI7a0dBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFSakMsU0FBUzttQkFBQztvQkFDUCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUscUNBQXFDO3FCQUMvQztvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgVG9vbGJhckl0ZW1EaXJlY3RpdmUgfSBmcm9tICcuL3Rvb2xiYXItaXRlbS5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnW2ZkLXRvb2xiYXItbGFiZWxdJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnZmQtbGFiZWwgZmQtdG9vbGJhcl9fb3ZlcmZsb3ctbGFiZWwnXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRvb2xiYXJMYWJlbERpcmVjdGl2ZSBleHRlbmRzIFRvb2xiYXJJdGVtRGlyZWN0aXZlIHt9XG4iXX0=","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarOverflowButtonMenuDirective extends ToolbarItemDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarOverflowButtonMenuDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarOverflowButtonMenuDirective, isStandalone: true, selector: \"[fdToolbarOverflowButtonMenu], [fd-toolbar-overflow-button-menu]\", host: { classAttribute: \"fd-toolbar__overflow-button--menu\" }, usesInheritance: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarOverflowButtonMenuDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[fdToolbarOverflowButtonMenu], [fd-toolbar-overflow-button-menu]',\n host: {\n class: 'fd-toolbar__overflow-button--menu'\n },\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1vdmVyZmxvdy1idXR0b24tbWVudS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvdG9vbGJhci90b29sYmFyLW92ZXJmbG93LWJ1dHRvbi1tZW51LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQVNoRSxNQUFNLE9BQU8sa0NBQW1DLFNBQVEsb0JBQW9COzhHQUEvRCxrQ0FBa0M7a0dBQWxDLGtDQUFrQzs7MkZBQWxDLGtDQUFrQztrQkFQOUMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsa0VBQWtFO29CQUM1RSxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLG1DQUFtQztxQkFDN0M7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb29sYmFySXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vdG9vbGJhci1pdGVtLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkVG9vbGJhck92ZXJmbG93QnV0dG9uTWVudV0sIFtmZC10b29sYmFyLW92ZXJmbG93LWJ1dHRvbi1tZW51XScsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZkLXRvb2xiYXJfX292ZXJmbG93LWJ1dHRvbi0tbWVudSdcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgVG9vbGJhck92ZXJmbG93QnV0dG9uTWVudURpcmVjdGl2ZSBleHRlbmRzIFRvb2xiYXJJdGVtRGlyZWN0aXZlIHt9XG4iXX0=","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarOverflowButtonDirective extends ToolbarItemDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarOverflowButtonDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarOverflowButtonDirective, isStandalone: true, selector: \"[fdToolbarOverflowButton], [fd-toolbar-overflow-button]\", host: { classAttribute: \"fd-toolbar__overflow-button\" }, usesInheritance: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarOverflowButtonDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[fdToolbarOverflowButton], [fd-toolbar-overflow-button]',\n host: {\n class: 'fd-toolbar__overflow-button'\n },\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1vdmVyZmxvdy1idXR0b24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3Rvb2xiYXIvdG9vbGJhci1vdmVyZmxvdy1idXR0b24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBU2hFLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxvQkFBb0I7OEdBQTNELDhCQUE4QjtrR0FBOUIsOEJBQThCOzsyRkFBOUIsOEJBQThCO2tCQVAxQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx5REFBeUQ7b0JBQ25FLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsNkJBQTZCO3FCQUN2QztvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvb2xiYXJJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi90b29sYmFyLWl0ZW0uZGlyZWN0aXZlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZmRUb29sYmFyT3ZlcmZsb3dCdXR0b25dLCBbZmQtdG9vbGJhci1vdmVyZmxvdy1idXR0b25dJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnZmQtdG9vbGJhcl9fb3ZlcmZsb3ctYnV0dG9uJ1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBUb29sYmFyT3ZlcmZsb3dCdXR0b25EaXJlY3RpdmUgZXh0ZW5kcyBUb29sYmFySXRlbURpcmVjdGl2ZSB7fVxuIl19","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarSeparatorComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarSeparatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarSeparatorComponent, isStandalone: true, selector: \"fd-toolbar-separator\", host: { classAttribute: \"fd-toolbar__separator\" }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarSeparatorComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'fd-toolbar-separator',\n template: '',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-toolbar__separator'\n },\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1zZXBhcmF0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3Rvb2xiYXIvdG9vbGJhci1zZXBhcmF0b3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBWXRGLE1BQU0sT0FBTyx5QkFBeUI7OEdBQXpCLHlCQUF5QjtrR0FBekIseUJBQXlCLG1JQVJ4QixFQUFFOzsyRkFRSCx5QkFBeUI7a0JBVnJDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsUUFBUSxFQUFFLEVBQUU7b0JBQ1osYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLHVCQUF1QjtxQkFDakM7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmZC10b29sYmFyLXNlcGFyYXRvcicsXG4gICAgdGVtcGxhdGU6ICcnLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZkLXRvb2xiYXJfX3NlcGFyYXRvcidcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgVG9vbGJhclNlcGFyYXRvckNvbXBvbmVudCB7fVxuIl19","import { Directive, HostBinding, Input } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarSpacerDirective {\n constructor() {\n /** Determines the width of spacer when fixed property is set to true\n * Allowed values: absolute and relative metrics\n * Default value: 0px\n */\n this.width = '0px';\n /** Property allows user to pass additional class\n */\n this.class = '';\n /** Determines if spacer should take only size taken from width property\n * Default value: false\n * Default behaviour: spacer takes remaining space automatically\n */\n this.fixed = false;\n }\n /** @hidden */\n get css() {\n return `fd-toolbar__spacer ${this.fixed ? 'fd-toolbar__spacer--fixed' : ''} ${this.class}`;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarSpacerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarSpacerDirective, isStandalone: true, selector: \"fd-toolbar-spacer\", inputs: { width: \"width\", class: \"class\", fixed: \"fixed\" }, host: { properties: { \"style.width\": \"this.width\", \"attr.class\": \"this.css\" } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarSpacerDirective, decorators: [{\n type: Directive,\n args: [{\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fd-toolbar-spacer',\n standalone: true\n }]\n }], propDecorators: { width: [{\n type: HostBinding,\n args: ['style.width']\n }, {\n type: Input\n }], class: [{\n type: Input\n }], fixed: [{\n type: Input\n }], css: [{\n type: HostBinding,\n args: ['attr.class']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1zcGFjZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3Rvb2xiYXIvdG9vbGJhci1zcGFjZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPOUQsTUFBTSxPQUFPLHNCQUFzQjtJQUxuQztRQU1JOzs7V0FHRztRQUdILFVBQUssR0FBRyxLQUFLLENBQUM7UUFFZDtXQUNHO1FBRUgsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUVYOzs7V0FHRztRQUVILFVBQUssR0FBRyxLQUFLLENBQUM7S0FPakI7SUFMRyxjQUFjO0lBQ2QsSUFDSSxHQUFHO1FBQ0gsT0FBTyxzQkFBc0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDL0YsQ0FBQzs4R0F6QlEsc0JBQXNCO2tHQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBTGxDLFNBQVM7bUJBQUM7b0JBQ1AsOERBQThEO29CQUM5RCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtpQkFDbkI7OEJBUUcsS0FBSztzQkFGSixXQUFXO3VCQUFDLGFBQWE7O3NCQUN6QixLQUFLO2dCQU1OLEtBQUs7c0JBREosS0FBSztnQkFRTixLQUFLO3NCQURKLEtBQUs7Z0JBS0YsR0FBRztzQkFETixXQUFXO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnZmQtdG9vbGJhci1zcGFjZXInLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgVG9vbGJhclNwYWNlckRpcmVjdGl2ZSB7XG4gICAgLyoqIERldGVybWluZXMgdGhlIHdpZHRoIG9mIHNwYWNlciB3aGVuIGZpeGVkIHByb3BlcnR5IGlzIHNldCB0byB0cnVlXG4gICAgICogQWxsb3dlZCB2YWx1ZXM6IGFic29sdXRlIGFuZCByZWxhdGl2ZSBtZXRyaWNzXG4gICAgICogRGVmYXVsdCB2YWx1ZTogMHB4XG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS53aWR0aCcpXG4gICAgQElucHV0KClcbiAgICB3aWR0aCA9ICcwcHgnO1xuXG4gICAgLyoqIFByb3BlcnR5IGFsbG93cyB1c2VyIHRvIHBhc3MgYWRkaXRpb25hbCBjbGFzc1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgY2xhc3MgPSAnJztcblxuICAgIC8qKiBEZXRlcm1pbmVzIGlmIHNwYWNlciBzaG91bGQgdGFrZSBvbmx5IHNpemUgdGFrZW4gZnJvbSB3aWR0aCBwcm9wZXJ0eVxuICAgICAqIERlZmF1bHQgdmFsdWU6IGZhbHNlXG4gICAgICogRGVmYXVsdCBiZWhhdmlvdXI6IHNwYWNlciB0YWtlcyByZW1haW5pbmcgc3BhY2UgYXV0b21hdGljYWxseVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZml4ZWQgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmNsYXNzJylcbiAgICBnZXQgY3NzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgZmQtdG9vbGJhcl9fc3BhY2VyICR7dGhpcy5maXhlZCA/ICdmZC10b29sYmFyX19zcGFjZXItLWZpeGVkJyA6ICcnfSAke3RoaXMuY2xhc3N9YDtcbiAgICB9XG59XG4iXX0=","import { __decorate, __metadata } from \"tslib\";\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ContentChildren, contentChildren, DestroyRef, ElementRef, forwardRef, HostBinding, inject, Inject, Input, Optional, QueryList, signal, SkipSelf, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { DYNAMIC_PAGE_HEADER_TOKEN } from '@fundamental-ngx/core/shared';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { applyCssClass, DynamicPortalComponent, OVERFLOW_PRIORITY_SCORE, ResizeObserverService } from '@fundamental-ngx/cdk/utils';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\nimport { ContentDensityMode, ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { TitleComponent, TitleToken } from '@fundamental-ngx/core/title';\nimport { BehaviorSubject, combineLatest, map, startWith } from 'rxjs';\nimport { ToolbarItem } from './abstract-toolbar-item.class';\nimport { FD_TOOLBAR } from './tokens';\nimport { ToolbarSeparatorComponent } from './toolbar-separator.component';\nimport { ToolbarSpacerDirective } from './toolbar-spacer.directive';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@fundamental-ngx/core/content-density\";\nimport * as i2 from \"@fundamental-ngx/cdk/utils\";\nimport * as i3 from \"@fundamental-ngx/core/popover\";\nconst ELEMENT_MARGIN = 8;\nconst OVERFLOW_BTN_COZY = 36;\nconst OVERFLOW_BTN_COMPACT = 32;\nconst MAX_CONTENT_SIZE = 99999999;\nlet toolbarTitleId = 0;\nexport class ToolbarComponent {\n /** Determines if overflow button should be visible\n * Default value: false\n */\n set shouldOverflow(val) {\n this._shouldOverflow = val;\n this.shouldOverflow$.next(val);\n }\n get shouldOverflow() {\n return this._shouldOverflow;\n }\n /**\n * Heading level of the toolbar title.\n */\n set headingLevel(level) {\n if (typeof level === 'number') {\n this._headingLevel = level;\n }\n else if (typeof level === 'string') {\n this._headingLevel = Number.parseInt(level.replace(/\\D/g, ''), 10);\n }\n }\n /** @hidden */\n set titleComponent(title) {\n this._titleComponent$.next(title);\n }\n get titleComponent() {\n return this._titleComponent$.value;\n }\n /** @hidden */\n get _toolbarWidth() {\n const _overflow_btn_size = this._contentDensityObserver.isCompact ? OVERFLOW_BTN_COMPACT : OVERFLOW_BTN_COZY;\n return (this.elementRef.nativeElement.clientWidth -\n (_overflow_btn_size + 4 * ELEMENT_MARGIN + 1 + this.separatorDirectives().length));\n }\n /** @hidden */\n constructor(_cd, _contentDensityObserver, _destroyRef, resizeObserverService, _dynamicPageHeader) {\n this._cd = _cd;\n this._contentDensityObserver = _contentDensityObserver;\n this._destroyRef = _destroyRef;\n this.resizeObserverService = resizeObserverService;\n this._dynamicPageHeader = _dynamicPageHeader;\n /**\n * The ID of the toolbar title\n * */\n this.titleId = `fd-toolbar-title-${toolbarTitleId++}`;\n /** Determines the type of toolbar\n * Available options: 'solid' | 'transparent' | 'auto' | 'info'\n * Default value: 'solid'\n */\n this.fdType = 'solid';\n /** Determines if toolbar should has active state (only when fdType == 'info')\n * Default value: false\n */\n this.active = false;\n /** Determines if toolbar should clear border bottom\n * Default value: false\n */\n this.clearBorder = false;\n /** Whether all items should be inside overflow */\n this.forceOverflow = false;\n /** Tabindex of the toolbar element, to be used when fdType=\"info\" */\n this.tabindex = -1;\n /** @hidden */\n this._role = 'toolbar';\n /** @hidden */\n this.overflownItems = [];\n /** @hidden */\n this.spacerUsed = signal(false, ...(ngDevMode ? [{ debugName: \"spacerUsed\" }] : []));\n /** @hidden */\n this.spacerDirectives = contentChildren(ToolbarSpacerDirective, ...(ngDevMode ? [{ debugName: \"spacerDirectives\" }] : []));\n /** @hidden */\n this.separatorDirectives = contentChildren(ToolbarSeparatorComponent, ...(ngDevMode ? [{ debugName: \"separatorDirectives\" }] : []));\n /** @hidden */\n this._headingLevel = 2;\n /** HTML Element Reference. */\n this.elementRef = inject(ElementRef);\n /** @hidden */\n this._titleComponent$ = new BehaviorSubject(null);\n /** @hidden */\n this._refreshOverflow$ = new BehaviorSubject(undefined);\n /** @hidden */\n this._shouldOverflow = false;\n /** @hidden */\n this.shouldOverflow$ = new BehaviorSubject(false);\n _contentDensityObserver.subscribe();\n }\n /** @hidden */\n buildComponentCssClass() {\n return [\n 'fd-toolbar',\n `fd-toolbar--${this.fdType}`,\n `${this.active && this.fdType === 'info' ? 'fd-toolbar--active' : ''}`,\n `${this.title || this.titleComponent ? 'fd-toolbar--title' : ''}`,\n `${this.clearBorder ? 'fd-toolbar--clear' : ''}`,\n `${this._dynamicPageHeader ? 'fd-dynamic-page__toolbar' : ''}`\n ];\n }\n /** @hidden */\n ngAfterViewInit() {\n this._updateSpacerUsed();\n this.overflowItems$ = combineLatest([\n this.resizeObserverService.observe(this.elementRef.nativeElement).pipe(map(() => this._toolbarWidth)),\n this.toolbarItems.changes.pipe(startWith(this.toolbarItems), map((toolbarItems) => toolbarItems.toArray())),\n this._titleComponent$.pipe(map((titleComponent) => {\n if (!titleComponent) {\n return this.titleElement?.nativeElement;\n }\n return titleComponent.elementRef.nativeElement;\n })),\n this.shouldOverflow$,\n this._refreshOverflow$\n ]).pipe(map(([toolbarWidth, toolbarItems, titleElement, shouldOverflow]) => {\n if (shouldOverflow) {\n const _sortedByPriorityAndGroupItems = this._getSortedByPriorityAndGroupItems(toolbarItems);\n const overflowItems = [];\n _sortedByPriorityAndGroupItems.reduce((_contentWidth, toolbarItem) => {\n const itemWidth = toolbarItem.width + 2;\n const itemPriority = toolbarItem.priority;\n const shouldItemBeRemovedByWidth = itemWidth + _contentWidth > toolbarWidth;\n const shouldAlwaysBeInOverflow = itemPriority === \"always\" /* OverflowPriorityEnum.ALWAYS */ || this.forceOverflow;\n const shouldNeverBeInOverflow = itemPriority === \"never\" /* OverflowPriorityEnum.NEVER */;\n if ((shouldItemBeRemovedByWidth && !shouldNeverBeInOverflow) || shouldAlwaysBeInOverflow) {\n overflowItems.push(toolbarItem);\n return shouldAlwaysBeInOverflow ? _contentWidth : MAX_CONTENT_SIZE;\n }\n else {\n return _contentWidth + itemWidth;\n }\n }, titleElement?.clientWidth || 0);\n // Hide orphans\n for (const toolbarItem of overflowItems) {\n const groupedCollection = this._getGroupedCollection(toolbarItems);\n const groupedCollectionPriorities = this._getGroupedCollectionPriority(groupedCollection);\n const group = toolbarItem.group;\n const itemPriority = toolbarItem.priority;\n if (group !== 0 && itemPriority !== \"disappear\" /* OverflowPriorityEnum.DISAPPEAR */) {\n const itemsFromCurrentGroup = this._getElementsFromCurrentGroup(group, groupedCollection, groupedCollectionPriorities) || [];\n itemsFromCurrentGroup.forEach((i) => {\n if (overflowItems.indexOf(i) === -1) {\n overflowItems.push(i);\n }\n });\n }\n }\n return overflowItems.sort((a, b) => this._sortPriorities(a.priority, b.priority));\n }\n return [];\n }), takeUntilDestroyed(this._destroyRef));\n this.overflowItems$.subscribe((items) => {\n this.overflownItems = items;\n this._cd.detectChanges();\n });\n this.buildComponentCssClass();\n }\n /** @hidden */\n ngAfterViewChecked() {\n this.buildComponentCssClass();\n }\n /** @hidden */\n ngAfterContentInit() {\n if (this.titleComponent) {\n this.titleComponent.elementRef?.nativeElement.classList.add('fd-toolbar__title');\n this.buildComponentCssClass();\n }\n }\n /** Change detection reference */\n detectChanges() {\n this._cd.detectChanges();\n }\n /** Method triggering collapsible toolbar */\n updateCollapsibleItems() {\n this._refreshOverflow$.next();\n }\n /** hidden */\n _updateSpacerUsed() {\n // do not render extra spacer if there is at least one passed by the application\n // and it is not fixed this.spacerUsed.set(this.spacer.length > 0 && this.spacer.some((spacer) => !spacer.fixed));\n this.spacerUsed.set(this.spacerDirectives().length > 0 && this.spacerDirectives().some((spacer) => !spacer.fixed));\n }\n /** @hidden Get group number with the lowest priority.\n * Uses for detecting a group of elements which would be hidden from the toolbar.\n * */\n _getLowestPriorityFromGroup(itemGroup, groupedCollectionPriority) {\n const priority = groupedCollectionPriority;\n if (!priority || !OVERFLOW_PRIORITY_SCORE.get(priority[itemGroup])) {\n return itemGroup;\n }\n const groups = Object.keys(priority);\n return groups.reduce((lowestGroup, currentGroup) => {\n const lowestGroupPriority = priority[lowestGroup];\n const currentGroupPriority = priority[currentGroup];\n if (OVERFLOW_PRIORITY_SCORE.get(currentGroupPriority) < OVERFLOW_PRIORITY_SCORE.get(lowestGroupPriority)) {\n return +currentGroup;\n }\n return lowestGroup;\n }, itemGroup);\n }\n /** @hidden */\n _getElementsFromCurrentGroup(itemGroup, groupedCollection, groupedCollectionPriority) {\n const lowestPriorityFromGroup = this._getLowestPriorityFromGroup(itemGroup, groupedCollectionPriority);\n if (!groupedCollection || !groupedCollectionPriority) {\n return [];\n }\n let itemsToRemove = groupedCollection[lowestPriorityFromGroup];\n delete groupedCollection[lowestPriorityFromGroup];\n delete groupedCollectionPriority[lowestPriorityFromGroup];\n if (lowestPriorityFromGroup !== itemGroup) {\n itemsToRemove = [...itemsToRemove, ...groupedCollection[itemGroup]];\n delete groupedCollection[itemGroup];\n delete groupedCollectionPriority[itemGroup];\n }\n return itemsToRemove;\n }\n /** @hidden Get the object with grouped arrays of elements. */\n _getGroupedCollection(toolbarItems) {\n return toolbarItems.reduce((acc, item) => {\n const itemPrio = item.priority;\n const itemGroup = item.group;\n if (itemPrio === \"never\" /* OverflowPriorityEnum.NEVER */ ||\n itemPrio === \"always\" /* OverflowPriorityEnum.ALWAYS */ ||\n itemGroup === 0) {\n return acc;\n }\n if (!acc[itemGroup]) {\n acc[itemGroup] = [];\n }\n acc[itemGroup].push(item);\n return acc;\n }, {});\n }\n /** @hidden Get the object with the highest priority for each group of elements. */\n _getGroupedCollectionPriority(groupedCollection) {\n const groups = Object.keys(groupedCollection);\n return groups.reduce((acc, itemGroup) => {\n const sortedPriorities = groupedCollection[itemGroup]\n .map((i) => i.priority)\n .filter((prio) => prio !== \"always\" /* OverflowPriorityEnum.ALWAYS */ && prio !== \"never\" /* OverflowPriorityEnum.NEVER */)\n .sort(this._sortPriorities);\n acc[itemGroup] = sortedPriorities[0];\n return acc;\n }, {});\n }\n /** @hidden Sort priorities of elements/groups. */\n _sortPriorities(a, b) {\n return OVERFLOW_PRIORITY_SCORE.get(b) - OVERFLOW_PRIORITY_SCORE.get(a);\n }\n /** @hidden Sort by group and priority and initial position */\n _getSortedByPriorityAndGroupItems(toolbarItems) {\n const notSorted = toolbarItems.map((element, index) => ({ element, index }));\n const groups = notSorted.reduce((gr, item) => {\n let groupId = item.element.group;\n const itemPrio = item.element.priority;\n if (itemPrio === \"never\" /* OverflowPriorityEnum.NEVER */ || itemPrio === \"always\" /* OverflowPriorityEnum.ALWAYS */) {\n groupId = 0;\n }\n if (!gr[groupId]) {\n gr[groupId] = [];\n }\n gr[groupId].push(item);\n return gr;\n }, {});\n const groupIds = Object.keys(groups)\n .map((g) => parseInt(g, 10))\n .filter((g) => g !== 0);\n return groupIds\n .map((g) => {\n let minIndex = Number.MAX_SAFE_INTEGER;\n let maxPriority = 0;\n for (const item of groups[g]) {\n minIndex = Math.min(minIndex, item.index);\n maxPriority = Math.max(maxPriority, OVERFLOW_PRIORITY_SCORE.get(item.element.priority) ?? -Infinity);\n }\n return { group: groups[g].map(({ element }) => element), minIndex, maxPriority };\n })\n .concat(!groups[0]\n ? []\n : groups[0].map((item) => ({\n group: [item.element],\n maxPriority: OVERFLOW_PRIORITY_SCORE.get(item.element.priority),\n minIndex: item.index\n })))\n .sort((a, b) => b.maxPriority - a.maxPriority || a.minIndex - b.minIndex)\n .reduce((arr, i) => arr.concat(i.group), []);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.ContentDensityObserver }, { token: i0.DestroyRef }, { token: i2.ResizeObserverService }, { token: DYNAMIC_PAGE_HEADER_TOKEN, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.4\", type: ToolbarComponent, isStandalone: true, selector: \"fd-toolbar\", inputs: { titleId: \"titleId\", class: \"class\", shouldOverflow: \"shouldOverflow\", fdType: \"fdType\", title: \"title\", active: \"active\", clearBorder: \"clearBorder\", forceOverflow: \"forceOverflow\", tabindex: \"tabindex\", headingLevel: \"headingLevel\", ariaLabel: \"ariaLabel\", ariaLabelledBy: \"ariaLabelledBy\" }, host: { properties: { \"attr.aria-label\": \"this.ariaLabel\", \"attr.aria-labelledby\": \"this.ariaLabelledBy\", \"attr.role\": \"this._role\" } }, providers: [\n contentDensityObserverProviders({\n defaultContentDensity: ContentDensityMode.COMPACT\n }),\n {\n provide: FD_TOOLBAR,\n useExisting: ToolbarComponent\n }\n ], queries: [{ propertyName: \"spacerDirectives\", predicate: ToolbarSpacerDirective, isSignal: true }, { propertyName: \"separatorDirectives\", predicate: ToolbarSeparatorComponent, isSignal: true }, { propertyName: \"titleComponent\", first: true, predicate: TitleToken, descendants: true }, { propertyName: \"toolbarItems\", predicate: i0.forwardRef(() => ToolbarItem) }], viewQueries: [{ propertyName: \"titleElement\", first: true, predicate: [\"titleElement\"], descendants: true, read: ElementRef }], ngImport: i0, template: \"@if (title) {\\n <span\\n fd-title\\n role=\\\"heading\\\"\\n [headerSize]=\\\"4\\\"\\n [attr.aria-level]=\\\"_headingLevel\\\"\\n class=\\\"fd-toolbar__title\\\"\\n [id]=\\\"titleId\\\"\\n #titleElement\\n >\\n {{ title }}\\n </span>\\n}\\n<ng-content></ng-content>\\n@if (overflownItems.length > 0) {\\n @if (!spacerUsed()) {\\n <fd-toolbar-spacer></fd-toolbar-spacer>\\n }\\n <fd-toolbar-separator></fd-toolbar-separator>\\n <fd-popover placement=\\\"bottom-end\\\" [noArrow]=\\\"true\\\" class=\\\"fd-popover\\\">\\n <fd-popover-control>\\n <button\\n fd-button\\n title=\\\"More\\\"\\n aria-label=\\\"More\\\"\\n aria-haspopup=\\\"true\\\"\\n fdType=\\\"transparent\\\"\\n glyph=\\\"overflow\\\"\\n ></button>\\n </fd-popover-control>\\n <fd-popover-body>\\n <div class=\\\"fd-toolbar__overflow\\\">\\n @for (overflowedItem of overflownItems; track overflowedItem) {\\n <fdk-dynamic-portal\\n [domElement]=\\\"overflowedItem.element\\\"\\n [style.display]=\\\"overflowedItem.priority === 'disappear' ? 'none' : 'flex'\\\"\\n [style.flex-direction]=\\\"overflowedItem.priority === 'disappear' ? undefined : 'column'\\\"\\n >\\n </fdk-dynamic-portal>\\n }\\n </div>\\n </fd-popover-body>\\n </fd-popover>\\n}\\n\", styles: [\".fd-toolbar{--fdToolbar_Height:2.75rem;--fdToolbar_Separator_Margin:0;--fdToolbar_Padding_Left:.5rem;--fdToolbar_Padding_Right:.5rem;--fdToolbar_Separator_Height:2rem;--fdToolbar_Overflow_Max_Width:100%;--fdToolbar_Separator_Width:.0625rem;--fdToolbar_Info_Color:var(--sapList_TextColor);--fdToolbar_Background:var(--sapToolbar_Background);--fdToolbar_Border_Bottom:.0625rem solid var(--sapGroup_TitleBorderColor);--fdToolbar_Border_Top:.0625rem solid var(--sapPageFooter_BorderColor);border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;gap:.5rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:var(--fdToolbar_Background);border-bottom:var(--fdToolbar_Border_Bottom);height:var(--fdToolbar_Height);padding-inline:var(--fdToolbar_Padding_Left) var(--fdToolbar_Padding_Right)}.fd-toolbar:after,.fd-toolbar:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__spacer{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:100%;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-flex:1;-ms-flex:1 auto;flex:1 auto}.fd-toolbar__spacer:after,.fd-toolbar__spacer:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__spacer--fixed{-webkit-box-flex:0;display:inline-block;-ms-flex:none;flex:none}.fd-toolbar__separator{background-color:var(--sapToolbar_SeparatorColor);border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fdToolbar_Separator_Height);line-height:normal;margin-block:0;margin-block:var(--fdToolbar_Separator_Margin);margin-inline:0;padding-block:0;padding-inline:0;width:var(--fdToolbar_Separator_Width)}.fd-toolbar__separator:after,.fd-toolbar__separator:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__overflow{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;--fdToolbar_Separator_Width:auto;--fdToolbar_Separator_Height:.0625rem;--fdToolbar_Separator_Margin:.1875rem;--fdToolbar_Overflow_Padding_Block:.25rem;--fdToolbar_Overflow_Padding_Inline:.5rem;max-height:50vh;max-width:var(--fdToolbar_Overflow_Max_Width);overflow:auto;padding-block:var(--fdToolbar_Overflow_Padding_Block);padding-inline:var(--fdToolbar_Overflow_Padding_Inline)}.fd-toolbar__overflow:after,.fd-toolbar__overflow:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__overflow[class*=-compact],.fd-toolbar__overflow[class*=-condensed],[class*=-compact] .fd-toolbar__overflow:not([class*=-cozy]),[class*=-condensed] .fd-toolbar__overflow:not([class*=-cozy]){--fdToolbar_Overflow_Padding_Block:.1875rem;--fdToolbar_Overflow_Padding_Inline:.375rem}.fd-toolbar__overflow .fd-toolbar__overflow-button{margin-block:.1875rem;margin-inline:0;text-align:left;width:auto;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.fd-toolbar__overflow .fd-toolbar__overflow-button[dir=rtl],[dir=rtl] .fd-toolbar__overflow .fd-toolbar__overflow-button{text-align:right}.fd-toolbar__overflow .fd-toolbar__overflow-button--menu{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;max-width:100%}.fd-toolbar__overflow .fd-toolbar__overflow-form-label{margin-block:.625rem .125rem;margin-inline:0}.fd-toolbar__overflow .fd-toolbar__overflow-label{margin-block:.375rem;margin-inline:0}.fd-toolbar .fd-toolbar__title{--fdTitle_Font_Size:var(--sapGroup_Title_FontSize);--fdTitle_Color:var(--sapGroup_TitleTextColor)}.fd-toolbar--auto{--fdToolbar_Background:var(--fdToolbar_Auto_Background)}.fd-toolbar--solid{--fdToolbar_Background:var(--fdToolbar_Solid_Background)}.fd-toolbar--transparent{--fdToolbar_Background:var(--fdToolbar_Transparent_Background)}.fd-toolbar--ai,.fd-toolbar--clear{--fdToolbar_Border_Bottom:none}.fd-toolbar--ai{--fdToolbar_Background:var(--fdToolbar_Transparent_Background);--fdToolbar_Padding_Left:.5rem;--fdToolbar_Padding_Right:.25rem}.fd-toolbar--ai.is-active{--fdToolbar_Background:var(--fdToolbar_Solid_Background);border-top:var(--fdToolbar_Border_Top)}.fd-toolbar--title{--fdToolbar_Height:2.75rem;--fdToolbar_Padding_Left:1rem;--fdToolbar_Background:var(--sapGroup_TitleBackground)}.fd-toolbar.fd-toolbar--title-bar{padding-block:.375rem;--fdToolbar_Height:auto;--fdToolbar_Padding_Left:.75rem;--fdToolbar_Padding_Right:.75rem}.fd-toolbar--info{color:var(--fdToolbar_Info_Color);position:relative;--fdToolbar_Height:2rem;--fdToolbar_Background:var(--sapInfobar_NonInteractive_Background)}.fd-toolbar--info [class*=sap-icon]{color:var(--sapList_TextColor);font-size:1rem;height:1rem;line-height:1rem}.fd-toolbar--active{outline:none;position:relative;--fdToolbar_Background:var(--sapInfobar_Background);--fdToolbar_Info_Color:var(--sapInfobar_TextColor)}.fd-toolbar--active.is-focus:after,.fd-toolbar--active:focus:after{border-color:var(--sapContent_FocusColor);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);content:\\\"\\\";inset:.0625rem;pointer-events:none;position:absolute}.fd-toolbar--active.is-hover,.fd-toolbar--active:hover{--fdToolbar_Background:var(--sapInfobar_Hover_Background)}.fd-toolbar--active.is-active,.fd-toolbar--active:active{--fdToolbar_Background:var(--sapInfobar_Active_Background)}.fd-toolbar--active.is-focus,.fd-toolbar--active:focus{z-index:5}.fd-toolbar--active.is-focus:after,.fd-toolbar--active:focus:after{border-color:var(--fdToolbar_Info_Outline_Color)}.fd-toolbar--fade-in{opacity:1;-webkit-transition:visibility 0s linear 0s,opacity 1s;transition:visibility 0s linear 0s,opacity 1s;visibility:visible}.fd-toolbar--fade-out{opacity:0;-webkit-transition:visibility 0s linear 1s,opacity 1ms;transition:visibility 0s linear 1s,opacity 1ms;visibility:hidden}.fd-toolbar[class*=-compact],.fd-toolbar[class*=-condensed],[class*=-compact] .fd-toolbar:not([class*=-cozy]),[class*=-condensed] .fd-toolbar:not([class*=-cozy]){--fdToolbar_Height:2rem;--fdToolbar_Separator_Height:1.5rem;--fdToolbar_Overflow_Max_Width:20rem}.fd-toolbar[class*=-compact].fd-toolbar--title,.fd-toolbar[class*=-condensed].fd-toolbar--title,[class*=-compact] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title,[class*=-condensed] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title{--fdToolbar_Height:2.75rem}.fd-toolbar[class*=-compact].fd-toolbar--title-bar,.fd-toolbar[class*=-condensed].fd-toolbar--title-bar,[class*=-compact] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title-bar,[class*=-condensed] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title-bar{--fdToolbar_Height:auto}.fd-toolbar>*{flex-shrink:0}fdk-dynamic-portal:not(:last-of-type) [fd-toolbar-item]{margin-bottom:.25rem}\\n/*! Bundled license information:\\n\\nfundamental-styles/dist/toolbar.css:\\n (*!\\n * Fundamental Library Styles v0.40.1\\n * Copyright (c) 2025 SAP SE or an SAP affiliate company.\\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\\n *)\\n*/\\n\"], dependencies: [{ kind: \"directive\", type: ToolbarSpacerDirective, selector: \"fd-toolbar-spacer\", inputs: [\"width\", \"class\", \"fixed\"] }, { kind: \"component\", type: ToolbarSeparatorComponent, selector: \"fd-toolbar-separator\" }, { kind: \"ngmodule\", type: PopoverModule }, { kind: \"component\", type: i3.PopoverControlComponent, selector: \"fd-popover-control, [fdPopoverControl]\" }, { kind: \"component\", type: i3.PopoverBodyComponent, selector: \"fd-popover-body\", inputs: [\"minWidth\", \"maxWidth\", \"minHeight\", \"maxHeight\"] }, { kind: \"component\", type: i3.PopoverComponent, selector: \"fd-popover\", inputs: [\"title\", \"trigger\", \"fixedPosition\", \"id\", \"mobile\", \"mobileConfig\", \"preventSpaceKeyScroll\"] }, { kind: \"component\", type: ButtonComponent, selector: \"button[fd-button], a[fd-button], span[fd-button]\", inputs: [\"class\", \"id\"], exportAs: [\"fd-button\"] }, { kind: \"component\", type: DynamicPortalComponent, selector: \"fdk-dynamic-portal\", inputs: [\"domElement\", \"component\", \"template\", \"auto\"], outputs: [\"attached\"] }, { kind: \"component\", type: TitleComponent, selector: \"[fd-title], [fdTitle]\", inputs: [\"headerSize\", \"wrap\"], exportAs: [\"fd-title\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\n__decorate([\n applyCssClass,\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", []),\n __metadata(\"design:returntype\", Array)\n], ToolbarComponent.prototype, \"buildComponentCssClass\", null);\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarComponent, decorators: [{\n type: Component,\n args: [{ selector: 'fd-toolbar', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n contentDensityObserverProviders({\n defaultContentDensity: ContentDensityMode.COMPACT\n }),\n {\n provide: FD_TOOLBAR,\n useExisting: ToolbarComponent\n }\n ], imports: [\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n PopoverModule,\n ButtonComponent,\n DynamicPortalComponent,\n TitleComponent\n ], template: \"@if (title) {\\n <span\\n fd-title\\n role=\\\"heading\\\"\\n [headerSize]=\\\"4\\\"\\n [attr.aria-level]=\\\"_headingLevel\\\"\\n class=\\\"fd-toolbar__title\\\"\\n [id]=\\\"titleId\\\"\\n #titleElement\\n >\\n {{ title }}\\n </span>\\n}\\n<ng-content></ng-content>\\n@if (overflownItems.length > 0) {\\n @if (!spacerUsed()) {\\n <fd-toolbar-spacer></fd-toolbar-spacer>\\n }\\n <fd-toolbar-separator></fd-toolbar-separator>\\n <fd-popover placement=\\\"bottom-end\\\" [noArrow]=\\\"true\\\" class=\\\"fd-popover\\\">\\n <fd-popover-control>\\n <button\\n fd-button\\n title=\\\"More\\\"\\n aria-label=\\\"More\\\"\\n aria-haspopup=\\\"true\\\"\\n fdType=\\\"transparent\\\"\\n glyph=\\\"overflow\\\"\\n ></button>\\n </fd-popover-control>\\n <fd-popover-body>\\n <div class=\\\"fd-toolbar__overflow\\\">\\n @for (overflowedItem of overflownItems; track overflowedItem) {\\n <fdk-dynamic-portal\\n [domElement]=\\\"overflowedItem.element\\\"\\n [style.display]=\\\"overflowedItem.priority === 'disappear' ? 'none' : 'flex'\\\"\\n [style.flex-direction]=\\\"overflowedItem.priority === 'disappear' ? undefined : 'column'\\\"\\n >\\n </fdk-dynamic-portal>\\n }\\n </div>\\n </fd-popover-body>\\n </fd-popover>\\n}\\n\", styles: [\".fd-toolbar{--fdToolbar_Height:2.75rem;--fdToolbar_Separator_Margin:0;--fdToolbar_Padding_Left:.5rem;--fdToolbar_Padding_Right:.5rem;--fdToolbar_Separator_Height:2rem;--fdToolbar_Overflow_Max_Width:100%;--fdToolbar_Separator_Width:.0625rem;--fdToolbar_Info_Color:var(--sapList_TextColor);--fdToolbar_Background:var(--sapToolbar_Background);--fdToolbar_Border_Bottom:.0625rem solid var(--sapGroup_TitleBorderColor);--fdToolbar_Border_Top:.0625rem solid var(--sapPageFooter_BorderColor);border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;gap:.5rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:var(--fdToolbar_Background);border-bottom:var(--fdToolbar_Border_Bottom);height:var(--fdToolbar_Height);padding-inline:var(--fdToolbar_Padding_Left) var(--fdToolbar_Padding_Right)}.fd-toolbar:after,.fd-toolbar:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__spacer{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:100%;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-flex:1;-ms-flex:1 auto;flex:1 auto}.fd-toolbar__spacer:after,.fd-toolbar__spacer:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__spacer--fixed{-webkit-box-flex:0;display:inline-block;-ms-flex:none;flex:none}.fd-toolbar__separator{background-color:var(--sapToolbar_SeparatorColor);border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fdToolbar_Separator_Height);line-height:normal;margin-block:0;margin-block:var(--fdToolbar_Separator_Margin);margin-inline:0;padding-block:0;padding-inline:0;width:var(--fdToolbar_Separator_Width)}.fd-toolbar__separator:after,.fd-toolbar__separator:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__overflow{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;--fdToolbar_Separator_Width:auto;--fdToolbar_Separator_Height:.0625rem;--fdToolbar_Separator_Margin:.1875rem;--fdToolbar_Overflow_Padding_Block:.25rem;--fdToolbar_Overflow_Padding_Inline:.5rem;max-height:50vh;max-width:var(--fdToolbar_Overflow_Max_Width);overflow:auto;padding-block:var(--fdToolbar_Overflow_Padding_Block);padding-inline:var(--fdToolbar_Overflow_Padding_Inline)}.fd-toolbar__overflow:after,.fd-toolbar__overflow:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__overflow[class*=-compact],.fd-toolbar__overflow[class*=-condensed],[class*=-compact] .fd-toolbar__overflow:not([class*=-cozy]),[class*=-condensed] .fd-toolbar__overflow:not([class*=-cozy]){--fdToolbar_Overflow_Padding_Block:.1875rem;--fdToolbar_Overflow_Padding_Inline:.375rem}.fd-toolbar__overflow .fd-toolbar__overflow-button{margin-block:.1875rem;margin-inline:0;text-align:left;width:auto;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.fd-toolbar__overflow .fd-toolbar__overflow-button[dir=rtl],[dir=rtl] .fd-toolbar__overflow .fd-toolbar__overflow-button{text-align:right}.fd-toolbar__overflow .fd-toolbar__overflow-button--menu{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;max-width:100%}.fd-toolbar__overflow .fd-toolbar__overflow-form-label{margin-block:.625rem .125rem;margin-inline:0}.fd-toolbar__overflow .fd-toolbar__overflow-label{margin-block:.375rem;margin-inline:0}.fd-toolbar .fd-toolbar__title{--fdTitle_Font_Size:var(--sapGroup_Title_FontSize);--fdTitle_Color:var(--sapGroup_TitleTextColor)}.fd-toolbar--auto{--fdToolbar_Background:var(--fdToolbar_Auto_Background)}.fd-toolbar--solid{--fdToolbar_Background:var(--fdToolbar_Solid_Background)}.fd-toolbar--transparent{--fdToolbar_Background:var(--fdToolbar_Transparent_Background)}.fd-toolbar--ai,.fd-toolbar--clear{--fdToolbar_Border_Bottom:none}.fd-toolbar--ai{--fdToolbar_Background:var(--fdToolbar_Transparent_Background);--fdToolbar_Padding_Left:.5rem;--fdToolbar_Padding_Right:.25rem}.fd-toolbar--ai.is-active{--fdToolbar_Background:var(--fdToolbar_Solid_Background);border-top:var(--fdToolbar_Border_Top)}.fd-toolbar--title{--fdToolbar_Height:2.75rem;--fdToolbar_Padding_Left:1rem;--fdToolbar_Background:var(--sapGroup_TitleBackground)}.fd-toolbar.fd-toolbar--title-bar{padding-block:.375rem;--fdToolbar_Height:auto;--fdToolbar_Padding_Left:.75rem;--fdToolbar_Padding_Right:.75rem}.fd-toolbar--info{color:var(--fdToolbar_Info_Color);position:relative;--fdToolbar_Height:2rem;--fdToolbar_Background:var(--sapInfobar_NonInteractive_Background)}.fd-toolbar--info [class*=sap-icon]{color:var(--sapList_TextColor);font-size:1rem;height:1rem;line-height:1rem}.fd-toolbar--active{outline:none;position:relative;--fdToolbar_Background:var(--sapInfobar_Background);--fdToolbar_Info_Color:var(--sapInfobar_TextColor)}.fd-toolbar--active.is-focus:after,.fd-toolbar--active:focus:after{border-color:var(--sapContent_FocusColor);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);content:\\\"\\\";inset:.0625rem;pointer-events:none;position:absolute}.fd-toolbar--active.is-hover,.fd-toolbar--active:hover{--fdToolbar_Background:var(--sapInfobar_Hover_Background)}.fd-toolbar--active.is-active,.fd-toolbar--active:active{--fdToolbar_Background:var(--sapInfobar_Active_Background)}.fd-toolbar--active.is-focus,.fd-toolbar--active:focus{z-index:5}.fd-toolbar--active.is-focus:after,.fd-toolbar--active:focus:after{border-color:var(--fdToolbar_Info_Outline_Color)}.fd-toolbar--fade-in{opacity:1;-webkit-transition:visibility 0s linear 0s,opacity 1s;transition:visibility 0s linear 0s,opacity 1s;visibility:visible}.fd-toolbar--fade-out{opacity:0;-webkit-transition:visibility 0s linear 1s,opacity 1ms;transition:visibility 0s linear 1s,opacity 1ms;visibility:hidden}.fd-toolbar[class*=-compact],.fd-toolbar[class*=-condensed],[class*=-compact] .fd-toolbar:not([class*=-cozy]),[class*=-condensed] .fd-toolbar:not([class*=-cozy]){--fdToolbar_Height:2rem;--fdToolbar_Separator_Height:1.5rem;--fdToolbar_Overflow_Max_Width:20rem}.fd-toolbar[class*=-compact].fd-toolbar--title,.fd-toolbar[class*=-condensed].fd-toolbar--title,[class*=-compact] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title,[class*=-condensed] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title{--fdToolbar_Height:2.75rem}.fd-toolbar[class*=-compact].fd-toolbar--title-bar,.fd-toolbar[class*=-condensed].fd-toolbar--title-bar,[class*=-compact] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title-bar,[class*=-condensed] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title-bar{--fdToolbar_Height:auto}.fd-toolbar>*{flex-shrink:0}fdk-dynamic-portal:not(:last-of-type) [fd-toolbar-item]{margin-bottom:.25rem}\\n/*! Bundled license information:\\n\\nfundamental-styles/dist/toolbar.css:\\n (*!\\n * Fundamental Library Styles v0.40.1\\n * Copyright (c) 2025 SAP SE or an SAP affiliate company.\\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\\n *)\\n*/\\n\"] }]\n }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.ContentDensityObserver }, { type: i0.DestroyRef }, { type: i2.ResizeObserverService }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: SkipSelf\n }, {\n type: Inject,\n args: [DYNAMIC_PAGE_HEADER_TOKEN]\n }] }], propDecorators: { titleId: [{\n type: Input\n }], class: [{\n type: Input\n }], shouldOverflow: [{\n type: Input\n }], fdType: [{\n type: Input\n }], title: [{\n type: Input\n }], active: [{\n type: Input\n }], clearBorder: [{\n type: Input\n }], forceOverflow: [{\n type: Input\n }], tabindex: [{\n type: Input\n }], headingLevel: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['attr.aria-label']\n }], ariaLabelledBy: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['attr.aria-labelledby']\n }], titleElement: [{\n type: ViewChild,\n args: ['titleElement', { read: ElementRef }]\n }], toolbarItems: [{\n type: ContentChildren,\n args: [forwardRef(() => ToolbarItem)]\n }], titleComponent: [{\n type: ContentChild,\n args: [TitleToken]\n }], _role: [{\n type: HostBinding,\n args: ['attr.role']\n }], buildComponentCssClass: [] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvdG9vbGJhci90b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS90b29sYmFyL3Rvb2xiYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFJSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osZUFBZSxFQUNmLGVBQWUsRUFDZixVQUFVLEVBQ1YsVUFBVSxFQUNWLFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLFNBQVMsRUFDVCxNQUFNLEVBQ04sUUFBUSxFQUNSLFNBQVMsRUFDVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHlCQUF5QixFQUFxQixNQUFNLDhCQUE4QixDQUFDO0FBRTVGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFDSCxhQUFhLEVBRWIsc0JBQXNCLEVBRXRCLHVCQUF1QixFQUV2QixxQkFBcUIsRUFDeEIsTUFBTSw0QkFBNEIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUNILGtCQUFrQixFQUNsQixzQkFBc0IsRUFDdEIsK0JBQStCLEVBQ2xDLE1BQU0sdUNBQXVDLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTlELE9BQU8sRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN0QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7QUFFcEUsTUFBTSxjQUFjLEdBQUcsQ0FBQyxDQUFDO0FBQ3pCLE1BQU0saUJBQWlCLEdBQUcsRUFBRSxDQUFDO0FBQzdCLE1BQU0sb0JBQW9CLEdBQUcsRUFBRSxDQUFDO0FBQ2hDLE1BQU0sZ0JBQWdCLEdBQUcsUUFBUSxDQUFDO0FBSWxDLElBQUksY0FBYyxHQUFHLENBQUMsQ0FBQztBQWtDdkIsTUFBTSxPQUFPLGdCQUFnQjtJQVl6Qjs7T0FFRztJQUNILElBQ0ksY0FBYyxDQUFDLEdBQVk7UUFDM0IsSUFBSSxDQUFDLGVBQWUsR0FBRyxHQUFHLENBQUM7UUFDM0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQUksY0FBYztRQUNkLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNoQyxDQUFDO0lBaUNEOztPQUVHO0lBQ0gsSUFDSSxZQUFZLENBQUMsS0FBNkI7UUFDMUMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztRQUMvQixDQUFDO2FBQU0sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDdkUsQ0FBQztJQUNMLENBQUM7SUFvQkQsY0FBYztJQUNkLElBQ0ksY0FBYyxDQUFDLEtBQXdCO1FBQ3ZDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQUksY0FBYztRQUNkLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQztJQUN2QyxDQUFDO0lBaUNELGNBQWM7SUFDZCxJQUFZLGFBQWE7UUFDckIsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUM7UUFDN0csT0FBTyxDQUNGLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBNkIsQ0FBQyxXQUFXO1lBQzFELENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxHQUFHLGNBQWMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsTUFBTSxDQUFDLENBQ3BGLENBQUM7SUFDTixDQUFDO0lBUUQsY0FBYztJQUNkLFlBQ1ksR0FBc0IsRUFDckIsdUJBQStDLEVBQ3ZDLFdBQXVCLEVBQ2hDLHFCQUE0QyxFQUNlLGtCQUFzQztRQUpqRyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUNyQiw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXdCO1FBQ3ZDLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ2hDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDZSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBbko3Rzs7YUFFSztRQUVMLFlBQU8sR0FBRyxvQkFBb0IsY0FBYyxFQUFFLEVBQUUsQ0FBQztRQW9CakQ7OztXQUdHO1FBRUgsV0FBTSxHQUFnQixPQUFPLENBQUM7UUFNOUI7O1dBRUc7UUFFSCxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRWY7O1dBRUc7UUFFSCxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUVwQixrREFBa0Q7UUFFbEQsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFFdEIscUVBQXFFO1FBRXJFLGFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQztRQTBDZCxjQUFjO1FBRUcsVUFBSyxHQUFHLFNBQVMsQ0FBQztRQUtuQyxjQUFjO1FBQ2QsbUJBQWMsR0FBa0IsRUFBRSxDQUFDO1FBRW5DLGNBQWM7UUFDZCxlQUFVLEdBQUcsTUFBTSxDQUFDLEtBQUssc0RBQUMsQ0FBQztRQUUzQixjQUFjO1FBQ2QscUJBQWdCLEdBQUcsZUFBZSxDQUFDLHNCQUFzQiw0REFBQyxDQUFDO1FBRTNELGNBQWM7UUFDZCx3QkFBbUIsR0FBRyxlQUFlLENBQUMseUJBQXlCLCtEQUFDLENBQUM7UUFFakUsY0FBYztRQUNkLGtCQUFhLEdBQUcsQ0FBQyxDQUFDO1FBRWxCLDhCQUE4QjtRQUNyQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXpDLGNBQWM7UUFDTixxQkFBZ0IsR0FBdUMsSUFBSSxlQUFlLENBQW9CLElBQUksQ0FBQyxDQUFDO1FBRTVHLGNBQWM7UUFDTixzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FBTyxTQUFTLENBQUMsQ0FBQztRQVdqRSxjQUFjO1FBQ04sb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFFaEMsY0FBYztRQUNOLG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFVMUQsdUJBQXVCLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELGNBQWM7SUFFZCxzQkFBc0I7UUFDbEIsT0FBTztZQUNILFlBQVk7WUFDWixlQUFlLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDNUIsR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3RFLEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2pFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNoRCxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtTQUNqRSxDQUFDO0lBQ04sQ0FBQztJQUVELGNBQWM7SUFDZCxlQUFlO1FBQ1gsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFFekIsSUFBSSxDQUFDLGNBQWMsR0FBRyxhQUFhLENBQUM7WUFDaEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3JHLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDMUIsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFDNUIsR0FBRyxDQUFDLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FDaEQ7WUFDRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUN0QixHQUFHLENBQUMsQ0FBQyxjQUFjLEVBQXNCLEVBQUU7Z0JBQ3ZDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztvQkFDbEIsT0FBTyxJQUFJLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQztnQkFDNUMsQ0FBQztnQkFDRCxPQUFPLGNBQWMsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO1lBQ25ELENBQUMsQ0FBQyxDQUNMO1lBQ0QsSUFBSSxDQUFDLGVBQWU7WUFDcEIsSUFBSSxDQUFDLGlCQUFpQjtTQUN6QixDQUFDLENBQUMsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsY0FBYyxDQUFDLEVBQUUsRUFBRTtZQUMvRCxJQUFJLGNBQWMsRUFBRSxDQUFDO2dCQUNqQixNQUFNLDhCQUE4QixHQUFHLElBQUksQ0FBQyxpQ0FBaUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDNUYsTUFBTSxhQUFhLEdBQWtCLEVBQUUsQ0FBQztnQkFDeEMsOEJBQThCLENBQUMsTUFBTSxDQUFDLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxFQUFFO29CQUNqRSxNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztvQkFDeEMsTUFBTSxZQUFZLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQztvQkFDMUMsTUFBTSwwQkFBMEIsR0FBRyxTQUFTLEdBQUcsYUFBYSxHQUFHLFlBQVksQ0FBQztvQkFDNUUsTUFBTSx3QkFBd0IsR0FDMUIsWUFBWSwrQ0FBZ0MsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDO29CQUN2RSxNQUFNLHVCQUF1QixHQUFHLFlBQVksNkNBQStCLENBQUM7b0JBQzVFLElBQUksQ0FBQywwQkFBMEIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksd0JBQXdCLEVBQUUsQ0FBQzt3QkFDdkYsYUFBYSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQzt3QkFDaEMsT0FBTyx3QkFBd0IsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDdkUsQ0FBQzt5QkFBTSxDQUFDO3dCQUNKLE9BQU8sYUFBYSxHQUFHLFNBQVMsQ0FBQztvQkFDckMsQ0FBQztnQkFDTCxDQUFDLEVBQUUsWUFBWSxFQUFFLFdBQVcsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDbkMsZUFBZTtnQkFDZixLQUFLLE1BQU0sV0FBVyxJQUFJLGFBQWEsRUFBRSxDQUFDO29CQUN0QyxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsQ0FBQztvQkFDbkUsTUFBTSwyQkFBMkIsR0FBRyxJQUFJLENBQUMsNkJBQTZCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztvQkFDMUYsTUFBTSxLQUFLLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQztvQkFDaEMsTUFBTSxZQUFZLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQztvQkFDMUMsSUFBSSxLQUFLLEtBQUssQ0FBQyxJQUFJLFlBQVkscURBQW1DLEVBQUUsQ0FBQzt3QkFDakUsTUFBTSxxQkFBcUIsR0FDdkIsSUFBSSxDQUFDLDRCQUE0QixDQUM3QixLQUFLLEVBQ0wsaUJBQWlCLEVBQ2pCLDJCQUEyQixDQUM5QixJQUFJLEVBQUUsQ0FBQzt3QkFDWixxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTs0QkFDaEMsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0NBQ2xDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7NEJBQzFCLENBQUM7d0JBQ0wsQ0FBQyxDQUFDLENBQUM7b0JBQ1AsQ0FBQztnQkFDTCxDQUFDO2dCQUNELE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN0RixDQUFDO1lBQ0QsT0FBTyxFQUFFLENBQUM7UUFDZCxDQUFDLENBQUMsRUFDRixrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQ3ZDLENBQUM7UUFDRixJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3BDLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1lBQzVCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsY0FBYztJQUNkLGtCQUFrQjtRQUNkLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxjQUFjO0lBQ2Qsa0JBQWtCO1FBQ2QsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUNqRixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUNsQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGlDQUFpQztJQUNqQyxhQUFhO1FBQ1QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsNkNBQTZDO0lBQzdDLHNCQUFzQjtRQUNsQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVELGFBQWE7SUFDTCxpQkFBaUI7UUFDckIsZ0ZBQWdGO1FBQ2hGLGtIQUFrSDtRQUNsSCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDZixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQ2hHLENBQUM7SUFDTixDQUFDO0lBRUQ7O1VBRU07SUFDRSwyQkFBMkIsQ0FDL0IsU0FBaUIsRUFDakIseUJBQTREO1FBRTVELE1BQU0sUUFBUSxHQUFHLHlCQUF5QixDQUFDO1FBQzNDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNqRSxPQUFPLFNBQVMsQ0FBQztRQUNyQixDQUFDO1FBRUQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVyQyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUFXLEVBQUUsWUFBWSxFQUFFLEVBQUU7WUFDL0MsTUFBTSxtQkFBbUIsR0FBRyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDbEQsTUFBTSxvQkFBb0IsR0FBRyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDcEQsSUFDSSx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUUsR0FBRyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUUsRUFDeEcsQ0FBQztnQkFDQyxPQUFPLENBQUMsWUFBWSxDQUFDO1lBQ3pCLENBQUM7WUFFRCxPQUFPLFdBQVcsQ0FBQztRQUN2QixDQUFDLEVBQUUsU0FBbUIsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxjQUFjO0lBQ04sNEJBQTRCLENBQ2hDLFNBQWlCLEVBQ2pCLGlCQUFpRCxFQUNqRCx5QkFBNEQ7UUFFNUQsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsU0FBUyxFQUFFLHlCQUF5QixDQUFDLENBQUM7UUFDdkcsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztZQUNuRCxPQUFPLEVBQUUsQ0FBQztRQUNkLENBQUM7UUFDRCxJQUFJLGFBQWEsR0FBRyxpQkFBaUIsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBRS9ELE9BQU8saUJBQWlCLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUNsRCxPQUFPLHlCQUF5QixDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFFMUQsSUFBSSx1QkFBdUIsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN4QyxhQUFhLEdBQUcsQ0FBQyxHQUFHLGFBQWEsRUFBRSxHQUFHLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDcEUsT0FBTyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNwQyxPQUFPLHlCQUF5QixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hELENBQUM7UUFFRCxPQUFPLGFBQWEsQ0FBQztJQUN6QixDQUFDO0lBRUQsOERBQThEO0lBQ3RELHFCQUFxQixDQUFDLFlBQTJCO1FBQ3JELE9BQU8sWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRTtZQUNyQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQy9CLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDN0IsSUFDSSxRQUFRLDZDQUErQjtnQkFDdkMsUUFBUSwrQ0FBZ0M7Z0JBQ3hDLFNBQVMsS0FBSyxDQUFDLEVBQ2pCLENBQUM7Z0JBQ0MsT0FBTyxHQUFHLENBQUM7WUFDZixDQUFDO1lBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUNsQixHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3hCLENBQUM7WUFDRCxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzFCLE9BQU8sR0FBRyxDQUFDO1FBQ2YsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELG1GQUFtRjtJQUMzRSw2QkFBNkIsQ0FDakMsaUJBQWdEO1FBRWhELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUU5QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLEVBQUU7WUFDcEMsTUFBTSxnQkFBZ0IsR0FBRyxpQkFBa0IsQ0FBQyxTQUFTLENBQUM7aUJBQ2pELEdBQUcsQ0FBQyxDQUFDLENBQWMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztpQkFDbkMsTUFBTSxDQUNILENBQUMsSUFBc0IsRUFBRSxFQUFFLENBQ3ZCLElBQUksK0NBQWdDLElBQUksSUFBSSw2Q0FBK0IsQ0FDbEY7aUJBQ0EsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUVoQyxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFckMsT0FBTyxHQUFHLENBQUM7UUFDZixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRUQsa0RBQWtEO0lBQzFDLGVBQWUsQ0FBQyxDQUFtQixFQUFFLENBQW1CO1FBQzVELE9BQU8sdUJBQXVCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBRSxHQUFHLHVCQUF1QixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUUsQ0FBQztJQUM3RSxDQUFDO0lBRUQsOERBQThEO0lBQ3RELGlDQUFpQyxDQUFDLFlBQTJCO1FBQ2pFLE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU3RSxNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFO1lBQ3pDLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ2pDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1lBQ3ZDLElBQUksUUFBUSw2Q0FBK0IsSUFBSSxRQUFRLCtDQUFnQyxFQUFFLENBQUM7Z0JBQ3RGLE9BQU8sR0FBRyxDQUFDLENBQUM7WUFDaEIsQ0FBQztZQUVELElBQUksQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDZixFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3JCLENBQUM7WUFFRCxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRXZCLE9BQU8sRUFBRSxDQUFDO1FBQ2QsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRVAsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7YUFDL0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2FBQzNCLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRTVCLE9BQU8sUUFBUTthQUNWLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ1AsSUFBSSxRQUFRLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDO1lBQ3ZDLElBQUksV0FBVyxHQUFHLENBQUMsQ0FBQztZQUNwQixLQUFLLE1BQU0sSUFBSSxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUMzQixRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMxQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FDbEIsV0FBVyxFQUNYLHVCQUF1QixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUNsRSxDQUFDO1lBQ04sQ0FBQztZQUVELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUNyRixDQUFDLENBQUM7YUFDRCxNQUFNLENBQ0gsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQ04sQ0FBQyxDQUFDLEVBQUU7WUFDSixDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDckIsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDckIsV0FBVyxFQUFFLHVCQUF1QixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztnQkFDL0QsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLO2FBQ3ZCLENBQUMsQ0FBQyxDQUNaO2FBQ0EsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsV0FBVyxJQUFJLENBQUMsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQzthQUN4RSxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDOzhHQWhhUSxnQkFBZ0Isd0pBb0pXLHlCQUF5QjtrR0FwSnBELGdCQUFnQixrZkFsQmQ7WUFDUCwrQkFBK0IsQ0FBQztnQkFDNUIscUJBQXFCLEVBQUUsa0JBQWtCLENBQUMsT0FBTzthQUNwRCxDQUFDO1lBQ0Y7Z0JBQ0ksT0FBTyxFQUFFLFVBQVU7Z0JBQ25CLFdBQVcsRUFBRSxnQkFBZ0I7YUFDaEM7U0FDSiwyREF3SGtDLHNCQUFzQixzRUFHbkIseUJBQXlCLDhFQTFCakQsVUFBVSxzRkFKVSxXQUFXLHVIQUpWLFVBQVUsNkJDM0tqRCxxK0NBNENBLDg5UER3Q1Esc0JBQXNCLG1HQUN0Qix5QkFBeUIsZ0VBQ3pCLGFBQWEsNmNBQ2IsZUFBZSwrSUFDZixzQkFBc0IsK0lBQ3RCLGNBQWM7O0FBOEpsQjtJQURDLGFBQWE7Ozs7OERBVWI7MkZBcEtRLGdCQUFnQjtrQkF4QjVCLFNBQVM7K0JBQ0ksWUFBWSxpQkFHUCxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQLCtCQUErQixDQUFDOzRCQUM1QixxQkFBcUIsRUFBRSxrQkFBa0IsQ0FBQyxPQUFPO3lCQUNwRCxDQUFDO3dCQUNGOzRCQUNJLE9BQU8sRUFBRSxVQUFVOzRCQUNuQixXQUFXLGtCQUFrQjt5QkFDaEM7cUJBQ0osV0FDUTt3QkFDTCxzQkFBc0I7d0JBQ3RCLHlCQUF5Qjt3QkFDekIsYUFBYTt3QkFDYixlQUFlO3dCQUNmLHNCQUFzQjt3QkFDdEIsY0FBYztxQkFDakI7OzBCQXNKSSxRQUFROzswQkFBSSxRQUFROzswQkFBSSxNQUFNOzJCQUFDLHlCQUF5Qjt5Q0EvSTdELE9BQU87c0JBRE4sS0FBSztnQkFNTixLQUFLO3NCQURKLEtBQUs7Z0JBT0YsY0FBYztzQkFEakIsS0FBSztnQkFlTixNQUFNO3NCQURMLEtBQUs7Z0JBS04sS0FBSztzQkFESixLQUFLO2dCQU9OLE1BQU07c0JBREwsS0FBSztnQkFPTixXQUFXO3NCQURWLEtBQUs7Z0JBS04sYUFBYTtzQkFEWixLQUFLO2dCQUtOLFFBQVE7c0JBRFAsS0FBSztnQkFPRixZQUFZO3NCQURmLEtBQUs7Z0JBWU4sU0FBUztzQkFGUixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGlCQUFpQjtnQkFNOUIsY0FBYztzQkFGYixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLHNCQUFzQjtnQkFLbkMsWUFBWTtzQkFEWCxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBSy9DLFlBQVk7c0JBRFgsZUFBZTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDO2dCQUsxQyxjQUFjO3NCQURqQixZQUFZO3VCQUFDLFVBQVU7Z0JBV1AsS0FBSztzQkFEckIsV0FBVzt1QkFBQyxXQUFXO2dCQTBEeEIsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIEFmdGVyVmlld0NoZWNrZWQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBjb250ZW50Q2hpbGRyZW4sXG4gICAgRGVzdHJveVJlZixcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgaW5qZWN0LFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBRdWVyeUxpc3QsXG4gICAgc2lnbmFsLFxuICAgIFNraXBTZWxmLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERZTkFNSUNfUEFHRV9IRUFERVJfVE9LRU4sIER5bmFtaWNQYWdlSGVhZGVyIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3NoYXJlZCc7XG5cbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gICAgYXBwbHlDc3NDbGFzcyxcbiAgICBDc3NDbGFzc0J1aWxkZXIsXG4gICAgRHluYW1pY1BvcnRhbENvbXBvbmVudCxcbiAgICBOdWxsYWJsZSxcbiAgICBPVkVSRkxPV19QUklPUklUWV9TQ09SRSxcbiAgICBPdmVyZmxvd1ByaW9yaXR5LFxuICAgIFJlc2l6ZU9ic2VydmVyU2VydmljZVxufSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvYnV0dG9uJztcbmltcG9ydCB7XG4gICAgQ29udGVudERlbnNpdHlNb2RlLFxuICAgIENvbnRlbnREZW5zaXR5T2JzZXJ2ZXIsXG4gICAgY29udGVudERlbnNpdHlPYnNlcnZlclByb3ZpZGVyc1xufSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvY29udGVudC1kZW5zaXR5JztcbmltcG9ydCB7IFBvcG92ZXJNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvcG9wb3Zlcic7XG5pbXBvcnQgeyBIZWFkaW5nTGV2ZWwgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2hhcmVkJztcbmltcG9ydCB7IFRpdGxlQ29tcG9uZW50LCBUaXRsZVRva2VuIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3RpdGxlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbWFwLCBPYnNlcnZhYmxlLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRvb2xiYXJJdGVtIH0gZnJvbSAnLi9hYnN0cmFjdC10b29sYmFyLWl0ZW0uY2xhc3MnO1xuaW1wb3J0IHsgRkRfVE9PTEJBUiB9IGZyb20gJy4vdG9rZW5zJztcbmltcG9ydCB7IFRvb2xiYXJTZXBhcmF0b3JDb21wb25lbnQgfSBmcm9tICcuL3Rvb2xiYXItc2VwYXJhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sYmFyU3BhY2VyRGlyZWN0aXZlIH0gZnJvbSAnLi90b29sYmFyLXNwYWNlci5kaXJlY3RpdmUnO1xuXG5jb25zdCBFTEVNRU5UX01BUkdJTiA9IDg7XG5jb25zdCBPVkVSRkxPV19CVE5fQ09aWSA9IDM2O1xuY29uc3QgT1ZFUkZMT1dfQlROX0NPTVBBQ1QgPSAzMjtcbmNvbnN0IE1BWF9DT05URU5UX1NJWkUgPSA5OTk5OTk5OTtcblxuZXhwb3J0IHR5cGUgVG9vbGJhclR5cGUgPSAnc29saWQnIHwgJ3RyYW5zcGFyZW50JyB8ICdhdXRvJyB8ICdpbmZvJztcblxubGV0IHRvb2xiYXJUaXRsZUlkID0gMDtcblxuZXhwb3J0IGNvbnN0IGVudW0gT3ZlcmZsb3dQcmlvcml0eUVudW0ge1xuICAgIEFMV0FZUyA9ICdhbHdheXMnLFxuICAgIE5FVkVSID0gJ25ldmVyJyxcbiAgICBMT1cgPSAnbG93JyxcbiAgICBISUdIID0gJ2hpZ2gnLFxuICAgIERJU0FQUEVBUiA9ICdkaXNhcHBlYXInXG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtdG9vbGJhcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Rvb2xiYXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi90b29sYmFyLmNvbXBvbmVudC5zY3NzJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBjb250ZW50RGVuc2l0eU9ic2VydmVyUHJvdmlkZXJzKHtcbiAgICAgICAgICAgIGRlZmF1bHRDb250ZW50RGVuc2l0eTogQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1RcbiAgICAgICAgfSksXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEZEX1RPT0xCQVIsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogVG9vbGJhckNvbXBvbmVudFxuICAgICAgICB9XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIFRvb2xiYXJTcGFjZXJEaXJlY3RpdmUsXG4gICAgICAgIFRvb2xiYXJTZXBhcmF0b3JDb21wb25lbnQsXG4gICAgICAgIFBvcG92ZXJNb2R1bGUsXG4gICAgICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BvcnRhbENvbXBvbmVudCxcbiAgICAgICAgVGl0bGVDb21wb25lbnRcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFRvb2xiYXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBBZnRlclZpZXdDaGVja2VkLCBDc3NDbGFzc0J1aWxkZXIsIEFmdGVyQ29udGVudEluaXQge1xuICAgIC8qKlxuICAgICAqIFRoZSBJRCBvZiB0aGUgdG9vbGJhciB0aXRsZVxuICAgICAqICovXG4gICAgQElucHV0KClcbiAgICB0aXRsZUlkID0gYGZkLXRvb2xiYXItdGl0bGUtJHt0b29sYmFyVGl0bGVJZCsrfWA7XG5cbiAgICAvKiogUHJvcGVydHkgYWxsb3dzIHVzZXIgdG8gcGFzcyBhZGRpdGlvbmFsIGNsYXNzXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBjbGFzczogc3RyaW5nO1xuXG4gICAgLyoqIERldGVybWluZXMgaWYgb3ZlcmZsb3cgYnV0dG9uIHNob3VsZCBiZSB2aXNpYmxlXG4gICAgICogRGVmYXVsdCB2YWx1ZTogZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBzaG91bGRPdmVyZmxvdyh2YWw6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fc2hvdWxkT3ZlcmZsb3cgPSB2YWw7XG4gICAgICAgIHRoaXMuc2hvdWxkT3ZlcmZsb3ckLm5leHQodmFsKTtcbiAgICB9XG5cbiAgICBnZXQgc2hvdWxkT3ZlcmZsb3coKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zaG91bGRPdmVyZmxvdztcbiAgICB9XG5cbiAgICAvKiogRGV0ZXJtaW5lcyB0aGUgdHlwZSBvZiB0b29sYmFyXG4gICAgICogQXZhaWxhYmxlIG9wdGlvbnM6ICdzb2xpZCcgfCAndHJhbnNwYXJlbnQnIHwgJ2F1dG8nIHwgJ2luZm8nXG4gICAgICogRGVmYXVsdCB2YWx1ZTogJ3NvbGlkJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZmRUeXBlOiBUb29sYmFyVHlwZSA9ICdzb2xpZCc7XG5cbiAgICAvKiogVGhlIHRpdGxlIGZvciB0aGUgdG9vbGJhci4gKi9cbiAgICBASW5wdXQoKVxuICAgIHRpdGxlOiBzdHJpbmc7XG5cbiAgICAvKiogRGV0ZXJtaW5lcyBpZiB0b29sYmFyIHNob3VsZCBoYXMgYWN0aXZlIHN0YXRlIChvbmx5IHdoZW4gZmRUeXBlID09ICdpbmZvJylcbiAgICAgKiBEZWZhdWx0IHZhbHVlOiBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgYWN0aXZlID0gZmFsc2U7XG5cbiAgICAvKiogRGV0ZXJtaW5lcyBpZiB0b29sYmFyIHNob3VsZCBjbGVhciBib3JkZXIgYm90dG9tXG4gICAgICogRGVmYXVsdCB2YWx1ZTogZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGNsZWFyQm9yZGVyID0gZmFsc2U7XG5cbiAgICAvKiogV2hldGhlciBhbGwgaXRlbXMgc2hvdWxkIGJlIGluc2lkZSBvdmVyZmxvdyAqL1xuICAgIEBJbnB1dCgpXG4gICAgZm9yY2VPdmVyZmxvdyA9IGZhbHNlO1xuXG4gICAgLyoqIFRhYmluZGV4IG9mIHRoZSB0b29sYmFyIGVsZW1lbnQsIHRvIGJlIHVzZWQgd2hlbiBmZFR5cGU9XCJpbmZvXCIgKi9cbiAgICBASW5wdXQoKVxuICAgIHRhYmluZGV4ID0gLTE7XG5cbiAgICAvKipcbiAgICAgKiBIZWFkaW5nIGxldmVsIG9mIHRoZSB0b29sYmFyIHRpdGxlLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGhlYWRpbmdMZXZlbChsZXZlbDogTnVsbGFibGU8SGVhZGluZ0xldmVsPikge1xuICAgICAgICBpZiAodHlwZW9mIGxldmVsID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgdGhpcy5faGVhZGluZ0xldmVsID0gbGV2ZWw7XG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGxldmVsID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgdGhpcy5faGVhZGluZ0xldmVsID0gTnVtYmVyLnBhcnNlSW50KGxldmVsLnJlcGxhY2UoL1xcRC9nLCAnJyksIDEwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBUb29sYmFyIEFyaWEtbGFiZWwgYXR0cmlidXRlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtbGFiZWwnKVxuICAgIGFyaWFMYWJlbDogc3RyaW5nO1xuXG4gICAgLyoqIFRvb2xiYXIgQXJpYS1sYWJlbGxlZGJ5IGF0dHJpYnV0ZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWxhYmVsbGVkYnknKVxuICAgIGFyaWFMYWJlbGxlZEJ5OiBzdHJpbmc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ3RpdGxlRWxlbWVudCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICAgIHRpdGxlRWxlbWVudDogRWxlbWVudFJlZjxIVE1MSGVhZEVsZW1lbnQ+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gVG9vbGJhckl0ZW0pKVxuICAgIHRvb2xiYXJJdGVtczogUXVlcnlMaXN0PFRvb2xiYXJJdGVtPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQENvbnRlbnRDaGlsZChUaXRsZVRva2VuKVxuICAgIHNldCB0aXRsZUNvbXBvbmVudCh0aXRsZTogVGl0bGVUb2tlbiB8IG51bGwpIHtcbiAgICAgICAgdGhpcy5fdGl0bGVDb21wb25lbnQkLm5leHQodGl0bGUpO1xuICAgIH1cblxuICAgIGdldCB0aXRsZUNvbXBvbmVudCgpOiBUaXRsZVRva2VuIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLl90aXRsZUNvbXBvbmVudCQudmFsdWU7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpXG4gICAgcHJpdmF0ZSByZWFkb25seSBfcm9sZSA9ICd0b29sYmFyJztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgb3ZlcmZsb3dJdGVtcyQ6IE9ic2VydmFibGU8VG9vbGJhckl0ZW1bXT47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG92ZXJmbG93bkl0ZW1zOiBUb29sYmFySXRlbVtdID0gW107XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNwYWNlclVzZWQgPSBzaWduYWwoZmFsc2UpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzcGFjZXJEaXJlY3RpdmVzID0gY29udGVudENoaWxkcmVuKFRvb2xiYXJTcGFjZXJEaXJlY3RpdmUpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzZXBhcmF0b3JEaXJlY3RpdmVzID0gY29udGVudENoaWxkcmVuKFRvb2xiYXJTZXBhcmF0b3JDb21wb25lbnQpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfaGVhZGluZ0xldmVsID0gMjtcblxuICAgIC8qKiBIVE1MIEVsZW1lbnQgUmVmZXJlbmNlLiAqL1xuICAgIHJlYWRvbmx5IGVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3RpdGxlQ29tcG9uZW50JDogQmVoYXZpb3JTdWJqZWN0PFRpdGxlVG9rZW4gfCBudWxsPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VGl0bGVUb2tlbiB8IG51bGw+KG51bGwpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9yZWZyZXNoT3ZlcmZsb3ckID0gbmV3IEJlaGF2aW9yU3ViamVjdDx2b2lkPih1bmRlZmluZWQpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIGdldCBfdG9vbGJhcldpZHRoKCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IF9vdmVyZmxvd19idG5fc2l6ZSA9IHRoaXMuX2NvbnRlbnREZW5zaXR5T2JzZXJ2ZXIuaXNDb21wYWN0ID8gT1ZFUkZMT1dfQlROX0NPTVBBQ1QgOiBPVkVSRkxPV19CVE5fQ09aWTtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuY2xpZW50V2lkdGggLVxuICAgICAgICAgICAgKF9vdmVyZmxvd19idG5fc2l6ZSArIDQgKiBFTEVNRU5UX01BUkdJTiArIDEgKyB0aGlzLnNlcGFyYXRvckRpcmVjdGl2ZXMoKS5sZW5ndGgpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zaG91bGRPdmVyZmxvdyA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHNob3VsZE92ZXJmbG93JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICByZWFkb25seSBfY29udGVudERlbnNpdHlPYnNlcnZlcjogQ29udGVudERlbnNpdHlPYnNlcnZlcixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveVJlZjogRGVzdHJveVJlZixcbiAgICAgICAgcHJpdmF0ZSByZXNpemVPYnNlcnZlclNlcnZpY2U6IFJlc2l6ZU9ic2VydmVyU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgQEluamVjdChEWU5BTUlDX1BBR0VfSEVBREVSX1RPS0VOKSBwcml2YXRlIF9keW5hbWljUGFnZUhlYWRlcj86IER5bmFtaWNQYWdlSGVhZGVyXG4gICAgKSB7XG4gICAgICAgIF9jb250ZW50RGVuc2l0eU9ic2VydmVyLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQGFwcGx5Q3NzQ2xhc3NcbiAgICBidWlsZENvbXBvbmVudENzc0NsYXNzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICdmZC10b29sYmFyJyxcbiAgICAgICAgICAgIGBmZC10b29sYmFyLS0ke3RoaXMuZmRUeXBlfWAsXG4gICAgICAgICAgICBgJHt0aGlzLmFjdGl2ZSAmJiB0aGlzLmZkVHlwZSA9PT0gJ2luZm8nID8gJ2ZkLXRvb2xiYXItLWFjdGl2ZScgOiAnJ31gLFxuICAgICAgICAgICAgYCR7dGhpcy50aXRsZSB8fCB0aGlzLnRpdGxlQ29tcG9uZW50ID8gJ2ZkLXRvb2xiYXItLXRpdGxlJyA6ICcnfWAsXG4gICAgICAgICAgICBgJHt0aGlzLmNsZWFyQm9yZGVyID8gJ2ZkLXRvb2xiYXItLWNsZWFyJyA6ICcnfWAsXG4gICAgICAgICAgICBgJHt0aGlzLl9keW5hbWljUGFnZUhlYWRlciA/ICdmZC1keW5hbWljLXBhZ2VfX3Rvb2xiYXInIDogJyd9YFxuICAgICAgICBdO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl91cGRhdGVTcGFjZXJVc2VkKCk7XG5cbiAgICAgICAgdGhpcy5vdmVyZmxvd0l0ZW1zJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgdGhpcy5yZXNpemVPYnNlcnZlclNlcnZpY2Uub2JzZXJ2ZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkucGlwZShtYXAoKCkgPT4gdGhpcy5fdG9vbGJhcldpZHRoKSksXG4gICAgICAgICAgICB0aGlzLnRvb2xiYXJJdGVtcy5jaGFuZ2VzLnBpcGUoXG4gICAgICAgICAgICAgICAgc3RhcnRXaXRoKHRoaXMudG9vbGJhckl0ZW1zKSxcbiAgICAgICAgICAgICAgICBtYXAoKHRvb2xiYXJJdGVtcykgPT4gdG9vbGJhckl0ZW1zLnRvQXJyYXkoKSlcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICB0aGlzLl90aXRsZUNvbXBvbmVudCQucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHRpdGxlQ29tcG9uZW50KTogSFRNTEVsZW1lbnQgfCBudWxsID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aXRsZUNvbXBvbmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMudGl0bGVFbGVtZW50Py5uYXRpdmVFbGVtZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aXRsZUNvbXBvbmVudC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICB0aGlzLnNob3VsZE92ZXJmbG93JCxcbiAgICAgICAgICAgIHRoaXMuX3JlZnJlc2hPdmVyZmxvdyRcbiAgICAgICAgXSkucGlwZShcbiAgICAgICAgICAgIG1hcCgoW3Rvb2xiYXJXaWR0aCwgdG9vbGJhckl0ZW1zLCB0aXRsZUVsZW1lbnQsIHNob3VsZE92ZXJmbG93XSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChzaG91bGRPdmVyZmxvdykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBfc29ydGVkQnlQcmlvcml0eUFuZEdyb3VwSXRlbXMgPSB0aGlzLl9nZXRTb3J0ZWRCeVByaW9yaXR5QW5kR3JvdXBJdGVtcyh0b29sYmFySXRlbXMpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBvdmVyZmxvd0l0ZW1zOiBUb29sYmFySXRlbVtdID0gW107XG4gICAgICAgICAgICAgICAgICAgIF9zb3J0ZWRCeVByaW9yaXR5QW5kR3JvdXBJdGVtcy5yZWR1Y2UoKF9jb250ZW50V2lkdGgsIHRvb2xiYXJJdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpdGVtV2lkdGggPSB0b29sYmFySXRlbS53aWR0aCArIDI7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpdGVtUHJpb3JpdHkgPSB0b29sYmFySXRlbS5wcmlvcml0eTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNob3VsZEl0ZW1CZVJlbW92ZWRCeVdpZHRoID0gaXRlbVdpZHRoICsgX2NvbnRlbnRXaWR0aCA+IHRvb2xiYXJXaWR0aDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNob3VsZEFsd2F5c0JlSW5PdmVyZmxvdyA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVByaW9yaXR5ID09PSBPdmVyZmxvd1ByaW9yaXR5RW51bS5BTFdBWVMgfHwgdGhpcy5mb3JjZU92ZXJmbG93O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2hvdWxkTmV2ZXJCZUluT3ZlcmZsb3cgPSBpdGVtUHJpb3JpdHkgPT09IE92ZXJmbG93UHJpb3JpdHlFbnVtLk5FVkVSO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKChzaG91bGRJdGVtQmVSZW1vdmVkQnlXaWR0aCAmJiAhc2hvdWxkTmV2ZXJCZUluT3ZlcmZsb3cpIHx8IHNob3VsZEFsd2F5c0JlSW5PdmVyZmxvdykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93SXRlbXMucHVzaCh0b29sYmFySXRlbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNob3VsZEFsd2F5c0JlSW5PdmVyZmxvdyA/IF9jb250ZW50V2lkdGggOiBNQVhfQ09OVEVOVF9TSVpFO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRlbnRXaWR0aCArIGl0ZW1XaWR0aDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSwgdGl0bGVFbGVtZW50Py5jbGllbnRXaWR0aCB8fCAwKTtcbiAgICAgICAgICAgICAgICAgICAgLy8gSGlkZSBvcnBoYW5zXG4gICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgdG9vbGJhckl0ZW0gb2Ygb3ZlcmZsb3dJdGVtcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ3JvdXBlZENvbGxlY3Rpb24gPSB0aGlzLl9nZXRHcm91cGVkQ29sbGVjdGlvbih0b29sYmFySXRlbXMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ3JvdXBlZENvbGxlY3Rpb25Qcmlvcml0aWVzID0gdGhpcy5fZ2V0R3JvdXBlZENvbGxlY3Rpb25Qcmlvcml0eShncm91cGVkQ29sbGVjdGlvbik7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBncm91cCA9IHRvb2xiYXJJdGVtLmdyb3VwO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXRlbVByaW9yaXR5ID0gdG9vbGJhckl0ZW0ucHJpb3JpdHk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZ3JvdXAgIT09IDAgJiYgaXRlbVByaW9yaXR5ICE9PSBPdmVyZmxvd1ByaW9yaXR5RW51bS5ESVNBUFBFQVIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpdGVtc0Zyb21DdXJyZW50R3JvdXAgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXRFbGVtZW50c0Zyb21DdXJyZW50R3JvdXAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncm91cCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyb3VwZWRDb2xsZWN0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JvdXBlZENvbGxlY3Rpb25Qcmlvcml0aWVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgfHwgW107XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXNGcm9tQ3VycmVudEdyb3VwLmZvckVhY2goKGkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG92ZXJmbG93SXRlbXMuaW5kZXhPZihpKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93SXRlbXMucHVzaChpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBvdmVyZmxvd0l0ZW1zLnNvcnQoKGEsIGIpID0+IHRoaXMuX3NvcnRQcmlvcml0aWVzKGEucHJpb3JpdHksIGIucHJpb3JpdHkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZilcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5vdmVyZmxvd0l0ZW1zJC5zdWJzY3JpYmUoKGl0ZW1zKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm92ZXJmbG93bkl0ZW1zID0gaXRlbXM7XG4gICAgICAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmJ1aWxkQ29tcG9uZW50Q3NzQ2xhc3MoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnRpdGxlQ29tcG9uZW50KSB7XG4gICAgICAgICAgICB0aGlzLnRpdGxlQ29tcG9uZW50LmVsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnZmQtdG9vbGJhcl9fdGl0bGUnKTtcbiAgICAgICAgICAgIHRoaXMuYnVpbGRDb21wb25lbnRDc3NDbGFzcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIENoYW5nZSBkZXRlY3Rpb24gcmVmZXJlbmNlICovXG4gICAgZGV0ZWN0Q2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBNZXRob2QgdHJpZ2dlcmluZyBjb2xsYXBzaWJsZSB0b29sYmFyICAqL1xuICAgIHVwZGF0ZUNvbGxhcHNpYmxlSXRlbXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3JlZnJlc2hPdmVyZmxvdyQubmV4dCgpO1xuICAgIH1cblxuICAgIC8qKiBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF91cGRhdGVTcGFjZXJVc2VkKCk6IHZvaWQge1xuICAgICAgICAvLyBkbyBub3QgcmVuZGVyIGV4dHJhIHNwYWNlciBpZiB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgcGFzc2VkIGJ5IHRoZSBhcHBsaWNhdGlvblxuICAgICAgICAvLyBhbmQgaXQgaXMgbm90IGZpeGVkIHRoaXMuc3BhY2VyVXNlZC5zZXQodGhpcy5zcGFjZXIubGVuZ3RoID4gMCAmJiB0aGlzLnNwYWNlci5zb21lKChzcGFjZXIpID0+ICFzcGFjZXIuZml4ZWQpKTtcbiAgICAgICAgdGhpcy5zcGFjZXJVc2VkLnNldChcbiAgICAgICAgICAgIHRoaXMuc3BhY2VyRGlyZWN0aXZlcygpLmxlbmd0aCA+IDAgJiYgdGhpcy5zcGFjZXJEaXJlY3RpdmVzKCkuc29tZSgoc3BhY2VyKSA9PiAhc3BhY2VyLmZpeGVkKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIEdldCBncm91cCBudW1iZXIgd2l0aCB0aGUgbG93ZXN0IHByaW9yaXR5LlxuICAgICAqICBVc2VzIGZvciBkZXRlY3RpbmcgYSBncm91cCBvZiBlbGVtZW50cyB3aGljaCB3b3VsZCBiZSBoaWRkZW4gZnJvbSB0aGUgdG9vbGJhci5cbiAgICAgKiAgKi9cbiAgICBwcml2YXRlIF9nZXRMb3dlc3RQcmlvcml0eUZyb21Hcm91cChcbiAgICAgICAgaXRlbUdyb3VwOiBudW1iZXIsXG4gICAgICAgIGdyb3VwZWRDb2xsZWN0aW9uUHJpb3JpdHk/OiBSZWNvcmQ8bnVtYmVyLCBPdmVyZmxvd1ByaW9yaXR5PlxuICAgICk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHByaW9yaXR5ID0gZ3JvdXBlZENvbGxlY3Rpb25Qcmlvcml0eTtcbiAgICAgICAgaWYgKCFwcmlvcml0eSB8fCAhT1ZFUkZMT1dfUFJJT1JJVFlfU0NPUkUuZ2V0KHByaW9yaXR5W2l0ZW1Hcm91cF0pKSB7XG4gICAgICAgICAgICByZXR1cm4gaXRlbUdyb3VwO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZ3JvdXBzID0gT2JqZWN0LmtleXMocHJpb3JpdHkpO1xuXG4gICAgICAgIHJldHVybiBncm91cHMucmVkdWNlKChsb3dlc3RHcm91cCwgY3VycmVudEdyb3VwKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBsb3dlc3RHcm91cFByaW9yaXR5ID0gcHJpb3JpdHlbbG93ZXN0R3JvdXBdO1xuICAgICAgICAgICAgY29uc3QgY3VycmVudEdyb3VwUHJpb3JpdHkgPSBwcmlvcml0eVtjdXJyZW50R3JvdXBdO1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIE9WRVJGTE9XX1BSSU9SSVRZX1NDT1JFLmdldChjdXJyZW50R3JvdXBQcmlvcml0eSkhIDwgT1ZFUkZMT1dfUFJJT1JJVFlfU0NPUkUuZ2V0KGxvd2VzdEdyb3VwUHJpb3JpdHkpIVxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuICtjdXJyZW50R3JvdXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBsb3dlc3RHcm91cDtcbiAgICAgICAgfSwgaXRlbUdyb3VwIGFzIG51bWJlcik7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXRFbGVtZW50c0Zyb21DdXJyZW50R3JvdXAoXG4gICAgICAgIGl0ZW1Hcm91cDogbnVtYmVyLFxuICAgICAgICBncm91cGVkQ29sbGVjdGlvbj86IFJlY29yZDxudW1iZXIsIFRvb2xiYXJJdGVtW10+LFxuICAgICAgICBncm91cGVkQ29sbGVjdGlvblByaW9yaXR5PzogUmVjb3JkPG51bWJlciwgT3ZlcmZsb3dQcmlvcml0eT5cbiAgICApOiBUb29sYmFySXRlbVtdIHtcbiAgICAgICAgY29uc3QgbG93ZXN0UHJpb3JpdHlGcm9tR3JvdXAgPSB0aGlzLl9nZXRMb3dlc3RQcmlvcml0eUZyb21Hcm91cChpdGVtR3JvdXAsIGdyb3VwZWRDb2xsZWN0aW9uUHJpb3JpdHkpO1xuICAgICAgICBpZiAoIWdyb3VwZWRDb2xsZWN0aW9uIHx8ICFncm91cGVkQ29sbGVjdGlvblByaW9yaXR5KSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGl0ZW1zVG9SZW1vdmUgPSBncm91cGVkQ29sbGVjdGlvbltsb3dlc3RQcmlvcml0eUZyb21Hcm91cF07XG5cbiAgICAgICAgZGVsZXRlIGdyb3VwZWRDb2xsZWN0aW9uW2xvd2VzdFByaW9yaXR5RnJvbUdyb3VwXTtcbiAgICAgICAgZGVsZXRlIGdyb3VwZWRDb2xsZWN0aW9uUHJpb3JpdHlbbG93ZXN0UHJpb3JpdHlGcm9tR3JvdXBdO1xuXG4gICAgICAgIGlmIChsb3dlc3RQcmlvcml0eUZyb21Hcm91cCAhPT0gaXRlbUdyb3VwKSB7XG4gICAgICAgICAgICBpdGVtc1RvUmVtb3ZlID0gWy4uLml0ZW1zVG9SZW1vdmUsIC4uLmdyb3VwZWRDb2xsZWN0aW9uW2l0ZW1Hcm91cF1dO1xuICAgICAgICAgICAgZGVsZXRlIGdyb3VwZWRDb2xsZWN0aW9uW2l0ZW1Hcm91cF07XG4gICAgICAgICAgICBkZWxldGUgZ3JvdXBlZENvbGxlY3Rpb25Qcmlvcml0eVtpdGVtR3JvdXBdO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGl0ZW1zVG9SZW1vdmU7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gR2V0IHRoZSBvYmplY3Qgd2l0aCBncm91cGVkIGFycmF5cyBvZiBlbGVtZW50cy4gKi9cbiAgICBwcml2YXRlIF9nZXRHcm91cGVkQ29sbGVjdGlvbih0b29sYmFySXRlbXM6IFRvb2xiYXJJdGVtW10pOiBSZWNvcmQ8bnVtYmVyLCBUb29sYmFySXRlbVtdPiB7XG4gICAgICAgIHJldHVybiB0b29sYmFySXRlbXMucmVkdWNlKChhY2MsIGl0ZW0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGl0ZW1QcmlvID0gaXRlbS5wcmlvcml0eTtcbiAgICAgICAgICAgIGNvbnN0IGl0ZW1Hcm91cCA9IGl0ZW0uZ3JvdXA7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgaXRlbVByaW8gPT09IE92ZXJmbG93UHJpb3JpdHlFbnVtLk5FVkVSIHx8XG4gICAgICAgICAgICAgICAgaXRlbVByaW8gPT09IE92ZXJmbG93UHJpb3JpdHlFbnVtLkFMV0FZUyB8fFxuICAgICAgICAgICAgICAgIGl0ZW1Hcm91cCA9PT0gMFxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghYWNjW2l0ZW1Hcm91cF0pIHtcbiAgICAgICAgICAgICAgICBhY2NbaXRlbUdyb3VwXSA9IFtdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYWNjW2l0ZW1Hcm91cF0ucHVzaChpdGVtKTtcbiAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgIH0sIHt9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBHZXQgdGhlIG9iamVjdCB3aXRoIHRoZSBoaWdoZXN0IHByaW9yaXR5IGZvciBlYWNoIGdyb3VwIG9mIGVsZW1lbnRzLiAqL1xuICAgIHByaXZhdGUgX2dldEdyb3VwZWRDb2xsZWN0aW9uUHJpb3JpdHkoXG4gICAgICAgIGdyb3VwZWRDb2xsZWN0aW9uOiBSZWNvcmQ8bnVtYmVyLCBUb29sYmFySXRlbVtdPlxuICAgICk6IFJlY29yZDxudW1iZXIsIE92ZXJmbG93UHJpb3JpdHk+IHtcbiAgICAgICAgY29uc3QgZ3JvdXBzID0gT2JqZWN0LmtleXMoZ3JvdXBlZENvbGxlY3Rpb24pO1xuXG4gICAgICAgIHJldHVybiBncm91cHMucmVkdWNlKChhY2MsIGl0ZW1Hcm91cCkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgc29ydGVkUHJpb3JpdGllcyA9IGdyb3VwZWRDb2xsZWN0aW9uIVtpdGVtR3JvdXBdXG4gICAgICAgICAgICAgICAgLm1hcCgoaTogVG9vbGJhckl0ZW0pID0+IGkucHJpb3JpdHkpXG4gICAgICAgICAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgKHByaW86IE92ZXJmbG93UHJpb3JpdHkpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBwcmlvICE9PSBPdmVyZmxvd1ByaW9yaXR5RW51bS5BTFdBWVMgJiYgcHJpbyAhPT0gT3ZlcmZsb3dQcmlvcml0eUVudW0uTkVWRVJcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLnNvcnQodGhpcy5fc29ydFByaW9yaXRpZXMpO1xuXG4gICAgICAgICAgICBhY2NbaXRlbUdyb3VwXSA9IHNvcnRlZFByaW9yaXRpZXNbMF07XG5cbiAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgIH0sIHt9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBTb3J0IHByaW9yaXRpZXMgb2YgZWxlbWVudHMvZ3JvdXBzLiAqL1xuICAgIHByaXZhdGUgX3NvcnRQcmlvcml0aWVzKGE6IE92ZXJmbG93UHJpb3JpdHksIGI6IE92ZXJmbG93UHJpb3JpdHkpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gT1ZFUkZMT1dfUFJJT1JJVFlfU0NPUkUuZ2V0KGIpISAtIE9WRVJGTE9XX1BSSU9SSVRZX1NDT1JFLmdldChhKSE7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gU29ydCBieSBncm91cCBhbmQgcHJpb3JpdHkgYW5kIGluaXRpYWwgcG9zaXRpb24gKi9cbiAgICBwcml2YXRlIF9nZXRTb3J0ZWRCeVByaW9yaXR5QW5kR3JvdXBJdGVtcyh0b29sYmFySXRlbXM6IFRvb2xiYXJJdGVtW10pOiBUb29sYmFySXRlbVtdIHtcbiAgICAgICAgY29uc3Qgbm90U29ydGVkID0gdG9vbGJhckl0ZW1zLm1hcCgoZWxlbWVudCwgaW5kZXgpID0+ICh7IGVsZW1lbnQsIGluZGV4IH0pKTtcblxuICAgICAgICBjb25zdCBncm91cHMgPSBub3RTb3J0ZWQucmVkdWNlKChnciwgaXRlbSkgPT4ge1xuICAgICAgICAgICAgbGV0IGdyb3VwSWQgPSBpdGVtLmVsZW1lbnQuZ3JvdXA7XG4gICAgICAgICAgICBjb25zdCBpdGVtUHJpbyA9IGl0ZW0uZWxlbWVudC5wcmlvcml0eTtcbiAgICAgICAgICAgIGlmIChpdGVtUHJpbyA9PT0gT3ZlcmZsb3dQcmlvcml0eUVudW0uTkVWRVIgfHwgaXRlbVByaW8gPT09IE92ZXJmbG93UHJpb3JpdHlFbnVtLkFMV0FZUykge1xuICAgICAgICAgICAgICAgIGdyb3VwSWQgPSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIWdyW2dyb3VwSWRdKSB7XG4gICAgICAgICAgICAgICAgZ3JbZ3JvdXBJZF0gPSBbXTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZ3JbZ3JvdXBJZF0ucHVzaChpdGVtKTtcblxuICAgICAgICAgICAgcmV0dXJuIGdyO1xuICAgICAgICB9LCB7fSk7XG5cbiAgICAgICAgY29uc3QgZ3JvdXBJZHMgPSBPYmplY3Qua2V5cyhncm91cHMpXG4gICAgICAgICAgICAubWFwKChnKSA9PiBwYXJzZUludChnLCAxMCkpXG4gICAgICAgICAgICAuZmlsdGVyKChnKSA9PiBnICE9PSAwKTtcblxuICAgICAgICByZXR1cm4gZ3JvdXBJZHNcbiAgICAgICAgICAgIC5tYXAoKGcpID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgbWluSW5kZXggPSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUjtcbiAgICAgICAgICAgICAgICBsZXQgbWF4UHJpb3JpdHkgPSAwO1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBncm91cHNbZ10pIHtcbiAgICAgICAgICAgICAgICAgICAgbWluSW5kZXggPSBNYXRoLm1pbihtaW5JbmRleCwgaXRlbS5pbmRleCk7XG4gICAgICAgICAgICAgICAgICAgIG1heFByaW9yaXR5ID0gTWF0aC5tYXgoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhQcmlvcml0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgIE9WRVJGTE9XX1BSSU9SSVRZX1NDT1JFLmdldChpdGVtLmVsZW1lbnQucHJpb3JpdHkpID8/IC1JbmZpbml0eVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiB7IGdyb3VwOiBncm91cHNbZ10ubWFwKCh7IGVsZW1lbnQgfSkgPT4gZWxlbWVudCksIG1pbkluZGV4LCBtYXhQcmlvcml0eSB9O1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5jb25jYXQoXG4gICAgICAgICAgICAgICAgIWdyb3Vwc1swXVxuICAgICAgICAgICAgICAgICAgICA/IFtdXG4gICAgICAgICAgICAgICAgICAgIDogZ3JvdXBzWzBdLm1hcCgoaXRlbSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JvdXA6IFtpdGVtLmVsZW1lbnRdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhQcmlvcml0eTogT1ZFUkZMT1dfUFJJT1JJVFlfU0NPUkUuZ2V0KGl0ZW0uZWxlbWVudC5wcmlvcml0eSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1pbkluZGV4OiBpdGVtLmluZGV4XG4gICAgICAgICAgICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc29ydCgoYSwgYikgPT4gYi5tYXhQcmlvcml0eSAtIGEubWF4UHJpb3JpdHkgfHwgYS5taW5JbmRleCAtIGIubWluSW5kZXgpXG4gICAgICAgICAgICAucmVkdWNlKChhcnIsIGkpID0+IGFyci5jb25jYXQoaS5ncm91cCksIFtdKTtcbiAgICB9XG59XG4iLCJAaWYgKHRpdGxlKSB7XG4gICAgPHNwYW5cbiAgICAgICAgZmQtdGl0bGVcbiAgICAgICAgcm9sZT1cImhlYWRpbmdcIlxuICAgICAgICBbaGVhZGVyU2l6ZV09XCI0XCJcbiAgICAgICAgW2F0dHIuYXJpYS1sZXZlbF09XCJfaGVhZGluZ0xldmVsXCJcbiAgICAgICAgY2xhc3M9XCJmZC10b29sYmFyX190aXRsZVwiXG4gICAgICAgIFtpZF09XCJ0aXRsZUlkXCJcbiAgICAgICAgI3RpdGxlRWxlbWVudFxuICAgID5cbiAgICAgICAge3sgdGl0bGUgfX1cbiAgICA8L3NwYW4+XG59XG48bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5AaWYgKG92ZXJmbG93bkl0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICBAaWYgKCFzcGFjZXJVc2VkKCkpIHtcbiAgICAgICAgPGZkLXRvb2xiYXItc3BhY2VyPjwvZmQtdG9vbGJhci1zcGFjZXI+XG4gICAgfVxuICAgIDxmZC10b29sYmFyLXNlcGFyYXRvcj48L2ZkLXRvb2xiYXItc2VwYXJhdG9yPlxuICAgIDxmZC1wb3BvdmVyIHBsYWNlbWVudD1cImJvdHRvbS1lbmRcIiBbbm9BcnJvd109XCJ0cnVlXCIgY2xhc3M9XCJmZC1wb3BvdmVyXCI+XG4gICAgICAgIDxmZC1wb3BvdmVyLWNvbnRyb2w+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgICAgICAgICAgdGl0bGU9XCJNb3JlXCJcbiAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiTW9yZVwiXG4gICAgICAgICAgICAgICAgYXJpYS1oYXNwb3B1cD1cInRydWVcIlxuICAgICAgICAgICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgICAgICBnbHlwaD1cIm92ZXJmbG93XCJcbiAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgPC9mZC1wb3BvdmVyLWNvbnRyb2w+XG4gICAgICAgIDxmZC1wb3BvdmVyLWJvZHk+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmQtdG9vbGJhcl9fb3ZlcmZsb3dcIj5cbiAgICAgICAgICAgICAgICBAZm9yIChvdmVyZmxvd2VkSXRlbSBvZiBvdmVyZmxvd25JdGVtczsgdHJhY2sgb3ZlcmZsb3dlZEl0ZW0pIHtcbiAgICAgICAgICAgICAgICAgICAgPGZkay1keW5hbWljLXBvcnRhbFxuICAgICAgICAgICAgICAgICAgICAgICAgW2RvbUVsZW1lbnRdPVwib3ZlcmZsb3dlZEl0ZW0uZWxlbWVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUuZGlzcGxheV09XCJvdmVyZmxvd2VkSXRlbS5wcmlvcml0eSA9PT0gJ2Rpc2FwcGVhcicgPyAnbm9uZScgOiAnZmxleCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmZsZXgtZGlyZWN0aW9uXT1cIm92ZXJmbG93ZWRJdGVtLnByaW9yaXR5ID09PSAnZGlzYXBwZWFyJyA/IHVuZGVmaW5lZCA6ICdjb2x1bW4nXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8L2Zkay1keW5hbWljLXBvcnRhbD5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9mZC1wb3BvdmVyLWJvZHk+XG4gICAgPC9mZC1wb3BvdmVyPlxufVxuIl19","import { NgModule } from '@angular/core';\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\nimport { DeprecatedToolbarSizeDirective } from './deprecated-toolbar-size.directive';\nimport { ToolbarFormLabelDirective } from './toolbar-form-label.directive';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport { ToolbarLabelDirective } from './toolbar-label.directive';\nimport { ToolbarOverflowButtonMenuDirective } from './toolbar-overflow-button-menu.directive';\nimport { ToolbarOverflowButtonDirective } from './toolbar-overflow-button.directive';\nimport { ToolbarSeparatorComponent } from './toolbar-separator.component';\nimport { ToolbarSpacerDirective } from './toolbar-spacer.directive';\nimport { ToolbarComponent } from './toolbar.component';\nimport * as i0 from \"@angular/core\";\nconst components = [\n ToolbarComponent,\n ToolbarItemDirective,\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n ToolbarFormLabelDirective,\n ToolbarLabelDirective,\n ToolbarOverflowButtonDirective,\n ToolbarOverflowButtonMenuDirective,\n DeprecatedToolbarSizeDirective\n];\nexport class ToolbarModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarModule, imports: [ContentDensityModule, ToolbarComponent,\n ToolbarItemDirective,\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n ToolbarFormLabelDirective,\n ToolbarLabelDirective,\n ToolbarOverflowButtonDirective,\n ToolbarOverflowButtonMenuDirective,\n DeprecatedToolbarSizeDirective], exports: [ToolbarComponent,\n ToolbarItemDirective,\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n ToolbarFormLabelDirective,\n ToolbarLabelDirective,\n ToolbarOverflowButtonDirective,\n ToolbarOverflowButtonMenuDirective,\n DeprecatedToolbarSizeDirective, ContentDensityModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarModule, imports: [ContentDensityModule, ToolbarComponent, ContentDensityModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [ContentDensityModule, ...components],\n exports: [...components, ContentDensityModule]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvdG9vbGJhci90b29sYmFyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzlGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUV2RCxNQUFNLFVBQVUsR0FBRztJQUNmLGdCQUFnQjtJQUNoQixvQkFBb0I7SUFDcEIsc0JBQXNCO0lBQ3RCLHlCQUF5QjtJQUN6Qix5QkFBeUI7SUFDekIscUJBQXFCO0lBQ3JCLDhCQUE4QjtJQUM5QixrQ0FBa0M7SUFDbEMsOEJBQThCO0NBQ2pDLENBQUM7QUFNRixNQUFNLE9BQU8sYUFBYTs4R0FBYixhQUFhOytHQUFiLGFBQWEsWUFIWixvQkFBb0IsRUFaOUIsZ0JBQWdCO1lBQ2hCLG9CQUFvQjtZQUNwQixzQkFBc0I7WUFDdEIseUJBQXlCO1lBQ3pCLHlCQUF5QjtZQUN6QixxQkFBcUI7WUFDckIsOEJBQThCO1lBQzlCLGtDQUFrQztZQUNsQyw4QkFBOEIsYUFSOUIsZ0JBQWdCO1lBQ2hCLG9CQUFvQjtZQUNwQixzQkFBc0I7WUFDdEIseUJBQXlCO1lBQ3pCLHlCQUF5QjtZQUN6QixxQkFBcUI7WUFDckIsOEJBQThCO1lBQzlCLGtDQUFrQztZQUNsQyw4QkFBOEIsRUFLTCxvQkFBb0I7K0dBRXBDLGFBQWEsWUFIWixvQkFBb0IsRUFaOUIsZ0JBQWdCLEVBYVMsb0JBQW9COzsyRkFFcEMsYUFBYTtrQkFKekIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxHQUFHLFVBQVUsQ0FBQztvQkFDOUMsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLEVBQUUsb0JBQW9CLENBQUM7aUJBQ2pEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5TW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2NvbnRlbnQtZGVuc2l0eSc7XG5pbXBvcnQgeyBEZXByZWNhdGVkVG9vbGJhclNpemVEaXJlY3RpdmUgfSBmcm9tICcuL2RlcHJlY2F0ZWQtdG9vbGJhci1zaXplLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUb29sYmFyRm9ybUxhYmVsRGlyZWN0aXZlIH0gZnJvbSAnLi90b29sYmFyLWZvcm0tbGFiZWwuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRvb2xiYXJJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi90b29sYmFyLWl0ZW0uZGlyZWN0aXZlJztcbmltcG9ydCB7IFRvb2xiYXJMYWJlbERpcmVjdGl2ZSB9IGZyb20gJy4vdG9vbGJhci1sYWJlbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVG9vbGJhck92ZXJmbG93QnV0dG9uTWVudURpcmVjdGl2ZSB9IGZyb20gJy4vdG9vbGJhci1vdmVyZmxvdy1idXR0b24tbWVudS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVG9vbGJhck92ZXJmbG93QnV0dG9uRGlyZWN0aXZlIH0gZnJvbSAnLi90b29sYmFyLW92ZXJmbG93LWJ1dHRvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVG9vbGJhclNlcGFyYXRvckNvbXBvbmVudCB9IGZyb20gJy4vdG9vbGJhci1zZXBhcmF0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IFRvb2xiYXJTcGFjZXJEaXJlY3RpdmUgfSBmcm9tICcuL3Rvb2xiYXItc3BhY2VyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi90b29sYmFyLmNvbXBvbmVudCc7XG5cbmNvbnN0IGNvbXBvbmVudHMgPSBbXG4gICAgVG9vbGJhckNvbXBvbmVudCxcbiAgICBUb29sYmFySXRlbURpcmVjdGl2ZSxcbiAgICBUb29sYmFyU3BhY2VyRGlyZWN0aXZlLFxuICAgIFRvb2xiYXJTZXBhcmF0b3JDb21wb25lbnQsXG4gICAgVG9vbGJhckZvcm1MYWJlbERpcmVjdGl2ZSxcbiAgICBUb29sYmFyTGFiZWxEaXJlY3RpdmUsXG4gICAgVG9vbGJhck92ZXJmbG93QnV0dG9uRGlyZWN0aXZlLFxuICAgIFRvb2xiYXJPdmVyZmxvd0J1dHRvbk1lbnVEaXJlY3RpdmUsXG4gICAgRGVwcmVjYXRlZFRvb2xiYXJTaXplRGlyZWN0aXZlXG5dO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb250ZW50RGVuc2l0eU1vZHVsZSwgLi4uY29tcG9uZW50c10sXG4gICAgZXhwb3J0czogWy4uLmNvbXBvbmVudHMsIENvbnRlbnREZW5zaXR5TW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBUb29sYmFyTW9kdWxlIHt9XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZGFtZW50YWwtbmd4LWNvcmUtdG9vbGJhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS90b29sYmFyL2Z1bmRhbWVudGFsLW5neC1jb3JlLXRvb2xiYXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-toolbar.mjs","sources":["../tmp-esm2022/toolbar/abstract-toolbar-item.class.js","../tmp-esm2022/toolbar/deprecated-toolbar-size.directive.js","../tmp-esm2022/toolbar/tokens.js","../tmp-esm2022/toolbar/toolbar-item.directive.js","../tmp-esm2022/toolbar/toolbar-form-label.directive.js","../tmp-esm2022/toolbar/toolbar-label.directive.js","../tmp-esm2022/toolbar/toolbar-overflow-button-menu.directive.js","../tmp-esm2022/toolbar/toolbar-overflow-button.directive.js","../tmp-esm2022/toolbar/toolbar-separator.component.js","../tmp-esm2022/toolbar/toolbar-spacer.directive.js","../tmp-esm2022/toolbar/toolbar.component.js","../tmp-esm2022/toolbar/toolbar.module.js","../tmp-esm2022/toolbar/fundamental-ngx-core-toolbar.js"],"sourcesContent":["export class ToolbarItem {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtdG9vbGJhci1pdGVtLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3Rvb2xiYXIvYWJzdHJhY3QtdG9vbGJhci1pdGVtLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBZ0IsV0FBVztDQU1oQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJmbG93UHJpb3JpdHkgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUb29sYmFySXRlbSB7XG4gICAgYWJzdHJhY3QgZWxlbWVudDogSFRNTEVsZW1lbnQ7XG4gICAgYWJzdHJhY3QgaXNTcGFjZXI6IGJvb2xlYW47XG4gICAgYWJzdHJhY3Qgd2lkdGg6IG51bWJlcjtcbiAgICBhYnN0cmFjdCBwcmlvcml0eTogT3ZlcmZsb3dQcmlvcml0eTtcbiAgICBhYnN0cmFjdCBncm91cDogbnVtYmVyO1xufVxuIl19","import { Directive, forwardRef, Input, isDevMode } from '@angular/core';\nimport { CONTENT_DENSITY_DIRECTIVE, ContentDensityMode } from '@fundamental-ngx/core/content-density';\nimport { BehaviorSubject } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class DeprecatedToolbarSizeDirective extends BehaviorSubject {\n /** Size of the toolbar. */\n set size(value) {\n switch (value) {\n case 'cozy':\n this.next(ContentDensityMode.COZY);\n break;\n case 'compact':\n this.next(ContentDensityMode.COMPACT);\n break;\n case 'condensed':\n this.next(ContentDensityMode.CONDENSED);\n break;\n default:\n this.next(ContentDensityMode.COMPACT);\n }\n }\n /** @hidden */\n constructor() {\n super(ContentDensityMode.COMPACT);\n /** @hidden */\n this.alternative = {\n name: 'Use [fdContentDensity] directive instead',\n link: ['/core', 'content-density']\n };\n this.message = `Usage of fd-toolbar[size] is deprecated`;\n if (isDevMode()) {\n console.warn(`${this.message}. Use [fdContentDensity] directive instead.`);\n }\n }\n /** @hidden */\n ngOnDestroy() {\n this.complete();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: DeprecatedToolbarSizeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: DeprecatedToolbarSizeDirective, isStandalone: true, selector: \"fd-toolbar[size]\", inputs: { size: \"size\" }, providers: [\n {\n provide: CONTENT_DENSITY_DIRECTIVE,\n useExisting: forwardRef(() => DeprecatedToolbarSizeDirective)\n }\n ], usesInheritance: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: DeprecatedToolbarSizeDirective, decorators: [{\n type: Directive,\n args: [{\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fd-toolbar[size]',\n providers: [\n {\n provide: CONTENT_DENSITY_DIRECTIVE,\n useExisting: forwardRef(() => DeprecatedToolbarSizeDirective)\n }\n ],\n standalone: true\n }]\n }], ctorParameters: () => [], propDecorators: { size: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjYXRlZC10b29sYmFyLXNpemUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3Rvb2xiYXIvZGVwcmVjYXRlZC10b29sYmFyLXNpemUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFbkYsT0FBTyxFQUNILHlCQUF5QixFQUN6QixrQkFBa0IsRUFFckIsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQWV2QyxNQUFNLE9BQU8sOEJBQ1QsU0FBUSxlQUF3QztJQUdoRCwyQkFBMkI7SUFDM0IsSUFDSSxJQUFJLENBQUMsS0FBa0I7UUFDdkIsUUFBUSxLQUFLLEVBQUUsQ0FBQztZQUNaLEtBQUssTUFBTTtnQkFDUCxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNuQyxNQUFNO1lBQ1YsS0FBSyxTQUFTO2dCQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3RDLE1BQU07WUFDVixLQUFLLFdBQVc7Z0JBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDeEMsTUFBTTtZQUNWO2dCQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUMsQ0FBQztJQUNMLENBQUM7SUFXRCxjQUFjO0lBQ2Q7UUFDSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFSdEMsY0FBYztRQUNMLGdCQUFXLEdBQUc7WUFDbkIsSUFBSSxFQUFFLDBDQUEwQztZQUNoRCxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUM7U0FDckMsQ0FBQztRQUtFLElBQUksQ0FBQyxPQUFPLEdBQUcseUNBQXlDLENBQUM7UUFDekQsSUFBSSxTQUFTLEVBQUUsRUFBRSxDQUFDO1lBQ2QsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLDZDQUE2QyxDQUFDLENBQUM7UUFDL0UsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ2QsV0FBVztRQUNQLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQixDQUFDOzhHQTNDUSw4QkFBOEI7a0dBQTlCLDhCQUE4Qix5RkFSNUI7WUFDUDtnQkFDSSxPQUFPLEVBQUUseUJBQXlCO2dCQUNsQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDhCQUE4QixDQUFDO2FBQ2hFO1NBQ0o7OzJGQUdRLDhCQUE4QjtrQkFYMUMsU0FBUzttQkFBQztvQkFDUCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUseUJBQXlCOzRCQUNsQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwrQkFBK0IsQ0FBQzt5QkFDaEU7cUJBQ0o7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ25CO3dEQU9PLElBQUk7c0JBRFAsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgZm9yd2FyZFJlZiwgSW5wdXQsIGlzRGV2TW9kZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2R1bGVEZXByZWNhdGlvbiB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7XG4gICAgQ09OVEVOVF9ERU5TSVRZX0RJUkVDVElWRSxcbiAgICBDb250ZW50RGVuc2l0eU1vZGUsXG4gICAgTG9jYWxDb250ZW50RGVuc2l0eU1vZGVcbn0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2NvbnRlbnQtZGVuc2l0eSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcblxudHlwZSBUb29sYmFyU2l6ZSA9ICdjb3p5JyB8ICdjb21wYWN0JyB8ICdjb25kZW5zZWQnIHwgbnVsbDtcblxuQERpcmVjdGl2ZSh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2ZkLXRvb2xiYXJbc2l6ZV0nLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBDT05URU5UX0RFTlNJVFlfRElSRUNUSVZFLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGVwcmVjYXRlZFRvb2xiYXJTaXplRGlyZWN0aXZlKVxuICAgICAgICB9XG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERlcHJlY2F0ZWRUb29sYmFyU2l6ZURpcmVjdGl2ZVxuICAgIGV4dGVuZHMgQmVoYXZpb3JTdWJqZWN0PExvY2FsQ29udGVudERlbnNpdHlNb2RlPlxuICAgIGltcGxlbWVudHMgT25EZXN0cm95LCBNb2R1bGVEZXByZWNhdGlvblxue1xuICAgIC8qKiBTaXplIG9mIHRoZSB0b29sYmFyLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHNpemUodmFsdWU6IFRvb2xiYXJTaXplKSB7XG4gICAgICAgIHN3aXRjaCAodmFsdWUpIHtcbiAgICAgICAgICAgIGNhc2UgJ2NvenknOlxuICAgICAgICAgICAgICAgIHRoaXMubmV4dChDb250ZW50RGVuc2l0eU1vZGUuQ09aWSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdjb21wYWN0JzpcbiAgICAgICAgICAgICAgICB0aGlzLm5leHQoQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1QpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnY29uZGVuc2VkJzpcbiAgICAgICAgICAgICAgICB0aGlzLm5leHQoQ29udGVudERlbnNpdHlNb2RlLkNPTkRFTlNFRCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRoaXMubmV4dChDb250ZW50RGVuc2l0eU1vZGUuQ09NUEFDVCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IG1lc3NhZ2U6IHN0cmluZztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgYWx0ZXJuYXRpdmUgPSB7XG4gICAgICAgIG5hbWU6ICdVc2UgW2ZkQ29udGVudERlbnNpdHldIGRpcmVjdGl2ZSBpbnN0ZWFkJyxcbiAgICAgICAgbGluazogWycvY29yZScsICdjb250ZW50LWRlbnNpdHknXVxuICAgIH07XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcihDb250ZW50RGVuc2l0eU1vZGUuQ09NUEFDVCk7XG4gICAgICAgIHRoaXMubWVzc2FnZSA9IGBVc2FnZSBvZiBmZC10b29sYmFyW3NpemVdIGlzIGRlcHJlY2F0ZWRgO1xuICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybihgJHt0aGlzLm1lc3NhZ2V9LiBVc2UgW2ZkQ29udGVudERlbnNpdHldIGRpcmVjdGl2ZSBpbnN0ZWFkLmApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb21wbGV0ZSgpO1xuICAgIH1cbn1cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const FD_TOOLBAR = new InjectionToken('FdToolbarComponent');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3Rvb2xiYXIvdG9rZW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLElBQUksY0FBYyxDQUFDLG9CQUFvQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgRkRfVE9PTEJBUiA9IG5ldyBJbmplY3Rpb25Ub2tlbignRmRUb29sYmFyQ29tcG9uZW50Jyk7XG4iXX0=","import { Directive, ElementRef, forwardRef, inject, Input } from '@angular/core';\nimport { ToolbarItem } from './abstract-toolbar-item.class';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarItemDirective {\n constructor() {\n /** The priority of the item. */\n this.fdOverflowPriority = \"high\" /* OverflowPriorityEnum.HIGH */;\n /** The group number of the item. */\n this.fdOverflowGroup = 0;\n /** @hidden */\n this.lastWidth = 0;\n /** @hidden */\n this._elementRef = inject(ElementRef);\n }\n /** @hidden */\n get group() {\n return this.fdOverflowGroup;\n }\n /** @hidden */\n get priority() {\n return this.fdOverflowPriority;\n }\n /** @hidden */\n get element() {\n return this._elementRef.nativeElement;\n }\n /** @hidden */\n get isSpacer() {\n return this.element.classList.contains('fd-toolbar__spacer');\n }\n /** @hidden */\n get width() {\n if (!this.element.clientWidth) {\n return this.lastWidth;\n }\n this.lastWidth = this.element.clientWidth + 8; // ELEMENT_MARGIN\n return this.lastWidth;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarItemDirective, isStandalone: true, selector: \"[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]\", inputs: { fdOverflowPriority: \"fdOverflowPriority\", fdOverflowGroup: \"fdOverflowGroup\" }, providers: [{ provide: ToolbarItem, useExisting: forwardRef(() => ToolbarItemDirective) }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarItemDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]',\n providers: [{ provide: ToolbarItem, useExisting: forwardRef(() => ToolbarItemDirective) }],\n standalone: true\n }]\n }], propDecorators: { fdOverflowPriority: [{\n type: Input\n }], fdOverflowGroup: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS90b29sYmFyL3Rvb2xiYXItaXRlbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQVE1RCxNQUFNLE9BQU8sb0JBQW9CO0lBTGpDO1FBTUksZ0NBQWdDO1FBRWhDLHVCQUFrQiwwQ0FBK0M7UUFDakUsb0NBQW9DO1FBRXBDLG9CQUFlLEdBQUcsQ0FBQyxDQUFDO1FBK0JwQixjQUFjO1FBQ04sY0FBUyxHQUFHLENBQUMsQ0FBQztRQUV0QixjQUFjO1FBQ0csZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7S0FDckQ7SUFsQ0csY0FBYztJQUNkLElBQUksS0FBSztRQUNMLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsY0FBYztJQUNkLElBQUksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDO0lBQ25DLENBQUM7SUFFRCxjQUFjO0lBQ2QsSUFBSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztJQUMxQyxDQUFDO0lBRUQsY0FBYztJQUNkLElBQUksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELGNBQWM7SUFDZCxJQUFJLEtBQUs7UUFDTCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUM1QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDMUIsQ0FBQztRQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUMsaUJBQWlCO1FBQ2hFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMxQixDQUFDOzhHQW5DUSxvQkFBb0I7a0dBQXBCLG9CQUFvQixtTUFIbEIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLENBQUM7OzJGQUdqRixvQkFBb0I7a0JBTGhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDREQUE0RDtvQkFDdEUsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHFCQUFxQixDQUFDLEVBQUUsQ0FBQztvQkFDMUYsVUFBVSxFQUFFLElBQUk7aUJBQ25COzhCQUlHLGtCQUFrQjtzQkFEakIsS0FBSztnQkFJTixlQUFlO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIGluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE92ZXJmbG93UHJpb3JpdHkgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBUb29sYmFySXRlbSB9IGZyb20gJy4vYWJzdHJhY3QtdG9vbGJhci1pdGVtLmNsYXNzJztcbmltcG9ydCB7IE92ZXJmbG93UHJpb3JpdHlFbnVtIH0gZnJvbSAnLi90b29sYmFyLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkLXRvb2xiYXItaXRlbV0sIFtmZE92ZXJmbG93R3JvdXBdLCBbZmRPdmVyZmxvd1ByaW9yaXR5XScsXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBUb29sYmFySXRlbSwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVG9vbGJhckl0ZW1EaXJlY3RpdmUpIH1dLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgVG9vbGJhckl0ZW1EaXJlY3RpdmUgaW1wbGVtZW50cyBUb29sYmFySXRlbSB7XG4gICAgLyoqIFRoZSBwcmlvcml0eSBvZiB0aGUgaXRlbS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGZkT3ZlcmZsb3dQcmlvcml0eTogT3ZlcmZsb3dQcmlvcml0eSA9IE92ZXJmbG93UHJpb3JpdHlFbnVtLkhJR0g7XG4gICAgLyoqIFRoZSBncm91cCBudW1iZXIgb2YgdGhlIGl0ZW0uICovXG4gICAgQElucHV0KClcbiAgICBmZE92ZXJmbG93R3JvdXAgPSAwO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgZ3JvdXAoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmRPdmVyZmxvd0dyb3VwO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IHByaW9yaXR5KCk6IE92ZXJmbG93UHJpb3JpdHkge1xuICAgICAgICByZXR1cm4gdGhpcy5mZE92ZXJmbG93UHJpb3JpdHk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgZWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgaXNTcGFjZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdmZC10b29sYmFyX19zcGFjZXInKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldCB3aWR0aCgpOiBudW1iZXIge1xuICAgICAgICBpZiAoIXRoaXMuZWxlbWVudC5jbGllbnRXaWR0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubGFzdFdpZHRoO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubGFzdFdpZHRoID0gdGhpcy5lbGVtZW50LmNsaWVudFdpZHRoICsgODsgLy8gRUxFTUVOVF9NQVJHSU5cbiAgICAgICAgcmV0dXJuIHRoaXMubGFzdFdpZHRoO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBsYXN0V2lkdGggPSAwO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xufVxuIl19","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarFormLabelDirective extends ToolbarItemDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarFormLabelDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarFormLabelDirective, isStandalone: true, selector: \"[fd-toolbar-form-label]\", host: { classAttribute: \"fd-form-label fd-toolbar__overflow-form-label fd-toolbar__overflow-form-label--text\" }, usesInheritance: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarFormLabelDirective, decorators: [{\n type: Directive,\n args: [{\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-toolbar-form-label]',\n host: {\n class: 'fd-form-label fd-toolbar__overflow-form-label fd-toolbar__overflow-form-label--text'\n },\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1mb3JtLWxhYmVsLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS90b29sYmFyL3Rvb2xiYXItZm9ybS1sYWJlbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFVaEUsTUFBTSxPQUFPLHlCQUEwQixTQUFRLG9CQUFvQjs4R0FBdEQseUJBQXlCO2tHQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBUnJDLFNBQVM7bUJBQUM7b0JBQ1AsOERBQThEO29CQUM5RCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLHFGQUFxRjtxQkFDL0Y7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb29sYmFySXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vdG9vbGJhci1pdGVtLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yXG4gICAgc2VsZWN0b3I6ICdbZmQtdG9vbGJhci1mb3JtLWxhYmVsXScsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZkLWZvcm0tbGFiZWwgZmQtdG9vbGJhcl9fb3ZlcmZsb3ctZm9ybS1sYWJlbCBmZC10b29sYmFyX19vdmVyZmxvdy1mb3JtLWxhYmVsLS10ZXh0J1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBUb29sYmFyRm9ybUxhYmVsRGlyZWN0aXZlIGV4dGVuZHMgVG9vbGJhckl0ZW1EaXJlY3RpdmUge31cbiJdfQ==","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarLabelDirective extends ToolbarItemDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarLabelDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarLabelDirective, isStandalone: true, selector: \"[fd-toolbar-label]\", host: { classAttribute: \"fd-label fd-toolbar__overflow-label\" }, usesInheritance: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarLabelDirective, decorators: [{\n type: Directive,\n args: [{\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-toolbar-label]',\n host: {\n class: 'fd-label fd-toolbar__overflow-label'\n },\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1sYWJlbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvdG9vbGJhci90b29sYmFyLWxhYmVsLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQVVoRSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsb0JBQW9COzhHQUFsRCxxQkFBcUI7a0dBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFSakMsU0FBUzttQkFBQztvQkFDUCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUscUNBQXFDO3FCQUMvQztvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgVG9vbGJhckl0ZW1EaXJlY3RpdmUgfSBmcm9tICcuL3Rvb2xiYXItaXRlbS5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnW2ZkLXRvb2xiYXItbGFiZWxdJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnZmQtbGFiZWwgZmQtdG9vbGJhcl9fb3ZlcmZsb3ctbGFiZWwnXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRvb2xiYXJMYWJlbERpcmVjdGl2ZSBleHRlbmRzIFRvb2xiYXJJdGVtRGlyZWN0aXZlIHt9XG4iXX0=","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarOverflowButtonMenuDirective extends ToolbarItemDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarOverflowButtonMenuDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarOverflowButtonMenuDirective, isStandalone: true, selector: \"[fdToolbarOverflowButtonMenu], [fd-toolbar-overflow-button-menu]\", host: { classAttribute: \"fd-toolbar__overflow-button--menu\" }, usesInheritance: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarOverflowButtonMenuDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[fdToolbarOverflowButtonMenu], [fd-toolbar-overflow-button-menu]',\n host: {\n class: 'fd-toolbar__overflow-button--menu'\n },\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1vdmVyZmxvdy1idXR0b24tbWVudS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvdG9vbGJhci90b29sYmFyLW92ZXJmbG93LWJ1dHRvbi1tZW51LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQVNoRSxNQUFNLE9BQU8sa0NBQW1DLFNBQVEsb0JBQW9COzhHQUEvRCxrQ0FBa0M7a0dBQWxDLGtDQUFrQzs7MkZBQWxDLGtDQUFrQztrQkFQOUMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsa0VBQWtFO29CQUM1RSxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLG1DQUFtQztxQkFDN0M7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb29sYmFySXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vdG9vbGJhci1pdGVtLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkVG9vbGJhck92ZXJmbG93QnV0dG9uTWVudV0sIFtmZC10b29sYmFyLW92ZXJmbG93LWJ1dHRvbi1tZW51XScsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZkLXRvb2xiYXJfX292ZXJmbG93LWJ1dHRvbi0tbWVudSdcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgVG9vbGJhck92ZXJmbG93QnV0dG9uTWVudURpcmVjdGl2ZSBleHRlbmRzIFRvb2xiYXJJdGVtRGlyZWN0aXZlIHt9XG4iXX0=","import { Directive } from '@angular/core';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarOverflowButtonDirective extends ToolbarItemDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarOverflowButtonDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarOverflowButtonDirective, isStandalone: true, selector: \"[fdToolbarOverflowButton], [fd-toolbar-overflow-button]\", host: { classAttribute: \"fd-toolbar__overflow-button\" }, usesInheritance: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarOverflowButtonDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[fdToolbarOverflowButton], [fd-toolbar-overflow-button]',\n host: {\n class: 'fd-toolbar__overflow-button'\n },\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1vdmVyZmxvdy1idXR0b24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3Rvb2xiYXIvdG9vbGJhci1vdmVyZmxvdy1idXR0b24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBU2hFLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxvQkFBb0I7OEdBQTNELDhCQUE4QjtrR0FBOUIsOEJBQThCOzsyRkFBOUIsOEJBQThCO2tCQVAxQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx5REFBeUQ7b0JBQ25FLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsNkJBQTZCO3FCQUN2QztvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvb2xiYXJJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi90b29sYmFyLWl0ZW0uZGlyZWN0aXZlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZmRUb29sYmFyT3ZlcmZsb3dCdXR0b25dLCBbZmQtdG9vbGJhci1vdmVyZmxvdy1idXR0b25dJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnZmQtdG9vbGJhcl9fb3ZlcmZsb3ctYnV0dG9uJ1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBUb29sYmFyT3ZlcmZsb3dCdXR0b25EaXJlY3RpdmUgZXh0ZW5kcyBUb29sYmFySXRlbURpcmVjdGl2ZSB7fVxuIl19","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarSeparatorComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarSeparatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarSeparatorComponent, isStandalone: true, selector: \"fd-toolbar-separator\", host: { classAttribute: \"fd-toolbar__separator\" }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarSeparatorComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'fd-toolbar-separator',\n template: '',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-toolbar__separator'\n },\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1zZXBhcmF0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3Rvb2xiYXIvdG9vbGJhci1zZXBhcmF0b3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBWXRGLE1BQU0sT0FBTyx5QkFBeUI7OEdBQXpCLHlCQUF5QjtrR0FBekIseUJBQXlCLG1JQVJ4QixFQUFFOzsyRkFRSCx5QkFBeUI7a0JBVnJDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsUUFBUSxFQUFFLEVBQUU7b0JBQ1osYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLHVCQUF1QjtxQkFDakM7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmZC10b29sYmFyLXNlcGFyYXRvcicsXG4gICAgdGVtcGxhdGU6ICcnLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZkLXRvb2xiYXJfX3NlcGFyYXRvcidcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgVG9vbGJhclNlcGFyYXRvckNvbXBvbmVudCB7fVxuIl19","import { Directive, HostBinding, Input } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class ToolbarSpacerDirective {\n constructor() {\n /** Determines the width of spacer when fixed property is set to true\n * Allowed values: absolute and relative metrics\n * Default value: 0px\n */\n this.width = '0px';\n /** Property allows user to pass additional class\n */\n this.class = '';\n /** Determines if spacer should take only size taken from width property\n * Default value: false\n * Default behaviour: spacer takes remaining space automatically\n */\n this.fixed = false;\n }\n /** @hidden */\n get css() {\n return `fd-toolbar__spacer ${this.fixed ? 'fd-toolbar__spacer--fixed' : ''} ${this.class}`;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarSpacerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: ToolbarSpacerDirective, isStandalone: true, selector: \"fd-toolbar-spacer\", inputs: { width: \"width\", class: \"class\", fixed: \"fixed\" }, host: { properties: { \"style.width\": \"this.width\", \"attr.class\": \"this.css\" } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarSpacerDirective, decorators: [{\n type: Directive,\n args: [{\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fd-toolbar-spacer',\n standalone: true\n }]\n }], propDecorators: { width: [{\n type: HostBinding,\n args: ['style.width']\n }, {\n type: Input\n }], class: [{\n type: Input\n }], fixed: [{\n type: Input\n }], css: [{\n type: HostBinding,\n args: ['attr.class']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1zcGFjZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3Rvb2xiYXIvdG9vbGJhci1zcGFjZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPOUQsTUFBTSxPQUFPLHNCQUFzQjtJQUxuQztRQU1JOzs7V0FHRztRQUdILFVBQUssR0FBRyxLQUFLLENBQUM7UUFFZDtXQUNHO1FBRUgsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUVYOzs7V0FHRztRQUVILFVBQUssR0FBRyxLQUFLLENBQUM7S0FPakI7SUFMRyxjQUFjO0lBQ2QsSUFDSSxHQUFHO1FBQ0gsT0FBTyxzQkFBc0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDL0YsQ0FBQzs4R0F6QlEsc0JBQXNCO2tHQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBTGxDLFNBQVM7bUJBQUM7b0JBQ1AsOERBQThEO29CQUM5RCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtpQkFDbkI7OEJBUUcsS0FBSztzQkFGSixXQUFXO3VCQUFDLGFBQWE7O3NCQUN6QixLQUFLO2dCQU1OLEtBQUs7c0JBREosS0FBSztnQkFRTixLQUFLO3NCQURKLEtBQUs7Z0JBS0YsR0FBRztzQkFETixXQUFXO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnZmQtdG9vbGJhci1zcGFjZXInLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgVG9vbGJhclNwYWNlckRpcmVjdGl2ZSB7XG4gICAgLyoqIERldGVybWluZXMgdGhlIHdpZHRoIG9mIHNwYWNlciB3aGVuIGZpeGVkIHByb3BlcnR5IGlzIHNldCB0byB0cnVlXG4gICAgICogQWxsb3dlZCB2YWx1ZXM6IGFic29sdXRlIGFuZCByZWxhdGl2ZSBtZXRyaWNzXG4gICAgICogRGVmYXVsdCB2YWx1ZTogMHB4XG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS53aWR0aCcpXG4gICAgQElucHV0KClcbiAgICB3aWR0aCA9ICcwcHgnO1xuXG4gICAgLyoqIFByb3BlcnR5IGFsbG93cyB1c2VyIHRvIHBhc3MgYWRkaXRpb25hbCBjbGFzc1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgY2xhc3MgPSAnJztcblxuICAgIC8qKiBEZXRlcm1pbmVzIGlmIHNwYWNlciBzaG91bGQgdGFrZSBvbmx5IHNpemUgdGFrZW4gZnJvbSB3aWR0aCBwcm9wZXJ0eVxuICAgICAqIERlZmF1bHQgdmFsdWU6IGZhbHNlXG4gICAgICogRGVmYXVsdCBiZWhhdmlvdXI6IHNwYWNlciB0YWtlcyByZW1haW5pbmcgc3BhY2UgYXV0b21hdGljYWxseVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZml4ZWQgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmNsYXNzJylcbiAgICBnZXQgY3NzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgZmQtdG9vbGJhcl9fc3BhY2VyICR7dGhpcy5maXhlZCA/ICdmZC10b29sYmFyX19zcGFjZXItLWZpeGVkJyA6ICcnfSAke3RoaXMuY2xhc3N9YDtcbiAgICB9XG59XG4iXX0=","import { __decorate, __metadata } from \"tslib\";\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ContentChildren, contentChildren, DestroyRef, ElementRef, forwardRef, HostBinding, inject, Inject, Input, Optional, QueryList, signal, SkipSelf, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { DYNAMIC_PAGE_HEADER_TOKEN } from '@fundamental-ngx/core/shared';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { applyCssClass, DynamicPortalComponent, OVERFLOW_PRIORITY_SCORE, ResizeObserverService } from '@fundamental-ngx/cdk/utils';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\nimport { ContentDensityMode, ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { TitleComponent, TitleToken } from '@fundamental-ngx/core/title';\nimport { BehaviorSubject, combineLatest, map, startWith } from 'rxjs';\nimport { ToolbarItem } from './abstract-toolbar-item.class';\nimport { FD_TOOLBAR } from './tokens';\nimport { ToolbarSeparatorComponent } from './toolbar-separator.component';\nimport { ToolbarSpacerDirective } from './toolbar-spacer.directive';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@fundamental-ngx/core/content-density\";\nimport * as i2 from \"@fundamental-ngx/cdk/utils\";\nimport * as i3 from \"@fundamental-ngx/core/popover\";\nconst ELEMENT_MARGIN = 8;\nconst OVERFLOW_BTN_COZY = 36;\nconst OVERFLOW_BTN_COMPACT = 32;\nconst MAX_CONTENT_SIZE = 99999999;\nlet toolbarTitleId = 0;\nexport class ToolbarComponent {\n /** Determines if overflow button should be visible\n * Default value: false\n */\n set shouldOverflow(val) {\n this._shouldOverflow = val;\n this.shouldOverflow$.next(val);\n }\n get shouldOverflow() {\n return this._shouldOverflow;\n }\n /**\n * Heading level of the toolbar title.\n */\n set headingLevel(level) {\n if (typeof level === 'number') {\n this._headingLevel = level;\n }\n else if (typeof level === 'string') {\n this._headingLevel = Number.parseInt(level.replace(/\\D/g, ''), 10);\n }\n }\n /** @hidden */\n set titleComponent(title) {\n this._titleComponent$.next(title);\n }\n get titleComponent() {\n return this._titleComponent$.value;\n }\n /** @hidden */\n get _toolbarWidth() {\n const _overflow_btn_size = this._contentDensityObserver.isCompact ? OVERFLOW_BTN_COMPACT : OVERFLOW_BTN_COZY;\n return (this.elementRef.nativeElement.clientWidth -\n (_overflow_btn_size + 4 * ELEMENT_MARGIN + 1 + this.separatorDirectives().length));\n }\n /** @hidden */\n constructor(_cd, _contentDensityObserver, _destroyRef, resizeObserverService, _dynamicPageHeader) {\n this._cd = _cd;\n this._contentDensityObserver = _contentDensityObserver;\n this._destroyRef = _destroyRef;\n this.resizeObserverService = resizeObserverService;\n this._dynamicPageHeader = _dynamicPageHeader;\n /**\n * The ID of the toolbar title\n * */\n this.titleId = `fd-toolbar-title-${toolbarTitleId++}`;\n /** Determines the type of toolbar\n * Available options: 'solid' | 'transparent' | 'auto' | 'info'\n * Default value: 'solid'\n */\n this.fdType = 'solid';\n /** Determines if toolbar should has active state (only when fdType == 'info')\n * Default value: false\n */\n this.active = false;\n /** Determines if toolbar should clear border bottom\n * Default value: false\n */\n this.clearBorder = false;\n /** Whether all items should be inside overflow */\n this.forceOverflow = false;\n /** Tabindex of the toolbar element, to be used when fdType=\"info\" */\n this.tabindex = -1;\n /** @hidden */\n this._role = 'toolbar';\n /** @hidden */\n this.overflownItems = [];\n /** @hidden */\n this.spacerUsed = signal(false, ...(ngDevMode ? [{ debugName: \"spacerUsed\" }] : []));\n /** @hidden */\n this.spacerDirectives = contentChildren(ToolbarSpacerDirective, ...(ngDevMode ? [{ debugName: \"spacerDirectives\" }] : []));\n /** @hidden */\n this.separatorDirectives = contentChildren(ToolbarSeparatorComponent, ...(ngDevMode ? [{ debugName: \"separatorDirectives\" }] : []));\n /** @hidden */\n this._headingLevel = 2;\n /** HTML Element Reference. */\n this.elementRef = inject(ElementRef);\n /** @hidden */\n this._titleComponent$ = new BehaviorSubject(null);\n /** @hidden */\n this._refreshOverflow$ = new BehaviorSubject(undefined);\n /** @hidden */\n this._shouldOverflow = false;\n /** @hidden */\n this.shouldOverflow$ = new BehaviorSubject(false);\n _contentDensityObserver.subscribe();\n }\n /** @hidden */\n buildComponentCssClass() {\n return [\n 'fd-toolbar',\n `fd-toolbar--${this.fdType}`,\n `${this.active && this.fdType === 'info' ? 'fd-toolbar--active' : ''}`,\n `${this.title || this.titleComponent ? 'fd-toolbar--title' : ''}`,\n `${this.clearBorder ? 'fd-toolbar--clear' : ''}`,\n `${this._dynamicPageHeader ? 'fd-dynamic-page__toolbar' : ''}`\n ];\n }\n /** @hidden */\n ngAfterViewInit() {\n this._updateSpacerUsed();\n this.overflowItems$ = combineLatest([\n this.resizeObserverService.observe(this.elementRef.nativeElement).pipe(map(() => this._toolbarWidth)),\n this.toolbarItems.changes.pipe(startWith(this.toolbarItems), map((toolbarItems) => toolbarItems.toArray())),\n this._titleComponent$.pipe(map((titleComponent) => {\n if (!titleComponent) {\n return this.titleElement?.nativeElement;\n }\n return titleComponent.elementRef.nativeElement;\n })),\n this.shouldOverflow$,\n this._refreshOverflow$\n ]).pipe(map(([toolbarWidth, toolbarItems, titleElement, shouldOverflow]) => {\n if (shouldOverflow) {\n const _sortedByPriorityAndGroupItems = this._getSortedByPriorityAndGroupItems(toolbarItems);\n const overflowItems = [];\n _sortedByPriorityAndGroupItems.reduce((_contentWidth, toolbarItem) => {\n const itemWidth = toolbarItem.width + 2;\n const itemPriority = toolbarItem.priority;\n const shouldItemBeRemovedByWidth = itemWidth + _contentWidth > toolbarWidth;\n const shouldAlwaysBeInOverflow = itemPriority === \"always\" /* OverflowPriorityEnum.ALWAYS */ || this.forceOverflow;\n const shouldNeverBeInOverflow = itemPriority === \"never\" /* OverflowPriorityEnum.NEVER */;\n if ((shouldItemBeRemovedByWidth && !shouldNeverBeInOverflow) || shouldAlwaysBeInOverflow) {\n overflowItems.push(toolbarItem);\n return shouldAlwaysBeInOverflow ? _contentWidth : MAX_CONTENT_SIZE;\n }\n else {\n return _contentWidth + itemWidth;\n }\n }, titleElement?.clientWidth || 0);\n // Hide orphans\n for (const toolbarItem of overflowItems) {\n const groupedCollection = this._getGroupedCollection(toolbarItems);\n const groupedCollectionPriorities = this._getGroupedCollectionPriority(groupedCollection);\n const group = toolbarItem.group;\n const itemPriority = toolbarItem.priority;\n if (group !== 0 && itemPriority !== \"disappear\" /* OverflowPriorityEnum.DISAPPEAR */) {\n const itemsFromCurrentGroup = this._getElementsFromCurrentGroup(group, groupedCollection, groupedCollectionPriorities) || [];\n itemsFromCurrentGroup.forEach((i) => {\n if (overflowItems.indexOf(i) === -1) {\n overflowItems.push(i);\n }\n });\n }\n }\n return overflowItems.sort((a, b) => this._sortPriorities(a.priority, b.priority));\n }\n return [];\n }), takeUntilDestroyed(this._destroyRef));\n this.overflowItems$.subscribe((items) => {\n this.overflownItems = items;\n this._cd.detectChanges();\n });\n this.buildComponentCssClass();\n }\n /** @hidden */\n ngAfterViewChecked() {\n this.buildComponentCssClass();\n }\n /** @hidden */\n ngAfterContentInit() {\n if (this.titleComponent) {\n this.titleComponent.elementRef?.nativeElement.classList.add('fd-toolbar__title');\n this.buildComponentCssClass();\n }\n }\n /** Change detection reference */\n detectChanges() {\n this._cd.detectChanges();\n }\n /** Method triggering collapsible toolbar */\n updateCollapsibleItems() {\n this._refreshOverflow$.next();\n }\n /** hidden */\n _updateSpacerUsed() {\n // do not render extra spacer if there is at least one passed by the application\n // and it is not fixed this.spacerUsed.set(this.spacer.length > 0 && this.spacer.some((spacer) => !spacer.fixed));\n this.spacerUsed.set(this.spacerDirectives().length > 0 && this.spacerDirectives().some((spacer) => !spacer.fixed));\n }\n /** @hidden Get group number with the lowest priority.\n * Uses for detecting a group of elements which would be hidden from the toolbar.\n * */\n _getLowestPriorityFromGroup(itemGroup, groupedCollectionPriority) {\n const priority = groupedCollectionPriority;\n if (!priority || !OVERFLOW_PRIORITY_SCORE.get(priority[itemGroup])) {\n return itemGroup;\n }\n const groups = Object.keys(priority);\n return groups.reduce((lowestGroup, currentGroup) => {\n const lowestGroupPriority = priority[lowestGroup];\n const currentGroupPriority = priority[currentGroup];\n if (OVERFLOW_PRIORITY_SCORE.get(currentGroupPriority) < OVERFLOW_PRIORITY_SCORE.get(lowestGroupPriority)) {\n return +currentGroup;\n }\n return lowestGroup;\n }, itemGroup);\n }\n /** @hidden */\n _getElementsFromCurrentGroup(itemGroup, groupedCollection, groupedCollectionPriority) {\n const lowestPriorityFromGroup = this._getLowestPriorityFromGroup(itemGroup, groupedCollectionPriority);\n if (!groupedCollection || !groupedCollectionPriority) {\n return [];\n }\n let itemsToRemove = groupedCollection[lowestPriorityFromGroup];\n delete groupedCollection[lowestPriorityFromGroup];\n delete groupedCollectionPriority[lowestPriorityFromGroup];\n if (lowestPriorityFromGroup !== itemGroup) {\n itemsToRemove = [...itemsToRemove, ...groupedCollection[itemGroup]];\n delete groupedCollection[itemGroup];\n delete groupedCollectionPriority[itemGroup];\n }\n return itemsToRemove;\n }\n /** @hidden Get the object with grouped arrays of elements. */\n _getGroupedCollection(toolbarItems) {\n return toolbarItems.reduce((acc, item) => {\n const itemPrio = item.priority;\n const itemGroup = item.group;\n if (itemPrio === \"never\" /* OverflowPriorityEnum.NEVER */ ||\n itemPrio === \"always\" /* OverflowPriorityEnum.ALWAYS */ ||\n itemGroup === 0) {\n return acc;\n }\n if (!acc[itemGroup]) {\n acc[itemGroup] = [];\n }\n acc[itemGroup].push(item);\n return acc;\n }, {});\n }\n /** @hidden Get the object with the highest priority for each group of elements. */\n _getGroupedCollectionPriority(groupedCollection) {\n const groups = Object.keys(groupedCollection);\n return groups.reduce((acc, itemGroup) => {\n const sortedPriorities = groupedCollection[itemGroup]\n .map((i) => i.priority)\n .filter((prio) => prio !== \"always\" /* OverflowPriorityEnum.ALWAYS */ && prio !== \"never\" /* OverflowPriorityEnum.NEVER */)\n .sort(this._sortPriorities);\n acc[itemGroup] = sortedPriorities[0];\n return acc;\n }, {});\n }\n /** @hidden Sort priorities of elements/groups. */\n _sortPriorities(a, b) {\n return OVERFLOW_PRIORITY_SCORE.get(b) - OVERFLOW_PRIORITY_SCORE.get(a);\n }\n /** @hidden Sort by group and priority and initial position */\n _getSortedByPriorityAndGroupItems(toolbarItems) {\n const notSorted = toolbarItems.map((element, index) => ({ element, index }));\n const groups = notSorted.reduce((gr, item) => {\n let groupId = item.element.group;\n const itemPrio = item.element.priority;\n if (itemPrio === \"never\" /* OverflowPriorityEnum.NEVER */ || itemPrio === \"always\" /* OverflowPriorityEnum.ALWAYS */) {\n groupId = 0;\n }\n if (!gr[groupId]) {\n gr[groupId] = [];\n }\n gr[groupId].push(item);\n return gr;\n }, {});\n const groupIds = Object.keys(groups)\n .map((g) => parseInt(g, 10))\n .filter((g) => g !== 0);\n return groupIds\n .map((g) => {\n let minIndex = Number.MAX_SAFE_INTEGER;\n let maxPriority = 0;\n for (const item of groups[g]) {\n minIndex = Math.min(minIndex, item.index);\n maxPriority = Math.max(maxPriority, OVERFLOW_PRIORITY_SCORE.get(item.element.priority) ?? -Infinity);\n }\n return { group: groups[g].map(({ element }) => element), minIndex, maxPriority };\n })\n .concat(!groups[0]\n ? []\n : groups[0].map((item) => ({\n group: [item.element],\n maxPriority: OVERFLOW_PRIORITY_SCORE.get(item.element.priority),\n minIndex: item.index\n })))\n .sort((a, b) => b.maxPriority - a.maxPriority || a.minIndex - b.minIndex)\n .reduce((arr, i) => arr.concat(i.group), []);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.ContentDensityObserver }, { token: i0.DestroyRef }, { token: i2.ResizeObserverService }, { token: DYNAMIC_PAGE_HEADER_TOKEN, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.4\", type: ToolbarComponent, isStandalone: true, selector: \"fd-toolbar\", inputs: { titleId: \"titleId\", class: \"class\", shouldOverflow: \"shouldOverflow\", fdType: \"fdType\", title: \"title\", active: \"active\", clearBorder: \"clearBorder\", forceOverflow: \"forceOverflow\", tabindex: \"tabindex\", headingLevel: \"headingLevel\", ariaLabel: \"ariaLabel\", ariaLabelledBy: \"ariaLabelledBy\" }, host: { properties: { \"attr.aria-label\": \"this.ariaLabel\", \"attr.aria-labelledby\": \"this.ariaLabelledBy\", \"attr.role\": \"this._role\" } }, providers: [\n contentDensityObserverProviders({\n defaultContentDensity: ContentDensityMode.COMPACT\n }),\n {\n provide: FD_TOOLBAR,\n useExisting: ToolbarComponent\n }\n ], queries: [{ propertyName: \"spacerDirectives\", predicate: ToolbarSpacerDirective, isSignal: true }, { propertyName: \"separatorDirectives\", predicate: ToolbarSeparatorComponent, isSignal: true }, { propertyName: \"titleComponent\", first: true, predicate: TitleToken, descendants: true }, { propertyName: \"toolbarItems\", predicate: i0.forwardRef(() => ToolbarItem) }], viewQueries: [{ propertyName: \"titleElement\", first: true, predicate: [\"titleElement\"], descendants: true, read: ElementRef }], ngImport: i0, template: \"@if (title) {\\n <span\\n fd-title\\n role=\\\"heading\\\"\\n [headerSize]=\\\"4\\\"\\n [attr.aria-level]=\\\"_headingLevel\\\"\\n class=\\\"fd-toolbar__title\\\"\\n [id]=\\\"titleId\\\"\\n #titleElement\\n >\\n {{ title }}\\n </span>\\n}\\n<ng-content></ng-content>\\n@if (overflownItems.length > 0) {\\n @if (!spacerUsed()) {\\n <fd-toolbar-spacer></fd-toolbar-spacer>\\n }\\n <fd-toolbar-separator></fd-toolbar-separator>\\n <fd-popover placement=\\\"bottom-end\\\" [noArrow]=\\\"true\\\" class=\\\"fd-popover\\\">\\n <fd-popover-control>\\n <button\\n fd-button\\n title=\\\"More\\\"\\n aria-label=\\\"More\\\"\\n aria-haspopup=\\\"true\\\"\\n fdType=\\\"transparent\\\"\\n glyph=\\\"overflow\\\"\\n ></button>\\n </fd-popover-control>\\n <fd-popover-body>\\n <div class=\\\"fd-toolbar__overflow\\\">\\n @for (overflowedItem of overflownItems; track overflowedItem) {\\n <fdk-dynamic-portal\\n [domElement]=\\\"overflowedItem.element\\\"\\n [style.display]=\\\"overflowedItem.priority === 'disappear' ? 'none' : 'flex'\\\"\\n [style.flex-direction]=\\\"overflowedItem.priority === 'disappear' ? undefined : 'column'\\\"\\n >\\n </fdk-dynamic-portal>\\n }\\n </div>\\n </fd-popover-body>\\n </fd-popover>\\n}\\n\", styles: [\".fd-toolbar{--fdToolbar_Height:2.75rem;--fdToolbar_Separator_Margin:0;--fdToolbar_Padding_Left:.5rem;--fdToolbar_Padding_Right:.5rem;--fdToolbar_Separator_Height:2rem;--fdToolbar_Overflow_Max_Width:100%;--fdToolbar_Separator_Width:.0625rem;--fdToolbar_Info_Color:var(--sapList_TextColor);--fdToolbar_Background:var(--sapToolbar_Background);--fdToolbar_Border_Bottom:.0625rem solid var(--sapGroup_TitleBorderColor);--fdToolbar_Border_Top:.0625rem solid var(--sapPageFooter_BorderColor);border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;gap:.5rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:var(--fdToolbar_Background);border-bottom:var(--fdToolbar_Border_Bottom);height:var(--fdToolbar_Height);padding-inline:var(--fdToolbar_Padding_Left) var(--fdToolbar_Padding_Right)}.fd-toolbar:after,.fd-toolbar:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__spacer{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:100%;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-flex:1;-ms-flex:1 auto;flex:1 auto}.fd-toolbar__spacer:after,.fd-toolbar__spacer:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__spacer--fixed{-webkit-box-flex:0;display:inline-block;-ms-flex:none;flex:none}.fd-toolbar__separator{background-color:var(--sapToolbar_SeparatorColor);border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fdToolbar_Separator_Height);line-height:normal;margin-block:0;margin-block:var(--fdToolbar_Separator_Margin);margin-inline:0;padding-block:0;padding-inline:0;width:var(--fdToolbar_Separator_Width)}.fd-toolbar__separator:after,.fd-toolbar__separator:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__overflow{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;--fdToolbar_Separator_Width:auto;--fdToolbar_Separator_Height:.0625rem;--fdToolbar_Separator_Margin:.1875rem;--fdToolbar_Overflow_Padding_Block:.25rem;--fdToolbar_Overflow_Padding_Inline:.5rem;max-height:50vh;max-width:var(--fdToolbar_Overflow_Max_Width);overflow:auto;padding-block:var(--fdToolbar_Overflow_Padding_Block);padding-inline:var(--fdToolbar_Overflow_Padding_Inline)}.fd-toolbar__overflow:after,.fd-toolbar__overflow:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__overflow[class*=-compact],.fd-toolbar__overflow[class*=-condensed],[class*=-compact] .fd-toolbar__overflow:not([class*=-cozy]),[class*=-condensed] .fd-toolbar__overflow:not([class*=-cozy]){--fdToolbar_Overflow_Padding_Block:.1875rem;--fdToolbar_Overflow_Padding_Inline:.375rem}.fd-toolbar__overflow .fd-toolbar__overflow-button{margin-block:.1875rem;margin-inline:0;text-align:left;width:auto;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.fd-toolbar__overflow .fd-toolbar__overflow-button[dir=rtl],[dir=rtl] .fd-toolbar__overflow .fd-toolbar__overflow-button{text-align:right}.fd-toolbar__overflow .fd-toolbar__overflow-button--menu{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;max-width:100%}.fd-toolbar__overflow .fd-toolbar__overflow-form-label{margin-block:.625rem .125rem;margin-inline:0}.fd-toolbar__overflow .fd-toolbar__overflow-label{margin-block:.375rem;margin-inline:0}.fd-toolbar .fd-toolbar__title{--fdTitle_Font_Size:var(--sapGroup_Title_FontSize);--fdTitle_Color:var(--sapGroup_TitleTextColor)}.fd-toolbar--auto{--fdToolbar_Background:var(--fdToolbar_Auto_Background)}.fd-toolbar--solid{--fdToolbar_Background:var(--fdToolbar_Solid_Background)}.fd-toolbar--transparent{--fdToolbar_Background:var(--fdToolbar_Transparent_Background)}.fd-toolbar--ai,.fd-toolbar--clear{--fdToolbar_Border_Bottom:none}.fd-toolbar--ai{--fdToolbar_Background:var(--fdToolbar_Transparent_Background);--fdToolbar_Padding_Left:.5rem;--fdToolbar_Padding_Right:.25rem}.fd-toolbar--ai.is-active{--fdToolbar_Background:var(--fdToolbar_Solid_Background);border-top:var(--fdToolbar_Border_Top)}.fd-toolbar--title{--fdToolbar_Height:2.75rem;--fdToolbar_Padding_Left:1rem;--fdToolbar_Background:var(--sapGroup_TitleBackground)}.fd-toolbar.fd-toolbar--title-bar{padding-block:.375rem;--fdToolbar_Height:auto;--fdToolbar_Padding_Left:.75rem;--fdToolbar_Padding_Right:.75rem}.fd-toolbar--info{color:var(--fdToolbar_Info_Color);position:relative;--fdToolbar_Height:2rem;--fdToolbar_Background:var(--sapInfobar_NonInteractive_Background)}.fd-toolbar--info [class*=sap-icon]{color:var(--sapList_TextColor);font-size:1rem;height:1rem;line-height:1rem}.fd-toolbar--active{outline:none;position:relative;--fdToolbar_Background:var(--sapInfobar_Background);--fdToolbar_Info_Color:var(--sapInfobar_TextColor)}.fd-toolbar--active.is-focus:after,.fd-toolbar--active:focus:after{border-color:var(--sapContent_FocusColor);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);content:\\\"\\\";inset:.0625rem;pointer-events:none;position:absolute}.fd-toolbar--active.is-hover,.fd-toolbar--active:hover{--fdToolbar_Background:var(--sapInfobar_Hover_Background)}.fd-toolbar--active.is-active,.fd-toolbar--active:active{--fdToolbar_Background:var(--sapInfobar_Active_Background)}.fd-toolbar--active.is-focus,.fd-toolbar--active:focus{z-index:5}.fd-toolbar--active.is-focus:after,.fd-toolbar--active:focus:after{border-color:var(--fdToolbar_Info_Outline_Color)}.fd-toolbar--fade-in{opacity:1;-webkit-transition:visibility 0s linear 0s,opacity 1s;transition:visibility 0s linear 0s,opacity 1s;visibility:visible}.fd-toolbar--fade-out{opacity:0;-webkit-transition:visibility 0s linear 1s,opacity 1ms;transition:visibility 0s linear 1s,opacity 1ms;visibility:hidden}.fd-toolbar[class*=-compact],.fd-toolbar[class*=-condensed],[class*=-compact] .fd-toolbar:not([class*=-cozy]),[class*=-condensed] .fd-toolbar:not([class*=-cozy]){--fdToolbar_Height:2rem;--fdToolbar_Separator_Height:1.5rem;--fdToolbar_Overflow_Max_Width:20rem}.fd-toolbar[class*=-compact].fd-toolbar--title,.fd-toolbar[class*=-condensed].fd-toolbar--title,[class*=-compact] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title,[class*=-condensed] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title{--fdToolbar_Height:2.75rem}.fd-toolbar[class*=-compact].fd-toolbar--title-bar,.fd-toolbar[class*=-condensed].fd-toolbar--title-bar,[class*=-compact] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title-bar,[class*=-condensed] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title-bar{--fdToolbar_Height:auto}.fd-toolbar>*{flex-shrink:0}fdk-dynamic-portal:not(:last-of-type) [fd-toolbar-item]{margin-bottom:.25rem}\\n/*! Bundled license information:\\n\\nfundamental-styles/dist/toolbar.css:\\n (*!\\n * Fundamental Library Styles v0.40.1\\n * Copyright (c) 2025 SAP SE or an SAP affiliate company.\\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\\n *)\\n*/\\n\"], dependencies: [{ kind: \"directive\", type: ToolbarSpacerDirective, selector: \"fd-toolbar-spacer\", inputs: [\"width\", \"class\", \"fixed\"] }, { kind: \"component\", type: ToolbarSeparatorComponent, selector: \"fd-toolbar-separator\" }, { kind: \"ngmodule\", type: PopoverModule }, { kind: \"component\", type: i3.PopoverControlComponent, selector: \"fd-popover-control, [fdPopoverControl]\" }, { kind: \"component\", type: i3.PopoverBodyComponent, selector: \"fd-popover-body\", inputs: [\"minWidth\", \"maxWidth\", \"minHeight\", \"maxHeight\"] }, { kind: \"component\", type: i3.PopoverComponent, selector: \"fd-popover\", inputs: [\"title\", \"trigger\", \"fixedPosition\", \"id\", \"mobile\", \"mobileConfig\", \"preventSpaceKeyScroll\"] }, { kind: \"component\", type: ButtonComponent, selector: \"button[fd-button], a[fd-button], span[fd-button]\", inputs: [\"class\", \"id\"], exportAs: [\"fd-button\"] }, { kind: \"component\", type: DynamicPortalComponent, selector: \"fdk-dynamic-portal\", inputs: [\"domElement\", \"component\", \"template\", \"auto\"], outputs: [\"attached\"] }, { kind: \"component\", type: TitleComponent, selector: \"[fd-title], [fdTitle]\", inputs: [\"headerSize\", \"wrap\"], exportAs: [\"fd-title\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\n__decorate([\n applyCssClass,\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", []),\n __metadata(\"design:returntype\", Array)\n], ToolbarComponent.prototype, \"buildComponentCssClass\", null);\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarComponent, decorators: [{\n type: Component,\n args: [{ selector: 'fd-toolbar', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n contentDensityObserverProviders({\n defaultContentDensity: ContentDensityMode.COMPACT\n }),\n {\n provide: FD_TOOLBAR,\n useExisting: ToolbarComponent\n }\n ], imports: [\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n PopoverModule,\n ButtonComponent,\n DynamicPortalComponent,\n TitleComponent\n ], template: \"@if (title) {\\n <span\\n fd-title\\n role=\\\"heading\\\"\\n [headerSize]=\\\"4\\\"\\n [attr.aria-level]=\\\"_headingLevel\\\"\\n class=\\\"fd-toolbar__title\\\"\\n [id]=\\\"titleId\\\"\\n #titleElement\\n >\\n {{ title }}\\n </span>\\n}\\n<ng-content></ng-content>\\n@if (overflownItems.length > 0) {\\n @if (!spacerUsed()) {\\n <fd-toolbar-spacer></fd-toolbar-spacer>\\n }\\n <fd-toolbar-separator></fd-toolbar-separator>\\n <fd-popover placement=\\\"bottom-end\\\" [noArrow]=\\\"true\\\" class=\\\"fd-popover\\\">\\n <fd-popover-control>\\n <button\\n fd-button\\n title=\\\"More\\\"\\n aria-label=\\\"More\\\"\\n aria-haspopup=\\\"true\\\"\\n fdType=\\\"transparent\\\"\\n glyph=\\\"overflow\\\"\\n ></button>\\n </fd-popover-control>\\n <fd-popover-body>\\n <div class=\\\"fd-toolbar__overflow\\\">\\n @for (overflowedItem of overflownItems; track overflowedItem) {\\n <fdk-dynamic-portal\\n [domElement]=\\\"overflowedItem.element\\\"\\n [style.display]=\\\"overflowedItem.priority === 'disappear' ? 'none' : 'flex'\\\"\\n [style.flex-direction]=\\\"overflowedItem.priority === 'disappear' ? undefined : 'column'\\\"\\n >\\n </fdk-dynamic-portal>\\n }\\n </div>\\n </fd-popover-body>\\n </fd-popover>\\n}\\n\", styles: [\".fd-toolbar{--fdToolbar_Height:2.75rem;--fdToolbar_Separator_Margin:0;--fdToolbar_Padding_Left:.5rem;--fdToolbar_Padding_Right:.5rem;--fdToolbar_Separator_Height:2rem;--fdToolbar_Overflow_Max_Width:100%;--fdToolbar_Separator_Width:.0625rem;--fdToolbar_Info_Color:var(--sapList_TextColor);--fdToolbar_Background:var(--sapToolbar_Background);--fdToolbar_Border_Bottom:.0625rem solid var(--sapGroup_TitleBorderColor);--fdToolbar_Border_Top:.0625rem solid var(--sapPageFooter_BorderColor);border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;gap:.5rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:var(--fdToolbar_Background);border-bottom:var(--fdToolbar_Border_Bottom);height:var(--fdToolbar_Height);padding-inline:var(--fdToolbar_Padding_Left) var(--fdToolbar_Padding_Right)}.fd-toolbar:after,.fd-toolbar:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__spacer{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:100%;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-flex:1;-ms-flex:1 auto;flex:1 auto}.fd-toolbar__spacer:after,.fd-toolbar__spacer:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__spacer--fixed{-webkit-box-flex:0;display:inline-block;-ms-flex:none;flex:none}.fd-toolbar__separator{background-color:var(--sapToolbar_SeparatorColor);border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fdToolbar_Separator_Height);line-height:normal;margin-block:0;margin-block:var(--fdToolbar_Separator_Margin);margin-inline:0;padding-block:0;padding-inline:0;width:var(--fdToolbar_Separator_Width)}.fd-toolbar__separator:after,.fd-toolbar__separator:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__overflow{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;--fdToolbar_Separator_Width:auto;--fdToolbar_Separator_Height:.0625rem;--fdToolbar_Separator_Margin:.1875rem;--fdToolbar_Overflow_Padding_Block:.25rem;--fdToolbar_Overflow_Padding_Inline:.5rem;max-height:50vh;max-width:var(--fdToolbar_Overflow_Max_Width);overflow:auto;padding-block:var(--fdToolbar_Overflow_Padding_Block);padding-inline:var(--fdToolbar_Overflow_Padding_Inline)}.fd-toolbar__overflow:after,.fd-toolbar__overflow:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-toolbar__overflow[class*=-compact],.fd-toolbar__overflow[class*=-condensed],[class*=-compact] .fd-toolbar__overflow:not([class*=-cozy]),[class*=-condensed] .fd-toolbar__overflow:not([class*=-cozy]){--fdToolbar_Overflow_Padding_Block:.1875rem;--fdToolbar_Overflow_Padding_Inline:.375rem}.fd-toolbar__overflow .fd-toolbar__overflow-button{margin-block:.1875rem;margin-inline:0;text-align:left;width:auto;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.fd-toolbar__overflow .fd-toolbar__overflow-button[dir=rtl],[dir=rtl] .fd-toolbar__overflow .fd-toolbar__overflow-button{text-align:right}.fd-toolbar__overflow .fd-toolbar__overflow-button--menu{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;max-width:100%}.fd-toolbar__overflow .fd-toolbar__overflow-form-label{margin-block:.625rem .125rem;margin-inline:0}.fd-toolbar__overflow .fd-toolbar__overflow-label{margin-block:.375rem;margin-inline:0}.fd-toolbar .fd-toolbar__title{--fdTitle_Font_Size:var(--sapGroup_Title_FontSize);--fdTitle_Color:var(--sapGroup_TitleTextColor)}.fd-toolbar--auto{--fdToolbar_Background:var(--fdToolbar_Auto_Background)}.fd-toolbar--solid{--fdToolbar_Background:var(--fdToolbar_Solid_Background)}.fd-toolbar--transparent{--fdToolbar_Background:var(--fdToolbar_Transparent_Background)}.fd-toolbar--ai,.fd-toolbar--clear{--fdToolbar_Border_Bottom:none}.fd-toolbar--ai{--fdToolbar_Background:var(--fdToolbar_Transparent_Background);--fdToolbar_Padding_Left:.5rem;--fdToolbar_Padding_Right:.25rem}.fd-toolbar--ai.is-active{--fdToolbar_Background:var(--fdToolbar_Solid_Background);border-top:var(--fdToolbar_Border_Top)}.fd-toolbar--title{--fdToolbar_Height:2.75rem;--fdToolbar_Padding_Left:1rem;--fdToolbar_Background:var(--sapGroup_TitleBackground)}.fd-toolbar.fd-toolbar--title-bar{padding-block:.375rem;--fdToolbar_Height:auto;--fdToolbar_Padding_Left:.75rem;--fdToolbar_Padding_Right:.75rem}.fd-toolbar--info{color:var(--fdToolbar_Info_Color);position:relative;--fdToolbar_Height:2rem;--fdToolbar_Background:var(--sapInfobar_NonInteractive_Background)}.fd-toolbar--info [class*=sap-icon]{color:var(--sapList_TextColor);font-size:1rem;height:1rem;line-height:1rem}.fd-toolbar--active{outline:none;position:relative;--fdToolbar_Background:var(--sapInfobar_Background);--fdToolbar_Info_Color:var(--sapInfobar_TextColor)}.fd-toolbar--active.is-focus:after,.fd-toolbar--active:focus:after{border-color:var(--sapContent_FocusColor);border-style:var(--sapContent_FocusStyle);border-width:var(--sapContent_FocusWidth);content:\\\"\\\";inset:.0625rem;pointer-events:none;position:absolute}.fd-toolbar--active.is-hover,.fd-toolbar--active:hover{--fdToolbar_Background:var(--sapInfobar_Hover_Background)}.fd-toolbar--active.is-active,.fd-toolbar--active:active{--fdToolbar_Background:var(--sapInfobar_Active_Background)}.fd-toolbar--active.is-focus,.fd-toolbar--active:focus{z-index:5}.fd-toolbar--active.is-focus:after,.fd-toolbar--active:focus:after{border-color:var(--fdToolbar_Info_Outline_Color)}.fd-toolbar--fade-in{opacity:1;-webkit-transition:visibility 0s linear 0s,opacity 1s;transition:visibility 0s linear 0s,opacity 1s;visibility:visible}.fd-toolbar--fade-out{opacity:0;-webkit-transition:visibility 0s linear 1s,opacity 1ms;transition:visibility 0s linear 1s,opacity 1ms;visibility:hidden}.fd-toolbar[class*=-compact],.fd-toolbar[class*=-condensed],[class*=-compact] .fd-toolbar:not([class*=-cozy]),[class*=-condensed] .fd-toolbar:not([class*=-cozy]){--fdToolbar_Height:2rem;--fdToolbar_Separator_Height:1.5rem;--fdToolbar_Overflow_Max_Width:20rem}.fd-toolbar[class*=-compact].fd-toolbar--title,.fd-toolbar[class*=-condensed].fd-toolbar--title,[class*=-compact] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title,[class*=-condensed] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title{--fdToolbar_Height:2.75rem}.fd-toolbar[class*=-compact].fd-toolbar--title-bar,.fd-toolbar[class*=-condensed].fd-toolbar--title-bar,[class*=-compact] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title-bar,[class*=-condensed] .fd-toolbar:not([class*=-cozy]).fd-toolbar--title-bar{--fdToolbar_Height:auto}.fd-toolbar>*{flex-shrink:0}fdk-dynamic-portal:not(:last-of-type) [fd-toolbar-item]{margin-bottom:.25rem}\\n/*! Bundled license information:\\n\\nfundamental-styles/dist/toolbar.css:\\n (*!\\n * Fundamental Library Styles v0.40.1\\n * Copyright (c) 2025 SAP SE or an SAP affiliate company.\\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\\n *)\\n*/\\n\"] }]\n }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.ContentDensityObserver }, { type: i0.DestroyRef }, { type: i2.ResizeObserverService }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: SkipSelf\n }, {\n type: Inject,\n args: [DYNAMIC_PAGE_HEADER_TOKEN]\n }] }], propDecorators: { titleId: [{\n type: Input\n }], class: [{\n type: Input\n }], shouldOverflow: [{\n type: Input\n }], fdType: [{\n type: Input\n }], title: [{\n type: Input\n }], active: [{\n type: Input\n }], clearBorder: [{\n type: Input\n }], forceOverflow: [{\n type: Input\n }], tabindex: [{\n type: Input\n }], headingLevel: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['attr.aria-label']\n }], ariaLabelledBy: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['attr.aria-labelledby']\n }], titleElement: [{\n type: ViewChild,\n args: ['titleElement', { read: ElementRef }]\n }], toolbarItems: [{\n type: ContentChildren,\n args: [forwardRef(() => ToolbarItem)]\n }], titleComponent: [{\n type: ContentChild,\n args: [TitleToken]\n }], _role: [{\n type: HostBinding,\n args: ['attr.role']\n }], buildComponentCssClass: [] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvdG9vbGJhci90b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS90b29sYmFyL3Rvb2xiYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFJSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osZUFBZSxFQUNmLGVBQWUsRUFDZixVQUFVLEVBQ1YsVUFBVSxFQUNWLFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLFNBQVMsRUFDVCxNQUFNLEVBQ04sUUFBUSxFQUNSLFNBQVMsRUFDVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHlCQUF5QixFQUFxQixNQUFNLDhCQUE4QixDQUFDO0FBRTVGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFDSCxhQUFhLEVBRWIsc0JBQXNCLEVBRXRCLHVCQUF1QixFQUV2QixxQkFBcUIsRUFDeEIsTUFBTSw0QkFBNEIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUNILGtCQUFrQixFQUNsQixzQkFBc0IsRUFDdEIsK0JBQStCLEVBQ2xDLE1BQU0sdUNBQXVDLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTlELE9BQU8sRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRixP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QkFDYixlQUFlO3dCQUNmLHNCQUFzQjt3QkFDdEIsY0FBYztxQkFDakI7OzBCQXNKSSxRQUFROzswQkFBSSxRQUFROzswQkFBSSxNQUFNOzJCQUFDLHlCQUF5Qjt5Q0EvSTdELE9BQU87c0JBRE4sS0FBSztnQkFNTixLQUFLO3NCQURKLEtBQUs7Z0JBT0YsY0FBYztzQkFEakIsS0FBSztnQkFlTixNQUFNO3NCQURMLEtBQUs7Z0JBS04sS0FBSztzQkFESixLQUFLO2dCQU9OLE1BQU07c0JBREwsS0FBSztnQkFPTixXQUFXO3NCQURWLEtBQUs7Z0JBS04sYUFBYTtzQkFEWixLQUFLO2dCQUtOLFFBQVE7c0JBRFAsS0FBSztnQkFPRixZQUFZO3NCQURmLEtBQUs7Z0JBWU4sU0FBUztzQkFGUixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGlCQUFpQjtnQkFNOUIsY0FBYztzQkFGYixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLHNCQUFzQjtnQkFLbkMsWUFBWTtzQkFEWCxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBSy9DLFlBQVk7c0JBRFgsZUFBZTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDO2dCQUsxQyxjQUFjO3NCQURqQixZQUFZO3VCQUFDLFVBQVU7Z0JBV0wsS0FBSztzQkFEdkIsV0FBVzt1QkFBQyxXQUFXO2dCQTBEeEIsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIEFmdGVyVmlld0NoZWNrZWQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBjb250ZW50Q2hpbGRyZW4sXG4gICAgRGVzdHJveVJlZixcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgaW5qZWN0LFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBRdWVyeUxpc3QsXG4gICAgc2lnbmFsLFxuICAgIFNraXBTZWxmLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERZTkFNSUNfUEFHRV9IRUFERVJfVE9LRU4sIER5bmFtaWNQYWdlSGVhZGVyIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3NoYXJlZCc7XG5cbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gICAgYXBwbHlDc3NDbGFzcyxcbiAgICBDc3NDbGFzc0J1aWxkZXIsXG4gICAgRHluYW1pY1BvcnRhbENvbXBvbmVudCxcbiAgICBOdWxsYWJsZSxcbiAgICBPVkVSRkxPV19QUklPUklUWV9TQ09SRSxcbiAgICBPdmVyZmxvd1ByaW9yaXR5LFxuICAgIFJlc2l6ZU9ic2VydmVyU2VydmljZVxufSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvYnV0dG9uJztcbmltcG9ydCB7XG4gICAgQ29udGVudERlbnNpdHlNb2RlLFxuICAgIENvbnRlbnREZW5zaXR5T2JzZXJ2ZXIsXG4gICAgY29udGVudERlbnNpdHlPYnNlcnZlclByb3ZpZGVyc1xufSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvY29udGVudC1kZW5zaXR5JztcbmltcG9ydCB7IFBvcG92ZXJNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvcG9wb3Zlcic7XG5pbXBvcnQgeyBIZWFkaW5nTGV2ZWwgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2hhcmVkJztcbmltcG9ydCB7IFRpdGxlQ29tcG9uZW50LCBUaXRsZVRva2VuIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3RpdGxlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbWFwLCBPYnNlcnZhYmxlLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRvb2xiYXJJdGVtIH0gZnJvbSAnLi9hYnN0cmFjdC10b29sYmFyLWl0ZW0uY2xhc3MnO1xuaW1wb3J0IHsgRkRfVE9PTEJBUiB9IGZyb20gJy4vdG9rZW5zJztcbmltcG9ydCB7IFRvb2xiYXJTZXBhcmF0b3JDb21wb25lbnQgfSBmcm9tICcuL3Rvb2xiYXItc2VwYXJhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sYmFyU3BhY2VyRGlyZWN0aXZlIH0gZnJvbSAnLi90b29sYmFyLXNwYWNlci5kaXJlY3RpdmUnO1xuXG5jb25zdCBFTEVNRU5UX01BUkdJTiA9IDg7XG5jb25zdCBPVkVSRkxPV19CVE5fQ09aWSA9IDM2O1xuY29uc3QgT1ZFUkZMT1dfQlROX0NPTVBBQ1QgPSAzMjtcbmNvbnN0IE1BWF9DT05URU5UX1NJWkUgPSA5OTk5OTk5OTtcblxuZXhwb3J0IHR5cGUgVG9vbGJhclR5cGUgPSAnc29saWQnIHwgJ3RyYW5zcGFyZW50JyB8ICdhdXRvJyB8ICdpbmZvJztcblxubGV0IHRvb2xiYXJUaXRsZUlkID0gMDtcblxuZXhwb3J0IGNvbnN0IGVudW0gT3ZlcmZsb3dQcmlvcml0eUVudW0ge1xuICAgIEFMV0FZUyA9ICdhbHdheXMnLFxuICAgIE5FVkVSID0gJ25ldmVyJyxcbiAgICBMT1cgPSAnbG93JyxcbiAgICBISUdIID0gJ2hpZ2gnLFxuICAgIERJU0FQUEVBUiA9ICdkaXNhcHBlYXInXG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtdG9vbGJhcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Rvb2xiYXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi90b29sYmFyLmNvbXBvbmVudC5zY3NzJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBjb250ZW50RGVuc2l0eU9ic2VydmVyUHJvdmlkZXJzKHtcbiAgICAgICAgICAgIGRlZmF1bHRDb250ZW50RGVuc2l0eTogQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1RcbiAgICAgICAgfSksXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEZEX1RPT0xCQVIsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogVG9vbGJhckNvbXBvbmVudFxuICAgICAgICB9XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIFRvb2xiYXJTcGFjZXJEaXJlY3RpdmUsXG4gICAgICAgIFRvb2xiYXJTZXBhcmF0b3JDb21wb25lbnQsXG4gICAgICAgIFBvcG92ZXJNb2R1bGUsXG4gICAgICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BvcnRhbENvbXBvbmVudCxcbiAgICAgICAgVGl0bGVDb21wb25lbnRcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFRvb2xiYXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBBZnRlclZpZXdDaGVja2VkLCBDc3NDbGFzc0J1aWxkZXIsIEFmdGVyQ29udGVudEluaXQge1xuICAgIC8qKlxuICAgICAqIFRoZSBJRCBvZiB0aGUgdG9vbGJhciB0aXRsZVxuICAgICAqICovXG4gICAgQElucHV0KClcbiAgICB0aXRsZUlkID0gYGZkLXRvb2xiYXItdGl0bGUtJHt0b29sYmFyVGl0bGVJZCsrfWA7XG5cbiAgICAvKiogUHJvcGVydHkgYWxsb3dzIHVzZXIgdG8gcGFzcyBhZGRpdGlvbmFsIGNsYXNzXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBjbGFzczogc3RyaW5nO1xuXG4gICAgLyoqIERldGVybWluZXMgaWYgb3ZlcmZsb3cgYnV0dG9uIHNob3VsZCBiZSB2aXNpYmxlXG4gICAgICogRGVmYXVsdCB2YWx1ZTogZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBzaG91bGRPdmVyZmxvdyh2YWw6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fc2hvdWxkT3ZlcmZsb3cgPSB2YWw7XG4gICAgICAgIHRoaXMuc2hvdWxkT3ZlcmZsb3ckLm5leHQodmFsKTtcbiAgICB9XG5cbiAgICBnZXQgc2hvdWxkT3ZlcmZsb3coKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zaG91bGRPdmVyZmxvdztcbiAgICB9XG5cbiAgICAvKiogRGV0ZXJtaW5lcyB0aGUgdHlwZSBvZiB0b29sYmFyXG4gICAgICogQXZhaWxhYmxlIG9wdGlvbnM6ICdzb2xpZCcgfCAndHJhbnNwYXJlbnQnIHwgJ2F1dG8nIHwgJ2luZm8nXG4gICAgICogRGVmYXVsdCB2YWx1ZTogJ3NvbGlkJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZmRUeXBlOiBUb29sYmFyVHlwZSA9ICdzb2xpZCc7XG5cbiAgICAvKiogVGhlIHRpdGxlIGZvciB0aGUgdG9vbGJhci4gKi9cbiAgICBASW5wdXQoKVxuICAgIHRpdGxlOiBzdHJpbmc7XG5cbiAgICAvKiogRGV0ZXJtaW5lcyBpZiB0b29sYmFyIHNob3VsZCBoYXMgYWN0aXZlIHN0YXRlIChvbmx5IHdoZW4gZmRUeXBlID09ICdpbmZvJylcbiAgICAgKiBEZWZhdWx0IHZhbHVlOiBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgYWN0aXZlID0gZmFsc2U7XG5cbiAgICAvKiogRGV0ZXJtaW5lcyBpZiB0b29sYmFyIHNob3VsZCBjbGVhciBib3JkZXIgYm90dG9tXG4gICAgICogRGVmYXVsdCB2YWx1ZTogZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGNsZWFyQm9yZGVyID0gZmFsc2U7XG5cbiAgICAvKiogV2hldGhlciBhbGwgaXRlbXMgc2hvdWxkIGJlIGluc2lkZSBvdmVyZmxvdyAqL1xuICAgIEBJbnB1dCgpXG4gICAgZm9yY2VPdmVyZmxvdyA9IGZhbHNlO1xuXG4gICAgLyoqIFRhYmluZGV4IG9mIHRoZSB0b29sYmFyIGVsZW1lbnQsIHRvIGJlIHVzZWQgd2hlbiBmZFR5cGU9XCJpbmZvXCIgKi9cbiAgICBASW5wdXQoKVxuICAgIHRhYmluZGV4ID0gLTE7XG5cbiAgICAvKipcbiAgICAgKiBIZWFkaW5nIGxldmVsIG9mIHRoZSB0b29sYmFyIHRpdGxlLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGhlYWRpbmdMZXZlbChsZXZlbDogTnVsbGFibGU8SGVhZGluZ0xldmVsPikge1xuICAgICAgICBpZiAodHlwZW9mIGxldmVsID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgdGhpcy5faGVhZGluZ0xldmVsID0gbGV2ZWw7XG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGxldmVsID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgdGhpcy5faGVhZGluZ0xldmVsID0gTnVtYmVyLnBhcnNlSW50KGxldmVsLnJlcGxhY2UoL1xcRC9nLCAnJyksIDEwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBUb29sYmFyIEFyaWEtbGFiZWwgYXR0cmlidXRlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtbGFiZWwnKVxuICAgIGFyaWFMYWJlbDogc3RyaW5nO1xuXG4gICAgLyoqIFRvb2xiYXIgQXJpYS1sYWJlbGxlZGJ5IGF0dHJpYnV0ZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWxhYmVsbGVkYnknKVxuICAgIGFyaWFMYWJlbGxlZEJ5OiBzdHJpbmc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ3RpdGxlRWxlbWVudCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICAgIHRpdGxlRWxlbWVudDogRWxlbWVudFJlZjxIVE1MSGVhZEVsZW1lbnQ+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gVG9vbGJhckl0ZW0pKVxuICAgIHRvb2xiYXJJdGVtczogUXVlcnlMaXN0PFRvb2xiYXJJdGVtPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQENvbnRlbnRDaGlsZChUaXRsZVRva2VuKVxuICAgIHNldCB0aXRsZUNvbXBvbmVudCh0aXRsZTogVGl0bGVUb2tlbiB8IG51bGwpIHtcbiAgICAgICAgdGhpcy5fdGl0bGVDb21wb25lbnQkLm5leHQodGl0bGUpO1xuICAgIH1cblxuICAgIGdldCB0aXRsZUNvbXBvbmVudCgpOiBUaXRsZVRva2VuIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLl90aXRsZUNvbXBvbmVudCQudmFsdWU7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IF9yb2xlID0gJ3Rvb2xiYXInO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBvdmVyZmxvd0l0ZW1zJDogT2JzZXJ2YWJsZTxUb29sYmFySXRlbVtdPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgb3ZlcmZsb3duSXRlbXM6IFRvb2xiYXJJdGVtW10gPSBbXTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3BhY2VyVXNlZCA9IHNpZ25hbChmYWxzZSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNwYWNlckRpcmVjdGl2ZXMgPSBjb250ZW50Q2hpbGRyZW4oVG9vbGJhclNwYWNlckRpcmVjdGl2ZSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNlcGFyYXRvckRpcmVjdGl2ZXMgPSBjb250ZW50Q2hpbGRyZW4oVG9vbGJhclNlcGFyYXRvckNvbXBvbmVudCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9oZWFkaW5nTGV2ZWwgPSAyO1xuXG4gICAgLyoqIEhUTUwgRWxlbWVudCBSZWZlcmVuY2UuICovXG4gICAgcmVhZG9ubHkgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdGl0bGVDb21wb25lbnQkOiBCZWhhdmlvclN1YmplY3Q8VGl0bGVUb2tlbiB8IG51bGw+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUaXRsZVRva2VuIHwgbnVsbD4obnVsbCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3JlZnJlc2hPdmVyZmxvdyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHZvaWQ+KHVuZGVmaW5lZCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgZ2V0IF90b29sYmFyV2lkdGgoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgX292ZXJmbG93X2J0bl9zaXplID0gdGhpcy5fY29udGVudERlbnNpdHlPYnNlcnZlci5pc0NvbXBhY3QgPyBPVkVSRkxPV19CVE5fQ09NUEFDVCA6IE9WRVJGTE9XX0JUTl9DT1pZO1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5jbGllbnRXaWR0aCAtXG4gICAgICAgICAgICAoX292ZXJmbG93X2J0bl9zaXplICsgNCAqIEVMRU1FTlRfTUFSR0lOICsgMSArIHRoaXMuc2VwYXJhdG9yRGlyZWN0aXZlcygpLmxlbmd0aClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Nob3VsZE92ZXJmbG93ID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgc2hvdWxkT3ZlcmZsb3ckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHJlYWRvbmx5IF9jb250ZW50RGVuc2l0eU9ic2VydmVyOiBDb250ZW50RGVuc2l0eU9ic2VydmVyLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95UmVmOiBEZXN0cm95UmVmLFxuICAgICAgICBwcml2YXRlIHJlc2l6ZU9ic2VydmVyU2VydmljZTogUmVzaXplT2JzZXJ2ZXJTZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBASW5qZWN0KERZTkFNSUNfUEFHRV9IRUFERVJfVE9LRU4pIHByaXZhdGUgX2R5bmFtaWNQYWdlSGVhZGVyPzogRHluYW1pY1BhZ2VIZWFkZXJcbiAgICApIHtcbiAgICAgICAgX2NvbnRlbnREZW5zaXR5T2JzZXJ2ZXIuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAYXBwbHlDc3NDbGFzc1xuICAgIGJ1aWxkQ29tcG9uZW50Q3NzQ2xhc3MoKTogc3RyaW5nW10ge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgJ2ZkLXRvb2xiYXInLFxuICAgICAgICAgICAgYGZkLXRvb2xiYXItLSR7dGhpcy5mZFR5cGV9YCxcbiAgICAgICAgICAgIGAke3RoaXMuYWN0aXZlICYmIHRoaXMuZmRUeXBlID09PSAnaW5mbycgPyAnZmQtdG9vbGJhci0tYWN0aXZlJyA6ICcnfWAsXG4gICAgICAgICAgICBgJHt0aGlzLnRpdGxlIHx8IHRoaXMudGl0bGVDb21wb25lbnQgPyAnZmQtdG9vbGJhci0tdGl0bGUnIDogJyd9YCxcbiAgICAgICAgICAgIGAke3RoaXMuY2xlYXJCb3JkZXIgPyAnZmQtdG9vbGJhci0tY2xlYXInIDogJyd9YCxcbiAgICAgICAgICAgIGAke3RoaXMuX2R5bmFtaWNQYWdlSGVhZGVyID8gJ2ZkLWR5bmFtaWMtcGFnZV9fdG9vbGJhcicgOiAnJ31gXG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3VwZGF0ZVNwYWNlclVzZWQoKTtcblxuICAgICAgICB0aGlzLm92ZXJmbG93SXRlbXMkID0gY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgICB0aGlzLnJlc2l6ZU9ic2VydmVyU2VydmljZS5vYnNlcnZlKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KS5waXBlKG1hcCgoKSA9PiB0aGlzLl90b29sYmFyV2lkdGgpKSxcbiAgICAgICAgICAgIHRoaXMudG9vbGJhckl0ZW1zLmNoYW5nZXMucGlwZShcbiAgICAgICAgICAgICAgICBzdGFydFdpdGgodGhpcy50b29sYmFySXRlbXMpLFxuICAgICAgICAgICAgICAgIG1hcCgodG9vbGJhckl0ZW1zKSA9PiB0b29sYmFySXRlbXMudG9BcnJheSgpKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRoaXMuX3RpdGxlQ29tcG9uZW50JC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgodGl0bGVDb21wb25lbnQpOiBIVE1MRWxlbWVudCB8IG51bGwgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIXRpdGxlQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy50aXRsZUVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRpdGxlQ29tcG9uZW50LmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRoaXMuc2hvdWxkT3ZlcmZsb3ckLFxuICAgICAgICAgICAgdGhpcy5fcmVmcmVzaE92ZXJmbG93JFxuICAgICAgICBdKS5waXBlKFxuICAgICAgICAgICAgbWFwKChbdG9vbGJhcldpZHRoLCB0b29sYmFySXRlbXMsIHRpdGxlRWxlbWVudCwgc2hvdWxkT3ZlcmZsb3ddKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHNob3VsZE92ZXJmbG93KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IF9zb3J0ZWRCeVByaW9yaXR5QW5kR3JvdXBJdGVtcyA9IHRoaXMuX2dldFNvcnRlZEJ5UHJpb3JpdHlBbmRHcm91cEl0ZW1zKHRvb2xiYXJJdGVtcyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG92ZXJmbG93SXRlbXM6IFRvb2xiYXJJdGVtW10gPSBbXTtcbiAgICAgICAgICAgICAgICAgICAgX3NvcnRlZEJ5UHJpb3JpdHlBbmRHcm91cEl0ZW1zLnJlZHVjZSgoX2NvbnRlbnRXaWR0aCwgdG9vbGJhckl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1XaWR0aCA9IHRvb2xiYXJJdGVtLndpZHRoICsgMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1Qcmlvcml0eSA9IHRvb2xiYXJJdGVtLnByaW9yaXR5O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2hvdWxkSXRlbUJlUmVtb3ZlZEJ5V2lkdGggPSBpdGVtV2lkdGggKyBfY29udGVudFdpZHRoID4gdG9vbGJhcldpZHRoO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2hvdWxkQWx3YXlzQmVJbk92ZXJmbG93ID1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtUHJpb3JpdHkgPT09IE92ZXJmbG93UHJpb3JpdHlFbnVtLkFMV0FZUyB8fCB0aGlzLmZvcmNlT3ZlcmZsb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzaG91bGROZXZlckJlSW5PdmVyZmxvdyA9IGl0ZW1Qcmlvcml0eSA9PT0gT3ZlcmZsb3dQcmlvcml0eUVudW0uTkVWRVI7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoKHNob3VsZEl0ZW1CZVJlbW92ZWRCeVdpZHRoICYmICFzaG91bGROZXZlckJlSW5PdmVyZmxvdykgfHwgc2hvdWxkQWx3YXlzQmVJbk92ZXJmbG93KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3dJdGVtcy5wdXNoKHRvb2xiYXJJdGVtKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc2hvdWxkQWx3YXlzQmVJbk92ZXJmbG93ID8gX2NvbnRlbnRXaWR0aCA6IE1BWF9DT05URU5UX1NJWkU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGVudFdpZHRoICsgaXRlbVdpZHRoO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LCB0aXRsZUVsZW1lbnQ/LmNsaWVudFdpZHRoIHx8IDApO1xuICAgICAgICAgICAgICAgICAgICAvLyBIaWRlIG9ycGhhbnNcbiAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCB0b29sYmFySXRlbSBvZiBvdmVyZmxvd0l0ZW1zKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBncm91cGVkQ29sbGVjdGlvbiA9IHRoaXMuX2dldEdyb3VwZWRDb2xsZWN0aW9uKHRvb2xiYXJJdGVtcyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBncm91cGVkQ29sbGVjdGlvblByaW9yaXRpZXMgPSB0aGlzLl9nZXRHcm91cGVkQ29sbGVjdGlvblByaW9yaXR5KGdyb3VwZWRDb2xsZWN0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdyb3VwID0gdG9vbGJhckl0ZW0uZ3JvdXA7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpdGVtUHJpb3JpdHkgPSB0b29sYmFySXRlbS5wcmlvcml0eTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChncm91cCAhPT0gMCAmJiBpdGVtUHJpb3JpdHkgIT09IE92ZXJmbG93UHJpb3JpdHlFbnVtLkRJU0FQUEVBUikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1zRnJvbUN1cnJlbnRHcm91cCA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2dldEVsZW1lbnRzRnJvbUN1cnJlbnRHcm91cChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyb3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JvdXBlZENvbGxlY3Rpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncm91cGVkQ29sbGVjdGlvblByaW9yaXRpZXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSB8fCBbXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtc0Zyb21DdXJyZW50R3JvdXAuZm9yRWFjaCgoaSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAob3ZlcmZsb3dJdGVtcy5pbmRleE9mKGkpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3dJdGVtcy5wdXNoKGkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG92ZXJmbG93SXRlbXMuc29ydCgoYSwgYikgPT4gdGhpcy5fc29ydFByaW9yaXRpZXMoYS5wcmlvcml0eSwgYi5wcmlvcml0eSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLl9kZXN0cm95UmVmKVxuICAgICAgICApO1xuICAgICAgICB0aGlzLm92ZXJmbG93SXRlbXMkLnN1YnNjcmliZSgoaXRlbXMpID0+IHtcbiAgICAgICAgICAgIHRoaXMub3ZlcmZsb3duSXRlbXMgPSBpdGVtcztcbiAgICAgICAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuYnVpbGRDb21wb25lbnRDc3NDbGFzcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmJ1aWxkQ29tcG9uZW50Q3NzQ2xhc3MoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMudGl0bGVDb21wb25lbnQpIHtcbiAgICAgICAgICAgIHRoaXMudGl0bGVDb21wb25lbnQuZWxlbWVudFJlZj8ubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKCdmZC10b29sYmFyX190aXRsZScpO1xuICAgICAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQ2hhbmdlIGRldGVjdGlvbiByZWZlcmVuY2UgKi9cbiAgICBkZXRlY3RDaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqIE1ldGhvZCB0cmlnZ2VyaW5nIGNvbGxhcHNpYmxlIHRvb2xiYXIgICovXG4gICAgdXBkYXRlQ29sbGFwc2libGVJdGVtcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcmVmcmVzaE92ZXJmbG93JC5uZXh0KCk7XG4gICAgfVxuXG4gICAgLyoqIGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3VwZGF0ZVNwYWNlclVzZWQoKTogdm9pZCB7XG4gICAgICAgIC8vIGRvIG5vdCByZW5kZXIgZXh0cmEgc3BhY2VyIGlmIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBwYXNzZWQgYnkgdGhlIGFwcGxpY2F0aW9uXG4gICAgICAgIC8vIGFuZCBpdCBpcyBub3QgZml4ZWQgdGhpcy5zcGFjZXJVc2VkLnNldCh0aGlzLnNwYWNlci5sZW5ndGggPiAwICYmIHRoaXMuc3BhY2VyLnNvbWUoKHNwYWNlcikgPT4gIXNwYWNlci5maXhlZCkpO1xuICAgICAgICB0aGlzLnNwYWNlclVzZWQuc2V0KFxuICAgICAgICAgICAgdGhpcy5zcGFjZXJEaXJlY3RpdmVzKCkubGVuZ3RoID4gMCAmJiB0aGlzLnNwYWNlckRpcmVjdGl2ZXMoKS5zb21lKChzcGFjZXIpID0+ICFzcGFjZXIuZml4ZWQpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gR2V0IGdyb3VwIG51bWJlciB3aXRoIHRoZSBsb3dlc3QgcHJpb3JpdHkuXG4gICAgICogIFVzZXMgZm9yIGRldGVjdGluZyBhIGdyb3VwIG9mIGVsZW1lbnRzIHdoaWNoIHdvdWxkIGJlIGhpZGRlbiBmcm9tIHRoZSB0b29sYmFyLlxuICAgICAqICAqL1xuICAgIHByaXZhdGUgX2dldExvd2VzdFByaW9yaXR5RnJvbUdyb3VwKFxuICAgICAgICBpdGVtR3JvdXA6IG51bWJlcixcbiAgICAgICAgZ3JvdXBlZENvbGxlY3Rpb25Qcmlvcml0eT86IFJlY29yZDxudW1iZXIsIE92ZXJmbG93UHJpb3JpdHk+XG4gICAgKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgcHJpb3JpdHkgPSBncm91cGVkQ29sbGVjdGlvblByaW9yaXR5O1xuICAgICAgICBpZiAoIXByaW9yaXR5IHx8ICFPVkVSRkxPV19QUklPUklUWV9TQ09SRS5nZXQocHJpb3JpdHlbaXRlbUdyb3VwXSkpIHtcbiAgICAgICAgICAgIHJldHVybiBpdGVtR3JvdXA7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBncm91cHMgPSBPYmplY3Qua2V5cyhwcmlvcml0eSk7XG5cbiAgICAgICAgcmV0dXJuIGdyb3Vwcy5yZWR1Y2UoKGxvd2VzdEdyb3VwLCBjdXJyZW50R3JvdXApID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxvd2VzdEdyb3VwUHJpb3JpdHkgPSBwcmlvcml0eVtsb3dlc3RHcm91cF07XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50R3JvdXBQcmlvcml0eSA9IHByaW9yaXR5W2N1cnJlbnRHcm91cF07XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgT1ZFUkZMT1dfUFJJT1JJVFlfU0NPUkUuZ2V0KGN1cnJlbnRHcm91cFByaW9yaXR5KSEgPCBPVkVSRkxPV19QUklPUklUWV9TQ09SRS5nZXQobG93ZXN0R3JvdXBQcmlvcml0eSkhXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gK2N1cnJlbnRHcm91cDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGxvd2VzdEdyb3VwO1xuICAgICAgICB9LCBpdGVtR3JvdXAgYXMgbnVtYmVyKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldEVsZW1lbnRzRnJvbUN1cnJlbnRHcm91cChcbiAgICAgICAgaXRlbUdyb3VwOiBudW1iZXIsXG4gICAgICAgIGdyb3VwZWRDb2xsZWN0aW9uPzogUmVjb3JkPG51bWJlciwgVG9vbGJhckl0ZW1bXT4sXG4gICAgICAgIGdyb3VwZWRDb2xsZWN0aW9uUHJpb3JpdHk/OiBSZWNvcmQ8bnVtYmVyLCBPdmVyZmxvd1ByaW9yaXR5PlxuICAgICk6IFRvb2xiYXJJdGVtW10ge1xuICAgICAgICBjb25zdCBsb3dlc3RQcmlvcml0eUZyb21Hcm91cCA9IHRoaXMuX2dldExvd2VzdFByaW9yaXR5RnJvbUdyb3VwKGl0ZW1Hcm91cCwgZ3JvdXBlZENvbGxlY3Rpb25Qcmlvcml0eSk7XG4gICAgICAgIGlmICghZ3JvdXBlZENvbGxlY3Rpb24gfHwgIWdyb3VwZWRDb2xsZWN0aW9uUHJpb3JpdHkpIHtcbiAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgfVxuICAgICAgICBsZXQgaXRlbXNUb1JlbW92ZSA9IGdyb3VwZWRDb2xsZWN0aW9uW2xvd2VzdFByaW9yaXR5RnJvbUdyb3VwXTtcblxuICAgICAgICBkZWxldGUgZ3JvdXBlZENvbGxlY3Rpb25bbG93ZXN0UHJpb3JpdHlGcm9tR3JvdXBdO1xuICAgICAgICBkZWxldGUgZ3JvdXBlZENvbGxlY3Rpb25Qcmlvcml0eVtsb3dlc3RQcmlvcml0eUZyb21Hcm91cF07XG5cbiAgICAgICAgaWYgKGxvd2VzdFByaW9yaXR5RnJvbUdyb3VwICE9PSBpdGVtR3JvdXApIHtcbiAgICAgICAgICAgIGl0ZW1zVG9SZW1vdmUgPSBbLi4uaXRlbXNUb1JlbW92ZSwgLi4uZ3JvdXBlZENvbGxlY3Rpb25baXRlbUdyb3VwXV07XG4gICAgICAgICAgICBkZWxldGUgZ3JvdXBlZENvbGxlY3Rpb25baXRlbUdyb3VwXTtcbiAgICAgICAgICAgIGRlbGV0ZSBncm91cGVkQ29sbGVjdGlvblByaW9yaXR5W2l0ZW1Hcm91cF07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXRlbXNUb1JlbW92ZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBHZXQgdGhlIG9iamVjdCB3aXRoIGdyb3VwZWQgYXJyYXlzIG9mIGVsZW1lbnRzLiAqL1xuICAgIHByaXZhdGUgX2dldEdyb3VwZWRDb2xsZWN0aW9uKHRvb2xiYXJJdGVtczogVG9vbGJhckl0ZW1bXSk6IFJlY29yZDxudW1iZXIsIFRvb2xiYXJJdGVtW10+IHtcbiAgICAgICAgcmV0dXJuIHRvb2xiYXJJdGVtcy5yZWR1Y2UoKGFjYywgaXRlbSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaXRlbVByaW8gPSBpdGVtLnByaW9yaXR5O1xuICAgICAgICAgICAgY29uc3QgaXRlbUdyb3VwID0gaXRlbS5ncm91cDtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICBpdGVtUHJpbyA9PT0gT3ZlcmZsb3dQcmlvcml0eUVudW0uTkVWRVIgfHxcbiAgICAgICAgICAgICAgICBpdGVtUHJpbyA9PT0gT3ZlcmZsb3dQcmlvcml0eUVudW0uQUxXQVlTIHx8XG4gICAgICAgICAgICAgICAgaXRlbUdyb3VwID09PSAwXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFhY2NbaXRlbUdyb3VwXSkge1xuICAgICAgICAgICAgICAgIGFjY1tpdGVtR3JvdXBdID0gW107XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhY2NbaXRlbUdyb3VwXS5wdXNoKGl0ZW0pO1xuICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgfSwge30pO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIEdldCB0aGUgb2JqZWN0IHdpdGggdGhlIGhpZ2hlc3QgcHJpb3JpdHkgZm9yIGVhY2ggZ3JvdXAgb2YgZWxlbWVudHMuICovXG4gICAgcHJpdmF0ZSBfZ2V0R3JvdXBlZENvbGxlY3Rpb25Qcmlvcml0eShcbiAgICAgICAgZ3JvdXBlZENvbGxlY3Rpb246IFJlY29yZDxudW1iZXIsIFRvb2xiYXJJdGVtW10+XG4gICAgKTogUmVjb3JkPG51bWJlciwgT3ZlcmZsb3dQcmlvcml0eT4ge1xuICAgICAgICBjb25zdCBncm91cHMgPSBPYmplY3Qua2V5cyhncm91cGVkQ29sbGVjdGlvbik7XG5cbiAgICAgICAgcmV0dXJuIGdyb3Vwcy5yZWR1Y2UoKGFjYywgaXRlbUdyb3VwKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzb3J0ZWRQcmlvcml0aWVzID0gZ3JvdXBlZENvbGxlY3Rpb24hW2l0ZW1Hcm91cF1cbiAgICAgICAgICAgICAgICAubWFwKChpOiBUb29sYmFySXRlbSkgPT4gaS5wcmlvcml0eSlcbiAgICAgICAgICAgICAgICAuZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAocHJpbzogT3ZlcmZsb3dQcmlvcml0eSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHByaW8gIT09IE92ZXJmbG93UHJpb3JpdHlFbnVtLkFMV0FZUyAmJiBwcmlvICE9PSBPdmVyZmxvd1ByaW9yaXR5RW51bS5ORVZFUlxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuc29ydCh0aGlzLl9zb3J0UHJpb3JpdGllcyk7XG5cbiAgICAgICAgICAgIGFjY1tpdGVtR3JvdXBdID0gc29ydGVkUHJpb3JpdGllc1swXTtcblxuICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgfSwge30pO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIFNvcnQgcHJpb3JpdGllcyBvZiBlbGVtZW50cy9ncm91cHMuICovXG4gICAgcHJpdmF0ZSBfc29ydFByaW9yaXRpZXMoYTogT3ZlcmZsb3dQcmlvcml0eSwgYjogT3ZlcmZsb3dQcmlvcml0eSk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBPVkVSRkxPV19QUklPUklUWV9TQ09SRS5nZXQoYikhIC0gT1ZFUkZMT1dfUFJJT1JJVFlfU0NPUkUuZ2V0KGEpITtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBTb3J0IGJ5IGdyb3VwIGFuZCBwcmlvcml0eSBhbmQgaW5pdGlhbCBwb3NpdGlvbiAqL1xuICAgIHByaXZhdGUgX2dldFNvcnRlZEJ5UHJpb3JpdHlBbmRHcm91cEl0ZW1zKHRvb2xiYXJJdGVtczogVG9vbGJhckl0ZW1bXSk6IFRvb2xiYXJJdGVtW10ge1xuICAgICAgICBjb25zdCBub3RTb3J0ZWQgPSB0b29sYmFySXRlbXMubWFwKChlbGVtZW50LCBpbmRleCkgPT4gKHsgZWxlbWVudCwgaW5kZXggfSkpO1xuXG4gICAgICAgIGNvbnN0IGdyb3VwcyA9IG5vdFNvcnRlZC5yZWR1Y2UoKGdyLCBpdGVtKSA9PiB7XG4gICAgICAgICAgICBsZXQgZ3JvdXBJZCA9IGl0ZW0uZWxlbWVudC5ncm91cDtcbiAgICAgICAgICAgIGNvbnN0IGl0ZW1QcmlvID0gaXRlbS5lbGVtZW50LnByaW9yaXR5O1xuICAgICAgICAgICAgaWYgKGl0ZW1QcmlvID09PSBPdmVyZmxvd1ByaW9yaXR5RW51bS5ORVZFUiB8fCBpdGVtUHJpbyA9PT0gT3ZlcmZsb3dQcmlvcml0eUVudW0uQUxXQVlTKSB7XG4gICAgICAgICAgICAgICAgZ3JvdXBJZCA9IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghZ3JbZ3JvdXBJZF0pIHtcbiAgICAgICAgICAgICAgICBncltncm91cElkXSA9IFtdO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBncltncm91cElkXS5wdXNoKGl0ZW0pO1xuXG4gICAgICAgICAgICByZXR1cm4gZ3I7XG4gICAgICAgIH0sIHt9KTtcblxuICAgICAgICBjb25zdCBncm91cElkcyA9IE9iamVjdC5rZXlzKGdyb3VwcylcbiAgICAgICAgICAgIC5tYXAoKGcpID0+IHBhcnNlSW50KGcsIDEwKSlcbiAgICAgICAgICAgIC5maWx0ZXIoKGcpID0+IGcgIT09IDApO1xuXG4gICAgICAgIHJldHVybiBncm91cElkc1xuICAgICAgICAgICAgLm1hcCgoZykgPT4ge1xuICAgICAgICAgICAgICAgIGxldCBtaW5JbmRleCA9IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSO1xuICAgICAgICAgICAgICAgIGxldCBtYXhQcmlvcml0eSA9IDA7XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGdyb3Vwc1tnXSkge1xuICAgICAgICAgICAgICAgICAgICBtaW5JbmRleCA9IE1hdGgubWluKG1pbkluZGV4LCBpdGVtLmluZGV4KTtcbiAgICAgICAgICAgICAgICAgICAgbWF4UHJpb3JpdHkgPSBNYXRoLm1heChcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heFByaW9yaXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgT1ZFUkZMT1dfUFJJT1JJVFlfU0NPUkUuZ2V0KGl0ZW0uZWxlbWVudC5wcmlvcml0eSkgPz8gLUluZmluaXR5XG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgZ3JvdXA6IGdyb3Vwc1tnXS5tYXAoKHsgZWxlbWVudCB9KSA9PiBlbGVtZW50KSwgbWluSW5kZXgsIG1heFByaW9yaXR5IH07XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmNvbmNhdChcbiAgICAgICAgICAgICAgICAhZ3JvdXBzWzBdXG4gICAgICAgICAgICAgICAgICAgID8gW11cbiAgICAgICAgICAgICAgICAgICAgOiBncm91cHNbMF0ubWFwKChpdGVtKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICBncm91cDogW2l0ZW0uZWxlbWVudF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1heFByaW9yaXR5OiBPVkVSRkxPV19QUklPUklUWV9TQ09SRS5nZXQoaXRlbS5lbGVtZW50LnByaW9yaXR5KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWluSW5kZXg6IGl0ZW0uaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICB9KSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zb3J0KChhLCBiKSA9PiBiLm1heFByaW9yaXR5IC0gYS5tYXhQcmlvcml0eSB8fCBhLm1pbkluZGV4IC0gYi5taW5JbmRleClcbiAgICAgICAgICAgIC5yZWR1Y2UoKGFyciwgaSkgPT4gYXJyLmNvbmNhdChpLmdyb3VwKSwgW10pO1xuICAgIH1cbn1cbiIsIkBpZiAodGl0bGUpIHtcbiAgICA8c3BhblxuICAgICAgICBmZC10aXRsZVxuICAgICAgICByb2xlPVwiaGVhZGluZ1wiXG4gICAgICAgIFtoZWFkZXJTaXplXT1cIjRcIlxuICAgICAgICBbYXR0ci5hcmlhLWxldmVsXT1cIl9oZWFkaW5nTGV2ZWxcIlxuICAgICAgICBjbGFzcz1cImZkLXRvb2xiYXJfX3RpdGxlXCJcbiAgICAgICAgW2lkXT1cInRpdGxlSWRcIlxuICAgICAgICAjdGl0bGVFbGVtZW50XG4gICAgPlxuICAgICAgICB7eyB0aXRsZSB9fVxuICAgIDwvc3Bhbj5cbn1cbjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbkBpZiAob3ZlcmZsb3duSXRlbXMubGVuZ3RoID4gMCkge1xuICAgIEBpZiAoIXNwYWNlclVzZWQoKSkge1xuICAgICAgICA8ZmQtdG9vbGJhci1zcGFjZXI+PC9mZC10b29sYmFyLXNwYWNlcj5cbiAgICB9XG4gICAgPGZkLXRvb2xiYXItc2VwYXJhdG9yPjwvZmQtdG9vbGJhci1zZXBhcmF0b3I+XG4gICAgPGZkLXBvcG92ZXIgcGxhY2VtZW50PVwiYm90dG9tLWVuZFwiIFtub0Fycm93XT1cInRydWVcIiBjbGFzcz1cImZkLXBvcG92ZXJcIj5cbiAgICAgICAgPGZkLXBvcG92ZXItY29udHJvbD5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICB0aXRsZT1cIk1vcmVcIlxuICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJNb3JlXCJcbiAgICAgICAgICAgICAgICBhcmlhLWhhc3BvcHVwPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICAgICAgICAgIGdseXBoPVwib3ZlcmZsb3dcIlxuICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICA8L2ZkLXBvcG92ZXItY29udHJvbD5cbiAgICAgICAgPGZkLXBvcG92ZXItYm9keT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmZC10b29sYmFyX19vdmVyZmxvd1wiPlxuICAgICAgICAgICAgICAgIEBmb3IgKG92ZXJmbG93ZWRJdGVtIG9mIG92ZXJmbG93bkl0ZW1zOyB0cmFjayBvdmVyZmxvd2VkSXRlbSkge1xuICAgICAgICAgICAgICAgICAgICA8ZmRrLWR5bmFtaWMtcG9ydGFsXG4gICAgICAgICAgICAgICAgICAgICAgICBbZG9tRWxlbWVudF09XCJvdmVyZmxvd2VkSXRlbS5lbGVtZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS5kaXNwbGF5XT1cIm92ZXJmbG93ZWRJdGVtLnByaW9yaXR5ID09PSAnZGlzYXBwZWFyJyA/ICdub25lJyA6ICdmbGV4J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGUuZmxleC1kaXJlY3Rpb25dPVwib3ZlcmZsb3dlZEl0ZW0ucHJpb3JpdHkgPT09ICdkaXNhcHBlYXInID8gdW5kZWZpbmVkIDogJ2NvbHVtbidcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvZmRrLWR5bmFtaWMtcG9ydGFsPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2ZkLXBvcG92ZXItYm9keT5cbiAgICA8L2ZkLXBvcG92ZXI+XG59XG4iXX0=","import { NgModule } from '@angular/core';\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\nimport { DeprecatedToolbarSizeDirective } from './deprecated-toolbar-size.directive';\nimport { ToolbarFormLabelDirective } from './toolbar-form-label.directive';\nimport { ToolbarItemDirective } from './toolbar-item.directive';\nimport { ToolbarLabelDirective } from './toolbar-label.directive';\nimport { ToolbarOverflowButtonMenuDirective } from './toolbar-overflow-button-menu.directive';\nimport { ToolbarOverflowButtonDirective } from './toolbar-overflow-button.directive';\nimport { ToolbarSeparatorComponent } from './toolbar-separator.component';\nimport { ToolbarSpacerDirective } from './toolbar-spacer.directive';\nimport { ToolbarComponent } from './toolbar.component';\nimport * as i0 from \"@angular/core\";\nconst components = [\n ToolbarComponent,\n ToolbarItemDirective,\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n ToolbarFormLabelDirective,\n ToolbarLabelDirective,\n ToolbarOverflowButtonDirective,\n ToolbarOverflowButtonMenuDirective,\n DeprecatedToolbarSizeDirective\n];\nexport class ToolbarModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarModule, imports: [ContentDensityModule, ToolbarComponent,\n ToolbarItemDirective,\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n ToolbarFormLabelDirective,\n ToolbarLabelDirective,\n ToolbarOverflowButtonDirective,\n ToolbarOverflowButtonMenuDirective,\n DeprecatedToolbarSizeDirective], exports: [ToolbarComponent,\n ToolbarItemDirective,\n ToolbarSpacerDirective,\n ToolbarSeparatorComponent,\n ToolbarFormLabelDirective,\n ToolbarLabelDirective,\n ToolbarOverflowButtonDirective,\n ToolbarOverflowButtonMenuDirective,\n DeprecatedToolbarSizeDirective, ContentDensityModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarModule, imports: [ContentDensityModule, ToolbarComponent, ContentDensityModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ToolbarModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [ContentDensityModule, ...components],\n exports: [...components, ContentDensityModule]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvdG9vbGJhci90b29sYmFyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzlGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUV2RCxNQUFNLFVBQVUsR0FBRztJQUNmLGdCQUFnQjtJQUNoQixvQkFBb0I7SUFDcEIsc0JBQXNCO0lBQ3RCLHlCQUF5QjtJQUN6Qix5QkFBeUI7SUFDekIscUJBQXFCO0lBQ3JCLDhCQUE4QjtJQUM5QixrQ0FBa0M7SUFDbEMsOEJBQThCO0NBQ2pDLENBQUM7QUFNRixNQUFNLE9BQU8sYUFBYTs4R0FBYixhQUFhOytHQUFiLGFBQWEsWUFIWixvQkFBb0IsRUFaOUIsZ0JBQWdCO1lBQ2hCLG9CQUFvQjtZQUNwQixzQkFBc0I7WUFDdEIseUJBQXlCO1lBQ3pCLHlCQUF5QjtZQUN6QixxQkFBcUI7WUFDckIsOEJBQThCO1lBQzlCLGtDQUFrQztZQUNsQyw4QkFBOEIsYUFSOUIsZ0JBQWdCO1lBQ2hCLG9CQUFvQjtZQUNwQixzQkFBc0I7WUFDdEIseUJBQXlCO1lBQ3pCLHlCQUF5QjtZQUN6QixxQkFBcUI7WUFDckIsOEJBQThCO1lBQzlCLGtDQUFrQztZQUNsQyw4QkFBOEIsRUFLTCxvQkFBb0I7K0dBRXBDLGFBQWEsWUFIWixvQkFBb0IsRUFaOUIsZ0JBQWdCLEVBYVMsb0JBQW9COzsyRkFFcEMsYUFBYTtrQkFKekIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxHQUFHLFVBQVUsQ0FBQztvQkFDOUMsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLEVBQUUsb0JBQW9CLENBQUM7aUJBQ2pEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5TW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2NvbnRlbnQtZGVuc2l0eSc7XG5pbXBvcnQgeyBEZXByZWNhdGVkVG9vbGJhclNpemVEaXJlY3RpdmUgfSBmcm9tICcuL2RlcHJlY2F0ZWQtdG9vbGJhci1zaXplLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUb29sYmFyRm9ybUxhYmVsRGlyZWN0aXZlIH0gZnJvbSAnLi90b29sYmFyLWZvcm0tbGFiZWwuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRvb2xiYXJJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi90b29sYmFyLWl0ZW0uZGlyZWN0aXZlJztcbmltcG9ydCB7IFRvb2xiYXJMYWJlbERpcmVjdGl2ZSB9IGZyb20gJy4vdG9vbGJhci1sYWJlbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVG9vbGJhck92ZXJmbG93QnV0dG9uTWVudURpcmVjdGl2ZSB9IGZyb20gJy4vdG9vbGJhci1vdmVyZmxvdy1idXR0b24tbWVudS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVG9vbGJhck92ZXJmbG93QnV0dG9uRGlyZWN0aXZlIH0gZnJvbSAnLi90b29sYmFyLW92ZXJmbG93LWJ1dHRvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVG9vbGJhclNlcGFyYXRvckNvbXBvbmVudCB9IGZyb20gJy4vdG9vbGJhci1zZXBhcmF0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IFRvb2xiYXJTcGFjZXJEaXJlY3RpdmUgfSBmcm9tICcuL3Rvb2xiYXItc3BhY2VyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi90b29sYmFyLmNvbXBvbmVudCc7XG5cbmNvbnN0IGNvbXBvbmVudHMgPSBbXG4gICAgVG9vbGJhckNvbXBvbmVudCxcbiAgICBUb29sYmFySXRlbURpcmVjdGl2ZSxcbiAgICBUb29sYmFyU3BhY2VyRGlyZWN0aXZlLFxuICAgIFRvb2xiYXJTZXBhcmF0b3JDb21wb25lbnQsXG4gICAgVG9vbGJhckZvcm1MYWJlbERpcmVjdGl2ZSxcbiAgICBUb29sYmFyTGFiZWxEaXJlY3RpdmUsXG4gICAgVG9vbGJhck92ZXJmbG93QnV0dG9uRGlyZWN0aXZlLFxuICAgIFRvb2xiYXJPdmVyZmxvd0J1dHRvbk1lbnVEaXJlY3RpdmUsXG4gICAgRGVwcmVjYXRlZFRvb2xiYXJTaXplRGlyZWN0aXZlXG5dO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb250ZW50RGVuc2l0eU1vZHVsZSwgLi4uY29tcG9uZW50c10sXG4gICAgZXhwb3J0czogWy4uLmNvbXBvbmVudHMsIENvbnRlbnREZW5zaXR5TW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBUb29sYmFyTW9kdWxlIHt9XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZGFtZW50YWwtbmd4LWNvcmUtdG9vbGJhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS90b29sYmFyL2Z1bmRhbWVudGFsLW5neC1jb3JlLXRvb2xiYXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":[],"mappings":";;;;;;;;;;;;;;;AAAO,MAAM,WAAW,CAAC;AACzB;;ACGO,MAAM,8BAA8B,SAAS,eAAe,CAAC;AACpE;AACA,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;AACpB,QAAQ,QAAQ,KAAK;AACrB,YAAY,KAAK,MAAM;AACvB,gBAAgB,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;AAClD,gBAAgB;AAChB,YAAY,KAAK,SAAS;AAC1B,gBAAgB,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC;AACrD,gBAAgB;AAChB,YAAY,KAAK,WAAW;AAC5B,gBAAgB,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC;AACvD,gBAAgB;AAChB,YAAY;AACZ,gBAAgB,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC;AACrD;AACA,IAAI;AACJ;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC;AACzC;AACA,QAAQ,IAAI,CAAC,WAAW,GAAG;AAC3B,YAAY,IAAI,EAAE,0CAA0C;AAC5D,YAAY,IAAI,EAAE,CAAC,OAAO,EAAE,iBAAiB;AAC7C,SAAS;AACT,QAAQ,IAAI,CAAC,OAAO,GAAG,CAAC,uCAAuC,CAAC;AAChE,QAAQ,IAAI,SAAS,EAAE,EAAE;AACzB,YAAY,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,2CAA2C,CAAC,CAAC;AACtF,QAAQ;AACR,IAAI;AACJ;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,QAAQ,EAAE;AACvB,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AAChM,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,8BAA8B,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE;AACzN,YAAY;AACZ,gBAAgB,OAAO,EAAE,yBAAyB;AAClD,gBAAgB,WAAW,EAAE,UAAU,CAAC,MAAM,8BAA8B;AAC5E;AACA,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;AAClD;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,UAAU,EAAE,CAAC;AACxI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB;AACA,oBAAoB,QAAQ,EAAE,kBAAkB;AAChD,oBAAoB,SAAS,EAAE;AAC/B,wBAAwB;AACxB,4BAA4B,OAAO,EAAE,yBAAyB;AAC9D,4BAA4B,WAAW,EAAE,UAAU,CAAC,MAAM,8BAA8B;AACxF;AACA,qBAAqB;AACrB,oBAAoB,UAAU,EAAE;AAChC,iBAAiB;AACjB,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC;AAC/D,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,EAAE,CAAC;;AC5DP,MAAC,UAAU,GAAG,IAAI,cAAc,CAAC,oBAAoB;;ACE1D,MAAM,oBAAoB,CAAC;AAClC,IAAI,WAAW,GAAG;AAClB;AACA,QAAQ,IAAI,CAAC,kBAAkB,GAAG,MAAM;AACxC;AACA,QAAQ,IAAI,CAAC,eAAe,GAAG,CAAC;AAChC;AACA,QAAQ,IAAI,CAAC,SAAS,GAAG,CAAC;AAC1B;AACA,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AAC7C,IAAI;AACJ;AACA,IAAI,IAAI,KAAK,GAAG;AAChB,QAAQ,OAAO,IAAI,CAAC,eAAe;AACnC,IAAI;AACJ;AACA,IAAI,IAAI,QAAQ,GAAG;AACnB,QAAQ,OAAO,IAAI,CAAC,kBAAkB;AACtC,IAAI;AACJ;AACA,IAAI,IAAI,OAAO,GAAG;AAClB,QAAQ,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa;AAC7C,IAAI;AACJ;AACA,IAAI,IAAI,QAAQ,GAAG;AACnB,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC;AACpE,IAAI;AACJ;AACA,IAAI,IAAI,KAAK,GAAG;AAChB,QAAQ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;AACvC,YAAY,OAAO,IAAI,CAAC,SAAS;AACjC,QAAQ;AACR,QAAQ,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC;AACtD,QAAQ,OAAO,IAAI,CAAC,SAAS;AAC7B,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACtL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,4DAA4D,EAAE,MAAM,EAAE,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,eAAe,EAAE,iBAAiB,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,oBAAoB,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;AAC1Z;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,CAAC;AAC9H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,QAAQ,EAAE,4DAA4D;AAC1F,oBAAoB,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,oBAAoB,CAAC,EAAE,CAAC;AAC9G,oBAAoB,UAAU,EAAE;AAChC,iBAAiB;AACjB,SAAS,CAAC,EAAE,cAAc,EAAE,EAAE,kBAAkB,EAAE,CAAC;AACnD,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,eAAe,EAAE,CAAC;AAClC,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,EAAE,CAAC;;ACjDZ,MAAM,yBAAyB,SAAS,oBAAoB,CAAC;AACpE,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AAC7L,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,yBAAyB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,yBAAyB,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,qFAAqF,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;AAC9U;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,UAAU,EAAE,CAAC;AACnI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB;AACA,oBAAoB,QAAQ,EAAE,yBAAyB;AACvD,oBAAoB,IAAI,EAAE;AAC1B,wBAAwB,KAAK,EAAE;AAC/B,qBAAqB;AACrB,oBAAoB,UAAU,EAAE;AAChC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACdN,MAAM,qBAAqB,SAAS,oBAAoB,CAAC;AAChE,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACzL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,qBAAqB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,qCAAqC,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;AACrR;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,UAAU,EAAE,CAAC;AAC/H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB;AACA,oBAAoB,QAAQ,EAAE,oBAAoB;AAClD,oBAAoB,IAAI,EAAE;AAC1B,wBAAwB,KAAK,EAAE;AAC/B,qBAAqB;AACrB,oBAAoB,UAAU,EAAE;AAChC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACdN,MAAM,kCAAkC,SAAS,oBAAoB,CAAC;AAC7E,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACtM,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,kCAAkC,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,kEAAkE,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;AAC9U;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kCAAkC,EAAE,UAAU,EAAE,CAAC;AAC5I,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,QAAQ,EAAE,kEAAkE;AAChG,oBAAoB,IAAI,EAAE;AAC1B,wBAAwB,KAAK,EAAE;AAC/B,qBAAqB;AACrB,oBAAoB,UAAU,EAAE;AAChC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACbN,MAAM,8BAA8B,SAAS,oBAAoB,CAAC;AACzE,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AAClM,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,8BAA8B,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,yDAAyD,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,6BAA6B,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;AAC3T;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,UAAU,EAAE,CAAC;AACxI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,QAAQ,EAAE,yDAAyD;AACvF,oBAAoB,IAAI,EAAE;AAC1B,wBAAwB,KAAK,EAAE;AAC/B,qBAAqB;AACrB,oBAAoB,UAAU,EAAE;AAChC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACdN,MAAM,yBAAyB,CAAC;AACvC,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AAC3L,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,yBAAyB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,uBAAuB,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC;AAClX;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,UAAU,EAAE,CAAC;AACnI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,QAAQ,EAAE,sBAAsB;AACpD,oBAAoB,QAAQ,EAAE,EAAE;AAChC,oBAAoB,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACzD,oBAAoB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AACnE,oBAAoB,IAAI,EAAE;AAC1B,wBAAwB,KAAK,EAAE;AAC/B,qBAAqB;AACrB,oBAAoB,UAAU,EAAE;AAChC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;AChBN,MAAM,sBAAsB,CAAC;AACpC,IAAI,WAAW,GAAG;AAClB;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,KAAK,GAAG,KAAK;AAC1B;AACA;AACA,QAAQ,IAAI,CAAC,KAAK,GAAG,EAAE;AACvB;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,KAAK,GAAG,KAAK;AAC1B,IAAI;AACJ;AACA,IAAI,IAAI,GAAG,GAAG;AACd,QAAQ,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,KAAK,GAAG,2BAA2B,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AAClG,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACxL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,sBAAsB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;AAC1U;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,CAAC;AAChI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB;AACA,oBAAoB,QAAQ,EAAE,mBAAmB;AACjD,oBAAoB,UAAU,EAAE;AAChC,iBAAiB;AACjB,SAAS,CAAC,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC;AACtC,gBAAgB,IAAI,EAAE,WAAW;AACjC,gBAAgB,IAAI,EAAE,CAAC,aAAa;AACpC,aAAa,EAAE;AACf,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;AACxB,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;AACxB,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;AACtB,gBAAgB,IAAI,EAAE,WAAW;AACjC,gBAAgB,IAAI,EAAE,CAAC,YAAY;AACnC,aAAa,CAAC,EAAE,EAAE,CAAC;;AC1BnB,MAAM,cAAc,GAAG,CAAC;AACxB,MAAM,iBAAiB,GAAG,EAAE;AAC5B,MAAM,oBAAoB,GAAG,EAAE;AAC/B,MAAM,gBAAgB,GAAG,QAAQ;AACjC,IAAI,cAAc,GAAG,CAAC;AACf,MAAM,gBAAgB,CAAC;AAC9B;AACA;AACA;AACA,IAAI,IAAI,cAAc,CAAC,GAAG,EAAE;AAC5B,QAAQ,IAAI,CAAC,eAAe,GAAG,GAAG;AAClC,QAAQ,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC;AACtC,IAAI;AACJ,IAAI,IAAI,cAAc,GAAG;AACzB,QAAQ,OAAO,IAAI,CAAC,eAAe;AACnC,IAAI;AACJ;AACA;AACA;AACA,IAAI,IAAI,YAAY,CAAC,KAAK,EAAE;AAC5B,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AACvC,YAAY,IAAI,CAAC,aAAa,GAAG,KAAK;AACtC,QAAQ;AACR,aAAa,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC5C,YAAY,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;AAC9E,QAAQ;AACR,IAAI;AACJ;AACA,IAAI,IAAI,cAAc,CAAC,KAAK,EAAE;AAC9B,QAAQ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;AACzC,IAAI;AACJ,IAAI,IAAI,cAAc,GAAG;AACzB,QAAQ,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK;AAC1C,IAAI;AACJ;AACA,IAAI,IAAI,aAAa,GAAG;AACxB,QAAQ,MAAM,kBAAkB,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,GAAG,oBAAoB,GAAG,iBAAiB;AACpH,QAAQ,QAAQ,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW;AACzD,aAAa,kBAAkB,GAAG,CAAC,GAAG,cAAc,GAAG,CAAC,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC,MAAM,CAAC;AAC7F,IAAI;AACJ;AACA,IAAI,WAAW,CAAC,GAAG,EAAE,uBAAuB,EAAE,WAAW,EAAE,qBAAqB,EAAE,kBAAkB,EAAE;AACtG,QAAQ,IAAI,CAAC,GAAG,GAAG,GAAG;AACtB,QAAQ,IAAI,CAAC,uBAAuB,GAAG,uBAAuB;AAC9D,QAAQ,IAAI,CAAC,WAAW,GAAG,WAAW;AACtC,QAAQ,IAAI,CAAC,qBAAqB,GAAG,qBAAqB;AAC1D,QAAQ,IAAI,CAAC,kBAAkB,GAAG,kBAAkB;AACpD;AACA;AACA;AACA,QAAQ,IAAI,CAAC,OAAO,GAAG,CAAC,iBAAiB,EAAE,cAAc,EAAE,CAAC,CAAC;AAC7D;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,MAAM,GAAG,OAAO;AAC7B;AACA;AACA;AACA,QAAQ,IAAI,CAAC,MAAM,GAAG,KAAK;AAC3B;AACA;AACA;AACA,QAAQ,IAAI,CAAC,WAAW,GAAG,KAAK;AAChC;AACA,QAAQ,IAAI,CAAC,aAAa,GAAG,KAAK;AAClC;AACA,QAAQ,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;AAC1B;AACA,QAAQ,IAAI,CAAC,KAAK,GAAG,SAAS;AAC9B;AACA,QAAQ,IAAI,CAAC,cAAc,GAAG,EAAE;AAChC;AACA,QAAQ,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC5F;AACA,QAAQ,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC,sBAAsB,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAClI;AACA,QAAQ,IAAI,CAAC,mBAAmB,GAAG,eAAe,CAAC,yBAAyB,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC3I;AACA,QAAQ,IAAI,CAAC,aAAa,GAAG,CAAC;AAC9B;AACA,QAAQ,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAC5C;AACA,QAAQ,IAAI,CAAC,gBAAgB,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC;AACzD;AACA,QAAQ,IAAI,CAAC,iBAAiB,GAAG,IAAI,eAAe,CAAC,SAAS,CAAC;AAC/D;AACA,QAAQ,IAAI,CAAC,eAAe,GAAG,KAAK;AACpC;AACA,QAAQ,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC;AACzD,QAAQ,uBAAuB,CAAC,SAAS,EAAE;AAC3C,IAAI;AACJ;AACA,IAAI,sBAAsB,GAAG;AAC7B,QAAQ,OAAO;AACf,YAAY,YAAY;AACxB,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;AACxC,YAAY,CAAC,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,GAAG,oBAAoB,GAAG,EAAE,CAAC,CAAC;AAClF,YAAY,CAAC,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,cAAc,GAAG,mBAAmB,GAAG,EAAE,CAAC,CAAC;AAC7E,YAAY,CAAC,EAAE,IAAI,CAAC,WAAW,GAAG,mBAAmB,GAAG,EAAE,CAAC,CAAC;AAC5D,YAAY,CAAC,EAAE,IAAI,CAAC,kBAAkB,GAAG,0BAA0B,GAAG,EAAE,CAAC;AACzE,SAAS;AACT,IAAI;AACJ;AACA,IAAI,eAAe,GAAG;AACtB,QAAQ,IAAI,CAAC,iBAAiB,EAAE;AAChC,QAAQ,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;AAC5C,YAAY,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC;AACjH,YAAY,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC,CAAC,YAAY,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;AACvH,YAAY,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,cAAc,KAAK;AAC/D,gBAAgB,IAAI,CAAC,cAAc,EAAE;AACrC,oBAAoB,OAAO,IAAI,CAAC,YAAY,EAAE,aAAa;AAC3D,gBAAgB;AAChB,gBAAgB,OAAO,cAAc,CAAC,UAAU,CAAC,aAAa;AAC9D,YAAY,CAAC,CAAC,CAAC;AACf,YAAY,IAAI,CAAC,eAAe;AAChC,YAAY,IAAI,CAAC;AACjB,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,CAAC,KAAK;AACpF,YAAY,IAAI,cAAc,EAAE;AAChC,gBAAgB,MAAM,8BAA8B,GAAG,IAAI,CAAC,iCAAiC,CAAC,YAAY,CAAC;AAC3G,gBAAgB,MAAM,aAAa,GAAG,EAAE;AACxC,gBAAgB,8BAA8B,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,WAAW,KAAK;AACtF,oBAAoB,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,GAAG,CAAC;AAC3D,oBAAoB,MAAM,YAAY,GAAG,WAAW,CAAC,QAAQ;AAC7D,oBAAoB,MAAM,0BAA0B,GAAG,SAAS,GAAG,aAAa,GAAG,YAAY;AAC/F,oBAAoB,MAAM,wBAAwB,GAAG,YAAY,KAAK,QAAQ,sCAAsC,IAAI,CAAC,aAAa;AACtI,oBAAoB,MAAM,uBAAuB,GAAG,YAAY,KAAK,OAAO;AAC5E,oBAAoB,IAAI,CAAC,0BAA0B,IAAI,CAAC,uBAAuB,KAAK,wBAAwB,EAAE;AAC9G,wBAAwB,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;AACvD,wBAAwB,OAAO,wBAAwB,GAAG,aAAa,GAAG,gBAAgB;AAC1F,oBAAoB;AACpB,yBAAyB;AACzB,wBAAwB,OAAO,aAAa,GAAG,SAAS;AACxD,oBAAoB;AACpB,gBAAgB,CAAC,EAAE,YAAY,EAAE,WAAW,IAAI,CAAC,CAAC;AAClD;AACA,gBAAgB,KAAK,MAAM,WAAW,IAAI,aAAa,EAAE;AACzD,oBAAoB,MAAM,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC;AACtF,oBAAoB,MAAM,2BAA2B,GAAG,IAAI,CAAC,6BAA6B,CAAC,iBAAiB,CAAC;AAC7G,oBAAoB,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK;AACnD,oBAAoB,MAAM,YAAY,GAAG,WAAW,CAAC,QAAQ;AAC7D,oBAAoB,IAAI,KAAK,KAAK,CAAC,IAAI,YAAY,KAAK,WAAW,uCAAuC;AAC1G,wBAAwB,MAAM,qBAAqB,GAAG,IAAI,CAAC,4BAA4B,CAAC,KAAK,EAAE,iBAAiB,EAAE,2BAA2B,CAAC,IAAI,EAAE;AACpJ,wBAAwB,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;AAC7D,4BAA4B,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;AACjE,gCAAgC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;AACrD,4BAA4B;AAC5B,wBAAwB,CAAC,CAAC;AAC1B,oBAAoB;AACpB,gBAAgB;AAChB,gBAAgB,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;AACjG,YAAY;AACZ,YAAY,OAAO,EAAE;AACrB,QAAQ,CAAC,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AACjD,QAAQ,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,KAAK,KAAK;AACjD,YAAY,IAAI,CAAC,cAAc,GAAG,KAAK;AACvC,YAAY,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;AACpC,QAAQ,CAAC,CAAC;AACV,QAAQ,IAAI,CAAC,sBAAsB,EAAE;AACrC,IAAI;AACJ;AACA,IAAI,kBAAkB,GAAG;AACzB,QAAQ,IAAI,CAAC,sBAAsB,EAAE;AACrC,IAAI;AACJ;AACA,IAAI,kBAAkB,GAAG;AACzB,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE;AACjC,YAAY,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC;AAC5F,YAAY,IAAI,CAAC,sBAAsB,EAAE;AACzC,QAAQ;AACR,IAAI;AACJ;AACA,IAAI,aAAa,GAAG;AACpB,QAAQ,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;AAChC,IAAI;AACJ;AACA,IAAI,sBAAsB,GAAG;AAC7B,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;AACrC,IAAI;AACJ;AACA,IAAI,iBAAiB,GAAG;AACxB;AACA;AACA,QAAQ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1H,IAAI;AACJ;AACA;AACA;AACA,IAAI,2BAA2B,CAAC,SAAS,EAAE,yBAAyB,EAAE;AACtE,QAAQ,MAAM,QAAQ,GAAG,yBAAyB;AAClD,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE;AAC5E,YAAY,OAAO,SAAS;AAC5B,QAAQ;AACR,QAAQ,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC5C,QAAQ,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,YAAY,KAAK;AAC5D,YAAY,MAAM,mBAAmB,GAAG,QAAQ,CAAC,WAAW,CAAC;AAC7D,YAAY,MAAM,oBAAoB,GAAG,QAAQ,CAAC,YAAY,CAAC;AAC/D,YAAY,IAAI,uBAAuB,CAAC,GAAG,CAAC,oBAAoB,CAAC,GAAG,uBAAuB,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE;AACtH,gBAAgB,OAAO,CAAC,YAAY;AACpC,YAAY;AACZ,YAAY,OAAO,WAAW;AAC9B,QAAQ,CAAC,EAAE,SAAS,CAAC;AACrB,IAAI;AACJ;AACA,IAAI,4BAA4B,CAAC,SAAS,EAAE,iBAAiB,EAAE,yBAAyB,EAAE;AAC1F,QAAQ,MAAM,uBAAuB,GAAG,IAAI,CAAC,2BAA2B,CAAC,SAAS,EAAE,yBAAyB,CAAC;AAC9G,QAAQ,IAAI,CAAC,iBAAiB,IAAI,CAAC,yBAAyB,EAAE;AAC9D,YAAY,OAAO,EAAE;AACrB,QAAQ;AACR,QAAQ,IAAI,aAAa,GAAG,iBAAiB,CAAC,uBAAuB,CAAC;AACtE,QAAQ,OAAO,iBAAiB,CAAC,uBAAuB,CAAC;AACzD,QAAQ,OAAO,yBAAyB,CAAC,uBAAuB,CAAC;AACjE,QAAQ,IAAI,uBAAuB,KAAK,SAAS,EAAE;AACnD,YAAY,aAAa,GAAG,CAAC,GAAG,aAAa,EAAE,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;AAC/E,YAAY,OAAO,iBAAiB,CAAC,SAAS,CAAC;AAC/C,YAAY,OAAO,yBAAyB,CAAC,SAAS,CAAC;AACvD,QAAQ;AACR,QAAQ,OAAO,aAAa;AAC5B,IAAI;AACJ;AACA,IAAI,qBAAqB,CAAC,YAAY,EAAE;AACxC,QAAQ,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK;AAClD,YAAY,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC1C,YAAY,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK;AACxC,YAAY,IAAI,QAAQ,KAAK,OAAO;AACpC,gBAAgB,QAAQ,KAAK,QAAQ;AACrC,gBAAgB,SAAS,KAAK,CAAC,EAAE;AACjC,gBAAgB,OAAO,GAAG;AAC1B,YAAY;AACZ,YAAY,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;AACjC,gBAAgB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;AACnC,YAAY;AACZ,YAAY,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AACrC,YAAY,OAAO,GAAG;AACtB,QAAQ,CAAC,EAAE,EAAE,CAAC;AACd,IAAI;AACJ;AACA,IAAI,6BAA6B,CAAC,iBAAiB,EAAE;AACrD,QAAQ,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC;AACrD,QAAQ,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,SAAS,KAAK;AACjD,YAAY,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,SAAS;AAChE,iBAAiB,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ;AACtC,iBAAiB,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,KAAK,QAAQ,sCAAsC,IAAI,KAAK,OAAO;AACzG,iBAAiB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;AAC3C,YAAY,GAAG,CAAC,SAAS,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC;AAChD,YAAY,OAAO,GAAG;AACtB,QAAQ,CAAC,EAAE,EAAE,CAAC;AACd,IAAI;AACJ;AACA,IAAI,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE;AAC1B,QAAQ,OAAO,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC;AAC9E,IAAI;AACJ;AACA,IAAI,iCAAiC,CAAC,YAAY,EAAE;AACpD,QAAQ,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;AACpF,QAAQ,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,IAAI,KAAK;AACtD,YAAY,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK;AAC5C,YAAY,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ;AAClD,YAAY,IAAI,QAAQ,KAAK,OAAO,qCAAqC,QAAQ,KAAK,QAAQ,oCAAoC;AAClI,gBAAgB,OAAO,GAAG,CAAC;AAC3B,YAAY;AACZ,YAAY,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE;AAC9B,gBAAgB,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;AAChC,YAAY;AACZ,YAAY,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AAClC,YAAY,OAAO,EAAE;AACrB,QAAQ,CAAC,EAAE,EAAE,CAAC;AACd,QAAQ,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM;AAC3C,aAAa,GAAG,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC;AACvC,aAAa,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACnC,QAAQ,OAAO;AACf,aAAa,GAAG,CAAC,CAAC,CAAC,KAAK;AACxB,YAAY,IAAI,QAAQ,GAAG,MAAM,CAAC,gBAAgB;AAClD,YAAY,IAAI,WAAW,GAAG,CAAC;AAC/B,YAAY,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE;AAC1C,gBAAgB,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC;AACzD,gBAAgB,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;AACpH,YAAY;AACZ,YAAY,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE;AAC5F,QAAQ,CAAC;AACT,aAAa,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;AAC7B,cAAc;AACd,cAAc,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM;AACvC,gBAAgB,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;AACrC,gBAAgB,WAAW,EAAE,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;AAC/E,gBAAgB,QAAQ,EAAE,IAAI,CAAC;AAC/B,aAAa,CAAC,CAAC;AACf,aAAa,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ;AACpF,aAAa,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;AACxD,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,iBAAiB,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,sBAAsB,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,qBAAqB,EAAE,EAAE,EAAE,KAAK,EAAE,yBAAyB,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AAC5X,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,gBAAgB,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE,EAAE,SAAS,EAAE;AACpmB,YAAY,+BAA+B,CAAC;AAC5C,gBAAgB,qBAAqB,EAAE,kBAAkB,CAAC;AAC1D,aAAa,CAAC;AACd,YAAY;AACZ,gBAAgB,OAAO,EAAE,UAAU;AACnC,gBAAgB,WAAW,EAAE;AAC7B;AACA,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,kBAAkB,EAAE,SAAS,EAAE,sBAAsB,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,EAAE,qBAAqB,EAAE,SAAS,EAAE,yBAAyB,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,WAAW,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,cAAc,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,q+CAAq+C,EAAE,MAAM,EAAE,CAAC,s6PAAs6P,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,yBAAyB,EAAE,QAAQ,EAAE,sBAAsB,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,uBAAuB,EAAE,QAAQ,EAAE,wCAAwC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,oBAAoB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,gBAAgB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,uBAAuB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,kDAAkD,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC;AAChpW;AACA,UAAU,CAAC;AACX,IAAI,aAAa;AACjB,IAAI,UAAU,CAAC,aAAa,EAAE,QAAQ,CAAC;AACvC,IAAI,UAAU,CAAC,mBAAmB,EAAE,EAAE,CAAC;AACvC,IAAI,UAAU,CAAC,mBAAmB,EAAE,KAAK;AACzC,CAAC,EAAE,gBAAgB,CAAC,SAAS,EAAE,wBAAwB,EAAE,IAAI,CAAC;AAC9D,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC;AAC1H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,iBAAiB,CAAC,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,SAAS,EAAE;AAChJ,wBAAwB,+BAA+B,CAAC;AACxD,4BAA4B,qBAAqB,EAAE,kBAAkB,CAAC;AACtE,yBAAyB,CAAC;AAC1B,wBAAwB;AACxB,4BAA4B,OAAO,EAAE,UAAU;AAC/C,4BAA4B,WAAW,EAAE;AACzC;AACA,qBAAqB,EAAE,OAAO,EAAE;AAChC,wBAAwB,sBAAsB;AAC9C,wBAAwB,yBAAyB;AACjD,wBAAwB,aAAa;AACrC,wBAAwB,eAAe;AACvC,wBAAwB,sBAAsB;AAC9C,wBAAwB;AACxB,qBAAqB,EAAE,QAAQ,EAAE,q+CAAq+C,EAAE,MAAM,EAAE,CAAC,s6PAAs6P,CAAC,EAAE;AAC17S,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,iBAAiB,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,sBAAsB,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,qBAAqB,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;AACrM,oBAAoB,IAAI,EAAE;AAC1B,iBAAiB,EAAE;AACnB,oBAAoB,IAAI,EAAE;AAC1B,iBAAiB,EAAE;AACnB,oBAAoB,IAAI,EAAE,MAAM;AAChC,oBAAoB,IAAI,EAAE,CAAC,yBAAyB;AACpD,iBAAiB,CAAC,EAAE,CAAC,EAAE,cAAc,EAAE,EAAE,OAAO,EAAE,CAAC;AACnD,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;AACxB,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,cAAc,EAAE,CAAC;AACjC,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;AACzB,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;AACxB,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;AACzB,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;AAC9B,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,aAAa,EAAE,CAAC;AAChC,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC;AAC3B,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;AAC/B,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,SAAS,EAAE,CAAC;AAC5B,gBAAgB,IAAI,EAAE;AACtB,aAAa,EAAE;AACf,gBAAgB,IAAI,EAAE,WAAW;AACjC,gBAAgB,IAAI,EAAE,CAAC,iBAAiB;AACxC,aAAa,CAAC,EAAE,cAAc,EAAE,CAAC;AACjC,gBAAgB,IAAI,EAAE;AACtB,aAAa,EAAE;AACf,gBAAgB,IAAI,EAAE,WAAW;AACjC,gBAAgB,IAAI,EAAE,CAAC,sBAAsB;AAC7C,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;AAC/B,gBAAgB,IAAI,EAAE,SAAS;AAC/B,gBAAgB,IAAI,EAAE,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;AAC3D,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;AAC/B,gBAAgB,IAAI,EAAE,eAAe;AACrC,gBAAgB,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,WAAW,CAAC;AACpD,aAAa,CAAC,EAAE,cAAc,EAAE,CAAC;AACjC,gBAAgB,IAAI,EAAE,YAAY;AAClC,gBAAgB,IAAI,EAAE,CAAC,UAAU;AACjC,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;AACxB,gBAAgB,IAAI,EAAE,WAAW;AACjC,gBAAgB,IAAI,EAAE,CAAC,WAAW;AAClC,aAAa,CAAC,EAAE,sBAAsB,EAAE,EAAE,EAAE,EAAE,CAAC;;AC5X/C,MAAM,UAAU,GAAG;AACnB,IAAI,gBAAgB;AACpB,IAAI,oBAAoB;AACxB,IAAI,sBAAsB;AAC1B,IAAI,yBAAyB;AAC7B,IAAI,yBAAyB;AAC7B,IAAI,qBAAqB;AACzB,IAAI,8BAA8B;AAClC,IAAI,kCAAkC;AACtC,IAAI;AACJ,CAAC;AACM,MAAM,aAAa,CAAC;AAC3B,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC9K,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,oBAAoB,EAAE,gBAAgB;AAC9K,YAAY,oBAAoB;AAChC,YAAY,sBAAsB;AAClC,YAAY,yBAAyB;AACrC,YAAY,yBAAyB;AACrC,YAAY,qBAAqB;AACjC,YAAY,8BAA8B;AAC1C,YAAY,kCAAkC;AAC9C,YAAY,8BAA8B,CAAC,EAAE,OAAO,EAAE,CAAC,gBAAgB;AACvE,YAAY,oBAAoB;AAChC,YAAY,sBAAsB;AAClC,YAAY,yBAAyB;AACrC,YAAY,yBAAyB;AACrC,YAAY,qBAAqB;AACjC,YAAY,8BAA8B;AAC1C,YAAY,kCAAkC;AAC9C,YAAY,8BAA8B,EAAE,oBAAoB,CAAC,EAAE,CAAC,CAAC;AACrE,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,oBAAoB,EAAE,gBAAgB,EAAE,oBAAoB,CAAC,EAAE,CAAC,CAAC;AACzM;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;AACvH,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,OAAO,EAAE,CAAC,oBAAoB,EAAE,GAAG,UAAU,CAAC;AAClE,oBAAoB,OAAO,EAAE,CAAC,GAAG,UAAU,EAAE,oBAAoB;AACjE,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;AClDb;AACA;AACA;;;;"}