@colijnit/corecomponents_v12 300.1.5 → 300.1.7

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/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { OnDestroy, NgZone, AfterViewInit, OnInit, EventEmitter, ComponentFactoryResolver, ApplicationRef, Injector, ComponentRef, ChangeDetectorRef, ElementRef, ViewContainerRef, OnChanges, SimpleChanges, PipeTransform, TemplateRef, ModuleWithProviders, QueryList, Renderer2, ComponentFactory, AfterContentInit, DoCheck, IterableDiffers, StaticProvider, InjectionToken } from '@angular/core';
2
+ import { OnDestroy, NgZone, AfterViewInit, OnInit, EventEmitter, ComponentFactoryResolver, ApplicationRef, Injector, ComponentRef, ChangeDetectorRef, ElementRef, ViewContainerRef, OnChanges, SimpleChanges, PipeTransform, TemplateRef, ModuleWithProviders, QueryList, Renderer2, ComponentFactory, AfterContentInit, DoCheck, IterableDiffers, Signal, StaticProvider, InjectionToken } from '@angular/core';
3
3
  import * as i4$1 from '@angular/forms';
4
4
  import { UntypedFormControl, UntypedFormGroup, NgModel, ValidatorFn, AsyncValidatorFn, AbstractControl, ValidationErrors } from '@angular/forms';
5
5
  import { Subject, Observable, Subscription, BehaviorSubject } from 'rxjs';
