@testgorilla/tgo-ui 11.8.0 → 11.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/README.md +114 -0
  2. package/fesm2022/testgorilla-tgo-ui-components-ai-feedback.mjs +1 -1
  3. package/fesm2022/testgorilla-tgo-ui-components-ai-feedback.mjs.map +1 -1
  4. package/fesm2022/testgorilla-tgo-ui-components-alert-banner.mjs +21 -2
  5. package/fesm2022/testgorilla-tgo-ui-components-alert-banner.mjs.map +1 -1
  6. package/fesm2022/testgorilla-tgo-ui-components-autocomplete-v2.mjs +4 -3
  7. package/fesm2022/testgorilla-tgo-ui-components-autocomplete-v2.mjs.map +1 -1
  8. package/fesm2022/testgorilla-tgo-ui-components-autocomplete.mjs +5 -2
  9. package/fesm2022/testgorilla-tgo-ui-components-autocomplete.mjs.map +1 -1
  10. package/fesm2022/testgorilla-tgo-ui-components-avatar.mjs +1 -1
  11. package/fesm2022/testgorilla-tgo-ui-components-avatar.mjs.map +1 -1
  12. package/fesm2022/testgorilla-tgo-ui-components-breadcrumb.mjs +10 -4
  13. package/fesm2022/testgorilla-tgo-ui-components-breadcrumb.mjs.map +1 -1
  14. package/fesm2022/testgorilla-tgo-ui-components-button.mjs +5 -2
  15. package/fesm2022/testgorilla-tgo-ui-components-button.mjs.map +1 -1
  16. package/fesm2022/testgorilla-tgo-ui-components-card.mjs +36 -19
  17. package/fesm2022/testgorilla-tgo-ui-components-card.mjs.map +1 -1
  18. package/fesm2022/testgorilla-tgo-ui-components-checkbox.mjs +26 -3
  19. package/fesm2022/testgorilla-tgo-ui-components-checkbox.mjs.map +1 -1
  20. package/fesm2022/testgorilla-tgo-ui-components-checklist.mjs +8 -3
  21. package/fesm2022/testgorilla-tgo-ui-components-checklist.mjs.map +1 -1
  22. package/fesm2022/testgorilla-tgo-ui-components-datepicker.mjs +12 -3
  23. package/fesm2022/testgorilla-tgo-ui-components-datepicker.mjs.map +1 -1
  24. package/fesm2022/testgorilla-tgo-ui-components-device-control.mjs +7 -4
  25. package/fesm2022/testgorilla-tgo-ui-components-device-control.mjs.map +1 -1
  26. package/fesm2022/testgorilla-tgo-ui-components-dialog.mjs +13 -4
  27. package/fesm2022/testgorilla-tgo-ui-components-dialog.mjs.map +1 -1
  28. package/fesm2022/testgorilla-tgo-ui-components-dropdown.mjs +8 -2
  29. package/fesm2022/testgorilla-tgo-ui-components-dropdown.mjs.map +1 -1
  30. package/fesm2022/testgorilla-tgo-ui-components-empty-state.mjs +1 -1
  31. package/fesm2022/testgorilla-tgo-ui-components-empty-state.mjs.map +1 -1
  32. package/fesm2022/testgorilla-tgo-ui-components-field.mjs +6 -3
  33. package/fesm2022/testgorilla-tgo-ui-components-field.mjs.map +1 -1
  34. package/fesm2022/testgorilla-tgo-ui-components-file-upload.mjs +9 -3
  35. package/fesm2022/testgorilla-tgo-ui-components-file-upload.mjs.map +1 -1
  36. package/fesm2022/testgorilla-tgo-ui-components-filter-button.mjs +14 -2
  37. package/fesm2022/testgorilla-tgo-ui-components-filter-button.mjs.map +1 -1
  38. package/fesm2022/testgorilla-tgo-ui-components-infinite-scroll-table.mjs +17 -3
  39. package/fesm2022/testgorilla-tgo-ui-components-infinite-scroll-table.mjs.map +1 -1
  40. package/fesm2022/testgorilla-tgo-ui-components-inline-field.mjs +7 -4
  41. package/fesm2022/testgorilla-tgo-ui-components-inline-field.mjs.map +1 -1
  42. package/fesm2022/testgorilla-tgo-ui-components-media-card.mjs +1 -1
  43. package/fesm2022/testgorilla-tgo-ui-components-media-card.mjs.map +1 -1
  44. package/fesm2022/testgorilla-tgo-ui-components-media-dialog.mjs +1 -1
  45. package/fesm2022/testgorilla-tgo-ui-components-media-dialog.mjs.map +1 -1
  46. package/fesm2022/testgorilla-tgo-ui-components-multi-input.mjs +7 -4
  47. package/fesm2022/testgorilla-tgo-ui-components-multi-input.mjs.map +1 -1
  48. package/fesm2022/testgorilla-tgo-ui-components-navbar.mjs +2 -2
  49. package/fesm2022/testgorilla-tgo-ui-components-navbar.mjs.map +1 -1
  50. package/fesm2022/testgorilla-tgo-ui-components-overflow-menu.mjs +9 -2
  51. package/fesm2022/testgorilla-tgo-ui-components-overflow-menu.mjs.map +1 -1
  52. package/fesm2022/testgorilla-tgo-ui-components-page-header.mjs +5 -2
  53. package/fesm2022/testgorilla-tgo-ui-components-page-header.mjs.map +1 -1
  54. package/fesm2022/testgorilla-tgo-ui-components-paginator.mjs +8 -2
  55. package/fesm2022/testgorilla-tgo-ui-components-paginator.mjs.map +1 -1
  56. package/fesm2022/testgorilla-tgo-ui-components-password-criteria.mjs +1 -1
  57. package/fesm2022/testgorilla-tgo-ui-components-password-criteria.mjs.map +1 -1
  58. package/fesm2022/testgorilla-tgo-ui-components-phone-input.mjs +13 -3
  59. package/fesm2022/testgorilla-tgo-ui-components-phone-input.mjs.map +1 -1
  60. package/fesm2022/testgorilla-tgo-ui-components-popover.mjs +1 -1
  61. package/fesm2022/testgorilla-tgo-ui-components-popover.mjs.map +1 -1
  62. package/fesm2022/testgorilla-tgo-ui-components-popup-tip.mjs +4 -3
  63. package/fesm2022/testgorilla-tgo-ui-components-popup-tip.mjs.map +1 -1
  64. package/fesm2022/testgorilla-tgo-ui-components-prompt.mjs +18 -4
  65. package/fesm2022/testgorilla-tgo-ui-components-prompt.mjs.map +1 -1
  66. package/fesm2022/testgorilla-tgo-ui-components-radial-progress.mjs +1 -1
  67. package/fesm2022/testgorilla-tgo-ui-components-radial-progress.mjs.map +1 -1
  68. package/fesm2022/testgorilla-tgo-ui-components-radio-button.mjs +21 -1
  69. package/fesm2022/testgorilla-tgo-ui-components-radio-button.mjs.map +1 -1
  70. package/fesm2022/testgorilla-tgo-ui-components-rating.mjs +8 -2
  71. package/fesm2022/testgorilla-tgo-ui-components-rating.mjs.map +1 -1
  72. package/fesm2022/testgorilla-tgo-ui-components-scale-table.mjs +1 -1
  73. package/fesm2022/testgorilla-tgo-ui-components-scale-table.mjs.map +1 -1
  74. package/fesm2022/testgorilla-tgo-ui-components-scale.mjs +11 -2
  75. package/fesm2022/testgorilla-tgo-ui-components-scale.mjs.map +1 -1
  76. package/fesm2022/testgorilla-tgo-ui-components-segmented-bar.mjs +5 -2
  77. package/fesm2022/testgorilla-tgo-ui-components-segmented-bar.mjs.map +1 -1
  78. package/fesm2022/testgorilla-tgo-ui-components-segmented-button.mjs +15 -3
  79. package/fesm2022/testgorilla-tgo-ui-components-segmented-button.mjs.map +1 -1
  80. package/fesm2022/testgorilla-tgo-ui-components-segmented-toggle.mjs +11 -3
  81. package/fesm2022/testgorilla-tgo-ui-components-segmented-toggle.mjs.map +1 -1
  82. package/fesm2022/testgorilla-tgo-ui-components-selectable-card.mjs +7 -4
  83. package/fesm2022/testgorilla-tgo-ui-components-selectable-card.mjs.map +1 -1
  84. package/fesm2022/testgorilla-tgo-ui-components-side-navigation.mjs +1 -1
  85. package/fesm2022/testgorilla-tgo-ui-components-side-navigation.mjs.map +1 -1
  86. package/fesm2022/testgorilla-tgo-ui-components-side-panel.mjs +5 -2
  87. package/fesm2022/testgorilla-tgo-ui-components-side-panel.mjs.map +1 -1
  88. package/fesm2022/testgorilla-tgo-ui-components-side-sheet.mjs +11 -2
  89. package/fesm2022/testgorilla-tgo-ui-components-side-sheet.mjs.map +1 -1
  90. package/fesm2022/testgorilla-tgo-ui-components-slider.mjs +18 -3
  91. package/fesm2022/testgorilla-tgo-ui-components-slider.mjs.map +1 -1
  92. package/fesm2022/testgorilla-tgo-ui-components-snackbar.mjs +8 -2
  93. package/fesm2022/testgorilla-tgo-ui-components-snackbar.mjs.map +1 -1
  94. package/fesm2022/testgorilla-tgo-ui-components-stepper.mjs +11 -2
  95. package/fesm2022/testgorilla-tgo-ui-components-stepper.mjs.map +1 -1
  96. package/fesm2022/testgorilla-tgo-ui-components-table.mjs +8 -2
  97. package/fesm2022/testgorilla-tgo-ui-components-table.mjs.map +1 -1
  98. package/fesm2022/testgorilla-tgo-ui-components-tabs.mjs +4 -3
  99. package/fesm2022/testgorilla-tgo-ui-components-tabs.mjs.map +1 -1
  100. package/fesm2022/testgorilla-tgo-ui-components-tag.mjs +5 -3
  101. package/fesm2022/testgorilla-tgo-ui-components-tag.mjs.map +1 -1
  102. package/fesm2022/testgorilla-tgo-ui-components-toggle.mjs +10 -3
  103. package/fesm2022/testgorilla-tgo-ui-components-toggle.mjs.map +1 -1
  104. package/fesm2022/testgorilla-tgo-ui-components-write-with-ai.mjs +1 -1
  105. package/fesm2022/testgorilla-tgo-ui-components-write-with-ai.mjs.map +1 -1
  106. package/mcp/catalog.json +1 -1
  107. package/package.json +1 -1
  108. package/types/testgorilla-tgo-ui-components-alert-banner.d.ts +16 -3
  109. package/types/testgorilla-tgo-ui-components-autocomplete-v2.d.ts +2 -1
  110. package/types/testgorilla-tgo-ui-components-autocomplete.d.ts +2 -1
  111. package/types/testgorilla-tgo-ui-components-breadcrumb.d.ts +4 -1
  112. package/types/testgorilla-tgo-ui-components-button.d.ts +2 -1
  113. package/types/testgorilla-tgo-ui-components-card.d.ts +16 -3
  114. package/types/testgorilla-tgo-ui-components-checkbox.d.ts +4 -1
  115. package/types/testgorilla-tgo-ui-components-checklist.d.ts +3 -1
  116. package/types/testgorilla-tgo-ui-components-datepicker.d.ts +4 -1
  117. package/types/testgorilla-tgo-ui-components-device-control.d.ts +4 -1
  118. package/types/testgorilla-tgo-ui-components-dialog.d.ts +4 -1
  119. package/types/testgorilla-tgo-ui-components-dropdown.d.ts +3 -1
  120. package/types/testgorilla-tgo-ui-components-field.d.ts +4 -1
  121. package/types/testgorilla-tgo-ui-components-file-upload.d.ts +3 -1
  122. package/types/testgorilla-tgo-ui-components-filter-button.d.ts +5 -1
  123. package/types/testgorilla-tgo-ui-components-infinite-scroll-table.d.ts +6 -1
  124. package/types/testgorilla-tgo-ui-components-inline-field.d.ts +4 -1
  125. package/types/testgorilla-tgo-ui-components-multi-input.d.ts +4 -1
  126. package/types/testgorilla-tgo-ui-components-overflow-menu.d.ts +3 -1
  127. package/types/testgorilla-tgo-ui-components-page-header.d.ts +2 -1
  128. package/types/testgorilla-tgo-ui-components-paginator.d.ts +3 -1
  129. package/types/testgorilla-tgo-ui-components-phone-input.d.ts +4 -1
  130. package/types/testgorilla-tgo-ui-components-popup-tip.d.ts +2 -1
  131. package/types/testgorilla-tgo-ui-components-prompt.d.ts +6 -1
  132. package/types/testgorilla-tgo-ui-components-radio-button.d.ts +4 -1
  133. package/types/testgorilla-tgo-ui-components-rating.d.ts +3 -1
  134. package/types/testgorilla-tgo-ui-components-scale.d.ts +4 -1
  135. package/types/testgorilla-tgo-ui-components-segmented-bar.d.ts +2 -1
  136. package/types/testgorilla-tgo-ui-components-segmented-button.d.ts +6 -1
  137. package/types/testgorilla-tgo-ui-components-segmented-toggle.d.ts +4 -1
  138. package/types/testgorilla-tgo-ui-components-selectable-card.d.ts +4 -1
  139. package/types/testgorilla-tgo-ui-components-side-panel.d.ts +3 -0
  140. package/types/testgorilla-tgo-ui-components-side-sheet.d.ts +4 -1
  141. package/types/testgorilla-tgo-ui-components-slider.d.ts +6 -1
  142. package/types/testgorilla-tgo-ui-components-snackbar.d.ts +3 -1
  143. package/types/testgorilla-tgo-ui-components-stepper.d.ts +4 -1
  144. package/types/testgorilla-tgo-ui-components-table.d.ts +3 -1
  145. package/types/testgorilla-tgo-ui-components-tabs.d.ts +3 -1
  146. package/types/testgorilla-tgo-ui-components-tag.d.ts +3 -1
  147. package/types/testgorilla-tgo-ui-components-toggle.d.ts +5 -1
