@momentum-ui/web-components 2.23.0 → 2.23.2

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 (44) hide show
  1. package/dist/1439.js +1 -1
  2. package/dist/6953.js +1 -0
  3. package/dist/7833.js +1 -1
  4. package/dist/7997.js +1 -1
  5. package/dist/8004.js +1 -1
  6. package/dist/9130.js +1 -1
  7. package/dist/9217.js +1 -1
  8. package/dist/comp/md-card-v2-entry.js +8 -8
  9. package/dist/comp/md-coachmark-entry.js +1 -1
  10. package/dist/comp/md-coachmark-popover-entry.js +6 -6
  11. package/dist/comp/md-coachmark.js +1 -1
  12. package/dist/comp/md-country-code-picker-entry.js +50 -0
  13. package/dist/comp/md-country-code-picker.js +1 -0
  14. package/dist/comp/md-date-range-picker-entry.js +1 -1
  15. package/dist/comp/md-date-range-picker.js +1 -1
  16. package/dist/comp/md-date-time-picker-entry.js +1 -1
  17. package/dist/comp/md-date-time-picker.js +1 -1
  18. package/dist/comp/md-datepicker-entry.js +1 -1
  19. package/dist/comp/md-datepicker.js +1 -1
  20. package/dist/comp/md-editable-field-entry.js +1 -1
  21. package/dist/comp/md-editable-field.js +1 -1
  22. package/dist/comp/md-input-entry.js +1 -1
  23. package/dist/comp/md-input.js +1 -1
  24. package/dist/comp/md-modal-entry.js +1 -1
  25. package/dist/comp/md-modal.js +1 -1
  26. package/dist/comp/md-phone-input-entry.js +14 -47
  27. package/dist/comp/md-phone-input.js +1 -1
  28. package/dist/comp/md-popover-entry.js +5 -5
  29. package/dist/comp/md-theme-entry.js +2 -2
  30. package/dist/comp/md-timepicker-entry.js +1 -1
  31. package/dist/comp/md-timepicker.js +1 -1
  32. package/dist/index-entry.js +89 -73
  33. package/dist/index.js +1 -1
  34. package/dist/types/components/card-v2/CardV2.d.ts +1 -0
  35. package/dist/types/components/country-code-picker/CountryCodePicker.d.ts +54 -0
  36. package/dist/types/components/grabber/Grabber.d.ts +1 -1
  37. package/dist/types/components/phone-input/PhoneInput.d.ts +1 -19
  38. package/dist/types/components/popover/Popover.constants.d.ts +1 -0
  39. package/dist/types/components/popover/Popover.d.ts +36 -3
  40. package/dist/types/components/popover/Popover.stack.d.ts +10 -0
  41. package/dist/types/components/popover/Popover.types.d.ts +7 -1
  42. package/dist/types/components/theme/Theme.d.ts +1 -0
  43. package/dist/types/index.d.ts +3 -2
  44. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- require("./7678"),require("./7103"),require("./1890"),require("./6272"),require("./6325"),require("./6283"),require("./9217"),require("./5830"),require("./8889"),require("./8210"),require("./3135"),require("./1598"),require("./4977"),require("./1572"),require("./6366"),require("./7251"),require("./4974"),require("./2243"),require("./7919"),require("./3553"),require("./6700"),require("./528"),require("./4548"),require("./6795"),require("./76"),require("./1392"),require("./9164"),require("./8004"),require("./1214"),require("./1625"),require("./3625"),require("./6067"),require("./8841"),require("./3112"),require("./3866"),require("./1107"),require("./7330"),require("./7092"),require("./9719"),require("./6979"),require("./9130"),require("./6273"),require("./8612"),require("./9618"),require("./8521"),require("./2019"),require("./779"),require("./573"),require("./5801"),require("./2043"),require("./8171"),require("./2798"),require("./5467"),require("./2984"),require("./1869"),require("./2215"),require("./4392"),require("./630"),require("./3604"),require("./7833"),require("./8728"),require("./8227"),require("./1250"),require("./1705"),require("./7997"),require("./7875"),require("./6400"),require("./587"),require("./6441"),require("./6015"),require("./3663"),module.exports=require("./index-entry");
