@ptsecurity/mosaic 16.4.11 → 16.5.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 (36) hide show
  1. package/checkbox/checkbox.d.ts +6 -6
  2. package/core/animation/animation.d.ts +2 -1
  3. package/core/common-behaviors/checkbox.d.ts +1 -0
  4. package/core/common-behaviors/index.d.ts +1 -0
  5. package/core/pop-up/pop-up-trigger.d.ts +13 -0
  6. package/esm2022/checkbox/checkbox.mjs +5 -5
  7. package/esm2022/core/animation/animation.mjs +2 -1
  8. package/esm2022/core/common-behaviors/checkbox.mjs +2 -0
  9. package/esm2022/core/common-behaviors/index.mjs +2 -1
  10. package/esm2022/core/pop-up/pop-up-trigger.mjs +43 -2
  11. package/esm2022/core/version.mjs +2 -2
  12. package/esm2022/popover/popover.component.mjs +7 -2
  13. package/esm2022/tabs/tab-header.component.mjs +2 -2
  14. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +2 -2
  15. package/esm2022/toggle/toggle.component.mjs +103 -18
  16. package/esm2022/tooltip/tooltip.component.mjs +7 -1
  17. package/fesm2022/ptsecurity-mosaic-checkbox.mjs +4 -4
  18. package/fesm2022/ptsecurity-mosaic-checkbox.mjs.map +1 -1
  19. package/fesm2022/ptsecurity-mosaic-core.mjs +44 -2
  20. package/fesm2022/ptsecurity-mosaic-core.mjs.map +1 -1
  21. package/fesm2022/ptsecurity-mosaic-popover.mjs +6 -1
  22. package/fesm2022/ptsecurity-mosaic-popover.mjs.map +1 -1
  23. package/fesm2022/ptsecurity-mosaic-tabs.mjs +4 -4
  24. package/fesm2022/ptsecurity-mosaic-tabs.mjs.map +1 -1
  25. package/fesm2022/ptsecurity-mosaic-toggle.mjs +102 -17
  26. package/fesm2022/ptsecurity-mosaic-toggle.mjs.map +1 -1
  27. package/fesm2022/ptsecurity-mosaic-tooltip.mjs +6 -0
  28. package/fesm2022/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  29. package/package.json +4 -4
  30. package/popover/popover.component.d.ts +5 -0
  31. package/tabs/tab-header.scss +6 -4
  32. package/tabs/tab-nav-bar/tab-nav-bar.scss +1 -1
  33. package/toggle/_toggle-theme.scss +7 -1
  34. package/toggle/toggle.component.d.ts +23 -6
  35. package/toggle/toggle.scss +23 -0
  36. package/tooltip/tooltip.component.d.ts +5 -0
@@ -1,7 +1,8 @@
1
1
  import { FocusMonitor } from '@angular/cdk/a11y';
2
2
  import { ChangeDetectorRef, ElementRef, EventEmitter } from '@angular/core';
3
3
  import { ControlValueAccessor } from '@angular/forms';
4
- import { CanColor, CanColorCtor, CanDisable, CanDisableCtor, HasTabIndex, HasTabIndexCtor } from '@ptsecurity/mosaic/core';
4
+ import { McCheckboxClickAction, TransitionCheckState } from '@ptsecurity/mosaic/checkbox';
5
+ import { CanColor, CanColorCtor, CanDisable, CanDisableCtor, HasTabIndex, HasTabIndexCtor, checkedState } from '@ptsecurity/mosaic/core';
5
6
  import * as i0 from "@angular/core";
6
7
  type ToggleLabelPositionType = 'left' | 'right';
7
8
  /** @docs-private */
@@ -19,7 +20,8 @@ export declare class McToggleComponent extends McToggleMixinBase implements Cont
19
20
  elementRef: ElementRef;
20
21
  private _focusMonitor;
21
22
  private _changeDetectorRef;
22
- inputElement: ElementRef;
23
+ private clickAction;
24
+ inputElement: ElementRef<HTMLInputElement>;
23
25
  labelPosition: ToggleLabelPositionType;
24
26
  ariaLabel: string;
25
27
  ariaLabelledby: string | null;
@@ -27,18 +29,30 @@ export declare class McToggleComponent extends McToggleMixinBase implements Cont
27
29
  get inputId(): string;
28
30
  name: string | null;
29
31
  value: string;
32
+ currentCheckState: TransitionCheckState;
30
33
  get disabled(): any;
31
34
  set disabled(value: any);
32
35
  private _disabled;
33
36
  get checked(): boolean;
34
37
  set checked(value: boolean);
35
38
  private _checked;
