Component is used to show content on top of an overlay.
npm install @smashing/dialog

``sh`
yarn add @smashing/dialog @smashing/button @smashing/portal

#### Basic example
`jsx`
isShown={isDialogVisible}
title="Example"
onCloseComplete={() => setIsDialogVisible()}
>
Hello world
#### Header and Footer without borders
`jsx`
isShown={isDialogVisible}
title="Example"
onCloseComplete={() => setIsDialogVisible()}
isFooterSeparated={false}
isHeaderSeparated={false}
>
Hello world
#### Without Header and Footer
`jsx`
isShown={isDialogVisible}
title="Example"
onCloseComplete={() => setIsDialogVisible()}
hasHeader={false}
hasFooter={false}
>
Hello world
#### Without Cancel button
`jsx`
isShown={isDialogVisible}
title="Example"
onCloseComplete={() => setIsDialogVisible()}
hasCancel={false}
>
Hello world
#### Customized Cancel and Confirm buttons
`jsx
isShown={isDialogVisible}
title="Example"
onCloseComplete={() => setIsDialogVisible()}
cancelAppearance="minimal"
cancelLabel="Abort"
confirmAppearance="flat"
confirmLabel="Ok"
intent="success"
>
Hello world
`
#### Disabled Confirm button
`jsx`
isShown={isDialogVisible}
title="Example"
onCloseComplete={() => setIsDialogVisible()}
isConfirmDisabled
>
Hello world
#### Custom max width
`jsx`
isShown={isDialogVisible}
title="Example"
onCloseComplete={() => setIsDialogVisible()}
width={700}
>
Hello world
#### Handle onCancel and onConfirm
`jsx``
isShown={isDialogVisible}
title="Example"
onCloseComplete={() => setIsDialogVisible()}
onCancel={close => {
console.log('cancel')
close()
}}
onConfirm={close => {
console.log('confirm')
close()
}}
>
Hello world