UNPKG

@hashicorp/design-system-components

Version:
53 lines (52 loc) 1.96 kB
/** * Copyright IBM Corp. 2021, 2025 * SPDX-License-Identifier: MPL-2.0 */ import Component from '@glimmer/component'; import type { WithBoundArgs } from '@glint/template'; import HdsDialogPrimitiveHeader from '../dialog-primitive/header'; import HdsDialogPrimitiveBody from '../dialog-primitive/body'; import HdsDialogPrimitiveFooter from '../dialog-primitive/footer'; import { HdsModalSizeValues, HdsModalColorValues } from './types.ts'; import type { HdsModalSizes, HdsModalColors } from './types.ts'; export declare const DEFAULT_SIZE = HdsModalSizeValues.Medium; export declare const DEFAULT_COLOR = HdsModalColorValues.Neutral; export declare const SIZES: HdsModalSizes[]; export declare const COLORS: HdsModalColors[]; export interface HdsModalSignature { Args: { isDismissDisabled?: boolean; size?: HdsModalSizes; color?: HdsModalColors; returnFocusTo?: string; onOpen?: () => void; onClose?: (event: Event) => void; }; Blocks: { default: [ { Header?: WithBoundArgs<typeof HdsDialogPrimitiveHeader, 'id' | 'onDismiss' | 'contextualClassPrefix'>; Body?: WithBoundArgs<typeof HdsDialogPrimitiveBody, 'contextualClass'>; Footer?: WithBoundArgs<typeof HdsDialogPrimitiveFooter, 'onDismiss' | 'contextualClass'>; } ]; }; Element: HTMLDialogElement; } export default class HdsModal extends Component<HdsModalSignature> { private _isOpen; private _element; private _body; private _bodyInitialOverflowValue; private _clickOutsideToDismissHandler; get isDismissDisabled(): boolean; get size(): HdsModalSizes; get color(): HdsModalColors; get id(): string; get classNames(): string; private _performCloseCleanup; registerOnCloseCallback: (event: Event) => void; private _registerDialog; open: () => void; onDismiss: () => Promise<void>; }