1
+ require("./7678"),require("./7103"),require("./1890"),require("./6272"),require("./6325"),require("./6283"),require("./9217"),require("./5830"),require("./8889"),require("./8210"),require("./4977"),require("./3135"),require("./1598"),require("./1572"),require("./6366"),require("./7251"),require("./4974"),require("./2243"),require("./7919"),require("./3553"),require("./6700"),require("./6795"),require("./528"),require("./4548"),require("./76"),require("./1392"),require("./9164"),require("./8004"),require("./1214"),require("./1625"),require("./3625"),require("./6067"),require("./8841"),require("./3112"),require("./3866"),require("./1107"),require("./7330"),require("./7092"),require("./9719"),require("./6979"),require("./9130"),require("./6273"),require("./8612"),require("./9618"),require("./8521"),require("./2019"),require("./779"),require("./573"),require("./5801"),require("./2043"),require("./8171"),require("./2798"),require("./5467"),require("./2984"),require("./1869"),require("./2215"),require("./4392"),require("./630"),require("./3604"),require("./8728"),require("./8227"),require("./1250"),require("./1705"),require("./7997"),require("./6953"),require("./7875"),require("./7833"),require("./6400"),require("./587"),require("./6441"),require("./6015"),require("./3663"),module.exports=require("./index-entry");
@@ -29,6 +29,7 @@ export declare namespace CardV2 {
29
29
  private get cardClassMap();
30
30
  private get contentClassMap();
31
31
  private get footerClassMap();
32
+ private get expandCardHandler();
32
33
  private renderHeader;
33
34
  private renderFooter;
34
35
  render(): import("lit-element").TemplateResult;
@@ -0,0 +1,54 @@
1
+ import "@/components/combobox/ComboBox";
2
+ import { LitElement } from "lit-element";
3
+ export declare namespace CountryCodePicker {
4
+ interface Country {
5
+ name: string;
6
+ value: string;
7
+ code: string;
8
+ }
9
+ type Attributes = {
10
+ codePlaceholder: string;
11
+ countryCallingCode: string;
12
+ pill: boolean;
13
+ flagClass: string;
14
+ };
15
+ type CountryCalling = {
16
+ id: string;
17
+ value: string;
18
+ };
19
+ class ELEMENT extends LitElement {
20
+ codePlaceholder: string;
21
+ countryCallingCode: string;
22
+ showFlags: boolean;
23
+ pill: boolean;
24
+ disabled: boolean;
25
+ clearIconHeight: string;
26
+ ariaLabel: string;
27
+ clearAriaLabel: string;
28
+ id: string;
29
+ newMomentum: boolean;
30
+ isDropdownArrow: boolean;
31
+ private countryCode;
32
+ private codeList;
33
+ combobox: HTMLElement;
34
+ connectedCallback(): void;
35
+ getCountryFlag(code: string): import("lit-element").TemplateResult;
36
+ countryCodeOptionTemplate(country: CountryCodePicker.Country, index: number): import("lit-element").TemplateResult;
37
+ handleCountryChange(event: CustomEvent): void;
38
+ get flagClassMap(): {
39
+ "new-momentum": boolean;
40
+ };
41
+ getFormatedCountryCallingCode(): {
42
+ id: string;
43
+ value: string;
44
+ };
45
+ getModStyle(): import("lit-element").TemplateResult;
46
+ static get styles(): import("lit-element").CSSResult[];
47
+ render(): import("lit-element").TemplateResult;
48
+ }
49
+ }
50
+ declare global {
51
+ interface HTMLElementTagNameMap {
52
+ "md-country-code-picker": CountryCodePicker.ELEMENT;
53
+ }
54
+ }
@@ -81,7 +81,7 @@ export declare namespace Grabber {
81
81
  visible: boolean;
82
82
  };
83
83
  private get grabberContainerClassMap();
84
- get iconName(): "arrow-up-bold" | "arrow-down-bold" | "list-menu-bold" | "arrow-left-bold" | "arrow-right-bold";
84
+ get iconName(): "arrow-up-bold" | "arrow-down-bold" | "arrow-left-bold" | "arrow-right-bold" | "list-menu-bold";
85
85
  get iconSize(): "10" | "12";
86
86
  render(): import("lit-element").TemplateResult;
87
87
  }
