@ptsecurity/mosaic 16.3.0 → 16.4.1

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 (94) hide show
  1. package/_theming.scss +102 -27
  2. package/_visual.scss +82 -19
  3. package/autocomplete/autocomplete-trigger.directive.d.ts +7 -1
  4. package/checkbox/_checkbox-theme.scss +1 -1
  5. package/core/common-behaviors/index.d.ts +2 -0
  6. package/core/pop-up/pop-up.d.ts +7 -0
  7. package/core/styles/_variables.scss +1 -1
  8. package/core/styles/theming/_components-theming.scss +4 -2
  9. package/core/styles/theming/_scrollbars.scss +1 -1
  10. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +14 -2
  11. package/esm2022/core/common-behaviors/index.mjs +3 -1
  12. package/esm2022/core/highlight/highlight.pipe.mjs +2 -2
  13. package/esm2022/core/pop-up/pop-up-trigger.mjs +2 -2
  14. package/esm2022/core/pop-up/pop-up.mjs +8 -1
  15. package/esm2022/core/version.mjs +2 -2
  16. package/esm2022/file-upload/file-upload.module.mjs +8 -4
  17. package/esm2022/file-upload/multiple-file-upload.component.mjs +15 -34
  18. package/esm2022/file-upload/single-file-upload.component.mjs +15 -34
  19. package/esm2022/form-field/form-field.mjs +9 -3
  20. package/esm2022/icon/icon.component.mjs +9 -1
  21. package/esm2022/loader-overlay/loader-overlay.component.mjs +2 -2
  22. package/esm2022/navbar/navbar-item.component.mjs +15 -8
  23. package/esm2022/navbar/navbar.component.mjs +18 -8
  24. package/esm2022/navbar/vertical-navbar.component.mjs +3 -3
  25. package/esm2022/popover/popover.component.mjs +6 -1
  26. package/esm2022/select/select.component.mjs +14 -7
  27. package/esm2022/tabs/tab-group.component.mjs +5 -5
  28. package/esm2022/tabs/tab-header.component.mjs +2 -2
  29. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +2 -2
  30. package/esm2022/tags/tag-input.mjs +28 -8
  31. package/esm2022/textarea/textarea.component.mjs +17 -6
  32. package/esm2022/tree/control/base-tree-control.mjs +4 -4
  33. package/esm2022/tree/control/flat-tree-control.filters.mjs +3 -2
  34. package/esm2022/tree/control/flat-tree-control.mjs +4 -4
  35. package/esm2022/tree/control/tree-control.mjs +1 -1
  36. package/esm2022/tree/toggle.mjs +2 -2
  37. package/esm2022/tree/tree-option.component.mjs +4 -1
  38. package/esm2022/tree-select/tree-select.component.mjs +21 -8
  39. package/fesm2022/ptsecurity-mosaic-autocomplete.mjs +13 -1
  40. package/fesm2022/ptsecurity-mosaic-autocomplete.mjs.map +1 -1
  41. package/fesm2022/ptsecurity-mosaic-core.mjs +15 -6
  42. package/fesm2022/ptsecurity-mosaic-core.mjs.map +1 -1
  43. package/fesm2022/ptsecurity-mosaic-file-upload.mjs +26 -58
  44. package/fesm2022/ptsecurity-mosaic-file-upload.mjs.map +1 -1
  45. package/fesm2022/ptsecurity-mosaic-form-field.mjs +8 -2
  46. package/fesm2022/ptsecurity-mosaic-form-field.mjs.map +1 -1
  47. package/fesm2022/ptsecurity-mosaic-icon.mjs +8 -0
  48. package/fesm2022/ptsecurity-mosaic-icon.mjs.map +1 -1
  49. package/fesm2022/ptsecurity-mosaic-loader-overlay.mjs +2 -2
  50. package/fesm2022/ptsecurity-mosaic-loader-overlay.mjs.map +1 -1
  51. package/fesm2022/ptsecurity-mosaic-navbar.mjs +33 -16
  52. package/fesm2022/ptsecurity-mosaic-navbar.mjs.map +1 -1
  53. package/fesm2022/ptsecurity-mosaic-popover.mjs +5 -0
  54. package/fesm2022/ptsecurity-mosaic-popover.mjs.map +1 -1
  55. package/fesm2022/ptsecurity-mosaic-select.mjs +13 -6
  56. package/fesm2022/ptsecurity-mosaic-select.mjs.map +1 -1
  57. package/fesm2022/ptsecurity-mosaic-tabs.mjs +7 -7
  58. package/fesm2022/ptsecurity-mosaic-tabs.mjs.map +1 -1
  59. package/fesm2022/ptsecurity-mosaic-tags.mjs +26 -7
  60. package/fesm2022/ptsecurity-mosaic-tags.mjs.map +1 -1
  61. package/fesm2022/ptsecurity-mosaic-textarea.mjs +16 -5
  62. package/fesm2022/ptsecurity-mosaic-textarea.mjs.map +1 -1
  63. package/fesm2022/ptsecurity-mosaic-tree-select.mjs +20 -7
  64. package/fesm2022/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  65. package/fesm2022/ptsecurity-mosaic-tree.mjs +12 -8
  66. package/fesm2022/ptsecurity-mosaic-tree.mjs.map +1 -1
  67. package/file-upload/_file-upload-theme.scss +1 -1
  68. package/file-upload/file-upload.module.d.ts +2 -1
  69. package/file-upload/file-upload.scss +0 -8
  70. package/file-upload/multiple-file-upload.component.d.ts +4 -12
  71. package/file-upload/multiple-file-upload.component.scss +56 -24
  72. package/file-upload/single-file-upload.component.d.ts +4 -12
  73. package/file-upload/single-file-upload.component.scss +6 -0
  74. package/form-field/form-field.d.ts +2 -0
  75. package/form-field/form-field.scss +2 -0
  76. package/icon/icon.component.d.ts +2 -0
  77. package/link/_link-theme.scss +2 -1
  78. package/navbar/_navbar-theme.scss +2 -2
  79. package/navbar/navbar-item.component.d.ts +4 -1
  80. package/navbar/navbar-item.scss +7 -3
  81. package/navbar/navbar.component.d.ts +3 -0
  82. package/package.json +14 -14
  83. package/popover/popover.component.d.ts +5 -0
  84. package/prebuilt-themes/dark-theme.css +1 -1
  85. package/prebuilt-themes/default-theme.css +1 -1
  86. package/select/select.component.d.ts +1 -0
  87. package/tabs/_tabs-theme.scss +5 -0
  88. package/tabs/tab-header.scss +12 -0
  89. package/tabs/tab-nav-bar/tab-nav-bar.scss +12 -0
  90. package/tags/tag-input.d.ts +9 -4
  91. package/textarea/textarea.component.d.ts +3 -2
  92. package/tree/control/base-tree-control.d.ts +1 -1
  93. package/tree/control/tree-control.d.ts +1 -1
  94. package/tree-select/tree-select.component.d.ts +1 -0
