@testgorilla/tgo-ui 2.13.1 → 2.15.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 (24) hide show
  1. package/components/autocomplete/autocomplete.component.d.ts +7 -1
  2. package/components/button/button.model.d.ts +1 -1
  3. package/components/navbar/navbar.component.d.ts +5 -3
  4. package/components/navbar/navbar.model.d.ts +5 -0
  5. package/components/segmented-button/segmented-button.component.d.ts +25 -3
  6. package/components/segmented-button/segmented-button.component.module.d.ts +2 -1
  7. package/components/segmented-button/segmented-button.model.d.ts +1 -0
  8. package/components/toggle/toggle.component.d.ts +9 -2
  9. package/components/toggle/toggle.component.module.d.ts +3 -1
  10. package/esm2022/components/autocomplete/autocomplete.component.mjs +14 -6
  11. package/esm2022/components/button/button.component.mjs +4 -4
  12. package/esm2022/components/button/button.model.mjs +1 -1
  13. package/esm2022/components/field/field.component.mjs +3 -3
  14. package/esm2022/components/navbar/navbar.component.mjs +14 -10
  15. package/esm2022/components/navbar/navbar.model.mjs +1 -1
  16. package/esm2022/components/segmented-button/segmented-button.component.mjs +51 -16
  17. package/esm2022/components/segmented-button/segmented-button.component.module.mjs +9 -20
  18. package/esm2022/components/segmented-button/segmented-button.model.mjs +1 -1
  19. package/esm2022/components/spinner/spinner.component.mjs +3 -3
  20. package/esm2022/components/toggle/toggle.component.mjs +24 -10
  21. package/esm2022/components/toggle/toggle.component.module.mjs +6 -4
  22. package/fesm2022/testgorilla-tgo-ui.mjs +110 -63
  23. package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
  24. package/package.json +1 -1
@@ -160,6 +160,12 @@ export declare class AutocompleteComponent implements ControlValueAccessor, OnCh
160
160
  * @memberof AutocompleteComponent
161
161
  */
162
162
  virtualScroll: boolean;
163
+ /**
164
+ * @property compareWith
165
+ * @description Custom comparison logic for the autocomplete.
166
+ * @memberof AutocompleteComponent
167
+ */
168
+ compareWith: (a: any, b: any) => boolean;
163
169
  selectionChange: EventEmitter<any>;
164
170
  searchTextChange: EventEmitter<string>;
165
171
  formFieldElement: ElementRef<HTMLElement>;
@@ -218,6 +224,6 @@ export declare class AutocompleteComponent implements ControlValueAccessor, OnCh
218
224
  */
219
225
  private setCompanyColorVariable;
220
226
  static ɵfac: i0.ɵɵFactoryDeclaration<AutocompleteComponent, [{ optional: true; }, null, null, { optional: true; self: true; }, null, null]>;
