UNPKG

gaf-mobile

Version:

GAF mobile Web site

1 lines 3.15 kB
angular.module("snap",[]),function(){"use strict";var a=[1,6,0],b={full:a.join("."),major:a[0],minor:a[1],patch:a[2]};angular.module("snap").constant("SNAP_VERSION",b)}(),angular.module("snap").directive("snapClose",["$rootScope","snapRemote",function(a,b){"use strict";return{restrict:"A",link:function(c,d,e){d.bind("click",function(){b.close(c.$eval(e.snapId)),a.$digest()})}}}]),angular.module("snap").directive("snapContent",["SnapConstructor","snapRemote",function(a,b){"use strict";return{restrict:"AE",link:function(c,d,e){d.addClass("snap-content");var f={element:d[0]};angular.extend(f,b.globalOptions);var g=e.snapId;g&&(g=c.$eval(e.snapId)),angular.isDefined(e.snapOptions)&&e.snapOptions&&angular.extend(f,c.$eval(e.snapOptions)),b.register(new a(f),g),angular.isDefined(e.snapOptions)&&e.snapOptions&&c.$watch(e.snapOptions,function(a){b.getSnapper(g).then(function(b){b.settings(a)})},!0),c.$on("$destroy",function(){b.unregister(g)})}}}]),angular.module("snap").directive("snapDragger",["snapRemote",function(a){"use strict";return{restrict:"AE",link:function(b,c,d){var e=b.$eval(d.snapId);a.getSnapper(e).then(function(a){a.settings({dragger:c[0]})})}}}]),angular.module("snap").directive("snapDrawer",function(){"use strict";return{restrict:"AE",link:function(a,b,c){b.addClass("snap-drawer");var d=b.parent(),e=!0;for(b.addClass("right"===c.snapDrawer?"snap-drawer-right":"snap-drawer-left");d.length;)d.hasClass("snap-drawers")&&(e=!1),d=d.parent();e&&b.wrap('<div class="snap-drawers" />')}}}),angular.module("snap").directive("snapDrawers",function(){"use strict";return{restrict:"AE",compile:function(a){a.addClass("snap-drawers")}}}),angular.module("snap").directive("snapToggle",["$rootScope","snapRemote",function(a,b){"use strict";return{restrict:"A",link:function(c,d,e){var f=e.snapId,g=e.snapToggle||"left";if(f&&(f=c.$eval(f)),!e.snapUnsafe){var h=!1;d.bind("mousedown",function(a){h=!0,a.stopImmediatePropagation()}),d.bind("mouseup",function(a){h&&a.stopImmediatePropagation(),h=!1})}d.bind("click",function(){b.toggle(g,f),a.$digest()})}}}]),angular.module("snap").provider("SnapConstructor",function(){"use strict";var a=window.Snap;this.use=function(b){a=b},this.$get=function(){return a}}),angular.module("snap").provider("snapRemote",function(){"use strict";var a=this;return this.globalOptions={},this.$get=["$q",function(b){var c,d,e={},f="__DEFAULT_SNAPPER_ID__",g={};return g.globalOptions=a.globalOptions,g.getSnapper=function(a){return a=a||f,e.hasOwnProperty(a)||c(a),e[a].deferred.promise},g.register=function(a,b){b=b||f,e.hasOwnProperty(b)||c(b),e[b].isResolved&&c(b),d(a,b)},g.unregister=function(a){a=a||f,e.hasOwnProperty(a)&&delete e[a]},g.toggle=function(a,b){b=b||f,g.getSnapper(b).then(function(c){a===c.state().state?g.close(b):g.open(a,b)})},g.open=function(a,b){b=b||f,g.getSnapper(b).then(function(b){b.open(a)})},g.close=function(a){a=a||f,g.getSnapper(a).then(function(a){a.close()})},g.expand=function(a,b){b=b||f,g.getSnapper(b).then(function(b){b.expand(a)})},c=function(a){e[a]={deferred:b.defer(),isResolved:!1}},d=function(a,b){e[b].deferred.resolve(a),e[b].isResolved=!0},g}],this});