@gravitee/ui-particles-angular 13.5.3-renovate-angular-ecdc544 → 13.6.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 (135) hide show
  1. package/esm2022/gio-asciidoctor/gio-asciidoctor.component.mjs +4 -4
  2. package/esm2022/gio-asciidoctor/gio-asciidoctor.module.mjs +5 -5
  3. package/esm2022/gio-asciidoctor/gio-asciidoctor.service.mjs +4 -4
  4. package/esm2022/gio-el/gio-el-editor/gio-el-editor-condition-group/gio-el-editor-condition-group.component.mjs +16 -17
  5. package/esm2022/gio-el/gio-el-editor/gio-el-editor-condition-group/gio-el-editor-condition-group.harness.mjs +7 -7
  6. package/esm2022/gio-el/gio-el-editor/gio-el-editor.component.mjs +20 -17
  7. package/esm2022/gio-el/gio-el-editor/gio-el-editor.harness.mjs +5 -2
  8. package/esm2022/gio-el/gio-el-editor/gio-el-field/gio-el-field.component.mjs +271 -0
  9. package/esm2022/gio-el/gio-el-editor/gio-el-field/gio-el-field.harness.mjs +53 -0
  10. package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-boolean/gio-el-editor-type-boolean.component.mjs +5 -5
  11. package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-date/gio-el-editor-type-date.component.mjs +5 -5
  12. package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-number/gio-el-editor-type-number.component.mjs +5 -5
  13. package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-string/gio-el-editor-type-string.component.mjs +7 -7
  14. package/esm2022/gio-el/models/Condition.mjs +1 -1
  15. package/esm2022/gio-el/models/ConditionGroup.mjs +1 -1
  16. package/esm2022/gio-el/models/ConditionModel.mjs +16 -1
  17. package/esm2022/gio-el/models/ExpressionLanguageBuilder.mjs +25 -12
  18. package/esm2022/lib/gio-avatar/gio-avatar.component.mjs +4 -4
  19. package/esm2022/lib/gio-avatar/gio-avatar.module.mjs +5 -5
  20. package/esm2022/lib/gio-banner/gio-banner.component.mjs +22 -22
  21. package/esm2022/lib/gio-banner/gio-banner.module.mjs +5 -5
  22. package/esm2022/lib/gio-breadcrumb/gio-breadcrumb-item.directive.mjs +4 -4
  23. package/esm2022/lib/gio-breadcrumb/gio-breadcrumb.component.mjs +4 -4
  24. package/esm2022/lib/gio-breadcrumb/gio-breadcrumb.module.mjs +5 -5
  25. package/esm2022/lib/gio-card-empty-state/gio-card-empty-state.component.mjs +4 -4
  26. package/esm2022/lib/gio-card-empty-state/gio-card-empty-state.module.mjs +5 -5
  27. package/esm2022/lib/gio-clipboard/gio-clipboard-copy-icon.component.mjs +4 -4
  28. package/esm2022/lib/gio-clipboard/gio-clipboard-copy-wrapper.component.mjs +4 -4
  29. package/esm2022/lib/gio-clipboard/gio-clipboard.base.component.mjs +4 -4
  30. package/esm2022/lib/gio-clipboard/gio-clipboard.module.mjs +5 -5
  31. package/esm2022/lib/gio-confirm-and-validate-dialog/gio-confirm-and-validate-dialog.component.mjs +4 -4
  32. package/esm2022/lib/gio-confirm-and-validate-dialog/gio-confirm-and-validate-dialog.module.mjs +5 -5
  33. package/esm2022/lib/gio-confirm-dialog/gio-confirm-dialog.component.mjs +4 -4
  34. package/esm2022/lib/gio-confirm-dialog/gio-confirm-dialog.module.mjs +5 -5
  35. package/esm2022/lib/gio-form-cron/gio-form-cron-hint.component.mjs +4 -4
  36. package/esm2022/lib/gio-form-cron/gio-form-cron-label.component.mjs +4 -4
  37. package/esm2022/lib/gio-form-cron/gio-form-cron.component.mjs +4 -4
  38. package/esm2022/lib/gio-form-cron/gio-form-cron.module.mjs +5 -5
  39. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker-add-button/gio-form-file-picker-add-button.component.mjs +4 -4
  40. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker-empty/gio-form-file-picker-empty.component.mjs +4 -4
  41. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker-label/gio-form-file-picker-label.component.mjs +4 -4
  42. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker.component.mjs +4 -4
  43. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker.module.mjs +5 -5
  44. package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid-ignore.directive.mjs +4 -4
  45. package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid.directive.mjs +10 -10
  46. package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid.module.mjs +5 -5
  47. package/esm2022/lib/gio-form-headers/gio-form-headers-label.component.mjs +4 -4
  48. package/esm2022/lib/gio-form-headers/gio-form-headers.component.mjs +4 -4
  49. package/esm2022/lib/gio-form-headers/gio-form-headers.module.mjs +5 -5
  50. package/esm2022/lib/gio-form-json-schema/gio-form-json-schema.component.mjs +4 -4
  51. package/esm2022/lib/gio-form-json-schema/gio-form-json-schema.module.mjs +5 -5
  52. package/esm2022/lib/gio-form-json-schema/gio-formly-json-schema.service.mjs +4 -4
  53. package/esm2022/lib/gio-form-json-schema/type-component/array-type.component.mjs +4 -4
  54. package/esm2022/lib/gio-form-json-schema/type-component/code-editor-type.component.mjs +4 -4
  55. package/esm2022/lib/gio-form-json-schema/type-component/cron-type.component.mjs +4 -4
  56. package/esm2022/lib/gio-form-json-schema/type-component/headers-type.component.mjs +4 -4
  57. package/esm2022/lib/gio-form-json-schema/type-component/multischema-type.component.mjs +4 -4
  58. package/esm2022/lib/gio-form-json-schema/type-component/null-type.component.mjs +4 -4
  59. package/esm2022/lib/gio-form-json-schema/type-component/object-type.component.mjs +4 -4
  60. package/esm2022/lib/gio-form-json-schema/type-component/toggle-type.component.mjs +4 -4
  61. package/esm2022/lib/gio-form-json-schema/wrappers/gio-banner-wrapper.component.mjs +4 -4
  62. package/esm2022/lib/gio-form-json-schema/wrappers/gio-password-eye.component.mjs +4 -4
  63. package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline-card-content/gio-form-selection-inline-card-content.component.mjs +10 -10
  64. package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline-card.component.mjs +4 -4
  65. package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline.component.mjs +4 -4
  66. package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline.module.mjs +5 -5
  67. package/esm2022/lib/gio-form-slide-toggle/gio-form-label.directive.mjs +10 -10
  68. package/esm2022/lib/gio-form-slide-toggle/gio-form-slide-toggle.component.mjs +4 -4
  69. package/esm2022/lib/gio-form-slide-toggle/gio-form-slide-toggle.module.mjs +5 -5
  70. package/esm2022/lib/gio-form-tags-input/gio-form-tags-input.component.mjs +4 -4
  71. package/esm2022/lib/gio-form-tags-input/gio-form-tags-input.module.mjs +5 -5
  72. package/esm2022/lib/gio-icons/gio-icons.module.mjs +5 -5
  73. package/esm2022/lib/gio-license/gio-license-dialog/gio-license-dialog.component.mjs +4 -4
  74. package/esm2022/lib/gio-license/gio-license-dialog/gio-license-dialog.module.mjs +5 -5
  75. package/esm2022/lib/gio-license/gio-license.directive.mjs +4 -4
  76. package/esm2022/lib/gio-license/gio-license.module.mjs +5 -5
  77. package/esm2022/lib/gio-license/gio-license.service.mjs +4 -4
  78. package/esm2022/lib/gio-license/gio-license.testing.module.mjs +5 -5
  79. package/esm2022/lib/gio-license-expiration-notification/gio-license-expiration-notification.component.mjs +4 -4
  80. package/esm2022/lib/gio-license-expiration-notification/gio-license-expiration-notification.module.mjs +5 -5
  81. package/esm2022/lib/gio-loader/gio-loader.component.mjs +4 -4
  82. package/esm2022/lib/gio-loader/gio-loader.module.mjs +5 -5
  83. package/esm2022/lib/gio-mat-config/gio-mat-config.module.mjs +5 -5
  84. package/esm2022/lib/gio-monaco-editor/gio-monaco-editor-form-field.directive.mjs +4 -4
  85. package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.component.mjs +4 -4
  86. package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.module.mjs +5 -5
  87. package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.testing.component.mjs +4 -4
  88. package/esm2022/lib/gio-monaco-editor/services/gio-language-el.service.mjs +4 -4
  89. package/esm2022/lib/gio-monaco-editor/services/gio-language-json.service.mjs +4 -4
  90. package/esm2022/lib/gio-monaco-editor/services/gio-monaco-editor.service.mjs +4 -4
  91. package/esm2022/lib/gio-pipe/gio.pipe.module.mjs +5 -5
  92. package/esm2022/lib/gio-pipe/safe.pipe.mjs +4 -4
  93. package/esm2022/lib/gio-prismjs/gio-prismjs.service.mjs +4 -4
  94. package/esm2022/lib/gio-save-bar/gio-save-bar.component.mjs +4 -4
  95. package/esm2022/lib/gio-save-bar/gio-save-bar.module.mjs +5 -5
  96. package/esm2022/lib/oem-theme/gio-menu/gio-menu-footer/gio-menu-footer.component.mjs +4 -4
  97. package/esm2022/lib/oem-theme/gio-menu/gio-menu-header/gio-menu-header.component.mjs +4 -4
  98. package/esm2022/lib/oem-theme/gio-menu/gio-menu-item/gio-menu-item.component.mjs +4 -4
  99. package/esm2022/lib/oem-theme/gio-menu/gio-menu-license-expiration-notification/gio-menu-license-expiration-notification.component.mjs +4 -4
  100. package/esm2022/lib/oem-theme/gio-menu/gio-menu-list/gio-menu-list.component.mjs +4 -4
  101. package/esm2022/lib/oem-theme/gio-menu/gio-menu-search/gio-menu-search.component.mjs +4 -4
  102. package/esm2022/lib/oem-theme/gio-menu/gio-menu-search/gio-menu-search.service.mjs +4 -4
  103. package/esm2022/lib/oem-theme/gio-menu/gio-menu-selector/gio-menu-selector.component.mjs +4 -4
  104. package/esm2022/lib/oem-theme/gio-menu/gio-menu.component.mjs +4 -4
  105. package/esm2022/lib/oem-theme/gio-menu/gio-menu.module.mjs +5 -5
  106. package/esm2022/lib/oem-theme/gio-menu/gio-menu.service.mjs +4 -4
  107. package/esm2022/lib/oem-theme/gio-submenu/gio-submenu-group/gio-submenu-group.component.mjs +4 -4
  108. package/esm2022/lib/oem-theme/gio-submenu/gio-submenu-item/gio-submenu-item.component.mjs +4 -4
  109. package/esm2022/lib/oem-theme/gio-submenu/gio-submenu.component.mjs +7 -7
  110. package/esm2022/lib/oem-theme/gio-submenu/gio-submenu.module.mjs +5 -5
  111. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-content/gio-top-bar-content.component.mjs +4 -4
  112. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-link/gio-top-bar-link.component.mjs +4 -4
  113. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-link/gio-top-bar-link.module.mjs +5 -5
  114. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-menu/gio-top-bar-menu.component.mjs +4 -4
  115. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-menu/gio-top-bar-menu.module.mjs +5 -5
  116. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar.component.mjs +4 -4
  117. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar.module.mjs +5 -5
  118. package/fesm2022/gravitee-ui-particles-angular-gio-asciidoctor.mjs +10 -10
  119. package/fesm2022/gravitee-ui-particles-angular-gio-asciidoctor.mjs.map +1 -1
  120. package/fesm2022/gravitee-ui-particles-angular-gio-el.mjs +407 -68
  121. package/fesm2022/gravitee-ui-particles-angular-gio-el.mjs.map +1 -1
  122. package/fesm2022/gravitee-ui-particles-angular.mjs +369 -369
  123. package/fesm2022/gravitee-ui-particles-angular.mjs.map +1 -1
  124. package/gio-el/gio-el-editor/gio-el-editor-condition-group/gio-el-editor-condition-group.component.d.ts +4 -4
  125. package/gio-el/gio-el-editor/gio-el-editor-condition-group/gio-el-editor-condition-group.harness.d.ts +6 -2
  126. package/gio-el/gio-el-editor/gio-el-editor.component.d.ts +3 -4
  127. package/gio-el/gio-el-editor/gio-el-editor.harness.d.ts +2 -1
  128. package/gio-el/gio-el-editor/gio-el-field/gio-el-field.component.d.ts +70 -0
  129. package/gio-el/gio-el-editor/gio-el-field/gio-el-field.harness.d.ts +14 -0
  130. package/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-string/gio-el-editor-type-string.component.d.ts +6 -1
  131. package/gio-el/models/Condition.d.ts +13 -4
  132. package/gio-el/models/ConditionGroup.d.ts +3 -2
  133. package/gio-el/models/ConditionModel.d.ts +19 -2
  134. package/gio-el/models/ExpressionLanguageBuilder.d.ts +1 -0
  135. package/package.json +7 -7