@@ -1 +1 @@
1
- {"version":3,"file":"testgorilla-tgo-ui-components-alert-banner.mjs","sources":["../../../components/alert-banner/alert-banner.component.ts","../../../components/alert-banner/alert-banner.component.html","../../../components/alert-banner/alert-banner.component.module.ts","../../../components/alert-banner/testgorilla-tgo-ui-components-alert-banner.ts"],"sourcesContent":["import { animate, style, transition, trigger } from '@angular/animations';\nimport { NgClass, AsyncPipe, UpperCasePipe } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n OnChanges,\n OnInit,\n Optional,\n Output,\n SimpleChanges,\n} from '@angular/core';\n\nimport { ButtonComponent } from '@testgorilla/tgo-ui/components/button';\nimport {\n ApplicationTheme,\n Color,\n AlertBarType,\n AlertVariant,\n alertBarsUtil,\n UiTranslatePipe,\n} from '@testgorilla/tgo-ui/components/core';\nimport { IconName, IconComponentModule } from '@testgorilla/tgo-ui/components/icon';\nimport { SpinnerComponent } from '@testgorilla/tgo-ui/components/spinner';\n\nimport { AlertBannerAction, LinkTargetType } from './alert-banner.model';\n\n@Component({\n selector: 'ui-alert-banner',\n templateUrl: './alert-banner.component.html',\n styleUrls: ['./alert-banner.component.scss'],\n /* eslint-disable @typescript-eslint/no-deprecated -- the @angular/animations trigger/state/style/animate/transition DSL is deprecated in 20.2 in favor of template-level animate.enter/animate.leave; migrating every Material/component animation is out of scope for this lint pass */\n animations: [\n trigger('openClose', [\n transition(':enter', [animate('0.2s ease-out', style({ opacity: 1 }))]),\n transition(':leave', [animate('0.2s ease-in', style({ opacity: 0 }))]),\n ]),\n ],\n /* eslint-enable @typescript-eslint/no-deprecated */\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass, IconComponentModule, SpinnerComponent, ButtonComponent, AsyncPipe, UpperCasePipe, UiTranslatePipe],\n})\nexport class AlertBannerComponent implements OnInit, OnChanges {\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 /**\n * Alert Banner type\n *\n * @type {AlertBarType}\n * @default 'success'\n * @memberof AlertBannerComponent\n */\n @Input() alertType: AlertBarType = 'success';\n\n /**\n * Alert Banner variant\n *\n * @type {AlertVariant}\n * @default 'banner'\n * @memberof AlertBannerComponent\n */\n @Input() alertVariant: AlertVariant = 'banner';\n\n /**\n * Alert banner message\n *\n * @memberof AlertBannerComponent\n */\n @Input() message = '';\n\n /**\n * Include dismmiss button\n *\n * @default true\n * @memberof AlertBannerComponent\n */\n @Input() includeDismissButton = true;\n\n /**\n * Include shadow or not\n *\n * @default false\n * @memberof AlertBannerComponent\n */\n @Input() shadow = false;\n\n /**\n * Link text that will appended at the end of message\n *\n * @default ''\n * @memberof AlertBannerComponent\n */\n @Input() linkText? = '';\n\n /**\n * Link url\n *\n * @memberof AlertBannerComponent\n */\n @Input() linkUrl?: string;\n\n /**\n * Link target\n *\n * @type {@type {LinkTargetType}}\n * @default '_blank'\n * @memberof AlertBannerComponent\n */\n @Input() linkTarget?: LinkTargetType = '_blank';\n\n /**\n * Optional action buttons displayed on the right side of the banner.\n *\n * @type {AlertBannerAction[]}\n * @default []\n * @memberof AlertBannerComponent\n */\n @Input() actions: AlertBannerAction[] = [];\n\n /**\n *\n * Defines the application theme\n *\n * @type {ApplicationTheme}\n * @default 'light'\n * @memberof AlertBannerComponent\n */\n @Input() applicationTheme: ApplicationTheme = 'light';\n\n /**\n * Sets the full width\n *\n * @type {boolean}\n * @memberof AlertBannerComponent\n */\n @Input() isFullWidth: boolean | undefined;\n\n /**\n * Close button tooltip\n *\n * @type {string}\n * @default ''\n * @memberof AlertBannerComponent\n */\n @Input() closeButtonTooltip = '';\n\n /**\n * Shows icon\n *\n * @type {boolean}\n * @default true\n * @memberof AlertBannerComponent\n */\n @Input() hasIcon = true;\n\n /**\n * Controls loading state for spinner visibility.\n *\n * @type {boolean}\n * @default false\n * @memberof AlertBannerComponent\n */\n @Input() isLoading = false;\n\n /**\n * Sets the alert banner position\n *\n * @type {boolean}\n * @default false\n * @memberof AlertBannerComponent\n */\n @Input() fixed = false;\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 AlertBannerComponent\n */\n @Input() ariaDescribedby = '';\n\n @Input() secondaryAlerts: string[] = [];\n\n /**\n * Emitted when the user clicks the built-in dismiss button.\n *\n * @memberof AlertBannerComponent\n */\n @Output() dismiss = new EventEmitter<void>();\n\n @HostBinding('class.display-none') get isDismissed() {\n return this.dismissAlertBanner;\n }\n\n iconName: IconName;\n iconColor: Color;\n visible = true;\n fullWidth: boolean;\n position: string;\n cssClass: string;\n dismissAlertBanner = false;\n\n ngOnInit(): void {\n this.updateBanner();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['alertType']) {\n this.updateBanner();\n }\n }\n\n private updateBanner(): void {\n this.iconName = alertBarsUtil.setIcon(this.alertType) as IconName;\n this.iconColor = alertBarsUtil.setIconColor(this.alertType);\n this.position = alertBarsUtil.setPosition(this.fixed);\n this.fullWidth = this.isFullWidth ?? this.alertVariant === 'banner';\n this.cssClass = alertBarsUtil.setCssClass(this.fullWidth, this.alertType, this.position, this.alertVariant);\n }\n\n //Hide snackbar when dismiss button is clicked\n dismissClick() {\n this.visible = false;\n this.dismiss.emit();\n setTimeout(() => {\n this.dismissAlertBanner = true;\n }, 200);\n }\n}\n","@if (visible) {\n <div\n [ngClass]=\"cssClass\"\n [@openClose]\n role=\"alert\"\n class=\"alert-container\"\n [attr.theme]=\"applicationTheme\"\n [class.shadow]=\"alertVariant === 'callout' && shadow\"\n [attr.aria-live]=\"alertType === 'error' || alertType === 'warning' ? 'assertive' : 'polite'\"\n [attr.aria-describedby]=\"'describedby'\"\n [attr.aria-labelledby]=\"'labelledby'\"\n [tabIndex]=\"0\"\n >\n <span style=\"position: absolute; left: -9999px\" id=\"labelledby\">{{\n 'ALERT_BANNER.' + (alertType | uppercase) | uiTranslate | async\n }}</span>\n <span [style.display]=\"'none'\" id=\"describedby\">{{ ariaDescribedby }}</span>\n <div class=\"primary-alert-container\">\n <div class=\"alert-text\">\n @if (hasIcon) {\n <ui-icon\n class=\"left-icon\"\n [name]=\"iconName\"\n size=\"24\"\n [color]=\"iconColor\"\n [applicationTheme]=\"applicationTheme\"\n ></ui-icon>\n }\n @if (isLoading) {\n <ui-spinner\n class=\"loading-spinner\"\n size=\"small\"\n [isLoader]=\"false\"\n [applicationTheme]=\"applicationTheme\"\n ></ui-spinner>\n }\n <span [innerHTML]=\"message\"></span>\n <span class=\"projected-content\"><ng-content></ng-content></span>\n @if (!!linkText) {\n <a [target]=\"linkTarget\" [href]=\"linkUrl\">{{ linkText }}</a>\n }\n </div>\n @if (actions.length > 0) {\n <div class=\"actions-container\">\n @for (action of actions; track $index) {\n <ui-button\n class=\"action-button\"\n [variant]=\"action.variant ?? 'text-inline'\"\n [label]=\"action.label\"\n [size]=\"action.size ?? 'medium'\"\n [disabled]=\"!!action.disabled\"\n [applicationTheme]=\"applicationTheme\"\n (buttonClickEvent)=\"action.onClick($event)\"\n [fullWidth]=\"true\"\n ></ui-button>\n }\n </div>\n }\n @if (includeDismissButton && applicationTheme === 'classic') {\n <ui-button\n variant=\"text\"\n [justIcon]=\"true\"\n class=\"close\"\n iconName=\"Close\"\n (buttonClickEvent)=\"dismissClick()\"\n ></ui-button>\n }\n @if (includeDismissButton && applicationTheme !== 'classic') {\n <ui-button\n class=\"right-icon\"\n [variant]=\"'icon-button'\"\n [applicationTheme]=\"applicationTheme\"\n [iconName]=\"'Close'\"\n [size]=\"'small'\"\n [justIcon]=\"true\"\n [tooltip]=\"(closeButtonTooltip || ('COMMON.CLOSE' | uiTranslate | async))!\"\n (click)=\"dismissClick()\"\n ></ui-button>\n }\n </div>\n @if (secondaryAlerts.length > 0) {\n <div class=\"secondary-alerts-container\">\n <ul>\n @for (alert of secondaryAlerts; track alert) {\n <li class=\"secondary-alert-item\" [innerHTML]=\"alert\"></li>\n }\n </ul>\n </div>\n }\n </div>\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { ButtonComponentModule } from '@testgorilla/tgo-ui/components/button';\nimport { UiTranslatePipe } from '@testgorilla/tgo-ui/components/core';\nimport { IconComponentModule } from '@testgorilla/tgo-ui/components/icon';\nimport { SpinnerComponentModule } from '@testgorilla/tgo-ui/components/spinner';\n\nimport { AlertBannerComponent } from './alert-banner.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ButtonComponentModule,\n IconComponentModule,\n SpinnerComponentModule,\n UiTranslatePipe,\n AlertBannerComponent,\n ],\n exports: [AlertBannerComponent],\n})\nexport class AlertBannerComponentModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;MA6Ca,oBAAoB,CAAA;AAC/B,IAAA,WAAA,CAC6E,eAAiC,EAAA;QAAjC,IAAA,CAAA,eAAe,GAAf,eAAe;AAO5F;;;;;;AAMG;QACM,IAAA,CAAA,SAAS,GAAiB,SAAS;AAE5C;;;;;;AAMG;QACM,IAAA,CAAA,YAAY,GAAiB,QAAQ;AAE9C;;;;AAIG;QACM,IAAA,CAAA,OAAO,GAAG,EAAE;AAErB;;;;;AAKG;QACM,IAAA,CAAA,oBAAoB,GAAG,IAAI;AAEpC;;;;;AAKG;QACM,IAAA,CAAA,MAAM,GAAG,KAAK;AAEvB;;;;;AAKG;QACM,IAAA,CAAA,QAAQ,GAAI,EAAE;AASvB;;;;;;AAMG;QACM,IAAA,CAAA,UAAU,GAAoB,QAAQ;AAE/C;;;;;;AAMG;QACM,IAAA,CAAA,OAAO,GAAwB,EAAE;AAE1C;;;;;;;AAOG;QACM,IAAA,CAAA,gBAAgB,GAAqB,OAAO;AAUrD;;;;;;AAMG;QACM,IAAA,CAAA,kBAAkB,GAAG,EAAE;AAEhC;;;;;;AAMG;QACM,IAAA,CAAA,OAAO,GAAG,IAAI;AAEvB;;;;;;AAMG;QACM,IAAA,CAAA,SAAS,GAAG,KAAK;AAE1B;;;;;;AAMG;QACM,IAAA,CAAA,KAAK,GAAG,KAAK;AAEtB;;;;;AAKG;QACM,IAAA,CAAA,eAAe,GAAG,EAAE;QAEpB,IAAA,CAAA,eAAe,GAAa,EAAE;AAEvC;;;;AAIG;AACO,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAAQ;QAQ5C,IAAA,CAAA,OAAO,GAAG,IAAI;QAId,IAAA,CAAA,kBAAkB,GAAG,KAAK;QAhKxB,IAAI,eAAe,EAAE;AACnB,YAAA,IAAI,CAAC,gBAAgB,GAAG,eAAe;QACzC;IACF;AAmJA,IAAA,IAAuC,WAAW,GAAA;QAChD,OAAO,IAAI,CAAC,kBAAkB;IAChC;IAUA,QAAQ,GAAA;QACN,IAAI,CAAC,YAAY,EAAE;IACrB;AAEA,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE;YACxB,IAAI,CAAC,YAAY,EAAE;QACrB;IACF;IAEQ,YAAY,GAAA;QAClB,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAa;QACjE,IAAI,CAAC,SAAS,GAAG,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC;QAC3D,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;AACrD,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,YAAY,KAAK,QAAQ;QACnE,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC;IAC7G;;IAGA,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;QACnB,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;QAChC,CAAC,EAAE,GAAG,CAAC;IACT;AA/LW,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,kBAET,oCAAoC,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAF/C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,mqBC7CjC,0nGA2FA,EAAA,MAAA,EAAA,CAAA,kiPAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDhDY,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,OAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,gBAAgB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,qjBAAE,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,aAAa,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,eAAe,EAAA,IAAA,EAAA,aAAA,EAAA,CAAA,EAAA,UAAA,EARxG;YACV,OAAO,CAAC,WAAW,EAAE;AACnB,gBAAA,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACvE,gBAAA,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;aACvE,CAAC;AACH,SAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAKU,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAfhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,EAAA,UAAA,EAIf;wBACV,OAAO,CAAC,WAAW,EAAE;AACnB,4BAAA,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACvE,4BAAA,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;yBACvE,CAAC;AACH,qBAAA,EAAA,eAAA,EAEgB,uBAAuB,CAAC,MAAM,WACtC,CAAC,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,CAAC,EAAA,QAAA,EAAA,0nGAAA,EAAA,MAAA,EAAA,CAAA,kiPAAA,CAAA,EAAA;;0BAIlH;;0BAAY,MAAM;2BAAC,oCAAoC;;sBAczD;;sBASA;;sBAOA;;sBAQA;;sBAQA;;sBAQA;;sBAOA;;sBASA;;sBASA;;sBAUA;;sBAQA;;sBASA;;sBASA;;sBASA;;sBASA;;sBAQA;;sBAEA;;sBAOA;;sBAEA,WAAW;uBAAC,oBAAoB;;;MElLtB,0BAA0B,CAAA;+GAA1B,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,YATnC,YAAY;YACZ,qBAAqB;YACrB,mBAAmB;YACnB,sBAAsB;YACtB,eAAe;AACf,YAAA,oBAAoB,aAEZ,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAEnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,YATnC,YAAY;YACZ,qBAAqB;YACrB,mBAAmB;YACnB,sBAAsB;YAEtB,oBAAoB,CAAA,EAAA,CAAA,CAAA;;4FAIX,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAXtC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,qBAAqB;wBACrB,mBAAmB;wBACnB,sBAAsB;wBACtB,eAAe;wBACf,oBAAoB;AACrB,qBAAA;oBACD,OAAO,EAAE,CAAC,oBAAoB,CAAC;AAChC,iBAAA;;;ACpBD;;AAEG;;;;"}
1
+ {"version":3,"file":"testgorilla-tgo-ui-components-alert-banner.mjs","sources":["../../../components/alert-banner/alert-banner.component.ts","../../../components/alert-banner/alert-banner.component.html","../../../components/alert-banner/alert-banner.component.module.ts","../../../components/alert-banner/testgorilla-tgo-ui-components-alert-banner.ts"],"sourcesContent":["import { animate, style, transition, trigger } from '@angular/animations';\nimport { NgClass, AsyncPipe, UpperCasePipe } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n OnChanges,\n OnInit,\n Optional,\n Output,\n SimpleChanges,\n} from '@angular/core';\n\nimport { ButtonComponent } from '@testgorilla/tgo-ui/components/button';\nimport {\n ApplicationTheme,\n Color,\n AlertBarType,\n AlertVariant,\n alertBarsUtil,\n UiTranslatePipe,\n} from '@testgorilla/tgo-ui/components/core';\nimport { IconName, IconComponentModule, IconSize } from '@testgorilla/tgo-ui/components/icon';\nimport { SpinnerComponent } from '@testgorilla/tgo-ui/components/spinner';\n\nimport { AlertBannerAction, AlertBannerSize, LinkTargetType } from './alert-banner.model';\n\n@Component({\n selector: 'ui-alert-banner',\n templateUrl: './alert-banner.component.html',\n styleUrls: ['./alert-banner.component.scss'],\n /* eslint-disable @typescript-eslint/no-deprecated -- the @angular/animations trigger/state/style/animate/transition DSL is deprecated in 20.2 in favor of template-level animate.enter/animate.leave; migrating every Material/component animation is out of scope for this lint pass */\n animations: [\n trigger('openClose', [\n transition(':enter', [animate('0.2s ease-out', style({ opacity: 1 }))]),\n transition(':leave', [animate('0.2s ease-in', style({ opacity: 0 }))]),\n ]),\n ],\n /* eslint-enable @typescript-eslint/no-deprecated */\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass, IconComponentModule, SpinnerComponent, ButtonComponent, AsyncPipe, UpperCasePipe, UiTranslatePipe],\n})\nexport class AlertBannerComponent implements OnInit, OnChanges {\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 /**\n * Alert Banner type\n *\n * @type {AlertBarType}\n * @default 'success'\n * @memberof AlertBannerComponent\n */\n @Input() alertType: AlertBarType = 'success';\n\n /**\n * Alert Banner variant\n *\n * @type {AlertVariant}\n * @default 'banner'\n * @memberof AlertBannerComponent\n */\n @Input() alertVariant: AlertVariant = 'banner';\n\n /**\n * Alert banner message\n *\n * @memberof AlertBannerComponent\n */\n @Input() message = '';\n\n /**\n * Include dismmiss button\n *\n * @default true\n * @memberof AlertBannerComponent\n */\n @Input() includeDismissButton = true;\n\n /**\n * Include shadow or not\n *\n * @default false\n * @memberof AlertBannerComponent\n */\n @Input() shadow = false;\n\n /**\n * Link text that will appended at the end of message\n *\n * @default ''\n * @memberof AlertBannerComponent\n */\n @Input() linkText? = '';\n\n /**\n * Link url\n *\n * @memberof AlertBannerComponent\n */\n @Input() linkUrl?: string;\n\n /**\n * Link target\n *\n * @type {@type {LinkTargetType}}\n * @default '_blank'\n * @memberof AlertBannerComponent\n */\n @Input() linkTarget?: LinkTargetType = '_blank';\n\n /**\n * Optional action buttons displayed on the right side of the banner.\n *\n * @type {AlertBannerAction[]}\n * @default []\n * @memberof AlertBannerComponent\n */\n @Input() actions: AlertBannerAction[] = [];\n\n /**\n *\n * Defines the application theme\n *\n * @type {ApplicationTheme}\n * @default 'light'\n * @memberof AlertBannerComponent\n */\n @Input() applicationTheme: ApplicationTheme = 'light';\n\n /**\n * Alert density\n *\n * @type {AlertBannerSize}\n * @default 'default'\n * @memberof AlertBannerComponent\n */\n @Input() size: AlertBannerSize = 'default';\n\n /**\n * Sets the full width\n *\n * @type {boolean}\n * @memberof AlertBannerComponent\n */\n @Input() isFullWidth: boolean | undefined;\n\n /**\n * Close button tooltip\n *\n * @type {string}\n * @default ''\n * @memberof AlertBannerComponent\n */\n @Input() closeButtonTooltip = '';\n\n @Input() testId: string | null = null;\n\n get dismissButtonTestId(): string | null {\n return this.testId ? `${this.testId}-dismiss` : null;\n }\n\n /**\n * Shows icon\n *\n * @type {boolean}\n * @default true\n * @memberof AlertBannerComponent\n */\n @Input() hasIcon = true;\n\n /**\n * Controls loading state for spinner visibility.\n *\n * @type {boolean}\n * @default false\n * @memberof AlertBannerComponent\n */\n @Input() isLoading = false;\n\n /**\n * Sets the alert banner position\n *\n * @type {boolean}\n * @default false\n * @memberof AlertBannerComponent\n */\n @Input() fixed = false;\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 AlertBannerComponent\n */\n @Input() ariaDescribedby = '';\n\n @Input() secondaryAlerts: string[] = [];\n\n /**\n * Emitted when the user clicks the built-in dismiss button.\n *\n * @memberof AlertBannerComponent\n */\n @Output() dismiss = new EventEmitter<void>();\n\n @HostBinding('class.display-none') get isDismissed() {\n return this.dismissAlertBanner;\n }\n\n get iconSize(): IconSize {\n return this.size === 'small' ? '16' : '24';\n }\n\n iconName: IconName;\n iconColor: Color;\n visible = true;\n fullWidth: boolean;\n position: string;\n cssClass: string;\n dismissAlertBanner = false;\n\n ngOnInit(): void {\n this.updateBanner();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['alertType']) {\n this.updateBanner();\n }\n }\n\n private updateBanner(): void {\n this.iconName = alertBarsUtil.setIcon(this.alertType) as IconName;\n this.iconColor = alertBarsUtil.setIconColor(this.alertType);\n this.position = alertBarsUtil.setPosition(this.fixed);\n this.fullWidth = this.isFullWidth ?? this.alertVariant === 'banner';\n this.cssClass = alertBarsUtil.setCssClass(this.fullWidth, this.alertType, this.position, this.alertVariant);\n }\n\n //Hide snackbar when dismiss button is clicked\n dismissClick() {\n this.visible = false;\n this.dismiss.emit();\n setTimeout(() => {\n this.dismissAlertBanner = true;\n }, 200);\n }\n}\n","@if (visible) {\n <div\n [ngClass]=\"cssClass\"\n [@openClose]\n role=\"alert\"\n class=\"alert-container\"\n [attr.theme]=\"applicationTheme\"\n [class.shadow]=\"alertVariant === 'callout' && shadow\"\n [class.size-small]=\"size === 'small'\"\n [attr.aria-live]=\"alertType === 'error' || alertType === 'warning' ? 'assertive' : 'polite'\"\n [attr.aria-describedby]=\"'describedby'\"\n [attr.aria-labelledby]=\"'labelledby'\"\n [attr.data-testid]=\"testId\"\n [tabIndex]=\"0\"\n >\n <span style=\"position: absolute; left: -9999px\" id=\"labelledby\">{{\n 'ALERT_BANNER.' + (alertType | uppercase) | uiTranslate | async\n }}</span>\n <span [style.display]=\"'none'\" id=\"describedby\">{{ ariaDescribedby }}</span>\n <div class=\"primary-alert-container\">\n <div class=\"alert-text\">\n @if (hasIcon) {\n <ui-icon\n class=\"left-icon\"\n [name]=\"iconName\"\n [size]=\"iconSize\"\n [color]=\"iconColor\"\n [applicationTheme]=\"applicationTheme\"\n ></ui-icon>\n }\n @if (isLoading) {\n <ui-spinner\n class=\"loading-spinner\"\n size=\"small\"\n [isLoader]=\"false\"\n [applicationTheme]=\"applicationTheme\"\n ></ui-spinner>\n }\n <span [innerHTML]=\"message\"></span>\n <span class=\"projected-content\"><ng-content></ng-content></span>\n @if (!!linkText) {\n <a [target]=\"linkTarget\" [href]=\"linkUrl\">{{ linkText }}</a>\n }\n </div>\n @if (actions.length > 0) {\n <div class=\"actions-container\">\n @for (action of actions; track $index) {\n <ui-button\n class=\"action-button\"\n [variant]=\"action.variant ?? 'text-inline'\"\n [label]=\"action.label\"\n [size]=\"action.size ?? 'medium'\"\n [disabled]=\"!!action.disabled\"\n [applicationTheme]=\"applicationTheme\"\n (buttonClickEvent)=\"action.onClick($event)\"\n [testId]=\"action.testId ?? null\"\n [fullWidth]=\"true\"\n ></ui-button>\n }\n </div>\n }\n @let closeLabel = (closeButtonTooltip || ('COMMON.CLOSE' | uiTranslate | async))!;\n @if (includeDismissButton && applicationTheme === 'classic') {\n <ui-button\n variant=\"text\"\n [justIcon]=\"true\"\n class=\"close\"\n iconName=\"Close\"\n [ariaLabel]=\"closeLabel\"\n [tooltip]=\"closeLabel\"\n (buttonClickEvent)=\"dismissClick()\"\n [testId]=\"dismissButtonTestId\"\n ></ui-button>\n }\n @if (includeDismissButton && applicationTheme !== 'classic') {\n <ui-button\n class=\"right-icon\"\n [variant]=\"'icon-button'\"\n [applicationTheme]=\"applicationTheme\"\n [iconName]=\"'Close'\"\n [size]=\"'small'\"\n [justIcon]=\"true\"\n [tooltip]=\"closeLabel\"\n [ariaLabel]=\"closeLabel\"\n [testId]=\"dismissButtonTestId\"\n (click)=\"dismissClick()\"\n ></ui-button>\n }\n </div>\n @if (secondaryAlerts.length > 0) {\n <div class=\"secondary-alerts-container\">\n <ul>\n @for (alert of secondaryAlerts; track alert) {\n <li class=\"secondary-alert-item\" [innerHTML]=\"alert\"></li>\n }\n </ul>\n </div>\n }\n </div>\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { ButtonComponentModule } from '@testgorilla/tgo-ui/components/button';\nimport { UiTranslatePipe } from '@testgorilla/tgo-ui/components/core';\nimport { IconComponentModule } from '@testgorilla/tgo-ui/components/icon';\nimport { SpinnerComponentModule } from '@testgorilla/tgo-ui/components/spinner';\n\nimport { AlertBannerComponent } from './alert-banner.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ButtonComponentModule,\n IconComponentModule,\n SpinnerComponentModule,\n UiTranslatePipe,\n AlertBannerComponent,\n ],\n exports: [AlertBannerComponent],\n})\nexport class AlertBannerComponentModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;MA6Ca,oBAAoB,CAAA;AAC/B,IAAA,WAAA,CAC6E,eAAiC,EAAA;QAAjC,IAAA,CAAA,eAAe,GAAf,eAAe;AAO5F;;;;;;AAMG;QACM,IAAA,CAAA,SAAS,GAAiB,SAAS;AAE5C;;;;;;AAMG;QACM,IAAA,CAAA,YAAY,GAAiB,QAAQ;AAE9C;;;;AAIG;QACM,IAAA,CAAA,OAAO,GAAG,EAAE;AAErB;;;;;AAKG;QACM,IAAA,CAAA,oBAAoB,GAAG,IAAI;AAEpC;;;;;AAKG;QACM,IAAA,CAAA,MAAM,GAAG,KAAK;AAEvB;;;;;AAKG;QACM,IAAA,CAAA,QAAQ,GAAI,EAAE;AASvB;;;;;;AAMG;QACM,IAAA,CAAA,UAAU,GAAoB,QAAQ;AAE/C;;;;;;AAMG;QACM,IAAA,CAAA,OAAO,GAAwB,EAAE;AAE1C;;;;;;;AAOG;QACM,IAAA,CAAA,gBAAgB,GAAqB,OAAO;AAErD;;;;;;AAMG;QACM,IAAA,CAAA,IAAI,GAAoB,SAAS;AAU1C;;;;;;AAMG;QACM,IAAA,CAAA,kBAAkB,GAAG,EAAE;QAEvB,IAAA,CAAA,MAAM,GAAkB,IAAI;AAMrC;;;;;;AAMG;QACM,IAAA,CAAA,OAAO,GAAG,IAAI;AAEvB;;;;;;AAMG;QACM,IAAA,CAAA,SAAS,GAAG,KAAK;AAE1B;;;;;;AAMG;QACM,IAAA,CAAA,KAAK,GAAG,KAAK;AAEtB;;;;;AAKG;QACM,IAAA,CAAA,eAAe,GAAG,EAAE;QAEpB,IAAA,CAAA,eAAe,GAAa,EAAE;AAEvC;;;;AAIG;AACO,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAAQ;QAY5C,IAAA,CAAA,OAAO,GAAG,IAAI;QAId,IAAA,CAAA,kBAAkB,GAAG,KAAK;QAnLxB,IAAI,eAAe,EAAE;AACnB,YAAA,IAAI,CAAC,gBAAgB,GAAG,eAAe;QACzC;IACF;AAkHA,IAAA,IAAI,mBAAmB,GAAA;AACrB,QAAA,OAAO,IAAI,CAAC,MAAM,GAAG,CAAA,EAAG,IAAI,CAAC,MAAM,CAAA,QAAA,CAAU,GAAG,IAAI;IACtD;AA8CA,IAAA,IAAuC,WAAW,GAAA;QAChD,OAAO,IAAI,CAAC,kBAAkB;IAChC;AAEA,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,IAAI,KAAK,OAAO,GAAG,IAAI,GAAG,IAAI;IAC5C;IAUA,QAAQ,GAAA;QACN,IAAI,CAAC,YAAY,EAAE;IACrB;AAEA,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE;YACxB,IAAI,CAAC,YAAY,EAAE;QACrB;IACF;IAEQ,YAAY,GAAA;QAClB,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAa;QACjE,IAAI,CAAC,SAAS,GAAG,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC;QAC3D,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;AACrD,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,YAAY,KAAK,QAAQ;QACnE,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC;IAC7G;;IAGA,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;QACnB,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;QAChC,CAAC,EAAE,GAAG,CAAC;IACT;AAlNW,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,kBAET,oCAAoC,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAF/C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,msBC7CjC,i/GAoGA,EAAA,MAAA,EAAA,CAAA,m1QAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDzDY,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,OAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,gBAAgB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,+jBAAE,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,aAAa,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,eAAe,EAAA,IAAA,EAAA,aAAA,EAAA,CAAA,EAAA,UAAA,EARxG;YACV,OAAO,CAAC,WAAW,EAAE;AACnB,gBAAA,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACvE,gBAAA,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;aACvE,CAAC;AACH,SAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAKU,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAfhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,EAAA,UAAA,EAIf;wBACV,OAAO,CAAC,WAAW,EAAE;AACnB,4BAAA,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACvE,4BAAA,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;yBACvE,CAAC;AACH,qBAAA,EAAA,eAAA,EAEgB,uBAAuB,CAAC,MAAM,WACtC,CAAC,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,CAAC,EAAA,QAAA,EAAA,i/GAAA,EAAA,MAAA,EAAA,CAAA,m1QAAA,CAAA,EAAA;;0BAIlH;;0BAAY,MAAM;2BAAC,oCAAoC;;sBAczD;;sBASA;;sBAOA;;sBAQA;;sBAQA;;sBAQA;;sBAOA;;sBASA;;sBASA;;sBAUA;;sBASA;;sBAQA;;sBASA;;sBAEA;;sBAaA;;sBASA;;sBASA;;sBAQA;;sBAEA;;sBAOA;;sBAEA,WAAW;uBAAC,oBAAoB;;;MEjMtB,0BAA0B,CAAA;+GAA1B,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,YATnC,YAAY;YACZ,qBAAqB;YACrB,mBAAmB;YACnB,sBAAsB;YACtB,eAAe;AACf,YAAA,oBAAoB,aAEZ,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAEnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,YATnC,YAAY;YACZ,qBAAqB;YACrB,mBAAmB;YACnB,sBAAsB;YAEtB,oBAAoB,CAAA,EAAA,CAAA,CAAA;;4FAIX,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAXtC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,qBAAqB;wBACrB,mBAAmB;wBACnB,sBAAsB;wBACtB,eAAe;wBACf,oBAAoB;AACrB,qBAAA;oBACD,OAAO,EAAE,CAAC,oBAAoB,CAAC;AAChC,iBAAA;;;ACpBD;;AAEG;;;;"}