@@ -5,7 +5,7 @@
5
5
 
6
6
  @mixin mc-file-upload-text-color($states) {
7
7
  &, .mc-icon, .mc-link {
8
- color: map.get($states, border);
8
+ color: map.get($states, text);
9
9
  }
10
10
  }
11
11
 
@@ -11,8 +11,9 @@ import * as i9 from "@ptsecurity/mosaic/list";
11
11
  import * as i10 from "@ptsecurity/mosaic/form-field";
12
12
  import * as i11 from "@ptsecurity/mosaic/ellipsis-center";
13
13
  import * as i12 from "@ptsecurity/mosaic/core";
14
+ import * as i13 from "@ptsecurity/mosaic/link";
14
15
  export declare class McFileUploadModule {
15
16
  static ɵfac: i0.ɵɵFactoryDeclaration<McFileUploadModule, never>;
16
- static ɵmod: i0.ɵɵNgModuleDeclaration<McFileUploadModule, [typeof i1.McFileDropDirective, typeof i2.McSingleFileUploadComponent, typeof i3.McMultipleFileUploadComponent], [typeof i4.CommonModule, typeof i5.McToolTipModule, typeof i6.McProgressSpinnerModule, typeof i7.McIconModule, typeof i8.McButtonModule, typeof i9.McListModule, typeof i10.McFormFieldModule, typeof i11.McEllipsisCenterModule, typeof i12.McDataSizeModule], [typeof i2.McSingleFileUploadComponent, typeof i3.McMultipleFileUploadComponent, typeof i1.McFileDropDirective]>;
17
+ static ɵmod: i0.ɵɵNgModuleDeclaration<McFileUploadModule, [typeof i1.McFileDropDirective, typeof i2.McSingleFileUploadComponent, typeof i3.McMultipleFileUploadComponent], [typeof i4.CommonModule, typeof i5.McToolTipModule, typeof i6.McProgressSpinnerModule, typeof i7.McIconModule, typeof i8.McButtonModule, typeof i9.McListModule, typeof i10.McFormFieldModule, typeof i11.McEllipsisCenterModule, typeof i12.McDataSizeModule, typeof i13.McLinkModule], [typeof i2.McSingleFileUploadComponent, typeof i3.McMultipleFileUploadComponent, typeof i1.McFileDropDirective]>;
17
18
  static ɵinj: i0.ɵɵInjectorDeclaration<McFileUploadModule>;
18
19
  }
