<app-modal>
							 | 
						|
								    <div class="modal">
							 | 
						|
								        <div class="modal__inner">
							 | 
						|
								            <div class="modal__title center">
							 | 
						|
								                <slot name="title" />
							 | 
						|
								            </div>
							 | 
						|
								            <div class="modal__body">
							 | 
						|
								                { state.body }
							 | 
						|
								            </div>
							 | 
						|
								            <div class="modal__footer">
							 | 
						|
								                <button class="button button--outline button--danger" onclick={ (event) => { handleConfirm(event) } }>
							 | 
						|
								                    Confirm
							 | 
						|
								                </button>
							 | 
						|
								                <button class="button button--outline float-right" onclick={ (event) => { handleClose(event) } } >
							 | 
						|
								                    Reject
							 | 
						|
								                </button>
							 | 
						|
								            </div>
							 | 
						|
								        </div>
							 | 
						|
								    </div>
							 | 
						|
								
							 | 
						|
								    <script>
							 | 
						|
								
							 | 
						|
								        /**
							 | 
						|
								         *
							 | 
						|
								         *
							 | 
						|
								         *
							 | 
						|
								         *
							 | 
						|
								         */
							 | 
						|
								
							 | 
						|
								        export default {
							 | 
						|
								
							 | 
						|
								            state: {
							 | 
						|
								                confirm: {}
							 | 
						|
								            },
							 | 
						|
								
							 | 
						|
								            onMounted() {
							 | 
						|
								                this.root.addEventListener('open', this.__open)
							 | 
						|
								                this.root.addEventListener('close', this.__close)
							 | 
						|
								            },
							 | 
						|
								
							 | 
						|
								            __open(event) {
							 | 
						|
								
							 | 
						|
								                // adding confirm function to state
							 | 
						|
								                this.state.confirm = event.detail.confirm
							 | 
						|
								                this.state.body = event.detail.body
							 | 
						|
								
							 | 
						|
								                this.$('.modal').classList.add('modal--open')
							 | 
						|
								                this.update()
							 | 
						|
								            },
							 | 
						|
								
							 | 
						|
								            __close(event) {
							 | 
						|
								                this.$('.modal').classList.remove('modal--open')
							 | 
						|
								                this.update()
							 | 
						|
								            },
							 | 
						|
								
							 | 
						|
								            /**
							 | 
						|
								             *
							 | 
						|
								             *  @param  {[type]} event
							 | 
						|
								             *  @return {[type]}
							 | 
						|
								             *
							 | 
						|
								             */
							 | 
						|
								            handleConfirm(event) {
							 | 
						|
								                event.preventDefault()
							 | 
						|
								
							 | 
						|
								                // calling confirm function
							 | 
						|
								                this.state.confirm()
							 | 
						|
								
							 | 
						|
								                this.__close()
							 | 
						|
								            },
							 | 
						|
								
							 | 
						|
								            /**
							 | 
						|
								             *
							 | 
						|
								             *
							 | 
						|
								             *  @param  {object} event
							 | 
						|
								             *
							 | 
						|
								             */
							 | 
						|
								            handleClose(event) {
							 | 
						|
								                event.preventDefault()
							 | 
						|
								                this.__close()
							 | 
						|
								            }
							 | 
						|
								        }
							 | 
						|
								
							 | 
						|
								    </script>
							 | 
						|
								</app-modal>
							 |