{"version":3,"sources":["components/modal.js"],"names":["dmx","Component","attributes","nobackdrop","type","Boolean","default","nocloseonclick","nokeyboard","nofocus","show","methods","toggle","jQuery","this","$node","modal","hide","update","events","Event","shown","hidden","render","node","$parse","on","dispatchEvent","bind","props","JSON","stringify","backdrop","keyboard","focus","beforeDestroy","off"],"mappings":";;;;;;AAAAA,IAAAC,UAAA,YAAA,CAEAC,WAAA,CACAC,WAAA,CACAC,KAAAC,QACAC,SAAA,GAGAC,eAAA,CACAH,KAAAC,QACAC,SAAA,GAGAE,WAAA,CACAJ,KAAAC,QACAC,SAAA,GAGAG,QAAA,CACAL,KAAAC,QACAC,SAAA,GAGAI,KAAA,CACAN,KAAAC,QACAC,SAAA,IAIAK,QAAA,CACAC,OAAA,WACAC,OAAAC,KAAAC,OAAAC,MAAA,WAGAN,KAAA,WACAG,OAAAC,KAAAC,OAAAC,MAAA,SAGAC,KAAA,WACAJ,OAAAC,KAAAC,OAAAC,MAAA,SAGAE,OAAA,WACAL,OAAAC,KAAAC,OAAAC,MAAA,kBAIAG,OAAA,CACAT,KAAAU,MACAC,MAAAD,MACAH,KAAAG,MACAE,OAAAF,OAGAG,OAAA,SAAAC,GACAV,KAAAC,MAAAS,EACAV,KAAAW,SAEAZ,OAAAW,GAAAE,GAAA,gBAAAZ,KAAAa,cAAAC,KAAAd,KAAA,SACAD,OAAAW,GAAAE,GAAA,iBAAAZ,KAAAa,cAAAC,KAAAd,KAAA,UACAD,OAAAW,GAAAE,GAAA,gBAAAZ,KAAAa,cAAAC,KAAAd,KAAA,SACAD,OAAAW,GAAAE,GAAA,kBAAAZ,KAAAa,cAAAC,KAAAd,KAAA,WAEAA,KAAAI,OAAA,KAGAA,OAAA,SAAAW,GACAC,KAAAC,UAAAF,IAAAC,KAAAC,UAAAjB,KAAAe,QACAhB,OAAAC,KAAAC,OAAAC,MAAA,CACAgB,UAAAlB,KAAAe,MAAA1B,YAAAW,KAAAe,MAAAtB,eAAA,UAAAO,KAAAe,MAAA1B,WACA8B,UAAAnB,KAAAe,MAAArB,WACA0B,OAAApB,KAAAe,MAAApB,QACAC,OAAAI,KAAAe,MAAAnB,QAKAyB,cAAA,WACAtB,OAAAC,KAAAC,OAAAqB,IAAA,aACAvB,OAAAC,KAAAC,OAAAC,MAAA","file":"../dmxBootstrap4Modal/dmxBootstrap4Modal.js","sourcesContent":["dmx.Component('bs4-modal', {\r\n\r\n attributes: {\r\n nobackdrop: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n nocloseonclick: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n nokeyboard: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n nofocus: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n show: {\r\n type: Boolean,\r\n default: false\r\n }\r\n },\r\n\r\n methods: {\r\n toggle: function() {\r\n jQuery(this.$node).modal('toggle');\r\n },\r\n\r\n show: function() {\r\n jQuery(this.$node).modal('show');\r\n },\r\n\r\n hide: function() {\r\n jQuery(this.$node).modal('hide');\r\n },\r\n\r\n update: function() {\r\n jQuery(this.$node).modal('handleUpdate');\r\n }\r\n },\r\n\r\n events: {\r\n show: Event,\r\n shown: Event,\r\n hide: Event,\r\n hidden: Event\r\n },\r\n\r\n render: function(node) {\r\n this.$node = node;\r\n this.$parse();\r\n\r\n jQuery(node).on('show.bs.modal', this.dispatchEvent.bind(this, 'show'));\r\n jQuery(node).on('shown.bs.modal', this.dispatchEvent.bind(this, 'shown'));\r\n jQuery(node).on('hide.bs.modal', this.dispatchEvent.bind(this, 'hide'));\r\n jQuery(node).on('hidden.bs.modal', this.dispatchEvent.bind(this, 'hidden'));\r\n\r\n this.update({});\r\n },\r\n\r\n update: function(props) {\r\n if (JSON.stringify(props) != JSON.stringify(this.props)) {\r\n jQuery(this.$node).modal({\r\n backdrop: (!this.props.nobackdrop && !!this.props.nocloseonclick ? 'static' : !this.props.nobackdrop),\r\n keyboard: !this.props.nokeyboard,\r\n focus: !this.props.nofocus,\r\n show: !!this.props.show\r\n });\r\n }\r\n },\r\n\r\n beforeDestroy: function() {\r\n jQuery(this.$node).off('.bs.modal');\r\n jQuery(this.$node).modal('dispose');\r\n }\r\n\r\n});\r\n"]}