@momentum-ui/web-components 2.22.16 → 2.23.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.
- package/dist/1323.js +2 -2
- package/dist/1439.js +1 -1
- package/dist/3135.js +1 -1
- package/dist/3820.js +1 -0
- package/dist/587.js +1 -1
- package/dist/6015.js +1 -1
- package/dist/6652.js +1 -1
- package/dist/6677.js +1 -1
- package/dist/754.js +1 -1
- package/dist/8004.js +1 -0
- package/dist/8612.js +3 -3
- package/dist/9058.js +1 -1
- package/dist/9130.js +1 -1
- package/dist/assets/icons/svg/voxon-horizontal.svg +1 -0
- package/dist/assets/icons/svg/voxon-mark.svg +1 -0
- package/dist/chunks/{md-7044.js → md-4663.js} +1 -1
- package/dist/comp/md-card-ai-entry.js +1 -1
- package/dist/comp/md-card-entry.js +1 -1
- package/dist/comp/md-card.js +1 -1
- package/dist/comp/md-coachmark-popover-entry.js +37 -41
- package/dist/comp/md-coachmark-popover.js +1 -1
- package/dist/comp/md-combobox-entry.js +1 -1
- package/dist/comp/md-combobox.js +1 -1
- package/dist/comp/md-date-range-picker-entry.js +1 -1
- package/dist/comp/md-date-range-picker.js +1 -1
- package/dist/comp/md-date-time-picker-entry.js +1 -1
- package/dist/comp/md-date-time-picker.js +1 -1
- package/dist/comp/md-datepicker-entry.js +1 -1
- package/dist/comp/md-datepicker.js +1 -1
- package/dist/comp/md-draggable-entry.js +1 -1
- package/dist/comp/md-draggable.js +1 -1
- package/dist/comp/md-floating-modal-entry.js +3 -3
- package/dist/comp/md-floating-modal.js +1 -1
- package/dist/comp/md-menu-overlay-entry.js +2 -2
- package/dist/comp/md-phone-input-entry.js +1 -1
- package/dist/comp/md-phone-input.js +1 -1
- package/dist/comp/md-popover-entry.js +17 -26
- package/dist/comp/md-popover.js +1 -1
- package/dist/comp/md-tabs-entry.js +1 -1
- package/dist/comp/md-task-item-entry.js +19 -17
- package/dist/comp/md-timepicker-entry.js +1 -1
- package/dist/comp/md-timepicker.js +1 -1
- package/dist/index-entry.js +58 -60
- package/dist/index.js +1 -1
- package/dist/types/components/coachmark-popover/CoachmarkPopover.d.ts +1 -0
- package/dist/types/components/combobox/ComboBox.d.ts +1 -1
- package/dist/types/components/floating-modal/FloatingModal.d.ts +1 -0
- package/dist/types/components/menu-overlay/MenuOverlay.d.ts +0 -1
- package/dist/types/components/popover/Popover.constants.d.ts +53 -0
- package/dist/types/components/popover/Popover.d.ts +288 -192
- package/dist/types/components/popover/Popover.events.d.ts +34 -0
- package/dist/types/components/popover/Popover.stack.d.ts +45 -0
- package/dist/types/components/popover/Popover.types.d.ts +13 -1
- package/dist/types/components/popover/Popover.utils.d.ts +63 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/utils/helpers.d.ts +2 -0
- package/package.json +2 -1
- package/dist/4663.js +0 -1
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { type Popover } from "./Popover";
|
|
2
|
+
/**
|
|
3
|
+
* Manages a stack of popovers to control their order and lifecycle.
|
|
4
|
+
* This class allows adding, removing, and retrieving popovers
|
|
5
|
+
* while maintaining their stacking behavior.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
declare class PopoverStack {
|
|
9
|
+
/**
|
|
10
|
+
* Stack to maintain the order of popovers
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
private stack;
|
|
14
|
+
/**
|
|
15
|
+
* Adds a popover to the stack
|
|
16
|
+
*
|
|
17
|
+
* @param popover - Popover instance
|
|
18
|
+
*/
|
|
19
|
+
push(popover: Popover): void;
|
|
20
|
+
/**
|
|
21
|
+
* Removes the last popover from the stack
|
|
22
|
+
*
|
|
23
|
+
* @returns The last popover in the stack
|
|
24
|
+
*/
|
|
25
|
+
pop(): Popover | undefined;
|
|
26
|
+
/**
|
|
27
|
+
* Returns the last popover in the stack
|
|
28
|
+
* without removing it
|
|
29
|
+
*
|
|
30
|
+
* @returns The last popover in the stack
|
|
31
|
+
*/
|
|
32
|
+
peek(): Popover | undefined;
|
|
33
|
+
/**
|
|
34
|
+
* Removes a popover from the stack
|
|
35
|
+
*
|
|
36
|
+
* @param popover - Popover instance
|
|
37
|
+
*/
|
|
38
|
+
remove(popover: Popover): void;
|
|
39
|
+
/**
|
|
40
|
+
* Clears the stack
|
|
41
|
+
*/
|
|
42
|
+
clear(): void;
|
|
43
|
+
}
|
|
44
|
+
export declare const popoverStack: PopoverStack;
|
|
45
|
+
export {};
|
|
@@ -1,8 +1,20 @@
|
|
|
1
|
+
import { COLOR, POPOVER_PLACEMENT, POPOVER_STRATEGY, TRIGGER } from "./Popover.constants";
|
|
2
|
+
export type ValueOf<T> = T[keyof T];
|
|
3
|
+
type PopoverPlacement = ValueOf<typeof POPOVER_PLACEMENT>;
|
|
4
|
+
type PopoverColor = ValueOf<typeof COLOR>;
|
|
5
|
+
type PopoverTrigger = ValueOf<typeof TRIGGER> | `${ValueOf<typeof TRIGGER>} ${ValueOf<typeof TRIGGER>}`;
|
|
6
|
+
type PopoverStrategy = ValueOf<typeof POPOVER_STRATEGY>;
|
|
1
7
|
export declare const Placement: readonly ["auto", "auto-start", "auto-end", "left-start", "left", "left-end", "right-start", "right", "right-end", "top-start", "top", "top-end", "bottom-start", "bottom", "bottom-end"];
|
|
2
|
-
|
|
8
|
+
interface Events {
|
|
9
|
+
onShownEvent: Event;
|
|
10
|
+
onHiddenEvent: Event;
|
|
11
|
+
onCreatedEvent: Event;
|
|
12
|
+
onDestroyedEvent: Event;
|
|
13
|
+
}
|
|
3
14
|
export declare const Strategy: readonly ["fixed", "absolute"];
|
|
4
15
|
export declare const PopoverRole: readonly ["dialog", "menu", "tooltip"];
|
|
5
16
|
export declare const Triggers: readonly ["click", "mouseenter", "manual"];
|
|
6
17
|
export type PlacementType = (typeof Placement)[number];
|
|
7
18
|
export type StrategyType = (typeof Strategy)[number];
|
|
8
19
|
export type PopoverRoleType = (typeof PopoverRole)[number];
|
|
20
|
+
export type { Events, PopoverColor, PopoverPlacement, PopoverStrategy, PopoverTrigger };
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { type Popover } from "./Popover";
|
|
2
|
+
export declare class PopoverUtils {
|
|
3
|
+
/** @internal */
|
|
4
|
+
private readonly popover;
|
|
5
|
+
/** @internal */
|
|
6
|
+
private arrowPixelChange;
|
|
7
|
+
/** @internal */
|
|
8
|
+
private originalParent;
|
|
9
|
+
/** @internal */
|
|
10
|
+
private originalNextSibling;
|
|
11
|
+
constructor(popover: Popover);
|
|
12
|
+
/**
|
|
13
|
+
* Parses the delay string and sets the open and close delay values.
|
|
14
|
+
* If the delay string is invalid, the delay is set to 0.
|
|
15
|
+
* @returns An array containing the open and close delay values.
|
|
16
|
+
* @throws An error if the delay value is invalid.
|
|
17
|
+
*/
|
|
18
|
+
setupDelay(): number[];
|
|
19
|
+
/**
|
|
20
|
+
* Sets up the hover bridge for the popover.
|
|
21
|
+
* The hover bridge is used to prevent the popover from closing when the mouse is over the popover.
|
|
22
|
+
*
|
|
23
|
+
* @param placement - The placement of the popover.
|
|
24
|
+
*/
|
|
25
|
+
setupHoverBridge(placement: string): void;
|
|
26
|
+
/**
|
|
27
|
+
* If the `appendTo` property is set, finds the corresponding
|
|
28
|
+
* DOM element by its ID, and appends this popover as a child of that element when opened.
|
|
29
|
+
* When closed, returns to original position.
|
|
30
|
+
* @param isOpen Whether the popover is being opened (true) or closed (false)
|
|
31
|
+
*/
|
|
32
|
+
handleAppendTo(isOpen: boolean): void;
|
|
33
|
+
/**
|
|
34
|
+
* Sets up the accessibility attributes for the popover.
|
|
35
|
+
*/
|
|
36
|
+
setupAccessibility(): void;
|
|
37
|
+
/**
|
|
38
|
+
* Updates the aria-haspopup attribute on the trigger element.
|
|
39
|
+
*/
|
|
40
|
+
updateAriaHasPopupAttribute(): void;
|
|
41
|
+
/**
|
|
42
|
+
* Updates the aria-expanded attribute on the trigger element.
|
|
43
|
+
*/
|
|
44
|
+
updateAriaExpandedAttribute(): void;
|
|
45
|
+
/**
|
|
46
|
+
* Updates the arrow style based on the arrow data and placement.
|
|
47
|
+
*
|
|
48
|
+
* @param arrowData - The arrow data x and y.
|
|
49
|
+
* @param placement - The placement of the popover.
|
|
50
|
+
*/
|
|
51
|
+
updateArrowStyle(arrowData: {
|
|
52
|
+
x?: number;
|
|
53
|
+
y?: number;
|
|
54
|
+
}, placement: string): void;
|
|
55
|
+
/**
|
|
56
|
+
* Updates the popover style based on the x and y position.
|
|
57
|
+
*
|
|
58
|
+
* @param x - The x position.
|
|
59
|
+
* @param y - The y position.
|
|
60
|
+
*/
|
|
61
|
+
updatePopoverStyle(x: number, y: number): void;
|
|
62
|
+
createBackdrop(): void;
|
|
63
|
+
}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -81,3 +81,4 @@ export { ToggleSwitch } from "./components/toggle-switch/ToggleSwitch";
|
|
|
81
81
|
export { Tooltip } from "./components/tooltip/Tooltip";
|
|
82
82
|
export { iconUrlManager } from "./managers/IconUrlManager";
|
|
83
83
|
export { ThemeManager, themeManager } from "./managers/ThemeManager";
|
|
84
|
+
export type { Events, PopoverColor, PopoverPlacement, PopoverStrategy, PopoverTrigger } from "./components/popover/Popover.types";
|
|
@@ -16,3 +16,5 @@ export declare function debounce<T>(func: Function, wait: number, immediate?: bo
|
|
|
16
16
|
export declare const throttle: (fn: (...args: any[]) => unknown, delay?: number) => (...args: any[]) => void;
|
|
17
17
|
export declare function closestElement(selector: string, base: HTMLElement): HTMLElement | null;
|
|
18
18
|
export declare function getElementSafe<T>(elements: T[], index: number): T | undefined;
|
|
19
|
+
export declare function querySelectorDeep(selector: string, base?: HTMLElement | Document | ShadowRoot): Element | null;
|
|
20
|
+
export declare function getElementByIdDeep(id: string, base?: HTMLElement | Document | ShadowRoot): Element | null;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@momentum-ui/web-components",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.23.0",
|
|
4
4
|
"author": "Yana Harris",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": "https://github.com/momentum-design/momentum-ui.git",
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
"@interactjs/utils": "1.10.3",
|
|
16
16
|
"@momentum-design/icons": "0.19.0",
|
|
17
17
|
"@popperjs/core": "^2.11.8",
|
|
18
|
+
"@floating-ui/dom": "^1.7.0",
|
|
18
19
|
"country-codes-list": "1.6.8",
|
|
19
20
|
"country-flags-svg": "1.1.4",
|
|
20
21
|
"dompurify": "^3.2.4",
|
package/dist/4663.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self["momentum-web-components-[id]"]=self["momentum-web-components-[id]"]||[]).push([[4663,5211],{35211:(o,r,e)=>{e.d(r,{KC:()=>p});const p=16},50325:(o,r,e)=>{e.d(r,{A:()=>p});const p=e(41488).css`.md-popover{box-sizing:border-box;position:relative;color:var(--popover-text-color);--popover-variant-border-color:var(--popover-border-color);--popover-variant-bg-color:var(--popover-bg-color)}.md-popover.inverted{color:var(--popover-inverted-text-color);--popover-variant-border-color:var(--popover-inverted-border-color);--popover-variant-bg-color:var(--popover-inverted-bg-color)}.md-popover *{box-sizing:inherit}.md-popover .popover-container{filter:drop-shadow(0 0 1px rgba(0, 0, 0, .12)) drop-shadow(0 24px 48px rgba(0, 0, 0, .2));box-sizing:border-box;display:none;position:absolute;z-index:1000;background-color:var(--popover-variant-bg-color);border:1px solid var(--popover-variant-border-color);border-radius:.5rem;padding:.75rem;min-height:24px;min-width:14px;max-width:292px}.md-popover .popover-container[data-show]{display:flex}.md-popover .popover-content{display:flex;justify-content:space-around;width:100%;flex-grow:1;font-size:1rem;font-weight:400;line-height:1.5rem}.md-popover .cancel-icon-button{position:absolute;right:.75rem;top:.75rem;padding-left:.5rem;width:1.25rem;height:1.25rem;cursor:pointer}.md-popover .popover-arrow{position:absolute;width:0;height:0;visibility:hidden}.md-popover .popover-arrow::before{content:"";position:absolute;width:16px;height:16px;background:var(--popover-variant-bg-color);border:1px solid var(--popover-variant-border-color);transform:rotate(45deg);visibility:visible}.popover-container[data-popper-placement^=top]>.popover-arrow{bottom:0}.popover-container[data-popper-placement^=top]>.popover-arrow::before{left:calc(50% - 8px);bottom:-9px;border-top:none;border-left:none;border-bottom-right-radius:3px}.popover-container[data-popper-placement^=bottom]>.popover-arrow{top:0}.popover-container[data-popper-placement^=bottom]>.popover-arrow::before{left:calc(50% - 8px);top:-9px;border-bottom:none;border-right:none;border-top-left-radius:3px}.popover-container[data-popper-placement^=right]>.popover-arrow{left:0}.popover-container[data-popper-placement^=right]>.popover-arrow::before{left:-9px;top:calc(50% - 8px);border-right:none;border-top:none;border-bottom-left-radius:3px}.popover-container[data-popper-placement^=left]>.popover-arrow{right:0}.popover-container[data-popper-placement^=left]>.popover-arrow::before{right:-9px;border-bottom:none;border-left:none;top:calc(50% - 8px);border-top-right-radius:3px}`}}]);
|