Modal
Table of Contents
Usage
Default (transactional)
<script>
import { Button, Modal } from "carbon-components-svelte";
let open = false;
</script>
<Button on:click={() => (open = true)}>Create database</Button>
<Modal
bind:open
modalHeading="Create database"
primaryButtonText="Confirm"
secondaryButtonText="Cancel"
on:click:button--secondary={() => (open = false)}
on:open
on:close
on:submit
>
<p>Create a new Cloudant database in the US South region.</p>
</Modal>
Danger modal
<script>
import { Button, Modal } from "carbon-components-svelte";
let open = false;
</script>
<Button kind="danger" on:click={() => (open = true)}>Delete all</Button>
<Modal
danger
bind:open
modalHeading="Delete all instances"
primaryButtonText="Delete"
secondaryButtonText="Cancel"
on:click:button--secondary={() => (open = false)}
on:open
on:close
on:submit
>
<p>This is a permanent action and cannot be undone.</p>
</Modal>
Passive modal
<script>
import { Button, Modal } from "carbon-components-svelte";
let open = false;
</script>
<Button kind="tertiary" on:click={() => (open = true)}>Learn more</Button>
<Modal passiveModal bind:open modalHeading="IBM Cloudant" on:open on:close>
<p>
IBM Cloudant is a distributed, secure database with global availability and
zero vendor lock-in used to build web and mobile apps at scale.
</p>
</Modal>
Extra-small size
<script>
import { Modal } from "carbon-components-svelte";
</script>
<Modal
size="xs"
open
modalHeading="Create database"
primaryButtonText="Confirm"
secondaryButtonText="Cancel"
on:click:button--secondary
on:open
on:close
on:submit
>
<p>Create a new Cloudant database in the US South region.</p>
</Modal>
Small size
<script>
import { Modal } from "carbon-components-svelte";
</script>
<Modal
size="sm"
open
modalHeading="Create database"
primaryButtonText="Confirm"
secondaryButtonText="Cancel"
on:click:button--secondary
on:open
on:close
on:submit
>
<p>Create a new Cloudant database in the US South region.</p>
</Modal>
Large size
<script>
import { Modal } from "carbon-components-svelte";
</script>
<Modal
size="lg"
open
modalHeading="Create database"
primaryButtonText="Confirm"
secondaryButtonText="Cancel"
on:click:button--secondary
on:open
on:close
on:submit
>
<p>Create a new Cloudant database in the US South region.</p>
</Modal>
Prevent close on outside click
preventCloseOnClickOutside
prevents the modal from being closed when clicking outside of an open modal. This prop is intended to be used for transactional modals.
<script>
import { Modal } from "carbon-components-svelte";
</script>
<Modal
preventCloseOnClickOutside
open
modalHeading="Create database"
primaryButtonText="Confirm"
secondaryButtonText="Cancel"
on:click:button--secondary
on:open
on:close
on:submit
>
<p>Create a new Cloudant database in the US South region.</p>
</Modal>