@@ -2408,6 +2408,8 @@ declare abstract class BaseSimpleGridComponent implements DoCheck {
2408
2408
  singleColumnIndex(row: Object): number;
2409
2409
  protected dataHasChanged(): void;
2410
2410
  protected prepareDataRow(row: any, index: number): Promise<void>;
2411
+ protected repeatSortOnDataChange(): void;
2412
+ protected setData(value: Object[]): void;
2411
2413
  private _setColumns;
2412
2414
  private _prepareData;
2413
2415
  private _prepareDataRows;
@@ -2429,6 +2431,7 @@ declare class SimpleGridComponent extends BaseSimpleGridComponent {
2429
2431
  private _formMaster;
2430
2432
  readonly defaultTextAlign: ColumnAlign;
2431
2433
  readonly scrollDirections: typeof ScrollDirection;
2434
+ private _previouslySortedColumn;
2432
2435
  set headerCells(cells: any);
2433
2436
  rowElements: QueryList<ElementRef>;
2434
2437
  showAdd: boolean;
@@ -2486,7 +2489,8 @@ declare class SimpleGridComponent extends BaseSimpleGridComponent {
2486
2489
  toggleSettingsMenu(): void;
2487
2490
  toggleColumnMenu(col: any): void;
2488
2491
  hideColumn(col: any): void;
2489
- sortColumn(col: any, columnValue: string): void;
2492
+ sortColumn(col: any, columnValue: string, preserveSortDirection?: boolean): void;
2493
+ protected repeatSortOnDataChange(): void;
2490
2494
  showAllColumns(): void;
2491
2495
  exportToExcel(): void;
2492
2496
  goToPreviousPage(): void;
@@ -2922,31 +2926,130 @@ interface IconListItem {
2922
2926
  children?: IconListItem[];
2923
2927
  }
2924
2928
 
2925
- declare class ListOfIconsComponent implements OnInit {
2929
+ declare class ListOfIconsComponent implements OnInit, OnDestroy {
2926
2930
  icons: IconCacheService;
2931
+ private _overlayService;
2932
+ private _elementRef;
2927
2933
  set collection(value: IconListItem[]);
2928
2934
  get collection(): IconListItem[];
2929
- iconSize: number;
2930
- activeItem?: IconListItem;
2935
+ activeItem: IconListItem;
2936
+ showLabels: boolean;
2937
+ customCssClass: string;
2931
2938
  itemSelected: EventEmitter<IconListItem>;
2932
2939
  showClass(): boolean;
2933
2940
  readonly Icon: any;
2934
2941
  showMenu: boolean;
2935
- showSubCategories: boolean;
2936
2942
  private _collection;
2937
- constructor(icons: IconCacheService);
2943
+ private _popupComponentRef;
2944
+ constructor(icons: IconCacheService, _overlayService: OverlayService, _elementRef: ElementRef);
2938
2945
  ngOnInit(): void;
2946
+ ngOnDestroy(): void;
2939
2947
  toggleMenu(): void;
2948
+ openPopup(): void;
2949
+ closePopup(): void;
2940
2950
  selectItem(item: IconListItem): void;
2941
- handlePickingCategoryClicked(subCategory: IconListItem): void;
2942
- onClickOutside(): void;
2943
2951
  static ɵfac: i0.ɵɵFactoryDeclaration<ListOfIconsComponent, never>;
2944
- static ɵcmp: i0.ɵɵComponentDeclaration<ListOfIconsComponent, "co-list-of-icons", never, { "collection": { "alias": "collection"; "required": false; }; "iconSize": { "alias": "iconSize"; "required": false; }; "activeItem": { "alias": "activeItem"; "required": false; }; }, { "itemSelected": "itemSelected"; }, never, never, false, never>;
2952
+ static ɵcmp: i0.ɵɵComponentDeclaration<ListOfIconsComponent, "co-list-of-icons", never, { "collection": { "alias": "collection"; "required": false; }; "activeItem": { "alias": "activeItem"; "required": false; }; "showLabels": { "alias": "showLabels"; "required": false; }; "customCssClass": { "alias": "customCssClass"; "required": false; }; }, { "itemSelected": "itemSelected"; }, never, never, false, never>;
2953
+ }
2954
+
2955
+ declare class ListOfIconsPopupComponent {
2956
+ collection: IconListItem[];
2957
+ activeItem?: IconListItem;
2958
+ parentForOverlay: ElementRef;
2959
+ customCssClass: string;
2960
+ showLabels: boolean;
2961
+ itemSelected: EventEmitter<IconListItem>;
2962
+ closePopup: EventEmitter<Event>;
2963
+ showClass(): boolean;
2964
+ readonly showSubCategories: Signal<boolean>;
2965
+ private readonly _showSubCategories;
2966
+ selectItem(item: IconListItem): void;
2967
+ handlePickingCategoryClicked(subCategory: IconListItem, event: Event): void;
2968
+ protected readonly CoDirection: typeof CoDirection;
2969
+ static ɵfac: i0.ɵɵFactoryDeclaration<ListOfIconsPopupComponent, never>;
2970
+ static ɵcmp: i0.ɵɵComponentDeclaration<ListOfIconsPopupComponent, "co-list-of-icons-popup", never, { "collection": { "alias": "collection"; "required": false; }; "activeItem": { "alias": "activeItem"; "required": false; }; "parentForOverlay": { "alias": "parentForOverlay"; "required": false; }; "customCssClass": { "alias": "customCssClass"; "required": false; }; "showLabels": { "alias": "showLabels"; "required": false; }; }, { "itemSelected": "itemSelected"; "closePopup": "closePopup"; }, never, never, false, never>;
2971
+ }
2972
+
2973
+ declare class TooltipDirective implements OnDestroy, OnInit {
2974
+ private _compFactoryResolver;
2975
+ private _appRef;
2976
+ private _injector;
2977
+ private _sanitizer;
2978
+ set tooltip(str: string);
2979
+ orientation: CoDirection;
2980
+ private _elementRef;
2981
+ private _tooltipMessage;
2982
+ private _componentRef;
2983
+ private _showTimeoutId;
2984
+ private _autoHideTimeoutId;
2985
+ private readonly _mouseEnterHandler;
2986
+ private readonly _mouseLeaveHandler;
2987
+ private readonly _scrollHandler;
2988
+ constructor(elementRef: ElementRef, _compFactoryResolver: ComponentFactoryResolver, _appRef: ApplicationRef, _injector: Injector, _sanitizer: DomSanitizer);
2989
+ ngOnDestroy(): void;
2990
+ ngOnInit(): void;
2991
+ private _handleScroll;
2992
+ private _startShowTimeout;
2993
+ private _resolveDelay;
2994
+ private _clearShowTimeout;
2995
+ private _removeTooltip;
2996
+ private _startAutoHideTimeout;
2997
+ private _clearAutoHideTimeout;
2998
+ private _createTooltipComponent;
2999
+ static ɵfac: i0.ɵɵFactoryDeclaration<TooltipDirective, never>;
3000
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TooltipDirective, "[tooltip]", never, { "tooltip": { "alias": "tooltip"; "required": false; }; "orientation": { "alias": "tooltipOrientation"; "required": false; }; }, {}, never, never, false, never>;
3001
+ }
3002
+
3003
+ declare class TooltipComponent implements AfterViewInit, OnDestroy {
3004
+ private _elementRef;
3005
+ private _changeDetector;
3006
+ private _renderer;
3007
+ set hostElement(value: HTMLElement);
3008
+ get hostElement(): HTMLElement;
3009
+ toolTip: SafeHtml | string;
3010
+ orientation: CoDirection;
3011
+ tooltipClosed: EventEmitter<void>;
3012
+ showClass(): boolean;
3013
+ top: number;
3014
+ left: number;
3015
+ get isTop(): boolean;
3016
+ get isBottom(): boolean;
3017
+ get isLeft(): boolean;
3018
+ get isRight(): boolean;
3019
+ animate: boolean;
3020
+ private _resolvedOrientation;
3021
+ private _hostElement;
3022
+ private _documentClickListener;
3023
+ constructor(_elementRef: ElementRef, _changeDetector: ChangeDetectorRef, _renderer: Renderer2);
3024
+ ngAfterViewInit(): void;
3025
+ ngOnDestroy(): void;
3026
+ private _positionTooltip;
3027
+ private _resolveOrientation;
3028
+ private _fits;
3029
+ private _availableSpace;
3030
+ private _calculateLeft;
3031
+ private _calculateTop;
3032
+ private _positionArrow;
3033
+ private closeTooltip;
3034
+ static ɵfac: i0.ɵɵFactoryDeclaration<TooltipComponent, never>;
3035
+ static ɵcmp: i0.ɵɵComponentDeclaration<TooltipComponent, "co-tooltip", never, { "hostElement": { "alias": "hostElement"; "required": false; }; "toolTip": { "alias": "toolTip"; "required": false; }; "orientation": { "alias": "orientation"; "required": false; }; }, { "tooltipClosed": "tooltipClosed"; }, never, never, false, never>;
3036
+ }
3037
+
3038
+ declare class TooltipModule {
3039
+ static ɵfac: i0.ɵɵFactoryDeclaration<TooltipModule, never>;
3040
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TooltipModule, [typeof TooltipComponent], [typeof i2.CommonModule], [typeof TooltipComponent]>;
3041
+ static ɵinj: i0.ɵɵInjectorDeclaration<TooltipModule>;
3042
+ }
3043
+
3044
+ declare class TooltipDirectiveModule {
3045
+ static ɵfac: i0.ɵɵFactoryDeclaration<TooltipDirectiveModule, never>;
3046
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TooltipDirectiveModule, [typeof TooltipDirective], [typeof TooltipModule], [typeof TooltipDirective]>;
3047
+ static ɵinj: i0.ɵɵInjectorDeclaration<TooltipDirectiveModule>;
2945
3048
  }
2946
3049
 
2947
3050
  declare class ListOfIconsModule {
2948
3051
  static ɵfac: i0.ɵɵFactoryDeclaration<ListOfIconsModule, never>;
2949
- static ɵmod: i0.ɵɵNgModuleDeclaration<ListOfIconsModule, [typeof ListOfIconsComponent], [typeof i2.CommonModule, typeof i4$1.FormsModule, typeof IconModule, typeof ClickoutsideModule, typeof CoreComponentsTranslationModule], [typeof ListOfIconsComponent]>;
3052
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ListOfIconsModule, [typeof ListOfIconsComponent, typeof ListOfIconsPopupComponent], [typeof i2.CommonModule, typeof i4$1.FormsModule, typeof IconModule, typeof ClickoutsideModule, typeof OverlayModule, typeof CoreComponentsTranslationModule, typeof TooltipDirectiveModule], [typeof ListOfIconsComponent]>;
2950
3053
  static ɵinj: i0.ɵɵInjectorDeclaration<ListOfIconsModule>;
2951
3054
  }
2952
3055
 
@@ -3430,63 +3533,6 @@ declare class AlignWithModule {
3430
3533
  static ɵinj: i0.ɵɵInjectorDeclaration<AlignWithModule>;
3431
3534
  }
3432
3535
 
3433
- declare class TooltipDirective implements OnDestroy, OnInit {
3434
- private _compFactoryResolver;
3435
- private _appRef;
3436
- private _injector;
3437
- private _sanitizer;
3438
- set tooltip(str: string);
3439
- private _elementRef;
3440
- private _tooltipMessage;
3441
- private _componentRef;
3442
- constructor(elementRef: ElementRef, _compFactoryResolver: ComponentFactoryResolver, _appRef: ApplicationRef, _injector: Injector, _sanitizer: DomSanitizer);
3443
- ngOnDestroy(): void;
3444
- ngOnInit(): void;
3445
- private _handleScroll;
3446
- private _handleMouseMove;
3447
- private _showTooltip;
3448
- private _removeTooltip;
3449
- private _createTooltipComponent;
3450
- static ɵfac: i0.ɵɵFactoryDeclaration<TooltipDirective, never>;
3451
- static ɵdir: i0.ɵɵDirectiveDeclaration<TooltipDirective, "[tooltip]", never, { "tooltip": { "alias": "tooltip"; "required": false; }; }, {}, never, never, false, never>;
3452
- }
3453
-
3454
- declare class TooltipComponent implements AfterViewInit, OnDestroy {
3455
- private _elementRef;
3456
- private _changeDetector;
3457
- private _renderer;
3458
- set hostElement(value: HTMLElement);
3459
- get hostElement(): HTMLElement;
3460
- toolTip: SafeHtml | string;
3461
- tooltipClosed: EventEmitter<void>;
3462
- showClass(): boolean;
3463
- top: number;
3464
- left: number;
3465
- bottom: boolean;
3466
- animate: boolean;
3467
- private _hostElement;
3468
- private _documentClickListener;
3469
- constructor(_elementRef: ElementRef, _changeDetector: ChangeDetectorRef, _renderer: Renderer2);
3470
- ngAfterViewInit(): void;
3471
- ngOnDestroy(): void;
3472
- private _positionTooltip;
3473
- private closeTooltip;
3474
- static ɵfac: i0.ɵɵFactoryDeclaration<TooltipComponent, never>;
3475
- static ɵcmp: i0.ɵɵComponentDeclaration<TooltipComponent, "co-tooltip", never, { "hostElement": { "alias": "hostElement"; "required": false; }; "toolTip": { "alias": "toolTip"; "required": false; }; }, { "tooltipClosed": "tooltipClosed"; }, never, never, false, never>;
3476
- }
3477
-
3478
- declare class TooltipModule {
3479
- static ɵfac: i0.ɵɵFactoryDeclaration<TooltipModule, never>;
3480
- static ɵmod: i0.ɵɵNgModuleDeclaration<TooltipModule, [typeof TooltipComponent], [typeof i2.CommonModule], [typeof TooltipComponent]>;
3481
- static ɵinj: i0.ɵɵInjectorDeclaration<TooltipModule>;
3482
- }
3483
-
3484
- declare class TooltipDirectiveModule {
3485
- static ɵfac: i0.ɵɵFactoryDeclaration<TooltipDirectiveModule, never>;
3486
- static ɵmod: i0.ɵɵNgModuleDeclaration<TooltipDirectiveModule, [typeof TooltipDirective], [typeof TooltipModule], [typeof TooltipDirective]>;
3487
- static ɵinj: i0.ɵɵInjectorDeclaration<TooltipDirectiveModule>;
3488
- }
3489
-
3490
3536
  declare abstract class BaseModuleScreenConfigService {
3491
3537
  abstract screenModuleName: string;
3492
3538
  readonly configSet: BehaviorSubject<ObjectConfiguration[]>;
@@ -97,7 +97,7 @@
97
97
 
98
98
  .first-half-hour,
99
99
  .second-half-hour {
100
- background: none;
100
+
101
101
 
102
102
  &.selected {
103
103
  background-color: rgba(26, 115, 232, 0.2);
@@ -4,9 +4,9 @@
4
4
  display: block;
5
5
  height: fit-content;
6
6
  margin-right: -10px;
7
- font-family: $cc-co-input-text-font-family;
8
- font-size: $cc-co-input-text-font-size;
9
- background: $cc-co-list-of-values-background-color;
7
+ font-family: $cc-co-list-of-icons-font-family;
8
+ font-size: $cc-co-list-of-icons-font-size;
9
+ background: $cc-co-list-of-icons-background-color;
10
10
  z-index: 1;
11
11
 
12
12
  .icon-item {
@@ -16,6 +16,12 @@
16
16
  align-items: center;
17
17
  cursor: pointer;
18
18
 
19
+ .co-icon {
20
+ width: $cc-co-list-of-icons-icon-size;
21
+ height: $cc-co-list-of-icons-icon-size;
22
+ padding: $cc-co-list-of-icons-icon-padding;
23
+ }
24
+
19
25
  .label {
20
26
  margin-top: 2px;
21
27
  text-align: center;
@@ -35,40 +41,44 @@
35
41
  &.menu-opened {
36
42
  .co-icon svg,
37
43
  .co-icon svg * {
38
- fill: $color-action;
44
+ fill: $cc-color-action;
39
45
  }
40
46
 
41
47
  .label {
42
- color: $color-action;
48
+ color: $cc-color-action;
43
49
  }
44
50
  }
45
51
  }
52
+ }
53
+
54
+ .co-list-of-icons-popup {
55
+ font-family: $cc-co-list-of-icons-font-family;
56
+ font-size: $cc-co-list-of-icons-font-size;
46
57
 
47
58
  .dropdown-menu {
48
- position: absolute;
49
- top: 100%;
50
- left: 0;
51
- width: 65px;
52
- padding-top: 10px;
53
- box-shadow: -3px 0px 16px 1px rgba(0, 0, 0, 0.2);
54
- border-radius: 5px;
55
- background: #FFF;
59
+ position: fixed;
60
+ width: auto;
61
+ padding: $cc-co-list-of-icons-popup-padding;
62
+ border-radius: $cc-co-list-of-icons-popup-border-radius;
63
+ z-index: $cc-co-list-of-icons-popup-z-index;
56
64
 
57
65
  .icon-item {
58
66
  position: relative;
59
- margin-bottom: 12px;
60
-
61
- &.active {
62
- flex-direction: column;
67
+ display: flex;
68
+ flex-direction: column;
69
+ align-items: center;
70
+ margin-bottom: $cc-co-list-of-icons-popup-item-margin-bottom;
71
+ cursor: pointer;
63
72
 
64
- .co-icon svg,
65
- .co-icon svg * {
66
- fill: $color-action;
67
- }
73
+ .co-icon {
74
+ width: $cc-co-list-of-icons-icon-size;
75
+ height: $cc-co-list-of-icons-icon-size;
76
+ padding: $cc-co-list-of-icons-icon-padding;
77
+ }
68
78
 
69
- .label {
70
- color: $color-action;
71
- }
79
+ .label {
80
+ margin-top: 2px;
81
+ text-align: center;
72
82
  }
73
83
  }
74
84
  }
@@ -79,9 +89,7 @@
79
89
  left: 106%;
80
90
  z-index: 1;
81
91
  padding: 8px 6px 0;
82
- border-radius: 3px;
83
- background: #f8f8fa;
84
- box-shadow: 1px 1px 3px 1px #9d9d9d6e;
92
+ border-radius: $cc-co-list-of-icons-popup-sub-category-border-radius;
85
93
 
86
94
  .button-wrapper {
87
95
  display: flex;
@@ -92,14 +100,6 @@
92
100
  text-align: center;
93
101
  cursor: pointer;
94
102
 
95
- &:hover {
96
- co-icon svg *,
97
- span {
98
- fill: $color-action;
99
- color: $color-action;
100
- }
101
- }
102
-
103
103
  .button-title {
104
104
  margin-top: 2px;
105
105
  font-size: 9px;
@@ -108,4 +108,3 @@
108
108
  }
109
109
  }
110
110
  }
111
-
@@ -1,19 +1,17 @@
1
- $cc-co-input-text-font-family: $cc-font-family !default;
2
- $cc-co-input-text-font-size: $cc-font-size-default !default;
3
- $cc-co-input-text-font-color: $cc-color-dark !default;
4
- $cc-co-input-text-background-color: white !default;
5
- $cc-co-input-text-border-color: $cc-color-border !default;
6
- $cc-co-input-placeholder-color: $cc-color-border !default;
7
- $cc-co-input-placeholder-font-style: italic !default;
8
- $cc-co-input-text-small-height: 45px !default;
9
- $cc-co-input-text-icon-max-height: $cc-item-size !default;
10
- $cc-co-input-text-icon-size: 50% !default;
11
- $cc-co-input-text-icon-margin-number: 0 !default;
12
- $cc-co-input-text-spacer-width: $cc-input-border-width !default;
13
- $cc-co-input-text-right-spacer-width: 0 !default;
14
- $cc-co-input-text-spacer-color: $cc-input-border-color !default;
15
- $cc-co-list-of-values-background-color: white !default;
16
- $cc-co-list-of-values-lov-options-border: 1px solid $cc-input-border-color !default;
17
- $color-menu: #6b6e8a;
18
- $color-action: #1A73E8;
19
- $cc-color-validation-error-background: $cc-color-validation-error-background !default;
1
+ $cc-co-list-of-icons-font-family: $cc-font-family !default;
2
+ $cc-co-list-of-icons-font-size: $cc-font-size-default !default;
3
+ $cc-co-list-of-icons-background-color: white !default;
4
+ $cc-co-list-of-icons-icon-size: 25px !default;
5
+ $cc-co-list-of-icons-icon-padding: 2px !default;
6
+
7
+ //Popup (portaled to the document body by the OverlayService) variables
8
+ $cc-co-list-of-icons-popup-padding: 10px 5px 0 5px !default;
9
+ $cc-co-list-of-icons-popup-border-radius: 5px !default;
10
+ $cc-co-list-of-icons-popup-z-index: 99999999 !default;
11
+ $cc-co-list-of-icons-popup-background-color: #fff !default;
12
+ $cc-co-list-of-icons-popup-box-shadow: -3px 0 16px 1px rgba(0, 0, 0, 0.2) !default;
13
+ $cc-co-list-of-icons-popup-active-color: $cc-color-action !default;
14
+ $cc-co-list-of-icons-popup-item-margin-bottom: 12px !default;
15
+ $cc-co-list-of-icons-popup-sub-category-background-color: #f8f8fa !default;
16
+ $cc-co-list-of-icons-popup-sub-category-box-shadow: 1px 1px 3px 1px #9d9d9d6e !default;
17
+ $cc-co-list-of-icons-popup-sub-category-border-radius: 3px !default;
@@ -0,0 +1,35 @@
1
+ @include export-module('co-list-of-icons-theme') {
2
+ .co-list-of-icons-popup {
3
+ .dropdown-menu {
4
+ background: $cc-co-list-of-icons-popup-background-color;
5
+ box-shadow: $cc-co-list-of-icons-popup-box-shadow;
6
+
7
+ .icon-item {
8
+ &:hover,
9
+ &.active {
10
+ .co-icon svg,
11
+ .co-icon svg * {
12
+ fill: $cc-co-list-of-icons-popup-active-color;
13
+ }
14
+
15
+ .label {
16
+ color: $cc-co-list-of-icons-popup-active-color;
17
+ }
18
+ }
19
+ }
20
+ }
21
+
22
+ .picking-type-wrapper {
23
+ background: $cc-co-list-of-icons-popup-sub-category-background-color;
24
+ box-shadow: $cc-co-list-of-icons-popup-sub-category-box-shadow;
25
+
26
+ .button-wrapper:hover {
27
+ co-icon svg *,
28
+ span {
29
+ fill: $cc-co-list-of-icons-popup-active-color;
30
+ color: $cc-co-list-of-icons-popup-active-color;
31
+ }
32
+ }
33
+ }
34
+ }
35
+ }
@@ -10,7 +10,7 @@
10
10
  align-items: center;
11
11
  column-gap: 10px;
12
12
  padding: $co-tooltip-padding;
13
- z-index: 999999;
13
+ z-index: $co-tooltip-z-index;
14
14
  border-radius: $co-tooltip-border-radius;
15
15
  border: $co-tooltip-border;
16
16
 
@@ -23,30 +23,73 @@
23
23
  pointer-events: none;
24
24
  position: absolute;
25
25
  width: 0;
26
- bottom: -20px;
27
26
  }
28
27
 
29
28
  &::after {
30
- left: 20px;
31
- border-width: 10px;
29
+ border-width: $co-tooltip-arrow-size;
32
30
  }
33
31
 
34
32
  &::before {
35
- margin-left: 12px;
36
- border-width: 8px;
33
+ border-width: $co-tooltip-arrow-inner-size;
37
34
  z-index: 1;
38
- bottom: -16px;
39
35
  }
36
+
37
+ @if not $co-tooltip-has-border {
38
+ &::after {
39
+ display: none;
40
+ }
41
+ }
42
+
43
+ // The arrow sits on the edge facing the host: --co-tooltip-arrow-center is the offset along that edge.
44
+ &.top {
45
+ &::after {
46
+ left: calc(#{$co-tooltip-arrow-center} - #{$co-tooltip-arrow-size});
47
+ bottom: calc(-2 * #{$co-tooltip-arrow-size});
48
+ }
49
+
50
+ &::before {
51
+ left: calc(#{$co-tooltip-arrow-center} - #{$co-tooltip-arrow-inner-size});
52
+ bottom: calc(-2 * #{$co-tooltip-arrow-inner-size});
53
+ }
54
+ }
55
+
40
56
  &.bottom {
41
- &::after,
57
+ &::after {
58
+ left: calc(#{$co-tooltip-arrow-center} - #{$co-tooltip-arrow-size});
59
+ top: calc(-2 * #{$co-tooltip-arrow-size});
60
+ }
61
+
42
62
  &::before {
43
- bottom: 100%;
63
+ left: calc(#{$co-tooltip-arrow-center} - #{$co-tooltip-arrow-inner-size});
64
+ top: calc(-2 * #{$co-tooltip-arrow-inner-size});
44
65
  }
45
66
  }
67
+
68
+ &.left {
69
+ &::after {
70
+ top: calc(#{$co-tooltip-arrow-center} - #{$co-tooltip-arrow-size});
71
+ right: calc(-2 * #{$co-tooltip-arrow-size});
72
+ }
73
+
74
+ &::before {
75
+ top: calc(#{$co-tooltip-arrow-center} - #{$co-tooltip-arrow-inner-size});
76
+ right: calc(-2 * #{$co-tooltip-arrow-inner-size});
77
+ }
78
+ }
79
+
80
+ &.right {
81
+ &::after {
82
+ top: calc(#{$co-tooltip-arrow-center} - #{$co-tooltip-arrow-size});
83
+ left: calc(-2 * #{$co-tooltip-arrow-size});
84
+ }
85
+
86
+ &::before {
87
+ top: calc(#{$co-tooltip-arrow-center} - #{$co-tooltip-arrow-inner-size});
88
+ left: calc(-2 * #{$co-tooltip-arrow-inner-size});
89
+ }
90
+ }
91
+ .title {
92
+ font-weight: $co-tooltip-title-font-weight;
93
+ }
46
94
  }
47
- //.validation-error-content {
48
- // display: flex;
49
- // flex-direction: row;
50
- // align-items: center;
51
- //}
52
95
  }
@@ -1,8 +1,34 @@
1
+ @use "sass:list";
2
+ @use "sass:meta";
3
+
4
+ :root {
5
+ --co-tooltip-arrow-size: 10px;
6
+ --co-tooltip-arrow-inner-size: 8px;
7
+ --co-tooltip-arrow-center: 30px;
8
+ --co-tooltip-z-index: 9999999999;
9
+ // Read by TooltipDirective (getComputedStyle), not applied by CSS.
10
+ --co-tooltip-show-delay: 400ms;
11
+ --co-tooltip-auto-hide-delay: 10000ms; // 0 disables the auto-hide guard
12
+ }
13
+
1
14
  $co-tooltip-font-family: $cc-font-family !default;
2
15
  $co-tooltip-font-size: $cc-font-size-default !default;
3
16
  $co-tooltip-padding: 10px !default;
4
- $co-tooltip-background-color: $cc-color-form-input-background-focus !default;
5
- $co-tooltip-color: $cc-color-font !default;
6
- $co-tooltip-border: 2px solid !default;
7
- $co-tooltip-border-color: black !default;
17
+ $co-tooltip-background-color: $cc-color-tooltip-default !default;
18
+ $co-tooltip-color: white !default;
19
+ $co-tooltip-border: 1px solid !default;
20
+ $co-tooltip-border-color: gray !default;
8
21
  $co-tooltip-border-radius: 5px !default;
22
+ $co-tooltip-arrow-size: var(--co-tooltip-arrow-size) !default;
23
+ $co-tooltip-arrow-inner-size: var(--co-tooltip-arrow-inner-size) !default;
24
+ $co-tooltip-arrow-center: var(--co-tooltip-arrow-center) !default;
25
+ $co-tooltip-z-index: var(--co-tooltip-z-index) !default;
26
+
27
+ // Derived from the border shorthand so the arrow rim follows whatever the consumer sets.
28
+ $co-tooltip-border-width: if(meta.type-of($co-tooltip-border) == list, list.nth($co-tooltip-border, 1), $co-tooltip-border) !default;
29
+ $co-tooltip-has-border: meta.type-of($co-tooltip-border-width) == number and $co-tooltip-border-width > 0 !default;
30
+
31
+ $co-tooltip-title-font-family: $cc-font-family !default;
32
+ $co-tooltip-title-font-size: $cc-font-size-default !default;
33
+ $co-tooltip-title-font-color: $co-tooltip-color !default;
34
+ $co-tooltip-title-font-weight: bold !default;
@@ -4,30 +4,49 @@
4
4
  color: $co-tooltip-color;
5
5
  border-color: $co-tooltip-border-color;
6
6
 
7
- &::after {
8
- border-bottom-color: transparent;
9
- border-top-color: $co-tooltip-border-color;
7
+ // Each orientation colours the border edge that forms the visible triangle.
8
+ &.top {
9
+ &::after {
10
+ border-top-color: $co-tooltip-border-color;
11
+ }
12
+
13
+ &::before {
14
+ border-top-color: $co-tooltip-background-color;
15
+ }
10
16
  }
11
17
 
12
- &::before {
13
- border-bottom-color: transparent;
14
- border-top-color: $co-tooltip-background-color;
18
+ &.bottom {
19
+ &::after {
20
+ border-bottom-color: $co-tooltip-border-color;
21
+ }
22
+
23
+ &::before {
24
+ border-bottom-color: $co-tooltip-background-color;
25
+ }
15
26
  }
16
27
 
17
- @if $co-tooltip-border == "none" {
28
+ &.left {
18
29
  &::after {
19
- display: none;
30
+ border-left-color: $co-tooltip-border-color;
31
+ }
32
+
33
+ &::before {
34
+ border-left-color: $co-tooltip-background-color;
20
35
  }
21
36
  }
22
- &.bottom {
37
+
38
+ &.right {
23
39
  &::after {
24
- border-top-color: transparent;
25
- border-bottom-color: $co-tooltip-border-color;
40
+ border-right-color: $co-tooltip-border-color;
26
41
  }
42
+
27
43
  &::before {
28
- border-top-color: transparent;
29
- border-bottom-color: $co-tooltip-background-color;
44
+ border-right-color: $co-tooltip-background-color;
30
45
  }
31
46
  }
47
+
48
+ .title {
49
+ color: $co-tooltip-title-font-color;
50
+ }
32
51
  }
33
52
  }
@@ -48,6 +48,7 @@ $cc-color-text-main: #22313C !default;
48
48
  $cc-color-input-positive: #d7ead7 !default;
49
49
  $cc-color-input-important: $cc-color-light !default;
50
50
  $cc-color-input-info: #e4e6eb !default;
51
+ $cc-color-tooltip-default: #2e3350 !default;
51
52
  $cc-color-active-accent: #8faba6 !default;
52
53
  $cc-color-less-light: #F7FAFA !default;
53
54
  $cc-color-border: #CCCCCC !default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@colijnit/corecomponents_v12",
3
- "version": "300.1.5",
3
+ "version": "300.1.7",
4
4
  "description": "Colijn IT core components for Angular 12",
5
5
  "private": false,
6
6
  "peerDependencies": {