diff --git a/dist/angular.panels.min.css b/dist/angular.panels.min.css index 844d7a8..d80f48b 100644 --- a/dist/angular.panels.min.css +++ b/dist/angular.panels.min.css @@ -1 +1 @@ -.dimming.open,.panels{display:block;position:fixed}.dimming{display:none}.dimming.open{background:#000;bottom:0;left:0;opacity:.8;right:0;top:0;z-index:1031}.overflow-hidden{overflow:hidden}.panels{-ms-scrollbar-face-color:#EEE;-ms-scrollbar-highlight-color:#555;-ms-scrollbar-shadow-color:#EEE;-ms-scrollbar-3dlight-color:#EEE;-ms-scrollbar-arrow-color:#EEE;-ms-scrollbar-track-color:#FFF;-ms-scrollbar-darkshadow-color:#EEE;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;background:#FFF;overflow-x:auto;overflow-y:auto;pointer-events:all;transition:.2s ease-in-out;z-index:1032}.panels::-webkit-scrollbar{width:5px}.panels::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.3)}.panels::-webkit-scrollbar-thumb:hover{background-color:rgba(0,0,0,.5)}.panels::-webkit-scrollbar-track{background-color:transparent}.panels.panel-bottom,.panels.panel-top{width:100%}.panels.panel-top.open{-moz-box-shadow:0 20px 80px 0 rgba(0,0,0,.7);-webkit-box-shadow:0 20px 80px 0 rgba(0,0,0,.7);box-shadow:0 20px 80px 0 rgba(0,0,0,.7)}.panels.panel-bottom.open{-moz-box-shadow:0 -20px 80px 0 rgba(0,0,0,.7);-webkit-box-shadow:0 -20px 80px 0 rgba(0,0,0,.7);box-shadow:0 -20px 80px 0 rgba(0,0,0,.7)}.panels.panel-left,.panels.panel-right{height:100%;top:0}.panels.panel-left.open{-moz-box-shadow:20px 0 80px 0 rgba(0,0,0,.7);-webkit-box-shadow:20px 0 80px 0 rgba(0,0,0,.7);box-shadow:20px 0 80px 0 rgba(0,0,0,.7)}.panels.panel-right.open{-moz-box-shadow:-20px 0 80px 0 rgba(0,0,0,.7);-webkit-box-shadow:-20px 0 80px 0 rgba(0,0,0,.7);box-shadow:-20px 0 80px 0 rgba(0,0,0,.7)} \ No newline at end of file +.dimming{display:none}.dimming.open,.panels{display:block;position:fixed}.dimming.open{background:#000;bottom:0;left:0;opacity:.8;right:0;top:0;z-index:1031}.overflow-hidden{overflow:hidden}.panels{-ms-scrollbar-face-color:#EEE;-ms-scrollbar-highlight-color:#555;-ms-scrollbar-shadow-color:#EEE;-ms-scrollbar-3dlight-color:#EEE;-ms-scrollbar-arrow-color:#EEE;-ms-scrollbar-track-color:#FFF;-ms-scrollbar-darkshadow-color:#EEE;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;background:#FFF;overflow-x:auto;overflow-y:auto;pointer-events:all;transition:.2s ease-in-out;z-index:1032}.panels::-webkit-scrollbar{width:5px}.panels::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.3)}.panels::-webkit-scrollbar-thumb:hover{background-color:rgba(0,0,0,.5)}.panels::-webkit-scrollbar-track{background-color:transparent}.panels.panel-bottom,.panels.panel-top{width:100%}.panels.panel-top.open{-moz-box-shadow:0 20px 80px 0 rgba(0,0,0,.7);-webkit-box-shadow:0 20px 80px 0 rgba(0,0,0,.7);box-shadow:0 20px 80px 0 rgba(0,0,0,.7)}.panels.panel-bottom.open{-moz-box-shadow:0 -20px 80px 0 rgba(0,0,0,.7);-webkit-box-shadow:0 -20px 80px 0 rgba(0,0,0,.7);box-shadow:0 -20px 80px 0 rgba(0,0,0,.7)}.panels.panel-left,.panels.panel-right{height:100%;top:0}.panels.panel-left.open{-moz-box-shadow:20px 0 80px 0 rgba(0,0,0,.7);-webkit-box-shadow:20px 0 80px 0 rgba(0,0,0,.7);box-shadow:20px 0 80px 0 rgba(0,0,0,.7)}.panels.panel-right.open{-moz-box-shadow:-20px 0 80px 0 rgba(0,0,0,.7);-webkit-box-shadow:-20px 0 80px 0 rgba(0,0,0,.7);box-shadow:-20px 0 80px 0 rgba(0,0,0,.7)} \ No newline at end of file diff --git a/dist/angular.panels.min.js b/dist/angular.panels.min.js index 5022123..6177d22 100644 --- a/dist/angular.panels.min.js +++ b/dist/angular.panels.min.js @@ -1 +1 @@ -!function(e){"use strict";var n=e.module("angular.panels",[]);n.constant("panelList",{}),n.provider("panels",["panelList",function(n){this.add=function(e){return e&&e.id&&(n[e.id]=e),this},this.$get=["$parse",function(t){var o=e.element(document.body),s={opened:void 0,open:function(e){if(o.addClass("overflow-hidden"),s.opened&&s.close(s.opened),e&&n[e]){var i=n[e],l=i.element,a=l.scope(),c=t(i.openCallbackFunction)(a);l.attr("style",s.style(i,!0)),"function"==typeof c&&c()}s.opened=e},close:function(){if(o.removeClass("overflow-hidden"),s.opened&&n[s.opened]){var e=n[s.opened],i=e.element,l=i.scope(),a=t(e.closeCallbackFunction)(l);i.attr("style",s.style(e,!1)),"function"==typeof a&&a()}s.opened=void 0},style:function(e,n){switch(e.position){case"top":case"bottom":return e.position+":"+(n?"0;":"-"+e.size+";")+"height:"+e.size;case"left":case"right":return e.position+":"+(n?"0;":"-"+e.size+";")+"width:"+e.size}}};return s}]}]),n.directive("panels",["$http","$compile","panels","panelList",function(n,t,o,s){return{restrict:"A",scope:{},controller:["$scope",function(e){e.panels=o}],link:function(i,l,a){e.forEach(s,function(a,c){n.get(a.templateUrl).success(function(n){var n='
'+n+"
",p=t(n)(i);l.append(p),s[c].element=e.element(p)})}),l.append(t('
')(i))}}}])}(angular); \ No newline at end of file +!function(e){"use strict";var n=e.module("angular.panels",[]);n.constant("panelList",{}),n.provider("panels",["panelList",function(n){this.add=function(e){return e&&e.id&&(e.hasOwnProperty("dim")||(e.dim=!0),n[e.id]=e),this},this.$get=["$parse",function(t){var o=e.element(document.body),i={opened:void 0,open:function(e){if(o.addClass("overflow-hidden"),i.opened&&i.close(i.opened),e&&n[e]){var s=n[e],a=s.element,l=a.scope(),c=t(s.openCallbackFunction)(l);a.attr("style",i.style(s,!0)),"function"==typeof c&&c(),i.dim=s.dim}i.opened=e},close:function(){if(o.removeClass("overflow-hidden"),i.opened&&n[i.opened]){var e=n[i.opened],s=e.element,a=s.scope(),l=t(e.closeCallbackFunction)(a);s.attr("style",i.style(e,!1)),"function"==typeof l&&l()}i.opened=void 0,i.dim=void 0},style:function(e,n){switch(e.position){case"top":case"bottom":return e.position+":"+(n?"0;":"-"+e.size+";")+"height:"+e.size;case"left":case"right":return e.position+":"+(n?"0;":"-"+e.size+";")+"width:"+e.size}}};return i}]}]),n.directive("panels",["$http","$templateCache","$compile","panels","panelList",function(n,t,o,i,s){return{restrict:"A",scope:{},controller:["$scope",function(e){e.panels=i}],link:function(a,l,c){e.forEach(s,function(c,p){n.get(c.templateUrl,{cache:t}).success(function(n){var n='
'+n+"
",t=o(n)(a);l.append(t),s[p].element=e.element(t)})}),l.append(o('
')(a))}}}])}(angular); \ No newline at end of file diff --git a/index.js b/index.js new file mode 100644 index 0000000..c70f04b --- /dev/null +++ b/index.js @@ -0,0 +1,2 @@ +require('./angular.panels'); +module.exports = angular.panels; \ No newline at end of file diff --git a/package.json b/package.json index 27a23b9..95a9ecb 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,8 @@ { "name": "angular.panels", - "version": "1.0.0", + "version": "1.0.1", "description": "Pure AngularJS based SidePanels (no jQuery)", + "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, diff --git a/src/angular.panels.js b/src/angular.panels.js index 2aef134..a5669a5 100644 --- a/src/angular.panels.js +++ b/src/angular.panels.js @@ -18,7 +18,11 @@ //add panel if (panel && panel.id) { + if(!panel.hasOwnProperty('dim')){ + panel.dim = true; + } panelList[panel.id] = panel; + } //for chaining @@ -53,10 +57,13 @@ panelElement.attr('style', panelsFactory.style(panel, true)); //if type of closeAction is function.. typeof openCallbackFunction == 'function' && openCallbackFunction(); + + panelsFactory.dim = panel.dim; } //open panel panelsFactory.opened = id; + }, //panel close method @@ -79,6 +86,7 @@ //close panel panelsFactory.opened = undefined; + panelsFactory.dim = undefined; }, //panel style @@ -132,9 +140,9 @@ }); //add dim - element.append($compile('
')(scope)); + element.append($compile('
')(scope)); } - } + }; }]); })(angular);