@testgorilla/tgo-ui 4.1.1-beta → 4.1.2-beta
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/accordion/accordion.component.d.ts +1 -1
- package/components/accordion/accordion.component.module.d.ts +2 -2
- package/components/ai-feedback/ai-feedback.module.d.ts +1 -1
- package/components/alert-banner/alert-banner.component.d.ts +1 -1
- package/components/alert-banner/alert-banner.component.module.d.ts +2 -2
- package/components/autocomplete/autocomplete.component.module.d.ts +1 -1
- package/components/avatar/avatar.component.d.ts +1 -1
- package/components/avatar/avatar.component.module.d.ts +2 -2
- package/components/avatar/avatar.model.d.ts +1 -1
- package/components/badge/badge.component.d.ts +1 -1
- package/components/badge/badge.component.module.d.ts +1 -1
- package/components/badge/index.d.ts +5 -0
- package/components/badge/public-api.d.ts +4 -0
- package/components/breadcrumb/breadcrumb.component.module.d.ts +2 -2
- package/components/button/button.component.d.ts +1 -1
- package/components/button/button.component.module.d.ts +2 -2
- package/components/button/button.model.d.ts +1 -1
- package/components/button/color-contrast.d.ts +28 -0
- package/components/button/index.d.ts +5 -0
- package/components/button/public-api.d.ts +5 -0
- package/components/card/card.component.d.ts +1 -1
- package/components/card/card.component.module.d.ts +1 -1
- package/components/checkbox/checkbox.component.module.d.ts +1 -1
- package/components/confirm-dialog/confirm-dialog.component.d.ts +2 -2
- package/components/confirm-dialog/confirm-dialog.component.module.d.ts +1 -1
- package/components/confirm-dialog/confirm-dialog.model.d.ts +2 -2
- package/components/datepicker/datepicker.component.module.d.ts +1 -1
- package/components/dialog/dialog.component.d.ts +3 -3
- package/components/dialog/dialog.component.module.d.ts +1 -1
- package/components/dropdown/dropdown.component.d.ts +1 -1
- package/components/dropdown/dropdown.component.module.d.ts +2 -2
- package/components/empty-state/empty-state.component.d.ts +2 -2
- package/components/empty-state/empty-state.component.module.d.ts +2 -2
- package/components/field/field.component.d.ts +2 -2
- package/components/field/field.component.module.d.ts +3 -3
- package/components/file-upload/file-upload.component.module.d.ts +1 -1
- package/components/filter-button/filter-button.component.d.ts +2 -2
- package/components/filter-button/filter-button.component.module.d.ts +2 -2
- package/components/filter-button/filter-button.model.d.ts +1 -1
- package/components/gaussian-chart/gaussian-chart.module.d.ts +1 -1
- package/components/icon/icon.component.d.ts +1 -1
- package/components/icon/index.d.ts +5 -0
- package/components/icon/public-api.d.ts +5 -0
- package/components/icon-label/icon-label.component.d.ts +1 -1
- package/components/icon-label/icon-label.component.module.d.ts +1 -1
- package/components/inline-field/inline-field.component.module.d.ts +2 -2
- package/components/inline-field/inline-field.model.d.ts +1 -1
- package/components/multi-input/multi-input.component.module.d.ts +1 -1
- package/components/navbar/navbar.component.module.d.ts +3 -3
- package/components/navbar/navbar.model.d.ts +2 -2
- package/components/overflow-menu/overflow-menu.component.d.ts +2 -2
- package/components/overflow-menu/overflow-menu.component.module.d.ts +2 -2
- package/components/overflow-menu/overflow-menu.model.d.ts +1 -1
- package/components/page-header/page-header.component.module.d.ts +1 -1
- package/components/password-criteria/password.component.module.d.ts +1 -1
- package/components/password-strength/password-strength.component.d.ts +1 -1
- package/components/password-strength/password-strength.component.module.d.ts +1 -1
- package/components/phone-input/phone-input.component.module.d.ts +1 -1
- package/components/prompt/prompt.module.d.ts +2 -2
- package/components/radial-progress/radial-progress.component.d.ts +1 -1
- package/components/radial-progress/radial-progress.component.module.d.ts +1 -1
- package/components/segmented-bar/segmented-bar.component.module.d.ts +1 -1
- package/components/segmented-bar/segmented-bar.model.d.ts +1 -1
- package/components/side-sheet/side-sheet.component.module.d.ts +2 -2
- package/components/snackbar/snackbar.component.d.ts +1 -1
- package/components/snackbar/snackbar.component.module.d.ts +2 -2
- package/components/spinner/spinner.component.d.ts +1 -1
- package/components/spinner/spinner.module.d.ts +1 -1
- package/components/step/step.component.d.ts +1 -1
- package/components/step/step.component.module.d.ts +1 -1
- package/components/stepper/stepper.component.module.d.ts +1 -1
- package/components/stepper/stepper.model.d.ts +1 -1
- package/components/table/table.component.module.d.ts +2 -2
- package/components/tabs/tab.directive.d.ts +1 -1
- package/components/tabs/tabs.component.module.d.ts +1 -1
- package/components/tabs/tabs.model.d.ts +1 -1
- package/components/tag/tag.component.d.ts +1 -1
- package/components/tag/tag.component.module.d.ts +1 -1
- package/components/toggle/toggle.component.module.d.ts +1 -1
- package/components/universal-skills-report/universal-skills-report.component.d.ts +1 -1
- package/components/universal-skills-report/universal-skills-report.component.module.d.ts +1 -1
- package/components/universal-skills-spider-charts/universal-skills-spider-charts.component.module.d.ts +1 -1
- package/components/validation-error/validation-error.module.d.ts +1 -1
- package/fesm2022/testgorilla-tgo-ui-components-badge.mjs +180 -0
- package/fesm2022/testgorilla-tgo-ui-components-badge.mjs.map +1 -0
- package/fesm2022/testgorilla-tgo-ui-components-button.mjs +635 -0
- package/fesm2022/testgorilla-tgo-ui-components-button.mjs.map +1 -0
- package/fesm2022/testgorilla-tgo-ui-components-icon.mjs +1496 -0
- package/fesm2022/testgorilla-tgo-ui-components-icon.mjs.map +1 -0
- package/fesm2022/testgorilla-tgo-ui.mjs +286 -2407
- package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
- package/package.json +17 -5
- package/public-api.d.ts +0 -10
- package/utils/alert-bars.utils.d.ts +1 -1
- /package/{services → components/icon}/icons.service.d.ts +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testgorilla-tgo-ui-components-button.mjs","sources":["../../../components/button/color-contrast.ts","../../../components/button/button.component.ts","../../../components/button/button.component.html","../../../components/button/button.component.module.ts","../../../components/button/testgorilla-tgo-ui-components-button.ts"],"sourcesContent":["/**\n * Function for adjusting the lightness of a color based on different events (hover, pressed, disabled).\n * Accepts a hex color, transforms it to HSL, and based on color's L and event darkens or lightens it.\n * Used to manage different colors based on application configuration\n *\n * @param hexColor color in hex format\n * @param typeEvent interaction event\n * @param theme\n */\nexport const adjustLightness = (hexColor: string, typeEvent: 'hover' | 'pressed' | 'disabled', theme: 'new' | 'classic' = 'new'): string => {\n const hexRegex = /^#([0-9A-F]{3}){1,2}$/i;\n if (hexColor && !hexRegex.test(hexColor)) {\n throw new Error('Invalid HEX color format');\n }\n\n const hslColor = hexToHsl(hexColor);\n const lightness = hslColor.l * 100;\n\n if (theme === 'new') {\n if (lightness > 70 && (typeEvent === 'hover' || typeEvent === 'pressed')) {\n hslColor.l = clamp(hslColor.l - 10 / 100);\n } else if (lightness < 30 && (typeEvent === 'hover' || typeEvent === 'pressed')) {\n hslColor.l = clamp(hslColor.l + 10 / 100);\n } else if (lightness < 70 && lightness > 30 && (typeEvent === 'hover' || typeEvent === 'pressed')) {\n hslColor.l = clamp(hslColor.l - 10 / 100);\n }\n } else {\n if (lightness > 70 && typeEvent === 'hover') {\n hslColor.l = clamp(hslColor.l - 10 / 100);\n } else if (lightness < 30 && typeEvent === 'hover') {\n hslColor.l = clamp(hslColor.l + 10 / 100);\n } else if (lightness < 70 && lightness > 30 && typeEvent === 'hover') {\n hslColor.l = clamp(hslColor.l - 10 / 100);\n } else if (lightness > 70 && typeEvent === 'pressed') {\n hslColor.l = clamp(hslColor.l - 20 / 100);\n } else if (lightness < 30 && typeEvent === 'pressed') {\n hslColor.l = clamp(hslColor.l + 30 / 100);\n } else if (lightness < 70 && lightness > 30 && typeEvent === 'pressed') {\n hslColor.l = clamp(hslColor.l - 20 / 100);\n } else if (lightness > 70 && typeEvent === 'disabled') {\n hslColor.l = clamp(hslColor.l + 10 / 100);\n } else if (lightness < 30 && typeEvent === 'disabled') {\n hslColor.l = clamp(hslColor.l + 50 / 100);\n } else if (lightness < 70 && lightness > 30 && typeEvent === 'disabled') {\n hslColor.l = clamp(hslColor.l + 20 / 100);\n }\n }\n\n return hslToHex(hslColor);\n};\n\n/**\n * Transforms hex color to HSL in object variation.\n * @param hexColor string value with hex color\n */\nexport const hexToHsl = (hexColor: string): { h: number; s: number; l: number } => {\n const rgbColor = parseInt(hexColor.slice(1), 16);\n const r = ((rgbColor >> 16) & 255) / 255;\n const g = ((rgbColor >> 8) & 255) / 255;\n const b = (rgbColor & 255) / 255;\n\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n\n let h = 0;\n let s;\n const l = (max + min) / 2;\n\n if (max === min) {\n h = s = 0; // grayscale\n } else {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n }\n\n h /= 6;\n }\n\n return { h, s, l };\n};\n\n/**\n * Transforms HSL color, represented as an object and transforms it to hex string.\n * @param hslColor accepts the HSL color like an object.\n */\nexport const hslToHex = (hslColor: { h: number; s: number; l: number }): string => {\n const { h, s, l } = hslColor;\n\n const hueToRgb = (p: number, q: number, t: number): number => {\n if (t < 0) {\n t += 1;\n }\n if (t > 1) {\n t -= 1;\n }\n if (t < 1 / 6) {\n return p + (q - p) * 6 * t;\n }\n if (t < 1 / 2) {\n return q;\n }\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6;\n }\n return p;\n };\n\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n\n const r = hueToRgb(p, q, h + 1 / 3);\n const g = hueToRgb(p, q, h);\n const b = hueToRgb(p, q, h - 1 / 3);\n\n const rgbColor = (Math.round(r * 255) << 16) | (Math.round(g * 255) << 8) | Math.round(b * 255);\n\n return `#${rgbColor.toString(16).padStart(6, '0')}`;\n};\n\n/**\n * Restricts the value to be within the range [0, 1].\n * @param value\n */\nconst clamp = (value: number): number => Math.min(Math.max(value, 0), 1);\n","/* eslint-disable @angular-eslint/use-lifecycle-interface */\nimport {\n AfterViewInit,\n booleanAttribute,\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n OnInit,\n Optional,\n Output,\n SimpleChanges,\n ViewChild,\n} from '@angular/core';\nimport { IconName } from '@testgorilla/tgo-ui/components/icon';\nimport {\n ButtonBadgeConfig,\n ButtonColor,\n ButtonIconPosition,\n ButtonSize,\n ButtonState,\n ButtonType,\n IconButtonSize,\n LinkUrlTarget,\n} from './button.model';\nimport { adjustLightness } from './color-contrast';\nimport { MatButton } from '@angular/material/button';\nimport { ApplicationTheme } from '@testgorilla/tgo-ui/components/core';\nimport { TooltipPosition } from '@angular/material/tooltip';\nimport { FocusOrigin } from '@angular/cdk/a11y';\n\n@Component({\n selector: 'ui-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss'],\n standalone: false\n})\nexport class ButtonComponent implements OnInit, AfterViewInit {\n @HostBinding('style.pointer-events')\n get enabled(): string {\n return this.disabled ? 'none' : 'all';\n }\n\n @ViewChild('tooltipElement') tooltipElement: ElementRef<HTMLElement>;\n\n /**\n * Define button height\n *\n * @type {ButtonSize}\n * @memberof ButtonComponent\n */\n @Input() size: ButtonSize = 'big';\n /**\n * Background color of the button while in active state\n *\n * @type {ButtonColor}\n * @memberof ButtonComponent\n */\n @HostBinding('attr.btn-variant')\n @Input()\n variant: ButtonColor = 'primary';\n\n /**\n * Text content to appear on the button\n *\n * @memberof ButtonComponent\n */\n @Input() label = '';\n\n /**\n * Positioning of the icon (when existant)\n *\n * @type {ButtonIconPosition}\n * @memberof ButtonComponent\n */\n @Input() iconPosition?: ButtonIconPosition = 'right';\n\n /**\n * Define if button has only icon without text\n *\n * @memberof ButtonComponent\n */\n @Input() justIcon = false;\n\n /**\n * Name of ui-icon\n *\n * @type {IconName}\n * @memberof ButtonComponent\n */\n @Input() iconName: IconName | undefined;\n\n /**\n * Indicator if the button should be disabled\n *\n * @memberof ButtonComponent\n */\n @Input() disabled = false;\n\n /**\n * Indicator if the loading icon should be shown\n *\n * @memberof ButtonComponent\n */\n @Input() loading = false;\n\n /**\n * Indicator of the button width\n *\n * @memberof ButtonComponent\n */\n @Input() fullWidth = false;\n\n /**\n * Url of button if it is a link\n *\n * @memberof ButtonComponent\n */\n @Input() url?: string;\n\n /**\n * Url's target of button if it is a link\n *\n * @type {@type {LinkUrlTarget}}\n * @memberof ButtonComponent\n */\n @Input() urlTarget?: LinkUrlTarget;\n\n /**\n * Button value\n *\n * @memberof ButtonComponent\n */\n @Input() value?: string;\n\n /**\n * @property tooltip\n * @description The tooltip that is displayed on hover. Required for icon-button type\n * @type {string}\n * @memberof ButtonComponent\n */\n @Input() tooltip = '';\n\n /**\n * @property isPremium\n * @description The icon that is displayed for Premium button\n * @type {boolean}\n * @memberof ButtonComponent\n */\n @Input() isPremium = false;\n\n /**\n * The type of the button.\n *\n * @type {ButtonType}\n * @memberof ButtonComponent\n * @default 'button'\n */\n @Input() type: ButtonType = 'button';\n\n /**\n * Color of the button.\n * Defaults to Test Gorilla primary color.\n *\n * @type {string}\n * @memberof ButtonComponent\n */\n @Input() companyColor: string | null = '';\n\n /**\n * Config for the button badge variation\n * @type {ButtonBadgeConfig}\n * @property badgeType Type of badge on the button\n * @property badgeLabel Label text for the badge\n * @property badgeNotificationAmount The amount for notification in the badge\n */\n @Input() buttonBadgeConfig: ButtonBadgeConfig | undefined;\n\n /**\n *\n * Defines the application theme where buttons is used\n *\n * @type {ApplicationTheme}\n * @memberof ButtonComponent\n */\n @HostBinding('attr.theme')\n @Input()\n applicationTheme: ApplicationTheme = 'light';\n\n /**\n *\n * Disabled button scale on click\n *\n * @type {boolean}\n * @memberof ButtonComponent\n */\n @Input() disabledScaleOnClick = false;\n\n /**\n * A string representing the ARIA label for accessibility.\n * This label is used to provide an accessible name for the input element.\n * @type {string}\n * @memberof ButtonComponent\n */\n @Input() ariaLabel: string;\n\n /**\n * A string representing the ARIA requirement for accessibility.\n * This attribute is used to indicate whether an input field is required for form submission.\n * @type {boolean}\n * @memberof ButtonComponent\n */\n @Input() ariaRequired = false;\n\n\n /**\n * A string representing the ARIA requirement for accessibility.\n * This attribute is used to indicate whether an input field is required for form submission.\n * @type {string}\n * @memberof ButtonComponent\n */\n @Input() ariaLabelledby = '';\n\n /**\n * A string representing the ARIA requirement for accessibility.\n * This attribute is used to indicate whether an input field is required for form submission.\n * @type {string}\n * @memberof ButtonComponent\n */\n @Input() ariaDescribedby = '';\n\n /**\n * Prevents default button click behavior\n * @type {boolean}\n * @memberof ButtonComponent\n */\n @Input({ transform: booleanAttribute }) preventDefault = false;\n\n /**\n * Ghost variant with white background\n * @type {boolean}\n * @memberof ButtonComponent\n */\n @Input({ transform: booleanAttribute }) hasBackground = false;\n\n /**\n * Sets tooltip position\n *\n * @type {TooltipPosition}\n * @memberof ButtonComponent\n */\n @Input() tooltipPosition: TooltipPosition = 'below';\n\n @Input() role = 'button';\n\n @Input() iconFilled = false;\n\n @Output() buttonClickEvent: EventEmitter<Event> = new EventEmitter<Event>();\n\n @Output() buttonHoverEvent: EventEmitter<Event> = new EventEmitter<Event>();\n\n @ViewChild('buttonElement', { static: false }) buttonElement: MatButton;\n\n\n get isDisabled(): boolean {\n return this.disabled;\n }\n\n @HostBinding('style.--color')\n get compColor() {\n return this.getCompanyColor;\n }\n\n classCss: string;\n styleCss: any;\n isButtonLink: boolean;\n isLabel: boolean;\n buttonState: ButtonState;\n hover = false;\n iconButtonSize: IconButtonSize = '40';\n allowButtonTypeForPremium: ButtonColor[] = ['secondary', 'secondary-inverted', 'primary', 'ghost', 'outlined', 'destructive'];\n isFilledIcon: boolean;\n coloredIcons = ['Google-in-line', 'Google', 'Google-filled'];\n labelEllipsis = false;\n icon: IconName = '';\n\n private static nextAriaLabelledId = 0;\n ariaLabelledbyId = '';\n\n get typeIncluded(): boolean {\n return this.allowButtonTypeForPremium.includes(this.variant);\n }\n\n constructor(\n @Optional() @Inject('CANOPYUI_DEFAULT_APPLICATION_THEME') private readonly defaultAppTheme: ApplicationTheme,\n ) {\n if (defaultAppTheme) {\n this.applicationTheme = defaultAppTheme;\n }\n }\n\n ngOnInit(): void {\n this.classCss = this.setCssClass();\n this.styleCss = this.setCssStyle();\n this.isButtonLink = this.showButtonLink();\n this.isLabel = this.showLabel();\n this.createAriaLabelledById();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['disabled']) {\n this.buttonState = 'default';\n }\n if (!this.applicationTheme) {\n this.applicationTheme = 'light';\n }\n if (changes['type']) {\n this.isButtonLink = this.showButtonLink();\n }\n if (changes['loading']) {\n this.isLabel = this.showLabel();\n }\n if (changes['iconName']) {\n this.icon = changes['iconName'].currentValue;\n }\n if (\n changes['type'] ||\n changes['fullWidth'] ||\n changes['iconName'] ||\n changes['justIcon'] ||\n changes['iconPosition'] ||\n changes['disabled'] ||\n changes['companyColor'] ||\n changes['variant'] ||\n changes['applicationTheme']\n ) {\n this.classCss = this.setCssClass();\n this.styleCss = this.setCssStyle();\n }\n if (changes['variant']?.currentValue === 'icon-button' || (changes['variant']?.currentValue === 'menuTrigger' && this.applicationTheme !== 'classic')) {\n this.iconButtonSize = this.setIconButtonSize();\n }\n\n this.isFilledIcon = this.applicationTheme !== 'classic' && (this.variant === 'primary' || this.variant === 'secondary' || this.variant === 'secondary-inverted');\n }\n\n ngAfterViewInit(): void {\n this.tooltipElement.nativeElement.onclick = ev => {\n ev.preventDefault();\n ev.stopPropagation();\n };\n if (this.variant === 'icon-button' && !this.tooltip) {\n console.warn('ui-button ButtonComponent\\n [tooltip] is required for [type] icon-button!');\n } else if (this.variant === 'destructive' && !this.icon && !this.loading && this.applicationTheme !== 'classic') {\n console.warn('ui-button ButtonComponent\\n [icon] is required for [type] destructive');\n }\n }\n\n buttonClick(event: Event): void {\n if (this.preventDefault) {\n event.preventDefault();\n event.stopPropagation();\n }\n this.buttonClickEvent.emit(event);\n }\n\n buttonHover(event: Event): void {\n if (event.type === 'mouseenter') {\n this.hover = true;\n this.buttonHoverEvent.emit(event);\n this.buttonState = 'hover';\n if (this.shouldChangeFilledStatus && this.icon) {\n this.icon = this.getIconName(this.iconName as IconName, '-filled');\n }\n } else {\n this.hover = false;\n if (this.shouldChangeFilledStatus && this.icon) {\n this.icon = this.iconName as IconName;\n }\n this.buttonState = 'default';\n }\n\n this.styleCss = this.setCssStyle();\n }\n\n //Show or hide label\n showLabel(): boolean {\n return !this.loading;\n }\n\n //Set css class according inputs\n setCssClass(): string {\n const width = this.fullWidth ? 'full-width' : '';\n const hasIcon = this.iconName === null ? '' : 'icon';\n const justIcon = this.justIcon || this.variant === 'icon-button' ? 'only-icon' : '';\n const iconPosition = this.iconPosition === undefined ? '' : this.iconPosition;\n const disabled = this.disabled && this.variant === 'primary' ? 'primary-disabled' : '';\n const variant = this.variant === 'ghost' && this.applicationTheme === 'classic' ? 'outlined' : this.variant;\n const companyColor = this.companyColor ? 'has-company-color' : '';\n return `${this.size} ${iconPosition} ${variant} ${width} ${hasIcon} ${justIcon} ${disabled} ${companyColor} ${this.applicationTheme}-theme`;\n }\n\n setCssStyle(): any {\n this.buttonState = this.disabled ? 'disabled' : this.buttonState;\n const styleObj: any = {};\n\n if ((this.variant === 'primary' || this.variant === 'text' || this.variant === 'text-inline') && this.applicationTheme !== 'classic' && (this.buttonState === 'hover' || this.buttonState === 'pressed')) {\n styleObj[this.variant === 'primary' ? 'background-color' : 'color'] = adjustLightness(this.getCompanyColor, this.buttonState);\n if (this.variant === 'text' || this.variant === 'text-inline') {\n styleObj['--active-color'] = this.companyColor ? adjustLightness(this.getCompanyColor, this.buttonState) : '#666666';\n }\n } else if ((this.variant === 'primary' || this.variant === 'text' || this.variant === 'text-inline') && this.applicationTheme === 'classic' && this.buttonState !== 'default') {\n styleObj[this.variant === 'primary' ? 'background-color' : 'color'] = adjustLightness(this.getCompanyColor, this.buttonState, 'classic');\n } else if (this.getCompanyColor && (this.variant === 'link' || this.variant === 'tertiary' || this.variant === 'icon-button')) {\n styleObj['color'] = this.getCompanyColor;\n } else if (this.hasBackground) {\n styleObj['--ghost-background'] = '#ffffff';\n }\n return styleObj;\n }\n\n //Show or hide spinner\n get showSpinner(): boolean {\n const isNotTab = this.variant !== 'tab';\n const isNotLink = this.variant !== 'link';\n const isLoading = this.loading === true;\n return isLoading && isNotTab && isNotLink;\n }\n\n //Show button with <button> or <a> tag\n showButtonLink(): boolean {\n return this.variant !== 'link';\n }\n\n setIconButtonSize(): IconButtonSize {\n return this.size === 'big' ? '40' : this.size === 'small' ? '24' : '32';\n }\n\n onPressed(ev: Event): void {\n if (ev.type === 'mousedown') {\n this.buttonState = 'pressed';\n } else {\n this.buttonState = this.hover ? 'hover' : 'default';\n }\n\n this.styleCss = this.setCssStyle();\n }\n\n focus(origin?: FocusOrigin): void {\n this.buttonElement.focus(origin);\n }\n\n get getCompanyColor(): string {\n return this.companyColor || ((this.variant === 'text' || this.variant === 'text-inline') ? this.applicationTheme === 'dark' ? '#ffffff' : '#242424' : (this.applicationTheme === 'classic' ? '#46A997' : '#D410AA'));\n }\n\n get shouldChangeFilledStatus(): boolean {\n return this.applicationTheme !== 'classic' && this.variant !== 'primary' && this.variant !== 'secondary' && !this.coloredIcons.includes(this.icon);\n }\n\n onKeydown(event: KeyboardEvent): void {\n if (event.key === ' ') {\n event.preventDefault();\n const target = event.target as HTMLElement;\n target.click();\n }\n\n if (event.key === 'Enter' || event.key === ' ') {\n this.buttonState = 'pressed';\n this.styleCss = this.setCssStyle();\n }\n }\n\n onKeyup(event: KeyboardEvent): void {\n if (event.key === 'Enter' || event.key === ' ') {\n this.buttonState = this.hover ? 'hover' : 'default';\n this.styleCss = this.setCssStyle();\n }\n }\n\n onLabelEllipsisChange(state: boolean): void {\n this.labelEllipsis = state;\n }\n\n getIconName(iconName: string, defaultValue: string): IconName {\n if (iconName.includes('filled')) {\n return iconName.replace(/filled/, 'in-line') as IconName;\n } else if (iconName.includes('in-line')) {\n return iconName.replace(/in-line/, 'filled') as IconName;\n } else {\n return (iconName + defaultValue) as IconName;\n }\n }\n\n private createAriaLabelledById(): void {\n const labelledByValue = this.variant === 'link' ? 'labelledby-link' : 'labelledby';\n this.ariaLabelledbyId = `${labelledByValue}-uiButton-${++ButtonComponent.nextAriaLabelledId}`;\n }\n}\n","<div\n #tooltipElement\n class=\"tooltip\"\n [matTooltip]=\"tooltip ? tooltip : labelEllipsis ? label : ''\"\n [matTooltipClass]=\"applicationTheme\"\n></div>\n<div\n class=\"button-wrapper\"\n [ngClass]=\"{\n 'full-width': fullWidth,\n 'rounded-icon': applicationTheme !== 'classic' && icon && !label,\n link: !isButtonLink,\n }\"\n>\n <div\n class=\"button-container\"\n [ngClass]=\"{\n disabled: disabled,\n 'button-scale': buttonState === 'pressed' && applicationTheme !== 'classic' && !disabledScaleOnClick,\n }\"\n >\n <span *ngIf=\"isPremium && typeIncluded\" class=\"right-top\">\n <img [attr.src]=\"'/images/premium.svg'\" [alt]=\"'premium-icon'\" />\n </span>\n <ui-badge\n id=\"badge\"\n *ngIf=\"buttonBadgeConfig?.badgeType\"\n [rebrandColor]=\"buttonBadgeConfig?.rebrandColor ?? 'brand'\"\n [variant]=\"buttonBadgeConfig!.badgeType!\"\n [label]=\"buttonBadgeConfig?.badgeLabel ?? ''\"\n [notificationsAmount]=\"buttonBadgeConfig?.badgeNotificationAmount ?? 0\"\n class=\"right-top\"\n [ngClass]=\"[\n buttonBadgeConfig?.badgeType === 'primary' ? 'badge-primary' : '',\n buttonBadgeConfig?.badgeType === 'notification' ? 'badge-notification' : '',\n variant,\n ]\"\n ></ui-badge>\n <button\n [style]=\"'--icon-button-size:' + iconButtonSize + 'px'\"\n [ngClass]=\"classCss\"\n [ngStyle]=\"styleCss\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick($event)\"\n (mouseleave)=\"buttonHover($event)\"\n (mouseenter)=\"buttonHover($event)\"\n (mousedown)=\"onPressed($event)\"\n (mouseup)=\"onPressed($event)\"\n (keydown)=\"onKeydown($event)\"\n (keyup)=\"onKeyup($event)\"\n *ngIf=\"isButtonLink\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledbyId\"\n [attr.aria-describedby]=\"'describedby'\"\n [attr.aria-disabled]=\"disabled\"\n [type]=\"type\"\n [disableRipple]=\"applicationTheme !== 'classic'\"\n [matTooltip]=\"tooltip ? tooltip : labelEllipsis ? label : ''\"\n [matTooltipClass]=\"applicationTheme\"\n [matTooltipPosition]=\"tooltipPosition\"\n #buttonElement\n [attr.role]=\"role\"\n mat-flat-button\n >\n <span id=\"describedby\" [style.display]=\"'none'\">\n {{ isPremium ? label + ' ' + ('BUTTON.PREMIUM_FEATURE' | uiTranslate | async) : ariaDescribedby }}\n </span>\n <span [id]=\"ariaLabelledbyId\" [style.display]=\"'none'\">\n {{ ariaLabelledby }}\n </span>\n <ng-container *ngIf=\"showSpinner; else icons\">\n <span class=\"spinner-wrapper\">\n <mat-spinner class=\"position-spinner\" aria-label=\"loading\" mode=\"indeterminate\" diameter=\"24\"></mat-spinner>\n </span>\n </ng-container>\n <ng-template #icons>\n <span class=\"icon-only-wrapper\" *ngIf=\"justIcon && !!icon\">\n <span class=\"icon only\" role=\"label\">\n <ui-icon\n [color]=\"variant === 'ghost-ai' ? 'ai' : 'inherit'\"\n [applicationTheme]=\"applicationTheme\"\n [name]=\"icon\"\n [filled]=\"isFilledIcon || iconFilled\"\n [useFullIconName]=\"variant === 'primary' || variant === 'secondary'\"\n [size]=\"size === 'small' ? '16' : '24'\"\n ></ui-icon>\n </span>\n </span>\n\n <span class=\"icon-label-wrapper\" [ngClass]=\"{ 'center-text': iconName === '' }\" *ngIf=\"!justIcon\">\n <span class=\"icon\" *ngIf=\"iconPosition === 'left' && !!iconName\" aria-hidden=\"true\">\n <ui-icon\n [color]=\"variant === 'ghost-ai' ? 'ai' : 'inherit'\"\n [applicationTheme]=\"applicationTheme\"\n [name]=\"icon\"\n [filled]=\"isFilledIcon || iconFilled\"\n [useFullIconName]=\"variant === 'primary' || variant === 'secondary'\"\n [size]=\"size === 'small' ? '16' : '24'\"\n ></ui-icon>\n </span>\n <span\n *ngIf=\"isLabel\"\n class=\"label\"\n id=\"label\"\n uiEllipseText\n [isMultiline]=\"true\"\n (onChangeTextState)=\"onLabelEllipsisChange($event)\"\n >\n {{ label }}\n </span>\n <span class=\"icon\" *ngIf=\"iconPosition === 'right' && !!icon\" aria-hidden=\"true\"\n ><ui-icon\n [color]=\"variant === 'ghost-ai' ? 'ai' : 'inherit'\"\n [applicationTheme]=\"applicationTheme\"\n [name]=\"icon\"\n [filled]=\"isFilledIcon || iconFilled\"\n [size]=\"size === 'small' ? '16' : '24'\"\n [useFullIconName]=\"variant === 'primary' || variant === 'secondary'\"\n ></ui-icon\n ></span>\n </span>\n </ng-template>\n </button>\n <a\n #buttonElement\n [ngClass]=\"classCss\"\n [ngStyle]=\"styleCss\"\n [disabled]=\"disabled\"\n (click)=\"buttonClick($event)\"\n (mouseenter)=\"buttonHover($event)\"\n (mouseleave)=\"buttonHover($event)\"\n (mousedown)=\"onPressed($event)\"\n (mouseup)=\"onPressed($event)\"\n (keydown)=\"onKeydown($event)\"\n (keyup)=\"onKeyup($event)\"\n [disableRipple]=\"true\"\n *ngIf=\"!isButtonLink\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledbyId\"\n [attr.aria-describedby]=\"'describedby-link'\"\n [attr.aria-disabled]=\"disabled\"\n [matTooltip]=\"tooltip ? tooltip : labelEllipsis ? label : ''\"\n [matTooltipClass]=\"applicationTheme\"\n role=\"link\"\n [href]=\"url\"\n [target]=\"urlTarget\"\n mat-flat-button\n >\n <span id=\"describedby-link\" [style.display]=\"'none'\">\n {{ ariaDescribedby }}\n </span>\n <span [id]=\"ariaLabelledbyId\" [style.display]=\"'none'\">\n {{ ariaLabelledby }}\n </span>\n <span class=\"icon-label-wrapper\">\n {{ label }}\n </span>\n </a>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { IconComponentModule } from '@testgorilla/tgo-ui/components/icon';\nimport { ButtonComponent } from './button.component';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { BadgeComponentModule } from '@testgorilla/tgo-ui/components/badge';\nimport { EllipseTextDirective } from '@testgorilla/tgo-ui/components/core';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { UiTranslatePipe } from '@testgorilla/tgo-ui/components/core';\n\n@NgModule({\n declarations: [ButtonComponent],\n imports: [\n CommonModule,\n MatButtonModule,\n IconComponentModule,\n MatProgressSpinnerModule,\n MatTooltipModule,\n BadgeComponentModule,\n EllipseTextDirective,\n MatRadioModule,\n UiTranslatePipe,\n ],\n exports: [ButtonComponent],\n providers: [],\n})\nexport class ButtonComponentModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|