Socket
Socket
Sign inDemoInstall

ng-dialog

Package Overview
Dependencies
Maintainers
1
Versions
39
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ng-dialog - npm Package Compare versions

Comparing version 0.3.0 to 0.3.2

CHANGELOG.md

2

bower.json
{
"name": "ngDialog",
"version": "0.3.0",
"version": "0.3.2",
"homepage": "https://github.com/likeastore/ngDialog",

@@ -5,0 +5,0 @@ "description": "Modal dialogs and popups provider for Angular.js applications",

@@ -26,2 +26,3 @@ /*

closeByEscape: true,
closeByNavigation: false,
appendTo: false,

@@ -77,3 +78,6 @@ preCloseCallback: false,

if (typeof window.Hammer !== 'undefined') {
window.Hammer($dialog[0]).off('tap', closeByDocumentHandler);
var hammerTime = angular.element($dialog).scope().hammerTime;
hammerTime.off('tap', closeByDocumentHandler);
hammerTime.destroy();
delete $dialog.scope().hammerTime;
} else {

@@ -91,2 +95,4 @@ $dialog.unbind('click');

$rootScope.$broadcast('ngDialog.closing', $dialog);
if (animationEndSupport) {

@@ -183,10 +189,5 @@ $dialog.unbind(animationEndEvent).bind(animationEndEvent, function () {

$q.when(loadTemplate(options.template)).then(function (template) {
template = angular.isString(template) ?
template :
template.data && angular.isString(template.data) ?
template.data :
'';
$q.when(loadTemplate(options.template || options.templateUrl)).then(function (template) {
$templateCache.put(options.template, template);
$templateCache.put(options.template || options.templateUrl, template);

@@ -273,2 +274,8 @@ if (options.showClose) {

if (options.closeByNavigation) {
$rootScope.$on('$locationChangeSuccess', function () {
privateMethods.closeDialog($dialog);
});
}
closeByDocumentHandler = function (event) {

@@ -284,3 +291,4 @@ var isOverlay = options.closeByDocument ? $el(event.target).hasClass('ngdialog-overlay') : false;

if (typeof window.Hammer !== 'undefined') {
window.Hammer($dialog[0]).on('tap', closeByDocumentHandler);
var hammerTime = scope.hammerTime = window.Hammer($dialog[0]);
hammerTime.on('tap', closeByDocumentHandler);
} else {

@@ -303,2 +311,8 @@ $dialog.bind('click', closeByDocumentHandler);

function loadTemplateUrl (tmpl, config) {
return $http.get(tmpl, angular.extend({cache: false}, config || {})).then(function(res) {
return res.data || '';
});
}
function loadTemplate (tmpl) {

@@ -314,6 +328,6 @@ if (!tmpl) {

if (typeof options.cache === 'boolean' && !options.cache) {
return $http.get(tmpl, {cache: false});
return loadTemplateUrl(tmpl, {cache: false});
}
return $templateCache.get(tmpl) || $http.get(tmpl, {cache: true});
return $templateCache.get(tmpl) || loadTemplateUrl(tmpl, {cache: false});
}

@@ -320,0 +334,0 @@ },

@@ -1,2 +0,2 @@

/*! ng-dialog - v0.3.0 (https://github.com/likeastore/ngDialog) */
!function(a,b){"use strict";var c=b.module("ngDialog",[]),d=b.element,e=b.isDefined,f=(document.body||document.documentElement).style,g=e(f.animation)||e(f.WebkitAnimation)||e(f.MozAnimation)||e(f.MsAnimation)||e(f.OAnimation),h="animationend webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend",i=!1;c.provider("ngDialog",function(){var c=this.defaults={className:"ngdialog-theme-default",plain:!1,showClose:!0,closeByDocument:!0,closeByEscape:!0,appendTo:!1,preCloseCallback:!1,cache:!0};this.setForceBodyReload=function(a){i=a||!1},this.setDefaults=function(a){b.extend(c,a)};var e,f=0,j=0,k={};this.$get=["$document","$templateCache","$compile","$q","$http","$rootScope","$timeout","$window","$controller",function(l,m,n,o,p,q,r,s,t){var u=l.find("body");i&&q.$on("$locationChangeSuccess",function(){u=l.find("body")});var v={onDocumentKeydown:function(a){27===a.keyCode&&w.close("$escape")},setBodyPadding:function(a){var b=parseInt(u.css("padding-right")||0,10);u.css("padding-right",b+a+"px"),u.data("ng-dialog-original-padding",b)},resetBodyPadding:function(){var a=u.data("ng-dialog-original-padding");a?u.css("padding-right",a+"px"):u.css("padding-right","")},performCloseDialog:function(b,c){var d=b.attr("id");"undefined"!=typeof a.Hammer?a.Hammer(b[0]).off("tap",e):b.unbind("click"),1===j&&u.unbind("keydown"),b.hasClass("ngdialog-closing")||(j-=1),g?b.unbind(h).bind(h,function(){b.scope().$destroy(),b.remove(),0===j&&(u.removeClass("ngdialog-open"),v.resetBodyPadding()),q.$broadcast("ngDialog.closed",b)}).addClass("ngdialog-closing"):(b.scope().$destroy(),b.remove(),0===j&&(u.removeClass("ngdialog-open"),v.resetBodyPadding()),q.$broadcast("ngDialog.closed",b)),k[d]&&(k[d].resolve({id:d,value:c,$dialog:b,remainingDialogs:j}),delete k[d])},closeDialog:function(a,c){var d=a.data("$ngDialogPreCloseCallback");if(d&&b.isFunction(d)){var e=d.call(a,c);b.isObject(e)?e.closePromise?e.closePromise.then(function(){v.performCloseDialog(a,c)}):e.then(function(){v.performCloseDialog(a,c)},function(){}):e!==!1&&v.performCloseDialog(a,c)}else v.performCloseDialog(a,c)}},w={open:function(g){function h(a){return a?b.isString(a)&&l.plain?a:"boolean"!=typeof l.cache||l.cache?m.get(a)||p.get(a,{cache:!0}):p.get(a,{cache:!1}):"Empty template"}var i=this,l=b.copy(c);g=g||{},b.extend(l,g),f+=1,i.latestID="ngdialog"+f;var x;k[i.latestID]=x=o.defer();var y,z,A=b.isObject(l.scope)?l.scope.$new():q.$new();return o.when(h(l.template)).then(function(c){if(c=b.isString(c)?c:c.data&&b.isString(c.data)?c.data:"",m.put(l.template,c),l.showClose&&(c+='<div class="ngdialog-close"></div>'),i.$result=y=d('<div id="ngdialog'+f+'" class="ngdialog"></div>'),y.html('<div class="ngdialog-overlay"></div><div class="ngdialog-content">'+c+"</div>"),l.data&&b.isString(l.data)){var g=l.data.replace(/^\s*/,"")[0];A.ngDialogData="{"===g||"["===g?b.fromJson(l.data):l.data}else l.data&&b.isObject(l.data)&&(A.ngDialogData=b.fromJson(b.toJson(l.data)));if(l.controller&&(b.isString(l.controller)||b.isArray(l.controller)||b.isFunction(l.controller))){var h=t(l.controller,{$scope:A,$element:y});y.data("$ngDialogControllerController",h)}if(l.className&&y.addClass(l.className),z=l.appendTo&&b.isString(l.appendTo)?b.element(document.querySelector(l.appendTo)):u,l.preCloseCallback){var k;b.isFunction(l.preCloseCallback)?k=l.preCloseCallback:b.isString(l.preCloseCallback)&&A&&(b.isFunction(A[l.preCloseCallback])?k=A[l.preCloseCallback]:A.$parent&&b.isFunction(A.$parent[l.preCloseCallback])?k=A.$parent[l.preCloseCallback]:q&&b.isFunction(q[l.preCloseCallback])&&(k=q[l.preCloseCallback])),k&&y.data("$ngDialogPreCloseCallback",k)}return A.closeThisDialog=function(a){v.closeDialog(y,a)},r(function(){n(y)(A);var a=s.innerWidth-u.prop("clientWidth");u.addClass("ngdialog-open");var b=a-(s.innerWidth-u.prop("clientWidth"));b>0&&v.setBodyPadding(b),z.append(y),l.name?q.$broadcast("ngDialog.opened",{dialog:y,name:l.name}):q.$broadcast("ngDialog.opened",y)}),l.closeByEscape&&u.bind("keydown",v.onDocumentKeydown),e=function(a){var b=l.closeByDocument?d(a.target).hasClass("ngdialog-overlay"):!1,c=d(a.target).hasClass("ngdialog-close");(b||c)&&w.close(y.attr("id"),c?"$closeButton":"$document")},"undefined"!=typeof a.Hammer?a.Hammer(y[0]).on("tap",e):y.bind("click",e),j+=1,w}),{id:"ngdialog"+f,closePromise:x.promise,close:function(a){v.closeDialog(y,a)}}},openConfirm:function(a){var c=o.defer(),e={closeByEscape:!1,closeByDocument:!1};b.extend(e,a),e.scope=b.isObject(e.scope)?e.scope.$new():q.$new(),e.scope.confirm=function(a){c.resolve(a);var b=d(document.getElementById(f.id));v.performCloseDialog(b,a)};var f=w.open(e);return f.closePromise.then(function(a){return a?c.reject(a.value):c.reject()}),c.promise},close:function(a,b){var c=d(document.getElementById(a));return c.length?v.closeDialog(c,b):w.closeAll(b),w},closeAll:function(a){var c=document.querySelectorAll(".ngdialog");b.forEach(c,function(b){v.closeDialog(d(b),a)})},getDefaults:function(){return c}};return w}]}),c.directive("ngDialog",["ngDialog",function(a){return{restrict:"A",scope:{ngDialogScope:"="},link:function(c,d,e){d.on("click",function(d){d.preventDefault();var f=b.isDefined(c.ngDialogScope)?c.ngDialogScope:"noScope";b.isDefined(e.ngDialogClosePrevious)&&a.close(e.ngDialogClosePrevious);var g=a.getDefaults();a.open({template:e.ngDialog,className:e.ngDialogClass||g.className,controller:e.ngDialogController,scope:f,data:e.ngDialogData,showClose:"false"===e.ngDialogShowClose?!1:"true"===e.ngDialogShowClose?!0:g.showClose,closeByDocument:"false"===e.ngDialogCloseByDocument?!1:"true"===e.ngDialogCloseByDocument?!0:g.closeByDocument,closeByEscape:"false"===e.ngDialogCloseByEscape?!1:"true"===e.ngDialogCloseByEscape?!0:g.closeByEscape,preCloseCallback:e.ngDialogPreCloseCallback||g.preCloseCallback})})}}}])}(window,window.angular);
/*! ng-dialog - v0.3.2 (https://github.com/likeastore/ngDialog) */
!function(a,b){"use strict";var c=b.module("ngDialog",[]),d=b.element,e=b.isDefined,f=(document.body||document.documentElement).style,g=e(f.animation)||e(f.WebkitAnimation)||e(f.MozAnimation)||e(f.MsAnimation)||e(f.OAnimation),h="animationend webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend",i=!1;c.provider("ngDialog",function(){var c=this.defaults={className:"ngdialog-theme-default",plain:!1,showClose:!0,closeByDocument:!0,closeByEscape:!0,closeByNavigation:!1,appendTo:!1,preCloseCallback:!1,cache:!0};this.setForceBodyReload=function(a){i=a||!1},this.setDefaults=function(a){b.extend(c,a)};var e,f=0,j=0,k={};this.$get=["$document","$templateCache","$compile","$q","$http","$rootScope","$timeout","$window","$controller",function(l,m,n,o,p,q,r,s,t){var u=l.find("body");i&&q.$on("$locationChangeSuccess",function(){u=l.find("body")});var v={onDocumentKeydown:function(a){27===a.keyCode&&w.close("$escape")},setBodyPadding:function(a){var b=parseInt(u.css("padding-right")||0,10);u.css("padding-right",b+a+"px"),u.data("ng-dialog-original-padding",b)},resetBodyPadding:function(){var a=u.data("ng-dialog-original-padding");a?u.css("padding-right",a+"px"):u.css("padding-right","")},performCloseDialog:function(c,d){var f=c.attr("id");if("undefined"!=typeof a.Hammer){var i=b.element(c).scope().hammerTime;i.off("tap",e),i.destroy(),delete c.scope().hammerTime}else c.unbind("click");1===j&&u.unbind("keydown"),c.hasClass("ngdialog-closing")||(j-=1),q.$broadcast("ngDialog.closing",c),g?c.unbind(h).bind(h,function(){c.scope().$destroy(),c.remove(),0===j&&(u.removeClass("ngdialog-open"),v.resetBodyPadding()),q.$broadcast("ngDialog.closed",c)}).addClass("ngdialog-closing"):(c.scope().$destroy(),c.remove(),0===j&&(u.removeClass("ngdialog-open"),v.resetBodyPadding()),q.$broadcast("ngDialog.closed",c)),k[f]&&(k[f].resolve({id:f,value:d,$dialog:c,remainingDialogs:j}),delete k[f])},closeDialog:function(a,c){var d=a.data("$ngDialogPreCloseCallback");if(d&&b.isFunction(d)){var e=d.call(a,c);b.isObject(e)?e.closePromise?e.closePromise.then(function(){v.performCloseDialog(a,c)}):e.then(function(){v.performCloseDialog(a,c)},function(){}):e!==!1&&v.performCloseDialog(a,c)}else v.performCloseDialog(a,c)}},w={open:function(g){function h(a,c){return p.get(a,b.extend({cache:!1},c||{})).then(function(a){return a.data||""})}function i(a){return a?b.isString(a)&&x.plain?a:"boolean"!=typeof x.cache||x.cache?m.get(a)||h(a,{cache:!1}):h(a,{cache:!1}):"Empty template"}var l=this,x=b.copy(c);g=g||{},b.extend(x,g),f+=1,l.latestID="ngdialog"+f;var y;k[l.latestID]=y=o.defer();var z,A,B=b.isObject(x.scope)?x.scope.$new():q.$new();return o.when(i(x.template||x.templateUrl)).then(function(c){if(m.put(x.template||x.templateUrl,c),x.showClose&&(c+='<div class="ngdialog-close"></div>'),l.$result=z=d('<div id="ngdialog'+f+'" class="ngdialog"></div>'),z.html('<div class="ngdialog-overlay"></div><div class="ngdialog-content">'+c+"</div>"),x.data&&b.isString(x.data)){var g=x.data.replace(/^\s*/,"")[0];B.ngDialogData="{"===g||"["===g?b.fromJson(x.data):x.data}else x.data&&b.isObject(x.data)&&(B.ngDialogData=b.fromJson(b.toJson(x.data)));if(x.controller&&(b.isString(x.controller)||b.isArray(x.controller)||b.isFunction(x.controller))){var h=t(x.controller,{$scope:B,$element:z});z.data("$ngDialogControllerController",h)}if(x.className&&z.addClass(x.className),A=x.appendTo&&b.isString(x.appendTo)?b.element(document.querySelector(x.appendTo)):u,x.preCloseCallback){var i;b.isFunction(x.preCloseCallback)?i=x.preCloseCallback:b.isString(x.preCloseCallback)&&B&&(b.isFunction(B[x.preCloseCallback])?i=B[x.preCloseCallback]:B.$parent&&b.isFunction(B.$parent[x.preCloseCallback])?i=B.$parent[x.preCloseCallback]:q&&b.isFunction(q[x.preCloseCallback])&&(i=q[x.preCloseCallback])),i&&z.data("$ngDialogPreCloseCallback",i)}if(B.closeThisDialog=function(a){v.closeDialog(z,a)},r(function(){n(z)(B);var a=s.innerWidth-u.prop("clientWidth");u.addClass("ngdialog-open");var b=a-(s.innerWidth-u.prop("clientWidth"));b>0&&v.setBodyPadding(b),A.append(z),x.name?q.$broadcast("ngDialog.opened",{dialog:z,name:x.name}):q.$broadcast("ngDialog.opened",z)}),x.closeByEscape&&u.bind("keydown",v.onDocumentKeydown),x.closeByNavigation&&q.$on("$locationChangeSuccess",function(){v.closeDialog(z)}),e=function(a){var b=x.closeByDocument?d(a.target).hasClass("ngdialog-overlay"):!1,c=d(a.target).hasClass("ngdialog-close");(b||c)&&w.close(z.attr("id"),c?"$closeButton":"$document")},"undefined"!=typeof a.Hammer){var k=B.hammerTime=a.Hammer(z[0]);k.on("tap",e)}else z.bind("click",e);return j+=1,w}),{id:"ngdialog"+f,closePromise:y.promise,close:function(a){v.closeDialog(z,a)}}},openConfirm:function(a){var c=o.defer(),e={closeByEscape:!1,closeByDocument:!1};b.extend(e,a),e.scope=b.isObject(e.scope)?e.scope.$new():q.$new(),e.scope.confirm=function(a){c.resolve(a);var b=d(document.getElementById(f.id));v.performCloseDialog(b,a)};var f=w.open(e);return f.closePromise.then(function(a){return a?c.reject(a.value):c.reject()}),c.promise},close:function(a,b){var c=d(document.getElementById(a));return c.length?v.closeDialog(c,b):w.closeAll(b),w},closeAll:function(a){var c=document.querySelectorAll(".ngdialog");b.forEach(c,function(b){v.closeDialog(d(b),a)})},getDefaults:function(){return c}};return w}]}),c.directive("ngDialog",["ngDialog",function(a){return{restrict:"A",scope:{ngDialogScope:"="},link:function(c,d,e){d.on("click",function(d){d.preventDefault();var f=b.isDefined(c.ngDialogScope)?c.ngDialogScope:"noScope";b.isDefined(e.ngDialogClosePrevious)&&a.close(e.ngDialogClosePrevious);var g=a.getDefaults();a.open({template:e.ngDialog,className:e.ngDialogClass||g.className,controller:e.ngDialogController,scope:f,data:e.ngDialogData,showClose:"false"===e.ngDialogShowClose?!1:"true"===e.ngDialogShowClose?!0:g.showClose,closeByDocument:"false"===e.ngDialogCloseByDocument?!1:"true"===e.ngDialogCloseByDocument?!0:g.closeByDocument,closeByEscape:"false"===e.ngDialogCloseByEscape?!1:"true"===e.ngDialogCloseByEscape?!0:g.closeByEscape,preCloseCallback:e.ngDialogPreCloseCallback||g.preCloseCallback})})}}}])}(window,window.angular);
{
"name": "ng-dialog",
"version": "0.3.0",
"version": "0.3.2",
"homepage": "https://github.com/likeastore/ngDialog",

@@ -5,0 +5,0 @@ "description": "Modal dialogs and popups provider for Angular.js applications",

@@ -336,6 +336,8 @@ # ngDialog

Everytime when ngDialog is opened or closed we're broadcasting two events (dispatching events downwards to all child scopes):
Everytime when ngDialog is opened or closed we're broadcasting three events (dispatching events downwards to all child scopes):
- ``ngDialog.opened``
- ``ngDialog.closing``
- ``ngDialog.closed``

@@ -351,9 +353,11 @@

``ngDialog.closing`` is different than ``ngDialog.closed`` in that it is fired immediately when the dialog begins closing, whereas ``ngDialog.closed`` is fired after all animations are complete. Both will be fired even when animation end support is not detected.
## Themes
Currently ngDialog contains two default themes that show how easily you can create your own. Check ``example`` folder for demonstration purposes.
Currently _ngDialog_ contains two default themes that show how easily you can create your own. Check ``example`` folder for demonstration purposes.
## CDN
ngDialog is available for public on [cdnjs](http://cdnjs.com/libraries/ng-dialog). For example, please use following urls for version ``0.3.0``.
_ngDialog_ is available for public on [cdnjs](http://cdnjs.com/libraries/ng-dialog). For example, please use following urls for version ``0.3.0``.

@@ -366,2 +370,6 @@ ```html

## References
_ngDialog_ default styles are heavily inspired by awesome [Hubspot/Vex](https://github.com/HubSpot/vex) jQuery modals.
## License

@@ -368,0 +376,0 @@

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc