[nwd] Fixing all the violations Change-Id: I99eea54b9ad5d0c1bd33125530fd7ff0d0363970
diff --git a/jquery.modal.js b/jquery.modal.js index 9add4fd..d5fc367 100644 --- a/jquery.modal.js +++ b/jquery.modal.js
@@ -1,6 +1,6 @@ /* A simple jQuery modal (http://github.com/kylefox/jquery-modal) - Version 0.9.2 + Version 0.9.1 */ (function (factory) { @@ -113,17 +113,11 @@ }, block: function() { + var div = document.createElement('div'); + div.setAttribute('class', this.options.blockerClass + ' blocker current'); this.$elm.trigger($.modal.BEFORE_BLOCK, [this._ctx()]); this.$body.css('overflow','hidden'); - if (window.trustedTypes && window.trustedTypes.createPolicy) { - const policy = self.trustedTypes.createPolicy('jquery-modal-fix-1', { - createHTML: function(_ignored) { return this.$body } - }); - safeBody = policy.createHTML('_ignored'); - } else { - safeBody = this.$body; - } - this.$blocker = $('<div></div>').addClass(this.options.blockerClass + ' blocker current').appendTo(safeBody); + this.$blocker = $(this.$body[0].appendChild(div)); selectCurrent(); if(this.options.doFade) { this.$blocker.css('opacity',0).animate({opacity: 1}, this.options.fadeDuration); @@ -177,16 +171,26 @@ showSpinner: function() { if (!this.options.showSpinner) return; - if (window.trustedTypes && window.trustedTypes.createPolicy) { - const policy = self.trustedTypes.createPolicy('jquery-modal-fix-2', { - createHTML: function(_ignored) { return this.options.spinnerHtml } - }); - safeSpinnerHtml = policy.createHTML('_ignored'); - } else { - safeSpinnerHtml = this.options.spinnerHtml; - } - this.spinner = this.spinner || $('<div></div>').addClass(this.options.modalClass + '-spinner') - .append(safeSpinnerHtml); + var div = document.createElement('div'); + div.setAttribute('class', this.options.modalClass + '-spinner'); + + var divSpinner1 = document.createElement('div'); + divSpinner1.setAttribute('class','rect1'); + div.appendChild(divSpinner1); + + var divSpinner2 = document.createElement('div'); + divSpinner2.setAttribute('class','rect2'); + div.appendChild(divSpinner2); + + var divSpinner3 = document.createElement('div'); + divSpinner3.setAttribute('class','rect3'); + div.appendChild(divSpinner3); + + var divSpinner4 = document.createElement('div'); + divSpinner4.setAttribute('class','rect4'); + div.appendChild(divSpinner4); + + this.spinner = this.spinner || $(div); this.$body.append(this.spinner); this.spinner.show(); }, @@ -197,7 +201,7 @@ //Return context for custom events _ctx: function() { - return { elm: this.$elm, $elm: this.$elm, $blocker: this.$blocker, options: this.options, $anchor: this.anchor }; + return { elm: this.$elm, $elm: this.$elm, $blocker: this.$blocker, options: this.options }; } };
diff --git a/jquery.modal.min.js b/jquery.modal.min.js index ef7168a..f2b0f11 100644 --- a/jquery.modal.min.js +++ b/jquery.modal.min.js
@@ -1,5 +1,5 @@ /* A simple jQuery modal (http://github.com/kylefox/jquery-modal) - Version 0.9.2 + Version 0.9.1 */ -!function(o){"object"==typeof module&&"object"==typeof module.exports?o(require("jquery"),window,document):o(jQuery,window,document)}(function(o,e,t,i){var s=[],l=function(){return s.length?s[s.length-1]:null},n=function(){var o,e=!1;for(o=s.length-1;o>=0;o--)s[o].$blocker&&(s[o].$blocker.toggleClass("current",!e).toggleClass("behind",e),e=!0)};o.modal=function(e,t){var i,n;if(this.$body=o("body"),this.options=o.extend({},o.modal.defaults,t),this.options.doFade=!isNaN(parseInt(this.options.fadeDuration,10)),this.$blocker=null,this.options.closeExisting)for(;o.modal.isActive();)o.modal.close();if(s.push(this),e.is("a"))if(n=e.attr("href"),this.anchor=e,/^#/.test(n)){if(this.$elm=o(n),1!==this.$elm.length)return null;this.$body.append(this.$elm),this.open()}else this.$elm=o("<div>"),this.$body.append(this.$elm),i=function(o,e){e.elm.remove()},this.showSpinner(),e.trigger(o.modal.AJAX_SEND),o.get(n).done(function(t){if(o.modal.isActive()){e.trigger(o.modal.AJAX_SUCCESS);var s=l();s.$elm.empty().append(t).on(o.modal.CLOSE,i),s.hideSpinner(),s.open(),e.trigger(o.modal.AJAX_COMPLETE)}}).fail(function(){e.trigger(o.modal.AJAX_FAIL);var t=l();t.hideSpinner(),s.pop(),e.trigger(o.modal.AJAX_COMPLETE)});else this.$elm=e,this.anchor=e,this.$body.append(this.$elm),this.open()},o.modal.prototype={constructor:o.modal,open:function(){var e=this;this.block(),this.anchor.blur(),this.options.doFade?setTimeout(function(){e.show()},this.options.fadeDuration*this.options.fadeDelay):this.show(),o(t).off("keydown.modal").on("keydown.modal",function(o){var e=l();27===o.which&&e.options.escapeClose&&e.close()}),this.options.clickClose&&this.$blocker.click(function(e){e.target===this&&o.modal.close()})},close:function(){s.pop(),this.unblock(),this.hide(),o.modal.isActive()||o(t).off("keydown.modal")},block:function(){if(this.$elm.trigger(o.modal.BEFORE_BLOCK,[this._ctx()]),this.$body.css("overflow","hidden"),e.trustedTypes&&e.trustedTypes.createPolicy){const t=self.trustedTypes.createPolicy("jquery-modal-fix-1",{createHTML:function(o){return this.$body}});safeBody=t.createHTML("_ignored")}else safeBody=this.$body;this.$blocker=o("<div></div>").addClass(this.options.blockerClass+" blocker current").appendTo(safeBody),n(),this.options.doFade&&this.$blocker.css("opacity",0).animate({opacity:1},this.options.fadeDuration),this.$elm.trigger(o.modal.BLOCK,[this._ctx()])},unblock:function(e){!e&&this.options.doFade?this.$blocker.fadeOut(this.options.fadeDuration,this.unblock.bind(this,!0)):(this.$blocker.children().appendTo(this.$body),this.$blocker.remove(),this.$blocker=null,n(),o.modal.isActive()||this.$body.css("overflow",""))},show:function(){this.$elm.trigger(o.modal.BEFORE_OPEN,[this._ctx()]),this.options.showClose&&(this.closeButton=o('<a href="#close-modal" rel="modal:close" class="close-modal '+this.options.closeClass+'">'+this.options.closeText+"</a>"),this.$elm.append(this.closeButton)),this.$elm.addClass(this.options.modalClass).appendTo(this.$blocker),this.options.doFade?this.$elm.css({opacity:0,display:"inline-block"}).animate({opacity:1},this.options.fadeDuration):this.$elm.css("display","inline-block"),this.$elm.trigger(o.modal.OPEN,[this._ctx()])},hide:function(){this.$elm.trigger(o.modal.BEFORE_CLOSE,[this._ctx()]),this.closeButton&&this.closeButton.remove();var e=this;this.options.doFade?this.$elm.fadeOut(this.options.fadeDuration,function(){e.$elm.trigger(o.modal.AFTER_CLOSE,[e._ctx()])}):this.$elm.hide(0,function(){e.$elm.trigger(o.modal.AFTER_CLOSE,[e._ctx()])}),this.$elm.trigger(o.modal.CLOSE,[this._ctx()])},showSpinner:function(){if(this.options.showSpinner){if(e.trustedTypes&&e.trustedTypes.createPolicy){const t=self.trustedTypes.createPolicy("jquery-modal-fix-2",{createHTML:function(o){return this.options.spinnerHtml}});safeSpinnerHtml=t.createHTML("_ignored")}else safeSpinnerHtml=this.options.spinnerHtml;this.spinner=this.spinner||o("<div></div>").addClass(this.options.modalClass+"-spinner").append(safeSpinnerHtml),this.$body.append(this.spinner),this.spinner.show()}},hideSpinner:function(){this.spinner&&this.spinner.remove()},_ctx:function(){return{elm:this.$elm,$elm:this.$elm,$blocker:this.$blocker,options:this.options,$anchor:this.anchor}}},o.modal.close=function(e){if(o.modal.isActive()){e&&e.preventDefault();var t=l();return t.close(),t.$elm}},o.modal.isActive=function(){return s.length>0},o.modal.getCurrent=l,o.modal.defaults={closeExisting:!0,escapeClose:!0,clickClose:!0,closeText:"Close",closeClass:"",modalClass:"modal",blockerClass:"jquery-modal",spinnerHtml:'<div class="rect1"></div><div class="rect2"></div><div class="rect3"></div><div class="rect4"></div>',showSpinner:!0,showClose:!0,fadeDuration:null,fadeDelay:1},o.modal.BEFORE_BLOCK="modal:before-block",o.modal.BLOCK="modal:block",o.modal.BEFORE_OPEN="modal:before-open",o.modal.OPEN="modal:open",o.modal.BEFORE_CLOSE="modal:before-close",o.modal.CLOSE="modal:close",o.modal.AFTER_CLOSE="modal:after-close",o.modal.AJAX_SEND="modal:ajax:send",o.modal.AJAX_SUCCESS="modal:ajax:success",o.modal.AJAX_FAIL="modal:ajax:fail",o.modal.AJAX_COMPLETE="modal:ajax:complete",o.fn.modal=function(e){return 1===this.length&&new o.modal(this,e),this},o(t).on("click.modal",'a[rel~="modal:close"]',o.modal.close),o(t).on("click.modal",'a[rel~="modal:open"]',function(e){e.preventDefault(),o(this).modal()})}); \ No newline at end of file +!function(o){"object"==typeof module&&"object"==typeof module.exports?o(require("jquery"),window,document):o(jQuery,window,document)}(function(o,t,e,i){var s=[],l=function(){return s.length?s[s.length-1]:null},n=function(){var o,t=!1;for(o=s.length-1;o>=0;o--)s[o].$blocker&&(s[o].$blocker.toggleClass("current",!t).toggleClass("behind",t),t=!0)};o.modal=function(t,e){var i,n;if(this.$body=o("body"),this.options=o.extend({},o.modal.defaults,e),this.options.doFade=!isNaN(parseInt(this.options.fadeDuration,10)),this.$blocker=null,this.options.closeExisting)for(;o.modal.isActive();)o.modal.close();if(s.push(this),t.is("a"))if(n=t.attr("href"),this.anchor=t,/^#/.test(n)){if(this.$elm=o(n),1!==this.$elm.length)return null;this.$body.append(this.$elm),this.open()}else this.$elm=o("<div>"),this.$body.append(this.$elm),i=function(o,t){t.elm.remove()},this.showSpinner(),t.trigger(o.modal.AJAX_SEND),o.get(n).done(function(e){if(o.modal.isActive()){t.trigger(o.modal.AJAX_SUCCESS);var s=l();s.$elm.empty().append(e).on(o.modal.CLOSE,i),s.hideSpinner(),s.open(),t.trigger(o.modal.AJAX_COMPLETE)}}).fail(function(){t.trigger(o.modal.AJAX_FAIL);var e=l();e.hideSpinner(),s.pop(),t.trigger(o.modal.AJAX_COMPLETE)});else this.$elm=t,this.anchor=t,this.$body.append(this.$elm),this.open()},o.modal.prototype={constructor:o.modal,open:function(){var t=this;this.block(),this.anchor.blur(),this.options.doFade?setTimeout(function(){t.show()},this.options.fadeDuration*this.options.fadeDelay):this.show(),o(e).off("keydown.modal").on("keydown.modal",function(o){var t=l();27===o.which&&t.options.escapeClose&&t.close()}),this.options.clickClose&&this.$blocker.click(function(t){t.target===this&&o.modal.close()})},close:function(){s.pop(),this.unblock(),this.hide(),o.modal.isActive()||o(e).off("keydown.modal")},block:function(){var t=e.createElement("div");t.setAttribute("class",this.options.blockerClass+" blocker current"),this.$elm.trigger(o.modal.BEFORE_BLOCK,[this._ctx()]),this.$body.css("overflow","hidden"),this.$blocker=o(this.$body[0].appendChild(t)),n(),this.options.doFade&&this.$blocker.css("opacity",0).animate({opacity:1},this.options.fadeDuration),this.$elm.trigger(o.modal.BLOCK,[this._ctx()])},unblock:function(t){!t&&this.options.doFade?this.$blocker.fadeOut(this.options.fadeDuration,this.unblock.bind(this,!0)):(this.$blocker.children().appendTo(this.$body),this.$blocker.remove(),this.$blocker=null,n(),o.modal.isActive()||this.$body.css("overflow",""))},show:function(){this.$elm.trigger(o.modal.BEFORE_OPEN,[this._ctx()]),this.options.showClose&&(this.closeButton=o('<a href="#close-modal" rel="modal:close" class="close-modal '+this.options.closeClass+'">'+this.options.closeText+"</a>"),this.$elm.append(this.closeButton)),this.$elm.addClass(this.options.modalClass).appendTo(this.$blocker),this.options.doFade?this.$elm.css({opacity:0,display:"inline-block"}).animate({opacity:1},this.options.fadeDuration):this.$elm.css("display","inline-block"),this.$elm.trigger(o.modal.OPEN,[this._ctx()])},hide:function(){this.$elm.trigger(o.modal.BEFORE_CLOSE,[this._ctx()]),this.closeButton&&this.closeButton.remove();var t=this;this.options.doFade?this.$elm.fadeOut(this.options.fadeDuration,function(){t.$elm.trigger(o.modal.AFTER_CLOSE,[t._ctx()])}):this.$elm.hide(0,function(){t.$elm.trigger(o.modal.AFTER_CLOSE,[t._ctx()])}),this.$elm.trigger(o.modal.CLOSE,[this._ctx()])},showSpinner:function(){if(this.options.showSpinner){var t=e.createElement("div");t.setAttribute("class",this.options.modalClass+"-spinner");var i=e.createElement("div");i.setAttribute("class","rect1"),t.appendChild(i);var s=e.createElement("div");s.setAttribute("class","rect2"),t.appendChild(s);var l=e.createElement("div");l.setAttribute("class","rect3"),t.appendChild(l);var n=e.createElement("div");n.setAttribute("class","rect4"),t.appendChild(n),this.spinner=this.spinner||o(t),this.$body.append(this.spinner),this.spinner.show()}},hideSpinner:function(){this.spinner&&this.spinner.remove()},_ctx:function(){return{elm:this.$elm,$elm:this.$elm,$blocker:this.$blocker,options:this.options}}},o.modal.close=function(t){if(o.modal.isActive()){t&&t.preventDefault();var e=l();return e.close(),e.$elm}},o.modal.isActive=function(){return s.length>0},o.modal.getCurrent=l,o.modal.defaults={closeExisting:!0,escapeClose:!0,clickClose:!0,closeText:"Close",closeClass:"",modalClass:"modal",blockerClass:"jquery-modal",spinnerHtml:'<div class="rect1"></div><div class="rect2"></div><div class="rect3"></div><div class="rect4"></div>',showSpinner:!0,showClose:!0,fadeDuration:null,fadeDelay:1},o.modal.BEFORE_BLOCK="modal:before-block",o.modal.BLOCK="modal:block",o.modal.BEFORE_OPEN="modal:before-open",o.modal.OPEN="modal:open",o.modal.BEFORE_CLOSE="modal:before-close",o.modal.CLOSE="modal:close",o.modal.AFTER_CLOSE="modal:after-close",o.modal.AJAX_SEND="modal:ajax:send",o.modal.AJAX_SUCCESS="modal:ajax:success",o.modal.AJAX_FAIL="modal:ajax:fail",o.modal.AJAX_COMPLETE="modal:ajax:complete",o.fn.modal=function(t){return 1===this.length&&new o.modal(this,t),this},o(e).on("click.modal",'a[rel~="modal:close"]',o.modal.close),o(e).on("click.modal",'a[rel~="modal:open"]',function(t){t.preventDefault(),o(this).modal()})}); \ No newline at end of file