@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,118 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Inject, Input, Optional, Output, } from '@angular/core';
|
|
2
|
-
import { RadialProgressSizeEnum, RadialProgressSizeValue, } from './radial-progress.model';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/material/progress-spinner";
|
|
5
|
-
import * as i2 from "../button/button.component";
|
|
6
|
-
export class RadialProgressComponent {
|
|
7
|
-
constructor(defaultAppTheme) {
|
|
8
|
-
this.defaultAppTheme = defaultAppTheme;
|
|
9
|
-
/**
|
|
10
|
-
* The size of the component. Defaults to 'small'.
|
|
11
|
-
* @type {RadialProgressSize}
|
|
12
|
-
* @memberof RadialProgressComponent
|
|
13
|
-
*/
|
|
14
|
-
this.size = RadialProgressSizeEnum.SMALL;
|
|
15
|
-
/**
|
|
16
|
-
* The current value of the progress. Defaults to 0.
|
|
17
|
-
* @type {number}
|
|
18
|
-
* @memberof RadialProgressComponent
|
|
19
|
-
*/
|
|
20
|
-
this.value = 0;
|
|
21
|
-
/**
|
|
22
|
-
* The value of the total progress. Used to set the cap and used for percentage calculations. Defaults to 0.
|
|
23
|
-
* @type {number}
|
|
24
|
-
* @memberof RadialProgressComponent
|
|
25
|
-
*/
|
|
26
|
-
this.total = 0;
|
|
27
|
-
/**
|
|
28
|
-
* @type {number}
|
|
29
|
-
* @memberof RadialProgressComponent
|
|
30
|
-
*/
|
|
31
|
-
this.variant = 'number';
|
|
32
|
-
/**
|
|
33
|
-
* @type {boolean}
|
|
34
|
-
* @memberof RadialProgressComponent
|
|
35
|
-
*/
|
|
36
|
-
this.showPercentageSign = true;
|
|
37
|
-
/**
|
|
38
|
-
* Icon for icon button
|
|
39
|
-
* @type {number}
|
|
40
|
-
* @memberof RadialProgressComponent
|
|
41
|
-
*/
|
|
42
|
-
this.icon = '';
|
|
43
|
-
/**
|
|
44
|
-
* The tooltip that is displayed on hover. Required for icon-button
|
|
45
|
-
* @type {number}
|
|
46
|
-
* @memberof RadialProgressComponent
|
|
47
|
-
*/
|
|
48
|
-
this.buttonTooltip = '';
|
|
49
|
-
/**
|
|
50
|
-
*
|
|
51
|
-
* Defines the application theme
|
|
52
|
-
*
|
|
53
|
-
* @type {ApplicationTheme}
|
|
54
|
-
* @memberof ButtonComponent
|
|
55
|
-
*/
|
|
56
|
-
this.applicationTheme = 'light';
|
|
57
|
-
this.buttonClicked = new EventEmitter();
|
|
58
|
-
this.radialProgressSize = RadialProgressSizeEnum;
|
|
59
|
-
if (defaultAppTheme) {
|
|
60
|
-
this.applicationTheme = defaultAppTheme;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
ngOnChanges(changes) {
|
|
64
|
-
if (!changes['companyColor']) {
|
|
65
|
-
this.companyColor = this.applicationTheme === 'classic' ? '#46A997' : '#D410AA';
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
get progressSize() {
|
|
69
|
-
return this.size === RadialProgressSizeEnum.SMALL ? RadialProgressSizeValue.SMALL : RadialProgressSizeValue.LARGE;
|
|
70
|
-
}
|
|
71
|
-
get percentage() {
|
|
72
|
-
return Math.round(this.total ? (this.value * 100) / this.total : 0);
|
|
73
|
-
}
|
|
74
|
-
get strokeWidth() {
|
|
75
|
-
return this.variant === 'thin' || this.variant === 'empty-thin' ? 4 : 8;
|
|
76
|
-
}
|
|
77
|
-
get displayValue() {
|
|
78
|
-
return this.showPercentageSign ? `${this.percentage}%` : `${this.percentage}`;
|
|
79
|
-
}
|
|
80
|
-
onButtonClick(ev) {
|
|
81
|
-
this.buttonClicked.emit(ev);
|
|
82
|
-
}
|
|
83
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadialProgressComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
84
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: RadialProgressComponent, selector: "ui-radial-progress", inputs: { size: "size", value: "value", total: "total", variant: "variant", showPercentageSign: "showPercentageSign", icon: "icon", buttonTooltip: "buttonTooltip", companyColor: "companyColor", applicationTheme: "applicationTheme" }, outputs: { buttonClicked: "buttonClicked" }, host: { properties: { "style.--color": "this.companyColor" } }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"radial-progress-container\"\n [attr.theme]=\"applicationTheme\"\n [style.width]=\"progressSize + 'px'\"\n [style.height]=\"progressSize + 'px'\"\n>\n <div class=\"background\" [style.border-width]=\"strokeWidth + 'px'\"></div>\n\n <mat-progress-spinner\n [strokeWidth]=\"strokeWidth\"\n [diameter]=\"progressSize\"\n [value]=\"percentage\"\n ></mat-progress-spinner>\n\n <div\n class=\"inner-container\"\n [class.small-font]=\"(variant === 'thin' || variant === 'empty-thin') && percentage !== 100\"\n [class.tiny-font]=\"percentage === 100 && showPercentageSign && variant === 'thin'\"\n >\n @if (variant === 'empty' || variant === 'empty-thin') {\n <div>{{ '-' }}</div>\n } @else if (variant === 'icon-button' && size !== 'small') {\n <ui-button\n [tooltip]=\"buttonTooltip\"\n [iconName]=\"icon\"\n [variant]=\"'icon-button'\"\n (click)=\"onButtonClick($event)\"\n [applicationTheme]=\"applicationTheme\"\n ></ui-button>\n } @else if (size === radialProgressSize.LARGE || variant === 'thin') {\n <div>\n {{ displayValue }}\n </div>\n }\n </div>\n</div>\n", styles: [".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}:host .radial-progress-container{position:relative}:host .radial-progress-container .inner-container,:host .radial-progress-container .background{position:absolute;top:0;left:0;width:100%;height:100%}:host .radial-progress-container .background{border:solid #E0E0E0;border-radius:50%}:host .radial-progress-container .inner-container{display:flex;align-items:center;justify-content:center;color:#276678;font-size:14px;font-weight:700}:host .radial-progress-container .inner-container.small-font{font-size:12px}:host .radial-progress-container .inner-container.tiny-font{font-size:10px}:host .radial-progress-container ::ng-deep .mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,:host .radial-progress-container .mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:var(--color);stroke-linecap:round}:host .radial-progress-container[theme=dark] .inner-container,:host .radial-progress-container[theme=light] .inner-container{color:#242424}\n"], dependencies: [{ kind: "component", type: i1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i2.ButtonComponent, selector: "ui-button", inputs: ["size", "variant", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value", "tooltip", "isPremium", "type", "companyColor", "buttonBadgeConfig", "applicationTheme", "disabledScaleOnClick", "ariaLabel", "ariaRequired", "ariaLabelledby", "ariaDescribedby", "preventDefault", "hasBackground", "tooltipPosition", "role", "iconFilled"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
85
|
-
}
|
|
86
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadialProgressComponent, decorators: [{
|
|
87
|
-
type: Component,
|
|
88
|
-
args: [{ selector: 'ui-radial-progress', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"radial-progress-container\"\n [attr.theme]=\"applicationTheme\"\n [style.width]=\"progressSize + 'px'\"\n [style.height]=\"progressSize + 'px'\"\n>\n <div class=\"background\" [style.border-width]=\"strokeWidth + 'px'\"></div>\n\n <mat-progress-spinner\n [strokeWidth]=\"strokeWidth\"\n [diameter]=\"progressSize\"\n [value]=\"percentage\"\n ></mat-progress-spinner>\n\n <div\n class=\"inner-container\"\n [class.small-font]=\"(variant === 'thin' || variant === 'empty-thin') && percentage !== 100\"\n [class.tiny-font]=\"percentage === 100 && showPercentageSign && variant === 'thin'\"\n >\n @if (variant === 'empty' || variant === 'empty-thin') {\n <div>{{ '-' }}</div>\n } @else if (variant === 'icon-button' && size !== 'small') {\n <ui-button\n [tooltip]=\"buttonTooltip\"\n [iconName]=\"icon\"\n [variant]=\"'icon-button'\"\n (click)=\"onButtonClick($event)\"\n [applicationTheme]=\"applicationTheme\"\n ></ui-button>\n } @else if (size === radialProgressSize.LARGE || variant === 'thin') {\n <div>\n {{ displayValue }}\n </div>\n }\n </div>\n</div>\n", styles: [".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}:host .radial-progress-container{position:relative}:host .radial-progress-container .inner-container,:host .radial-progress-container .background{position:absolute;top:0;left:0;width:100%;height:100%}:host .radial-progress-container .background{border:solid #E0E0E0;border-radius:50%}:host .radial-progress-container .inner-container{display:flex;align-items:center;justify-content:center;color:#276678;font-size:14px;font-weight:700}:host .radial-progress-container .inner-container.small-font{font-size:12px}:host .radial-progress-container .inner-container.tiny-font{font-size:10px}:host .radial-progress-container ::ng-deep .mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,:host .radial-progress-container .mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:var(--color);stroke-linecap:round}:host .radial-progress-container[theme=dark] .inner-container,:host .radial-progress-container[theme=light] .inner-container{color:#242424}\n"] }]
|
|
89
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
90
|
-
type: Optional
|
|
91
|
-
}, {
|
|
92
|
-
type: Inject,
|
|
93
|
-
args: ['CANOPYUI_DEFAULT_APPLICATION_THEME']
|
|
94
|
-
}] }], propDecorators: { size: [{
|
|
95
|
-
type: Input
|
|
96
|
-
}], value: [{
|
|
97
|
-
type: Input
|
|
98
|
-
}], total: [{
|
|
99
|
-
type: Input
|
|
100
|
-
}], variant: [{
|
|
101
|
-
type: Input
|
|
102
|
-
}], showPercentageSign: [{
|
|
103
|
-
type: Input
|
|
104
|
-
}], icon: [{
|
|
105
|
-
type: Input
|
|
106
|
-
}], buttonTooltip: [{
|
|
107
|
-
type: Input
|
|
108
|
-
}], companyColor: [{
|
|
109
|
-
type: HostBinding,
|
|
110
|
-
args: ['style.--color']
|
|
111
|
-
}, {
|
|
112
|
-
type: Input
|
|
113
|
-
}], applicationTheme: [{
|
|
114
|
-
type: Input
|
|
115
|
-
}], buttonClicked: [{
|
|
116
|
-
type: Output
|
|
117
|
-
}] } });
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaWFsLXByb2dyZXNzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9yYWRpYWwtcHJvZ3Jlc3MvcmFkaWFsLXByb2dyZXNzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9yYWRpYWwtcHJvZ3Jlc3MvcmFkaWFsLXByb2dyZXNzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFFTCxzQkFBc0IsRUFDdEIsdUJBQXVCLEdBRXhCLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFVakMsTUFBTSxPQUFPLHVCQUF1QjtJQXNFbEMsWUFDNkUsZUFBaUM7UUFBakMsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBdEU5Rzs7OztXQUlHO1FBQ00sU0FBSSxHQUF1QixzQkFBc0IsQ0FBQyxLQUFLLENBQUM7UUFDakU7Ozs7V0FJRztRQUNNLFVBQUssR0FBRyxDQUFDLENBQUM7UUFDbkI7Ozs7V0FJRztRQUNNLFVBQUssR0FBRyxDQUFDLENBQUM7UUFFbkI7OztXQUdHO1FBQ00sWUFBTyxHQUEwQixRQUFRLENBQUM7UUFFbkQ7OztXQUdHO1FBQ00sdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBRW5DOzs7O1dBSUc7UUFDTSxTQUFJLEdBQWEsRUFBRSxDQUFDO1FBRTdCOzs7O1dBSUc7UUFDTSxrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQWE1Qjs7Ozs7O1dBTUc7UUFDTSxxQkFBZ0IsR0FBcUIsT0FBTyxDQUFDO1FBRTVDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUUxQyx1QkFBa0IsR0FBRyxzQkFBc0IsQ0FBQztRQUtwRCxJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxlQUFlLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDbEYsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFjLFlBQVk7UUFDeEIsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUM7SUFDcEgsQ0FBQztJQUVELElBQWMsVUFBVTtRQUN0QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxJQUFjLFdBQVc7UUFDdkIsT0FBTyxJQUFJLENBQUMsT0FBTyxLQUFLLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELElBQWMsWUFBWTtRQUN4QixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ2hGLENBQUM7SUFFUyxhQUFhLENBQUMsRUFBUztRQUMvQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM5QixDQUFDOytHQXRHVSx1QkFBdUIsa0JBdUVaLG9DQUFvQzttR0F2RS9DLHVCQUF1QixzYUMxQnBDLDZwQ0FvQ0E7OzRGRFZhLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDRSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTs7MEJBeUU1QyxRQUFROzswQkFBSSxNQUFNOzJCQUFDLG9DQUFvQzt5Q0FqRWpELElBQUk7c0JBQVosS0FBSztnQkFNRyxLQUFLO3NCQUFiLEtBQUs7Z0JBTUcsS0FBSztzQkFBYixLQUFLO2dCQU1HLE9BQU87c0JBQWYsS0FBSztnQkFNRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBT0csSUFBSTtzQkFBWixLQUFLO2dCQU9HLGFBQWE7c0JBQXJCLEtBQUs7Z0JBV04sWUFBWTtzQkFGWCxXQUFXO3VCQUFDLGVBQWU7O3NCQUMzQixLQUFLO2dCQVVHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBSYWRpYWxQcm9ncmVzc1NpemUsXG4gIFJhZGlhbFByb2dyZXNzU2l6ZUVudW0sXG4gIFJhZGlhbFByb2dyZXNzU2l6ZVZhbHVlLFxuICBSYWRpYWxQcm9ncmVzc1ZhcmlhbnQsXG59IGZyb20gJy4vcmFkaWFsLXByb2dyZXNzLm1vZGVsJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uVGhlbWUgfSBmcm9tICcuLi8uLi9tb2RlbHMvYXBwbGljYXRpb24tdGhlbWUubW9kZWwnO1xuaW1wb3J0IHsgSWNvbk5hbWUgfSBmcm9tICcuLi9pY29uL2ljb24ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd1aS1yYWRpYWwtcHJvZ3Jlc3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vcmFkaWFsLXByb2dyZXNzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmFkaWFsLXByb2dyZXNzLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBSYWRpYWxQcm9ncmVzc0NvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBvZiB0aGUgY29tcG9uZW50LiBEZWZhdWx0cyB0byAnc21hbGwnLlxuICAgKiBAdHlwZSB7UmFkaWFsUHJvZ3Jlc3NTaXplfVxuICAgKiBAbWVtYmVyb2YgUmFkaWFsUHJvZ3Jlc3NDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHNpemU6IFJhZGlhbFByb2dyZXNzU2l6ZSA9IFJhZGlhbFByb2dyZXNzU2l6ZUVudW0uU01BTEw7XG4gIC8qKlxuICAgKiBUaGUgY3VycmVudCB2YWx1ZSBvZiB0aGUgcHJvZ3Jlc3MuIERlZmF1bHRzIHRvIDAuXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqIEBtZW1iZXJvZiBSYWRpYWxQcm9ncmVzc0NvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgdmFsdWUgPSAwO1xuICAvKipcbiAgICogVGhlIHZhbHVlIG9mIHRoZSB0b3RhbCBwcm9ncmVzcy4gVXNlZCB0byBzZXQgdGhlIGNhcCBhbmQgdXNlZCBmb3IgcGVyY2VudGFnZSBjYWxjdWxhdGlvbnMuIERlZmF1bHRzIHRvIDAuXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqIEBtZW1iZXJvZiBSYWRpYWxQcm9ncmVzc0NvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgdG90YWwgPSAwO1xuXG4gIC8qKlxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKiBAbWVtYmVyb2YgUmFkaWFsUHJvZ3Jlc3NDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHZhcmlhbnQ6IFJhZGlhbFByb2dyZXNzVmFyaWFudCA9ICdudW1iZXInO1xuXG4gIC8qKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIFJhZGlhbFByb2dyZXNzQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBzaG93UGVyY2VudGFnZVNpZ24gPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBJY29uIGZvciBpY29uIGJ1dHRvblxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKiBAbWVtYmVyb2YgUmFkaWFsUHJvZ3Jlc3NDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGljb246IEljb25OYW1lID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoZSB0b29sdGlwIHRoYXQgaXMgZGlzcGxheWVkIG9uIGhvdmVyLiBSZXF1aXJlZCBmb3IgaWNvbi1idXR0b25cbiAgICogQHR5cGUge251bWJlcn1cbiAgICogQG1lbWJlcm9mIFJhZGlhbFByb2dyZXNzQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBidXR0b25Ub29sdGlwID0gJyc7XG5cbiAgLyoqXG4gICAqIENvbG9yIG9mIHRoZSBwcm9ncmVzcyBiYXIuXG4gICAqIERlZmF1bHRzIHRvIFRlc3QgR29yaWxsYSBwcmltYXJ5IGNvbG9yLlxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgUmFkaWFsUHJvZ3Jlc3NDb21wb25lbnRcbiAgICovXG4gIEBIb3N0QmluZGluZygnc3R5bGUuLS1jb2xvcicpXG4gIEBJbnB1dCgpXG4gIGNvbXBhbnlDb2xvcjogc3RyaW5nIHwgbnVsbDtcblxuICAvKipcbiAgICpcbiAgICogRGVmaW5lcyB0aGUgYXBwbGljYXRpb24gdGhlbWVcbiAgICpcbiAgICogQHR5cGUge0FwcGxpY2F0aW9uVGhlbWV9XG4gICAqIEBtZW1iZXJvZiBCdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGFwcGxpY2F0aW9uVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUgPSAnbGlnaHQnO1xuXG4gIEBPdXRwdXQoKSBidXR0b25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcblxuICBwcm90ZWN0ZWQgcmFkaWFsUHJvZ3Jlc3NTaXplID0gUmFkaWFsUHJvZ3Jlc3NTaXplRW51bTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KCdDQU5PUFlVSV9ERUZBVUxUX0FQUExJQ0FUSU9OX1RIRU1FJykgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0QXBwVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWVcbiAgKSB7XG4gICAgaWYgKGRlZmF1bHRBcHBUaGVtZSkge1xuICAgICAgdGhpcy5hcHBsaWNhdGlvblRoZW1lID0gZGVmYXVsdEFwcFRoZW1lO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoIWNoYW5nZXNbJ2NvbXBhbnlDb2xvciddKSB7XG4gICAgICB0aGlzLmNvbXBhbnlDb2xvciA9IHRoaXMuYXBwbGljYXRpb25UaGVtZSA9PT0gJ2NsYXNzaWMnID8gJyM0NkE5OTcnIDogJyNENDEwQUEnO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgcHJvZ3Jlc3NTaXplKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gUmFkaWFsUHJvZ3Jlc3NTaXplRW51bS5TTUFMTCA/IFJhZGlhbFByb2dyZXNzU2l6ZVZhbHVlLlNNQUxMIDogUmFkaWFsUHJvZ3Jlc3NTaXplVmFsdWUuTEFSR0U7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHBlcmNlbnRhZ2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5yb3VuZCh0aGlzLnRvdGFsID8gKHRoaXMudmFsdWUgKiAxMDApIC8gdGhpcy50b3RhbCA6IDApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCBzdHJva2VXaWR0aCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnZhcmlhbnQgPT09ICd0aGluJyB8fCB0aGlzLnZhcmlhbnQgPT09ICdlbXB0eS10aGluJyA/IDQgOiA4O1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCBkaXNwbGF5VmFsdWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5zaG93UGVyY2VudGFnZVNpZ24gPyBgJHt0aGlzLnBlcmNlbnRhZ2V9JWAgOiBgJHt0aGlzLnBlcmNlbnRhZ2V9YDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvbkJ1dHRvbkNsaWNrKGV2OiBFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuYnV0dG9uQ2xpY2tlZC5lbWl0KGV2KTtcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cInJhZGlhbC1wcm9ncmVzcy1jb250YWluZXJcIlxuICBbYXR0ci50aGVtZV09XCJhcHBsaWNhdGlvblRoZW1lXCJcbiAgW3N0eWxlLndpZHRoXT1cInByb2dyZXNzU2l6ZSArICdweCdcIlxuICBbc3R5bGUuaGVpZ2h0XT1cInByb2dyZXNzU2l6ZSArICdweCdcIlxuPlxuICA8ZGl2IGNsYXNzPVwiYmFja2dyb3VuZFwiIFtzdHlsZS5ib3JkZXItd2lkdGhdPVwic3Ryb2tlV2lkdGggKyAncHgnXCI+PC9kaXY+XG5cbiAgPG1hdC1wcm9ncmVzcy1zcGlubmVyXG4gICAgW3N0cm9rZVdpZHRoXT1cInN0cm9rZVdpZHRoXCJcbiAgICBbZGlhbWV0ZXJdPVwicHJvZ3Jlc3NTaXplXCJcbiAgICBbdmFsdWVdPVwicGVyY2VudGFnZVwiXG4gID48L21hdC1wcm9ncmVzcy1zcGlubmVyPlxuXG4gIDxkaXZcbiAgICBjbGFzcz1cImlubmVyLWNvbnRhaW5lclwiXG4gICAgW2NsYXNzLnNtYWxsLWZvbnRdPVwiKHZhcmlhbnQgPT09ICd0aGluJyB8fCB2YXJpYW50ID09PSAnZW1wdHktdGhpbicpICYmIHBlcmNlbnRhZ2UgIT09IDEwMFwiXG4gICAgW2NsYXNzLnRpbnktZm9udF09XCJwZXJjZW50YWdlID09PSAxMDAgJiYgc2hvd1BlcmNlbnRhZ2VTaWduICYmIHZhcmlhbnQgPT09ICd0aGluJ1wiXG4gID5cbiAgICBAaWYgKHZhcmlhbnQgPT09ICdlbXB0eScgfHwgdmFyaWFudCA9PT0gJ2VtcHR5LXRoaW4nKSB7XG4gICAgICA8ZGl2Pnt7ICctJyB9fTwvZGl2PlxuICAgIH0gQGVsc2UgaWYgKHZhcmlhbnQgPT09ICdpY29uLWJ1dHRvbicgJiYgc2l6ZSAhPT0gJ3NtYWxsJykge1xuICAgICAgPHVpLWJ1dHRvblxuICAgICAgICBbdG9vbHRpcF09XCJidXR0b25Ub29sdGlwXCJcbiAgICAgICAgW2ljb25OYW1lXT1cImljb25cIlxuICAgICAgICBbdmFyaWFudF09XCInaWNvbi1idXR0b24nXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQnV0dG9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgIFthcHBsaWNhdGlvblRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIlxuICAgICAgPjwvdWktYnV0dG9uPlxuICAgIH0gQGVsc2UgaWYgKHNpemUgPT09IHJhZGlhbFByb2dyZXNzU2l6ZS5MQVJHRSB8fCB2YXJpYW50ID09PSAndGhpbicpIHtcbiAgICAgIDxkaXY+XG4gICAgICAgIHt7IGRpc3BsYXlWYWx1ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgfVxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { RadialProgressComponent } from './radial-progress.component';
|
|
4
|
-
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
5
|
-
import { ButtonComponentModule } from '../button/button.component.module';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class RadialProgressComponentModule {
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadialProgressComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: RadialProgressComponentModule, declarations: [RadialProgressComponent], imports: [CommonModule, MatProgressSpinnerModule, ButtonComponentModule], exports: [RadialProgressComponent] }); }
|
|
10
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadialProgressComponentModule, imports: [CommonModule, MatProgressSpinnerModule, ButtonComponentModule] }); }
|
|
11
|
-
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadialProgressComponentModule, decorators: [{
|
|
13
|
-
type: NgModule,
|
|
14
|
-
args: [{
|
|
15
|
-
declarations: [RadialProgressComponent],
|
|
16
|
-
exports: [RadialProgressComponent],
|
|
17
|
-
imports: [CommonModule, MatProgressSpinnerModule, ButtonComponentModule],
|
|
18
|
-
}]
|
|
19
|
-
}] });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaWFsLXByb2dyZXNzLmNvbXBvbmVudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvcmFkaWFsLXByb2dyZXNzL3JhZGlhbC1wcm9ncmVzcy5jb21wb25lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQU8xRSxNQUFNLE9BQU8sNkJBQTZCOytHQUE3Qiw2QkFBNkI7Z0hBQTdCLDZCQUE2QixpQkFKekIsdUJBQXVCLGFBRTVCLFlBQVksRUFBRSx3QkFBd0IsRUFBRSxxQkFBcUIsYUFEN0QsdUJBQXVCO2dIQUd0Qiw2QkFBNkIsWUFGOUIsWUFBWSxFQUFFLHdCQUF3QixFQUFFLHFCQUFxQjs7NEZBRTVELDZCQUE2QjtrQkFMekMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztvQkFDdkMsT0FBTyxFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ2xDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSx3QkFBd0IsRUFBRSxxQkFBcUIsQ0FBQztpQkFDekUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJhZGlhbFByb2dyZXNzQ29tcG9uZW50IH0gZnJvbSAnLi9yYWRpYWwtcHJvZ3Jlc3MuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLXNwaW5uZXInO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbUmFkaWFsUHJvZ3Jlc3NDb21wb25lbnRdLFxuICBleHBvcnRzOiBbUmFkaWFsUHJvZ3Jlc3NDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsIEJ1dHRvbkNvbXBvbmVudE1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFJhZGlhbFByb2dyZXNzQ29tcG9uZW50TW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export var RadialProgressSizeValue;
|
|
2
|
-
(function (RadialProgressSizeValue) {
|
|
3
|
-
RadialProgressSizeValue[RadialProgressSizeValue["LARGE"] = 64] = "LARGE";
|
|
4
|
-
RadialProgressSizeValue[RadialProgressSizeValue["SMALL"] = 40] = "SMALL";
|
|
5
|
-
})(RadialProgressSizeValue || (RadialProgressSizeValue = {}));
|
|
6
|
-
export var RadialProgressSizeEnum;
|
|
7
|
-
(function (RadialProgressSizeEnum) {
|
|
8
|
-
RadialProgressSizeEnum["LARGE"] = "large";
|
|
9
|
-
RadialProgressSizeEnum["SMALL"] = "small";
|
|
10
|
-
})(RadialProgressSizeEnum || (RadialProgressSizeEnum = {}));
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaWFsLXByb2dyZXNzLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGdvLWNhbm9weS11aS9jb21wb25lbnRzL3JhZGlhbC1wcm9ncmVzcy9yYWRpYWwtcHJvZ3Jlc3MubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFOLElBQVksdUJBR1g7QUFIRCxXQUFZLHVCQUF1QjtJQUNqQyx3RUFBVSxDQUFBO0lBQ1Ysd0VBQVUsQ0FBQTtBQUNaLENBQUMsRUFIVyx1QkFBdUIsS0FBdkIsdUJBQXVCLFFBR2xDO0FBRUQsTUFBTSxDQUFOLElBQVksc0JBR1g7QUFIRCxXQUFZLHNCQUFzQjtJQUNoQyx5Q0FBZSxDQUFBO0lBQ2YseUNBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSFcsc0JBQXNCLEtBQXRCLHNCQUFzQixRQUdqQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFJhZGlhbFByb2dyZXNzU2l6ZSA9ICdsYXJnZScgfCAnc21hbGwnO1xuXG5leHBvcnQgZW51bSBSYWRpYWxQcm9ncmVzc1NpemVWYWx1ZSB7XG4gIExBUkdFID0gNjQsXG4gIFNNQUxMID0gNDAsXG59XG5cbmV4cG9ydCBlbnVtIFJhZGlhbFByb2dyZXNzU2l6ZUVudW0ge1xuICBMQVJHRSA9ICdsYXJnZScsXG4gIFNNQUxMID0gJ3NtYWxsJyxcbn1cblxuZXhwb3J0IHR5cGUgUmFkaWFsUHJvZ3Jlc3NWYXJpYW50ID0gJ251bWJlcicgfCAnaWNvbi1idXR0b24nIHwgJ3RoaW4nIHwgJ2VtcHR5JyB8ICdlbXB0eS10aGluJztcbiJdfQ==
|
|
@@ -1,344 +0,0 @@
|
|
|
1
|
-
/* eslint-disable no-underscore-dangle */
|
|
2
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Host, HostBinding, HostListener, Inject, Input, Optional, Output, Self, ViewChild, } from '@angular/core';
|
|
3
|
-
import { takeUntilDestroyed } from "@angular/core/rxjs-interop";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/forms";
|
|
6
|
-
import * as i2 from "@angular/cdk/a11y";
|
|
7
|
-
import * as i3 from "@angular/common";
|
|
8
|
-
import * as i4 from "@angular/material/radio";
|
|
9
|
-
import * as i5 from "../../directives/ellipse-text.directive";
|
|
10
|
-
import * as i6 from "@angular/material/tooltip";
|
|
11
|
-
export class RadioButtonComponent {
|
|
12
|
-
onHostClick(event) {
|
|
13
|
-
if (event.target?.classList?.value?.includes?.('mat-mdc-radio-button') || event.target?.classList?.value?.includes?.('mdc-form-field')) {
|
|
14
|
-
this.radioElement._inputElement.nativeElement.click();
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
get selected() {
|
|
18
|
-
return this._selected;
|
|
19
|
-
}
|
|
20
|
-
set selected(selected) {
|
|
21
|
-
this._selected = selected;
|
|
22
|
-
}
|
|
23
|
-
constructor(defaultAppTheme, ngControl, hostNgControl, destroyRef, focusMonitor, ngZone, cdr) {
|
|
24
|
-
this.defaultAppTheme = defaultAppTheme;
|
|
25
|
-
this.ngControl = ngControl;
|
|
26
|
-
this.hostNgControl = hostNgControl;
|
|
27
|
-
this.destroyRef = destroyRef;
|
|
28
|
-
this.focusMonitor = focusMonitor;
|
|
29
|
-
this.ngZone = ngZone;
|
|
30
|
-
this.cdr = cdr;
|
|
31
|
-
/**
|
|
32
|
-
* Determines whether the radio button is disabled.
|
|
33
|
-
* Default: false.
|
|
34
|
-
*
|
|
35
|
-
* @type {boolean}
|
|
36
|
-
* @memberof RadioButtonComponent
|
|
37
|
-
*/
|
|
38
|
-
this.disabled = false;
|
|
39
|
-
/**
|
|
40
|
-
* Determines whether the radio button is checked.
|
|
41
|
-
* Default: false.
|
|
42
|
-
*
|
|
43
|
-
* @type {boolean}
|
|
44
|
-
* @memberof RadioButtonComponent
|
|
45
|
-
*/
|
|
46
|
-
//@Input() selected = false;
|
|
47
|
-
this._selected = false;
|
|
48
|
-
/**
|
|
49
|
-
* Determines whether the radio button can be unchecked.
|
|
50
|
-
* Default: false.
|
|
51
|
-
*
|
|
52
|
-
* @type {boolean}
|
|
53
|
-
* @memberof RadioButtonComponent
|
|
54
|
-
*/
|
|
55
|
-
this.allowUnselect = false;
|
|
56
|
-
/**
|
|
57
|
-
* Determines the radio button color.
|
|
58
|
-
* Default: Test Gorilla primary color.
|
|
59
|
-
*
|
|
60
|
-
* @type {string}
|
|
61
|
-
* @memberof RadioButtonComponent
|
|
62
|
-
*/
|
|
63
|
-
this.companyColor = null;
|
|
64
|
-
/**
|
|
65
|
-
* Used to group radios for unique selection.
|
|
66
|
-
*
|
|
67
|
-
* @type {string}
|
|
68
|
-
* @memberof RadioButtonComponent
|
|
69
|
-
*/
|
|
70
|
-
this.name = '';
|
|
71
|
-
/**
|
|
72
|
-
* Text content will be applied to the input element if present.
|
|
73
|
-
*
|
|
74
|
-
* @type {string}
|
|
75
|
-
* @memberof RadioButtonComponent
|
|
76
|
-
*/
|
|
77
|
-
this.label = '';
|
|
78
|
-
/**
|
|
79
|
-
* Determines whether the radio button is a multiple choice cell.
|
|
80
|
-
* Default: false
|
|
81
|
-
*
|
|
82
|
-
* @type {boolean}
|
|
83
|
-
* @memberof RadioButtonComponent
|
|
84
|
-
*/
|
|
85
|
-
this.multiple = false;
|
|
86
|
-
/**
|
|
87
|
-
*
|
|
88
|
-
* Defines the application theme
|
|
89
|
-
*
|
|
90
|
-
* @type {ApplicationTheme}
|
|
91
|
-
* @memberof RadioButtonComponent
|
|
92
|
-
*/
|
|
93
|
-
this.applicationTheme = 'light';
|
|
94
|
-
/**
|
|
95
|
-
* A string representing the ARIA requirement for accessibility.
|
|
96
|
-
* This attribute is used to indicate whether an input field is required for form submission.
|
|
97
|
-
* @type {boolean}
|
|
98
|
-
* @memberof RadioButtonComponent
|
|
99
|
-
*/
|
|
100
|
-
this.ariaRequired = false;
|
|
101
|
-
/**
|
|
102
|
-
* Defines if checkbox has error
|
|
103
|
-
*
|
|
104
|
-
* @type {boolean}
|
|
105
|
-
* @memberof RadioButtonComponent
|
|
106
|
-
*/
|
|
107
|
-
this.hasError = false;
|
|
108
|
-
/**
|
|
109
|
-
* A string representing the ARIA requirement for accessibility.
|
|
110
|
-
* This attribute is used to indicate whether an input field is required for form submission.
|
|
111
|
-
* @type {string}
|
|
112
|
-
* @memberof RadioButtonComponent
|
|
113
|
-
*/
|
|
114
|
-
this.ariaLabelledby = '';
|
|
115
|
-
/**
|
|
116
|
-
* A string representing the ARIA requirement for accessibility.
|
|
117
|
-
* This attribute is used to indicate whether an input field is required for form submission.
|
|
118
|
-
* @type {string}
|
|
119
|
-
* @memberof RadioButtonComponent
|
|
120
|
-
*/
|
|
121
|
-
this.ariaDescribedby = '';
|
|
122
|
-
/**
|
|
123
|
-
* Truncate text if it is too long
|
|
124
|
-
* @type {boolean}
|
|
125
|
-
* @memberof RadioButtonComponent
|
|
126
|
-
*/
|
|
127
|
-
this.truncateText = false;
|
|
128
|
-
/**
|
|
129
|
-
* Text alignment
|
|
130
|
-
* @type {'center' | 'top'}
|
|
131
|
-
* @memberof RadioButtonComponent
|
|
132
|
-
*/
|
|
133
|
-
this.alignment = 'center';
|
|
134
|
-
/**
|
|
135
|
-
* Sets the tab index for the checkbox component.
|
|
136
|
-
* This determines the order in which elements receive focus when the user navigates through them using the Tab key.
|
|
137
|
-
* Default value is 0.
|
|
138
|
-
*
|
|
139
|
-
* @type {number}
|
|
140
|
-
* @memberof RadioButtonComponent
|
|
141
|
-
*/
|
|
142
|
-
this.tabIndex = 0;
|
|
143
|
-
/**
|
|
144
|
-
* Show tooltip when label is truncated
|
|
145
|
-
* @type {boolean}
|
|
146
|
-
* @memberof RadioButtonComponent
|
|
147
|
-
*/
|
|
148
|
-
this.hideTooltipOnEllipsis = false;
|
|
149
|
-
/**
|
|
150
|
-
* Event emitted when the checked state of the radio button changes.
|
|
151
|
-
*
|
|
152
|
-
* @type {boolean}
|
|
153
|
-
* @memberof RadioButtonComponent
|
|
154
|
-
*/
|
|
155
|
-
this.changeRadio = new EventEmitter();
|
|
156
|
-
this.showTooltip = false;
|
|
157
|
-
this.origin = null;
|
|
158
|
-
this.onChange = (_) => { };
|
|
159
|
-
/**
|
|
160
|
-
* @ignore
|
|
161
|
-
*/
|
|
162
|
-
this.onTouch = () => { };
|
|
163
|
-
if (defaultAppTheme) {
|
|
164
|
-
this.applicationTheme = defaultAppTheme;
|
|
165
|
-
}
|
|
166
|
-
if (this.ngControl != null) {
|
|
167
|
-
this.ngControl.valueAccessor = this;
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
ngOnInit() {
|
|
171
|
-
this.checkHost();
|
|
172
|
-
this.classMultiple = this.setClass();
|
|
173
|
-
}
|
|
174
|
-
ngOnChanges(changes) {
|
|
175
|
-
if (changes['selected']) {
|
|
176
|
-
this.classMultiple = this.setClass();
|
|
177
|
-
}
|
|
178
|
-
this.setCompanyColor();
|
|
179
|
-
}
|
|
180
|
-
ngAfterViewInit() {
|
|
181
|
-
this.radioElement._inputElement.nativeElement.setAttribute('role', 'radio');
|
|
182
|
-
this.radioElement._inputElement.nativeElement.onclick = () => {
|
|
183
|
-
this.clickRadio();
|
|
184
|
-
};
|
|
185
|
-
this.focusMonitor.monitor(this.radioElement._inputElement.nativeElement).pipe(takeUntilDestroyed(this.destroyRef)).subscribe(origin => this.ngZone.run(() => {
|
|
186
|
-
this.origin = origin;
|
|
187
|
-
this.cdr.markForCheck();
|
|
188
|
-
this.onFocus(origin === 'keyboard');
|
|
189
|
-
}));
|
|
190
|
-
}
|
|
191
|
-
ngOnDestroy() {
|
|
192
|
-
this.focusMonitor.stopMonitoring(this.radioElement._inputElement.nativeElement);
|
|
193
|
-
}
|
|
194
|
-
//Click method
|
|
195
|
-
clickRadio() {
|
|
196
|
-
if (this.allowUnselect) {
|
|
197
|
-
this.radioElement.checked = !this.radioElement.checked;
|
|
198
|
-
this._selected = this.radioElement.checked;
|
|
199
|
-
this.classMultiple = this.setClass();
|
|
200
|
-
this.selected = this.radioElement.checked;
|
|
201
|
-
this.changeRadio?.emit({ optionName: this.radioElement.value, optionChecked: this.radioElement.checked });
|
|
202
|
-
}
|
|
203
|
-
else {
|
|
204
|
-
this.selected = this.radioElement.checked;
|
|
205
|
-
this.changeRadio.emit({ optionName: this.radioElement.value, optionChecked: true });
|
|
206
|
-
}
|
|
207
|
-
if (this.disabled) {
|
|
208
|
-
this._selected = false;
|
|
209
|
-
this.changeRadio.emit({ optionName: '', optionChecked: false });
|
|
210
|
-
}
|
|
211
|
-
this.onChange(this._selected);
|
|
212
|
-
}
|
|
213
|
-
writeValue(value) {
|
|
214
|
-
if (typeof value === 'boolean' || value === this.value) {
|
|
215
|
-
this.selected = value;
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
registerOnChange(fn) {
|
|
219
|
-
this.onChange = fn;
|
|
220
|
-
}
|
|
221
|
-
registerOnTouched(fn) {
|
|
222
|
-
this.onTouch = fn;
|
|
223
|
-
}
|
|
224
|
-
setDisabledState(isDisabled) {
|
|
225
|
-
this.disabled = isDisabled;
|
|
226
|
-
}
|
|
227
|
-
//Set class for multiple radio
|
|
228
|
-
setClass() {
|
|
229
|
-
if (this.multiple) {
|
|
230
|
-
return this._selected ? 'multiple-checked' : 'multiple-unchecked';
|
|
231
|
-
}
|
|
232
|
-
return '';
|
|
233
|
-
}
|
|
234
|
-
onLabelEllipsisChange(isEllipsis) {
|
|
235
|
-
this.showTooltip = isEllipsis && !this.hideTooltipOnEllipsis;
|
|
236
|
-
}
|
|
237
|
-
checkHost() {
|
|
238
|
-
if (this.hostNgControl) {
|
|
239
|
-
this.selected = this.value === this.hostNgControl.value;
|
|
240
|
-
this.hostNgControl.valueChanges?.pipe(takeUntilDestroyed(this.destroyRef)).subscribe((value) => {
|
|
241
|
-
this.selected = value === this.value;
|
|
242
|
-
this.classMultiple = this.setClass();
|
|
243
|
-
});
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
setCompanyColor() {
|
|
247
|
-
this.companyColor = this.companyColor ? this.companyColor : this.applicationTheme === 'classic' ? '#46A997' : '#D410AA';
|
|
248
|
-
}
|
|
249
|
-
onFocus(isFocus) {
|
|
250
|
-
setTimeout(() => {
|
|
251
|
-
if (this.tooltipElement) {
|
|
252
|
-
if (this.showTooltip && isFocus) {
|
|
253
|
-
this.tooltipElement.show();
|
|
254
|
-
}
|
|
255
|
-
else {
|
|
256
|
-
this.tooltipElement.hide();
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
}, 0);
|
|
260
|
-
}
|
|
261
|
-
focus() {
|
|
262
|
-
this.radioElement.focus();
|
|
263
|
-
}
|
|
264
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadioButtonComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }, { token: i1.NgControl, optional: true, self: true }, { token: i1.NgControl, host: true, optional: true }, { token: i0.DestroyRef }, { token: i2.FocusMonitor }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
265
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: RadioButtonComponent, selector: "ui-radio-button", inputs: { disabled: "disabled", selected: "selected", allowUnselect: "allowUnselect", companyColor: "companyColor", name: "name", label: "label", multiple: "multiple", value: "value", applicationTheme: "applicationTheme", ariaLabel: "ariaLabel", ariaRequired: "ariaRequired", hasError: "hasError", ariaLabelledby: "ariaLabelledby", ariaDescribedby: "ariaDescribedby", truncateText: "truncateText", alignment: "alignment", tabIndex: "tabIndex", hideTooltipOnEllipsis: "hideTooltipOnEllipsis" }, outputs: { changeRadio: "changeRadio" }, host: { listeners: { "focus": "radioElement.focus()", "click": "onHostClick($event)" }, properties: { "attr.tabindex": "null", "attr.aria-label": "null", "attr.aria-labelledby": "null", "attr.aria-describedby": "null", "style.--color": "this.companyColor" } }, viewQueries: [{ propertyName: "radioElement", first: true, predicate: ["radio"], descendants: true }, { propertyName: "tooltipElement", first: true, predicate: ["tooltip"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n #radioContainer\n [class]=\"multiple ? 'radio-container' : 'radio'\"\n [class.multiple-disabled]=\"disabled && multiple\"\n [ngClass]=\"classMultiple\"\n [attr.alignment]=\"alignment\"\n [attr.truncate-text]=\"truncateText\"\n [attr.theme]=\"applicationTheme\"\n [attr.hasError]=\"hasError\"\n (keydown.enter)=\"clickRadio(); radioContainer.focus()\"\n (keydown.space)=\"clickRadio(); radioContainer.focus()\"\n>\n <mat-radio-button\n #radio\n [checked]=\"selected\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [value]=\"value\"\n class=\"radio-button\"\n [required]=\"ariaRequired\"\n [aria-label]=\"ariaLabel\"\n [aria-labelledby]=\"ariaLabelledby ? ariaLabelledby : label\"\n [aria-describedby]=\"ariaDescribedby\"\n (keydown.enter)=\"$event.preventDefault()\"\n (keydown.space)=\"$event.preventDefault()\"\n [tabIndex]=\"tabIndex\"\n >\n @if (label) {\n <span\n #tooltip=\"matTooltip\"\n class=\"label\"\n uiEllipseText\n (onChangeTextState)=\"onLabelEllipsisChange($event)\"\n [matTooltip]=\"showTooltip ? label : ''\"\n [matTooltipClass]=\"applicationTheme\"\n >{{ label }}</span>\n }\n <ng-content select=\"[radio-label]\"></ng-content>\n </mat-radio-button>\n</div>\n", styles: [".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}.mat-mdc-radio-button.mat-accent{--mat-radio-checked-ripple-color: var(--color)!important;--mdc-radio-selected-focus-icon-color: var(--color)!important;--mdc-radio-selected-pressed-icon-color: var(--color)!important}::ng-deep .mat-mdc-radio-checked .mdc-radio__outer-circle{border-color:var(--color)!important}::ng-deep .mat-mdc-radio-checked .mdc-radio__inner-circle{background-color:var(--color)!important;border-color:var(--color)!important}::ng-deep .mat-mdc-radio-button .mat-ripple-element{background-color:var(--color)!important}::ng-deep .mat-mdc-radio-button.mat-radio-disabled.mat-radio-checked .mdc-radio__outer-circle,.mat-radio-button.mat-radio-disabled .mdc-radio__outer-circle{border-color:#888!important}::ng-deep .mat-mdc-radio-button.mat-radio-disabled .mdc-radio__inner-circle{background-color:#888!important}[theme=dark] .mat-mdc-radio-button,[theme=light] .mat-mdc-radio-button{width:100%!important}[theme=dark] ::ng-deep .mdc-form-field,[theme=light] ::ng-deep .mdc-form-field{width:100%}[theme=dark] .mat-mdc-radio-button.mat-accent,[theme=light] .mat-mdc-radio-button.mat-accent{--mdc-radio-unselected-icon-color: #242424 !important}[theme=dark] ::ng-deep .mdc-radio.mdc-radio--disabled,[theme=light] ::ng-deep .mdc-radio.mdc-radio--disabled{--mdc-radio-disabled-unselected-icon-color: #919191;--mdc-radio-disabled-selected-icon-opacity: 1;--mdc-radio-disabled-unselected-icon-opacity: 1;--color: #919191}[theme=dark] ::ng-deep .mdc-radio.mdc-radio--disabled .mdc-radio__background,[theme=light] ::ng-deep .mdc-radio.mdc-radio--disabled .mdc-radio__background{background:#e9e9e9;border-radius:100%}[theme=dark] ::ng-deep .mdc-radio__background,[theme=light] ::ng-deep .mdc-radio__background{background:#fff!important;border-radius:100%;scale:.8}[theme=dark] ::ng-deep .mdc-radio__background .mdc-radio__outer-circle,[theme=light] ::ng-deep .mdc-radio__background .mdc-radio__outer-circle{border-width:1px}[theme=dark] ::ng-deep .mat-ripple,[theme=light] ::ng-deep .mat-ripple{display:none}[haserror=true] ::ng-deep .mdc-radio__background .mdc-radio__outer-circle{border-width:2px}.multiple-checked{border:1px solid var(--color);display:flex;flex-direction:row;align-items:center;gap:16px;background:var(--color);border-radius:8px}.multiple-checked ::ng-deep .mat-mdc-radio-button{width:100%;height:100%;padding:8px}.multiple-checked ::ng-deep .mat-mdc-radio-checked .mdc-radio__outer-circle{border:1px solid #ffffff;border-radius:64px;background:#fff}.multiple-checked ::ng-deep label{color:#fff;height:100%}.multiple-checked[theme=dark][hasError=false],.multiple-checked[theme=light][hasError=false]{background:#fff;border-color:#242424;outline:1px solid #242424}.multiple-checked[theme=dark][hasError=false] ::ng-deep label,.multiple-checked[theme=light][hasError=false] ::ng-deep label{color:#242424}.multiple-checked[theme=dark][hasError=true],.multiple-checked[theme=light][hasError=true]{border:1px solid #E02800;outline:1px solid #E02800;background:#fff;border-radius:10px}.multiple-checked[theme=dark][hasError=true] ::ng-deep label,.multiple-checked[theme=light][hasError=true] ::ng-deep label{color:#242424}.multiple-checked[theme=classic][hasError=true]{border:1px solid #E02800;outline:1px solid #E02800}.multiple-unchecked{border:1px solid #E0E0E0;display:flex;flex-direction:row;align-items:center;gap:16px;background:#fff;border-radius:8px}.multiple-unchecked ::ng-deep .mat-mdc-radio-button{width:100%;height:100%;padding:8px}.multiple-unchecked:hover{background:#f6f6f6;border:1px solid #E0E0E0}.multiple-unchecked ::ng-deep label{height:100%}.multiple-unchecked ::ng-deep .mat-mdc-radio-button .mdc-radio .mdc-radio__background:before{opacity:0!important}.multiple-unchecked[theme=dark][hasError=false],.multiple-unchecked[theme=light][hasError=false]{border:1px solid #919191;background:#fff}.multiple-unchecked[theme=dark][hasError=false]:not(.multiple-disabled):hover,.multiple-unchecked[theme=light][hasError=false]:not(.multiple-disabled):hover{outline:1px solid #242424;background:#fff;border-color:#242424!important}.multiple-unchecked[hasError=true]{border:1px solid #E02800;outline:1px solid #E02800;background:#fff}.multiple-unchecked[hasError=true]:not([theme=classic]){border-radius:10px}.multiple-unchecked ::ng-deep label,.multiple-checked ::ng-deep label{padding-left:0;width:fit-content;cursor:pointer}.radio-container{cursor:pointer}.radio-container .label{cursor:pointer;-webkit-user-select:none;user-select:none}.radio-button .label{cursor:pointer;-webkit-user-select:none;user-select:none;padding-left:4px}:host *[hasError=true] .mat-mdc-radio-button.mat-accent{--mdc-radio-unselected-icon-color: #E02800 !important;--mdc-radio-unselected-hover-icon-color: #E02800 !important;--mdc-radio-unselected-focus-icon-color: #E02800 !important}:host ::ng-deep .mat-mdc-radio-touch-target{height:40px;width:40px}.radio,.radio-container{--border-width-default-state: 4px;--border-width-animation-state: 6px;width:100%}.radio[alignment=top] ::ng-deep .mdc-form-field,.radio-container[alignment=top] ::ng-deep .mdc-form-field{align-items:start}.radio[alignment=top] .label,.radio-container[alignment=top] .label{margin-top:10px}.radio[truncate-text=true] .label,.radio[truncate-text=true] ::ng-deep label,.radio-container[truncate-text=true] .label,.radio-container[truncate-text=true] ::ng-deep label{-webkit-user-select:none;user-select:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes focus-ring-animation{0%{outline-width:var(--border-width-animation-state)}to{outline-width:var(--border-width-default-state)}}.radio-container[hasError=true]{outline:1px solid #E02800}.radio .label{display:block;width:100%;cursor:pointer}::ng-deep .mat-mdc-radio-button.mat-accent.cdk-keyboard-focused{outline:none;--mat-radio-checked-ripple-color: transparent!important;--mat-radio-ripple-color: transparent!important}::ng-deep .mat-mdc-radio-button.mat-accent.cdk-keyboard-focused ::ng-deep .mdc-radio__background{outline:3px solid #242424;animation:focus-ring-animation .4s forwards}::ng-deep .mat-mdc-radio-button.mat-accent.cdk-keyboard-focused ::ng-deep .mdc-radio__background:after{content:\"\";position:absolute;width:100%;height:100%;top:0;left:0;outline:2px solid #ffffff;border-radius:100px}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i4.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "directive", type: i5.EllipseTextDirective, selector: "[uiEllipseText]", inputs: ["isMultiline", "maxDiffPixels", "refresh"], outputs: ["onChangeTextState"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
266
|
-
}
|
|
267
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadioButtonComponent, decorators: [{
|
|
268
|
-
type: Component,
|
|
269
|
-
args: [{ selector: 'ui-radio-button', changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
270
|
-
// Needs to be removed since it causes some a11y issues (https://github.com/angular/components/issues/21266).
|
|
271
|
-
'[attr.tabindex]': 'null',
|
|
272
|
-
'[attr.aria-label]': 'null',
|
|
273
|
-
'[attr.aria-labelledby]': 'null',
|
|
274
|
-
'[attr.aria-describedby]': 'null',
|
|
275
|
-
// Note: under normal conditions focus shouldn't land on this element, however it may be
|
|
276
|
-
// programmatically set, for example inside of a focus trap, in this case we want to forward
|
|
277
|
-
// the focus to the mat-radio-button element.
|
|
278
|
-
'(focus)': 'radioElement.focus()',
|
|
279
|
-
}, template: "<div\n #radioContainer\n [class]=\"multiple ? 'radio-container' : 'radio'\"\n [class.multiple-disabled]=\"disabled && multiple\"\n [ngClass]=\"classMultiple\"\n [attr.alignment]=\"alignment\"\n [attr.truncate-text]=\"truncateText\"\n [attr.theme]=\"applicationTheme\"\n [attr.hasError]=\"hasError\"\n (keydown.enter)=\"clickRadio(); radioContainer.focus()\"\n (keydown.space)=\"clickRadio(); radioContainer.focus()\"\n>\n <mat-radio-button\n #radio\n [checked]=\"selected\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [value]=\"value\"\n class=\"radio-button\"\n [required]=\"ariaRequired\"\n [aria-label]=\"ariaLabel\"\n [aria-labelledby]=\"ariaLabelledby ? ariaLabelledby : label\"\n [aria-describedby]=\"ariaDescribedby\"\n (keydown.enter)=\"$event.preventDefault()\"\n (keydown.space)=\"$event.preventDefault()\"\n [tabIndex]=\"tabIndex\"\n >\n @if (label) {\n <span\n #tooltip=\"matTooltip\"\n class=\"label\"\n uiEllipseText\n (onChangeTextState)=\"onLabelEllipsisChange($event)\"\n [matTooltip]=\"showTooltip ? label : ''\"\n [matTooltipClass]=\"applicationTheme\"\n >{{ label }}</span>\n }\n <ng-content select=\"[radio-label]\"></ng-content>\n </mat-radio-button>\n</div>\n", styles: [".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}.mat-mdc-radio-button.mat-accent{--mat-radio-checked-ripple-color: var(--color)!important;--mdc-radio-selected-focus-icon-color: var(--color)!important;--mdc-radio-selected-pressed-icon-color: var(--color)!important}::ng-deep .mat-mdc-radio-checked .mdc-radio__outer-circle{border-color:var(--color)!important}::ng-deep .mat-mdc-radio-checked .mdc-radio__inner-circle{background-color:var(--color)!important;border-color:var(--color)!important}::ng-deep .mat-mdc-radio-button .mat-ripple-element{background-color:var(--color)!important}::ng-deep .mat-mdc-radio-button.mat-radio-disabled.mat-radio-checked .mdc-radio__outer-circle,.mat-radio-button.mat-radio-disabled .mdc-radio__outer-circle{border-color:#888!important}::ng-deep .mat-mdc-radio-button.mat-radio-disabled .mdc-radio__inner-circle{background-color:#888!important}[theme=dark] .mat-mdc-radio-button,[theme=light] .mat-mdc-radio-button{width:100%!important}[theme=dark] ::ng-deep .mdc-form-field,[theme=light] ::ng-deep .mdc-form-field{width:100%}[theme=dark] .mat-mdc-radio-button.mat-accent,[theme=light] .mat-mdc-radio-button.mat-accent{--mdc-radio-unselected-icon-color: #242424 !important}[theme=dark] ::ng-deep .mdc-radio.mdc-radio--disabled,[theme=light] ::ng-deep .mdc-radio.mdc-radio--disabled{--mdc-radio-disabled-unselected-icon-color: #919191;--mdc-radio-disabled-selected-icon-opacity: 1;--mdc-radio-disabled-unselected-icon-opacity: 1;--color: #919191}[theme=dark] ::ng-deep .mdc-radio.mdc-radio--disabled .mdc-radio__background,[theme=light] ::ng-deep .mdc-radio.mdc-radio--disabled .mdc-radio__background{background:#e9e9e9;border-radius:100%}[theme=dark] ::ng-deep .mdc-radio__background,[theme=light] ::ng-deep .mdc-radio__background{background:#fff!important;border-radius:100%;scale:.8}[theme=dark] ::ng-deep .mdc-radio__background .mdc-radio__outer-circle,[theme=light] ::ng-deep .mdc-radio__background .mdc-radio__outer-circle{border-width:1px}[theme=dark] ::ng-deep .mat-ripple,[theme=light] ::ng-deep .mat-ripple{display:none}[haserror=true] ::ng-deep .mdc-radio__background .mdc-radio__outer-circle{border-width:2px}.multiple-checked{border:1px solid var(--color);display:flex;flex-direction:row;align-items:center;gap:16px;background:var(--color);border-radius:8px}.multiple-checked ::ng-deep .mat-mdc-radio-button{width:100%;height:100%;padding:8px}.multiple-checked ::ng-deep .mat-mdc-radio-checked .mdc-radio__outer-circle{border:1px solid #ffffff;border-radius:64px;background:#fff}.multiple-checked ::ng-deep label{color:#fff;height:100%}.multiple-checked[theme=dark][hasError=false],.multiple-checked[theme=light][hasError=false]{background:#fff;border-color:#242424;outline:1px solid #242424}.multiple-checked[theme=dark][hasError=false] ::ng-deep label,.multiple-checked[theme=light][hasError=false] ::ng-deep label{color:#242424}.multiple-checked[theme=dark][hasError=true],.multiple-checked[theme=light][hasError=true]{border:1px solid #E02800;outline:1px solid #E02800;background:#fff;border-radius:10px}.multiple-checked[theme=dark][hasError=true] ::ng-deep label,.multiple-checked[theme=light][hasError=true] ::ng-deep label{color:#242424}.multiple-checked[theme=classic][hasError=true]{border:1px solid #E02800;outline:1px solid #E02800}.multiple-unchecked{border:1px solid #E0E0E0;display:flex;flex-direction:row;align-items:center;gap:16px;background:#fff;border-radius:8px}.multiple-unchecked ::ng-deep .mat-mdc-radio-button{width:100%;height:100%;padding:8px}.multiple-unchecked:hover{background:#f6f6f6;border:1px solid #E0E0E0}.multiple-unchecked ::ng-deep label{height:100%}.multiple-unchecked ::ng-deep .mat-mdc-radio-button .mdc-radio .mdc-radio__background:before{opacity:0!important}.multiple-unchecked[theme=dark][hasError=false],.multiple-unchecked[theme=light][hasError=false]{border:1px solid #919191;background:#fff}.multiple-unchecked[theme=dark][hasError=false]:not(.multiple-disabled):hover,.multiple-unchecked[theme=light][hasError=false]:not(.multiple-disabled):hover{outline:1px solid #242424;background:#fff;border-color:#242424!important}.multiple-unchecked[hasError=true]{border:1px solid #E02800;outline:1px solid #E02800;background:#fff}.multiple-unchecked[hasError=true]:not([theme=classic]){border-radius:10px}.multiple-unchecked ::ng-deep label,.multiple-checked ::ng-deep label{padding-left:0;width:fit-content;cursor:pointer}.radio-container{cursor:pointer}.radio-container .label{cursor:pointer;-webkit-user-select:none;user-select:none}.radio-button .label{cursor:pointer;-webkit-user-select:none;user-select:none;padding-left:4px}:host *[hasError=true] .mat-mdc-radio-button.mat-accent{--mdc-radio-unselected-icon-color: #E02800 !important;--mdc-radio-unselected-hover-icon-color: #E02800 !important;--mdc-radio-unselected-focus-icon-color: #E02800 !important}:host ::ng-deep .mat-mdc-radio-touch-target{height:40px;width:40px}.radio,.radio-container{--border-width-default-state: 4px;--border-width-animation-state: 6px;width:100%}.radio[alignment=top] ::ng-deep .mdc-form-field,.radio-container[alignment=top] ::ng-deep .mdc-form-field{align-items:start}.radio[alignment=top] .label,.radio-container[alignment=top] .label{margin-top:10px}.radio[truncate-text=true] .label,.radio[truncate-text=true] ::ng-deep label,.radio-container[truncate-text=true] .label,.radio-container[truncate-text=true] ::ng-deep label{-webkit-user-select:none;user-select:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes focus-ring-animation{0%{outline-width:var(--border-width-animation-state)}to{outline-width:var(--border-width-default-state)}}.radio-container[hasError=true]{outline:1px solid #E02800}.radio .label{display:block;width:100%;cursor:pointer}::ng-deep .mat-mdc-radio-button.mat-accent.cdk-keyboard-focused{outline:none;--mat-radio-checked-ripple-color: transparent!important;--mat-radio-ripple-color: transparent!important}::ng-deep .mat-mdc-radio-button.mat-accent.cdk-keyboard-focused ::ng-deep .mdc-radio__background{outline:3px solid #242424;animation:focus-ring-animation .4s forwards}::ng-deep .mat-mdc-radio-button.mat-accent.cdk-keyboard-focused ::ng-deep .mdc-radio__background:after{content:\"\";position:absolute;width:100%;height:100%;top:0;left:0;outline:2px solid #ffffff;border-radius:100px}\n"] }]
|
|
280
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
281
|
-
type: Optional
|
|
282
|
-
}, {
|
|
283
|
-
type: Inject,
|
|
284
|
-
args: ['CANOPYUI_DEFAULT_APPLICATION_THEME']
|
|
285
|
-
}] }, { type: i1.NgControl, decorators: [{
|
|
286
|
-
type: Optional
|
|
287
|
-
}, {
|
|
288
|
-
type: Self
|
|
289
|
-
}] }, { type: i1.NgControl, decorators: [{
|
|
290
|
-
type: Optional
|
|
291
|
-
}, {
|
|
292
|
-
type: Host
|
|
293
|
-
}] }, { type: i0.DestroyRef }, { type: i2.FocusMonitor }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }], propDecorators: { onHostClick: [{
|
|
294
|
-
type: HostListener,
|
|
295
|
-
args: ['click', ['$event']]
|
|
296
|
-
}], disabled: [{
|
|
297
|
-
type: Input
|
|
298
|
-
}], selected: [{
|
|
299
|
-
type: Input
|
|
300
|
-
}], allowUnselect: [{
|
|
301
|
-
type: Input
|
|
302
|
-
}], companyColor: [{
|
|
303
|
-
type: HostBinding,
|
|
304
|
-
args: ['style.--color']
|
|
305
|
-
}, {
|
|
306
|
-
type: Input
|
|
307
|
-
}], name: [{
|
|
308
|
-
type: Input
|
|
309
|
-
}], label: [{
|
|
310
|
-
type: Input
|
|
311
|
-
}], multiple: [{
|
|
312
|
-
type: Input
|
|
313
|
-
}], value: [{
|
|
314
|
-
type: Input
|
|
315
|
-
}], applicationTheme: [{
|
|
316
|
-
type: Input
|
|
317
|
-
}], ariaLabel: [{
|
|
318
|
-
type: Input
|
|
319
|
-
}], ariaRequired: [{
|
|
320
|
-
type: Input
|
|
321
|
-
}], hasError: [{
|
|
322
|
-
type: Input
|
|
323
|
-
}], ariaLabelledby: [{
|
|
324
|
-
type: Input
|
|
325
|
-
}], ariaDescribedby: [{
|
|
326
|
-
type: Input
|
|
327
|
-
}], truncateText: [{
|
|
328
|
-
type: Input
|
|
329
|
-
}], alignment: [{
|
|
330
|
-
type: Input
|
|
331
|
-
}], tabIndex: [{
|
|
332
|
-
type: Input
|
|
333
|
-
}], hideTooltipOnEllipsis: [{
|
|
334
|
-
type: Input
|
|
335
|
-
}], changeRadio: [{
|
|
336
|
-
type: Output
|
|
337
|
-
}], radioElement: [{
|
|
338
|
-
type: ViewChild,
|
|
339
|
-
args: ['radio']
|
|
340
|
-
}], tooltipElement: [{
|
|
341
|
-
type: ViewChild,
|
|
342
|
-
args: ['tooltip']
|
|
343
|
-
}] } });
|
|
344
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9yYWRpby1idXR0b24vcmFkaW8tYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9yYWRpby1idXR0b24vcmFkaW8tYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHlDQUF5QztBQUN6QyxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osSUFBSSxFQUNKLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFLTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksRUFFSixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFLdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7O0FBc0JoRSxNQUFNLE9BQU8sb0JBQW9CO0lBRS9CLFdBQVcsQ0FBQyxLQUFVO1FBQ3BCLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLHNCQUFzQixDQUFDLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztZQUN2SSxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDeEQsQ0FBQztJQUNILENBQUM7SUFvQkQsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxRQUFpQjtRQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEs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QkFBakIsS0FBSztnQkFRRyxZQUFZO3NCQUFwQixLQUFLO2dCQVFHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBUUcsY0FBYztzQkFBdEIsS0FBSztnQkFRRyxlQUFlO3NCQUF2QixLQUFLO2dCQU9HLFlBQVk7c0JBQXBCLEtBQUs7Z0JBT0csU0FBUztzQkFBakIsS0FBSztnQkFVRyxRQUFRO3NCQUFoQixLQUFLO2dCQU9HLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFRSSxXQUFXO3NCQUFwQixNQUFNO2dCQU1hLFlBQVk7c0JBQS9CLFNBQVM7dUJBQUMsT0FBTztnQkFDSSxjQUFjO3NCQUFuQyxTQUFTO3VCQUFDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby11bmRlcnNjb3JlLWRhbmdsZSAqL1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIERlc3Ryb3lSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdCxcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBTZWxmLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0UmFkaW9CdXR0b24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9yYWRpbyc7XG5pbXBvcnQgeyBSYWRpb0J1dHRvbkV2ZW50VHlwZSB9IGZyb20gJy4vcmFkaW8tYnV0dG9uLm1vZGVsJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uVGhlbWUgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2FwcGxpY2F0aW9uLXRoZW1lLm1vZGVsXCI7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTmdDb250cm9sIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3BcIjtcbmltcG9ydCB7IE1hdFRvb2x0aXAgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IEFsaWdubWVudCB9IGZyb20gJy4uLy4uL21vZGVscy9jaGVja2JveC5tb2RlbCc7XG5pbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3VpLXJhZGlvLWJ1dHRvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9yYWRpby1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yYWRpby1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICAvLyBOZWVkcyB0byBiZSByZW1vdmVkIHNpbmNlIGl0IGNhdXNlcyBzb21lIGExMXkgaXNzdWVzIChodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL2lzc3Vlcy8yMTI2NikuXG4gICAgJ1thdHRyLnRhYmluZGV4XSc6ICdudWxsJyxcbiAgICAnW2F0dHIuYXJpYS1sYWJlbF0nOiAnbnVsbCcsXG4gICAgJ1thdHRyLmFyaWEtbGFiZWxsZWRieV0nOiAnbnVsbCcsXG4gICAgJ1thdHRyLmFyaWEtZGVzY3JpYmVkYnldJzogJ251bGwnLFxuICAgIC8vIE5vdGU6IHVuZGVyIG5vcm1hbCBjb25kaXRpb25zIGZvY3VzIHNob3VsZG4ndCBsYW5kIG9uIHRoaXMgZWxlbWVudCwgaG93ZXZlciBpdCBtYXkgYmVcbiAgICAvLyBwcm9ncmFtbWF0aWNhbGx5IHNldCwgZm9yIGV4YW1wbGUgaW5zaWRlIG9mIGEgZm9jdXMgdHJhcCwgaW4gdGhpcyBjYXNlIHdlIHdhbnQgdG8gZm9yd2FyZFxuICAgIC8vIHRoZSBmb2N1cyB0byB0aGUgbWF0LXJhZGlvLWJ1dHRvbiBlbGVtZW50LlxuICAgICcoZm9jdXMpJzogJ3JhZGlvRWxlbWVudC5mb2N1cygpJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgUmFkaW9CdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgb25Ib3N0Q2xpY2soZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGlmIChldmVudC50YXJnZXQ/LmNsYXNzTGlzdD8udmFsdWU/LmluY2x1ZGVzPy4oJ21hdC1tZGMtcmFkaW8tYnV0dG9uJykgfHwgZXZlbnQudGFyZ2V0Py5jbGFzc0xpc3Q/LnZhbHVlPy5pbmNsdWRlcz8uKCdtZGMtZm9ybS1maWVsZCcpKSB7XG4gICAgICB0aGlzLnJhZGlvRWxlbWVudC5faW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGlzIGRpc2FibGVkLlxuICAgKiBEZWZhdWx0OiBmYWxzZS5cbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBSYWRpb0J1dHRvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSByYWRpbyBidXR0b24gaXMgY2hlY2tlZC5cbiAgICogRGVmYXVsdDogZmFsc2UuXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgUmFkaW9CdXR0b25Db21wb25lbnRcbiAgICovXG4gIC8vQElucHV0KCkgc2VsZWN0ZWQgPSBmYWxzZTtcblxuICBfc2VsZWN0ZWQgPSBmYWxzZTtcbiAgQElucHV0KClcbiAgZ2V0IHNlbGVjdGVkKCkge1xuICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZDtcbiAgfVxuICBzZXQgc2VsZWN0ZWQoc2VsZWN0ZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zZWxlY3RlZCA9IHNlbGVjdGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGNhbiBiZSB1bmNoZWNrZWQuXG4gICAqIERlZmF1bHQ6IGZhbHNlLlxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIFJhZGlvQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhbGxvd1Vuc2VsZWN0ID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgdGhlIHJhZGlvIGJ1dHRvbiBjb2xvci5cbiAgICogRGVmYXVsdDogVGVzdCBHb3JpbGxhIHByaW1hcnkgY29sb3IuXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBSYWRpb0J1dHRvbkNvbXBvbmVudFxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS4tLWNvbG9yJylcbiAgQElucHV0KClcbiAgY29tcGFueUNvbG9yOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVXNlZCB0byBncm91cCByYWRpb3MgZm9yIHVuaXF1ZSBzZWxlY3Rpb24uXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBSYWRpb0J1dHRvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbmFtZSA9ICcnO1xuXG4gIC8qKlxuICAgKiBUZXh0IGNvbnRlbnQgd2lsbCBiZSBhcHBsaWVkIHRvIHRoZSBpbnB1dCBlbGVtZW50IGlmIHByZXNlbnQuXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBSYWRpb0J1dHRvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbGFiZWwgPSAnJztcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSByYWRpbyBidXR0b24gaXMgYSBtdWx0aXBsZSBjaG9pY2UgY2VsbC5cbiAgICogRGVmYXVsdDogZmFsc2VcbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBSYWRpb0J1dHRvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbXVsdGlwbGUgPSBmYWxzZTtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB2YWx1ZSBvZiB0aGUgcmFkaW8gYnV0dG9uLlxuICAgKiBEZWZhdWx0OiBmYWxzZVxuICAgKlxuICAgKiBAdHlwZSB7YW55fVxuICAgKiBAbWVtYmVyb2YgUmFkaW9CdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHZhbHVlOiBhbnk7XG5cbiAgLyoqXG4gICAqXG4gICAqIERlZmluZXMgdGhlIGFwcGxpY2F0aW9uIHRoZW1lXG4gICAqXG4gICAqIEB0eXBlIHtBcHBsaWNhdGlvblRoZW1lfVxuICAgKiBAbWVtYmVyb2YgUmFkaW9CdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGFwcGxpY2F0aW9uVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUgPSAnbGlnaHQnO1xuXG4gIC8qKlxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIEFSSUEgbGFiZWwgZm9yIGFjY2Vzc2liaWxpdHkuXG4gICAqIFRoaXMgbGFiZWwgaXMgdXNlZCB0byBwcm92aWRlIGFuIGFjY2Vzc2libGUgbmFtZSBmb3IgdGhlIGlucHV0IGVsZW1lbnQuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBSYWRpb0J1dHRvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgQVJJQSByZXF1aXJlbWVudCBmb3IgYWNjZXNzaWJpbGl0eS5cbiAgICogVGhpcyBhdHRyaWJ1dGUgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGV0aGVyIGFuIGlucHV0IGZpZWxkIGlzIHJlcXVpcmVkIGZvciBmb3JtIHN1Ym1pc3Npb24uXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgUmFkaW9CdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGFyaWFSZXF1aXJlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIGlmIGNoZWNrYm94IGhhcyBlcnJvclxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIFJhZGlvQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBoYXNFcnJvciA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIEFSSUEgcmVxdWlyZW1lbnQgZm9yIGFjY2Vzc2liaWxpdHkuXG4gICAqIFRoaXMgYXR0cmlidXRlIGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hldGhlciBhbiBpbnB1dCBmaWVsZCBpcyByZXF1aXJlZCBmb3IgZm9ybSBzdWJtaXNzaW9uLlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgUmFkaW9CdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGFyaWFMYWJlbGxlZGJ5ID0gJyc7XG5cbiAgLyoqXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgQVJJQSByZXF1aXJlbWVudCBmb3IgYWNjZXNzaWJpbGl0eS5cbiAgICogVGhpcyBhdHRyaWJ1dGUgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGV0aGVyIGFuIGlucHV0IGZpZWxkIGlzIHJlcXVpcmVkIGZvciBmb3JtIHN1Ym1pc3Npb24uXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBSYWRpb0J1dHRvbkNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXJpYURlc2NyaWJlZGJ5ID0gJyc7XG5cbiAgLyoqXG4gICAqICBUcnVuY2F0ZSB0ZXh0IGlmIGl0IGlzIHRvbyBsb25nXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgUmFkaW9CdXR0b25Db21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHRydW5jYXRlVGV4dCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUZXh0IGFsaWdubWVudFxuICAgKiBAdHlwZSB7J2NlbnRlcicgfCAndG9wJ31cbiAgICogQG1lbWJlcm9mIFJhZGlvQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhbGlnbm1lbnQ6IEFsaWdubWVudCA9ICdjZW50ZXInO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB0YWIgaW5kZXggZm9yIHRoZSBjaGVja2JveCBjb21wb25lbnQuXG4gICAqIFRoaXMgZGV0ZXJtaW5lcyB0aGUgb3JkZXIgaW4gd2hpY2ggZWxlbWVudHMgcmVjZWl2ZSBmb2N1cyB3aGVuIHRoZSB1c2VyIG5hdmlnYXRlcyB0aHJvdWdoIHRoZW0gdXNpbmcgdGhlIFRhYiBrZXkuXG4gICAqIERlZmF1bHQgdmFsdWUgaXMgMC5cbiAgICpcbiAgICogQHR5cGUge251bWJlcn1cbiAgICogQG1lbWJlcm9mIFJhZGlvQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB0YWJJbmRleCA9IDA7XG5cbiAgLyoqXG4gICAqIFNob3cgdG9vbHRpcCB3aGVuIGxhYmVsIGlzIHRydW5jYXRlZFxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIFJhZGlvQnV0dG9uQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBoaWRlVG9vbHRpcE9uRWxsaXBzaXMgPSBmYWxzZTtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBjaGVja2VkIHN0YXRlIG9mIHRoZSByYWRpbyBidXR0b24gY2hhbmdlcy5cbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBSYWRpb0J1dHRvbkNvbXBvbmVudFxuICAgKi9cbiAgQE91dHB1dCgpIGNoYW5nZVJhZGlvID0gbmV3IEV2ZW50RW1pdHRlcjxSYWRpb0J1dHRvbkV2ZW50VHlwZT4oKTtcblxuICBjbGFzc011bHRpcGxlOiBzdHJpbmc7XG4gIHNob3dUb29sdGlwID0gZmFsc2U7XG4gIHByb3RlY3RlZCBvcmlnaW46IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIEBWaWV3Q2hpbGQoJ3JhZGlvJykgcmFkaW9FbGVtZW50OiBNYXRSYWRpb0J1dHRvbjtcbiAgQFZpZXdDaGlsZCgndG9vbHRpcCcpIHRvb2x0aXBFbGVtZW50OiBNYXRUb29sdGlwO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoJ0NBTk9QWVVJX0RFRkFVTFRfQVBQTElDQVRJT05fVEhFTUUnKSBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRBcHBUaGVtZTogQXBwbGljYXRpb25UaGVtZSxcbiAgICBAT3B0aW9uYWwoKSBAU2VsZigpIHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgICBAT3B0aW9uYWwoKSBASG9zdCgpIHB1YmxpYyBob3N0TmdDb250cm9sOiBOZ0NvbnRyb2wsXG4gICAgcHJpdmF0ZSBkZXN0cm95UmVmOiBEZXN0cm95UmVmLFxuICAgIHByaXZhdGUgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge1xuICAgIGlmIChkZWZhdWx0QXBwVGhlbWUpIHtcbiAgICAgIHRoaXMuYXBwbGljYXRpb25UaGVtZSA9IGRlZmF1bHRBcHBUaGVtZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5uZ0NvbnRyb2wgIT0gbnVsbCkge1xuICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jaGVja0hvc3QoKTtcbiAgICB0aGlzLmNsYXNzTXVsdGlwbGUgPSB0aGlzLnNldENsYXNzKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXNbJ3NlbGVjdGVkJ10pIHtcbiAgICAgIHRoaXMuY2xhc3NNdWx0aXBsZSA9IHRoaXMuc2V0Q2xhc3MoKTtcbiAgICB9XG4gICAgdGhpcy5zZXRDb21wYW55Q29sb3IoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLnJhZGlvRWxlbWVudC5faW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCdyb2xlJywgJ3JhZGlvJyk7XG4gICAgdGhpcy5yYWRpb0VsZW1lbnQuX2lucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50Lm9uY2xpY2sgPSAoKSA9PiB7XG4gICAgICB0aGlzLmNsaWNrUmFkaW8oKTtcbiAgICB9O1xuXG4gICAgdGhpcy5mb2N1c01vbml0b3IubW9uaXRvcih0aGlzLnJhZGlvRWxlbWVudC5faW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQpLnBpcGUoXG4gICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSxcbiAgICApLnN1YnNjcmliZShvcmlnaW4gPT5cbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIHRoaXMub3JpZ2luID0gb3JpZ2luO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgdGhpcy5vbkZvY3VzKG9yaWdpbiA9PT0gJ2tleWJvYXJkJyk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5mb2N1c01vbml0b3Iuc3RvcE1vbml0b3JpbmcodGhpcy5yYWRpb0VsZW1lbnQuX2lucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50KTtcbiAgfVxuXG4gIC8vQ2xpY2sgbWV0aG9kXG4gIGNsaWNrUmFkaW8oKSB7XG4gICAgaWYgKHRoaXMuYWxsb3dVbnNlbGVjdCkge1xuICAgICAgdGhpcy5yYWRpb0VsZW1lbnQuY2hlY2tlZCA9ICF0aGlzLnJhZGlvRWxlbWVudC5jaGVja2VkO1xuICAgICAgdGhpcy5fc2VsZWN0ZWQgPSB0aGlzLnJhZGlvRWxlbWVudC5jaGVja2VkO1xuICAgICAgdGhpcy5jbGFzc011bHRpcGxlID0gdGhpcy5zZXRDbGFzcygpO1xuICAgICAgdGhpcy5zZWxlY3RlZCA9IHRoaXMucmFkaW9FbGVtZW50LmNoZWNrZWQ7XG4gICAgICB0aGlzLmNoYW5nZVJhZGlvPy5lbWl0KHsgb3B0aW9uTmFtZTogdGhpcy5yYWRpb0VsZW1lbnQudmFsdWUsIG9wdGlvbkNoZWNrZWQ6IHRoaXMucmFkaW9FbGVtZW50LmNoZWNrZWQgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWQgPSB0aGlzLnJhZGlvRWxlbWVudC5jaGVja2VkO1xuICAgICAgdGhpcy5jaGFuZ2VSYWRpby5lbWl0KHsgb3B0aW9uTmFtZTogdGhpcy5yYWRpb0VsZW1lbnQudmFsdWUsIG9wdGlvbkNoZWNrZWQ6IHRydWUgfSk7XG4gICAgfVxuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLl9zZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5jaGFuZ2VSYWRpby5lbWl0KHsgb3B0aW9uTmFtZTogJycsIG9wdGlvbkNoZWNrZWQ6IGZhbHNlIH0pO1xuICAgIH1cbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuX3NlbGVjdGVkKVxuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ2Jvb2xlYW4nIHx8IHZhbHVlID09PSB0aGlzLnZhbHVlKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkID0gdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gIH1cblxuICBvbkNoYW5nZSA9IChfOiBhbnkpID0+IHt9O1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBvblRvdWNoID0gKCkgPT4ge307XG5cbiAgLy9TZXQgY2xhc3MgZm9yIG11bHRpcGxlIHJhZGlvXG4gIHNldENsYXNzKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZCA/ICdtdWx0aXBsZS1jaGVja2VkJyA6ICdtdWx0aXBsZS11bmNoZWNrZWQnO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBvbkxhYmVsRWxsaXBzaXNDaGFuZ2UoaXNFbGxpcHNpczogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuc2hvd1Rvb2x0aXAgPSBpc0VsbGlwc2lzICYmICF0aGlzLmhpZGVUb29sdGlwT25FbGxpcHNpcztcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tIb3N0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmhvc3ROZ0NvbnRyb2wpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWQgPSB0aGlzLnZhbHVlID09PSB0aGlzLmhvc3ROZ0NvbnRyb2wudmFsdWU7XG4gICAgICB0aGlzLmhvc3ROZ0NvbnRyb2wudmFsdWVDaGFuZ2VzPy5waXBlKFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKVxuICAgICAgKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSB2YWx1ZSA9PT0gdGhpcy52YWx1ZTtcbiAgICAgICAgdGhpcy5jbGFzc011bHRpcGxlID0gdGhpcy5zZXRDbGFzcygpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRDb21wYW55Q29sb3IoKTogdm9pZCB7XG4gICAgdGhpcy5jb21wYW55Q29sb3IgPSB0aGlzLmNvbXBhbnlDb2xvciA/IHRoaXMuY29tcGFueUNvbG9yIDogdGhpcy5hcHBsaWNhdGlvblRoZW1lID09PSAnY2xhc3NpYycgPyAnIzQ2QTk5NycgOiAnI0Q0MTBBQSc7XG4gIH1cblxuICBvbkZvY3VzKGlzRm9jdXM6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICh0aGlzLnRvb2x0aXBFbGVtZW50KSB7XG4gICAgICAgIGlmICh0aGlzLnNob3dUb29sdGlwICYmIGlzRm9jdXMpIHtcbiAgICAgICAgICB0aGlzLnRvb2x0aXBFbGVtZW50LnNob3coKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnRvb2x0aXBFbGVtZW50LmhpZGUoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sIDApO1xuICB9XG5cbiAgZm9jdXMoKTogdm9pZCB7XG4gICAgdGhpcy5yYWRpb0VsZW1lbnQuZm9jdXMoKTtcbiAgfVxufVxuIiwiPGRpdlxuICAjcmFkaW9Db250YWluZXJcbiAgW2NsYXNzXT1cIm11bHRpcGxlID8gJ3JhZGlvLWNvbnRhaW5lcicgOiAncmFkaW8nXCJcbiAgW2NsYXNzLm11bHRpcGxlLWRpc2FibGVkXT1cImRpc2FibGVkICYmIG11bHRpcGxlXCJcbiAgW25nQ2xhc3NdPVwiY2xhc3NNdWx0aXBsZVwiXG4gIFthdHRyLmFsaWdubWVudF09XCJhbGlnbm1lbnRcIlxuICBbYXR0ci50cnVuY2F0ZS10ZXh0XT1cInRydW5jYXRlVGV4dFwiXG4gIFthdHRyLnRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIlxuICBbYXR0ci5oYXNFcnJvcl09XCJoYXNFcnJvclwiXG4gIChrZXlkb3duLmVudGVyKT1cImNsaWNrUmFkaW8oKTsgcmFkaW9Db250YWluZXIuZm9jdXMoKVwiXG4gIChrZXlkb3duLnNwYWNlKT1cImNsaWNrUmFkaW8oKTsgcmFkaW9Db250YWluZXIuZm9jdXMoKVwiXG4+XG4gIDxtYXQtcmFkaW8tYnV0dG9uXG4gICAgI3JhZGlvXG4gICAgW2NoZWNrZWRdPVwic2VsZWN0ZWRcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW25hbWVdPVwibmFtZVwiXG4gICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICBjbGFzcz1cInJhZGlvLWJ1dHRvblwiXG4gICAgW3JlcXVpcmVkXT1cImFyaWFSZXF1aXJlZFwiXG4gICAgW2FyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICBbYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZGJ5ID8gYXJpYUxhYmVsbGVkYnkgOiBsYWJlbFwiXG4gICAgW2FyaWEtZGVzY3JpYmVkYnldPVwiYXJpYURlc2NyaWJlZGJ5XCJcbiAgICAoa2V5ZG93bi5lbnRlcik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gICAgKGtleWRvd24uc3BhY2UpPVwiJGV2ZW50LnByZXZlbnREZWZhdWx0KClcIlxuICAgIFt0YWJJbmRleF09XCJ0YWJJbmRleFwiXG4gID5cbiAgICBAaWYgKGxhYmVsKSB7XG4gICAgICA8c3BhblxuICAgICAgICAjdG9vbHRpcD1cIm1hdFRvb2x0aXBcIlxuICAgICAgICBjbGFzcz1cImxhYmVsXCJcbiAgICAgICAgdWlFbGxpcHNlVGV4dFxuICAgICAgICAob25DaGFuZ2VUZXh0U3RhdGUpPVwib25MYWJlbEVsbGlwc2lzQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbbWF0VG9vbHRpcF09XCJzaG93VG9vbHRpcCA/IGxhYmVsIDogJydcIlxuICAgICAgICBbbWF0VG9vbHRpcENsYXNzXT1cImFwcGxpY2F0aW9uVGhlbWVcIlxuICAgICAgPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgIH1cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbcmFkaW8tbGFiZWxdXCI+PC9uZy1jb250ZW50PlxuICA8L21hdC1yYWRpby1idXR0b24+XG48L2Rpdj5cbiJdfQ==
|