221
- static ɵcmp: i0.ɵɵComponentDeclaration<AutocompleteComponent, "ui-autocomplete", never, { "itemsList": { "alias": "itemsList"; "required": false; }; "suggestionsList": { "alias": "suggestionsList"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "allowAdd": { "alias": "allowAdd"; "required": false; }; "textField": { "alias": "textField"; "required": false; }; "valueField": { "alias": "valueField"; "required": false; }; "label": { "alias": "label"; "required": false; }; "itemValue": { "alias": "itemValue"; "required": false; }; "type": { "alias": "type"; "required": false; }; "minCharactersSearch": { "alias": "minCharactersSearch"; "required": false; }; "variant": { "alias": "variant"; "required": true; }; "language": { "alias": "language"; "required": false; }; "showBottomContent": { "alias": "showBottomContent"; "required": false; }; "valuePrimitive": { "alias": "valuePrimitive"; "required": false; }; "fullWidth": { "alias": "fullWidth"; "required": false; }; "applicationTheme": { "alias": "applicationTheme"; "required": false; }; "required": { "alias": "required"; "required": false; }; "errors": { "alias": "errors"; "required": false; }; "companyColor": { "alias": "companyColor"; "required": false; }; "hideBuiltInErrors": { "alias": "hideBuiltInErrors"; "required": false; }; "hideLabelInErrors": { "alias": "hideLabelInErrors"; "required": false; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; }; }, { "selectionChange": "selectionChange"; "searchTextChange": "searchTextChange"; }, never, never, false, never>;
227
+ static ɵcmp: i0.ɵɵComponentDeclaration<AutocompleteComponent, "ui-autocomplete", never, { "itemsList": { "alias": "itemsList"; "required": false; }; "suggestionsList": { "alias": "suggestionsList"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "allowAdd": { "alias": "allowAdd"; "required": false; }; "textField": { "alias": "textField"; "required": false; }; "valueField": { "alias": "valueField"; "required": false; }; "label": { "alias": "label"; "required": false; }; "itemValue": { "alias": "itemValue"; "required": false; }; "type": { "alias": "type"; "required": false; }; "minCharactersSearch": { "alias": "minCharactersSearch"; "required": false; }; "variant": { "alias": "variant"; "required": true; }; "language": { "alias": "language"; "required": false; }; "showBottomContent": { "alias": "showBottomContent"; "required": false; }; "valuePrimitive": { "alias": "valuePrimitive"; "required": false; }; "fullWidth": { "alias": "fullWidth"; "required": false; }; "applicationTheme": { "alias": "applicationTheme"; "required": false; }; "required": { "alias": "required"; "required": false; }; "errors": { "alias": "errors"; "required": false; }; "companyColor": { "alias": "companyColor"; "required": false; }; "hideBuiltInErrors": { "alias": "hideBuiltInErrors"; "required": false; }; "hideLabelInErrors": { "alias": "hideLabelInErrors"; "required": false; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; }, { "selectionChange": "selectionChange"; "searchTextChange": "searchTextChange"; }, never, never, false, never>;
222
228
  static ngAcceptInputType_virtualScroll: unknown;
223
229
  }
@@ -3,7 +3,7 @@ export type ButtonIconPosition = 'left' | 'right';
3
3
  export type ButtonColor = 'primary' | 'secondary' | 'ghost' | 'outlined' | 'destructive' | 'tertiary' | 'link' | 'tab' | 'text' | 'menuTrigger' | 'menuCell' | 'icon-button';
4
4
  export type ButtonSize = 'big' | 'medium' | 'small';
5
5
  export type LinkUrlTarget = '' | '_self' | '_blank' | '_parent' | '_top';
6
- export type IconButtonSize = '32' | '40';
6
+ export type IconButtonSize = '24' | '32' | '40';
7
7
  export type ButtonType = 'button' | 'submit' | 'reset';
8
8
  export type ButtonState = 'hover' | 'pressed' | 'disabled' | 'default';
9
9
  export interface ButtonBadgeConfig {
@@ -1,5 +1,5 @@
1
1
  import { DestroyRef, EventEmitter, TemplateRef } from '@angular/core';
2
- import { IRoute, MenuItem } from './navbar.model';
2
+ import { IRoute, MenuItem, MenuState, ScreenSize } from './navbar.model';
3
3
  import { ApplicationTheme } from '../../models/application-theme.model';
4
4
  import { SideSheetService } from '../side-sheet/side-sheet.service';
5
5
  import { BreakpointObserver } from '@angular/cdk/layout';
@@ -95,6 +95,8 @@ export declare class NavbarComponent {
95
95
  * @ignore
96
96
  */
97
97
  logoutEvent: EventEmitter<void>;
98
+ menuState: EventEmitter<MenuState>;
99
+ protected screenSize: ScreenSize;
98
100
  protected readonly translationContext = "NAVBAR.";
99
101
  private readonly _mobileBreakpoint$;
100
102
  private readonly _tabletBreakpoint$;
@@ -109,7 +111,7 @@ export declare class NavbarComponent {
109
111
  navigate(routeId: string): void;
110
112
  logout(): void;
111
113
  clickMenuItem(id: string): void;
112
- onOpenChange(isOpened: boolean): void;
114
+ onChangeMenuState(isOpened: boolean, screenSize: ScreenSize): void;
113
115
  static ɵfac: i0.ɵɵFactoryDeclaration<NavbarComponent, [null, { optional: true; }, null, null]>;
114
- static ɵcmp: i0.ɵɵComponentDeclaration<NavbarComponent, "ui-navbar", never, { "routes": { "alias": "routes"; "required": false; }; "activedRoute": { "alias": "activedRoute"; "required": false; }; "userName": { "alias": "userName"; "required": false; }; "email": { "alias": "email"; "required": false; }; "menuItems": { "alias": "menuItems"; "required": false; }; "language": { "alias": "language"; "required": false; }; "applicationTheme": { "alias": "applicationTheme"; "required": false; }; "contentTemplateRef": { "alias": "contentTemplateRef"; "required": false; }; "mobileBreakpoint": { "alias": "mobileBreakpoint"; "required": false; }; "isAvatar": { "alias": "isAvatar"; "required": false; }; }, { "navigateEvent": "navigateEvent"; "menuItemClicked": "menuItemClicked"; "logoutEvent": "logoutEvent"; }, never, ["[actions]", "*"], false, never>;
116
+ static ɵcmp: i0.ɵɵComponentDeclaration<NavbarComponent, "ui-navbar", never, { "routes": { "alias": "routes"; "required": false; }; "activedRoute": { "alias": "activedRoute"; "required": false; }; "userName": { "alias": "userName"; "required": false; }; "email": { "alias": "email"; "required": false; }; "menuItems": { "alias": "menuItems"; "required": false; }; "language": { "alias": "language"; "required": false; }; "applicationTheme": { "alias": "applicationTheme"; "required": false; }; "contentTemplateRef": { "alias": "contentTemplateRef"; "required": false; }; "mobileBreakpoint": { "alias": "mobileBreakpoint"; "required": false; }; "isAvatar": { "alias": "isAvatar"; "required": false; }; }, { "navigateEvent": "navigateEvent"; "menuItemClicked": "menuItemClicked"; "logoutEvent": "logoutEvent"; "menuState": "menuState"; }, never, ["[actions]", "*"], false, never>;
115
117
  }
@@ -8,3 +8,8 @@ export interface MenuItem {
8
8
  icon: IconName;
9
9
  text: string;
10
10
  }
11
+ export interface MenuState {
12
+ screenSize: ScreenSize;
13
+ isOpened: boolean;
14
+ }
15
+ export type ScreenSize = 'mobile' | 'tablet' | 'desktop';
@@ -1,8 +1,10 @@
1
1
  import { EventEmitter } from '@angular/core';
2
2
  import { SegmentedButton } from './segmented-button.model';
3
3
  import { ControlValueAccessor } from '@angular/forms';
4
+ import { ApplicationTheme } from '../../models/application-theme.model';
4
5
  import * as i0 from "@angular/core";
5
6
  export declare class SegmentedButtonComponent implements ControlValueAccessor {
7
+ private readonly defaultAppTheme;
6
8
  /**
7
9
  * Input property to set the buttons for the segmented button.
8
10
  * @type SegmentedButton
@@ -17,16 +19,36 @@ export declare class SegmentedButtonComponent implements ControlValueAccessor {
17
19
  * @memberof SegmentedButtonComponent
18
20
  */
19
21
  disabled: boolean;
22
+ /**
23
+ * Indicator of the Segmented Button width
24
+ *
25
+ * @memberof SegmentedButtonComponent
26
+ */
27
+ fullWidth: boolean;
28
+ /**
29
+ * Selected button
30
+ *
31
+ * @memberof SegmentedButtonComponent
32
+ */
33
+ set value(v: any);
34
+ /**
35
+ *
36
+ * Defines the application theme
37
+ *
38
+ * @type {ApplicationTheme}
39
+ * @memberof SegmentedButtonComponent
40
+ */
41
+ applicationTheme: ApplicationTheme;
20
42
  buttonSelected: EventEmitter<any>;
21
43
  protected _value: any;
22
- set value(v: any);
23
44
  get value(): any;
45
+ constructor(defaultAppTheme: ApplicationTheme);
24
46
  onChange: (v: any) => void;
25
47
  onTouch: () => void;
26
48
  writeValue(obj: any): void;
27
49
  setDisabledState(isDisabled: boolean): void;
28
50
  registerOnChange(fn: any): void;
29
51
  registerOnTouched(fn: any): void;
30
- static ɵfac: i0.ɵɵFactoryDeclaration<SegmentedButtonComponent, never>;
31
- static ɵcmp: i0.ɵɵComponentDeclaration<SegmentedButtonComponent, "ui-segmented-button", never, { "buttonConfig": { "alias": "buttonConfig"; "required": true; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "buttonSelected": "buttonSelected"; }, never, never, false, never>;
52
+ static ɵfac: i0.ɵɵFactoryDeclaration<SegmentedButtonComponent, [{ optional: true; }]>;
53
+ static ɵcmp: i0.ɵɵComponentDeclaration<SegmentedButtonComponent, "ui-segmented-button", never, { "buttonConfig": { "alias": "buttonConfig"; "required": true; }; "disabled": { "alias": "disabled"; "required": false; }; "fullWidth": { "alias": "fullWidth"; "required": false; }; "value": { "alias": "value"; "required": false; }; "applicationTheme": { "alias": "applicationTheme"; "required": false; }; }, { "buttonSelected": "buttonSelected"; }, never, never, false, never>;
32
54
  }
@@ -3,8 +3,9 @@ import * as i1 from "./segmented-button.component";
3
3
  import * as i2 from "@angular/common";
4
4
  import * as i3 from "@angular/material/button-toggle";
5
5
  import * as i4 from "@angular/forms";
6
+ import * as i5 from "@angular/material/tooltip";
6
7
  export declare class SegmentedButtonComponentModule {
7
8
  static ɵfac: i0.ɵɵFactoryDeclaration<SegmentedButtonComponentModule, never>;
8
- static ɵmod: i0.ɵɵNgModuleDeclaration<SegmentedButtonComponentModule, [typeof i1.SegmentedButtonComponent], [typeof i2.CommonModule, typeof i3.MatButtonToggleModule, typeof i4.FormsModule], [typeof i1.SegmentedButtonComponent]>;
9
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SegmentedButtonComponentModule, [typeof i1.SegmentedButtonComponent], [typeof i2.CommonModule, typeof i3.MatButtonToggleModule, typeof i4.FormsModule, typeof i5.MatTooltipModule], [typeof i1.SegmentedButtonComponent]>;
9
10
  static ɵinj: i0.ɵɵInjectorDeclaration<SegmentedButtonComponentModule>;
10
11
  }
@@ -4,4 +4,5 @@ export interface SegmentedButton {
4
4
  label?: string;
5
5
  template?: TemplateRef<any>;
6
6
  disabled?: boolean;
7
+ tooltip?: string;
7
8
  }
@@ -86,9 +86,15 @@ export declare class ToggleComponent implements ControlValueAccessor, OnChanges,
86
86
  * @memberof ToggleComponent
87
87
  */
88
88
  language: import("@testgorilla/tgo-ui").Language;
89
+ /**
90
+ * The loading state
91
+ *
92
+ * @type {boolean}
93
+ * @memberof ToggleComponent
94
+ */
95
+ loading: boolean;
89
96
  protected showLabelTooltip: boolean;
90
97
  protected classes: string;
91
- protected translateContext: string;
92
98
  constructor(defaultAppTheme: ApplicationTheme);
93
99
  ngOnChanges(): void;
94
100
  ngOnInit(): void;
@@ -100,6 +106,7 @@ export declare class ToggleComponent implements ControlValueAccessor, OnChanges,
100
106
  changeTextState(state: boolean): void;
101
107
  private onChange;
102
108
  private onTouched;
109
+ private setClasses;
103
110
  static ɵfac: i0.ɵɵFactoryDeclaration<ToggleComponent, [{ optional: true; }]>;
104
- static ɵcmp: i0.ɵɵComponentDeclaration<ToggleComponent, "ui-toggle", never, { "selected": { "alias": "selected"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "label": { "alias": "label"; "required": false; }; "message": { "alias": "message"; "required": false; }; "maxWidth": { "alias": "maxWidth"; "required": false; }; "applicationTheme": { "alias": "applicationTheme"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "ariaRequired": { "alias": "ariaRequired"; "required": false; }; "preventClick": { "alias": "preventClick"; "required": false; }; "language": { "alias": "language"; "required": false; }; }, { "toggle": "toggle"; }, never, never, false, never>;
111
+ static ɵcmp: i0.ɵɵComponentDeclaration<ToggleComponent, "ui-toggle", never, { "selected": { "alias": "selected"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "label": { "alias": "label"; "required": false; }; "message": { "alias": "message"; "required": false; }; "maxWidth": { "alias": "maxWidth"; "required": false; }; "applicationTheme": { "alias": "applicationTheme"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "ariaRequired": { "alias": "ariaRequired"; "required": false; }; "preventClick": { "alias": "preventClick"; "required": false; }; "language": { "alias": "language"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; }, { "toggle": "toggle"; }, never, never, false, never>;
105
112
  }
@@ -5,8 +5,10 @@ import * as i3 from "@angular/material/tooltip";
5
5
  import * as i4 from "../../directives/ellipse-text.directive";
6
6
  import * as i5 from "@angular/material/input";
7
7
  import * as i6 from "../../pipes/ui-translate.pipe";
8
+ import * as i7 from "../icon/icon.component.module";
9
+ import * as i8 from "../spinner/spinner.module";
8
10
  export declare class ToggleComponentModule {
9
11
  static ɵfac: i0.ɵɵFactoryDeclaration<ToggleComponentModule, never>;
10
- static ɵmod: i0.ɵɵNgModuleDeclaration<ToggleComponentModule, [typeof i1.ToggleComponent], [typeof i2.CommonModule, typeof i3.MatTooltipModule, typeof i4.EllipseTextDirective, typeof i5.MatInputModule, typeof i6.UiTranslatePipe], [typeof i1.ToggleComponent]>;
12
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ToggleComponentModule, [typeof i1.ToggleComponent], [typeof i2.CommonModule, typeof i3.MatTooltipModule, typeof i4.EllipseTextDirective, typeof i5.MatInputModule, typeof i6.UiTranslatePipe, typeof i7.IconComponentModule, typeof i8.SpinnerComponentModule], [typeof i1.ToggleComponent]>;
11
13
  static ɵinj: i0.ɵɵInjectorDeclaration<ToggleComponentModule>;
12
14
  }