@testgorilla/tgo-ui 3.14.13 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/donut-chart/donut-chart.component.d.ts +2 -2
- package/components/filter-button/filter-button.component.d.ts +2 -2
- package/components/icon/icon-svg-content.d.ts +1 -1
- package/components/table/table.component.d.ts +1 -1
- package/fesm2022/testgorilla-tgo-ui.mjs +731 -715
- package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
- package/package.json +17 -20
- package/projects/tgo-canopy-ui/theme/_palette.scss +2 -1
- package/utils/color-contrast.d.ts +1 -1
- package/esm2022/assets/i18n/da-dk.json +0 -820
- package/esm2022/assets/i18n/de.json +0 -820
- package/esm2022/assets/i18n/en.json +0 -827
- package/esm2022/assets/i18n/es.json +0 -820
- package/esm2022/assets/i18n/fr.json +0 -820
- package/esm2022/assets/i18n/it-it.json +0 -820
- package/esm2022/assets/i18n/ja-jp.json +0 -820
- package/esm2022/assets/i18n/nb-no.json +0 -820
- package/esm2022/assets/i18n/nl.json +0 -820
- package/esm2022/assets/i18n/pl-pl.json +0 -820
- package/esm2022/assets/i18n/pt-br.json +0 -820
- package/esm2022/assets/i18n/sv-se.json +0 -820
- package/esm2022/components/accordion/accordion.component.mjs +0 -135
- package/esm2022/components/accordion/accordion.component.module.mjs +0 -40
- package/esm2022/components/accordion/accordion.model.mjs +0 -2
- package/esm2022/components/ai-feedback/ai-feedback.component.mjs +0 -35
- package/esm2022/components/ai-feedback/ai-feedback.model.mjs +0 -2
- package/esm2022/components/ai-feedback/ai-feedback.module.mjs +0 -20
- package/esm2022/components/alert-banner/alert-banner.component.mjs +0 -198
- package/esm2022/components/alert-banner/alert-banner.component.module.mjs +0 -21
- package/esm2022/components/alert-banner/alert-banner.model.mjs +0 -2
- package/esm2022/components/autocomplete/autocomplete.component.mjs +0 -837
- package/esm2022/components/autocomplete/autocomplete.component.module.mjs +0 -77
- package/esm2022/components/autocomplete/autocomplete.model.mjs +0 -25
- package/esm2022/components/autocomplete/includes.pipe.mjs +0 -25
- package/esm2022/components/autocomplete/prevent-input.directive.mjs +0 -27
- package/esm2022/components/autocomplete/transform-Item.pipe.mjs +0 -32
- package/esm2022/components/avatar/avatar.component.mjs +0 -104
- package/esm2022/components/avatar/avatar.component.module.mjs +0 -23
- package/esm2022/components/avatar/avatar.model.mjs +0 -21
- package/esm2022/components/badge/badge.component.mjs +0 -118
- package/esm2022/components/badge/badge.component.module.mjs +0 -20
- package/esm2022/components/badge/badge.model.mjs +0 -39
- package/esm2022/components/breadcrumb/breadcrumb.component.mjs +0 -191
- package/esm2022/components/breadcrumb/breadcrumb.component.module.mjs +0 -45
- package/esm2022/components/breadcrumb/breadcrumb.model.mjs +0 -2
- package/esm2022/components/button/button.component.mjs +0 -452
- package/esm2022/components/button/button.component.module.mjs +0 -51
- package/esm2022/components/button/button.model.mjs +0 -2
- package/esm2022/components/card/card.component.mjs +0 -141
- package/esm2022/components/card/card.component.module.mjs +0 -19
- package/esm2022/components/card/card.model.mjs +0 -2
- package/esm2022/components/checkbox/checkbox.component.mjs +0 -336
- package/esm2022/components/checkbox/checkbox.component.module.mjs +0 -28
- package/esm2022/components/checkbox/focus-visible.directive.mjs +0 -40
- package/esm2022/components/checklist/checklist.component.mjs +0 -157
- package/esm2022/components/checklist/checklist.model.mjs +0 -2
- package/esm2022/components/confirm-dialog/confirm-dialog.component.mjs +0 -73
- package/esm2022/components/confirm-dialog/confirm-dialog.component.module.mjs +0 -29
- package/esm2022/components/confirm-dialog/confirm-dialog.model.mjs +0 -2
- package/esm2022/components/datepicker/date-adapter.mjs +0 -39
- package/esm2022/components/datepicker/datepicker.component.mjs +0 -353
- package/esm2022/components/datepicker/datepicker.component.module.mjs +0 -60
- package/esm2022/components/datepicker/datepicker.service.mjs +0 -20
- package/esm2022/components/datepicker/no-date-format.directive.mjs +0 -56
- package/esm2022/components/deprecated-paginator/deprecated-paginator.component.mjs +0 -55
- package/esm2022/components/deprecated-paginator/deprecated-paginator.component.module.mjs +0 -20
- package/esm2022/components/dialog/dialog.component.mjs +0 -275
- package/esm2022/components/dialog/dialog.component.module.mjs +0 -23
- package/esm2022/components/dialog/dialog.model.mjs +0 -2
- package/esm2022/components/dialog/dialog.service.mjs +0 -36
- package/esm2022/components/divider/divider.component.mjs +0 -65
- package/esm2022/components/divider/divider.component.module.mjs +0 -19
- package/esm2022/components/divider/divider.model.mjs +0 -2
- package/esm2022/components/donut-chart/donut-chart.component.mjs +0 -122
- package/esm2022/components/donut-chart/donut-chart.component.model.mjs +0 -2
- package/esm2022/components/donut-chart/donut-chart.component.module.mjs +0 -20
- package/esm2022/components/dropdown/dropdown.component.mjs +0 -378
- package/esm2022/components/dropdown/dropdown.component.module.mjs +0 -57
- package/esm2022/components/dropdown/dropdown.model.mjs +0 -2
- package/esm2022/components/elevation-shadow/elevation-shadow.component.mjs +0 -45
- package/esm2022/components/elevation-shadow/elevation-shadow.component.module.mjs +0 -18
- package/esm2022/components/elevation-shadow/elevation-shadow.constant.mjs +0 -9
- package/esm2022/components/empty-state/empty-state.component.mjs +0 -301
- package/esm2022/components/empty-state/empty-state.component.module.mjs +0 -21
- package/esm2022/components/empty-state/empty-state.model.mjs +0 -2
- package/esm2022/components/field/field.component.mjs +0 -574
- package/esm2022/components/field/field.component.module.mjs +0 -64
- package/esm2022/components/field/field.model.mjs +0 -2
- package/esm2022/components/file-upload/file-upload.component.mjs +0 -307
- package/esm2022/components/file-upload/file-upload.component.module.mjs +0 -40
- package/esm2022/components/filter-button/filter-button.component.mjs +0 -255
- package/esm2022/components/filter-button/filter-button.component.module.mjs +0 -58
- package/esm2022/components/filter-button/filter-button.model.mjs +0 -2
- package/esm2022/components/gaussian-chart/gaussian-chart.component.mjs +0 -254
- package/esm2022/components/gaussian-chart/gaussian-chart.module.mjs +0 -42
- package/esm2022/components/icon/icon-svg-content.mjs +0 -491
- package/esm2022/components/icon/icon.component.mjs +0 -178
- package/esm2022/components/icon/icon.component.module.mjs +0 -21
- package/esm2022/components/icon/icon.config.mjs +0 -780
- package/esm2022/components/icon/icon.model.mjs +0 -2
- package/esm2022/components/icon-label/icon-label.component.mjs +0 -74
- package/esm2022/components/icon-label/icon-label.component.module.mjs +0 -20
- package/esm2022/components/inline-field/inline-field.component.mjs +0 -320
- package/esm2022/components/inline-field/inline-field.component.module.mjs +0 -43
- package/esm2022/components/inline-field/inline-field.model.mjs +0 -2
- package/esm2022/components/logo/logo.component.mjs +0 -165
- package/esm2022/components/logo/logo.component.module.mjs +0 -18
- package/esm2022/components/logo/logo.model.mjs +0 -32
- package/esm2022/components/media-card/media-card.component.mjs +0 -47
- package/esm2022/components/media-dialog/media-dialog.component.mjs +0 -75
- package/esm2022/components/media-dialog/media-dialog.model.mjs +0 -2
- package/esm2022/components/multi-input/multi-input.component.mjs +0 -271
- package/esm2022/components/multi-input/multi-input.component.module.mjs +0 -58
- package/esm2022/components/multi-input/multi-input.model.mjs +0 -2
- package/esm2022/components/multi-input/required-multi-input.validator.mjs +0 -14
- package/esm2022/components/navbar/mobile-navbar-side-sheet/mobile-navbar-side-sheet.component.mjs +0 -86
- package/esm2022/components/navbar/navbar.component.mjs +0 -212
- package/esm2022/components/navbar/navbar.component.module.mjs +0 -71
- package/esm2022/components/navbar/navbar.model.mjs +0 -2
- package/esm2022/components/overflow-menu/overflow-menu.component.mjs +0 -254
- package/esm2022/components/overflow-menu/overflow-menu.component.module.mjs +0 -25
- package/esm2022/components/overflow-menu/overflow-menu.model.mjs +0 -2
- package/esm2022/components/page-header/page-header.component.mjs +0 -71
- package/esm2022/components/page-header/page-header.component.module.mjs +0 -20
- package/esm2022/components/paginator/paginator.component.mjs +0 -87
- package/esm2022/components/paginator/paginator.component.module.mjs +0 -19
- package/esm2022/components/password-criteria/password.component.mjs +0 -111
- package/esm2022/components/password-criteria/password.component.module.mjs +0 -39
- package/esm2022/components/password-strength/password-strength.component.mjs +0 -93
- package/esm2022/components/password-strength/password-strength.component.module.mjs +0 -21
- package/esm2022/components/phone-input/join-strings.pipe.mjs +0 -14
- package/esm2022/components/phone-input/phone-input.component.mjs +0 -354
- package/esm2022/components/phone-input/phone-input.component.module.mjs +0 -63
- package/esm2022/components/phone-input/phone-input.model.mjs +0 -2
- package/esm2022/components/progress-bar/progress-bar.component.mjs +0 -103
- package/esm2022/components/progress-bar/progress-bar.component.module.mjs +0 -21
- package/esm2022/components/prompt/prompt.component.mjs +0 -187
- package/esm2022/components/prompt/prompt.model.mjs +0 -2
- package/esm2022/components/prompt/prompt.module.mjs +0 -62
- package/esm2022/components/radial-progress/radial-progress.component.mjs +0 -118
- package/esm2022/components/radial-progress/radial-progress.component.module.mjs +0 -20
- package/esm2022/components/radial-progress/radial-progress.model.mjs +0 -11
- package/esm2022/components/radio-button/radio-button.component.mjs +0 -344
- package/esm2022/components/radio-button/radio-button.component.module.mjs +0 -25
- package/esm2022/components/radio-button/radio-button.model.mjs +0 -2
- package/esm2022/components/rating/half-star.pipe.mjs +0 -23
- package/esm2022/components/rating/rating.component.mjs +0 -106
- package/esm2022/components/rating/rating.component.module.mjs +0 -20
- package/esm2022/components/scale/scale.component.mjs +0 -136
- package/esm2022/components/scale/scale.component.module.mjs +0 -18
- package/esm2022/components/scale-table/scale-table.component.mjs +0 -61
- package/esm2022/components/scale-table/scale-table.model.mjs +0 -2
- package/esm2022/components/segmented-bar/segmented-bar.component.mjs +0 -111
- package/esm2022/components/segmented-bar/segmented-bar.component.module.mjs +0 -22
- package/esm2022/components/segmented-bar/segmented-bar.model.mjs +0 -2
- package/esm2022/components/segmented-button/segmented-button.component.mjs +0 -104
- package/esm2022/components/segmented-button/segmented-button.component.module.mjs +0 -21
- package/esm2022/components/segmented-button/segmented-button.model.mjs +0 -2
- package/esm2022/components/selectable-card/selectable-card.component.mjs +0 -53
- package/esm2022/components/selectable-card/selectable-card.component.module.mjs +0 -20
- package/esm2022/components/side-panel/side-panel-data-injection-token.mjs +0 -3
- package/esm2022/components/side-panel/side-panel.animations.mjs +0 -26
- package/esm2022/components/side-panel/side-panel.component.mjs +0 -55
- package/esm2022/components/side-panel/side-panel.model.mjs +0 -54
- package/esm2022/components/side-panel/side-panel.service.mjs +0 -98
- package/esm2022/components/side-sheet/side-sheet.component.mjs +0 -105
- package/esm2022/components/side-sheet/side-sheet.component.module.mjs +0 -43
- package/esm2022/components/side-sheet/side-sheet.model.mjs +0 -2
- package/esm2022/components/side-sheet/side-sheet.service.mjs +0 -31
- package/esm2022/components/skeleton/skeleton.component.mjs +0 -74
- package/esm2022/components/skeleton/skeleton.model.mjs +0 -2
- package/esm2022/components/slider/slider.component.mjs +0 -256
- package/esm2022/components/slider/slider.component.module.mjs +0 -16
- package/esm2022/components/slider/slider.model.mjs +0 -2
- package/esm2022/components/snackbar/snackbar.component.mjs +0 -235
- package/esm2022/components/snackbar/snackbar.component.module.mjs +0 -25
- package/esm2022/components/snackbar/snackbar.model.mjs +0 -2
- package/esm2022/components/snackbar/snackbar.service.mjs +0 -42
- package/esm2022/components/spider-chart/spider-chart.component.mjs +0 -443
- package/esm2022/components/spider-chart/spider-chart.model.mjs +0 -4
- package/esm2022/components/spider-chart/spider-chart.module.mjs +0 -44
- package/esm2022/components/spinner/spinner.component.mjs +0 -84
- package/esm2022/components/spinner/spinner.model.mjs +0 -2
- package/esm2022/components/spinner/spinner.module.mjs +0 -20
- package/esm2022/components/step/step.component.mjs +0 -209
- package/esm2022/components/step/step.component.module.mjs +0 -21
- package/esm2022/components/stepper/stepper.component.mjs +0 -198
- package/esm2022/components/stepper/stepper.component.module.mjs +0 -44
- package/esm2022/components/stepper/stepper.model.mjs +0 -2
- package/esm2022/components/table/sentence-case.pipe.mjs +0 -19
- package/esm2022/components/table/table.component.mjs +0 -273
- package/esm2022/components/table/table.component.module.mjs +0 -61
- package/esm2022/components/table/table.model.mjs +0 -25
- package/esm2022/components/tabs/tab.directive.mjs +0 -63
- package/esm2022/components/tabs/tabs.component.mjs +0 -219
- package/esm2022/components/tabs/tabs.component.module.mjs +0 -23
- package/esm2022/components/tabs/tabs.model.mjs +0 -2
- package/esm2022/components/tag/tag.component.mjs +0 -212
- package/esm2022/components/tag/tag.component.module.mjs +0 -24
- package/esm2022/components/tag/tag.model.mjs +0 -2
- package/esm2022/components/toggle/toggle.component.mjs +0 -190
- package/esm2022/components/toggle/toggle.component.module.mjs +0 -24
- package/esm2022/components/toggle/toggle.model.mjs +0 -2
- package/esm2022/components/tooltip/tooltip-template.directive.mjs +0 -133
- package/esm2022/components/tooltip/tooltip.component.mjs +0 -108
- package/esm2022/components/tooltip/tooltip.component.module.mjs +0 -27
- package/esm2022/components/tooltip/tooltip.model.mjs +0 -8
- package/esm2022/components/universal-skills-report/universal-skills-report.component.mjs +0 -80
- package/esm2022/components/universal-skills-report/universal-skills-report.component.module.mjs +0 -43
- package/esm2022/components/universal-skills-spider-charts/universal-skills-spider-charts.component.mjs +0 -109
- package/esm2022/components/universal-skills-spider-charts/universal-skills-spider-charts.component.module.mjs +0 -52
- package/esm2022/components/validation-error/validation-error.component.mjs +0 -55
- package/esm2022/components/validation-error/validation-error.model.mjs +0 -2
- package/esm2022/components/validation-error/validation-error.module.mjs +0 -20
- package/esm2022/directives/digits-only.directive.mjs +0 -77
- package/esm2022/directives/drag-drop.directive.mjs +0 -55
- package/esm2022/directives/dynamic-component.directive.mjs +0 -40
- package/esm2022/directives/ellipse-text.directive.mjs +0 -51
- package/esm2022/directives/select-text.directive.mjs +0 -40
- package/esm2022/directives/step-line-element.directive.mjs +0 -51
- package/esm2022/models/application-theme.model.mjs +0 -2
- package/esm2022/models/checkbox.model.mjs +0 -2
- package/esm2022/models/colors.model.mjs +0 -78
- package/esm2022/models/keyboard-events.model.mjs +0 -13
- package/esm2022/models/screen-breakpoints.model.mjs +0 -7
- package/esm2022/models/universal-skills-report.model.mjs +0 -33
- package/esm2022/pipes/data-property-getter.mjs +0 -33
- package/esm2022/pipes/has-validation-error.pipe.mjs +0 -27
- package/esm2022/pipes/memoize-func.pipe.mjs +0 -39
- package/esm2022/pipes/name-initials.pipe.mjs +0 -25
- package/esm2022/pipes/truncate.pipe.mjs +0 -34
- package/esm2022/pipes/ui-ordinal-suffix.pipe.mjs +0 -31
- package/esm2022/pipes/ui-translate.pipe.mjs +0 -81
- package/esm2022/providers/is-large-tablet.mjs +0 -11
- package/esm2022/providers/is-mobile.mjs +0 -11
- package/esm2022/public-api.mjs +0 -259
- package/esm2022/services/icons.service.mjs +0 -22
- package/esm2022/services/universal-skills.service.mjs +0 -85
- package/esm2022/testgorilla-tgo-ui.mjs +0 -5
- package/esm2022/utils/alert-bar.model.mjs +0 -2
- package/esm2022/utils/alert-bars.utils.mjs +0 -34
- package/esm2022/utils/autocomplete-utils.mjs +0 -78
- package/esm2022/utils/color-contrast.mjs +0 -131
- package/esm2022/utils/hex-to-rgb.mjs +0 -9
- package/esm2022/utils/localization/language.model.mjs +0 -16
- package/esm2022/utils/localization/language.service.mjs +0 -44
- package/esm2022/utils/table.utils.mjs +0 -25
|
@@ -1,452 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @angular-eslint/use-lifecycle-interface */
|
|
2
|
-
import { booleanAttribute, Component, EventEmitter, HostBinding, Inject, Input, Optional, Output, ViewChild, } from '@angular/core';
|
|
3
|
-
import { adjustLightness } from '../../utils/color-contrast';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/common";
|
|
6
|
-
import * as i2 from "@angular/material/button";
|
|
7
|
-
import * as i3 from "../icon/icon.component";
|
|
8
|
-
import * as i4 from "@angular/material/progress-spinner";
|
|
9
|
-
import * as i5 from "@angular/material/tooltip";
|
|
10
|
-
import * as i6 from "../badge/badge.component";
|
|
11
|
-
import * as i7 from "../../directives/ellipse-text.directive";
|
|
12
|
-
import * as i8 from "../../pipes/ui-translate.pipe";
|
|
13
|
-
export class ButtonComponent {
|
|
14
|
-
get enabled() {
|
|
15
|
-
return this.disabled ? 'none' : 'all';
|
|
16
|
-
}
|
|
17
|
-
get isDisabled() {
|
|
18
|
-
return this.disabled;
|
|
19
|
-
}
|
|
20
|
-
get compColor() {
|
|
21
|
-
return this.getCompanyColor;
|
|
22
|
-
}
|
|
23
|
-
static { this.nextAriaLabelledId = 0; }
|
|
24
|
-
get typeIncluded() {
|
|
25
|
-
return this.allowButtonTypeForPremium.includes(this.variant);
|
|
26
|
-
}
|
|
27
|
-
constructor(defaultAppTheme) {
|
|
28
|
-
this.defaultAppTheme = defaultAppTheme;
|
|
29
|
-
/**
|
|
30
|
-
* Define button height
|
|
31
|
-
*
|
|
32
|
-
* @type {ButtonSize}
|
|
33
|
-
* @memberof ButtonComponent
|
|
34
|
-
*/
|
|
35
|
-
this.size = 'big';
|
|
36
|
-
/**
|
|
37
|
-
* Background color of the button while in active state
|
|
38
|
-
*
|
|
39
|
-
* @type {ButtonColor}
|
|
40
|
-
* @memberof ButtonComponent
|
|
41
|
-
*/
|
|
42
|
-
this.variant = 'primary';
|
|
43
|
-
/**
|
|
44
|
-
* Text content to appear on the button
|
|
45
|
-
*
|
|
46
|
-
* @memberof ButtonComponent
|
|
47
|
-
*/
|
|
48
|
-
this.label = '';
|
|
49
|
-
/**
|
|
50
|
-
* Positioning of the icon (when existant)
|
|
51
|
-
*
|
|
52
|
-
* @type {ButtonIconPosition}
|
|
53
|
-
* @memberof ButtonComponent
|
|
54
|
-
*/
|
|
55
|
-
this.iconPosition = 'right';
|
|
56
|
-
/**
|
|
57
|
-
* Define if button has only icon without text
|
|
58
|
-
*
|
|
59
|
-
* @memberof ButtonComponent
|
|
60
|
-
*/
|
|
61
|
-
this.justIcon = false;
|
|
62
|
-
/**
|
|
63
|
-
* Indicator if the button should be disabled
|
|
64
|
-
*
|
|
65
|
-
* @memberof ButtonComponent
|
|
66
|
-
*/
|
|
67
|
-
this.disabled = false;
|
|
68
|
-
/**
|
|
69
|
-
* Indicator if the loading icon should be shown
|
|
70
|
-
*
|
|
71
|
-
* @memberof ButtonComponent
|
|
72
|
-
*/
|
|
73
|
-
this.loading = false;
|
|
74
|
-
/**
|
|
75
|
-
* Indicator of the button width
|
|
76
|
-
*
|
|
77
|
-
* @memberof ButtonComponent
|
|
78
|
-
*/
|
|
79
|
-
this.fullWidth = false;
|
|
80
|
-
/**
|
|
81
|
-
* @property tooltip
|
|
82
|
-
* @description The tooltip that is displayed on hover. Required for icon-button type
|
|
83
|
-
* @type {string}
|
|
84
|
-
* @memberof ButtonComponent
|
|
85
|
-
*/
|
|
86
|
-
this.tooltip = '';
|
|
87
|
-
/**
|
|
88
|
-
* @property isPremium
|
|
89
|
-
* @description The icon that is displayed for Premium button
|
|
90
|
-
* @type {boolean}
|
|
91
|
-
* @memberof ButtonComponent
|
|
92
|
-
*/
|
|
93
|
-
this.isPremium = false;
|
|
94
|
-
/**
|
|
95
|
-
* The type of the button.
|
|
96
|
-
*
|
|
97
|
-
* @type {ButtonType}
|
|
98
|
-
* @memberof ButtonComponent
|
|
99
|
-
* @default 'button'
|
|
100
|
-
*/
|
|
101
|
-
this.type = 'button';
|
|
102
|
-
/**
|
|
103
|
-
* Color of the button.
|
|
104
|
-
* Defaults to Test Gorilla primary color.
|
|
105
|
-
*
|
|
106
|
-
* @type {string}
|
|
107
|
-
* @memberof ButtonComponent
|
|
108
|
-
*/
|
|
109
|
-
this.companyColor = '';
|
|
110
|
-
/**
|
|
111
|
-
*
|
|
112
|
-
* Defines the application theme where buttons is used
|
|
113
|
-
*
|
|
114
|
-
* @type {ApplicationTheme}
|
|
115
|
-
* @memberof ButtonComponent
|
|
116
|
-
*/
|
|
117
|
-
this.applicationTheme = 'light';
|
|
118
|
-
/**
|
|
119
|
-
*
|
|
120
|
-
* Disabled button scale on click
|
|
121
|
-
*
|
|
122
|
-
* @type {boolean}
|
|
123
|
-
* @memberof ButtonComponent
|
|
124
|
-
*/
|
|
125
|
-
this.disabledScaleOnClick = false;
|
|
126
|
-
/**
|
|
127
|
-
* A string representing the ARIA requirement for accessibility.
|
|
128
|
-
* This attribute is used to indicate whether an input field is required for form submission.
|
|
129
|
-
* @type {boolean}
|
|
130
|
-
* @memberof ButtonComponent
|
|
131
|
-
*/
|
|
132
|
-
this.ariaRequired = false;
|
|
133
|
-
/**
|
|
134
|
-
* A string representing the ARIA requirement for accessibility.
|
|
135
|
-
* This attribute is used to indicate whether an input field is required for form submission.
|
|
136
|
-
* @type {string}
|
|
137
|
-
* @memberof ButtonComponent
|
|
138
|
-
*/
|
|
139
|
-
this.ariaLabelledby = '';
|
|
140
|
-
/**
|
|
141
|
-
* A string representing the ARIA requirement for accessibility.
|
|
142
|
-
* This attribute is used to indicate whether an input field is required for form submission.
|
|
143
|
-
* @type {string}
|
|
144
|
-
* @memberof ButtonComponent
|
|
145
|
-
*/
|
|
146
|
-
this.ariaDescribedby = '';
|
|
147
|
-
/**
|
|
148
|
-
* Prevents default button click behavior
|
|
149
|
-
* @type {boolean}
|
|
150
|
-
* @memberof ButtonComponent
|
|
151
|
-
*/
|
|
152
|
-
this.preventDefault = false;
|
|
153
|
-
/**
|
|
154
|
-
* Ghost variant with white background
|
|
155
|
-
* @type {boolean}
|
|
156
|
-
* @memberof ButtonComponent
|
|
157
|
-
*/
|
|
158
|
-
this.hasBackground = false;
|
|
159
|
-
/**
|
|
160
|
-
* Sets tooltip position
|
|
161
|
-
*
|
|
162
|
-
* @type {TooltipPosition}
|
|
163
|
-
* @memberof ButtonComponent
|
|
164
|
-
*/
|
|
165
|
-
this.tooltipPosition = 'below';
|
|
166
|
-
this.role = 'button';
|
|
167
|
-
this.iconFilled = false;
|
|
168
|
-
this.buttonClickEvent = new EventEmitter();
|
|
169
|
-
this.buttonHoverEvent = new EventEmitter();
|
|
170
|
-
this.hover = false;
|
|
171
|
-
this.iconButtonSize = '40';
|
|
172
|
-
this.allowButtonTypeForPremium = ['secondary', 'secondary-inverted', 'primary', 'ghost', 'outlined', 'destructive'];
|
|
173
|
-
this.coloredIcons = ['Google-in-line', 'Google', 'Google-filled'];
|
|
174
|
-
this.labelEllipsis = false;
|
|
175
|
-
this.icon = '';
|
|
176
|
-
this.ariaLabelledbyId = '';
|
|
177
|
-
if (defaultAppTheme) {
|
|
178
|
-
this.applicationTheme = defaultAppTheme;
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
ngOnInit() {
|
|
182
|
-
this.classCss = this.setCssClass();
|
|
183
|
-
this.styleCss = this.setCssStyle();
|
|
184
|
-
this.isButtonLink = this.showButtonLink();
|
|
185
|
-
this.isLabel = this.showLabel();
|
|
186
|
-
this.createAriaLabelledById();
|
|
187
|
-
}
|
|
188
|
-
ngOnChanges(changes) {
|
|
189
|
-
if (changes['disabled']) {
|
|
190
|
-
this.buttonState = 'default';
|
|
191
|
-
}
|
|
192
|
-
if (!this.applicationTheme) {
|
|
193
|
-
this.applicationTheme = 'light';
|
|
194
|
-
}
|
|
195
|
-
if (changes['type']) {
|
|
196
|
-
this.isButtonLink = this.showButtonLink();
|
|
197
|
-
}
|
|
198
|
-
if (changes['loading']) {
|
|
199
|
-
this.isLabel = this.showLabel();
|
|
200
|
-
}
|
|
201
|
-
if (changes['iconName']) {
|
|
202
|
-
this.icon = changes['iconName'].currentValue;
|
|
203
|
-
}
|
|
204
|
-
if (changes['type'] ||
|
|
205
|
-
changes['fullWidth'] ||
|
|
206
|
-
changes['iconName'] ||
|
|
207
|
-
changes['justIcon'] ||
|
|
208
|
-
changes['iconPosition'] ||
|
|
209
|
-
changes['disabled'] ||
|
|
210
|
-
changes['companyColor'] ||
|
|
211
|
-
changes['variant'] ||
|
|
212
|
-
changes['applicationTheme']) {
|
|
213
|
-
this.classCss = this.setCssClass();
|
|
214
|
-
this.styleCss = this.setCssStyle();
|
|
215
|
-
}
|
|
216
|
-
if (changes['variant']?.currentValue === 'icon-button' || (changes['variant']?.currentValue === 'menuTrigger' && this.applicationTheme !== 'classic')) {
|
|
217
|
-
this.iconButtonSize = this.setIconButtonSize();
|
|
218
|
-
}
|
|
219
|
-
this.isFilledIcon = this.applicationTheme !== 'classic' && (this.variant === 'primary' || this.variant === 'secondary' || this.variant === 'secondary-inverted');
|
|
220
|
-
}
|
|
221
|
-
ngAfterViewInit() {
|
|
222
|
-
this.tooltipElement.nativeElement.onclick = ev => {
|
|
223
|
-
ev.preventDefault();
|
|
224
|
-
ev.stopPropagation();
|
|
225
|
-
};
|
|
226
|
-
if (this.variant === 'icon-button' && !this.tooltip) {
|
|
227
|
-
console.warn('ui-button ButtonComponent\n [tooltip] is required for [type] icon-button!');
|
|
228
|
-
}
|
|
229
|
-
else if (this.variant === 'destructive' && !this.icon && !this.loading && this.applicationTheme !== 'classic') {
|
|
230
|
-
console.warn('ui-button ButtonComponent\n [icon] is required for [type] destructive');
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
buttonClick(event) {
|
|
234
|
-
if (this.preventDefault) {
|
|
235
|
-
event.preventDefault();
|
|
236
|
-
event.stopPropagation();
|
|
237
|
-
}
|
|
238
|
-
this.buttonClickEvent.emit(event);
|
|
239
|
-
}
|
|
240
|
-
buttonHover(event) {
|
|
241
|
-
if (event.type === 'mouseenter') {
|
|
242
|
-
this.hover = true;
|
|
243
|
-
this.buttonHoverEvent.emit(event);
|
|
244
|
-
this.buttonState = 'hover';
|
|
245
|
-
if (this.shouldChangeFilledStatus && this.icon) {
|
|
246
|
-
this.icon = this.getIconName(this.iconName, '-filled');
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
else {
|
|
250
|
-
this.hover = false;
|
|
251
|
-
if (this.shouldChangeFilledStatus && this.icon) {
|
|
252
|
-
this.icon = this.iconName;
|
|
253
|
-
}
|
|
254
|
-
this.buttonState = 'default';
|
|
255
|
-
}
|
|
256
|
-
this.styleCss = this.setCssStyle();
|
|
257
|
-
}
|
|
258
|
-
//Show or hide label
|
|
259
|
-
showLabel() {
|
|
260
|
-
return !this.loading;
|
|
261
|
-
}
|
|
262
|
-
//Set css class according inputs
|
|
263
|
-
setCssClass() {
|
|
264
|
-
const width = this.fullWidth ? 'full-width' : '';
|
|
265
|
-
const hasIcon = this.iconName === null ? '' : 'icon';
|
|
266
|
-
const justIcon = this.justIcon || this.variant === 'icon-button' ? 'only-icon' : '';
|
|
267
|
-
const iconPosition = this.iconPosition === undefined ? '' : this.iconPosition;
|
|
268
|
-
const disabled = this.disabled && this.variant === 'primary' ? 'primary-disabled' : '';
|
|
269
|
-
const variant = this.variant === 'ghost' && this.applicationTheme === 'classic' ? 'outlined' : this.variant;
|
|
270
|
-
const companyColor = this.companyColor ? 'has-company-color' : '';
|
|
271
|
-
return `${this.size} ${iconPosition} ${variant} ${width} ${hasIcon} ${justIcon} ${disabled} ${companyColor} ${this.applicationTheme}-theme`;
|
|
272
|
-
}
|
|
273
|
-
setCssStyle() {
|
|
274
|
-
this.buttonState = this.disabled ? 'disabled' : this.buttonState;
|
|
275
|
-
const styleObj = {};
|
|
276
|
-
if ((this.variant === 'primary' || this.variant === 'text' || this.variant === 'text-inline') && this.applicationTheme !== 'classic' && (this.buttonState === 'hover' || this.buttonState === 'pressed')) {
|
|
277
|
-
styleObj[this.variant === 'primary' ? 'background-color' : 'color'] = adjustLightness(this.getCompanyColor, this.buttonState);
|
|
278
|
-
if (this.variant === 'text' || this.variant === 'text-inline') {
|
|
279
|
-
styleObj['--active-color'] = this.companyColor ? adjustLightness(this.getCompanyColor, this.buttonState) : '#666666';
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
else if ((this.variant === 'primary' || this.variant === 'text' || this.variant === 'text-inline') && this.applicationTheme === 'classic' && this.buttonState !== 'default') {
|
|
283
|
-
styleObj[this.variant === 'primary' ? 'background-color' : 'color'] = adjustLightness(this.getCompanyColor, this.buttonState, 'classic');
|
|
284
|
-
}
|
|
285
|
-
else if (this.getCompanyColor && (this.variant === 'link' || this.variant === 'tertiary' || this.variant === 'icon-button')) {
|
|
286
|
-
styleObj['color'] = this.getCompanyColor;
|
|
287
|
-
}
|
|
288
|
-
else if (this.hasBackground) {
|
|
289
|
-
styleObj['--ghost-background'] = '#ffffff';
|
|
290
|
-
}
|
|
291
|
-
return styleObj;
|
|
292
|
-
}
|
|
293
|
-
//Show or hide spinner
|
|
294
|
-
get showSpinner() {
|
|
295
|
-
const isNotTab = this.variant !== 'tab';
|
|
296
|
-
const isNotLink = this.variant !== 'link';
|
|
297
|
-
const isLoading = this.loading === true;
|
|
298
|
-
return isLoading && isNotTab && isNotLink;
|
|
299
|
-
}
|
|
300
|
-
//Show button with <button> or <a> tag
|
|
301
|
-
showButtonLink() {
|
|
302
|
-
return this.variant !== 'link';
|
|
303
|
-
}
|
|
304
|
-
setIconButtonSize() {
|
|
305
|
-
return this.size === 'big' ? '40' : this.size === 'small' ? '24' : '32';
|
|
306
|
-
}
|
|
307
|
-
onPressed(ev) {
|
|
308
|
-
if (ev.type === 'mousedown') {
|
|
309
|
-
this.buttonState = 'pressed';
|
|
310
|
-
}
|
|
311
|
-
else {
|
|
312
|
-
this.buttonState = this.hover ? 'hover' : 'default';
|
|
313
|
-
}
|
|
314
|
-
this.styleCss = this.setCssStyle();
|
|
315
|
-
}
|
|
316
|
-
focus(origin) {
|
|
317
|
-
this.buttonElement.focus(origin);
|
|
318
|
-
}
|
|
319
|
-
get getCompanyColor() {
|
|
320
|
-
return this.companyColor || ((this.variant === 'text' || this.variant === 'text-inline') ? this.applicationTheme === 'dark' ? '#ffffff' : '#242424' : (this.applicationTheme === 'classic' ? '#46A997' : '#D410AA'));
|
|
321
|
-
}
|
|
322
|
-
get shouldChangeFilledStatus() {
|
|
323
|
-
return this.applicationTheme !== 'classic' && this.variant !== 'primary' && this.variant !== 'secondary' && !this.coloredIcons.includes(this.icon);
|
|
324
|
-
}
|
|
325
|
-
onKeydown(event) {
|
|
326
|
-
if (event.key === ' ') {
|
|
327
|
-
event.preventDefault();
|
|
328
|
-
const target = event.target;
|
|
329
|
-
target.click();
|
|
330
|
-
}
|
|
331
|
-
if (event.key === 'Enter' || event.key === ' ') {
|
|
332
|
-
this.buttonState = 'pressed';
|
|
333
|
-
this.styleCss = this.setCssStyle();
|
|
334
|
-
}
|
|
335
|
-
}
|
|
336
|
-
onKeyup(event) {
|
|
337
|
-
if (event.key === 'Enter' || event.key === ' ') {
|
|
338
|
-
this.buttonState = this.hover ? 'hover' : 'default';
|
|
339
|
-
this.styleCss = this.setCssStyle();
|
|
340
|
-
}
|
|
341
|
-
}
|
|
342
|
-
onLabelEllipsisChange(state) {
|
|
343
|
-
this.labelEllipsis = state;
|
|
344
|
-
}
|
|
345
|
-
getIconName(iconName, defaultValue) {
|
|
346
|
-
if (iconName.includes('filled')) {
|
|
347
|
-
return iconName.replace(/filled/, 'in-line');
|
|
348
|
-
}
|
|
349
|
-
else if (iconName.includes('in-line')) {
|
|
350
|
-
return iconName.replace(/in-line/, 'filled');
|
|
351
|
-
}
|
|
352
|
-
else {
|
|
353
|
-
return (iconName + defaultValue);
|
|
354
|
-
}
|
|
355
|
-
}
|
|
356
|
-
createAriaLabelledById() {
|
|
357
|
-
const labelledByValue = this.variant === 'link' ? 'labelledby-link' : 'labelledby';
|
|
358
|
-
this.ariaLabelledbyId = `${labelledByValue}-uiButton-${++ButtonComponent.nextAriaLabelledId}`;
|
|
359
|
-
}
|
|
360
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
361
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.13", type: ButtonComponent, selector: "ui-button", inputs: { size: "size", variant: "variant", label: "label", iconPosition: "iconPosition", justIcon: "justIcon", iconName: "iconName", disabled: "disabled", loading: "loading", fullWidth: "fullWidth", url: "url", urlTarget: "urlTarget", value: "value", tooltip: "tooltip", isPremium: "isPremium", type: "type", companyColor: "companyColor", buttonBadgeConfig: "buttonBadgeConfig", applicationTheme: "applicationTheme", disabledScaleOnClick: "disabledScaleOnClick", ariaLabel: "ariaLabel", ariaRequired: "ariaRequired", ariaLabelledby: "ariaLabelledby", ariaDescribedby: "ariaDescribedby", preventDefault: ["preventDefault", "preventDefault", booleanAttribute], hasBackground: ["hasBackground", "hasBackground", booleanAttribute], tooltipPosition: "tooltipPosition", role: "role", iconFilled: "iconFilled" }, outputs: { buttonClickEvent: "buttonClickEvent", buttonHoverEvent: "buttonHoverEvent" }, host: { properties: { "style.pointer-events": "this.enabled", "attr.btn-variant": "this.variant", "attr.theme": "this.applicationTheme", "style.--color": "this.compColor" } }, viewQueries: [{ propertyName: "tooltipElement", first: true, predicate: ["tooltipElement"], descendants: true }, { propertyName: "buttonElement", first: true, predicate: ["buttonElement"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div #tooltipElement class=\"tooltip\"\n [matTooltip]=\"tooltip ? tooltip : labelEllipsis ? label : ''\"\n [matTooltipClass]=\"applicationTheme\"\n></div>\n<div\n class=\"button-wrapper\"\n [ngClass]=\"{ 'full-width': fullWidth, 'rounded-icon': applicationTheme !== 'classic' && icon && !label, link: !isButtonLink }\"\n>\n <div class=\"button-container\"\n [ngClass]=\"{ 'disabled': disabled, 'button-scale': buttonState === 'pressed' && applicationTheme !== 'classic' && !disabledScaleOnClick }\"\n >\n <span *ngIf=\"isPremium && typeIncluded\" class=\"right-top\">\n <img [attr.src]=\"'/images/premium.svg'\" [alt]=\"'premium-icon'\">\n </span>\n <ui-badge\n id=\"badge\"\n *ngIf=\"buttonBadgeConfig?.badgeType\"\n [rebrandColor]=\"buttonBadgeConfig?.rebrandColor ?? 'brand'\"\n [variant]=\"buttonBadgeConfig!.badgeType!\"\n [label]=\"buttonBadgeConfig?.badgeLabel ?? ''\"\n [notificationsAmount]=\"buttonBadgeConfig?.badgeNotificationAmount ?? 0\"\n class=\"right-top\"\n [ngClass]=\"[\n buttonBadgeConfig?.badgeType === 'primary' ? 'badge-primary' : '',\n buttonBadgeConfig?.badgeType === 'notification' ? 'badge-notification' : '',\n variant\n ]\"\n ></ui-badge>\n <button\n [style]=\"'--icon-button-size:' + iconButtonSize + 'px'\"\n [ngClass]=\"classCss\"\n [ngStyle]=\"styleCss\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick($event)\"\n (mouseleave)=\"buttonHover($event)\"\n (mouseenter)=\"buttonHover($event)\"\n (mousedown)=\"onPressed($event)\"\n (mouseup)=\"onPressed($event)\"\n (keydown)=\"onKeydown($event)\"\n (keyup)=\"onKeyup($event)\"\n *ngIf=\"isButtonLink\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledbyId\"\n [attr.aria-describedby]=\"'describedby'\"\n [attr.aria-disabled]=\"disabled\"\n [type]=\"type\"\n [disableRipple]=\"applicationTheme !== 'classic'\"\n [matTooltip]=\"tooltip ? tooltip : labelEllipsis ? label : ''\"\n [matTooltipClass]=\"applicationTheme\"\n [matTooltipPosition]=\"tooltipPosition\"\n #buttonElement\n [attr.role]=\"role\"\n mat-flat-button>\n <span id=\"describedby\" [style.display]=\"'none'\">\n {{ (isPremium ? (label + ' ' + ('BUTTON.PREMIUM_FEATURE' | uiTranslate | async)) : ariaDescribedby) }}\n </span>\n <span [id]=\"ariaLabelledbyId\" [style.display]=\"'none'\">\n {{ ariaLabelledby }}\n </span>\n <ng-container *ngIf=\"showSpinner; else icons\">\n <span class=\"spinner-wrapper\">\n <mat-spinner class=\"position-spinner\" aria-label=\"loading\" mode=\"indeterminate\" diameter=\"24\"></mat-spinner>\n </span>\n </ng-container>\n <ng-template #icons>\n <span class=\"icon-only-wrapper\" *ngIf=\"justIcon && !!icon\">\n <span\n class=\"icon only\"\n role=\"label\"\n >\n <ui-icon\n [color]=\"variant === 'ghost-ai' ? 'ai' : 'inherit'\"\n [applicationTheme]=\"applicationTheme\"\n [name]=\"icon\"\n [filled]=\"isFilledIcon || iconFilled\"\n [useFullIconName]=\"this.variant === 'primary' || this.variant === 'secondary'\"\n [size]=\"size === 'small' ? '16' : '24'\"\n ></ui-icon>\n </span>\n </span>\n\n <span class=\"icon-label-wrapper\" [ngClass]=\"{'center-text': iconName === ''}\" *ngIf=\"!justIcon\">\n <span\n class=\"icon\"\n *ngIf=\"iconPosition === 'left' && !!iconName\"\n aria-hidden=\"true\"\n >\n <ui-icon\n [color]=\"variant === 'ghost-ai' ? 'ai' : 'inherit'\"\n [applicationTheme]=\"applicationTheme\"\n [name]=\"icon\"\n [filled]=\"isFilledIcon || iconFilled\"\n [useFullIconName]=\"this.variant === 'primary' || this.variant === 'secondary'\"\n [size]=\"size === 'small' ? '16' : '24'\"\n ></ui-icon>\n </span>\n <span\n *ngIf=\"isLabel\"\n class=\"label\"\n id=\"label\"\n uiEllipseText\n [isMultiline]=\"true\"\n (onChangeTextState)=\"onLabelEllipsisChange($event)\"\n >\n {{ label }}\n </span>\n <span class=\"icon\" *ngIf=\"iconPosition === 'right' && !!icon\" aria-hidden=\"true\"><ui-icon\n [color]=\"variant === 'ghost-ai' ? 'ai' : 'inherit'\"\n [applicationTheme]=\"applicationTheme\"\n [name]=\"icon\"\n [filled]=\"isFilledIcon || iconFilled\"\n [size]=\"size === 'small' ? '16' : '24'\"\n [useFullIconName]=\"this.variant === 'primary' || this.variant === 'secondary'\"></ui-icon></span>\n </span>\n </ng-template>\n </button>\n <a\n #buttonElement\n [ngClass]=\"classCss\"\n [ngStyle]=\"styleCss\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick($event)\"\n (mouseenter)=\"buttonHover($event)\"\n (mouseleave)=\"buttonHover($event)\"\n (mousedown)=\"onPressed($event)\"\n (mouseup)=\"onPressed($event)\"\n (keydown)=\"onKeydown($event);\"\n (keyup)=\"onKeyup($event)\"\n [disableRipple]=\"true\"\n *ngIf=\"!isButtonLink\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledbyId\"\n [attr.aria-describedby]=\"'describedby-link'\"\n [attr.aria-disabled]=\"disabled\"\n [matTooltip]=\"tooltip ? tooltip : labelEllipsis ? label : ''\"\n [matTooltipClass]=\"applicationTheme\"\n role=\"link\"\n [href]=\"url\"\n [target]=\"urlTarget\"\n mat-flat-button>\n <span id=\"describedby-link\" [style.display]=\"'none'\">\n {{ ariaDescribedby }}\n </span>\n <span [id]=\"ariaLabelledbyId\" [style.display]=\"'none'\">\n {{ ariaLabelledby }}\n </span>\n <span class=\"icon-label-wrapper\">\n {{ label }}\n </span>\n </a>\n </div>\n</div>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap\";.bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}::ng-deep .mat-mdc-button-persistent-ripple:before{opacity:0!important}@keyframes focus-ring-animation{0%{outline-width:4px}to{outline-width:2px}}:host{position:relative}:host ::ng-deep button.cdk-keyboard-focused:not(.text,.text-inline),:host a:focus-visible.cdk-keyboard-focused:not(.text,.text-inline){outline-color:#242424!important;outline-style:solid!important;outline-offset:2px;animation:focus-ring-animation .4s forwards}:host ::ng-deep button.icon-button.cdk-keyboard-focused,:host ::ng-deep button.menuTrigger.cdk-keyboard-focused,:host a:focus-visible.icon-button.cdk-keyboard-focused,:host a:focus-visible.menuTrigger.cdk-keyboard-focused{border:unset!important}:host a:focus-visible{border-radius:2px!important}:host .tooltip{position:absolute;top:0;left:0;width:fit-content;height:100%;pointer-events:auto}.rounded-icon button{min-width:unset}.rounded-icon .mdc-button{width:48px!important;min-width:unset}.rounded-icon .mdc-button .icon{margin:0!important}.rounded-icon .big,.rounded-icon .small{padding:0!important}:host{display:flex}:host .button-container{width:100%}:host .button-container.button-scale{transform:scale(.98)}:host .button-wrapper.full-width{width:100%}:host .button-wrapper ::ng-deep .mdc-button__label,:host .button-wrapper ::ng-deep .icon-label-wrapper{width:100%}:host .button-wrapper ::ng-deep .label{text-align:left;overflow:hidden;-webkit-line-clamp:2;display:-webkit-box!important;-webkit-box-orient:vertical;text-overflow:ellipsis;white-space:normal}:host .button-wrapper ::ng-deep button{width:100%}button.mat-mdc-unelevated-button,a.mat-mdc-unelevated-button{font-size:14px;font-weight:600;line-height:normal;letter-spacing:normal}button.mat-mdc-unelevated-button .spinner-wrapper,a.mat-mdc-unelevated-button .spinner-wrapper{display:flex;align-items:center;flex-flow:column;width:100%}button.mat-mdc-unelevated-button .icon,a.mat-mdc-unelevated-button .icon{display:flex;height:100%;align-items:center}button.mat-mdc-unelevated-button .icon.only,a.mat-mdc-unelevated-button .icon.only{align-items:center;flex-flow:column;justify-content:center;margin-left:0}button.mat-mdc-unelevated-button .icon-label-wrapper,a.mat-mdc-unelevated-button .icon-label-wrapper{display:flex;align-items:center;justify-content:center;height:100%}button.mat-mdc-unelevated-button .icon-label-wrapper.center-text,a.mat-mdc-unelevated-button .icon-label-wrapper.center-text{flex-flow:column;width:100%}button.mat-mdc-unelevated-button .icon-label-wrapper .label,a.mat-mdc-unelevated-button .icon-label-wrapper .label{display:flex;height:100%;align-items:center;text-align:center;font-weight:500}button.mat-mdc-unelevated-button.big,a.mat-mdc-unelevated-button.big{height:48px;padding:12px 24px}button.mat-mdc-unelevated-button.small,a.mat-mdc-unelevated-button.small{height:38px;padding:7px 11px}button.mat-mdc-unelevated-button.classic-theme.big,a.mat-mdc-unelevated-button.classic-theme.big{height:48px;padding:12px 16px}button.mat-mdc-unelevated-button.small.left .icon,button.mat-mdc-unelevated-button.big.left .icon,a.mat-mdc-unelevated-button.small.left .icon,a.mat-mdc-unelevated-button.big.left .icon{margin-right:8px}button.mat-mdc-unelevated-button.small.right .icon,button.mat-mdc-unelevated-button.big.right .icon,a.mat-mdc-unelevated-button.small.right .icon,a.mat-mdc-unelevated-button.big.right .icon{margin-left:8px}button.mat-mdc-unelevated-button.small.only-icon .icon,button.mat-mdc-unelevated-button.big.only-icon .icon,a.mat-mdc-unelevated-button.small.only-icon .icon,a.mat-mdc-unelevated-button.big.only-icon .icon{margin-left:0}button.mat-mdc-unelevated-button.primary,button.mat-mdc-unelevated-button.secondary,button.mat-mdc-unelevated-button.secondary-inverted,button.mat-mdc-unelevated-button.ghost,button.mat-mdc-unelevated-button.ghost-ai,button.mat-mdc-unelevated-button.outlined,button.mat-mdc-unelevated-button.destructive,button.mat-mdc-unelevated-button.tertiary,button.mat-mdc-unelevated-button.link,a.mat-mdc-unelevated-button.primary,a.mat-mdc-unelevated-button.secondary,a.mat-mdc-unelevated-button.secondary-inverted,a.mat-mdc-unelevated-button.ghost,a.mat-mdc-unelevated-button.ghost-ai,a.mat-mdc-unelevated-button.outlined,a.mat-mdc-unelevated-button.destructive,a.mat-mdc-unelevated-button.tertiary,a.mat-mdc-unelevated-button.link{min-width:80px}button.mat-mdc-unelevated-button.primary.only-icon,button.mat-mdc-unelevated-button.secondary.only-icon,button.mat-mdc-unelevated-button.secondary-inverted.only-icon,button.mat-mdc-unelevated-button.ghost.only-icon,button.mat-mdc-unelevated-button.ghost-ai.only-icon,button.mat-mdc-unelevated-button.outlined.only-icon,button.mat-mdc-unelevated-button.destructive.only-icon,button.mat-mdc-unelevated-button.tertiary.only-icon,button.mat-mdc-unelevated-button.link.only-icon,a.mat-mdc-unelevated-button.primary.only-icon,a.mat-mdc-unelevated-button.secondary.only-icon,a.mat-mdc-unelevated-button.secondary-inverted.only-icon,a.mat-mdc-unelevated-button.ghost.only-icon,a.mat-mdc-unelevated-button.ghost-ai.only-icon,a.mat-mdc-unelevated-button.outlined.only-icon,a.mat-mdc-unelevated-button.destructive.only-icon,a.mat-mdc-unelevated-button.tertiary.only-icon,a.mat-mdc-unelevated-button.link.only-icon{min-width:1px}button.mat-mdc-unelevated-button.primary.full-width,button.mat-mdc-unelevated-button.secondary.full-width,button.mat-mdc-unelevated-button.secondary-inverted.full-width,button.mat-mdc-unelevated-button.ghost.full-width,button.mat-mdc-unelevated-button.ghost-ai.full-width,button.mat-mdc-unelevated-button.outlined.full-width,button.mat-mdc-unelevated-button.destructive.full-width,button.mat-mdc-unelevated-button.tertiary.full-width,button.mat-mdc-unelevated-button.link.full-width,a.mat-mdc-unelevated-button.primary.full-width,a.mat-mdc-unelevated-button.secondary.full-width,a.mat-mdc-unelevated-button.secondary-inverted.full-width,a.mat-mdc-unelevated-button.ghost.full-width,a.mat-mdc-unelevated-button.ghost-ai.full-width,a.mat-mdc-unelevated-button.outlined.full-width,a.mat-mdc-unelevated-button.destructive.full-width,a.mat-mdc-unelevated-button.tertiary.full-width,a.mat-mdc-unelevated-button.link.full-width{width:100%;min-width:100%}button.mat-mdc-unelevated-button.primary.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.secondary.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.secondary-inverted.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.ghost.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.ghost-ai.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.outlined.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.destructive.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.tertiary.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.link.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.primary.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.secondary.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.secondary-inverted.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.ghost.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.ghost-ai.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.outlined.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.destructive.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.tertiary.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.link.full-width .icon-label-wrapper{justify-content:center}button.mat-mdc-unelevated-button.primary,a.mat-mdc-unelevated-button.primary{background-color:var(--color);color:#fff;border-radius:1000px}button.mat-mdc-unelevated-button.primary-disabled,a.mat-mdc-unelevated-button.primary-disabled{opacity:.75}button.mat-mdc-unelevated-button.primary.classic-theme,a.mat-mdc-unelevated-button.primary.classic-theme{border-radius:4px}button.mat-mdc-unelevated-button.primary.classic-theme:disabled,button.mat-mdc-unelevated-button.primary.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.primary.classic-theme:disabled,a.mat-mdc-unelevated-button.primary.classic-theme:disabled:hover{background-color:#b5ddd5}button.mat-mdc-unelevated-button.primary.light-theme:disabled,button.mat-mdc-unelevated-button.primary.light-theme:disabled:hover,a.mat-mdc-unelevated-button.primary.light-theme:disabled,a.mat-mdc-unelevated-button.primary.light-theme:disabled:hover{background-color:#e9e9e9;color:#666}button.mat-mdc-unelevated-button.primary.light-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.primary.light-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.primary.light-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.primary.light-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#666}button.mat-mdc-unelevated-button.primary.dark-theme:disabled,button.mat-mdc-unelevated-button.primary.dark-theme:disabled:hover,a.mat-mdc-unelevated-button.primary.dark-theme:disabled,a.mat-mdc-unelevated-button.primary.dark-theme:disabled:hover{background-color:#666;color:#d3d3d3}button.mat-mdc-unelevated-button.primary.dark-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.primary.dark-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.primary.dark-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.primary.dark-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#d3d3d3}button.mat-mdc-unelevated-button.primary ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.primary ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.primary .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.primary .mat-mdc-progress-spinner ::ng-deep circle{stroke:#fff}button.mat-mdc-unelevated-button.secondary,a.mat-mdc-unelevated-button.secondary{border-radius:1000px}button.mat-mdc-unelevated-button.secondary.light-theme,a.mat-mdc-unelevated-button.secondary.light-theme{background-color:#242424;color:#fff}button.mat-mdc-unelevated-button.secondary.light-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.light-theme ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.secondary.light-theme:disabled,button.mat-mdc-unelevated-button.secondary.light-theme:disabled:hover,a.mat-mdc-unelevated-button.secondary.light-theme:disabled,a.mat-mdc-unelevated-button.secondary.light-theme:disabled:hover{opacity:.75;background-color:#e9e9e9;color:#666}button.mat-mdc-unelevated-button.secondary.light-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.secondary.light-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.light-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.light-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#d3d3d3!important}button.mat-mdc-unelevated-button.secondary.dark-theme,a.mat-mdc-unelevated-button.secondary.dark-theme{background-color:#fff;color:#242424}button.mat-mdc-unelevated-button.secondary.dark-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.dark-theme ::ng-deep mat-icon.black svg{color:#242424}button.mat-mdc-unelevated-button.secondary.dark-theme:disabled,button.mat-mdc-unelevated-button.secondary.dark-theme:disabled:hover,a.mat-mdc-unelevated-button.secondary.dark-theme:disabled,a.mat-mdc-unelevated-button.secondary.dark-theme:disabled:hover{opacity:.75;background-color:#666;color:#d3d3d3}button.mat-mdc-unelevated-button.secondary.dark-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.secondary.dark-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.dark-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.dark-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#d3d3d3}button.mat-mdc-unelevated-button.secondary:hover,a.mat-mdc-unelevated-button.secondary:hover{background-color:#666;color:#fff}button.mat-mdc-unelevated-button.secondary:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary:hover ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.secondary .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.secondary .mat-mdc-progress-spinner ::ng-deep circle{stroke:#fff}button.mat-mdc-unelevated-button.secondary.classic-theme,a.mat-mdc-unelevated-button.secondary.classic-theme{border-radius:4px;background-color:#ededed;color:#000}button.mat-mdc-unelevated-button.secondary.classic-theme:hover,a.mat-mdc-unelevated-button.secondary.classic-theme:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.secondary.classic-theme:disabled,button.mat-mdc-unelevated-button.secondary.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.secondary.classic-theme:disabled,a.mat-mdc-unelevated-button.secondary.classic-theme:disabled:hover{background-color:#ededed;color:#888}button.mat-mdc-unelevated-button.secondary.classic-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.secondary.classic-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.classic-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.classic-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.secondary.classic-theme .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.secondary.classic-theme .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.secondary-inverted,a.mat-mdc-unelevated-button.secondary-inverted{border-radius:1000px}button.mat-mdc-unelevated-button.secondary-inverted.light-theme,a.mat-mdc-unelevated-button.secondary-inverted.light-theme{background-color:#fff;color:#242424;box-shadow:0 2px 16px #24242433}button.mat-mdc-unelevated-button.secondary-inverted.light-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted.light-theme ::ng-deep mat-icon.black svg{color:#242424}button.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled,button.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled:hover,a.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled,a.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled:hover{opacity:.75;background-color:#f4f4f4;color:#666;border-color:#666}button.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#666}button.mat-mdc-unelevated-button.secondary-inverted.dark-theme,a.mat-mdc-unelevated-button.secondary-inverted.dark-theme{background-color:#242424;color:#fff;box-shadow:0 2px 16px #ffffff4d}button.mat-mdc-unelevated-button.secondary-inverted.dark-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted.dark-theme ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled,button.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled:hover,a.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled,a.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled:hover{opacity:.75;background-color:#666;color:#d3d3d3;border-color:#d3d3d3}button.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#d3d3d3}button.mat-mdc-unelevated-button.secondary-inverted:hover,a.mat-mdc-unelevated-button.secondary-inverted:hover{background-color:#f4f4f4;color:#242424}button.mat-mdc-unelevated-button.secondary-inverted:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted:hover ::ng-deep mat-icon.black svg{color:#242424}button.mat-mdc-unelevated-button.secondary-inverted .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.secondary-inverted .mat-mdc-progress-spinner ::ng-deep circle{stroke:#242424}button.mat-mdc-unelevated-button.outlined,a.mat-mdc-unelevated-button.outlined{background-color:#fff;color:#000;border-width:1px;border-style:solid;border-color:#000}button.mat-mdc-unelevated-button.outlined:hover,a.mat-mdc-unelevated-button.outlined:hover{background-color:#f6f6f6}button.mat-mdc-unelevated-button.outlined:disabled,button.mat-mdc-unelevated-button.outlined:disabled:hover,a.mat-mdc-unelevated-button.outlined:disabled,a.mat-mdc-unelevated-button.outlined:disabled:hover{color:#ededed;border-color:#ededed}button.mat-mdc-unelevated-button.outlined:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.outlined:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.outlined:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.outlined:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.outlined:focus.cdk-focused,a.mat-mdc-unelevated-button.outlined:focus.cdk-focused{background-color:#e0e0e0}button.mat-mdc-unelevated-button.outlined .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.outlined .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.ghost,button.mat-mdc-unelevated-button.ghost-ai,a.mat-mdc-unelevated-button.ghost,a.mat-mdc-unelevated-button.ghost-ai{border-width:1px;border-style:solid;border-radius:1000px}button.mat-mdc-unelevated-button.ghost.light-theme,button.mat-mdc-unelevated-button.ghost-ai.light-theme,a.mat-mdc-unelevated-button.ghost.light-theme,a.mat-mdc-unelevated-button.ghost-ai.light-theme{background-color:var(--ghost-background);color:#242424;border-color:#242424}button.mat-mdc-unelevated-button.ghost.light-theme.only-icon,button.mat-mdc-unelevated-button.ghost-ai.light-theme.only-icon,a.mat-mdc-unelevated-button.ghost.light-theme.only-icon,a.mat-mdc-unelevated-button.ghost-ai.light-theme.only-icon{width:48px;height:48px;padding:0}button.mat-mdc-unelevated-button.ghost.light-theme ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.ghost-ai.light-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.ghost.light-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.ghost-ai.light-theme ::ng-deep mat-icon.black svg{color:#242424}button.mat-mdc-unelevated-button.ghost.light-theme:hover,button.mat-mdc-unelevated-button.ghost-ai.light-theme:hover,a.mat-mdc-unelevated-button.ghost.light-theme:hover,a.mat-mdc-unelevated-button.ghost-ai.light-theme:hover{background-color:#f4f4f4}button.mat-mdc-unelevated-button.ghost.dark-theme,button.mat-mdc-unelevated-button.ghost-ai.dark-theme,a.mat-mdc-unelevated-button.ghost.dark-theme,a.mat-mdc-unelevated-button.ghost-ai.dark-theme{background-color:transparent;color:#fff;border-color:#fff}button.mat-mdc-unelevated-button.ghost.dark-theme.only-icon,button.mat-mdc-unelevated-button.ghost-ai.dark-theme.only-icon,a.mat-mdc-unelevated-button.ghost.dark-theme.only-icon,a.mat-mdc-unelevated-button.ghost-ai.dark-theme.only-icon{width:48px;height:48px;padding:0}button.mat-mdc-unelevated-button.ghost.dark-theme ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.ghost-ai.dark-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.ghost.dark-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.ghost-ai.dark-theme ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.ghost.dark-theme:hover,button.mat-mdc-unelevated-button.ghost-ai.dark-theme:hover,a.mat-mdc-unelevated-button.ghost.dark-theme:hover,a.mat-mdc-unelevated-button.ghost-ai.dark-theme:hover{background-color:#666}button.mat-mdc-unelevated-button.ghost.ghost-ai,button.mat-mdc-unelevated-button.ghost-ai.ghost-ai,a.mat-mdc-unelevated-button.ghost.ghost-ai,a.mat-mdc-unelevated-button.ghost-ai.ghost-ai{background:linear-gradient(to left,#fff,#fff),linear-gradient(to right,#d410aa 25%,#0165fc);background-clip:padding-box,border-box;background-origin:padding-box,border-box;border-color:transparent}button.mat-mdc-unelevated-button.ghost.ghost-ai:hover,button.mat-mdc-unelevated-button.ghost-ai.ghost-ai:hover,a.mat-mdc-unelevated-button.ghost.ghost-ai:hover,a.mat-mdc-unelevated-button.ghost-ai.ghost-ai:hover{background:linear-gradient(to left,#e9e9e9,#e9e9e9),linear-gradient(to right,#d410aa 25%,#0165fc);background-clip:padding-box,border-box;background-origin:padding-box,border-box}button.mat-mdc-unelevated-button.ghost:disabled,button.mat-mdc-unelevated-button.ghost:disabled:hover,button.mat-mdc-unelevated-button.ghost-ai:disabled,button.mat-mdc-unelevated-button.ghost-ai:disabled:hover,a.mat-mdc-unelevated-button.ghost:disabled,a.mat-mdc-unelevated-button.ghost:disabled:hover,a.mat-mdc-unelevated-button.ghost-ai:disabled,a.mat-mdc-unelevated-button.ghost-ai:disabled:hover{opacity:.5;background-color:transparent}button.mat-mdc-unelevated-button.ghost .mat-mdc-progress-spinner ::ng-deep circle,button.mat-mdc-unelevated-button.ghost-ai .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.ghost .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.ghost-ai .mat-mdc-progress-spinner ::ng-deep circle{stroke:#242424}button.mat-mdc-unelevated-button.destructive,a.mat-mdc-unelevated-button.destructive{border:1px solid #E02800;background-color:#fff;color:#e02800;border-radius:1000px}button.mat-mdc-unelevated-button.destructive:hover,a.mat-mdc-unelevated-button.destructive:hover{background-color:#e02800;color:#fff}button.mat-mdc-unelevated-button.destructive:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.destructive:hover ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.destructive:disabled,button.mat-mdc-unelevated-button.destructive:disabled:hover,a.mat-mdc-unelevated-button.destructive:disabled,a.mat-mdc-unelevated-button.destructive:disabled:hover{border-color:#919191;color:#919191;background:transparent}button.mat-mdc-unelevated-button.destructive ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.destructive ::ng-deep mat-icon.black svg{color:#e02800}button.mat-mdc-unelevated-button.destructive .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.destructive .mat-mdc-progress-spinner ::ng-deep circle{stroke:#242424}button.mat-mdc-unelevated-button.destructive.classic-theme,a.mat-mdc-unelevated-button.destructive.classic-theme{border:unset;border-radius:4px;background-color:#cb7b7a;color:#fff}button.mat-mdc-unelevated-button.destructive.classic-theme:hover,a.mat-mdc-unelevated-button.destructive.classic-theme:hover{background-color:#8e5655}button.mat-mdc-unelevated-button.destructive.classic-theme:disabled,button.mat-mdc-unelevated-button.destructive.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.destructive.classic-theme:disabled,a.mat-mdc-unelevated-button.destructive.classic-theme:disabled:hover{background-color:#e3c3c6}button.mat-mdc-unelevated-button.destructive.classic-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.destructive.classic-theme ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.destructive.classic-theme .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.destructive.classic-theme .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.tertiary,a.mat-mdc-unelevated-button.tertiary{background-color:transparent;color:#46a997}button.mat-mdc-unelevated-button.tertiary:hover,a.mat-mdc-unelevated-button.tertiary:hover{background-color:#f6f6f6;color:#31766a}button.mat-mdc-unelevated-button.tertiary:disabled,button.mat-mdc-unelevated-button.tertiary:disabled:hover,a.mat-mdc-unelevated-button.tertiary:disabled,a.mat-mdc-unelevated-button.tertiary:disabled:hover{opacity:.75;background-color:#fff;color:#b5ddd5}button.mat-mdc-unelevated-button.tertiary:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.tertiary:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tertiary:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tertiary:disabled:hover ::ng-deep mat-icon.black svg{color:#b5ddd5}button.mat-mdc-unelevated-button.tertiary ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tertiary ::ng-deep mat-icon.black svg{color:var(--color)}button.mat-mdc-unelevated-button.tertiary .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.tertiary .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.link,a.mat-mdc-unelevated-button.link{background-color:transparent;color:#d410aa;border-radius:0}button.mat-mdc-unelevated-button.link ::ng-deep .mat-mdc-button-persistent-ripple,a.mat-mdc-unelevated-button.link ::ng-deep .mat-mdc-button-persistent-ripple{display:none}button.mat-mdc-unelevated-button.link span.icon-label-wrapper,a.mat-mdc-unelevated-button.link span.icon-label-wrapper{text-decoration:underline}button.mat-mdc-unelevated-button.link:hover,a.mat-mdc-unelevated-button.link:hover{color:#a90686!important}button.mat-mdc-unelevated-button.link:active,a.mat-mdc-unelevated-button.link:active{color:#ff54da!important}button.mat-mdc-unelevated-button.link ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.link ::ng-deep .mdc-button__label{padding:4px}button.mat-mdc-unelevated-button.link:active ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.link:active ::ng-deep .mdc-button__label{padding:4px}button.mat-mdc-unelevated-button.link:disabled,button.mat-mdc-unelevated-button.link:disabled:hover,a.mat-mdc-unelevated-button.link:disabled,a.mat-mdc-unelevated-button.link:disabled:hover{color:#d3d3d3}button.mat-mdc-unelevated-button.link ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.link ::ng-deep mat-icon.black svg{color:var(--color)}button.mat-mdc-unelevated-button.link.classic-theme,a.mat-mdc-unelevated-button.link.classic-theme{background-color:transparent;color:#46a997;border-radius:0}button.mat-mdc-unelevated-button.link.classic-theme span.icon-label-wrapper,a.mat-mdc-unelevated-button.link.classic-theme span.icon-label-wrapper{text-decoration:underline}button.mat-mdc-unelevated-button.link.classic-theme:hover,a.mat-mdc-unelevated-button.link.classic-theme:hover{color:#31766a}button.mat-mdc-unelevated-button.link.classic-theme:disabled,button.mat-mdc-unelevated-button.link.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.link.classic-theme:disabled,a.mat-mdc-unelevated-button.link.classic-theme:disabled:hover{color:#b5ddd5}button.mat-mdc-unelevated-button.link.classic-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.link.classic-theme ::ng-deep mat-icon.black svg{color:var(--color)}button.mat-mdc-unelevated-button.text,button.mat-mdc-unelevated-button.text-inline,a.mat-mdc-unelevated-button.text,a.mat-mdc-unelevated-button.text-inline{background-color:transparent;border-radius:0;text-decoration:underline}button.mat-mdc-unelevated-button.text:is(.text-inline),button.mat-mdc-unelevated-button.text-inline:is(.text-inline),a.mat-mdc-unelevated-button.text:is(.text-inline),a.mat-mdc-unelevated-button.text-inline:is(.text-inline){padding:0;height:auto}button.mat-mdc-unelevated-button.text:is(.text-inline) ::ng-deep .mdc-button__label,button.mat-mdc-unelevated-button.text-inline:is(.text-inline) ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text:is(.text-inline) ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text-inline:is(.text-inline) ::ng-deep .mdc-button__label{padding:0}button.mat-mdc-unelevated-button.text:is(.text-inline) ::ng-deep .mat-mdc-button-touch-target,button.mat-mdc-unelevated-button.text-inline:is(.text-inline) ::ng-deep .mat-mdc-button-touch-target,a.mat-mdc-unelevated-button.text:is(.text-inline) ::ng-deep .mat-mdc-button-touch-target,a.mat-mdc-unelevated-button.text-inline:is(.text-inline) ::ng-deep .mat-mdc-button-touch-target{height:100%}button.mat-mdc-unelevated-button.text:is(.text-inline).small .label,button.mat-mdc-unelevated-button.text-inline:is(.text-inline).small .label,a.mat-mdc-unelevated-button.text:is(.text-inline).small .label,a.mat-mdc-unelevated-button.text-inline:is(.text-inline).small .label{font-size:12px;line-height:16px}button.mat-mdc-unelevated-button.text:is(.text-inline).medium .label,button.mat-mdc-unelevated-button.text-inline:is(.text-inline).medium .label,a.mat-mdc-unelevated-button.text:is(.text-inline).medium .label,a.mat-mdc-unelevated-button.text-inline:is(.text-inline).medium .label{font-size:14px;line-height:22px}button.mat-mdc-unelevated-button.text:is(.text-inline).big .label,button.mat-mdc-unelevated-button.text-inline:is(.text-inline).big .label,a.mat-mdc-unelevated-button.text:is(.text-inline).big .label,a.mat-mdc-unelevated-button.text-inline:is(.text-inline).big .label{font-size:16px;line-height:24px}button.mat-mdc-unelevated-button.text.light-theme,button.mat-mdc-unelevated-button.text-inline.light-theme,a.mat-mdc-unelevated-button.text.light-theme,a.mat-mdc-unelevated-button.text-inline.light-theme{color:var(--color)}button.mat-mdc-unelevated-button.text.light-theme:active,button.mat-mdc-unelevated-button.text-inline.light-theme:active,a.mat-mdc-unelevated-button.text.light-theme:active,a.mat-mdc-unelevated-button.text-inline.light-theme:active,button.mat-mdc-unelevated-button.text.light-theme:hover,button.mat-mdc-unelevated-button.text-inline.light-theme:hover,a.mat-mdc-unelevated-button.text.light-theme:hover,a.mat-mdc-unelevated-button.text-inline.light-theme:hover{color:var(--active-color)!important}button.mat-mdc-unelevated-button.text.dark-theme,button.mat-mdc-unelevated-button.text-inline.dark-theme,a.mat-mdc-unelevated-button.text.dark-theme,a.mat-mdc-unelevated-button.text-inline.dark-theme{color:var(--color)}button.mat-mdc-unelevated-button.text.dark-theme:active,button.mat-mdc-unelevated-button.text-inline.dark-theme:active,a.mat-mdc-unelevated-button.text.dark-theme:active,a.mat-mdc-unelevated-button.text-inline.dark-theme:active{color:var(--active-color)!important}button.mat-mdc-unelevated-button.text.dark-theme:hover,button.mat-mdc-unelevated-button.text-inline.dark-theme:hover,a.mat-mdc-unelevated-button.text.dark-theme:hover,a.mat-mdc-unelevated-button.text-inline.dark-theme:hover{color:var(--active-color)}button.mat-mdc-unelevated-button.text ::ng-deep .mat-mdc-button-persistent-ripple,button.mat-mdc-unelevated-button.text-inline ::ng-deep .mat-mdc-button-persistent-ripple,a.mat-mdc-unelevated-button.text ::ng-deep .mat-mdc-button-persistent-ripple,a.mat-mdc-unelevated-button.text-inline ::ng-deep .mat-mdc-button-persistent-ripple{display:none}button.mat-mdc-unelevated-button.text span.icon-label-wrapper,button.mat-mdc-unelevated-button.text-inline span.icon-label-wrapper,a.mat-mdc-unelevated-button.text span.icon-label-wrapper,a.mat-mdc-unelevated-button.text-inline span.icon-label-wrapper{text-decoration:underline}button.mat-mdc-unelevated-button.text:disabled,button.mat-mdc-unelevated-button.text:disabled:hover,button.mat-mdc-unelevated-button.text-inline:disabled,button.mat-mdc-unelevated-button.text-inline:disabled:hover,a.mat-mdc-unelevated-button.text:disabled,a.mat-mdc-unelevated-button.text:disabled:hover,a.mat-mdc-unelevated-button.text-inline:disabled,a.mat-mdc-unelevated-button.text-inline:disabled:hover{color:#d3d3d3}button.mat-mdc-unelevated-button.text:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text:disabled:hover ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text-inline:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text-inline:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text-inline:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text-inline:disabled:hover ::ng-deep mat-icon.black svg{color:#d3d3d3}button.mat-mdc-unelevated-button.text ::ng-deep .mdc-button__label,button.mat-mdc-unelevated-button.text-inline ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text-inline ::ng-deep .mdc-button__label{padding:4px}button.mat-mdc-unelevated-button.text:focus:not(.text-inline) ::ng-deep .mdc-button__label,button.mat-mdc-unelevated-button.text-inline:focus:not(.text-inline) ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text:focus:not(.text-inline) ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text-inline:focus:not(.text-inline) ::ng-deep .mdc-button__label{padding:4px}button.mat-mdc-unelevated-button.text:focus-visible ::ng-deep .mdc-button__label,button.mat-mdc-unelevated-button.text-inline:focus-visible ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text:focus-visible ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text-inline:focus-visible ::ng-deep .mdc-button__label{border-radius:2px;outline-color:#242424!important;outline-style:solid!important;outline-offset:2px!important;animation:focus-ring-animation .4s forwards}button.mat-mdc-unelevated-button.text .mat-mdc-progress-spinner ::ng-deep circle,button.mat-mdc-unelevated-button.text-inline .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.text .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.text-inline .mat-mdc-progress-spinner ::ng-deep circle{stroke:#242424}button.mat-mdc-unelevated-button.text.classic-theme,button.mat-mdc-unelevated-button.text-inline.classic-theme,a.mat-mdc-unelevated-button.text.classic-theme,a.mat-mdc-unelevated-button.text-inline.classic-theme{background-color:transparent;color:#000;border-radius:0;text-decoration:underline}button.mat-mdc-unelevated-button.text.classic-theme span.icon-label-wrapper,button.mat-mdc-unelevated-button.text-inline.classic-theme span.icon-label-wrapper,a.mat-mdc-unelevated-button.text.classic-theme span.icon-label-wrapper,a.mat-mdc-unelevated-button.text-inline.classic-theme span.icon-label-wrapper{text-decoration:underline}button.mat-mdc-unelevated-button.text.classic-theme:hover,button.mat-mdc-unelevated-button.text-inline.classic-theme:hover,a.mat-mdc-unelevated-button.text.classic-theme:hover,a.mat-mdc-unelevated-button.text-inline.classic-theme:hover{color:#000}button.mat-mdc-unelevated-button.text.classic-theme:disabled,button.mat-mdc-unelevated-button.text.classic-theme:disabled:hover,button.mat-mdc-unelevated-button.text-inline.classic-theme:disabled,button.mat-mdc-unelevated-button.text-inline.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.text.classic-theme:disabled,a.mat-mdc-unelevated-button.text.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.text-inline.classic-theme:disabled,a.mat-mdc-unelevated-button.text-inline.classic-theme:disabled:hover{color:#888}button.mat-mdc-unelevated-button.text.classic-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text.classic-theme:disabled:hover ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text-inline.classic-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text-inline.classic-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text.classic-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text.classic-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text-inline.classic-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text-inline.classic-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.text.classic-theme:focus.cdk-focused,button.mat-mdc-unelevated-button.text-inline.classic-theme:focus.cdk-focused,a.mat-mdc-unelevated-button.text.classic-theme:focus.cdk-focused,a.mat-mdc-unelevated-button.text-inline.classic-theme:focus.cdk-focused{color:#000}button.mat-mdc-unelevated-button.text.classic-theme .mat-mdc-progress-spinner ::ng-deep circle,button.mat-mdc-unelevated-button.text-inline.classic-theme .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.text.classic-theme .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.text-inline.classic-theme .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.squareicon,a.mat-mdc-unelevated-button.squareicon{background-color:#ededed;color:#000;min-width:56px}button.mat-mdc-unelevated-button.squareicon:hover,a.mat-mdc-unelevated-button.squareicon:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.squareicon:disabled,button.mat-mdc-unelevated-button.squareicon:disabled:hover,a.mat-mdc-unelevated-button.squareicon:disabled,a.mat-mdc-unelevated-button.squareicon:disabled:hover{background-color:#ededed;color:#888}button.mat-mdc-unelevated-button.squareicon:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.squareicon:focus.cdk-focused.cdk-mouse-focused{background-color:#ededed}button.mat-mdc-unelevated-button.squareicon .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.squareicon .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.squareicon .icon-label-wrapper,a.mat-mdc-unelevated-button.squareicon .icon-label-wrapper{flex-flow:column}button.mat-mdc-unelevated-button.squareicon.left .icon,button.mat-mdc-unelevated-button.squareicon.right .icon,a.mat-mdc-unelevated-button.squareicon.left .icon,a.mat-mdc-unelevated-button.squareicon.right .icon{margin:0 auto}button.mat-mdc-unelevated-button.tab,a.mat-mdc-unelevated-button.tab{background-color:#fff;color:#000;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:#e0e0e0;border-radius:0}button.mat-mdc-unelevated-button.tab:hover .label,button.mat-mdc-unelevated-button.tab:hover .icon.only,a.mat-mdc-unelevated-button.tab:hover .label,a.mat-mdc-unelevated-button.tab:hover .icon.only{text-decoration:underline}button.mat-mdc-unelevated-button.tab:disabled,button.mat-mdc-unelevated-button.tab:disabled:hover,a.mat-mdc-unelevated-button.tab:disabled,a.mat-mdc-unelevated-button.tab:disabled:hover{color:#888}button.mat-mdc-unelevated-button.tab:disabled .label,button.mat-mdc-unelevated-button.tab:disabled:hover .label,a.mat-mdc-unelevated-button.tab:disabled .label,a.mat-mdc-unelevated-button.tab:disabled:hover .label{text-decoration:none}button.mat-mdc-unelevated-button.tab:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.tab:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tab:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tab:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.tab:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.tab:focus.cdk-focused.cdk-mouse-focused{font-weight:700;border-color:#276678}button.mat-mdc-unelevated-button.menuTrigger.classic-theme,a.mat-mdc-unelevated-button.menuTrigger.classic-theme{background:transparent;min-width:24px;height:24px;padding:0}button.mat-mdc-unelevated-button.menuTrigger.classic-theme:hover,a.mat-mdc-unelevated-button.menuTrigger.classic-theme:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.menuTrigger.classic-theme:disabled,button.mat-mdc-unelevated-button.menuTrigger.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.menuTrigger.classic-theme:disabled,a.mat-mdc-unelevated-button.menuTrigger.classic-theme:disabled:hover{background-color:#fff;color:#888}button.mat-mdc-unelevated-button.menuTrigger.classic-theme:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.menuTrigger.classic-theme:focus.cdk-focused.cdk-mouse-focused{background-color:transparent}button.mat-mdc-unelevated-button.menuTrigger.classic-theme .icon-label-wrapper,a.mat-mdc-unelevated-button.menuTrigger.classic-theme .icon-label-wrapper{flex-flow:column}button.mat-mdc-unelevated-button.menuTrigger.classic-theme.left .icon,button.mat-mdc-unelevated-button.menuTrigger.classic-theme.right .icon,a.mat-mdc-unelevated-button.menuTrigger.classic-theme.left .icon,a.mat-mdc-unelevated-button.menuTrigger.classic-theme.right .icon{margin:0 auto}button.mat-mdc-unelevated-button.menuCell,a.mat-mdc-unelevated-button.menuCell{background-color:#fff;color:#000;font-weight:400;border-radius:0;min-width:100%;justify-content:flex-start}button.mat-mdc-unelevated-button.menuCell.classic-theme.big.left .icon,a.mat-mdc-unelevated-button.menuCell.classic-theme.big.left .icon{margin-right:16px}button.mat-mdc-unelevated-button.menuCell.big.left .icon,a.mat-mdc-unelevated-button.menuCell.big.left .icon{margin-right:8px}button.mat-mdc-unelevated-button.menuCell .icon-label-wrapper,a.mat-mdc-unelevated-button.menuCell .icon-label-wrapper{justify-content:flex-start}button.mat-mdc-unelevated-button.menuCell:hover,a.mat-mdc-unelevated-button.menuCell:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.menuCell:disabled,button.mat-mdc-unelevated-button.menuCell:disabled:hover,a.mat-mdc-unelevated-button.menuCell:disabled,a.mat-mdc-unelevated-button.menuCell:disabled:hover{background-color:#fff;color:#888}button.mat-mdc-unelevated-button.menuCell:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.menuCell:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.menuCell:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.menuCell:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.menuCell .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.menuCell .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}.button-wrapper{position:relative;height:fit-content}.button-wrapper .menuTrigger:not(.classic-theme),.button-wrapper .icon-button{border:none;border-radius:100%;width:var(--icon-button-size)!important;height:var(--icon-button-size)!important;cursor:pointer;background-color:unset}::ng-deep .button-wrapper .menuTrigger:not(.classic-theme).mat-mdc-unelevated-button:not(:disabled),::ng-deep .button-wrapper .icon-button.mat-mdc-unelevated-button:not(:disabled){background-color:unset}::ng-deep .button-wrapper .menuTrigger:not(.classic-theme).mdc-button,::ng-deep .button-wrapper .icon-button.mdc-button{min-width:var(--icon-button-size)!important}.button-wrapper .menuTrigger:not(.classic-theme) ::ng-deep .mat-mdc-button-touch-target,.button-wrapper .icon-button ::ng-deep .mat-mdc-button-touch-target{height:var(--icon-button-size)!important}.button-wrapper .menuTrigger:not(.classic-theme):disabled,.button-wrapper .icon-button:disabled{pointer-events:none;background:unset}.button-wrapper .menuTrigger:not(.classic-theme):disabled.classic-theme ::ng-deep mat-icon svg,.button-wrapper .icon-button:disabled.classic-theme ::ng-deep mat-icon svg{color:#888}.button-wrapper .menuTrigger:not(.classic-theme):hover,.button-wrapper .icon-button:hover{background-color:#f6f6f6}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).light-theme:disabled,.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).light-theme:disabled:hover ::ng-deep mat-icon svg,.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).dark-theme:disabled,.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).dark-theme:disabled:hover ::ng-deep mat-icon svg,.button-wrapper .icon-button:not(.has-company-color).light-theme:disabled,.button-wrapper .icon-button:not(.has-company-color).light-theme:disabled:hover ::ng-deep mat-icon svg,.button-wrapper .icon-button:not(.has-company-color).dark-theme:disabled,.button-wrapper .icon-button:not(.has-company-color).dark-theme:disabled:hover ::ng-deep mat-icon svg{color:#919191!important}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).light-theme,.button-wrapper .icon-button:not(.has-company-color).light-theme{color:#242424!important}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).light-theme:hover,.button-wrapper .icon-button:not(.has-company-color).light-theme:hover{background-color:#e9e9e9}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).light-theme:focus.cdk-focused,.button-wrapper .icon-button:not(.has-company-color).light-theme:focus.cdk-focused{border-color:#666}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).dark-theme,.button-wrapper .icon-button:not(.has-company-color).dark-theme{color:#fff!important}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).dark-theme:hover,.button-wrapper .icon-button:not(.has-company-color).dark-theme:hover{background-color:#666}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).dark-theme:focus.cdk-focused,.button-wrapper .icon-button:not(.has-company-color).dark-theme:focus.cdk-focused{border-color:#e9e9e9}.button-wrapper .menuTrigger:focus.cdk-focused.cdk-mouse-focused.light-theme{border:none;background-color:#e9e9e9;color:#242424}.button-wrapper .menuTrigger:focus.cdk-focused.cdk-mouse-focused.dark-theme{border:none;background-color:#666;color:#fff}.button-wrapper .right-top{position:absolute;right:-8px;top:-8px;z-index:1}.button-wrapper .right-top.badge-notification{top:-4px;right:0;border:1px solid #ffffff;border-radius:100%}.button-wrapper .right-top.badge-primary{right:-4px}.button-wrapper .right-top.menuCell{top:12px;right:12px}::ng-deep .mat-mdc-tooltip{background-color:#a9c2c9;font-family:Open Sans,serif;font-weight:400;font-size:12px;border-radius:4px;overflow:visible;max-width:248px;padding:6px 2px;--mdc-plain-tooltip-container-color: none;--mdc-plain-tooltip-supporting-text-color: $tgo-black}:host[btn-variant=link]{display:inline-flex}::ng-deep .link .button-container{display:flex}::ng-deep .link a.mat-mdc-unelevated-button.link{height:unset!important;min-width:unset!important;border-radius:10px}::ng-deep .link a.mat-mdc-unelevated-button.link:active .mdc-button__label{padding:0!important;outline:none!important}::ng-deep .link a.mat-mdc-unelevated-button{padding:0!important}::ng-deep .link a.mat-mdc-unelevated-button .mdc-button__label{padding:0!important}::ng-deep .link a.mat-mdc-unelevated-button.big,::ng-deep .link a.mat-mdc-unelevated-button.small{padding:0!important}::ng-deep .link a.mat-mdc-unelevated-button.big .mdc-button__label,::ng-deep .link a.mat-mdc-unelevated-button.small .mdc-button__label{padding:0!important}::ng-deep .link a.mat-mdc-unelevated-button.big .mdc-button__label .icon-label-wrapper{font-size:16px!important;line-height:24px!important}::ng-deep .link a.mat-mdc-unelevated-button.small .mdc-button__label .icon-label-wrapper{font-size:12px!important;line-height:16px!important}::ng-deep .link a.mat-mdc-unelevated-button .mat-mdc-button-touch-target{height:unset!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "toggleIconStyle", "applicationTheme", "useFullIconName"] }, { kind: "component", type: i4.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i6.BadgeComponent, selector: "ui-badge", inputs: ["label", "icon", "color", "variant", "notificationsAmount", "applicationTheme", "rebrandColor", "truncateLabel", "enableAnimation"] }, { kind: "directive", type: i7.EllipseTextDirective, selector: "[uiEllipseText]", inputs: ["isMultiline", "maxDiffPixels", "refresh"], outputs: ["onChangeTextState"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.UiTranslatePipe, name: "uiTranslate" }] }); }
|
|
362
|
-
}
|
|
363
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
364
|
-
type: Component,
|
|
365
|
-
args: [{ selector: 'ui-button', template: "<div #tooltipElement class=\"tooltip\"\n [matTooltip]=\"tooltip ? tooltip : labelEllipsis ? label : ''\"\n [matTooltipClass]=\"applicationTheme\"\n></div>\n<div\n class=\"button-wrapper\"\n [ngClass]=\"{ 'full-width': fullWidth, 'rounded-icon': applicationTheme !== 'classic' && icon && !label, link: !isButtonLink }\"\n>\n <div class=\"button-container\"\n [ngClass]=\"{ 'disabled': disabled, 'button-scale': buttonState === 'pressed' && applicationTheme !== 'classic' && !disabledScaleOnClick }\"\n >\n <span *ngIf=\"isPremium && typeIncluded\" class=\"right-top\">\n <img [attr.src]=\"'/images/premium.svg'\" [alt]=\"'premium-icon'\">\n </span>\n <ui-badge\n id=\"badge\"\n *ngIf=\"buttonBadgeConfig?.badgeType\"\n [rebrandColor]=\"buttonBadgeConfig?.rebrandColor ?? 'brand'\"\n [variant]=\"buttonBadgeConfig!.badgeType!\"\n [label]=\"buttonBadgeConfig?.badgeLabel ?? ''\"\n [notificationsAmount]=\"buttonBadgeConfig?.badgeNotificationAmount ?? 0\"\n class=\"right-top\"\n [ngClass]=\"[\n buttonBadgeConfig?.badgeType === 'primary' ? 'badge-primary' : '',\n buttonBadgeConfig?.badgeType === 'notification' ? 'badge-notification' : '',\n variant\n ]\"\n ></ui-badge>\n <button\n [style]=\"'--icon-button-size:' + iconButtonSize + 'px'\"\n [ngClass]=\"classCss\"\n [ngStyle]=\"styleCss\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick($event)\"\n (mouseleave)=\"buttonHover($event)\"\n (mouseenter)=\"buttonHover($event)\"\n (mousedown)=\"onPressed($event)\"\n (mouseup)=\"onPressed($event)\"\n (keydown)=\"onKeydown($event)\"\n (keyup)=\"onKeyup($event)\"\n *ngIf=\"isButtonLink\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledbyId\"\n [attr.aria-describedby]=\"'describedby'\"\n [attr.aria-disabled]=\"disabled\"\n [type]=\"type\"\n [disableRipple]=\"applicationTheme !== 'classic'\"\n [matTooltip]=\"tooltip ? tooltip : labelEllipsis ? label : ''\"\n [matTooltipClass]=\"applicationTheme\"\n [matTooltipPosition]=\"tooltipPosition\"\n #buttonElement\n [attr.role]=\"role\"\n mat-flat-button>\n <span id=\"describedby\" [style.display]=\"'none'\">\n {{ (isPremium ? (label + ' ' + ('BUTTON.PREMIUM_FEATURE' | uiTranslate | async)) : ariaDescribedby) }}\n </span>\n <span [id]=\"ariaLabelledbyId\" [style.display]=\"'none'\">\n {{ ariaLabelledby }}\n </span>\n <ng-container *ngIf=\"showSpinner; else icons\">\n <span class=\"spinner-wrapper\">\n <mat-spinner class=\"position-spinner\" aria-label=\"loading\" mode=\"indeterminate\" diameter=\"24\"></mat-spinner>\n </span>\n </ng-container>\n <ng-template #icons>\n <span class=\"icon-only-wrapper\" *ngIf=\"justIcon && !!icon\">\n <span\n class=\"icon only\"\n role=\"label\"\n >\n <ui-icon\n [color]=\"variant === 'ghost-ai' ? 'ai' : 'inherit'\"\n [applicationTheme]=\"applicationTheme\"\n [name]=\"icon\"\n [filled]=\"isFilledIcon || iconFilled\"\n [useFullIconName]=\"this.variant === 'primary' || this.variant === 'secondary'\"\n [size]=\"size === 'small' ? '16' : '24'\"\n ></ui-icon>\n </span>\n </span>\n\n <span class=\"icon-label-wrapper\" [ngClass]=\"{'center-text': iconName === ''}\" *ngIf=\"!justIcon\">\n <span\n class=\"icon\"\n *ngIf=\"iconPosition === 'left' && !!iconName\"\n aria-hidden=\"true\"\n >\n <ui-icon\n [color]=\"variant === 'ghost-ai' ? 'ai' : 'inherit'\"\n [applicationTheme]=\"applicationTheme\"\n [name]=\"icon\"\n [filled]=\"isFilledIcon || iconFilled\"\n [useFullIconName]=\"this.variant === 'primary' || this.variant === 'secondary'\"\n [size]=\"size === 'small' ? '16' : '24'\"\n ></ui-icon>\n </span>\n <span\n *ngIf=\"isLabel\"\n class=\"label\"\n id=\"label\"\n uiEllipseText\n [isMultiline]=\"true\"\n (onChangeTextState)=\"onLabelEllipsisChange($event)\"\n >\n {{ label }}\n </span>\n <span class=\"icon\" *ngIf=\"iconPosition === 'right' && !!icon\" aria-hidden=\"true\"><ui-icon\n [color]=\"variant === 'ghost-ai' ? 'ai' : 'inherit'\"\n [applicationTheme]=\"applicationTheme\"\n [name]=\"icon\"\n [filled]=\"isFilledIcon || iconFilled\"\n [size]=\"size === 'small' ? '16' : '24'\"\n [useFullIconName]=\"this.variant === 'primary' || this.variant === 'secondary'\"></ui-icon></span>\n </span>\n </ng-template>\n </button>\n <a\n #buttonElement\n [ngClass]=\"classCss\"\n [ngStyle]=\"styleCss\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick($event)\"\n (mouseenter)=\"buttonHover($event)\"\n (mouseleave)=\"buttonHover($event)\"\n (mousedown)=\"onPressed($event)\"\n (mouseup)=\"onPressed($event)\"\n (keydown)=\"onKeydown($event);\"\n (keyup)=\"onKeyup($event)\"\n [disableRipple]=\"true\"\n *ngIf=\"!isButtonLink\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledbyId\"\n [attr.aria-describedby]=\"'describedby-link'\"\n [attr.aria-disabled]=\"disabled\"\n [matTooltip]=\"tooltip ? tooltip : labelEllipsis ? label : ''\"\n [matTooltipClass]=\"applicationTheme\"\n role=\"link\"\n [href]=\"url\"\n [target]=\"urlTarget\"\n mat-flat-button>\n <span id=\"describedby-link\" [style.display]=\"'none'\">\n {{ ariaDescribedby }}\n </span>\n <span [id]=\"ariaLabelledbyId\" [style.display]=\"'none'\">\n {{ ariaLabelledby }}\n </span>\n <span class=\"icon-label-wrapper\">\n {{ label }}\n </span>\n </a>\n </div>\n</div>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap\";.bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}::ng-deep .mat-mdc-button-persistent-ripple:before{opacity:0!important}@keyframes focus-ring-animation{0%{outline-width:4px}to{outline-width:2px}}:host{position:relative}:host ::ng-deep button.cdk-keyboard-focused:not(.text,.text-inline),:host a:focus-visible.cdk-keyboard-focused:not(.text,.text-inline){outline-color:#242424!important;outline-style:solid!important;outline-offset:2px;animation:focus-ring-animation .4s forwards}:host ::ng-deep button.icon-button.cdk-keyboard-focused,:host ::ng-deep button.menuTrigger.cdk-keyboard-focused,:host a:focus-visible.icon-button.cdk-keyboard-focused,:host a:focus-visible.menuTrigger.cdk-keyboard-focused{border:unset!important}:host a:focus-visible{border-radius:2px!important}:host .tooltip{position:absolute;top:0;left:0;width:fit-content;height:100%;pointer-events:auto}.rounded-icon button{min-width:unset}.rounded-icon .mdc-button{width:48px!important;min-width:unset}.rounded-icon .mdc-button .icon{margin:0!important}.rounded-icon .big,.rounded-icon .small{padding:0!important}:host{display:flex}:host .button-container{width:100%}:host .button-container.button-scale{transform:scale(.98)}:host .button-wrapper.full-width{width:100%}:host .button-wrapper ::ng-deep .mdc-button__label,:host .button-wrapper ::ng-deep .icon-label-wrapper{width:100%}:host .button-wrapper ::ng-deep .label{text-align:left;overflow:hidden;-webkit-line-clamp:2;display:-webkit-box!important;-webkit-box-orient:vertical;text-overflow:ellipsis;white-space:normal}:host .button-wrapper ::ng-deep button{width:100%}button.mat-mdc-unelevated-button,a.mat-mdc-unelevated-button{font-size:14px;font-weight:600;line-height:normal;letter-spacing:normal}button.mat-mdc-unelevated-button .spinner-wrapper,a.mat-mdc-unelevated-button .spinner-wrapper{display:flex;align-items:center;flex-flow:column;width:100%}button.mat-mdc-unelevated-button .icon,a.mat-mdc-unelevated-button .icon{display:flex;height:100%;align-items:center}button.mat-mdc-unelevated-button .icon.only,a.mat-mdc-unelevated-button .icon.only{align-items:center;flex-flow:column;justify-content:center;margin-left:0}button.mat-mdc-unelevated-button .icon-label-wrapper,a.mat-mdc-unelevated-button .icon-label-wrapper{display:flex;align-items:center;justify-content:center;height:100%}button.mat-mdc-unelevated-button .icon-label-wrapper.center-text,a.mat-mdc-unelevated-button .icon-label-wrapper.center-text{flex-flow:column;width:100%}button.mat-mdc-unelevated-button .icon-label-wrapper .label,a.mat-mdc-unelevated-button .icon-label-wrapper .label{display:flex;height:100%;align-items:center;text-align:center;font-weight:500}button.mat-mdc-unelevated-button.big,a.mat-mdc-unelevated-button.big{height:48px;padding:12px 24px}button.mat-mdc-unelevated-button.small,a.mat-mdc-unelevated-button.small{height:38px;padding:7px 11px}button.mat-mdc-unelevated-button.classic-theme.big,a.mat-mdc-unelevated-button.classic-theme.big{height:48px;padding:12px 16px}button.mat-mdc-unelevated-button.small.left .icon,button.mat-mdc-unelevated-button.big.left .icon,a.mat-mdc-unelevated-button.small.left .icon,a.mat-mdc-unelevated-button.big.left .icon{margin-right:8px}button.mat-mdc-unelevated-button.small.right .icon,button.mat-mdc-unelevated-button.big.right .icon,a.mat-mdc-unelevated-button.small.right .icon,a.mat-mdc-unelevated-button.big.right .icon{margin-left:8px}button.mat-mdc-unelevated-button.small.only-icon .icon,button.mat-mdc-unelevated-button.big.only-icon .icon,a.mat-mdc-unelevated-button.small.only-icon .icon,a.mat-mdc-unelevated-button.big.only-icon .icon{margin-left:0}button.mat-mdc-unelevated-button.primary,button.mat-mdc-unelevated-button.secondary,button.mat-mdc-unelevated-button.secondary-inverted,button.mat-mdc-unelevated-button.ghost,button.mat-mdc-unelevated-button.ghost-ai,button.mat-mdc-unelevated-button.outlined,button.mat-mdc-unelevated-button.destructive,button.mat-mdc-unelevated-button.tertiary,button.mat-mdc-unelevated-button.link,a.mat-mdc-unelevated-button.primary,a.mat-mdc-unelevated-button.secondary,a.mat-mdc-unelevated-button.secondary-inverted,a.mat-mdc-unelevated-button.ghost,a.mat-mdc-unelevated-button.ghost-ai,a.mat-mdc-unelevated-button.outlined,a.mat-mdc-unelevated-button.destructive,a.mat-mdc-unelevated-button.tertiary,a.mat-mdc-unelevated-button.link{min-width:80px}button.mat-mdc-unelevated-button.primary.only-icon,button.mat-mdc-unelevated-button.secondary.only-icon,button.mat-mdc-unelevated-button.secondary-inverted.only-icon,button.mat-mdc-unelevated-button.ghost.only-icon,button.mat-mdc-unelevated-button.ghost-ai.only-icon,button.mat-mdc-unelevated-button.outlined.only-icon,button.mat-mdc-unelevated-button.destructive.only-icon,button.mat-mdc-unelevated-button.tertiary.only-icon,button.mat-mdc-unelevated-button.link.only-icon,a.mat-mdc-unelevated-button.primary.only-icon,a.mat-mdc-unelevated-button.secondary.only-icon,a.mat-mdc-unelevated-button.secondary-inverted.only-icon,a.mat-mdc-unelevated-button.ghost.only-icon,a.mat-mdc-unelevated-button.ghost-ai.only-icon,a.mat-mdc-unelevated-button.outlined.only-icon,a.mat-mdc-unelevated-button.destructive.only-icon,a.mat-mdc-unelevated-button.tertiary.only-icon,a.mat-mdc-unelevated-button.link.only-icon{min-width:1px}button.mat-mdc-unelevated-button.primary.full-width,button.mat-mdc-unelevated-button.secondary.full-width,button.mat-mdc-unelevated-button.secondary-inverted.full-width,button.mat-mdc-unelevated-button.ghost.full-width,button.mat-mdc-unelevated-button.ghost-ai.full-width,button.mat-mdc-unelevated-button.outlined.full-width,button.mat-mdc-unelevated-button.destructive.full-width,button.mat-mdc-unelevated-button.tertiary.full-width,button.mat-mdc-unelevated-button.link.full-width,a.mat-mdc-unelevated-button.primary.full-width,a.mat-mdc-unelevated-button.secondary.full-width,a.mat-mdc-unelevated-button.secondary-inverted.full-width,a.mat-mdc-unelevated-button.ghost.full-width,a.mat-mdc-unelevated-button.ghost-ai.full-width,a.mat-mdc-unelevated-button.outlined.full-width,a.mat-mdc-unelevated-button.destructive.full-width,a.mat-mdc-unelevated-button.tertiary.full-width,a.mat-mdc-unelevated-button.link.full-width{width:100%;min-width:100%}button.mat-mdc-unelevated-button.primary.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.secondary.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.secondary-inverted.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.ghost.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.ghost-ai.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.outlined.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.destructive.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.tertiary.full-width .icon-label-wrapper,button.mat-mdc-unelevated-button.link.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.primary.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.secondary.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.secondary-inverted.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.ghost.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.ghost-ai.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.outlined.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.destructive.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.tertiary.full-width .icon-label-wrapper,a.mat-mdc-unelevated-button.link.full-width .icon-label-wrapper{justify-content:center}button.mat-mdc-unelevated-button.primary,a.mat-mdc-unelevated-button.primary{background-color:var(--color);color:#fff;border-radius:1000px}button.mat-mdc-unelevated-button.primary-disabled,a.mat-mdc-unelevated-button.primary-disabled{opacity:.75}button.mat-mdc-unelevated-button.primary.classic-theme,a.mat-mdc-unelevated-button.primary.classic-theme{border-radius:4px}button.mat-mdc-unelevated-button.primary.classic-theme:disabled,button.mat-mdc-unelevated-button.primary.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.primary.classic-theme:disabled,a.mat-mdc-unelevated-button.primary.classic-theme:disabled:hover{background-color:#b5ddd5}button.mat-mdc-unelevated-button.primary.light-theme:disabled,button.mat-mdc-unelevated-button.primary.light-theme:disabled:hover,a.mat-mdc-unelevated-button.primary.light-theme:disabled,a.mat-mdc-unelevated-button.primary.light-theme:disabled:hover{background-color:#e9e9e9;color:#666}button.mat-mdc-unelevated-button.primary.light-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.primary.light-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.primary.light-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.primary.light-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#666}button.mat-mdc-unelevated-button.primary.dark-theme:disabled,button.mat-mdc-unelevated-button.primary.dark-theme:disabled:hover,a.mat-mdc-unelevated-button.primary.dark-theme:disabled,a.mat-mdc-unelevated-button.primary.dark-theme:disabled:hover{background-color:#666;color:#d3d3d3}button.mat-mdc-unelevated-button.primary.dark-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.primary.dark-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.primary.dark-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.primary.dark-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#d3d3d3}button.mat-mdc-unelevated-button.primary ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.primary ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.primary .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.primary .mat-mdc-progress-spinner ::ng-deep circle{stroke:#fff}button.mat-mdc-unelevated-button.secondary,a.mat-mdc-unelevated-button.secondary{border-radius:1000px}button.mat-mdc-unelevated-button.secondary.light-theme,a.mat-mdc-unelevated-button.secondary.light-theme{background-color:#242424;color:#fff}button.mat-mdc-unelevated-button.secondary.light-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.light-theme ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.secondary.light-theme:disabled,button.mat-mdc-unelevated-button.secondary.light-theme:disabled:hover,a.mat-mdc-unelevated-button.secondary.light-theme:disabled,a.mat-mdc-unelevated-button.secondary.light-theme:disabled:hover{opacity:.75;background-color:#e9e9e9;color:#666}button.mat-mdc-unelevated-button.secondary.light-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.secondary.light-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.light-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.light-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#d3d3d3!important}button.mat-mdc-unelevated-button.secondary.dark-theme,a.mat-mdc-unelevated-button.secondary.dark-theme{background-color:#fff;color:#242424}button.mat-mdc-unelevated-button.secondary.dark-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.dark-theme ::ng-deep mat-icon.black svg{color:#242424}button.mat-mdc-unelevated-button.secondary.dark-theme:disabled,button.mat-mdc-unelevated-button.secondary.dark-theme:disabled:hover,a.mat-mdc-unelevated-button.secondary.dark-theme:disabled,a.mat-mdc-unelevated-button.secondary.dark-theme:disabled:hover{opacity:.75;background-color:#666;color:#d3d3d3}button.mat-mdc-unelevated-button.secondary.dark-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.secondary.dark-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.dark-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.dark-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#d3d3d3}button.mat-mdc-unelevated-button.secondary:hover,a.mat-mdc-unelevated-button.secondary:hover{background-color:#666;color:#fff}button.mat-mdc-unelevated-button.secondary:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary:hover ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.secondary .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.secondary .mat-mdc-progress-spinner ::ng-deep circle{stroke:#fff}button.mat-mdc-unelevated-button.secondary.classic-theme,a.mat-mdc-unelevated-button.secondary.classic-theme{border-radius:4px;background-color:#ededed;color:#000}button.mat-mdc-unelevated-button.secondary.classic-theme:hover,a.mat-mdc-unelevated-button.secondary.classic-theme:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.secondary.classic-theme:disabled,button.mat-mdc-unelevated-button.secondary.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.secondary.classic-theme:disabled,a.mat-mdc-unelevated-button.secondary.classic-theme:disabled:hover{background-color:#ededed;color:#888}button.mat-mdc-unelevated-button.secondary.classic-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.secondary.classic-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.classic-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary.classic-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.secondary.classic-theme .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.secondary.classic-theme .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.secondary-inverted,a.mat-mdc-unelevated-button.secondary-inverted{border-radius:1000px}button.mat-mdc-unelevated-button.secondary-inverted.light-theme,a.mat-mdc-unelevated-button.secondary-inverted.light-theme{background-color:#fff;color:#242424;box-shadow:0 2px 16px #24242433}button.mat-mdc-unelevated-button.secondary-inverted.light-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted.light-theme ::ng-deep mat-icon.black svg{color:#242424}button.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled,button.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled:hover,a.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled,a.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled:hover{opacity:.75;background-color:#f4f4f4;color:#666;border-color:#666}button.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted.light-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#666}button.mat-mdc-unelevated-button.secondary-inverted.dark-theme,a.mat-mdc-unelevated-button.secondary-inverted.dark-theme{background-color:#242424;color:#fff;box-shadow:0 2px 16px #ffffff4d}button.mat-mdc-unelevated-button.secondary-inverted.dark-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted.dark-theme ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled,button.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled:hover,a.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled,a.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled:hover{opacity:.75;background-color:#666;color:#d3d3d3;border-color:#d3d3d3}button.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted.dark-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#d3d3d3}button.mat-mdc-unelevated-button.secondary-inverted:hover,a.mat-mdc-unelevated-button.secondary-inverted:hover{background-color:#f4f4f4;color:#242424}button.mat-mdc-unelevated-button.secondary-inverted:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.secondary-inverted:hover ::ng-deep mat-icon.black svg{color:#242424}button.mat-mdc-unelevated-button.secondary-inverted .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.secondary-inverted .mat-mdc-progress-spinner ::ng-deep circle{stroke:#242424}button.mat-mdc-unelevated-button.outlined,a.mat-mdc-unelevated-button.outlined{background-color:#fff;color:#000;border-width:1px;border-style:solid;border-color:#000}button.mat-mdc-unelevated-button.outlined:hover,a.mat-mdc-unelevated-button.outlined:hover{background-color:#f6f6f6}button.mat-mdc-unelevated-button.outlined:disabled,button.mat-mdc-unelevated-button.outlined:disabled:hover,a.mat-mdc-unelevated-button.outlined:disabled,a.mat-mdc-unelevated-button.outlined:disabled:hover{color:#ededed;border-color:#ededed}button.mat-mdc-unelevated-button.outlined:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.outlined:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.outlined:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.outlined:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.outlined:focus.cdk-focused,a.mat-mdc-unelevated-button.outlined:focus.cdk-focused{background-color:#e0e0e0}button.mat-mdc-unelevated-button.outlined .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.outlined .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.ghost,button.mat-mdc-unelevated-button.ghost-ai,a.mat-mdc-unelevated-button.ghost,a.mat-mdc-unelevated-button.ghost-ai{border-width:1px;border-style:solid;border-radius:1000px}button.mat-mdc-unelevated-button.ghost.light-theme,button.mat-mdc-unelevated-button.ghost-ai.light-theme,a.mat-mdc-unelevated-button.ghost.light-theme,a.mat-mdc-unelevated-button.ghost-ai.light-theme{background-color:var(--ghost-background);color:#242424;border-color:#242424}button.mat-mdc-unelevated-button.ghost.light-theme.only-icon,button.mat-mdc-unelevated-button.ghost-ai.light-theme.only-icon,a.mat-mdc-unelevated-button.ghost.light-theme.only-icon,a.mat-mdc-unelevated-button.ghost-ai.light-theme.only-icon{width:48px;height:48px;padding:0}button.mat-mdc-unelevated-button.ghost.light-theme ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.ghost-ai.light-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.ghost.light-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.ghost-ai.light-theme ::ng-deep mat-icon.black svg{color:#242424}button.mat-mdc-unelevated-button.ghost.light-theme:hover,button.mat-mdc-unelevated-button.ghost-ai.light-theme:hover,a.mat-mdc-unelevated-button.ghost.light-theme:hover,a.mat-mdc-unelevated-button.ghost-ai.light-theme:hover{background-color:#f4f4f4}button.mat-mdc-unelevated-button.ghost.dark-theme,button.mat-mdc-unelevated-button.ghost-ai.dark-theme,a.mat-mdc-unelevated-button.ghost.dark-theme,a.mat-mdc-unelevated-button.ghost-ai.dark-theme{background-color:transparent;color:#fff;border-color:#fff}button.mat-mdc-unelevated-button.ghost.dark-theme.only-icon,button.mat-mdc-unelevated-button.ghost-ai.dark-theme.only-icon,a.mat-mdc-unelevated-button.ghost.dark-theme.only-icon,a.mat-mdc-unelevated-button.ghost-ai.dark-theme.only-icon{width:48px;height:48px;padding:0}button.mat-mdc-unelevated-button.ghost.dark-theme ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.ghost-ai.dark-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.ghost.dark-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.ghost-ai.dark-theme ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.ghost.dark-theme:hover,button.mat-mdc-unelevated-button.ghost-ai.dark-theme:hover,a.mat-mdc-unelevated-button.ghost.dark-theme:hover,a.mat-mdc-unelevated-button.ghost-ai.dark-theme:hover{background-color:#666}button.mat-mdc-unelevated-button.ghost.ghost-ai,button.mat-mdc-unelevated-button.ghost-ai.ghost-ai,a.mat-mdc-unelevated-button.ghost.ghost-ai,a.mat-mdc-unelevated-button.ghost-ai.ghost-ai{background:linear-gradient(to left,#fff,#fff),linear-gradient(to right,#d410aa 25%,#0165fc);background-clip:padding-box,border-box;background-origin:padding-box,border-box;border-color:transparent}button.mat-mdc-unelevated-button.ghost.ghost-ai:hover,button.mat-mdc-unelevated-button.ghost-ai.ghost-ai:hover,a.mat-mdc-unelevated-button.ghost.ghost-ai:hover,a.mat-mdc-unelevated-button.ghost-ai.ghost-ai:hover{background:linear-gradient(to left,#e9e9e9,#e9e9e9),linear-gradient(to right,#d410aa 25%,#0165fc);background-clip:padding-box,border-box;background-origin:padding-box,border-box}button.mat-mdc-unelevated-button.ghost:disabled,button.mat-mdc-unelevated-button.ghost:disabled:hover,button.mat-mdc-unelevated-button.ghost-ai:disabled,button.mat-mdc-unelevated-button.ghost-ai:disabled:hover,a.mat-mdc-unelevated-button.ghost:disabled,a.mat-mdc-unelevated-button.ghost:disabled:hover,a.mat-mdc-unelevated-button.ghost-ai:disabled,a.mat-mdc-unelevated-button.ghost-ai:disabled:hover{opacity:.5;background-color:transparent}button.mat-mdc-unelevated-button.ghost .mat-mdc-progress-spinner ::ng-deep circle,button.mat-mdc-unelevated-button.ghost-ai .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.ghost .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.ghost-ai .mat-mdc-progress-spinner ::ng-deep circle{stroke:#242424}button.mat-mdc-unelevated-button.destructive,a.mat-mdc-unelevated-button.destructive{border:1px solid #E02800;background-color:#fff;color:#e02800;border-radius:1000px}button.mat-mdc-unelevated-button.destructive:hover,a.mat-mdc-unelevated-button.destructive:hover{background-color:#e02800;color:#fff}button.mat-mdc-unelevated-button.destructive:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.destructive:hover ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.destructive:disabled,button.mat-mdc-unelevated-button.destructive:disabled:hover,a.mat-mdc-unelevated-button.destructive:disabled,a.mat-mdc-unelevated-button.destructive:disabled:hover{border-color:#919191;color:#919191;background:transparent}button.mat-mdc-unelevated-button.destructive ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.destructive ::ng-deep mat-icon.black svg{color:#e02800}button.mat-mdc-unelevated-button.destructive .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.destructive .mat-mdc-progress-spinner ::ng-deep circle{stroke:#242424}button.mat-mdc-unelevated-button.destructive.classic-theme,a.mat-mdc-unelevated-button.destructive.classic-theme{border:unset;border-radius:4px;background-color:#cb7b7a;color:#fff}button.mat-mdc-unelevated-button.destructive.classic-theme:hover,a.mat-mdc-unelevated-button.destructive.classic-theme:hover{background-color:#8e5655}button.mat-mdc-unelevated-button.destructive.classic-theme:disabled,button.mat-mdc-unelevated-button.destructive.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.destructive.classic-theme:disabled,a.mat-mdc-unelevated-button.destructive.classic-theme:disabled:hover{background-color:#e3c3c6}button.mat-mdc-unelevated-button.destructive.classic-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.destructive.classic-theme ::ng-deep mat-icon.black svg{color:#fff}button.mat-mdc-unelevated-button.destructive.classic-theme .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.destructive.classic-theme .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.tertiary,a.mat-mdc-unelevated-button.tertiary{background-color:transparent;color:#46a997}button.mat-mdc-unelevated-button.tertiary:hover,a.mat-mdc-unelevated-button.tertiary:hover{background-color:#f6f6f6;color:#31766a}button.mat-mdc-unelevated-button.tertiary:disabled,button.mat-mdc-unelevated-button.tertiary:disabled:hover,a.mat-mdc-unelevated-button.tertiary:disabled,a.mat-mdc-unelevated-button.tertiary:disabled:hover{opacity:.75;background-color:#fff;color:#b5ddd5}button.mat-mdc-unelevated-button.tertiary:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.tertiary:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tertiary:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tertiary:disabled:hover ::ng-deep mat-icon.black svg{color:#b5ddd5}button.mat-mdc-unelevated-button.tertiary ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tertiary ::ng-deep mat-icon.black svg{color:var(--color)}button.mat-mdc-unelevated-button.tertiary .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.tertiary .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.link,a.mat-mdc-unelevated-button.link{background-color:transparent;color:#d410aa;border-radius:0}button.mat-mdc-unelevated-button.link ::ng-deep .mat-mdc-button-persistent-ripple,a.mat-mdc-unelevated-button.link ::ng-deep .mat-mdc-button-persistent-ripple{display:none}button.mat-mdc-unelevated-button.link span.icon-label-wrapper,a.mat-mdc-unelevated-button.link span.icon-label-wrapper{text-decoration:underline}button.mat-mdc-unelevated-button.link:hover,a.mat-mdc-unelevated-button.link:hover{color:#a90686!important}button.mat-mdc-unelevated-button.link:active,a.mat-mdc-unelevated-button.link:active{color:#ff54da!important}button.mat-mdc-unelevated-button.link ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.link ::ng-deep .mdc-button__label{padding:4px}button.mat-mdc-unelevated-button.link:active ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.link:active ::ng-deep .mdc-button__label{padding:4px}button.mat-mdc-unelevated-button.link:disabled,button.mat-mdc-unelevated-button.link:disabled:hover,a.mat-mdc-unelevated-button.link:disabled,a.mat-mdc-unelevated-button.link:disabled:hover{color:#d3d3d3}button.mat-mdc-unelevated-button.link ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.link ::ng-deep mat-icon.black svg{color:var(--color)}button.mat-mdc-unelevated-button.link.classic-theme,a.mat-mdc-unelevated-button.link.classic-theme{background-color:transparent;color:#46a997;border-radius:0}button.mat-mdc-unelevated-button.link.classic-theme span.icon-label-wrapper,a.mat-mdc-unelevated-button.link.classic-theme span.icon-label-wrapper{text-decoration:underline}button.mat-mdc-unelevated-button.link.classic-theme:hover,a.mat-mdc-unelevated-button.link.classic-theme:hover{color:#31766a}button.mat-mdc-unelevated-button.link.classic-theme:disabled,button.mat-mdc-unelevated-button.link.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.link.classic-theme:disabled,a.mat-mdc-unelevated-button.link.classic-theme:disabled:hover{color:#b5ddd5}button.mat-mdc-unelevated-button.link.classic-theme ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.link.classic-theme ::ng-deep mat-icon.black svg{color:var(--color)}button.mat-mdc-unelevated-button.text,button.mat-mdc-unelevated-button.text-inline,a.mat-mdc-unelevated-button.text,a.mat-mdc-unelevated-button.text-inline{background-color:transparent;border-radius:0;text-decoration:underline}button.mat-mdc-unelevated-button.text:is(.text-inline),button.mat-mdc-unelevated-button.text-inline:is(.text-inline),a.mat-mdc-unelevated-button.text:is(.text-inline),a.mat-mdc-unelevated-button.text-inline:is(.text-inline){padding:0;height:auto}button.mat-mdc-unelevated-button.text:is(.text-inline) ::ng-deep .mdc-button__label,button.mat-mdc-unelevated-button.text-inline:is(.text-inline) ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text:is(.text-inline) ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text-inline:is(.text-inline) ::ng-deep .mdc-button__label{padding:0}button.mat-mdc-unelevated-button.text:is(.text-inline) ::ng-deep .mat-mdc-button-touch-target,button.mat-mdc-unelevated-button.text-inline:is(.text-inline) ::ng-deep .mat-mdc-button-touch-target,a.mat-mdc-unelevated-button.text:is(.text-inline) ::ng-deep .mat-mdc-button-touch-target,a.mat-mdc-unelevated-button.text-inline:is(.text-inline) ::ng-deep .mat-mdc-button-touch-target{height:100%}button.mat-mdc-unelevated-button.text:is(.text-inline).small .label,button.mat-mdc-unelevated-button.text-inline:is(.text-inline).small .label,a.mat-mdc-unelevated-button.text:is(.text-inline).small .label,a.mat-mdc-unelevated-button.text-inline:is(.text-inline).small .label{font-size:12px;line-height:16px}button.mat-mdc-unelevated-button.text:is(.text-inline).medium .label,button.mat-mdc-unelevated-button.text-inline:is(.text-inline).medium .label,a.mat-mdc-unelevated-button.text:is(.text-inline).medium .label,a.mat-mdc-unelevated-button.text-inline:is(.text-inline).medium .label{font-size:14px;line-height:22px}button.mat-mdc-unelevated-button.text:is(.text-inline).big .label,button.mat-mdc-unelevated-button.text-inline:is(.text-inline).big .label,a.mat-mdc-unelevated-button.text:is(.text-inline).big .label,a.mat-mdc-unelevated-button.text-inline:is(.text-inline).big .label{font-size:16px;line-height:24px}button.mat-mdc-unelevated-button.text.light-theme,button.mat-mdc-unelevated-button.text-inline.light-theme,a.mat-mdc-unelevated-button.text.light-theme,a.mat-mdc-unelevated-button.text-inline.light-theme{color:var(--color)}button.mat-mdc-unelevated-button.text.light-theme:active,button.mat-mdc-unelevated-button.text-inline.light-theme:active,a.mat-mdc-unelevated-button.text.light-theme:active,a.mat-mdc-unelevated-button.text-inline.light-theme:active,button.mat-mdc-unelevated-button.text.light-theme:hover,button.mat-mdc-unelevated-button.text-inline.light-theme:hover,a.mat-mdc-unelevated-button.text.light-theme:hover,a.mat-mdc-unelevated-button.text-inline.light-theme:hover{color:var(--active-color)!important}button.mat-mdc-unelevated-button.text.dark-theme,button.mat-mdc-unelevated-button.text-inline.dark-theme,a.mat-mdc-unelevated-button.text.dark-theme,a.mat-mdc-unelevated-button.text-inline.dark-theme{color:var(--color)}button.mat-mdc-unelevated-button.text.dark-theme:active,button.mat-mdc-unelevated-button.text-inline.dark-theme:active,a.mat-mdc-unelevated-button.text.dark-theme:active,a.mat-mdc-unelevated-button.text-inline.dark-theme:active{color:var(--active-color)!important}button.mat-mdc-unelevated-button.text.dark-theme:hover,button.mat-mdc-unelevated-button.text-inline.dark-theme:hover,a.mat-mdc-unelevated-button.text.dark-theme:hover,a.mat-mdc-unelevated-button.text-inline.dark-theme:hover{color:var(--active-color)}button.mat-mdc-unelevated-button.text ::ng-deep .mat-mdc-button-persistent-ripple,button.mat-mdc-unelevated-button.text-inline ::ng-deep .mat-mdc-button-persistent-ripple,a.mat-mdc-unelevated-button.text ::ng-deep .mat-mdc-button-persistent-ripple,a.mat-mdc-unelevated-button.text-inline ::ng-deep .mat-mdc-button-persistent-ripple{display:none}button.mat-mdc-unelevated-button.text span.icon-label-wrapper,button.mat-mdc-unelevated-button.text-inline span.icon-label-wrapper,a.mat-mdc-unelevated-button.text span.icon-label-wrapper,a.mat-mdc-unelevated-button.text-inline span.icon-label-wrapper{text-decoration:underline}button.mat-mdc-unelevated-button.text:disabled,button.mat-mdc-unelevated-button.text:disabled:hover,button.mat-mdc-unelevated-button.text-inline:disabled,button.mat-mdc-unelevated-button.text-inline:disabled:hover,a.mat-mdc-unelevated-button.text:disabled,a.mat-mdc-unelevated-button.text:disabled:hover,a.mat-mdc-unelevated-button.text-inline:disabled,a.mat-mdc-unelevated-button.text-inline:disabled:hover{color:#d3d3d3}button.mat-mdc-unelevated-button.text:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text:disabled:hover ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text-inline:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text-inline:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text-inline:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text-inline:disabled:hover ::ng-deep mat-icon.black svg{color:#d3d3d3}button.mat-mdc-unelevated-button.text ::ng-deep .mdc-button__label,button.mat-mdc-unelevated-button.text-inline ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text-inline ::ng-deep .mdc-button__label{padding:4px}button.mat-mdc-unelevated-button.text:focus:not(.text-inline) ::ng-deep .mdc-button__label,button.mat-mdc-unelevated-button.text-inline:focus:not(.text-inline) ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text:focus:not(.text-inline) ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text-inline:focus:not(.text-inline) ::ng-deep .mdc-button__label{padding:4px}button.mat-mdc-unelevated-button.text:focus-visible ::ng-deep .mdc-button__label,button.mat-mdc-unelevated-button.text-inline:focus-visible ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text:focus-visible ::ng-deep .mdc-button__label,a.mat-mdc-unelevated-button.text-inline:focus-visible ::ng-deep .mdc-button__label{border-radius:2px;outline-color:#242424!important;outline-style:solid!important;outline-offset:2px!important;animation:focus-ring-animation .4s forwards}button.mat-mdc-unelevated-button.text .mat-mdc-progress-spinner ::ng-deep circle,button.mat-mdc-unelevated-button.text-inline .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.text .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.text-inline .mat-mdc-progress-spinner ::ng-deep circle{stroke:#242424}button.mat-mdc-unelevated-button.text.classic-theme,button.mat-mdc-unelevated-button.text-inline.classic-theme,a.mat-mdc-unelevated-button.text.classic-theme,a.mat-mdc-unelevated-button.text-inline.classic-theme{background-color:transparent;color:#000;border-radius:0;text-decoration:underline}button.mat-mdc-unelevated-button.text.classic-theme span.icon-label-wrapper,button.mat-mdc-unelevated-button.text-inline.classic-theme span.icon-label-wrapper,a.mat-mdc-unelevated-button.text.classic-theme span.icon-label-wrapper,a.mat-mdc-unelevated-button.text-inline.classic-theme span.icon-label-wrapper{text-decoration:underline}button.mat-mdc-unelevated-button.text.classic-theme:hover,button.mat-mdc-unelevated-button.text-inline.classic-theme:hover,a.mat-mdc-unelevated-button.text.classic-theme:hover,a.mat-mdc-unelevated-button.text-inline.classic-theme:hover{color:#000}button.mat-mdc-unelevated-button.text.classic-theme:disabled,button.mat-mdc-unelevated-button.text.classic-theme:disabled:hover,button.mat-mdc-unelevated-button.text-inline.classic-theme:disabled,button.mat-mdc-unelevated-button.text-inline.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.text.classic-theme:disabled,a.mat-mdc-unelevated-button.text.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.text-inline.classic-theme:disabled,a.mat-mdc-unelevated-button.text-inline.classic-theme:disabled:hover{color:#888}button.mat-mdc-unelevated-button.text.classic-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text.classic-theme:disabled:hover ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text-inline.classic-theme:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.text-inline.classic-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text.classic-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text.classic-theme:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text-inline.classic-theme:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.text-inline.classic-theme:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.text.classic-theme:focus.cdk-focused,button.mat-mdc-unelevated-button.text-inline.classic-theme:focus.cdk-focused,a.mat-mdc-unelevated-button.text.classic-theme:focus.cdk-focused,a.mat-mdc-unelevated-button.text-inline.classic-theme:focus.cdk-focused{color:#000}button.mat-mdc-unelevated-button.text.classic-theme .mat-mdc-progress-spinner ::ng-deep circle,button.mat-mdc-unelevated-button.text-inline.classic-theme .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.text.classic-theme .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.text-inline.classic-theme .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.squareicon,a.mat-mdc-unelevated-button.squareicon{background-color:#ededed;color:#000;min-width:56px}button.mat-mdc-unelevated-button.squareicon:hover,a.mat-mdc-unelevated-button.squareicon:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.squareicon:disabled,button.mat-mdc-unelevated-button.squareicon:disabled:hover,a.mat-mdc-unelevated-button.squareicon:disabled,a.mat-mdc-unelevated-button.squareicon:disabled:hover{background-color:#ededed;color:#888}button.mat-mdc-unelevated-button.squareicon:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.squareicon:focus.cdk-focused.cdk-mouse-focused{background-color:#ededed}button.mat-mdc-unelevated-button.squareicon .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.squareicon .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}button.mat-mdc-unelevated-button.squareicon .icon-label-wrapper,a.mat-mdc-unelevated-button.squareicon .icon-label-wrapper{flex-flow:column}button.mat-mdc-unelevated-button.squareicon.left .icon,button.mat-mdc-unelevated-button.squareicon.right .icon,a.mat-mdc-unelevated-button.squareicon.left .icon,a.mat-mdc-unelevated-button.squareicon.right .icon{margin:0 auto}button.mat-mdc-unelevated-button.tab,a.mat-mdc-unelevated-button.tab{background-color:#fff;color:#000;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:#e0e0e0;border-radius:0}button.mat-mdc-unelevated-button.tab:hover .label,button.mat-mdc-unelevated-button.tab:hover .icon.only,a.mat-mdc-unelevated-button.tab:hover .label,a.mat-mdc-unelevated-button.tab:hover .icon.only{text-decoration:underline}button.mat-mdc-unelevated-button.tab:disabled,button.mat-mdc-unelevated-button.tab:disabled:hover,a.mat-mdc-unelevated-button.tab:disabled,a.mat-mdc-unelevated-button.tab:disabled:hover{color:#888}button.mat-mdc-unelevated-button.tab:disabled .label,button.mat-mdc-unelevated-button.tab:disabled:hover .label,a.mat-mdc-unelevated-button.tab:disabled .label,a.mat-mdc-unelevated-button.tab:disabled:hover .label{text-decoration:none}button.mat-mdc-unelevated-button.tab:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.tab:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tab:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.tab:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.tab:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.tab:focus.cdk-focused.cdk-mouse-focused{font-weight:700;border-color:#276678}button.mat-mdc-unelevated-button.menuTrigger.classic-theme,a.mat-mdc-unelevated-button.menuTrigger.classic-theme{background:transparent;min-width:24px;height:24px;padding:0}button.mat-mdc-unelevated-button.menuTrigger.classic-theme:hover,a.mat-mdc-unelevated-button.menuTrigger.classic-theme:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.menuTrigger.classic-theme:disabled,button.mat-mdc-unelevated-button.menuTrigger.classic-theme:disabled:hover,a.mat-mdc-unelevated-button.menuTrigger.classic-theme:disabled,a.mat-mdc-unelevated-button.menuTrigger.classic-theme:disabled:hover{background-color:#fff;color:#888}button.mat-mdc-unelevated-button.menuTrigger.classic-theme:focus.cdk-focused.cdk-mouse-focused,a.mat-mdc-unelevated-button.menuTrigger.classic-theme:focus.cdk-focused.cdk-mouse-focused{background-color:transparent}button.mat-mdc-unelevated-button.menuTrigger.classic-theme .icon-label-wrapper,a.mat-mdc-unelevated-button.menuTrigger.classic-theme .icon-label-wrapper{flex-flow:column}button.mat-mdc-unelevated-button.menuTrigger.classic-theme.left .icon,button.mat-mdc-unelevated-button.menuTrigger.classic-theme.right .icon,a.mat-mdc-unelevated-button.menuTrigger.classic-theme.left .icon,a.mat-mdc-unelevated-button.menuTrigger.classic-theme.right .icon{margin:0 auto}button.mat-mdc-unelevated-button.menuCell,a.mat-mdc-unelevated-button.menuCell{background-color:#fff;color:#000;font-weight:400;border-radius:0;min-width:100%;justify-content:flex-start}button.mat-mdc-unelevated-button.menuCell.classic-theme.big.left .icon,a.mat-mdc-unelevated-button.menuCell.classic-theme.big.left .icon{margin-right:16px}button.mat-mdc-unelevated-button.menuCell.big.left .icon,a.mat-mdc-unelevated-button.menuCell.big.left .icon{margin-right:8px}button.mat-mdc-unelevated-button.menuCell .icon-label-wrapper,a.mat-mdc-unelevated-button.menuCell .icon-label-wrapper{justify-content:flex-start}button.mat-mdc-unelevated-button.menuCell:hover,a.mat-mdc-unelevated-button.menuCell:hover{background-color:#e0e0e0}button.mat-mdc-unelevated-button.menuCell:disabled,button.mat-mdc-unelevated-button.menuCell:disabled:hover,a.mat-mdc-unelevated-button.menuCell:disabled,a.mat-mdc-unelevated-button.menuCell:disabled:hover{background-color:#fff;color:#888}button.mat-mdc-unelevated-button.menuCell:disabled ::ng-deep mat-icon.black svg,button.mat-mdc-unelevated-button.menuCell:disabled:hover ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.menuCell:disabled ::ng-deep mat-icon.black svg,a.mat-mdc-unelevated-button.menuCell:disabled:hover ::ng-deep mat-icon.black svg{color:#888}button.mat-mdc-unelevated-button.menuCell .mat-mdc-progress-spinner ::ng-deep circle,a.mat-mdc-unelevated-button.menuCell .mat-mdc-progress-spinner ::ng-deep circle{stroke:#000}.button-wrapper{position:relative;height:fit-content}.button-wrapper .menuTrigger:not(.classic-theme),.button-wrapper .icon-button{border:none;border-radius:100%;width:var(--icon-button-size)!important;height:var(--icon-button-size)!important;cursor:pointer;background-color:unset}::ng-deep .button-wrapper .menuTrigger:not(.classic-theme).mat-mdc-unelevated-button:not(:disabled),::ng-deep .button-wrapper .icon-button.mat-mdc-unelevated-button:not(:disabled){background-color:unset}::ng-deep .button-wrapper .menuTrigger:not(.classic-theme).mdc-button,::ng-deep .button-wrapper .icon-button.mdc-button{min-width:var(--icon-button-size)!important}.button-wrapper .menuTrigger:not(.classic-theme) ::ng-deep .mat-mdc-button-touch-target,.button-wrapper .icon-button ::ng-deep .mat-mdc-button-touch-target{height:var(--icon-button-size)!important}.button-wrapper .menuTrigger:not(.classic-theme):disabled,.button-wrapper .icon-button:disabled{pointer-events:none;background:unset}.button-wrapper .menuTrigger:not(.classic-theme):disabled.classic-theme ::ng-deep mat-icon svg,.button-wrapper .icon-button:disabled.classic-theme ::ng-deep mat-icon svg{color:#888}.button-wrapper .menuTrigger:not(.classic-theme):hover,.button-wrapper .icon-button:hover{background-color:#f6f6f6}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).light-theme:disabled,.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).light-theme:disabled:hover ::ng-deep mat-icon svg,.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).dark-theme:disabled,.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).dark-theme:disabled:hover ::ng-deep mat-icon svg,.button-wrapper .icon-button:not(.has-company-color).light-theme:disabled,.button-wrapper .icon-button:not(.has-company-color).light-theme:disabled:hover ::ng-deep mat-icon svg,.button-wrapper .icon-button:not(.has-company-color).dark-theme:disabled,.button-wrapper .icon-button:not(.has-company-color).dark-theme:disabled:hover ::ng-deep mat-icon svg{color:#919191!important}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).light-theme,.button-wrapper .icon-button:not(.has-company-color).light-theme{color:#242424!important}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).light-theme:hover,.button-wrapper .icon-button:not(.has-company-color).light-theme:hover{background-color:#e9e9e9}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).light-theme:focus.cdk-focused,.button-wrapper .icon-button:not(.has-company-color).light-theme:focus.cdk-focused{border-color:#666}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).dark-theme,.button-wrapper .icon-button:not(.has-company-color).dark-theme{color:#fff!important}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).dark-theme:hover,.button-wrapper .icon-button:not(.has-company-color).dark-theme:hover{background-color:#666}.button-wrapper .menuTrigger:not(.classic-theme):not(.has-company-color).dark-theme:focus.cdk-focused,.button-wrapper .icon-button:not(.has-company-color).dark-theme:focus.cdk-focused{border-color:#e9e9e9}.button-wrapper .menuTrigger:focus.cdk-focused.cdk-mouse-focused.light-theme{border:none;background-color:#e9e9e9;color:#242424}.button-wrapper .menuTrigger:focus.cdk-focused.cdk-mouse-focused.dark-theme{border:none;background-color:#666;color:#fff}.button-wrapper .right-top{position:absolute;right:-8px;top:-8px;z-index:1}.button-wrapper .right-top.badge-notification{top:-4px;right:0;border:1px solid #ffffff;border-radius:100%}.button-wrapper .right-top.badge-primary{right:-4px}.button-wrapper .right-top.menuCell{top:12px;right:12px}::ng-deep .mat-mdc-tooltip{background-color:#a9c2c9;font-family:Open Sans,serif;font-weight:400;font-size:12px;border-radius:4px;overflow:visible;max-width:248px;padding:6px 2px;--mdc-plain-tooltip-container-color: none;--mdc-plain-tooltip-supporting-text-color: $tgo-black}:host[btn-variant=link]{display:inline-flex}::ng-deep .link .button-container{display:flex}::ng-deep .link a.mat-mdc-unelevated-button.link{height:unset!important;min-width:unset!important;border-radius:10px}::ng-deep .link a.mat-mdc-unelevated-button.link:active .mdc-button__label{padding:0!important;outline:none!important}::ng-deep .link a.mat-mdc-unelevated-button{padding:0!important}::ng-deep .link a.mat-mdc-unelevated-button .mdc-button__label{padding:0!important}::ng-deep .link a.mat-mdc-unelevated-button.big,::ng-deep .link a.mat-mdc-unelevated-button.small{padding:0!important}::ng-deep .link a.mat-mdc-unelevated-button.big .mdc-button__label,::ng-deep .link a.mat-mdc-unelevated-button.small .mdc-button__label{padding:0!important}::ng-deep .link a.mat-mdc-unelevated-button.big .mdc-button__label .icon-label-wrapper{font-size:16px!important;line-height:24px!important}::ng-deep .link a.mat-mdc-unelevated-button.small .mdc-button__label .icon-label-wrapper{font-size:12px!important;line-height:16px!important}::ng-deep .link a.mat-mdc-unelevated-button .mat-mdc-button-touch-target{height:unset!important}\n"] }]
|
|
366
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
367
|
-
type: Optional
|
|
368
|
-
}, {
|
|
369
|
-
type: Inject,
|
|
370
|
-
args: ['CANOPYUI_DEFAULT_APPLICATION_THEME']
|
|
371
|
-
}] }], propDecorators: { enabled: [{
|
|
372
|
-
type: HostBinding,
|
|
373
|
-
args: ['style.pointer-events']
|
|
374
|
-
}], tooltipElement: [{
|
|
375
|
-
type: ViewChild,
|
|
376
|
-
args: ['tooltipElement']
|
|
377
|
-
}], size: [{
|
|
378
|
-
type: Input
|
|
379
|
-
}], variant: [{
|
|
380
|
-
type: HostBinding,
|
|
381
|
-
args: ['attr.btn-variant']
|
|
382
|
-
}, {
|
|
383
|
-
type: Input
|
|
384
|
-
}], label: [{
|
|
385
|
-
type: Input
|
|
386
|
-
}], iconPosition: [{
|
|
387
|
-
type: Input
|
|
388
|
-
}], justIcon: [{
|
|
389
|
-
type: Input
|
|
390
|
-
}], iconName: [{
|
|
391
|
-
type: Input
|
|
392
|
-
}], disabled: [{
|
|
393
|
-
type: Input
|
|
394
|
-
}], loading: [{
|
|
395
|
-
type: Input
|
|
396
|
-
}], fullWidth: [{
|
|
397
|
-
type: Input
|
|
398
|
-
}], url: [{
|
|
399
|
-
type: Input
|
|
400
|
-
}], urlTarget: [{
|
|
401
|
-
type: Input
|
|
402
|
-
}], value: [{
|
|
403
|
-
type: Input
|
|
404
|
-
}], tooltip: [{
|
|
405
|
-
type: Input
|
|
406
|
-
}], isPremium: [{
|
|
407
|
-
type: Input
|
|
408
|
-
}], type: [{
|
|
409
|
-
type: Input
|
|
410
|
-
}], companyColor: [{
|
|
411
|
-
type: Input
|
|
412
|
-
}], buttonBadgeConfig: [{
|
|
413
|
-
type: Input
|
|
414
|
-
}], applicationTheme: [{
|
|
415
|
-
type: HostBinding,
|
|
416
|
-
args: ['attr.theme']
|
|
417
|
-
}, {
|
|
418
|
-
type: Input
|
|
419
|
-
}], disabledScaleOnClick: [{
|
|
420
|
-
type: Input
|
|
421
|
-
}], ariaLabel: [{
|
|
422
|
-
type: Input
|
|
423
|
-
}], ariaRequired: [{
|
|
424
|
-
type: Input
|
|
425
|
-
}], ariaLabelledby: [{
|
|
426
|
-
type: Input
|
|
427
|
-
}], ariaDescribedby: [{
|
|
428
|
-
type: Input
|
|
429
|
-
}], preventDefault: [{
|
|
430
|
-
type: Input,
|
|
431
|
-
args: [{ transform: booleanAttribute }]
|
|
432
|
-
}], hasBackground: [{
|
|
433
|
-
type: Input,
|
|
434
|
-
args: [{ transform: booleanAttribute }]
|
|
435
|
-
}], tooltipPosition: [{
|
|
436
|
-
type: Input
|
|
437
|
-
}], role: [{
|
|
438
|
-
type: Input
|
|
439
|
-
}], iconFilled: [{
|
|
440
|
-
type: Input
|
|
441
|
-
}], buttonClickEvent: [{
|
|
442
|
-
type: Output
|
|
443
|
-
}], buttonHoverEvent: [{
|
|
444
|
-
type: Output
|
|
445
|
-
}], buttonElement: [{
|
|
446
|
-
type: ViewChild,
|
|
447
|
-
args: ['buttonElement', { static: false }]
|
|
448
|
-
}], compColor: [{
|
|
449
|
-
type: HostBinding,
|
|
450
|
-
args: ['style.--color']
|
|
451
|
-
}] } });
|
|
452
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDREQUE0RDtBQUM1RCxPQUFPLEVBRUwsZ0JBQWdCLEVBQ2hCLFNBQVMsRUFFVCxZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBRUwsUUFBUSxFQUNSLE1BQU0sRUFFTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFZdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7Ozs7O0FBVzdELE1BQU0sT0FBTyxlQUFlO0lBQzFCLElBQ0ksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDeEMsQ0FBQztJQStORCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQ0ksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO2FBZWMsdUJBQWtCLEdBQUcsQ0FBQyxBQUFKLENBQUs7SUFHdEMsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsWUFDNkUsZUFBaUM7UUFBakMsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBelA5Rzs7Ozs7V0FLRztRQUNNLFNBQUksR0FBZSxLQUFLLENBQUM7UUFDbEM7Ozs7O1dBS0c7UUFH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Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUksZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUVHLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFFd0MsYUFBYTtzQkFBM0QsU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQVF6QyxTQUFTO3NCQURaLFdBQVc7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC91c2UtbGlmZWN5Y2xlLWludGVyZmFjZSAqL1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJY29uTmFtZSB9IGZyb20gJy4uL2ljb24vaWNvbi5tb2RlbCc7XG5pbXBvcnQge1xuICBCdXR0b25CYWRnZUNvbmZpZyxcbiAgQnV0dG9uQ29sb3IsXG4gIEJ1dHRvbkljb25Qb3NpdGlvbixcbiAgQnV0dG9uU2l6ZSxcbiAgQnV0dG9uU3RhdGUsXG4gIEJ1dHRvblR5cGUsXG4gIEljb25CdXR0b25TaXplLFxuICBMaW5rVXJsVGFyZ2V0LFxufSBmcm9tICcuL2J1dHRvbi5tb2RlbCc7XG5pbXBvcnQgeyBhZGp1c3RMaWdodG5lc3MgfSBmcm9tICcuLi8uLi91dGlscy9jb2xvci1jb250cmFzdCc7XG5pbXBvcnQgeyBNYXRCdXR0b24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgQXBwbGljYXRpb25UaGVtZSB9IGZyb20gJy4uLy4uL21vZGVscy9hcHBsaWNhdGlvbi10aGVtZS5tb2RlbCc7XG5pbXBvcnQgeyBUb29sdGlwUG9zaXRpb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IEZvY3VzT3JpZ2luIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd1aS1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBIb3N0QmluZGluZygnc3R5bGUucG9pbnRlci1ldmVudHMnKVxuICBnZXQgZW5hYmxlZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmRpc2FibGVkID8gJ25vbmUnIDogJ2FsbCc7XG4gIH1cblxuICBAVmlld0NoaWxkKCd0b29sdGlwRWxlbWVudCcpIHRvb2x0aXBFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAvKipcbiAgICogRGVmaW5lIGJ1dHRvbiBoZWlnaHRcbiAgICpcbiAgICogQHR5cGUge0J1dHRvblNpemV9XG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHNpemU6IEJ1dHRvblNpemUgPSAnYmlnJztcbiAgLyoqXG4gICAqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiB3aGlsZSBpbiBhY3RpdmUgc3RhdGVcbiAgICpcbiAgICogQHR5cGUge0J1dHRvbkNvbG9yfVxuICAgKiBAbWVtYmVyb2YgQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASG9zdEJpbmRpbmcoJ2F0dHIuYnRuLXZhcmlhbnQnKVxuICBASW5wdXQoKVxuICB2YXJpYW50OiBCdXR0b25Db2xvciA9ICdwcmltYXJ5JztcblxuICAvKipcbiAgICogVGV4dCBjb250ZW50IHRvIGFwcGVhciBvbiB0aGUgYnV0dG9uXG4gICAqXG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGxhYmVsID0gJyc7XG5cbiAgLyoqXG4gICAqIFBvc2l0aW9uaW5nIG9mIHRoZSBpY29uICh3aGVuIGV4aXN0YW50KVxuICAgKlxuICAgKiBAdHlwZSB7QnV0dG9uSWNvblBvc2l0aW9ufVxuICAgKiBAbWVtYmVyb2YgQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBpY29uUG9zaXRpb24/OiBCdXR0b25JY29uUG9zaXRpb24gPSAncmlnaHQnO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgaWYgYnV0dG9uIGhhcyBvbmx5IGljb24gd2l0aG91dCB0ZXh0XG4gICAqXG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGp1c3RJY29uID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdWktaWNvblxuICAgKlxuICAgKiBAdHlwZSB7SWNvbk5hbWV9XG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGljb25OYW1lOiBJY29uTmFtZSB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogSW5kaWNhdG9yIGlmIHRoZSBidXR0b24gc2hvdWxkIGJlIGRpc2FibGVkXG4gICAqXG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEluZGljYXRvciBpZiB0aGUgbG9hZGluZyBpY29uIHNob3VsZCBiZSBzaG93blxuICAgKlxuICAgKiBAbWVtYmVyb2YgQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBsb2FkaW5nID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEluZGljYXRvciBvZiB0aGUgYnV0dG9uIHdpZHRoXG4gICAqXG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGZ1bGxXaWR0aCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBVcmwgb2YgYnV0dG9uIGlmIGl0IGlzIGEgbGlua1xuICAgKlxuICAgKiBAbWVtYmVyb2YgQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB1cmw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVybCdzIHRhcmdldCBvZiBidXR0b24gaWYgaXQgaXMgYSBsaW5rXG4gICAqXG4gICAqIEB0eXBlIHtAdHlwZSB7TGlua1VybFRhcmdldH19XG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHVybFRhcmdldD86IExpbmtVcmxUYXJnZXQ7XG5cbiAgLyoqXG4gICAqIEJ1dHRvbiB2YWx1ZVxuICAgKlxuICAgKiBAbWVtYmVyb2YgQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB2YWx1ZT86IHN0cmluZztcblxuICAvKipcbiAgICogQHByb3BlcnR5IHRvb2x0aXBcbiAgICogQGRlc2NyaXB0aW9uIFRoZSB0b29sdGlwIHRoYXQgaXMgZGlzcGxheWVkIG9uIGhvdmVyLiBSZXF1aXJlZCBmb3IgaWNvbi1idXR0b24gdHlwZVxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB0b29sdGlwID0gJyc7XG5cbiAgLyoqXG4gICAqIEBwcm9wZXJ0eSBpc1ByZW1pdW1cbiAgICogQGRlc2NyaXB0aW9uIFRoZSBpY29uIHRoYXQgaXMgZGlzcGxheWVkIGZvciBQcmVtaXVtIGJ1dHRvblxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIEJ1dHRvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgaXNQcmVtaXVtID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIHRoZSBidXR0b24uXG4gICAqXG4gICAqIEB0eXBlIHtCdXR0b25UeXBlfVxuICAgKiBAbWVtYmVyb2YgQnV0dG9uQ29tcG9uZW50XG4gICAqIEBkZWZhdWx0ICdidXR0b24nXG4gICAqL1xuICBASW5wdXQoKSB0eXBlOiBCdXR0b25UeXBlID0gJ2J1dHRvbic7XG5cbiAgLyoqXG4gICAqIENvbG9yIG9mIHRoZSBidXR0b24uXG4gICAqIERlZmF1bHRzIHRvIFRlc3QgR29yaWxsYSBwcmltYXJ5IGNvbG9yLlxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBjb21wYW55Q29sb3I6IHN0cmluZyB8IG51bGwgPSAnJztcblxuICAvKipcbiAgICogQ29uZmlnIGZvciB0aGUgYnV0dG9uIGJhZGdlIHZhcmlhdGlvblxuICAgKiBAdHlwZSB7QnV0dG9uQmFkZ2VDb25maWd9XG4gICAqIEBwcm9wZXJ0eSBiYWRnZVR5cGUgVHlwZSBvZiBiYWRnZSBvbiB0aGUgYnV0dG9uXG4gICAqIEBwcm9wZXJ0eSBiYWRnZUxhYmVsIExhYmVsIHRleHQgZm9yIHRoZSBiYWRnZVxuICAgKiBAcHJvcGVydHkgYmFkZ2VOb3RpZmljYXRpb25BbW91bnQgVGhlIGFtb3VudCBmb3Igbm90aWZpY2F0aW9uIGluIHRoZSBiYWRnZVxuICAgKi9cbiAgQElucHV0KCkgYnV0dG9uQmFkZ2VDb25maWc6IEJ1dHRvbkJhZGdlQ29uZmlnIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKlxuICAgKiBEZWZpbmVzIHRoZSBhcHBsaWNhdGlvbiB0aGVtZSB3aGVyZSBidXR0b25zIGlzIHVzZWRcbiAgICpcbiAgICogQHR5cGUge0FwcGxpY2F0aW9uVGhlbWV9XG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBIb3N0QmluZGluZygnYXR0ci50aGVtZScpXG4gIEBJbnB1dCgpXG4gIGFwcGxpY2F0aW9uVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUgPSAnbGlnaHQnO1xuXG4gIC8qKlxuICAgKlxuICAgKiBEaXNhYmxlZCBidXR0b24gc2NhbGUgb24gY2xpY2tcbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGRpc2FibGVkU2NhbGVPbkNsaWNrID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgQVJJQSBsYWJlbCBmb3IgYWNjZXNzaWJpbGl0eS5cbiAgICogVGhpcyBsYWJlbCBpcyB1c2VkIHRvIHByb3ZpZGUgYW4gYWNjZXNzaWJsZSBuYW1lIGZvciB0aGUgaW5wdXQgZWxlbWVudC5cbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEJ1dHRvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgQVJJQSByZXF1aXJlbWVudCBmb3IgYWNjZXNzaWJpbGl0eS5cbiAgICogVGhpcyBhdHRyaWJ1dGUgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGV0aGVyIGFuIGlucHV0IGZpZWxkIGlzIHJlcXVpcmVkIGZvciBmb3JtIHN1Ym1pc3Npb24uXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcmlhUmVxdWlyZWQgPSBmYWxzZTtcblxuXG4gIC8qKlxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIEFSSUEgcmVxdWlyZW1lbnQgZm9yIGFjY2Vzc2liaWxpdHkuXG4gICAqIFRoaXMgYXR0cmlidXRlIGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hldGhlciBhbiBpbnB1dCBmaWVsZCBpcyByZXF1aXJlZCBmb3IgZm9ybSBzdWJtaXNzaW9uLlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcmlhTGFiZWxsZWRieSA9ICcnO1xuXG4gIC8qKlxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIEFSSUEgcmVxdWlyZW1lbnQgZm9yIGFjY2Vzc2liaWxpdHkuXG4gICAqIFRoaXMgYXR0cmlidXRlIGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hldGhlciBhbiBpbnB1dCBmaWVsZCBpcyByZXF1aXJlZCBmb3IgZm9ybSBzdWJtaXNzaW9uLlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcmlhRGVzY3JpYmVkYnkgPSAnJztcblxuICAvKipcbiAgICogUHJldmVudHMgZGVmYXVsdCBidXR0b24gY2xpY2sgYmVoYXZpb3JcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBwcmV2ZW50RGVmYXVsdCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBHaG9zdCB2YXJpYW50IHdpdGggd2hpdGUgYmFja2dyb3VuZFxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIEJ1dHRvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGhhc0JhY2tncm91bmQgPSBmYWxzZTtcblxuICAvKipcbiAgICogU2V0cyB0b29sdGlwIHBvc2l0aW9uXG4gICAqXG4gICAqIEB0eXBlIHtUb29sdGlwUG9zaXRpb259XG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHRvb2x0aXBQb3NpdGlvbjogVG9vbHRpcFBvc2l0aW9uID0gJ2JlbG93JztcblxuICBASW5wdXQoKSByb2xlID0gJ2J1dHRvbic7XG5cbiAgQElucHV0KCkgaWNvbkZpbGxlZCA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKSBidXR0b25DbGlja0V2ZW50OiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcblxuICBAT3V0cHV0KCkgYnV0dG9uSG92ZXJFdmVudDogRXZlbnRFbWl0dGVyPEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RXZlbnQ+KCk7XG5cbiAgQFZpZXdDaGlsZCgnYnV0dG9uRWxlbWVudCcsIHsgc3RhdGljOiBmYWxzZSB9KSBidXR0b25FbGVtZW50OiBNYXRCdXR0b247XG5cblxuICBnZXQgaXNEaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kaXNhYmxlZDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUuLS1jb2xvcicpXG4gIGdldCBjb21wQ29sb3IoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Q29tcGFueUNvbG9yO1xuICB9XG5cbiAgY2xhc3NDc3M6IHN0cmluZztcbiAgc3R5bGVDc3M6IGFueTtcbiAgaXNCdXR0b25MaW5rOiBib29sZWFuO1xuICBpc0xhYmVsOiBib29sZWFuO1xuICBidXR0b25TdGF0ZTogQnV0dG9uU3RhdGU7XG4gIGhvdmVyID0gZmFsc2U7XG4gIGljb25CdXR0b25TaXplOiBJY29uQnV0dG9uU2l6ZSA9ICc0MCc7XG4gIGFsbG93QnV0dG9uVHlwZUZvclByZW1pdW06IEJ1dHRvbkNvbG9yW10gPSBbJ3NlY29uZGFyeScsICdzZWNvbmRhcnktaW52ZXJ0ZWQnLCAncHJpbWFyeScsICdnaG9zdCcsICdvdXRsaW5lZCcsICdkZXN0cnVjdGl2ZSddO1xuICBpc0ZpbGxlZEljb246IGJvb2xlYW47XG4gIGNvbG9yZWRJY29ucyA9IFsnR29vZ2xlLWluLWxpbmUnLCAnR29vZ2xlJywgJ0dvb2dsZS1maWxsZWQnXTtcbiAgbGFiZWxFbGxpcHNpcyA9IGZhbHNlO1xuICBpY29uOiBJY29uTmFtZSA9ICcnO1xuXG4gIHByaXZhdGUgc3RhdGljIG5leHRBcmlhTGFiZWxsZWRJZCA9IDA7XG4gIGFyaWFMYWJlbGxlZGJ5SWQgPSAnJztcblxuICBnZXQgdHlwZUluY2x1ZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmFsbG93QnV0dG9uVHlwZUZvclByZW1pdW0uaW5jbHVkZXModGhpcy52YXJpYW50KTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoJ0NBTk9QWVVJX0RFRkFVTFRfQVBQTElDQVRJT05fVEhFTUUnKSBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRBcHBUaGVtZTogQXBwbGljYXRpb25UaGVtZSxcbiAgKSB7XG4gICAgaWYgKGRlZmF1bHRBcHBUaGVtZSkge1xuICAgICAgdGhpcy5hcHBsaWNhdGlvblRoZW1lID0gZGVmYXVsdEFwcFRoZW1lO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2xhc3NDc3MgPSB0aGlzLnNldENzc0NsYXNzKCk7XG4gICAgdGhpcy5zdHlsZUNzcyA9IHRoaXMuc2V0Q3NzU3R5bGUoKTtcbiAgICB0aGlzLmlzQnV0dG9uTGluayA9IHRoaXMuc2hvd0J1dHRvbkxpbmsoKTtcbiAgICB0aGlzLmlzTGFiZWwgPSB0aGlzLnNob3dMYWJlbCgpO1xuICAgIHRoaXMuY3JlYXRlQXJpYUxhYmVsbGVkQnlJZCgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzWydkaXNhYmxlZCddKSB7XG4gICAgICB0aGlzLmJ1dHRvblN0YXRlID0gJ2RlZmF1bHQnO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuYXBwbGljYXRpb25UaGVtZSkge1xuICAgICAgdGhpcy5hcHBsaWNhdGlvblRoZW1lID0gJ2xpZ2h0JztcbiAgICB9XG4gICAgaWYgKGNoYW5nZXNbJ3R5cGUnXSkge1xuICAgICAgdGhpcy5pc0J1dHRvbkxpbmsgPSB0aGlzLnNob3dCdXR0b25MaW5rKCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzWydsb2FkaW5nJ10pIHtcbiAgICAgIHRoaXMuaXNMYWJlbCA9IHRoaXMuc2hvd0xhYmVsKCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzWydpY29uTmFtZSddKSB7XG4gICAgICB0aGlzLmljb24gPSBjaGFuZ2VzWydpY29uTmFtZSddLmN1cnJlbnRWYWx1ZTtcbiAgICB9XG4gICAgaWYgKFxuICAgICAgY2hhbmdlc1sndHlwZSddIHx8XG4gICAgICBjaGFuZ2VzWydmdWxsV2lkdGgnXSB8fFxuICAgICAgY2hhbmdlc1snaWNvbk5hbWUnXSB8fFxuICAgICAgY2hhbmdlc1snanVzdEljb24nXSB8fFxuICAgICAgY2hhbmdlc1snaWNvblBvc2l0aW9uJ10gfHxcbiAgICAgIGNoYW5nZXNbJ2Rpc2FibGVkJ10gfHxcbiAgICAgIGNoYW5nZXNbJ2NvbXBhbnlDb2xvciddIHx8XG4gICAgICBjaGFuZ2VzWyd2YXJpYW50J10gfHxcbiAgICAgIGNoYW5nZXNbJ2FwcGxpY2F0aW9uVGhlbWUnXVxuICAgICkge1xuICAgICAgdGhpcy5jbGFzc0NzcyA9IHRoaXMuc2V0Q3NzQ2xhc3MoKTtcbiAgICAgIHRoaXMuc3R5bGVDc3MgPSB0aGlzLnNldENzc1N0eWxlKCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzWyd2YXJpYW50J10/LmN1cnJlbnRWYWx1ZSA9PT0gJ2ljb24tYnV0dG9uJyB8fCAoY2hhbmdlc1sndmFyaWFudCddPy5jdXJyZW50VmFsdWUgPT09ICdtZW51VHJpZ2dlcicgJiYgdGhpcy5hcHBsaWNhdGlvblRoZW1lICE9PSAnY2xhc3NpYycpKSB7XG4gICAgICB0aGlzLmljb25CdXR0b25TaXplID0gdGhpcy5zZXRJY29uQnV0dG9uU2l6ZSgpO1xuICAgIH1cblxuICAgIHRoaXMuaXNGaWxsZWRJY29uID0gdGhpcy5hcHBsaWNhdGlvblRoZW1lICE9PSAnY2xhc3NpYycgJiYgKHRoaXMudmFyaWFudCA9PT0gJ3ByaW1hcnknIHx8IHRoaXMudmFyaWFudCA9PT0gJ3NlY29uZGFyeScgfHwgdGhpcy52YXJpYW50ID09PSAnc2Vjb25kYXJ5LWludmVydGVkJyk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy50b29sdGlwRWxlbWVudC5uYXRpdmVFbGVtZW50Lm9uY2xpY2sgPSBldiA9PiB7XG4gICAgICBldi5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgZXYuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfTtcbiAgICBpZiAodGhpcy52YXJpYW50ID09PSAnaWNvbi1idXR0b24nICYmICF0aGlzLnRvb2x0aXApIHtcbiAgICAgIGNvbnNvbGUud2FybigndWktYnV0dG9uIEJ1dHRvbkNvbXBvbmVudFxcbiAgICBbdG9vbHRpcF0gaXMgcmVxdWlyZWQgZm9yIFt0eXBlXSBpY29uLWJ1dHRvbiEnKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudmFyaWFudCA9PT0gJ2Rlc3RydWN0aXZlJyAmJiAhdGhpcy5pY29uICYmICF0aGlzLmxvYWRpbmcgJiYgdGhpcy5hcHBsaWNhdGlvblRoZW1lICE9PSAnY2xhc3NpYycpIHtcbiAgICAgIGNvbnNvbGUud2FybigndWktYnV0dG9uIEJ1dHRvbkNvbXBvbmVudFxcbiAgW2ljb25dIGlzIHJlcXVpcmVkIGZvciBbdHlwZV0gZGVzdHJ1Y3RpdmUnKTtcbiAgICB9XG4gIH1cblxuICBidXR0b25DbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wcmV2ZW50RGVmYXVsdCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cbiAgICB0aGlzLmJ1dHRvbkNsaWNrRXZlbnQuZW1pdChldmVudCk7XG4gIH1cblxuICBidXR0b25Ib3ZlcihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ21vdXNlZW50ZXInKSB7XG4gICAgICB0aGlzLmhvdmVyID0gdHJ1ZTtcbiAgICAgIHRoaXMuYnV0dG9uSG92ZXJFdmVudC5lbWl0KGV2ZW50KTtcbiAgICAgIHRoaXMuYnV0dG9uU3RhdGUgPSAnaG92ZXInO1xuICAgICAgaWYgKHRoaXMuc2hvdWxkQ2hhbmdlRmlsbGVkU3RhdHVzICYmIHRoaXMuaWNvbikge1xuICAgICAgICB0aGlzLmljb24gPSB0aGlzLmdldEljb25OYW1lKHRoaXMuaWNvbk5hbWUgYXMgSWNvbk5hbWUsICctZmlsbGVkJyk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaG92ZXIgPSBmYWxzZTtcbiAgICAgIGlmICh0aGlzLnNob3VsZENoYW5nZUZpbGxlZFN0YXR1cyAmJiB0aGlzLmljb24pIHtcbiAgICAgICAgdGhpcy5pY29uID0gdGhpcy5pY29uTmFtZSBhcyBJY29uTmFtZTtcbiAgICAgIH1cbiAgICAgIHRoaXMuYnV0dG9uU3RhdGUgPSAnZGVmYXVsdCc7XG4gICAgfVxuXG4gICAgdGhpcy5zdHlsZUNzcyA9IHRoaXMuc2V0Q3NzU3R5bGUoKTtcbiAgfVxuXG4gIC8vU2hvdyBvciBoaWRlIGxhYmVsXG4gIHNob3dMYWJlbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMubG9hZGluZztcbiAgfVxuXG4gIC8vU2V0IGNzcyBjbGFzcyBhY2NvcmRpbmcgaW5wdXRzXG4gIHNldENzc0NsYXNzKCk6IHN0cmluZyB7XG4gICAgY29uc3Qgd2lkdGggPSB0aGlzLmZ1bGxXaWR0aCA/ICdmdWxsLXdpZHRoJyA6ICcnO1xuICAgIGNvbnN0IGhhc0ljb24gPSB0aGlzLmljb25OYW1lID09PSBudWxsID8gJycgOiAnaWNvbic7XG4gICAgY29uc3QganVzdEljb24gPSB0aGlzLmp1c3RJY29uIHx8IHRoaXMudmFyaWFudCA9PT0gJ2ljb24tYnV0dG9uJyA/ICdvbmx5LWljb24nIDogJyc7XG4gICAgY29uc3QgaWNvblBvc2l0aW9uID0gdGhpcy5pY29uUG9zaXRpb24gPT09IHVuZGVmaW5lZCA/ICcnIDogdGhpcy5pY29uUG9zaXRpb247XG4gICAgY29uc3QgZGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkICYmIHRoaXMudmFyaWFudCA9PT0gJ3ByaW1hcnknID8gJ3ByaW1hcnktZGlzYWJsZWQnIDogJyc7XG4gICAgY29uc3QgdmFyaWFudCA9IHRoaXMudmFyaWFudCA9PT0gJ2dob3N0JyAmJiB0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJyA/ICdvdXRsaW5lZCcgOiB0aGlzLnZhcmlhbnQ7XG4gICAgY29uc3QgY29tcGFueUNvbG9yID0gdGhpcy5jb21wYW55Q29sb3IgPyAnaGFzLWNvbXBhbnktY29sb3InIDogJyc7XG4gICAgcmV0dXJuIGAke3RoaXMuc2l6ZX0gJHtpY29uUG9zaXRpb259ICR7dmFyaWFudH0gJHt3aWR0aH0gJHtoYXNJY29ufSAke2p1c3RJY29ufSAke2Rpc2FibGVkfSAke2NvbXBhbnlDb2xvcn0gJHt0aGlzLmFwcGxpY2F0aW9uVGhlbWV9LXRoZW1lYDtcbiAgfVxuXG4gIHNldENzc1N0eWxlKCk6IGFueSB7XG4gICAgdGhpcy5idXR0b25TdGF0ZSA9IHRoaXMuZGlzYWJsZWQgPyAnZGlzYWJsZWQnIDogdGhpcy5idXR0b25TdGF0ZTtcbiAgICBjb25zdCBzdHlsZU9iajogYW55ID0ge307XG5cbiAgICBpZiAoKHRoaXMudmFyaWFudCA9PT0gJ3ByaW1hcnknIHx8IHRoaXMudmFyaWFudCA9PT0gJ3RleHQnIHx8IHRoaXMudmFyaWFudCA9PT0gJ3RleHQtaW5saW5lJykgJiYgdGhpcy5hcHBsaWNhdGlvblRoZW1lICE9PSAnY2xhc3NpYycgJiYgKHRoaXMuYnV0dG9uU3RhdGUgPT09ICdob3ZlcicgfHwgdGhpcy5idXR0b25TdGF0ZSA9PT0gJ3ByZXNzZWQnKSkge1xuICAgICAgc3R5bGVPYmpbdGhpcy52YXJpYW50ID09PSAncHJpbWFyeScgPyAnYmFja2dyb3VuZC1jb2xvcicgOiAnY29sb3InXSA9IGFkanVzdExpZ2h0bmVzcyh0aGlzLmdldENvbXBhbnlDb2xvciwgdGhpcy5idXR0b25TdGF0ZSk7XG4gICAgICBpZiAodGhpcy52YXJpYW50ID09PSAndGV4dCcgfHwgdGhpcy52YXJpYW50ID09PSAndGV4dC1pbmxpbmUnKSB7XG4gICAgICAgIHN0eWxlT2JqWyctLWFjdGl2ZS1jb2xvciddID0gdGhpcy5jb21wYW55Q29sb3IgPyBhZGp1c3RMaWdodG5lc3ModGhpcy5nZXRDb21wYW55Q29sb3IsIHRoaXMuYnV0dG9uU3RhdGUpIDogJyM2NjY2NjYnO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoKHRoaXMudmFyaWFudCA9PT0gJ3ByaW1hcnknIHx8IHRoaXMudmFyaWFudCA9PT0gJ3RleHQnIHx8IHRoaXMudmFyaWFudCA9PT0gJ3RleHQtaW5saW5lJykgJiYgdGhpcy5hcHBsaWNhdGlvblRoZW1lID09PSAnY2xhc3NpYycgJiYgdGhpcy5idXR0b25TdGF0ZSAhPT0gJ2RlZmF1bHQnKSB7XG4gICAgICBzdHlsZU9ialt0aGlzLnZhcmlhbnQgPT09ICdwcmltYXJ5JyA/ICdiYWNrZ3JvdW5kLWNvbG9yJyA6ICdjb2xvciddID0gYWRqdXN0TGlnaHRuZXNzKHRoaXMuZ2V0Q29tcGFueUNvbG9yLCB0aGlzLmJ1dHRvblN0YXRlLCAnY2xhc3NpYycpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5nZXRDb21wYW55Q29sb3IgJiYgKHRoaXMudmFyaWFudCA9PT0gJ2xpbmsnIHx8IHRoaXMudmFyaWFudCA9PT0gJ3RlcnRpYXJ5JyB8fCB0aGlzLnZhcmlhbnQgPT09ICdpY29uLWJ1dHRvbicpKSB7XG4gICAgICBzdHlsZU9ialsnY29sb3InXSA9IHRoaXMuZ2V0Q29tcGFueUNvbG9yO1xuICAgIH0gZWxzZSBpZiAodGhpcy5oYXNCYWNrZ3JvdW5kKSB7XG4gICAgICBzdHlsZU9ialsnLS1naG9zdC1iYWNrZ3JvdW5kJ10gPSAnI2ZmZmZmZic7XG4gICAgfVxuICAgIHJldHVybiBzdHlsZU9iajtcbiAgfVxuXG4gIC8vU2hvdyBvciBoaWRlIHNwaW5uZXJcbiAgZ2V0IHNob3dTcGlubmVyKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGlzTm90VGFiID0gdGhpcy52YXJpYW50ICE9PSAndGFiJztcbiAgICBjb25zdCBpc05vdExpbmsgPSB0aGlzLnZhcmlhbnQgIT09ICdsaW5rJztcbiAgICBjb25zdCBpc0xvYWRpbmcgPSB0aGlzLmxvYWRpbmcgPT09IHRydWU7XG4gICAgcmV0dXJuIGlzTG9hZGluZyAmJiBpc05vdFRhYiAmJiBpc05vdExpbms7XG4gIH1cblxuICAvL1Nob3cgYnV0dG9uIHdpdGggPGJ1dHRvbj4gb3IgPGE+IHRhZ1xuICBzaG93QnV0dG9uTGluaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYW50ICE9PSAnbGluayc7XG4gIH1cblxuICBzZXRJY29uQnV0dG9uU2l6ZSgpOiBJY29uQnV0dG9uU2l6ZSB7XG4gICAgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gJ2JpZycgPyAnNDAnIDogdGhpcy5zaXplID09PSAnc21hbGwnID8gJzI0JyA6ICczMic7XG4gIH1cblxuICBvblByZXNzZWQoZXY6IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2LnR5cGUgPT09ICdtb3VzZWRvd24nKSB7XG4gICAgICB0aGlzLmJ1dHRvblN0YXRlID0gJ3ByZXNzZWQnO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmJ1dHRvblN0YXRlID0gdGhpcy5ob3ZlciA/ICdob3ZlcicgOiAnZGVmYXVsdCc7XG4gICAgfVxuXG4gICAgdGhpcy5zdHlsZUNzcyA9IHRoaXMuc2V0Q3NzU3R5bGUoKTtcbiAgfVxuXG4gIGZvY3VzKG9yaWdpbj86IEZvY3VzT3JpZ2luKTogdm9pZCB7XG4gICAgdGhpcy5idXR0b25FbGVtZW50LmZvY3VzKG9yaWdpbik7XG4gIH1cblxuICBnZXQgZ2V0Q29tcGFueUNvbG9yKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY29tcGFueUNvbG9yIHx8ICgodGhpcy52YXJpYW50ID09PSAndGV4dCcgfHwgdGhpcy52YXJpYW50ID09PSAndGV4dC1pbmxpbmUnKSA/IHRoaXMuYXBwbGljYXRpb25UaGVtZSA9PT0gJ2RhcmsnID8gJyNmZmZmZmYnIDogJyMyNDI0MjQnIDogKHRoaXMuYXBwbGljYXRpb25UaGVtZSA9PT0gJ2NsYXNzaWMnID8gJyM0NkE5OTcnIDogJyNENDEwQUEnKSk7XG4gIH1cblxuICBnZXQgc2hvdWxkQ2hhbmdlRmlsbGVkU3RhdHVzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmFwcGxpY2F0aW9uVGhlbWUgIT09ICdjbGFzc2ljJyAmJiB0aGlzLnZhcmlhbnQgIT09ICdwcmltYXJ5JyAmJiB0aGlzLnZhcmlhbnQgIT09ICdzZWNvbmRhcnknICYmICF0aGlzLmNvbG9yZWRJY29ucy5pbmNsdWRlcyh0aGlzLmljb24pO1xuICB9XG5cbiAgb25LZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LmtleSA9PT0gJyAnKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuICAgICAgdGFyZ2V0LmNsaWNrKCk7XG4gICAgfVxuXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VudGVyJyB8fCBldmVudC5rZXkgPT09ICcgJykge1xuICAgICAgdGhpcy5idXR0b25TdGF0ZSA9ICdwcmVzc2VkJztcbiAgICAgIHRoaXMuc3R5bGVDc3MgPSB0aGlzLnNldENzc1N0eWxlKCk7XG4gICAgfVxuICB9XG5cbiAgb25LZXl1cChldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicgfHwgZXZlbnQua2V5ID09PSAnICcpIHtcbiAgICAgIHRoaXMuYnV0dG9uU3RhdGUgPSB0aGlzLmhvdmVyID8gJ2hvdmVyJyA6ICdkZWZhdWx0JztcbiAgICAgIHRoaXMuc3R5bGVDc3MgPSB0aGlzLnNldENzc1N0eWxlKCk7XG4gICAgfVxuICB9XG5cbiAgb25MYWJlbEVsbGlwc2lzQ2hhbmdlKHN0YXRlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5sYWJlbEVsbGlwc2lzID0gc3RhdGU7XG4gIH1cblxuICBnZXRJY29uTmFtZShpY29uTmFtZTogc3RyaW5nLCBkZWZhdWx0VmFsdWU6IHN0cmluZyk6IEljb25OYW1lIHtcbiAgICBpZiAoaWNvbk5hbWUuaW5jbHVkZXMoJ2ZpbGxlZCcpKSB7XG4gICAgICByZXR1cm4gaWNvbk5hbWUucmVwbGFjZSgvZmlsbGVkLywgJ2luLWxpbmUnKSBhcyBJY29uTmFtZTtcbiAgICB9IGVsc2UgaWYgKGljb25OYW1lLmluY2x1ZGVzKCdpbi1saW5lJykpIHtcbiAgICAgIHJldHVybiBpY29uTmFtZS5yZXBsYWNlKC9pbi1saW5lLywgJ2ZpbGxlZCcpIGFzIEljb25OYW1lO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gKGljb25OYW1lICsgZGVmYXVsdFZhbHVlKSBhcyBJY29uTmFtZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUFyaWFMYWJlbGxlZEJ5SWQoKTogdm9pZCB7XG4gICAgY29uc3QgbGFiZWxsZWRCeVZhbHVlID0gdGhpcy52YXJpYW50ID09PSAnbGluaycgPyAnbGFiZWxsZWRieS1saW5rJyA6ICdsYWJlbGxlZGJ5JztcbiAgICB0aGlzLmFyaWFMYWJlbGxlZGJ5SWQgPSBgJHtsYWJlbGxlZEJ5VmFsdWV9LXVpQnV0dG9uLSR7KytCdXR0b25Db21wb25lbnQubmV4dEFyaWFMYWJlbGxlZElkfWA7XG4gIH1cbn1cbiIsIjxkaXYgI3Rvb2x0aXBFbGVtZW50IGNsYXNzPVwidG9vbHRpcFwiXG4gICAgIFttYXRUb29sdGlwXT1cInRvb2x0aXAgPyB0b29sdGlwIDogbGFiZWxFbGxpcHNpcyA/IGxhYmVsIDogJydcIlxuICAgICBbbWF0VG9vbHRpcENsYXNzXT1cImFwcGxpY2F0aW9uVGhlbWVcIlxuPjwvZGl2PlxuPGRpdlxuICBjbGFzcz1cImJ1dHRvbi13cmFwcGVyXCJcbiAgW25nQ2xhc3NdPVwieyAnZnVsbC13aWR0aCc6IGZ1bGxXaWR0aCwgJ3JvdW5kZWQtaWNvbic6IGFwcGxpY2F0aW9uVGhlbWUgIT09ICdjbGFzc2ljJyAmJiBpY29uICYmICFsYWJlbCwgbGluazogIWlzQnV0dG9uTGluayB9XCJcbj5cbiAgPGRpdiBjbGFzcz1cImJ1dHRvbi1jb250YWluZXJcIlxuICAgICAgIFtuZ0NsYXNzXT1cInsgJ2Rpc2FibGVkJzogZGlzYWJsZWQsICdidXR0b24tc2NhbGUnOiBidXR0b25TdGF0ZSA9PT0gJ3ByZXNzZWQnICYmIGFwcGxpY2F0aW9uVGhlbWUgIT09ICdjbGFzc2ljJyAmJiAhZGlzYWJsZWRTY2FsZU9uQ2xpY2sgfVwiXG4gID5cbiAgICAgPHNwYW4gKm5nSWY9XCJpc1ByZW1pdW0gJiYgdHlwZUluY2x1ZGVkXCIgY2xhc3M9XCJyaWdodC10b3BcIj5cbiAgICAgPGltZyBbYXR0ci5zcmNdPVwiJy9pbWFnZXMvcHJlbWl1bS5zdmcnXCIgW2FsdF09XCIncHJlbWl1bS1pY29uJ1wiPlxuICAgPC9zcGFuPlxuICAgIDx1aS1iYWRnZVxuICAgICAgaWQ9XCJiYWRnZVwiXG4gICAgICAqbmdJZj1cImJ1dHRvbkJhZGdlQ29uZmlnPy5iYWRnZVR5cGVcIlxuICAgICAgW3JlYnJhbmRDb2xvcl09XCJidXR0b25CYWRnZUNvbmZpZz8ucmVicmFuZENvbG9yID8/ICdicmFuZCdcIlxuICAgICAgW3ZhcmlhbnRdPVwiYnV0dG9uQmFkZ2VDb25maWchLmJhZGdlVHlwZSFcIlxuICAgICAgW2xhYmVsXT1cImJ1dHRvbkJhZGdlQ29uZmlnPy5iYWRnZUxhYmVsID8/ICcnXCJcbiAgICAgIFtub3RpZmljYXRpb25zQW1vdW50XT1cImJ1dHRvbkJhZGdlQ29uZmlnPy5iYWRnZU5vdGlmaWNhdGlvbkFtb3VudCA/PyAwXCJcbiAgICAgIGNsYXNzPVwicmlnaHQtdG9wXCJcbiAgICAgIFtuZ0NsYXNzXT1cIltcbiAgICAgICAgYnV0dG9uQmFkZ2VDb25maWc/LmJhZGdlVHlwZSA9PT0gJ3ByaW1hcnknID8gJ2JhZGdlLXByaW1hcnknIDogJycsXG4gICAgICAgIGJ1dHRvbkJhZGdlQ29uZmlnPy5iYWRnZVR5cGUgPT09ICdub3RpZmljYXRpb24nID8gJ2JhZGdlLW5vdGlmaWNhdGlvbicgOiAnJyxcbiAgICAgICAgdmFyaWFudFxuICAgICAgXVwiXG4gICAgPjwvdWktYmFkZ2U+XG4gICAgPGJ1dHRvblxuICAgICAgW3N0eWxlXT1cIictLWljb24tYnV0dG9uLXNpemU6JyArIGljb25CdXR0b25TaXplICsgJ3B4J1wiXG4gICAgICBbbmdDbGFzc109XCJjbGFzc0Nzc1wiXG4gICAgICBbbmdTdHlsZV09XCJzdHlsZUNzc1wiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgKGNsaWNrKT1cImJ1dHRvbkNsaWNrKCRldmVudClcIlxuICAgICAgKG1vdXNlbGVhdmUpPVwiYnV0dG9uSG92ZXIoJGV2ZW50KVwiXG4gICAgICAobW91c2VlbnRlcik9XCJidXR0b25Ib3ZlcigkZXZlbnQpXCJcbiAgICAgIChtb3VzZWRvd24pPVwib25QcmVzc2VkKCRldmVudClcIlxuICAgICAgKG1vdXNldXApPVwib25QcmVzc2VkKCRldmVudClcIlxuICAgICAgKGtleWRvd24pPVwib25LZXlkb3duKCRldmVudClcIlxuICAgICAgKGtleXVwKT1cIm9uS2V5dXAoJGV2ZW50KVwiXG4gICAgICAqbmdJZj1cImlzQnV0dG9uTGlua1wiXG4gICAgICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cImFyaWFSZXF1aXJlZFwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkYnlJZFwiXG4gICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cIidkZXNjcmliZWRieSdcIlxuICAgICAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbdHlwZV09XCJ0eXBlXCJcbiAgICAgIFtkaXNhYmxlUmlwcGxlXT1cImFwcGxpY2F0aW9uVGhlbWUgIT09ICdjbGFzc2ljJ1wiXG4gICAgICBbbWF0VG9vbHRpcF09XCJ0b29sdGlwID8gdG9vbHRpcCA6IGxhYmVsRWxsaXBzaXMgPyBsYWJlbCA6ICcnXCJcbiAgICAgIFttYXRUb29sdGlwQ2xhc3NdPVwiYXBwbGljYXRpb25UaGVtZVwiXG4gICAgICBbbWF0VG9vbHRpcFBvc2l0aW9uXT1cInRvb2x0aXBQb3NpdGlvblwiXG4gICAgICAjYnV0dG9uRWxlbWVudFxuICAgICAgW2F0dHIucm9sZV09XCJyb2xlXCJcbiAgICAgIG1hdC1mbGF0LWJ1dHRvbj5cbiAgICAgIDxzcGFuIGlkPVwiZGVzY3JpYmVkYnlcIiBbc3R5bGUuZGlzcGxheV09XCInbm9uZSdcIj5cbiAgICAgICAge3sgKGlzUHJlbWl1bSA/IChsYWJlbCArICcgJyArICgnQlVUVE9OLlBSRU1JVU1fRkVBVFVSRScgfCB1aVRyYW5zbGF0ZSB8IGFzeW5jKSkgOiBhcmlhRGVzY3JpYmVkYnkpIH19XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhbiBbaWRdPVwiYXJpYUxhYmVsbGVkYnlJZFwiIFtzdHlsZS5kaXNwbGF5XT1cIidub25lJ1wiPlxuICAgICAgICB7eyBhcmlhTGFiZWxsZWRieSB9fVxuICAgICAgPC9zcGFuPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3dTcGlubmVyOyBlbHNlIGljb25zXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic3Bpbm5lci13cmFwcGVyXCI+XG4gICAgICAgICAgPG1hdC1zcGlubmVyIGNsYXNzPVwicG9zaXRpb24tc3Bpbm5lclwiIGFyaWEtbGFiZWw9XCJsb2FkaW5nXCIgbW9kZT1cImluZGV0ZXJtaW5hdGVcIiBkaWFtZXRlcj1cIjI0XCI+PC9tYXQtc3Bpbm5lcj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2ljb25zPlxuICAgICAgPHNwYW4gY2xhc3M9XCJpY29uLW9ubHktd3JhcHBlclwiICpuZ0lmPVwianVzdEljb24gJiYgISFpY29uXCI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgY2xhc3M9XCJpY29uIG9ubHlcIlxuICAgICAgICAgIHJvbGU9XCJsYWJlbFwiXG4gICAgICAgID5cbiAgICAgICAgICA8dWktaWNvblxuICAgICAgICAgICAgW2NvbG9yXT1cInZhcmlhbnQgPT09ICdnaG9zdC1haScgPyAnYWknIDogJ2luaGVyaXQnXCJcbiAgICAgICAgICAgIFthcHBsaWNhdGlvblRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIlxuICAgICAgICAgICAgW25hbWVdPVwiaWNvblwiXG4gICAgICAgICAgICBbZmlsbGVkXT1cImlzRmlsbGVkSWNvbiB8fCBpY29uRmlsbGVkXCJcbiAgICAgICAgICAgIFt1c2VGdWxsSWNvbk5hbWVdPVwidGhpcy52YXJpYW50ID09PSAncHJpbWFyeScgfHwgdGhpcy52YXJpYW50ID09PSAnc2Vjb25kYXJ5J1wiXG4gICAgICAgICAgICBbc2l6ZV09XCJzaXplID09PSAnc21hbGwnID8gJzE2JyA6ICcyNCdcIlxuICAgICAgICAgID48L3VpLWljb24+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8c3BhbiBjbGFzcz1cImljb24tbGFiZWwtd3JhcHBlclwiIFtuZ0NsYXNzXT1cInsnY2VudGVyLXRleHQnOiBpY29uTmFtZSA9PT0gJyd9XCIgKm5nSWY9XCIhanVzdEljb25cIj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cImljb25cIlxuICAgICAgICAgICpuZ0lmPVwiaWNvblBvc2l0aW9uID09PSAnbGVmdCcgJiYgISFpY29uTmFtZVwiXG4gICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDx1aS1pY29uXG4gICAgICAgICAgICBbY29sb3JdPVwidmFyaWFudCA9PT0gJ2dob3N0LWFpJyA/ICdhaScgOiAnaW5oZXJpdCdcIlxuICAgICAgICAgICAgW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiXG4gICAgICAgICAgICBbbmFtZV09XCJpY29uXCJcbiAgICAgICAgICAgIFtmaWxsZWRdPVwiaXNGaWxsZWRJY29uIHx8IGljb25GaWxsZWRcIlxuICAgICAgICAgICAgW3VzZUZ1bGxJY29uTmFtZV09XCJ0aGlzLnZhcmlhbnQgPT09ICdwcmltYXJ5JyB8fCB0aGlzLnZhcmlhbnQgPT09ICdzZWNvbmRhcnknXCJcbiAgICAgICAgICAgIFtzaXplXT1cInNpemUgPT09ICdzbWFsbCcgPyAnMTYnIDogJzI0J1wiXG4gICAgICAgICAgPjwvdWktaWNvbj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICpuZ0lmPVwiaXNMYWJlbFwiXG4gICAgICAgICAgY2xhc3M9XCJsYWJlbFwiXG4gICAgICAgICAgaWQ9XCJsYWJlbFwiXG4gICAgICAgICAgdWlFbGxpcHNlVGV4dFxuICAgICAgICAgIFtpc011bHRpbGluZV09XCJ0cnVlXCJcbiAgICAgICAgICAob25DaGFuZ2VUZXh0U3RhdGUpPVwib25MYWJlbEVsbGlwc2lzQ2hhbmdlKCRldmVudClcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgbGFiZWwgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImljb25cIiAqbmdJZj1cImljb25Qb3NpdGlvbiA9PT0gJ3JpZ2h0JyAmJiAhIWljb25cIiBhcmlhLWhpZGRlbj1cInRydWVcIj48dWktaWNvblxuICAgICAgICAgIFtjb2xvcl09XCJ2YXJpYW50ID09PSAnZ2hvc3QtYWknID8gJ2FpJyA6ICdpbmhlcml0J1wiXG4gICAgICAgICAgW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiXG4gICAgICAgICAgW25hbWVdPVwiaWNvblwiXG4gICAgICAgICAgW2ZpbGxlZF09XCJpc0ZpbGxlZEljb24gfHwgaWNvbkZpbGxlZFwiXG4gICAgICAgICAgW3NpemVdPVwic2l6ZSA9PT0gJ3NtYWxsJyA/ICcxNicgOiAnMjQnXCJcbiAgICAgICAgICBbdXNlRnVsbEljb25OYW1lXT1cInRoaXMudmFyaWFudCA9PT0gJ3ByaW1hcnknIHx8IHRoaXMudmFyaWFudCA9PT0gJ3NlY29uZGFyeSdcIj48L3VpLWljb24+PC9zcGFuPlxuICAgICAgPC9zcGFuPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2J1dHRvbj5cbiAgICA8YVxuICAgICAgI2J1dHRvbkVsZW1lbnRcbiAgICAgIFtuZ0NsYXNzXT1cImNsYXNzQ3NzXCJcbiAgICAgIFtuZ1N0eWxlXT1cInN0eWxlQ3NzXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAoY2xpY2spPVwiYnV0dG9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAobW91c2VlbnRlcik9XCJidXR0b25Ib3ZlcigkZXZlbnQpXCJcbiAgICAgIChtb3VzZWxlYXZlKT1cImJ1dHRvbkhvdmVyKCRldmVudClcIlxuICAgICAgKG1vdXNlZG93bik9XCJvblByZXNzZWQoJGV2ZW50KVwiXG4gICAgICAobW91c2V1cCk9XCJvblByZXNzZWQoJGV2ZW50KVwiXG4gICAgICAoa2V5ZG93bik9XCJvbktleWRvd24oJGV2ZW50KTtcIlxuICAgICAgKGtleXVwKT1cIm9uS2V5dXAoJGV2ZW50KVwiXG4gICAgICBbZGlzYWJsZVJpcHBsZV09XCJ0cnVlXCJcbiAgICAgICpuZ0lmPVwiIWlzQnV0dG9uTGlua1wiXG4gICAgICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cImFyaWFSZXF1aXJlZFwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkYnlJZFwiXG4gICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cIidkZXNjcmliZWRieS1saW5rJ1wiXG4gICAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFttYXRUb29sdGlwXT1cInRvb2x0aXAgPyB0b29sdGlwIDogbGFiZWxFbGxpcHNpcyA/IGxhYmVsIDogJydcIlxuICAgICAgW21hdFRvb2x0aXBDbGFzc109XCJhcHBsaWNhdGlvblRoZW1lXCJcbiAgICAgIHJvbGU9XCJsaW5rXCJcbiAgICAgIFtocmVmXT1cInVybFwiXG4gICAgICBbdGFyZ2V0XT1cInVybFRhcmdldFwiXG4gICAgICBtYXQtZmxhdC1idXR0b24+XG4gICAgICA8c3BhbiBpZD1cImRlc2NyaWJlZGJ5LWxpbmtcIiBbc3R5bGUuZGlzcGxheV09XCInbm9uZSdcIj5cbiAgICAgICAge3sgYXJpYURlc2NyaWJlZGJ5IH19XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhbiBbaWRdPVwiYXJpYUxhYmVsbGVkYnlJZFwiIFtzdHlsZS5kaXNwbGF5XT1cIidub25lJ1wiPlxuICAgICAgICB7eyBhcmlhTGFiZWxsZWRieSB9fVxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJpY29uLWxhYmVsLXdyYXBwZXJcIj5cbiAgICAgICAge3sgbGFiZWwgfX1cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2E+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|