@@ -2,11 +2,6 @@ import "@/components/combobox/ComboBox";
2
2
  import "@/components/input/Input";
3
3
  import { LitElement } from "lit-element";
4
4
  export declare namespace PhoneInput {
5
- interface Country {
6
- name: string;
7
- value: string;
8
- code: string;
9
- }
10
5
  type Attributes = {
11
6
  codePlaceholder: string;
12
7
  numberPlaceholder: string;
@@ -17,10 +12,6 @@ export declare namespace PhoneInput {
17
12
  flagClass: string;
18
13
  showErrorMessage: string;
19
14
  };
20
- type CountryCalling = {
21
- id: string;
22
- value: string;
23
- };
24
15
  class ELEMENT extends LitElement {
25
16
  codePlaceholder: string;
26
17
  numberPlaceholder: string;
@@ -39,15 +30,11 @@ export declare namespace PhoneInput {
39
30
  id: string;
40
31
  newMomentum: boolean;
41
32
  private countryCode;
42
- private codeList;
43
33
  private formattedValue;
44
34
  private isValid;
45
- combobox: HTMLElement;
46
35
  connectedCallback(): void;
47
- getCountryFlag(code: string): import("lit-element").TemplateResult;
48
- countryCodeOptionTemplate(country: PhoneInput.Country, index: number): import("lit-element").TemplateResult;
49
36
  validateNumber(): void;
50
- handleCountryChange(event: CustomEvent): void;
37
+ handleCountryChange(e: CustomEvent): void;
51
38
  handlePhoneChange(event: CustomEvent): void;
52
39
  handleKeydown(event: Event): void;
53
40
  handleBlur(event: Event): void;
@@ -56,11 +43,6 @@ export declare namespace PhoneInput {
56
43
  get flagClassMap(): {
57
44
  "new-momentum": boolean;
58
45
  };
59
- getFormatedCountryCallingCode(): {
60
- id: string;
61
- value: string;
62
- };
63
- getModStyle(): import("lit-element").TemplateResult;
64
46
  static get styles(): import("lit-element").CSSResult[];
65
47
  render(): import("lit-element").TemplateResult;
66
48
  }
@@ -40,6 +40,7 @@ declare const DEFAULTS: {
40
40
  readonly PREVENT_SCROLL: false;
41
41
  readonly HIDE_ON_ESCAPE: false;
42
42
  readonly HIDE_ON_BLUR: false;
43
+ readonly HIDE_ON_WINDOW_BLUR: false;
43
44
  readonly HIDE_ON_CLICK_OUTSIDE: false;
44
45
  readonly FOCUS_BACK: false;
45
46
  readonly BACKDROP: false;
@@ -8,7 +8,13 @@
8
8
  import "@/components/button/Button";
9
9
  import "@/components/icon/Icon";
10
10
  import { LitElement, PropertyValues } from "lit-element";
11
- import { PopoverColor, PopoverPlacement, PopoverStrategy, PopoverTrigger } from "./Popover.types";
11
+ import { IPopoverController, PopoverColor, PopoverPlacement, PopoverStrategy, PopoverTrigger } from "./Popover.types";
12
+ export declare class PopoverController implements IPopoverController {
13
+ show(_useDelay?: boolean): void;
14
+ hide(): void;
15
+ toggle(): void;
16
+ isVisible(): boolean;
17
+ }
12
18
  declare const Popover_base: typeof LitElement & import("@/mixins/FocusTrapMixin").AnyConstructor<import("@/mixins/FocusTrapMixin").FocusTrapClass & import("@/mixins/FocusTrapMixin").FocusTrapInterface & import("../../mixins/FocusMixin").FocusClass>;
13
19
  /**
14
20
  * Popover component is a lightweight floating UI element that displays additional content when triggered.
@@ -144,6 +150,11 @@ export declare class Popover extends Popover_base {
144
150
  * @default false
145
151
  */
146
152
  hideOnBlur: boolean;
153
+ /**
154
+ * Hide popover on window blur.
155
+ * @default false
156
+ */
157
+ hideOnWindowBlur: boolean;
147
158
  /**
148
159
  * Hide on outside click of the popover.
149
160
  * @default false
@@ -205,6 +216,20 @@ export declare class Popover extends Popover_base {
205
216
  * @default false
206
217
  */
207
218
  disableAriaExpanded: boolean;
219
+ /**
220
+ * Controller object that provides methods to programmatically control the popover.
221
+ * This is especially useful when the popover is appended to another part of the DOM.
222
+ *
223
+ * @example
224
+ * ```js
225
+ * const controller = {};
226
+ * popover.controller = controller;
227
+ * // Now you can use controller.show(), controller.hide(), controller.toggle()
228
+ * ```
229
+ */
230
+ set controller(value: PopoverController | null | undefined);
231
+ get controller(): PopoverController | null;
232
+ private _controller;
208
233
  arrowElement: HTMLElement | null;
209
234
  triggerElement: HTMLElement | null;
210
235
  /** @internal */
@@ -239,6 +264,7 @@ export declare class Popover extends Popover_base {
239
264
  * @param event - The mouse event.
240
265
  */
241
266
  private readonly onOutsidePopoverClick;
267
+ private readonly hideThisPopover;
242
268
  /**
243
269
  * Handles the escape keydown event to close the popover.
244
270
  *
@@ -251,6 +277,7 @@ export declare class Popover extends Popover_base {
251
277
  * @param event - The focus event.
252
278
  */
253
279
  private readonly onPopoverFocusOut;
280
+ private readonly handleWindowBlurEvent;
254
281
  /**
255
282
  * Handles the popover visibility change and position the popover.
256
283
  * Handles the exit event to close the popover.
@@ -270,8 +297,12 @@ export declare class Popover extends Popover_base {
270
297
  readonly cancelCloseDelay: () => void;
271
298
  /**
272
299
  * Shows the popover.
300
+ * By default (`useOpenDelay = false`), or if `openDelay` is 0 or less, the popover opens immediately.
301
+ * If `useOpenDelay` is true and `openDelay` is greater than 0, the `openDelay` will be applied before showing the popover.
302
+ * This allows programmatic calls (e.g., for `trigger="manual"`) to optionally use the `openDelay`.
303
+ * @param {boolean} [useOpenDelay=false] - Indicates if the `openDelay` should be applied.
273
304
  */
274
- showPopover: () => void;
305
+ showPopover: (useOpenDelay?: boolean) => void;
275
306
  /**
276
307
  * Hides the popover.
277
308
  */
@@ -280,7 +311,9 @@ export declare class Popover extends Popover_base {
280
311
  * Toggles the popover visibility.
281
312
  */
282
313
  togglePopoverVisible: () => void;
283
- private onTriggerClick;
314
+ private readonly onMouseEnterTrigger;
315
+ private readonly onFocusInTrigger;
316
+ private readonly onTriggerClick;
284
317
  private isMouseOverTrigger;
285
318
  /**
286
319
  * Sets the focusable elements inside the popover.
@@ -23,6 +23,7 @@ declare class PopoverStack {
23
23
  * @returns The last popover in the stack
24
24
  */
25
25
  pop(): Popover | undefined;
26
+ removeItem(popover: Popover): void;
26
27
  /**
27
28
  * Returns the last popover in the stack
28
29
  * without removing it
@@ -40,6 +41,15 @@ declare class PopoverStack {
40
41
  * Clears the stack
41
42
  */
42
43
  clear(): void;
44
+ /**
45
+ * Determines if the currentPopover should defer closing to the topmost popover
46
+ * in the case of an outside click, based on nesting.
47
+ *
48
+ * @param currentPopover - The popover instance being checked.
49
+ * @returns True if the currentPopover is nested with the top popover and is not the top itself,
50
+ * meaning it should defer closing. False otherwise.
51
+ */
52
+ shouldDeferToTopForOutsideClick(currentPopover: Popover): boolean;
43
53
  }
44
54
  export declare const popoverStack: PopoverStack;
45
55
  export {};
@@ -11,10 +11,16 @@ interface Events {
11
11
  onCreatedEvent: Event;
12
12
  onDestroyedEvent: Event;
13
13
  }
14
+ interface IPopoverController {
15
+ show: (useDelay?: boolean) => void;
16
+ hide: () => void;
17
+ toggle: () => void;
18
+ isVisible: () => boolean;
19
+ }
14
20
  export declare const Strategy: readonly ["fixed", "absolute"];
15
21
  export declare const PopoverRole: readonly ["dialog", "menu", "tooltip"];
16
22
  export declare const Triggers: readonly ["click", "mouseenter", "manual"];
17
23
  export type PlacementType = (typeof Placement)[number];
18
24
  export type StrategyType = (typeof Strategy)[number];
19
25
  export type PopoverRoleType = (typeof PopoverRole)[number];
20
- export type { Events, PopoverColor, PopoverPlacement, PopoverStrategy, PopoverTrigger };
26
+ export type { Events, IPopoverController, PopoverColor, PopoverPlacement, PopoverStrategy, PopoverTrigger };
@@ -49,6 +49,7 @@ export declare namespace Theme {
49
49
  virtualReference: HTMLDivElement;
50
50
  private placement;
51
51
  private popperInstance;
52
+ private activeTooltipTrigger;
52
53
  private setTheme;
53
54
  getStyleElement(): HTMLStyleElement;
54
55
  applyStyle(): void;
@@ -30,6 +30,7 @@ export { CoachmarkPopover } from "./components/coachmark-popover/CoachmarkPopove
30
30
  export { Coachmark } from "./components/coachmark/Coachmark";
31
31
  export { CodeEditor } from "./components/code-editor/CodeEditor";
32
32
  export { ComboBox } from "./components/combobox/ComboBox";
33
+ export { CountryCodePicker } from "./components/country-code-picker/CountryCodePicker";
33
34
  export { DateRangePicker } from "./components/date-range-picker/DateRangePicker";
34
35
  export { DateTimePicker } from "./components/date-time-picker/DateTimePicker";
35
36
  export { DatePicker } from "./components/datepicker/DatePicker";
@@ -63,7 +64,7 @@ export { MenuItem } from "./components/menu/MenuItem";
63
64
  export { Modal } from "./components/modal/Modal";
64
65
  export { Pagination } from "./components/pagination/Pagination";
65
66
  export { PhoneInput } from "./components/phone-input/PhoneInput";
66
- export { Popover } from "./components/popover/Popover";
67
+ export { Popover, PopoverController } from "./components/popover/Popover";
67
68
  export { ProgressBar } from "./components/progress-bar/ProgressBar";
68
69
  export { Radio } from "./components/radio/Radio";
69
70
  export { RadioGroup } from "./components/radio/RadioGroup";
@@ -81,4 +82,4 @@ export { ToggleSwitch } from "./components/toggle-switch/ToggleSwitch";
81
82
  export { Tooltip } from "./components/tooltip/Tooltip";
82
83
  export { iconUrlManager } from "./managers/IconUrlManager";
83
84
  export { ThemeManager, themeManager } from "./managers/ThemeManager";
84
- export type { Events, PopoverColor, PopoverPlacement, PopoverStrategy, PopoverTrigger } from "./components/popover/Popover.types";
85
+ export type { Events, IPopoverController, PopoverColor, PopoverPlacement, PopoverStrategy, PopoverTrigger } from "./components/popover/Popover.types";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@momentum-ui/web-components",
3
- "version": "2.23.0",
3
+ "version": "2.23.2",
4
4
  "author": "Yana Harris",
5
5
  "license": "MIT",
6
6
  "repository": "https://github.com/momentum-design/momentum-ui.git",