@@ -1,14 +1,14 @@
1
1
  import { EventEmitter } from '@angular/core';
2
2
  import { FormGroup } from '@angular/forms';
3
- import { ConditionModel } from '../../models/ConditionModel';
4
3
  import { ConditionForm, ConditionGroupForm } from '../gio-el-editor.component';
4
+ import { ConditionsModel } from '../../models/ConditionsModel';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class GioElEditorConditionGroupComponent {
7
7
  conditionGroupFormGroup: FormGroup<ConditionGroupForm>;
8
8
  /**
9
- * Condition models to generate the fields for the conditions.
9
+ * Conditions model to generate the fields for the conditions.
10
10
  */
11
- conditionModels: ConditionModel[];
11
+ conditionsModel: ConditionsModel;
12
12
  /**
13
13
  * Level of the node in the tree. Useful for testing with Harness to limit the scope of the query.
14
14
  */
@@ -21,5 +21,5 @@ export declare class GioElEditorConditionGroupComponent {
21
21
  protected isConditionGroupForm(formGroup: FormGroup<ConditionForm> | FormGroup<ConditionGroupForm>): formGroup is FormGroup<ConditionGroupForm>;
22
22
  private checkMultipleCondition;
23
23
  static ɵfac: i0.ɵɵFactoryDeclaration<GioElEditorConditionGroupComponent, never>;
24
- static ɵcmp: i0.ɵɵComponentDeclaration<GioElEditorConditionGroupComponent, "gio-el-editor-condition-group", never, { "conditionGroupFormGroup": { "alias": "conditionGroupFormGroup"; "required": true; }; "conditionModels": { "alias": "conditionModels"; "required": true; }; "nodeLvl": { "alias": "nodeLvl"; "required": false; }; }, { "remove": "remove"; }, never, never, true, never>;
24
+ static ɵcmp: i0.ɵɵComponentDeclaration<GioElEditorConditionGroupComponent, "gio-el-editor-condition-group", never, { "conditionGroupFormGroup": { "alias": "conditionGroupFormGroup"; "required": true; }; "conditionsModel": { "alias": "conditionsModel"; "required": true; }; "nodeLvl": { "alias": "nodeLvl"; "required": false; }; }, { "remove": "remove"; }, never, never, true, never>;
25
25
  }
@@ -4,7 +4,11 @@ type ConditionGroupHarnessValues = {
4
4
  conditions: (ConditionGroupHarnessValues | ConditionHarnessValues)[];
5
5
  };
6
6
  type ConditionHarnessValues = {
7
- field: string;
7
+ field: {
8
+ field: string;
9
+ key1?: string;
10
+ key2?: string;
11
+ };
8
12
  operator?: string;
9
13
  value?: string | boolean | number;
10
14
  };
@@ -22,7 +26,7 @@ export declare class GioElEditorConditionGroupHarness extends ComponentHarness {
22
26
  clickAddNewGroupButton(): Promise<void>;
23
27
  getConditionValue(): Promise<'AND' | 'OR'>;
24
28
  selectConditionValue(operator: 'AND' | 'OR'): Promise<void>;
25
- selectConditionField(index: number, field: string): Promise<void>;
29
+ selectConditionField(index: number, field: string, key1?: string, key2?: string): Promise<void>;
26
30
  selectConditionOperator(index: number, operator: string): Promise<void>;
27
31
  getConditionAvailableOperators(index: number): Promise<string[]>;
28
32
  setConditionValue(index: number, value: string | boolean | number | Date): Promise<void>;
@@ -1,4 +1,4 @@
1
- import { OnInit } from '@angular/core';
1
+ import { EventEmitter, OnInit } from '@angular/core';
2
2
  import { FormArray, FormControl, FormGroup } from '@angular/forms';
3
3
  import { ConditionModel } from '../models/ConditionModel';
4
4
  import { ConditionsModel } from '../models/ConditionsModel';
@@ -16,11 +16,10 @@ export type ConditionGroupForm = {
16
16
  export declare class GioElEditorComponent implements OnInit {
17
17
  private readonly destroyRef;
18
18
  conditionsModel: ConditionsModel;
19
- protected conditionsGroupFormArray: FormArray<FormGroup<ConditionGroupForm>>;
19
+ elChange: EventEmitter<string>;
20
20
  protected conditionGroupFormGroup: FormGroup<ConditionGroupForm>;
21
- protected fields: ConditionModel[];
22
21
  protected elOutput?: string;
23
22
  ngOnInit(): void;
24
23
  static ɵfac: i0.ɵɵFactoryDeclaration<GioElEditorComponent, never>;
25
- static ɵcmp: i0.ɵɵComponentDeclaration<GioElEditorComponent, "gio-el-editor", never, { "conditionsModel": { "alias": "conditionsModel"; "required": true; }; }, {}, never, never, true, never>;
24
+ static ɵcmp: i0.ɵɵComponentDeclaration<GioElEditorComponent, "gio-el-editor", never, { "conditionsModel": { "alias": "conditionsModel"; "required": true; }; }, { "elChange": "elChange"; }, never, never, true, never>;
26
25
  }
@@ -1,6 +1,7 @@
1
- import { ComponentHarness } from '@angular/cdk/testing';
1
+ import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
2
2
  import { GioElEditorConditionGroupHarness } from './gio-el-editor-condition-group/gio-el-editor-condition-group.harness';
3
3
  export declare class GioElEditorHarness extends ComponentHarness {
4
4
  static hostSelector: string;
5
5
  getMainConditionGroup: import("@angular/cdk/testing").AsyncFactoryFn<GioElEditorConditionGroupHarness>;
6
+ static with(options?: BaseHarnessFilters): HarnessPredicate<GioElEditorHarness>;
6
7
  }
@@ -0,0 +1,70 @@
1
+ import { SimpleChanges, OnChanges, ElementRef, OnDestroy } from '@angular/core';
2
+ import { MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';
3
+ import { MatFormFieldControl } from '@angular/material/form-field';
4
+ import { ControlValueAccessor, FormControl, NgControl } from '@angular/forms';
5
+ import { Observable, Subject } from 'rxjs';
6
+ import { BooleanInput } from '@angular/cdk/coercion';
7
+ import { FocusMonitor } from '@angular/cdk/a11y';
8
+ import { ConditionModel } from '../../models/ConditionModel';
9
+ import { ConditionsModel } from '../../models/ConditionsModel';
10
+ import * as i0 from "@angular/core";
11
+ type FieldAutocompleteOption = ConditionModel;
12
+ type FieldAutocompleteGroup = {
13
+ field: string;
14
+ label: string;
15
+ options: FieldAutocompleteOption[];
16
+ };
17
+ type FieldAutocompleteModel = (FieldAutocompleteOption | FieldAutocompleteGroup)[];
18
+ type Key1AutocompleteValue = {
19
+ value: string;
20
+ label: string;
21
+ };
22
+ export declare class GioElFieldComponent implements OnChanges, MatFormFieldControl<ConditionModel>, ControlValueAccessor, OnDestroy {
23
+ readonly ngControl: NgControl;
24
+ private elementRef;
25
+ private focusMonitor;
26
+ private readonly destroyRef;
27
+ conditionsModel: ConditionsModel;
28
+ protected fieldFilteredOptions$: Observable<FieldAutocompleteModel>;
29
+ protected key1FilteredOptions$: Observable<Key1AutocompleteValue[]>;
30
+ protected selectedConditionModel: ConditionModel | null;
31
+ protected fieldFormControl: FormControl<ConditionModel | null>;
32
+ protected key1FormControl: FormControl<string | null>;
33
+ protected key2FormControl: FormControl<string | null>;
34
+ set value(_value: ConditionModel | null);
35
+ stateChanges: Subject<void>;
36
+ static nextId: number;
37
+ id: string;
38
+ get placeholder(): string;
39
+ set placeholder(plh: string);
40
+ private _placeholder;
41
+ focused: boolean;
42
+ get empty(): boolean;
43
+ get shouldLabelFloat(): boolean;
44
+ get required(): boolean;
45
+ set required(req: boolean);
46
+ private _required;
47
+ get disabled(): boolean;
48
+ set disabled(value: BooleanInput);
49
+ private _disabled;
50
+ touched: boolean;
51
+ get errorState(): boolean;
52
+ controlType: string;
53
+ userAriaDescribedBy?: string | undefined;
54
+ setDescribedByIds(ids: string[]): void;
55
+ protected _onChange: (_value: ConditionModel | null) => void;
56
+ protected _onTouched: () => void;
57
+ constructor(ngControl: NgControl, elementRef: ElementRef<HTMLElement>, focusMonitor: FocusMonitor);
58
+ ngOnChanges(changes: SimpleChanges): void;
59
+ displayFn(option: FieldAutocompleteOption | FieldAutocompleteGroup): string;
60
+ onFieldSelected($event: MatAutocompleteSelectedEvent): void;
61
+ writeValue(): void;
62
+ registerOnChange(fn: (value: ConditionModel | null) => void): void;
63
+ registerOnTouched(fn: () => void): void;
64
+ setDisabledState(isDisabled: boolean): void;
65
+ onContainerClick(event: MouseEvent): void;
66
+ ngOnDestroy(): void;
67
+ static ɵfac: i0.ɵɵFactoryDeclaration<GioElFieldComponent, [{ optional: true; self: true; }, null, null]>;
68
+ static ɵcmp: i0.ɵɵComponentDeclaration<GioElFieldComponent, "gio-el-field", never, { "conditionsModel": { "alias": "conditionsModel"; "required": true; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; }, {}, never, never, true, never>;
69
+ }
70
+ export {};
@@ -0,0 +1,14 @@
1
+ import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
2
+ export declare class GioElFieldHarness extends ComponentHarness {
3
+ static hostSelector: string;
4
+ static with(options?: BaseHarnessFilters): HarnessPredicate<GioElFieldHarness>;
5
+ private getAutocomplete;
6
+ private getKey1Input;
7
+ private getKey2Input;
8
+ setValue(field: string, key1?: string, key2?: string): Promise<void>;
9
+ getValue(): Promise<{
10
+ field: string;
11
+ key1?: string;
12
+ key2?: string;
13
+ }>;
14
+ }
@@ -4,6 +4,10 @@ import { Observable } from 'rxjs';
4
4
  import { ConditionForm } from '../../gio-el-editor.component';
5
5
  import { Operator } from '../../../models/Operator';
6
6
  import * as i0 from "@angular/core";
7
+ type AutocompleteValue = {
8
+ value: string;
9
+ label: string;
10
+ };
7
11
  export declare class GioElEditorTypeStringComponent implements OnChanges {
8
12
  private readonly destroyRef;
9
13
  conditionFormGroup: FormGroup<ConditionForm>;
@@ -11,8 +15,9 @@ export declare class GioElEditorTypeStringComponent implements OnChanges {
11
15
  label: string;
12
16
  value: Operator;
13
17
  }[];
14
- protected filteredOptions$: Observable<string[]>;
18
+ protected filteredOptions$: Observable<AutocompleteValue[]>;
15
19
  ngOnChanges(changes: SimpleChanges): void;
16
20
  static ɵfac: i0.ɵɵFactoryDeclaration<GioElEditorTypeStringComponent, never>;
17
21
  static ɵcmp: i0.ɵɵComponentDeclaration<GioElEditorTypeStringComponent, "gio-el-editor-type-string", never, { "conditionFormGroup": { "alias": "conditionFormGroup"; "required": true; }; }, {}, never, never, true, never>;
18
22
  }
23
+ export {};
@@ -1,10 +1,19 @@
1
1
  import { Operator } from './Operator';
2
- type ConditionValue<T> = T extends 'string' ? string : T extends 'number' ? number : T extends 'date' ? Date : T extends 'boolean' ? boolean : never;
3
- export declare class Condition<T extends 'string' | 'number' | 'date' | 'boolean'> {
4
- field: string;
2
+ import { ConditionType } from './ConditionModel';
3
+ type ConditionValue<T> = T extends 'string' ? string : T extends 'number' ? number : T extends 'date' ? Date : T extends 'boolean' ? boolean : unknown;
4
+ export declare class Condition<T extends ConditionType> {
5
+ field: string | {
6
+ field: string;
7
+ key1Value?: string;
8
+ key2Value?: string;
9
+ };
5
10
  type: T;
6
11
  operator: Operator;
7
12
  value?: ConditionValue<T> | undefined;
8
- constructor(field: string, type: T, operator: Operator, value?: ConditionValue<T> | undefined);
13
+ constructor(field: string | {
14
+ field: string;
15
+ key1Value?: string;
16
+ key2Value?: string;
17
+ }, type: T, operator: Operator, value?: ConditionValue<T> | undefined);
9
18
  }
10
19
  export {};
@@ -1,6 +1,7 @@
1
1
  import { Condition } from './Condition';
2
+ import { ConditionType } from './ConditionModel';
2
3
  export declare class ConditionGroup {
3
4
  condition: 'AND' | 'OR';
4
- conditions: (Condition<'string' | 'number' | 'date' | 'boolean'> | ConditionGroup)[];
5
- constructor(condition: 'AND' | 'OR', conditions: (Condition<'string' | 'number' | 'date' | 'boolean'> | ConditionGroup)[]);
5
+ conditions: (Condition<ConditionType> | ConditionGroup)[];
6
+ constructor(condition: 'AND' | 'OR', conditions: (Condition<ConditionType> | ConditionGroup)[]);
6
7
  }
@@ -1,10 +1,27 @@
1
- export type ConditionModelBase<T extends 'string' | 'number' | 'date' | 'boolean'> = {
1
+ export type ConditionType = 'string' | 'number' | 'date' | 'boolean';
2
+ export type ConditionModelBase<T extends ConditionType> = {
2
3
  field: string;
3
4
  label: string;
4
5
  type: T;
6
+ map?: {
7
+ type: 'Map';
8
+ key1Values?: string[] | {
9
+ value: string;
10
+ label: string;
11
+ }[];
12
+ key1Value?: string | null;
13
+ } | {
14
+ type: 'MultiMap';
15
+ key1Value?: string | null;
16
+ key1Values?: string[];
17
+ key2Value?: string | null;
18
+ };
5
19
  };
6
20
  export type StringConditionModel = ConditionModelBase<'string'> & {
7
- values?: string[];
21
+ values?: string[] | {
22
+ value: string;
23
+ label: string;
24
+ }[];
8
25
  };
9
26
  export type NumberConditionModel = ConditionModelBase<'number'> & {
10
27
  min?: number;
@@ -6,6 +6,7 @@ export declare class ExpressionLanguageBuilder {
6
6
  private static buildConditionGroup;
7
7
  private static buildCondition;
8
8
  private static valueToString;
9
+ private static toFieldString;
9
10
  constructor(conditionGroup: ConditionGroup);
10
11
  build(): string;
11
12
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gravitee/ui-particles-angular",
3
- "version": "13.5.3-renovate-angular-ecdc544",
3
+ "version": "13.6.0",
4
4
  "description": "Gravitee.io - UI Particles Angular",
5
5
  "repository": {
6
6
  "type": "git",
@@ -56,18 +56,18 @@
56
56
  "esm": "./esm2022/gravitee-ui-particles-angular.mjs",
57
57
  "default": "./fesm2022/gravitee-ui-particles-angular.mjs"
58
58
  },
59
- "./gio-el": {
60
- "types": "./gio-el/index.d.ts",
61
- "esm2022": "./esm2022/gio-el/gravitee-ui-particles-angular-gio-el.mjs",
62
- "esm": "./esm2022/gio-el/gravitee-ui-particles-angular-gio-el.mjs",
63
- "default": "./fesm2022/gravitee-ui-particles-angular-gio-el.mjs"
64
- },
65
59
  "./gio-asciidoctor": {
66
60
  "types": "./gio-asciidoctor/index.d.ts",
67
61
  "esm2022": "./esm2022/gio-asciidoctor/gravitee-ui-particles-angular-gio-asciidoctor.mjs",
68
62
  "esm": "./esm2022/gio-asciidoctor/gravitee-ui-particles-angular-gio-asciidoctor.mjs",
69
63
  "default": "./fesm2022/gravitee-ui-particles-angular-gio-asciidoctor.mjs"
70
64
  },
65
+ "./gio-el": {
66
+ "types": "./gio-el/index.d.ts",
67
+ "esm2022": "./esm2022/gio-el/gravitee-ui-particles-angular-gio-el.mjs",
68
+ "esm": "./esm2022/gio-el/gravitee-ui-particles-angular-gio-el.mjs",
69
+ "default": "./fesm2022/gravitee-ui-particles-angular-gio-el.mjs"
70
+ },
71
71
  "./testing": {
72
72
  "types": "./testing/index.d.ts",
73
73
  "esm2022": "./esm2022/testing/gravitee-ui-particles-angular-testing.mjs",