@@ -6,26 +6,18 @@
6
6
  @use '../core/styles/common';
7
7
 
8
8
  $tokens: meta.module-variables(tokens) !default;
9
- $dropzone-text-margin-left: map.get($tokens, size-xs);
10
9
 
11
10
  .mc-file-upload {
12
11
  box-sizing: border-box;
13
12
  display: flex;
14
13
  align-items: center;
15
14
  position: relative;
16
- cursor: pointer;
17
15
 
18
16
  .dropzone, .file-item {
19
17
  display: flex;
20
18
  align-items: center;
21
19
  }
22
20
 
23
- .dropzone {
24
- .dropzone__text {
25
- margin-left: $dropzone-text-margin-left;
26
- }
27
- }
28
-
29
21
  .mc-ellipsis-center {
30
22
  position: relative;
31
23
  display: flex;
@@ -1,5 +1,4 @@
1
- import { FocusMonitor } from '@angular/cdk/a11y';
2
- import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, Renderer2, TemplateRef } from '@angular/core';
1
+ import { ElementRef, EventEmitter, Renderer2, TemplateRef } from '@angular/core';
3
2
  import { CanDisable } from '@ptsecurity/mosaic/core';
4
3
  import { McFile, McFileItem, McFileValidatorFn, McInputFile, McInputFileLabel } from './file-upload';
5
4
  import * as i0 from "@angular/core";
@@ -13,9 +12,7 @@ export interface McInputFileMultipleLabel extends McInputFileLabel {
13
12
  [k: string | number | symbol]: unknown;
14
13
  }
15
14
  export declare const MC_MULTIPLE_FILE_UPLOAD_DEFAULT_CONFIGURATION: McInputFileMultipleLabel;
16
- export declare class McMultipleFileUploadComponent implements AfterViewInit, OnDestroy, McInputFile, CanDisable {
17
- private focusMonitor;
18
- private cdr;
15
+ export declare class McMultipleFileUploadComponent implements McInputFile, CanDisable {
19
16
  private renderer;
20
17
  config: McInputFileMultipleLabel;
21
18
  accept?: string[];
@@ -28,25 +25,20 @@ export declare class McMultipleFileUploadComponent implements AfterViewInit, OnD
28
25
  fileQueueChanged: EventEmitter<McFileItem[]>;
29
26
  customFileIcon: TemplateRef<HTMLElement>;
30
27
  input: ElementRef<HTMLInputElement>;
31
- hasFocus: boolean;
32
28
  columnDefs: {
33
29
  header: string;
34
30
  cssClass: string;
35
31
  }[];
36
- private focusMonitorSubscription;
37
32
  get acceptedFiles(): string;
38
33
  get hasErrors(): boolean;
39
- constructor(focusMonitor: FocusMonitor, cdr: ChangeDetectorRef, renderer: Renderer2, config: McInputFileMultipleLabel);
40
- ngAfterViewInit(): void;
41
- ngOnDestroy(): void;
34
+ constructor(renderer: Renderer2, config: McInputFileMultipleLabel);
42
35
  onFileSelectedViaClick({ target }: Event): void;
43
36
  onFileDropped(files: FileList | McFile[]): void;
44
37
  deleteFile(index: number, event?: MouseEvent): void;
45
38
  onFileListChange(): void;
46
- onFocus(focusState: boolean): void;
47
39
  private mapToFileItem;
48
40
  private validateFile;
49
41
  private isCorrectExtension;
50
- static ɵfac: i0.ɵɵFactoryDeclaration<McMultipleFileUploadComponent, [null, null, null, { optional: true; }]>;
42
+ static ɵfac: i0.ɵɵFactoryDeclaration<McMultipleFileUploadComponent, [null, { optional: true; }]>;
51
43
  static ɵcmp: i0.ɵɵComponentDeclaration<McMultipleFileUploadComponent, "mc-multiple-file-upload", never, { "accept": { "alias": "accept"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "errors": { "alias": "errors"; "required": false; }; "files": { "alias": "files"; "required": false; }; "size": { "alias": "size"; "required": false; }; "inputId": { "alias": "inputId"; "required": false; }; "customValidation": { "alias": "customValidation"; "required": false; }; }, { "fileQueueChanged": "fileQueueChanged"; }, ["customFileIcon"], ["[hint]"], false, never>;
52
44
  }
@@ -7,7 +7,6 @@
7
7
 
8
8
  $tokens: meta.module-variables(tokens) !default;
9
9
 
10
- $dropzone-text-margin-left: map.get($tokens, size-xs);
11
10
  $multiple-default-height: 176px;
12
11
  $border-type-header: solid;
13
12
 
@@ -34,29 +33,9 @@ $vertical-padding-item: var(
34
33
  map.get($tokens, file-upload-size-multiple-border-style)
35
34
  );
36
35
 
37
- &.default {
38
- min-height: $multiple-default-height;
39
- justify-content: center;
40
- }
41
-
42
- &.compact:not(.selected) {
43
- height: var(
44
- --mc-file-upload-size-single-height,
45
- map.get($tokens, file-upload-size-single-height)
46
- );
47
- padding-top: var(
48
- --mc-file-upload-size-single-vertical-padding,
49
- map.get($tokens, file-upload-size-single-vertical-padding)
50
- );
51
- padding-bottom: var(
52
- --mc-file-upload-size-single-vertical-padding,
53
- map.get($tokens, file-upload-size-single-vertical-padding)
54
- );
55
- padding-left: map.get($tokens, size-m);
56
- }
57
-
58
36
  .mc-list-option {
59
37
  padding: $horizontal-padding-item $vertical-padding-item;
38
+ height: 36px;
60
39
 
61
40
  .mc-icon {
62
41
  margin-right: 0;
@@ -64,7 +43,7 @@ $vertical-padding-item: var(
64
43
  }
65
44
 
66
45
  .mc-file-upload__grid {
67
- min-height: 144px;
46
+ min-height: 142px;
68
47
  }
69
48
 
70
49
  .mc-file-multiple-uploaded__header-inner,
@@ -90,6 +69,11 @@ $vertical-padding-item: var(
90
69
  padding-left: $horizontal-padding-item;
91
70
  padding-right: $horizontal-padding-item;
92
71
  }
72
+
73
+ .mc-file-upload__action {
74
+ display: flex;
75
+ align-items: center;
76
+ }
93
77
  }
94
78
 
95
79
  .mc-file-upload__row {
@@ -120,6 +104,7 @@ $vertical-padding-item: var(
120
104
 
121
105
  .btn-upload {
122
106
  .dropzone {
107
+ $padding-top: map.get($tokens, size-xxs);
123
108
  margin: 0;
124
109
  border-top-width: var(
125
110
  --mc-file-upload-size-multiple-border-width,
@@ -129,10 +114,57 @@ $vertical-padding-item: var(
129
114
  --mc-file-upload-size-multiple-border-style,
130
115
  map.get($tokens, file-upload-size-multiple-border-style)
131
116
  );
132
- padding: map.get($tokens, size-xxs) map.get($tokens, size-m);
117
+ padding: calc($padding-top - 1px)
118
+ map.get($tokens, size-m)
119
+ map.get($tokens, size-xxs)
120
+ map.get($tokens, size-m);
121
+ }
122
+ }
123
+
124
+ &.compact {
125
+ &:not(.selected) {
126
+ height: var(
127
+ --mc-file-upload-size-single-height,
128
+ map.get($tokens, file-upload-size-single-height)
129
+ );
130
+ padding-top: var(
131
+ --mc-file-upload-size-single-vertical-padding,
132
+ map.get($tokens, file-upload-size-single-vertical-padding)
133
+ );
134
+ padding-bottom: var(
135
+ --mc-file-upload-size-single-vertical-padding,
136
+ map.get($tokens, file-upload-size-single-vertical-padding)
137
+ );
138
+ padding-left: map.get($tokens, size-m);
139
+ }
140
+
141
+ .dropzone {
142
+ .dropzone__text {
143
+ margin-left: map.get($tokens, size-xs);
144
+ }
133
145
  }
134
146
  }
135
147
 
148
+ &.default {
149
+ min-height: $multiple-default-height;
150
+ justify-content: center;
151
+
152
+ .dropzone {
153
+ .dropzone__text {
154
+ margin-left: map.get($tokens, size-l);
155
+ }
156
+ }
157
+
158
+ .btn-upload {
159
+ .dropzone {
160
+ .dropzone__text {
161
+ margin-left: map.get($tokens, size-xs);
162
+ }
163
+ }
164
+ }
165
+ }
166
+
167
+
136
168
  .file-upload__dropzone {
137
169
  width: 100%;
138
170
  height: 100%;
@@ -1,12 +1,9 @@
1
- import { FocusMonitor } from '@angular/cdk/a11y';
2
- import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, Renderer2 } from '@angular/core';
1
+ import { ElementRef, EventEmitter, Renderer2 } from '@angular/core';
3
2
  import { CanDisable } from '@ptsecurity/mosaic/core';
4
3
  import { McFile, McFileItem, McFileValidatorFn, McInputFile, McInputFileLabel } from './file-upload';
5
4
  import * as i0 from "@angular/core";
6
5
  export declare const MC_SINGLE_FILE_UPLOAD_DEFAULT_CONFIGURATION: McInputFileLabel;
7
- export declare class McSingleFileUploadComponent implements AfterViewInit, OnDestroy, McInputFile, CanDisable {
8
- private focusMonitor;
9
- private cdr;
6
+ export declare class McSingleFileUploadComponent implements McInputFile, CanDisable {
10
7
  private renderer;
11
8
  config: McInputFileLabel;
12
9
  accept: string[];
@@ -17,19 +14,14 @@ export declare class McSingleFileUploadComponent implements AfterViewInit, OnDes
17
14
  customValidation?: McFileValidatorFn[];
18
15
  fileQueueChanged: EventEmitter<McFileItem | null>;
19
16
  input: ElementRef<HTMLInputElement>;
20
- hasFocus: boolean;
21
- private focusMonitorSubscription;
22
17
  get acceptedFiles(): string;
23
- constructor(focusMonitor: FocusMonitor, cdr: ChangeDetectorRef, renderer: Renderer2, config: McInputFileLabel);
24
- ngAfterViewInit(): void;
25
- ngOnDestroy(): void;
18
+ constructor(renderer: Renderer2, config: McInputFileLabel);
26
19
  onFileSelectedViaClick({ target }: Event): void;
27
20
  deleteItem(event?: MouseEvent): void;
28
21
  onFileDropped(files: FileList | McFile[]): void;
29
- onFocus(focusState: boolean): void;
30
22
  private mapToFileItem;
31
23
  private validateFile;
32
24
  private isCorrectExtension;
33
- static ɵfac: i0.ɵɵFactoryDeclaration<McSingleFileUploadComponent, [null, null, null, { optional: true; }]>;
25
+ static ɵfac: i0.ɵɵFactoryDeclaration<McSingleFileUploadComponent, [null, { optional: true; }]>;
34
26
  static ɵcmp: i0.ɵɵComponentDeclaration<McSingleFileUploadComponent, "mc-single-file-upload", never, { "accept": { "alias": "accept"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "errors": { "alias": "errors"; "required": false; }; "files": { "alias": "files"; "required": false; }; "inputId": { "alias": "inputId"; "required": false; }; "customValidation": { "alias": "customValidation"; "required": false; }; }, { "fileQueueChanged": "fileQueueChanged"; }, never, ["[hint]", "[mc-icon]"], false, never>;
35
27
  }
@@ -34,6 +34,12 @@ $tokens: meta.module-variables(tokens) !default;
34
34
  map.get($tokens, file-upload-size-single-border-style)
35
35
  );
36
36
 
37
+ .dropzone {
38
+ .dropzone__text {
39
+ margin-left: map.get($tokens, size-xs);
40
+ }
41
+ }
42
+
37
43
  .file-item {
38
44
  width: 100%;
39
45
 
@@ -39,6 +39,7 @@ export declare class McFormField extends McFormFieldMixinBase implements AfterCo
39
39
  hovered: boolean;
40
40
  canCleanerClearByEsc: boolean;
41
41
  private $unsubscribe;
42
+ get hasFocus(): boolean;
42
43
  get hasHint(): boolean;
43
44
  get hasSuffix(): boolean;
44
45
  get hasPrefix(): boolean;
@@ -51,6 +52,7 @@ export declare class McFormField extends McFormFieldMixinBase implements AfterCo
51
52
  ngAfterContentInit(): void;
52
53
  ngAfterContentChecked(): void;
53
54
  ngAfterViewInit(): void;
55
+ focusViaKeyboard(): void;
54
56
  clearValue($event: any): void;
55
57
  onContainerClick($event: any): void;
56
58
  onKeyDown(event: KeyboardEvent): void;
@@ -114,6 +114,8 @@ $tokens: meta.module-variables(tokens) !default;
114
114
 
115
115
  .mc-cleaner {
116
116
  display: flex;
117
+ align-items: center;
118
+ justify-content: center;
117
119
 
118
120
  width: var(--mc-form-field-size-button-width, map.get($tokens, form-field-size-button-width));
119
121
  height: 100%;
@@ -13,8 +13,10 @@ export declare class McIconBase {
13
13
  /** @docs-private */
14
14
  export declare const McIconMixinBase: CanColorCtor & typeof McIconBase;
15
15
  export declare class McIcon extends McIconMixinBase implements CanColor {
16
+ private iconName;
16
17
  constructor(elementRef: ElementRef, iconName: string);
17
18
  getHostElement(): any;
19
+ updateMaxHeight(): void;
18
20
  static ɵfac: i0.ɵɵFactoryDeclaration<McIcon, [null, { attribute: "mc-icon"; }]>;
19
21
  static ɵcmp: i0.ɵɵComponentDeclaration<McIcon, "[mc-icon]", never, { "color": { "alias": "color"; "required": false; }; }, {}, never, ["*"], false, never>;
20
22
  }
@@ -31,7 +31,8 @@
31
31
  }
32
32
  }
33
33
 
34
- &:active {
34
+ &:active,
35
+ &.mc-active {
35
36
  color: map.get($link, state-active-text);
36
37
  }
37
38
 
@@ -45,7 +45,7 @@
45
45
  background: map.get($navbar-item, state-selected);
46
46
  }
47
47
 
48
- &:hover:not(.mc-navbar-item_button) {
48
+ &:hover:not(.mc-navbar-item_has-nested) {
49
49
  cursor: pointer;
50
50
 
51
51
  & .mc-navbar-item__overlay {
@@ -53,7 +53,7 @@
53
53
  }
54
54
  }
55
55
 
56
- &:active:not(.mc-navbar-item_button) {
56
+ &:active:not(.mc-navbar-item_has-nested) {
57
57
  & .mc-navbar-item__overlay {
58
58
  background: map.get($navbar-item, state-active);
59
59
  }
@@ -5,6 +5,7 @@ import { AfterContentInit, AfterViewInit, ChangeDetectorRef, ElementRef, NgZone,
5
5
  import { IFocusableOption } from '@ptsecurity/cdk/a11y';
6
6
  import { McButton, McButtonCssStyler } from '@ptsecurity/mosaic/button';
7
7
  import { McDropdownTrigger } from '@ptsecurity/mosaic/dropdown';
8
+ import { McFormField } from '@ptsecurity/mosaic/form-field';
8
9
  import { McIcon } from '@ptsecurity/mosaic/icon';
9
10
  import { McTooltipTrigger, TooltipModifier } from '@ptsecurity/mosaic/tooltip';
10
11
  import { Subject } from 'rxjs';
@@ -72,6 +73,8 @@ export declare class McNavbarFocusableItem implements IFocusableOption, AfterCon
72
73
  private ngZone;
73
74
  title: McNavbarTitle;
74
75
  button: McButton;
76
+ formField: McFormField;
77
+ get nestedElement(): McButton | McFormField;
75
78
  get tooltip(): McTooltipTrigger;
76
79
  private _tooltip;
77
80
  readonly onFocus: Subject<McNavbarFocusableItemEvent>;
@@ -92,7 +95,7 @@ export declare class McNavbarFocusableItem implements IFocusableOption, AfterCon
92
95
  blur(): void;
93
96
  getLabel(): string;
94
97
  static ɵfac: i0.ɵɵFactoryDeclaration<McNavbarFocusableItem, never>;
95
- static ɵdir: i0.ɵɵDirectiveDeclaration<McNavbarFocusableItem, "mc-navbar-item, [mc-navbar-item], mc-navbar-brand, [mc-navbar-brand], mc-navbar-toggle", never, { "disabled": { "alias": "disabled"; "required": false; }; }, {}, ["title", "button"], never, false, never>;
98
+ static ɵdir: i0.ɵɵDirectiveDeclaration<McNavbarFocusableItem, "mc-navbar-item, [mc-navbar-item], mc-navbar-brand, [mc-navbar-brand], mc-navbar-toggle", never, { "disabled": { "alias": "disabled"; "required": false; }; }, {}, ["title", "button", "formField"], never, false, never>;
96
99
  }
97
100
  export declare class McNavbarRectangleElement {
98
101
  elementRef: ElementRef;
@@ -80,7 +80,7 @@ $tokens: meta.module-variables(tokens) !default;
80
80
  right: 8px;
81
81
  }
82
82
 
83
- &.mc-navbar-item_button {
83
+ &.mc-navbar-item_has-nested {
84
84
  padding-left: map.get($tokens, size-s);
85
85
  padding-right: map.get($tokens, size-s);
86
86
  }
@@ -105,7 +105,7 @@ $tokens: meta.module-variables(tokens) !default;
105
105
  padding-left: var(--mc-vertical-navbar-size-icon-margin, map.get($tokens, vertical-navbar-size-icon-margin));
106
106
  }
107
107
 
108
- &.mc-navbar-item_button {
108
+ &.mc-navbar-item_has-nested {
109
109
  padding-left: 12px;
110
110
  padding-right: 12px;
111
111
  }
@@ -129,7 +129,7 @@ $tokens: meta.module-variables(tokens) !default;
129
129
  }
130
130
  }
131
131
 
132
- .mc-navbar-item.mc-navbar-item_button .mc-button {
132
+ .mc-navbar-item.mc-navbar-item_has-nested .mc-button {
133
133
  flex: 1;
134
134
 
135
135
  & .mc-button-wrapper {
@@ -162,3 +162,7 @@ a.mc-navbar-title {
162
162
  z-index: 1;
163
163
  }
164
164
  }
165
+
166
+ .mc-navbar-item.mc-navbar-item_has-nested .mc-navbar-item__overlay {
167
+ display: none;
168
+ }
@@ -53,6 +53,9 @@ export declare class McNavbar extends McFocusableComponent implements AfterViewI
53
53
  ngOnDestroy(): void;
54
54
  onKeyDown(event: KeyboardEvent): void;
55
55
  updateExpandedStateForItems: () => void;
56
+ private eventFromInput;
57
+ private cursorOnFirstPosition;
58
+ private cursorOnLastPosition;
56
59
  private collapseItems;
57
60
  private expandItems;
58
61
  private setItemsState;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ptsecurity/mosaic",
3
- "version": "16.3.0",
3
+ "version": "16.4.1",
4
4
  "description": "Mosaic",
5
5
  "repository": {
6
6
  "type": "git",
@@ -19,14 +19,14 @@
19
19
  "peerDependencies": {
20
20
  "@angular/cdk": "^16.1.5",
21
21
  "@angular/forms": "^16.1.5",
22
- "@ptsecurity/cdk": "^16.3.0",
23
- "@ptsecurity/mosaic-moment-adapter": "^16.3.0",
24
- "@ptsecurity/mosaic-luxon-adapter": "^16.3.0",
25
- "@mosaic-design/date-formatter": "^2.1.1",
22
+ "@ptsecurity/cdk": "^16.4.1",
23
+ "@ptsecurity/mosaic-moment-adapter": "^16.4.1",
24
+ "@ptsecurity/mosaic-luxon-adapter": "^16.4.1",
25
+ "@mosaic-design/date-formatter": "^2.1.5",
26
26
  "@ptsecurity/mosaic-icons": "^7.0.8",
27
- "@mosaic-design/tokens-builder": "^2.1.4",
28
- "@mosaic-design/tokens-fe-2022": "^2.1.4",
29
- "@mosaic-design/tokens-legacy-2017": "^2.1.4",
27
+ "@mosaic-design/tokens-builder": "^2.2.1",
28
+ "@mosaic-design/tokens-fe-2022": "^2.2.1",
29
+ "@mosaic-design/tokens-legacy-2017": "^2.2.1",
30
30
  "marked": "^4.0.18"
31
31
  },
32
32
  "dependencies": {
@@ -63,18 +63,18 @@
63
63
  "esm": "./esm2022/autocomplete/ptsecurity-mosaic-autocomplete.mjs",
64
64
  "default": "./fesm2022/ptsecurity-mosaic-autocomplete.mjs"
65
65
  },
66
- "./button-toggle": {
67
- "types": "./button-toggle/index.d.ts",
68
- "esm2022": "./esm2022/button-toggle/ptsecurity-mosaic-button-toggle.mjs",
69
- "esm": "./esm2022/button-toggle/ptsecurity-mosaic-button-toggle.mjs",
70
- "default": "./fesm2022/ptsecurity-mosaic-button-toggle.mjs"
71
- },
72
66
  "./button": {
73
67
  "types": "./button/index.d.ts",
74
68
  "esm2022": "./esm2022/button/ptsecurity-mosaic-button.mjs",
75
69
  "esm": "./esm2022/button/ptsecurity-mosaic-button.mjs",
76
70
  "default": "./fesm2022/ptsecurity-mosaic-button.mjs"
77
71
  },
72
+ "./button-toggle": {
73
+ "types": "./button-toggle/index.d.ts",
74
+ "esm2022": "./esm2022/button-toggle/ptsecurity-mosaic-button-toggle.mjs",
75
+ "esm": "./esm2022/button-toggle/ptsecurity-mosaic-button-toggle.mjs",
76
+ "default": "./fesm2022/ptsecurity-mosaic-button-toggle.mjs"
77
+ },
78
78
  "./card": {
79
79
  "types": "./card/index.d.ts",
80
80
  "esm2022": "./esm2022/card/ptsecurity-mosaic-card.mjs",
@@ -53,6 +53,11 @@ export declare class McPopoverTrigger extends McPopUpTrigger<McPopoverComponent>
53
53
  private _size;
54
54
  get customClass(): string;
55
55
  set customClass(value: string);
56
+ /**
57
+ * Controls the behavior of closing the component on scroll.
58
+ * The default value is `false`.
59
+ * Use CloseScrollStrategy as alternative
60
+ */
56
61
  get closeOnScroll(): boolean;
57
62
  set closeOnScroll(value: boolean);
58
63
  private _closeOnScroll;