forked from tsai/budibase
4 changed files with 97 additions and 62 deletions
@ -1,43 +1,44 @@ |
|||
<script> |
|||
import UIkit from "uikit"; |
|||
import UIkit from "uikit"; |
|||
|
|||
export let isOpen = false; |
|||
export let onClosed = () => {}; |
|||
export let id = ""; |
|||
export let isOpen = false; |
|||
export let onClosed = () => {}; |
|||
export let id = ""; |
|||
|
|||
let ukModal; |
|||
let listenerAdded = false; |
|||
let ukModal; |
|||
let listenerAdded = false; |
|||
|
|||
$: { |
|||
if(ukModal && !listenerAdded) { |
|||
listenerAdded = true; |
|||
ukModal.addEventListener("hidden", onClosed); |
|||
$: { |
|||
if (ukModal && !listenerAdded) { |
|||
listenerAdded = true; |
|||
ukModal.addEventListener("hidden", onClosed); |
|||
} |
|||
|
|||
if(ukModal) { |
|||
if(isOpen) { |
|||
UIkit.modal(ukModal).show(); |
|||
} else { |
|||
UIkit.modal(ukModal).hide(); |
|||
} |
|||
if (ukModal) { |
|||
if (isOpen) { |
|||
UIkit.modal(ukModal).show(); |
|||
} else { |
|||
UIkit.modal(ukModal).hide(); |
|||
} |
|||
} |
|||
} |
|||
|
|||
} |
|||
</script> |
|||
|
|||
<div bind:this={ukModal} uk-modal {id}> |
|||
<div class="uk-modal-dialog uk-modal-body" uk-overflow-auto> |
|||
<slot /> |
|||
</div> |
|||
</div> |
|||
|
|||
|
|||
<style> |
|||
|
|||
.uk-modal-dialog { |
|||
border-radius: .3rem; |
|||
.uk-modal-dialog { |
|||
border-radius: 0.3rem; |
|||
width: 60%; |
|||
height: 80vh; |
|||
} |
|||
display: flex; |
|||
flex-direction: column; |
|||
} |
|||
</style> |
|||
|
|||
</style> |
|||
<div bind:this={ukModal} uk-modal {id}> |
|||
<div class="uk-modal-dialog uk-modal-body" uk-overflow-auto> |
|||
{#if onClosed} |
|||
<button class="uk-modal-close-default" type="button" uk-close /> |
|||
{/if} |
|||
<slot /> |
|||
</div> |
|||
</div> |
|||
|
|||
Loading…
Reference in new issue