39
+ /**
40
+ * Whether the toggle is indeterminate. This is also known as "mixed" mode and can be used to
41
+ * represent a checkbox with three states, e.g. a checkbox that represents a nested list of
42
+ * checkable items. Note that whenever checkbox is manually clicked, indeterminate is immediately
43
+ * set to false.
44
+ */
45
+ get indeterminate(): boolean;
46
+ set indeterminate(value: boolean);
47
+ private _indeterminate;
36
48
  readonly change: EventEmitter<McToggleChange>;
49
+ /** Event emitted when the toggle's `indeterminate` value changes. */
50
+ readonly indeterminateChange: EventEmitter<boolean>;
37
51
  private uniqueId;
38
- constructor(elementRef: ElementRef, _focusMonitor: FocusMonitor, _changeDetectorRef: ChangeDetectorRef);
52
+ constructor(elementRef: ElementRef, _focusMonitor: FocusMonitor, _changeDetectorRef: ChangeDetectorRef, clickAction: McCheckboxClickAction);
39
53
  ngOnDestroy(): void;
40
54
  focus(): void;
41
- getAriaChecked(): boolean;
55
+ getAriaChecked(): checkedState;
42
56
  onChangeEvent(event: Event): void;
43
57
  onLabelTextChange(): void;
44
58
  onInputClick(event: MouseEvent): void;
@@ -46,11 +60,14 @@ export declare class McToggleComponent extends McToggleMixinBase implements Cont
46
60
  registerOnChange(fn: any): void;
47
61
  registerOnTouched(fn: any): void;
48
62
  setDisabledState(isDisabled: boolean): void;
63
+ private setTransitionCheckState;
49
64
  private onTouchedCallback;
50
65
  private onChangeCallback;
51
66
  private updateModelValue;
67
+ private transitionCheckState;
52
68
  private emitChangeEvent;
53
- static ɵfac: i0.ɵɵFactoryDeclaration<McToggleComponent, never>;
54
- static ɵcmp: i0.ɵɵComponentDeclaration<McToggleComponent, "mc-toggle", ["mcToggle"], { "color": { "alias": "color"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "labelPosition": { "alias": "labelPosition"; "required": false; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; }; "id": { "alias": "id"; "required": false; }; "name": { "alias": "name"; "required": false; }; "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "checked": { "alias": "checked"; "required": false; }; }, { "change": "change"; }, never, ["*"], false, never>;
69
+ static ɵfac: i0.ɵɵFactoryDeclaration<McToggleComponent, [null, null, null, { optional: true; }]>;
70
+ static ɵcmp: i0.ɵɵComponentDeclaration<McToggleComponent, "mc-toggle", ["mcToggle"], { "color": { "alias": "color"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "labelPosition": { "alias": "labelPosition"; "required": false; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; }; "id": { "alias": "id"; "required": false; }; "name": { "alias": "name"; "required": false; }; "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "checked": { "alias": "checked"; "required": false; }; "indeterminate": { "alias": "indeterminate"; "required": false; }; }, { "change": "change"; "indeterminateChange": "indeterminateChange"; }, never, ["*"], false, never>;
71
+ static ngAcceptInputType_indeterminate: unknown;
55
72
  }
56
73
  export {};
@@ -30,6 +30,29 @@ $tokens: meta.module-variables(tokens) !default;
30
30
  &.mc-toggle-label-position-left {
31
31
  order: 1;
32
32
  }
33
+
34
+ .mc-toggle__thumb {
35
+ display: none;
36
+ justify-content: center;
37
+ align-items: center;
38
+ height: 100%;
39
+
40
+ &::after {
41
+ content: '';
42
+ display: block;
43
+ height: 2px;
44
+ width: 10px;
45
+ }
46
+ }
47
+ }
48
+
49
+
50
+ &.mc-indeterminate {
51
+ .mc-toggle-bar {
52
+ .mc-toggle__thumb {
53
+ display: flex;
54
+ }
55
+ }
33
56
  }
34
57
 
35
58
  .mc-toggle-bar-outer-container {
@@ -41,6 +41,11 @@ export declare const MC_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER: {
41
41
  export declare class McTooltipTrigger extends McPopUpTrigger<McTooltipComponent> implements OnDestroy {
42
42
  protected focusMonitor: FocusMonitor;
43
43
  parentPopup: McParentPopup | null;
44
+ /**
45
+ * default offset + arrow position shift
46
+ * @docs-private
47
+ */
48
+ arrowOffset: number;
44
49
  get tooltipVisible(): boolean;
45
50
  set tooltipVisible(value: boolean);
46
51
  get tooltipPlacement(): PopUpPlacements;