Skip to content
Snippets Groups Projects
Commit cccccdfb authored by Kawtar Laariche's avatar Kawtar Laariche
Browse files

#26: add resources folder

parent a915e542
No related branches found
No related tags found
1 merge request!15Feautres/design studio
Showing
with 6120 additions and 0 deletions
This diff is collapsed.
/*
AngularJS v1.5.5
(c) 2010-2016 Google, Inc. http://angularjs.org
License: MIT
*/
(function(t,p){'use strict';var b="BUTTON A INPUT TEXTAREA SELECT DETAILS SUMMARY".split(" "),l=function(a,c){if(-1!==c.indexOf(a[0].nodeName))return!0};p.module("ngAria",["ng"]).provider("$aria",function(){function a(a,b,m,h){return function(d,f,e){var q=e.$normalize(b);!c[q]||l(f,m)||e[q]||d.$watch(e[a],function(a){a=h?!a:!!a;f.attr(b,a)})}}var c={ariaHidden:!0,ariaChecked:!0,ariaReadonly:!0,ariaDisabled:!0,ariaRequired:!0,ariaInvalid:!0,ariaValue:!0,tabindex:!0,bindKeypress:!0,bindRoleForClick:!0};
this.config=function(a){c=p.extend(c,a)};this.$get=function(){return{config:function(a){return c[a]},$$watchExpr:a}}}).directive("ngShow",["$aria",function(a){return a.$$watchExpr("ngShow","aria-hidden",[],!0)}]).directive("ngHide",["$aria",function(a){return a.$$watchExpr("ngHide","aria-hidden",[],!1)}]).directive("ngValue",["$aria",function(a){return a.$$watchExpr("ngValue","aria-checked",b,!1)}]).directive("ngChecked",["$aria",function(a){return a.$$watchExpr("ngChecked","aria-checked",b,!1)}]).directive("ngReadonly",
["$aria",function(a){return a.$$watchExpr("ngReadonly","aria-readonly",b,!1)}]).directive("ngRequired",["$aria",function(a){return a.$$watchExpr("ngRequired","aria-required",b,!1)}]).directive("ngModel",["$aria",function(a){function c(c,h,d,f){return a.config(h)&&!d.attr(c)&&(f||!l(d,b))}function g(a,c){return!c.attr("role")&&c.attr("type")===a&&"INPUT"!==c[0].nodeName}function k(a,c){var d=a.type,f=a.role;return"checkbox"===(d||f)||"menuitemcheckbox"===f?"checkbox":"radio"===(d||f)||"menuitemradio"===
f?"radio":"range"===d||"progressbar"===f||"slider"===f?"range":""}return{restrict:"A",require:"ngModel",priority:200,compile:function(b,h){var d=k(h,b);return{pre:function(a,e,c,b){"checkbox"===d&&(b.$isEmpty=function(a){return!1===a})},post:function(f,e,b,n){function h(){return n.$modelValue}function k(a){e.attr("aria-checked",b.value==n.$viewValue)}function l(){e.attr("aria-checked",!n.$isEmpty(n.$viewValue))}var m=c("tabindex","tabindex",e,!1);switch(d){case "radio":case "checkbox":g(d,e)&&e.attr("role",
d);c("aria-checked","ariaChecked",e,!1)&&f.$watch(h,"radio"===d?k:l);m&&e.attr("tabindex",0);break;case "range":g(d,e)&&e.attr("role","slider");if(a.config("ariaValue")){var p=!e.attr("aria-valuemin")&&(b.hasOwnProperty("min")||b.hasOwnProperty("ngMin")),r=!e.attr("aria-valuemax")&&(b.hasOwnProperty("max")||b.hasOwnProperty("ngMax")),s=!e.attr("aria-valuenow");p&&b.$observe("min",function(a){e.attr("aria-valuemin",a)});r&&b.$observe("max",function(a){e.attr("aria-valuemax",a)});s&&f.$watch(h,function(a){e.attr("aria-valuenow",
a)})}m&&e.attr("tabindex",0)}!b.hasOwnProperty("ngRequired")&&n.$validators.required&&c("aria-required","ariaRequired",e,!1)&&b.$observe("required",function(){e.attr("aria-required",!!b.required)});c("aria-invalid","ariaInvalid",e,!0)&&f.$watch(function(){return n.$invalid},function(a){e.attr("aria-invalid",!!a)})}}}}}]).directive("ngDisabled",["$aria",function(a){return a.$$watchExpr("ngDisabled","aria-disabled",b,!1)}]).directive("ngMessages",function(){return{restrict:"A",require:"?ngMessages",
link:function(a,b,g,k){b.attr("aria-live")||b.attr("aria-live","assertive")}}}).directive("ngClick",["$aria","$parse",function(a,c){return{restrict:"A",compile:function(g,k){var m=c(k.ngClick,null,!0);return function(c,d,f){if(!l(d,b)&&(a.config("bindRoleForClick")&&!d.attr("role")&&d.attr("role","button"),a.config("tabindex")&&!d.attr("tabindex")&&d.attr("tabindex",0),a.config("bindKeypress")&&!f.ngKeypress))d.on("keypress",function(a){function b(){m(c,{$event:a})}var d=a.which||a.keyCode;32!==d&&
13!==d||c.$apply(b)})}}}}]).directive("ngDblclick",["$aria",function(a){return function(c,g,k){!a.config("tabindex")||g.attr("tabindex")||l(g,b)||g.attr("tabindex",0)}}])})(window,window.angular);
//# sourceMappingURL=angular-aria.min.js.map
(function(window, undefined) {
'use strict';
/* istanbul ignore next */
//http://stackoverflow.com/questions/9267899/arraybuffer-to-base64-encoded-string
window._arrayBufferToBase64 = function(buffer) {
var binary = '';
var bytes = new Uint8Array(buffer);
var len = bytes.byteLength;
for (var i = 0; i < len; i += 1) {
binary += String.fromCharCode(bytes[i]);
}
return window.btoa(binary);
};
var mod = window.angular.module('naif.base64', []);
mod.directive('baseSixtyFourInput', [
'$window',
'$q',
function($window, $q) {
var isolateScope = {
onChange: '&',
onAfterValidate: '&',
parser: '&'
};
var FILE_READER_EVENTS = ['onabort', 'onerror', 'onloadstart', 'onloadend', 'onprogress', 'onload'];
FILE_READER_EVENTS.forEach(function(e) {
isolateScope[e] = '&';
});
return {
restrict: 'A',
require: 'ngModel',
scope: isolateScope,
link: function(scope, elem, attrs, ngModel) {
var rawFiles = [];
var fileObjects = [];
/* istanbul ignore if */
if (!ngModel) {
return;
}
// VALIDATIONS =========================================================
function _maxnum(val) {
if (attrs.maxnum && attrs.multiple && val) {
var valid = val.length <= parseInt(attrs.maxnum);
ngModel.$setValidity('maxnum', valid);
}
return val;
}
function _minnum(val) {
if (attrs.minnum && attrs.multiple && val) {
var valid = val.length >= parseInt(attrs.minnum);
ngModel.$setValidity('minnum', valid);
}
return val;
}
function _maxsize(val) {
var valid = true;
if (attrs.maxsize && val) {
var max = parseFloat(attrs.maxsize) * 1000;
if (attrs.multiple) {
for (var i = 0; i < val.length; i++) {
var file = val[i];
if (file.filesize > max) {
valid = false;
break;
}
}
} else {
valid = val.filesize <= max;
}
ngModel.$setValidity('maxsize', valid);
}
return val;
}
function _minsize(val) {
var valid = true;
var min = parseFloat(attrs.minsize) * 1000;
if (attrs.minsize && val) {
if (attrs.multiple) {
for (var i = 0; i < val.length; i++) {
var file = val[i];
if (file.filesize < min) {
valid = false;
break;
}
}
} else {
valid = val.filesize >= min;
}
ngModel.$setValidity('minsize', valid);
}
return val;
}
function _accept(val) {
var valid = true;
var regExp, exp, fileExt;
if (attrs.accept) {
exp = attrs.accept.trim().replace(/[,\s]+/gi, "|").replace(/\./g, "\\.").replace(/\/\*/g, "/.*");
regExp = new RegExp(exp);
}
if (attrs.accept && val) {
if (attrs.multiple) {
for (var i = 0; i < val.length; i++) {
var file = val[i];
fileExt = "." + file.filename.split('.').pop();
valid = regExp.test(file.filetype) || regExp.test(fileExt);
if (!valid) {
break;
}
}
} else {
fileExt = "." + val.filename.split('.').pop();
valid = regExp.test(val.filetype) || regExp.test(fileExt);
}
ngModel.$setValidity('accept', valid);
}
return val;
}
//end validations ===============
function _setViewValue() {
var newVal = attrs.multiple ? fileObjects : fileObjects[0];
ngModel.$setViewValue(newVal);
_maxsize(newVal);
_minsize(newVal);
_maxnum(newVal);
_minnum(newVal);
_accept(newVal);
}
function _attachHandlerForEvent(eventName, handler, fReader, file, fileObject) {
fReader[eventName] = function(e) {
handler()(e, fReader, file, rawFiles, fileObjects, fileObject);
};
}
function _readerOnLoad(fReader, file, fileObject) {
return function(e) {
var buffer = e.target.result;
var promise;
// do not convert the image to base64 if it exceeds the maximum
// size to prevent the browser from freezing
var exceedsMaxSize = attrs.maxsize && file.size > attrs.maxsize * 1024;
if (attrs.doNotParseIfOversize !== undefined && exceedsMaxSize) {
fileObject.base64 = null;
} else {
fileObject.base64 = $window._arrayBufferToBase64(buffer);
}
if (attrs.parser) {
promise = $q.when(scope.parser()(file, fileObject));
} else {
promise = $q.when(fileObject);
}
promise.then(function(fileObj) {
fileObjects.push(fileObj);
// fulfill the promise here.
file.deferredObj.resolve();
});
if (attrs.onload) {
if (scope.onload && typeof scope.onload() === "function") {
scope.onload()(e, fReader, file, rawFiles, fileObjects, fileObject);
} else {
scope.onload(e, rawFiles);
}
}
};
}
function _attachEventHandlers(fReader, file, fileObject) {
for (var i = FILE_READER_EVENTS.length - 1; i >= 0; i--) {
var e = FILE_READER_EVENTS[i];
if (attrs[e] && e !== 'onload') { // don't attach handler to onload yet
_attachHandlerForEvent(e, scope[e], fReader, file, fileObject);
}
}
fReader.onload = _readerOnLoad(fReader, file, fileObject);
}
function _readFiles() {
var promises = [];
var i;
for (i = rawFiles.length - 1; i >= 0; i--) {
// append file a new promise, that waits until resolved
rawFiles[i].deferredObj = $q.defer();
promises.push(rawFiles[i].deferredObj.promise);
// TODO: Make sure all promises are resolved even during file reader error, otherwise view value wont be updated
}
// set view value once all files are read
$q.all(promises).then(_setViewValue);
for (i = rawFiles.length - 1; i >= 0; i--) {
var reader = new $window.FileReader();
var file = rawFiles[i];
var fileObject = {};
fileObject.filetype = file.type;
fileObject.filename = file.name;
fileObject.filesize = file.size;
_attachEventHandlers(reader, file, fileObject);
reader.readAsArrayBuffer(file);
}
}
function _onChange(e) {
if (attrs.onChange) {
if (scope.onChange && typeof scope.onChange() === "function") {
scope.onChange()(e, rawFiles);
} else {
scope.onChange(e, rawFiles);
}
}
}
function _onAfterValidate(e) {
if (attrs.onAfterValidate) {
// wait for all promises, in rawFiles,
// then call onAfterValidate
var promises = [];
for (var i = rawFiles.length - 1; i >= 0; i--) {
promises.push(rawFiles[i].deferredObj.promise);
}
$q.all(promises).then(function() {
if (scope.onAfterValidate && typeof scope.onAfterValidate() === "function") {
scope.onAfterValidate()(e, fileObjects, rawFiles);
} else {
scope.onAfterValidate(e, fileObjects, rawFiles);
}
});
}
}
ngModel.$isEmpty = function(val) {
return !val || (angular.isArray(val) ? val.length === 0 : !val.base64);
};
// http://stackoverflow.com/questions/1703228/how-can-i-clear-an-html-file-input-with-javascript
scope._clearInput = function() {
elem[0].value = '';
};
scope.$watch(function() {
return ngModel.$viewValue;
}, function(val) {
if (ngModel.$isEmpty(val) && ngModel.$dirty) {
scope._clearInput();
// Remove validation errors
ngModel.$setValidity('maxnum', true);
ngModel.$setValidity('minnum', true);
ngModel.$setValidity('maxsize', true);
ngModel.$setValidity('minsize', true);
ngModel.$setValidity('accept', true);
}
});
elem.on('change', function(e) {
fileObjects = [];
fileObjects = angular.copy(fileObjects);
if (e.target.files.length === 0) {
rawFiles = [];
_setViewValue();
} else {
rawFiles = e.target.files; // use event target so we can mock the files from test
_readFiles();
_onChange(e);
_onAfterValidate(e);
}
if (attrs.allowSameFile) {
scope._clearInput();
}
});
}
};
}
]);
})(window);
This diff is collapsed.
/**
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
* IN THE SOFTWARE.
*/
/**
* Implementing Drag and Drop functionality in AngularJS is easier than ever.
* Demo: http://codef0rmer.github.com/angular-dragdrop/
*
* @version 1.0.13
*
* (c) 2013 Amit Gharat a.k.a codef0rmer <amit.2006.it@gmail.com> - amitgharat.wordpress.com
*/
(function (window, angular, $, undefined) {
'use strict';
var jqyoui = angular.module('ngDragDrop', []).service('ngDragDropService', ['$timeout', '$parse', '$q', function($timeout, $parse, $q) {
this.draggableScope = null;
this.droppableScope = null;
$('head').prepend('<style type="text/css">@charset "UTF-8";.angular-dragdrop-hide{display: none !important;}</style>');
this.callEventCallback = function (scope, callbackName, event, ui) {
if (!callbackName) return;
var objExtract = extract(callbackName),
callback = objExtract.callback,
constructor = objExtract.constructor,
args = [event, ui].concat(objExtract.args);
// call either $scoped method i.e. $scope.dropCallback or constructor's method i.e. this.dropCallback.
// Removing scope.$apply call that was performance intensive (especially onDrag) and does not require it
// always. So call it within the callback if needed.
return (scope[callback] || scope[constructor][callback]).apply(scope[callback] ? scope : scope[constructor], args);
function extract(callbackName) {
var atStartBracket = callbackName.indexOf('(') !== -1 ? callbackName.indexOf('(') : callbackName.length,
atEndBracket = callbackName.lastIndexOf(')') !== -1 ? callbackName.lastIndexOf(')') : callbackName.length,
args = callbackName.substring(atStartBracket + 1, atEndBracket), // matching function arguments inside brackets
constructor = callbackName.indexOf('.') !== -1 ? callbackName.substr(0, callbackName.indexOf('.')) : null; // matching a string upto a dot to check ctrl as syntax
constructor = scope[constructor] && typeof scope[constructor].constructor === 'function' ? constructor : null;
return {
callback: callbackName.substring(constructor && constructor.length + 1 || 0, atStartBracket),
args: $.map(args && args.split(',') || [], function(item) { return [$parse(item)(scope)]; }),
constructor: constructor
}
}
};
this.invokeDrop = function ($draggable, $droppable, event, ui) {
var dragModel = '',
dropModel = '',
dragSettings = {},
dropSettings = {},
jqyoui_pos = null,
dragItem = {},
dropItem = {},
dragModelValue,
dropModelValue,
$droppableDraggable = null,
droppableScope = this.droppableScope,
draggableScope = this.draggableScope,
$helper = null,
promises = [],
temp;
dragModel = $draggable.ngattr('ng-model');
dropModel = $droppable.ngattr('ng-model');
dragModelValue = draggableScope.$eval(dragModel);
dropModelValue = droppableScope.$eval(dropModel);
$droppableDraggable = $droppable.find('[jqyoui-draggable]:last,[data-jqyoui-draggable]:last');
dropSettings = droppableScope.$eval($droppable.attr('jqyoui-droppable') || $droppable.attr('data-jqyoui-droppable')) || [];
dragSettings = draggableScope.$eval($draggable.attr('jqyoui-draggable') || $draggable.attr('data-jqyoui-draggable')) || [];
// Helps pick up the right item
dragSettings.index = this.fixIndex(draggableScope, dragSettings, dragModelValue);
dropSettings.index = this.fixIndex(droppableScope, dropSettings, dropModelValue);
jqyoui_pos = angular.isArray(dragModelValue) ? dragSettings.index : null;
dragItem = angular.isArray(dragModelValue) ? dragModelValue[jqyoui_pos] : dragModelValue;
if (dragSettings.deepCopy) {
dragItem = angular.copy(dragItem);
}
if (angular.isArray(dropModelValue) && dropSettings && dropSettings.index !== undefined) {
dropItem = dropModelValue[dropSettings.index];
} else if (!angular.isArray(dropModelValue)) {
dropItem = dropModelValue;
} else {
dropItem = {};
}
if (dropSettings.deepCopy) {
dropItem = angular.copy(dropItem);
}
if (dragSettings.beforeDrop) {
promises.push(this.callEventCallback(draggableScope, dragSettings.beforeDrop, event, ui));
}
$q.all(promises).then(angular.bind(this, function() {
if (dragSettings.insertInline && dragModel === dropModel) {
if (dragSettings.index > dropSettings.index) {
temp = dragModelValue[dragSettings.index];
for (var i = dragSettings.index; i > dropSettings.index; i--) {
dropModelValue[i] = angular.copy(dropModelValue[i - 1]);
dropModelValue[i - 1] = {};
dropModelValue[i][dragSettings.direction] = 'left';
}
dropModelValue[dropSettings.index] = temp;
} else {
temp = dragModelValue[dragSettings.index];
for (var i = dragSettings.index; i < dropSettings.index; i++) {
dropModelValue[i] = angular.copy(dropModelValue[i + 1]);
dropModelValue[i + 1] = {};
dropModelValue[i][dragSettings.direction] = 'right';
}
dropModelValue[dropSettings.index] = temp;
}
this.callEventCallback(droppableScope, dropSettings.onDrop, event, ui);
} else if (dragSettings.animate === true) {
// be nice with absolutely positioned brethren :-)
$helper = $draggable.clone();
$helper.css({'position': 'absolute'}).css($draggable.offset());
$('body').append($helper);
$draggable.addClass('angular-dragdrop-hide');
this.move($helper, $droppableDraggable.length > 0 ? $droppableDraggable : $droppable, null, 'fast', dropSettings, function() { $helper.remove(); });
this.move($droppableDraggable.length > 0 && !dropSettings.multiple ? $droppableDraggable : [], $draggable.parent('[jqyoui-droppable],[data-jqyoui-droppable]'), jqyoui.startXY, 'fast', dropSettings, angular.bind(this, function() {
$timeout(angular.bind(this, function() {
// Do not move this into move() to avoid flickering issue
$draggable.css({'position': 'relative', 'left': '', 'top': ''}).removeClass('angular-dragdrop-hide');
// Angular v1.2 uses ng-hide to hide an element not display property
// so we've to manually remove display:none set in this.move()
$droppableDraggable.css({'position': 'relative', 'left': '', 'top': '', 'display': $droppableDraggable.css('display') === 'none' ? '' : $droppableDraggable.css('display')});
this.mutateDraggable(draggableScope, dropSettings, dragSettings, dragModel, dropModel, dropItem, $draggable);
this.mutateDroppable(droppableScope, dropSettings, dragSettings, dropModel, dragItem, jqyoui_pos);
this.callEventCallback(droppableScope, dropSettings.onDrop, event, ui);
}));
}));
} else {
$timeout(angular.bind(this, function() {
this.mutateDraggable(draggableScope, dropSettings, dragSettings, dragModel, dropModel, dropItem, $draggable);
this.mutateDroppable(droppableScope, dropSettings, dragSettings, dropModel, dragItem, jqyoui_pos);
this.callEventCallback(droppableScope, dropSettings.onDrop, event, ui);
}));
}
})).finally(angular.bind(this, function() {
this.restore($draggable);
}));
};
this.move = function($fromEl, $toEl, toPos, duration, dropSettings, callback) {
if ($fromEl.length === 0) {
if (callback) {
window.setTimeout(function() {
callback();
}, 300);
}
return false;
}
var zIndex = $fromEl.css('z-index'),
fromPos = $fromEl[dropSettings.containment || 'offset'](),
displayProperty = $toEl.css('display'), // sometimes `display` is other than `block`
hadNgHideCls = $toEl.hasClass('ng-hide'),
hadDNDHideCls = $toEl.hasClass('angular-dragdrop-hide');
if (toPos === null && $toEl.length > 0) {
if (($toEl.attr('jqyoui-draggable') || $toEl.attr('data-jqyoui-draggable')) !== undefined && $toEl.ngattr('ng-model') !== undefined && $toEl.is(':visible') && dropSettings && dropSettings.multiple) {
toPos = $toEl[dropSettings.containment || 'offset']();
if (dropSettings.stack === false) {
toPos.left+= $toEl.outerWidth(true);
} else {
toPos.top+= $toEl.outerHeight(true);
}
} else {
// Angular v1.2 uses ng-hide to hide an element
// so we've to remove it in order to grab its position
if (hadNgHideCls) $toEl.removeClass('ng-hide');
if (hadDNDHideCls) $toEl.removeClass('angular-dragdrop-hide');
toPos = $toEl.css({'visibility': 'hidden', 'display': 'block'})[dropSettings.containment || 'offset']();
$toEl.css({'visibility': '','display': displayProperty});
}
}
$fromEl.css({'position': 'absolute', 'z-index': 9999})
.css(fromPos)
.animate(toPos, duration, function() {
// Angular v1.2 uses ng-hide to hide an element
// and as we remove it above, we've to put it back to
// hide the element (while swapping) if it was hidden already
// because we remove the display:none in this.invokeDrop()
if (hadNgHideCls) $toEl.addClass('ng-hide');
if (hadDNDHideCls) $toEl.addClass('angular-dragdrop-hide');
$fromEl.css('z-index', zIndex);
if (callback) callback();
});
};
this.mutateDroppable = function(scope, dropSettings, dragSettings, dropModel, dragItem, jqyoui_pos) {
var dropModelValue = scope.$eval(dropModel);
scope.dndDragItem = dragItem;
if (angular.isArray(dropModelValue)) {
if (dropSettings && dropSettings.index >= 0) {
dropModelValue[dropSettings.index] = dragItem;
} else {
dropModelValue.push(dragItem);
}
if (dragSettings && dragSettings.placeholder === true) {
dropModelValue[dropModelValue.length - 1]['jqyoui_pos'] = jqyoui_pos;
}
} else {
$parse(dropModel + ' = dndDragItem')(scope);
if (dragSettings && dragSettings.placeholder === true) {
dropModelValue['jqyoui_pos'] = jqyoui_pos;
}
}
};
this.mutateDraggable = function(scope, dropSettings, dragSettings, dragModel, dropModel, dropItem, $draggable) {
var isEmpty = angular.equals(dropItem, {}) || !dropItem,
dragModelValue = scope.$eval(dragModel);
scope.dndDropItem = dropItem;
if (dragSettings && dragSettings.placeholder) {
if (dragSettings.placeholder != 'keep'){
if (angular.isArray(dragModelValue) && dragSettings.index !== undefined) {
dragModelValue[dragSettings.index] = dropItem;
} else {
$parse(dragModel + ' = dndDropItem')(scope);
}
}
} else {
if (angular.isArray(dragModelValue)) {
if (isEmpty) {
if (dragSettings && ( dragSettings.placeholder !== true && dragSettings.placeholder !== 'keep' )) {
dragModelValue.splice(dragSettings.index, 1);
}
} else {
dragModelValue[dragSettings.index] = dropItem;
}
} else {
// Fix: LIST(object) to LIST(array) - model does not get updated using just scope[dragModel] = {...}
// P.S.: Could not figure out why it happened
$parse(dragModel + ' = dndDropItem')(scope);
if (scope.$parent) {
$parse(dragModel + ' = dndDropItem')(scope.$parent);
}
}
}
this.restore($draggable);
};
this.restore = function($draggable) {
$draggable.css({'z-index': '', 'left': '', 'top': ''});
};
this.fixIndex = function(scope, settings, modelValue) {
if (settings.applyFilter && angular.isArray(modelValue) && modelValue.length > 0) {
var dragModelValueFiltered = scope[settings.applyFilter](),
lookup = dragModelValueFiltered[settings.index],
actualIndex = undefined;
modelValue.forEach(function(item, i) {
if (angular.equals(item, lookup)) {
actualIndex = i;
}
});
return actualIndex;
}
return settings.index;
};
}]).directive('jqyouiDraggable', ['ngDragDropService', function(ngDragDropService) {
return {
require: '?jqyouiDroppable',
restrict: 'A',
link: function(scope, elem, attrs) {
var element = $(elem);
var dragSettings, jqyouiOptions, zIndex, killWatcher;
var updateDraggable = function(newValue, oldValue) {
if (newValue) {
dragSettings = scope.$eval(element.attr('jqyoui-draggable') || element.attr('data-jqyoui-draggable')) || {};
jqyouiOptions = scope.$eval(attrs.jqyouiOptions) || {};
element
.draggable({disabled: false})
.draggable(jqyouiOptions)
.draggable({
start: function(event, ui) {
ngDragDropService.draggableScope = scope;
zIndex = $(jqyouiOptions.helper ? ui.helper : this).css('z-index');
$(jqyouiOptions.helper ? ui.helper : this).css('z-index', 9999);
jqyoui.startXY = $(this)[dragSettings.containment || 'offset']();
ngDragDropService.callEventCallback(scope, dragSettings.onStart, event, ui);
},
stop: function(event, ui) {
$(jqyouiOptions.helper ? ui.helper : this).css('z-index', zIndex);
ngDragDropService.callEventCallback(scope, dragSettings.onStop, event, ui);
},
drag: function(event, ui) {
ngDragDropService.callEventCallback(scope, dragSettings.onDrag, event, ui);
}
});
} else {
element.draggable({disabled: true});
}
if (killWatcher && angular.isDefined(newValue) && (angular.equals(attrs.drag, 'true') || angular.equals(attrs.drag, 'false'))) {
killWatcher();
killWatcher = null;
}
};
killWatcher = scope.$watch(function() { return scope.$eval(attrs.drag); }, updateDraggable);
updateDraggable();
element.on('$destroy', function() {
element.draggable({disabled: true}).draggable('destroy');
});
}
};
}]).directive('jqyouiDroppable', ['ngDragDropService', '$q', function(ngDragDropService, $q) {
return {
restrict: 'A',
priority: 1,
link: function(scope, elem, attrs) {
var element = $(elem);
var dropSettings, jqyouiOptions, killWatcher;
var updateDroppable = function(newValue, oldValue) {
if (newValue) {
dropSettings = scope.$eval($(element).attr('jqyoui-droppable') || $(element).attr('data-jqyoui-droppable')) || {};
jqyouiOptions = scope.$eval(attrs.jqyouiOptions) || {};
element
.droppable({disabled: false})
.droppable(jqyouiOptions)
.droppable({
over: function(event, ui) {
ngDragDropService.callEventCallback(scope, dropSettings.onOver, event, ui);
},
out: function(event, ui) {
ngDragDropService.callEventCallback(scope, dropSettings.onOut, event, ui);
},
drop: function(event, ui) {
var beforeDropPromise = null;
if (dropSettings.beforeDrop) {
beforeDropPromise = ngDragDropService.callEventCallback(scope, dropSettings.beforeDrop, event, ui);
} else {
beforeDropPromise = (function() {
var deferred = $q.defer();
deferred.resolve();
return deferred.promise;
})();
}
beforeDropPromise.then(angular.bind(this, function() {
if ($(ui.draggable).ngattr('ng-model') && attrs.ngModel) {
ngDragDropService.droppableScope = scope;
ngDragDropService.invokeDrop($(ui.draggable), $(this), event, ui);
} else {
ngDragDropService.callEventCallback(scope, dropSettings.onDrop, event, ui);
}
}), function() {
ui.draggable.animate({left: '', top: ''}, jqyouiOptions.revertDuration || 0);
});
}
});
} else {
element.droppable({disabled: true});
}
if (killWatcher && angular.isDefined(newValue) && (angular.equals(attrs.drop, 'true') || angular.equals(attrs.drop, 'false'))) {
killWatcher();
killWatcher = null;
}
};
killWatcher = scope.$watch(function() { return scope.$eval(attrs.drop); }, updateDroppable);
updateDroppable();
element.on('$destroy', function() {
element.droppable({disabled: true}).droppable('destroy');
});
}
};
}]);
$.fn.ngattr = function(name, value) {
var element = this[0];
return element.getAttribute(name) || element.getAttribute('data-' + name);
};
})(window, window.angular, window.jQuery);
(function() {
// Create all modules and define dependencies to make sure they exist
// and are loaded in the correct order to satisfy dependency injection
// before all nested files are concatenated by Grunt
// Modules
angular.module('angular-jwt',
[
'angular-jwt.options',
'angular-jwt.interceptor',
'angular-jwt.jwt',
'angular-jwt.authManager'
]);
angular.module('angular-jwt.authManager', [])
.provider('authManager', function () {
this.$get = ["$rootScope", "$injector", "$location", "jwtHelper", "jwtInterceptor", "jwtOptions", function ($rootScope, $injector, $location, jwtHelper, jwtInterceptor, jwtOptions) {
var config = jwtOptions.getConfig();
function invokeToken(tokenGetter) {
var token = null;
if (Array.isArray(tokenGetter)) {
token = $injector.invoke(tokenGetter, this, {options: null});
} else {
token = tokenGetter();
}
return token;
}
function invokeRedirector(redirector) {
if (Array.isArray(redirector) || angular.isFunction(redirector)) {
return $injector.invoke(redirector, config, {});
} else {
throw new Error('unauthenticatedRedirector must be a function');
}
}
function isAuthenticated() {
var token = invokeToken(config.tokenGetter);
if (token) {
return !jwtHelper.isTokenExpired(token);
}
}
$rootScope.isAuthenticated = false;
function authenticate() {
$rootScope.isAuthenticated = true;
}
function unauthenticate() {
$rootScope.isAuthenticated = false;
}
function validateToken() {
var token = invokeToken(config.tokenGetter);
if (token) {
if (!jwtHelper.isTokenExpired(token)) {
authenticate();
} else {
$rootScope.$broadcast('tokenHasExpired', token);
}
}
}
function checkAuthOnRefresh() {
if ($injector.has('$transitions')) {
var $transitions = $injector.get('$transitions');
$transitions.onStart({}, validateToken);
} else {
$rootScope.$on('$locationChangeStart', validateToken);
}
}
function redirectWhenUnauthenticated() {
$rootScope.$on('unauthenticated', function () {
invokeRedirector(config.unauthenticatedRedirector);
unauthenticate();
});
}
function verifyRoute(event, next) {
if (!next) {
return false;
}
var routeData = (next.$$route) ? next.$$route : next.data;
if (routeData && routeData.requiresLogin === true && !isAuthenticated()) {
event.preventDefault();
invokeRedirector(config.unauthenticatedRedirector);
}
}
function verifyState(transition) {
var route = transition.to();
var $state = transition.router.stateService;
if (route && route.data && route.data.requiresLogin === true && !isAuthenticated()) {
return $state.target(config.loginPath);
}
}
if ($injector.has('$transitions')) {
var $transitions = $injector.get('$transitions');
$transitions.onStart({}, verifyState);
} else {
var eventName = ($injector.has('$state')) ? '$stateChangeStart' : '$routeChangeStart';
$rootScope.$on(eventName, verifyRoute);
}
return {
authenticate: authenticate,
unauthenticate: unauthenticate,
getToken: function(){ return invokeToken(config.tokenGetter); },
redirect: function() { return invokeRedirector(config.unauthenticatedRedirector); },
checkAuthOnRefresh: checkAuthOnRefresh,
redirectWhenUnauthenticated: redirectWhenUnauthenticated,
isAuthenticated: isAuthenticated
}
}]
});
angular.module('angular-jwt.interceptor', [])
.provider('jwtInterceptor', function() {
this.urlParam;
this.authHeader;
this.authPrefix;
this.whiteListedDomains;
this.tokenGetter;
var config = this;
this.$get = ["$q", "$injector", "$rootScope", "urlUtils", "jwtOptions", function($q, $injector, $rootScope, urlUtils, jwtOptions) {
var options = angular.extend({}, jwtOptions.getConfig(), config);
function isSafe (url) {
if (!urlUtils.isSameOrigin(url) && !options.whiteListedDomains.length) {
throw new Error('As of v0.1.0, requests to domains other than the application\'s origin must be white listed. Use jwtOptionsProvider.config({ whiteListedDomains: [<domain>] }); to whitelist.')
}
var hostname = urlUtils.urlResolve(url).hostname.toLowerCase();
for (var i = 0; i < options.whiteListedDomains.length; i++) {
var domain = options.whiteListedDomains[i];
var regexp = domain instanceof RegExp ? domain : new RegExp(domain, 'i');
if (hostname.match(regexp)) {
return true;
}
}
if (urlUtils.isSameOrigin(url)) {
return true;
}
return false;
}
return {
request: function (request) {
if (request.skipAuthorization || !isSafe(request.url)) {
return request;
}
if (options.urlParam) {
request.params = request.params || {};
// Already has the token in the url itself
if (request.params[options.urlParam]) {
return request;
}
} else {
request.headers = request.headers || {};
// Already has an Authorization header
if (request.headers[options.authHeader]) {
return request;
}
}
var tokenPromise = $q.when($injector.invoke(options.tokenGetter, this, {
options: request
}));
return tokenPromise.then(function(token) {
if (token) {
if (options.urlParam) {
request.params[options.urlParam] = token;
} else {
request.headers[options.authHeader] = options.authPrefix + token;
}
}
return request;
});
},
responseError: function (response) {
// handle the case where the user is not authenticated
if (response.status === 401) {
$rootScope.$broadcast('unauthenticated', response);
}
return $q.reject(response);
}
};
}]
});
angular.module('angular-jwt.jwt', [])
.service('jwtHelper', ["$window", function($window) {
this.urlBase64Decode = function(str) {
var output = str.replace(/-/g, '+').replace(/_/g, '/');
switch (output.length % 4) {
case 0: { break; }
case 2: { output += '=='; break; }
case 3: { output += '='; break; }
default: {
throw 'Illegal base64url string!';
}
}
return $window.decodeURIComponent(escape($window.atob(output))); //polyfill https://github.com/davidchambers/Base64.js
};
this.decodeToken = function(token) {
var parts = token.split('.');
if (parts.length !== 3) {
throw new Error('JWT must have 3 parts');
}
var decoded = this.urlBase64Decode(parts[1]);
if (!decoded) {
throw new Error('Cannot decode the token');
}
return angular.fromJson(decoded);
};
this.getTokenExpirationDate = function(token) {
var decoded = this.decodeToken(token);
if(typeof decoded.exp === "undefined") {
return null;
}
var d = new Date(0); // The 0 here is the key, which sets the date to the epoch
d.setUTCSeconds(decoded.exp);
return d;
};
this.isTokenExpired = function(token, offsetSeconds) {
var d = this.getTokenExpirationDate(token);
offsetSeconds = offsetSeconds || 0;
if (d === null) {
return false;
}
// Token expired?
return !(d.valueOf() > (new Date().valueOf() + (offsetSeconds * 1000)));
};
}]);
angular.module('angular-jwt.options', [])
.provider('jwtOptions', function() {
var globalConfig = {};
this.config = function(value) {
globalConfig = value;
};
this.$get = function() {
var options = {
urlParam: null,
authHeader: 'Authorization',
authPrefix: 'Bearer ',
whiteListedDomains: [],
tokenGetter: function() {
return null;
},
loginPath: '/',
unauthenticatedRedirectPath: '/',
unauthenticatedRedirector: ['$location', function($location) {
$location.path(this.unauthenticatedRedirectPath);
}]
};
function JwtOptions() {
var config = this.config = angular.extend({}, options, globalConfig);
}
JwtOptions.prototype.getConfig = function() {
return this.config;
};
return new JwtOptions();
}
});
/**
* The content from this file was directly lifted from Angular. It is
* unfortunately not a public API, so the best we can do is copy it.
*
* Angular References:
* https://github.com/angular/angular.js/issues/3299
* https://github.com/angular/angular.js/blob/d077966ff1ac18262f4615ff1a533db24d4432a7/src/ng/urlUtils.js
*/
angular.module('angular-jwt.interceptor')
.service('urlUtils', function () {
// NOTE: The usage of window and document instead of $window and $document here is
// deliberate. This service depends on the specific behavior of anchor nodes created by the
// browser (resolving and parsing URLs) that is unlikely to be provided by mock objects and
// cause us to break tests. In addition, when the browser resolves a URL for XHR, it
// doesn't know about mocked locations and resolves URLs to the real document - which is
// exactly the behavior needed here. There is little value is mocking these out for this
// service.
var urlParsingNode = document.createElement("a");
var originUrl = urlResolve(window.location.href);
/**
*
* Implementation Notes for non-IE browsers
* ----------------------------------------
* Assigning a URL to the href property of an anchor DOM node, even one attached to the DOM,
* results both in the normalizing and parsing of the URL. Normalizing means that a relative
* URL will be resolved into an absolute URL in the context of the application document.
* Parsing means that the anchor node's host, hostname, protocol, port, pathname and related
* properties are all populated to reflect the normalized URL. This approach has wide
* compatibility - Safari 1+, Mozilla 1+, Opera 7+,e etc. See
* http://www.aptana.com/reference/html/api/HTMLAnchorElement.html
*
* Implementation Notes for IE
* ---------------------------
* IE <= 10 normalizes the URL when assigned to the anchor node similar to the other
* browsers. However, the parsed components will not be set if the URL assigned did not specify
* them. (e.g. if you assign a.href = "foo", then a.protocol, a.host, etc. will be empty.) We
* work around that by performing the parsing in a 2nd step by taking a previously normalized
* URL (e.g. by assigning to a.href) and assigning it a.href again. This correctly populates the
* properties such as protocol, hostname, port, etc.
*
* References:
* http://developer.mozilla.org/en-US/docs/Web/API/HTMLAnchorElement
* http://www.aptana.com/reference/html/api/HTMLAnchorElement.html
* http://url.spec.whatwg.org/#urlutils
* https://github.com/angular/angular.js/pull/2902
* http://james.padolsey.com/javascript/parsing-urls-with-the-dom/
*
* @kind function
* @param {string} url The URL to be parsed.
* @description Normalizes and parses a URL.
* @returns {object} Returns the normalized URL as a dictionary.
*
* | member name | Description |
* |---------------|----------------|
* | href | A normalized version of the provided URL if it was not an absolute URL |
* | protocol | The protocol including the trailing colon |
* | host | The host and port (if the port is non-default) of the normalizedUrl |
* | search | The search params, minus the question mark |
* | hash | The hash string, minus the hash symbol
* | hostname | The hostname
* | port | The port, without ":"
* | pathname | The pathname, beginning with "/"
*
*/
function urlResolve(url) {
var href = url;
// Normalize before parse. Refer Implementation Notes on why this is
// done in two steps on IE.
urlParsingNode.setAttribute("href", href);
href = urlParsingNode.href;
urlParsingNode.setAttribute('href', href);
// urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils
return {
href: urlParsingNode.href,
protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',
host: urlParsingNode.host,
search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, '') : '',
hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',
hostname: urlParsingNode.hostname,
port: urlParsingNode.port,
pathname: (urlParsingNode.pathname.charAt(0) === '/')
? urlParsingNode.pathname
: '/' + urlParsingNode.pathname
};
}
/**
* Parse a request URL and determine whether this is a same-origin request as the application document.
*
* @param {string|object} requestUrl The url of the request as a string that will be resolved
* or a parsed URL object.
* @returns {boolean} Whether the request is for the same origin as the application document.
*/
function urlIsSameOrigin(requestUrl) {
var parsed = (angular.isString(requestUrl)) ? urlResolve(requestUrl) : requestUrl;
return (parsed.protocol === originUrl.protocol &&
parsed.host === originUrl.host);
}
return {
urlResolve: urlResolve,
isSameOrigin: urlIsSameOrigin
};
});
}());
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
/*
AngularJS v1.5.5
(c) 2010-2016 Google, Inc. http://angularjs.org
License: MIT
*/
(function(A,d){'use strict';function p(){return["$animate",function(w){return{restrict:"AE",transclude:"element",priority:1,terminal:!0,require:"^^ngMessages",link:function(n,l,a,c,m){var k=l[0],f,q=a.ngMessage||a.when;a=a.ngMessageExp||a.whenExp;var d=function(a){f=a?x(a)?a:a.split(/[\s,]+/):null;c.reRender()};a?(d(n.$eval(a)),n.$watchCollection(a,d)):d(q);var e,r;c.register(k,r={test:function(a){var g=f;a=g?x(g)?0<=g.indexOf(a):g.hasOwnProperty(a):void 0;return a},attach:function(){e||m(n,function(a){w.enter(a,
null,l);e=a;var g=e.$$attachId=c.getAttachId();e.on("$destroy",function(){e&&e.$$attachId===g&&(c.deregister(k),r.detach())})})},detach:function(){if(e){var a=e;e=null;w.leave(a)}}})}}}]}var x=d.isArray,t=d.forEach,y=d.isString,z=d.element;d.module("ngMessages",[]).directive("ngMessages",["$animate",function(d){function n(a,c){return y(c)&&0===c.length||l(a.$eval(c))}function l(a){return y(a)?a.length:!!a}return{require:"ngMessages",restrict:"AE",controller:["$element","$scope","$attrs",function(a,
c,m){function k(a,c){for(var b=c,f=[];b&&b!==a;){var h=b.$$ngMessageNode;if(h&&h.length)return e[h];b.childNodes.length&&-1==f.indexOf(b)?(f.push(b),b=b.childNodes[b.childNodes.length-1]):b.previousSibling?b=b.previousSibling:(b=b.parentNode,f.push(b))}}var f=this,q=0,p=0;this.getAttachId=function(){return p++};var e=this.messages={},r,s;this.render=function(g){g=g||{};r=!1;s=g;for(var e=n(c,m.ngMessagesMultiple)||n(c,m.multiple),b=[],q={},h=f.head,k=!1,p=0;null!=h;){p++;var u=h.message,v=!1;k||t(g,
function(a,b){!v&&l(a)&&u.test(b)&&!q[b]&&(v=q[b]=!0,u.attach())});v?k=!e:b.push(u);h=h.next}t(b,function(a){a.detach()});b.length!==p?d.setClass(a,"ng-active","ng-inactive"):d.setClass(a,"ng-inactive","ng-active")};c.$watchCollection(m.ngMessages||m["for"],f.render);a.on("$destroy",function(){t(e,function(a){a.message.detach()})});this.reRender=function(){r||(r=!0,c.$evalAsync(function(){r&&s&&f.render(s)}))};this.register=function(g,c){var b=q.toString();e[b]={message:c};var d=a[0],h=e[b];f.head?
(d=k(d,g))?(h.next=d.next,d.next=h):(h.next=f.head,f.head=h):f.head=h;g.$$ngMessageNode=b;q++;f.reRender()};this.deregister=function(c){var d=c.$$ngMessageNode;delete c.$$ngMessageNode;var b=e[d];(c=k(a[0],c))?c.next=b.next:f.head=b.next;delete e[d];f.reRender()}}]}}]).directive("ngMessagesInclude",["$templateRequest","$document","$compile",function(d,n,l){return{restrict:"AE",require:"^^ngMessages",link:function(a,c,m){var k=m.ngMessagesInclude||m.src;d(k).then(function(d){l(d)(a,function(a){c.after(a);
a=l.$$createComment?l.$$createComment("ngMessagesInclude",k):n[0].createComment(" ngMessagesInclude: "+k+" ");a=z(a);c.after(a);c.remove()})})}}}]).directive("ngMessage",p()).directive("ngMessageExp",p())})(window,window.angular);
//# sourceMappingURL=angular-messages.min.js.map
This diff is collapsed.
/*
AngularJS v1.5.5
(c) 2010-2016 Google, Inc. http://angularjs.org
License: MIT
*/
(function(C,d){'use strict';function z(r,h,g){return{restrict:"ECA",terminal:!0,priority:400,transclude:"element",link:function(a,c,b,f,y){function k(){n&&(g.cancel(n),n=null);l&&(l.$destroy(),l=null);m&&(n=g.leave(m),n.then(function(){n=null}),m=null)}function x(){var b=r.current&&r.current.locals;if(d.isDefined(b&&b.$template)){var b=a.$new(),f=r.current;m=y(b,function(b){g.enter(b,null,m||c).then(function(){!d.isDefined(t)||t&&!a.$eval(t)||h()});k()});l=f.scope=b;l.$emit("$viewContentLoaded");
l.$eval(u)}else k()}var l,m,n,t=b.autoscroll,u=b.onload||"";a.$on("$routeChangeSuccess",x);x()}}}function A(d,h,g){return{restrict:"ECA",priority:-400,link:function(a,c){var b=g.current,f=b.locals;c.html(f.$template);var y=d(c.contents());if(b.controller){f.$scope=a;var k=h(b.controller,f);b.controllerAs&&(a[b.controllerAs]=k);c.data("$ngControllerController",k);c.children().data("$ngControllerController",k)}a[b.resolveAs||"$resolve"]=f;y(a)}}}var w=d.module("ngRoute",["ng"]).provider("$route",function(){function r(a,
c){return d.extend(Object.create(a),c)}function h(a,d){var b=d.caseInsensitiveMatch,f={originalPath:a,regexp:a},g=f.keys=[];a=a.replace(/([().])/g,"\\$1").replace(/(\/)?:(\w+)(\*\?|[\?\*])?/g,function(a,d,b,c){a="?"===c||"*?"===c?"?":null;c="*"===c||"*?"===c?"*":null;g.push({name:b,optional:!!a});d=d||"";return""+(a?"":d)+"(?:"+(a?d:"")+(c&&"(.+?)"||"([^/]+)")+(a||"")+")"+(a||"")}).replace(/([\/$\*])/g,"\\$1");f.regexp=new RegExp("^"+a+"$",b?"i":"");return f}var g={};this.when=function(a,c){var b=
d.copy(c);d.isUndefined(b.reloadOnSearch)&&(b.reloadOnSearch=!0);d.isUndefined(b.caseInsensitiveMatch)&&(b.caseInsensitiveMatch=this.caseInsensitiveMatch);g[a]=d.extend(b,a&&h(a,b));if(a){var f="/"==a[a.length-1]?a.substr(0,a.length-1):a+"/";g[f]=d.extend({redirectTo:a},h(f,b))}return this};this.caseInsensitiveMatch=!1;this.otherwise=function(a){"string"===typeof a&&(a={redirectTo:a});this.when(null,a);return this};this.$get=["$rootScope","$location","$routeParams","$q","$injector","$templateRequest",
"$sce",function(a,c,b,f,h,k,x){function l(b){var e=s.current;(w=(p=n())&&e&&p.$$route===e.$$route&&d.equals(p.pathParams,e.pathParams)&&!p.reloadOnSearch&&!u)||!e&&!p||a.$broadcast("$routeChangeStart",p,e).defaultPrevented&&b&&b.preventDefault()}function m(){var v=s.current,e=p;if(w)v.params=e.params,d.copy(v.params,b),a.$broadcast("$routeUpdate",v);else if(e||v)u=!1,(s.current=e)&&e.redirectTo&&(d.isString(e.redirectTo)?c.path(t(e.redirectTo,e.params)).search(e.params).replace():c.url(e.redirectTo(e.pathParams,
c.path(),c.search())).replace()),f.when(e).then(function(){if(e){var a=d.extend({},e.resolve),b,c;d.forEach(a,function(b,e){a[e]=d.isString(b)?h.get(b):h.invoke(b,null,null,e)});d.isDefined(b=e.template)?d.isFunction(b)&&(b=b(e.params)):d.isDefined(c=e.templateUrl)&&(d.isFunction(c)&&(c=c(e.params)),d.isDefined(c)&&(e.loadedTemplateUrl=x.valueOf(c),b=k(c)));d.isDefined(b)&&(a.$template=b);return f.all(a)}}).then(function(c){e==s.current&&(e&&(e.locals=c,d.copy(e.params,b)),a.$broadcast("$routeChangeSuccess",
e,v))},function(b){e==s.current&&a.$broadcast("$routeChangeError",e,v,b)})}function n(){var a,b;d.forEach(g,function(f,g){var q;if(q=!b){var h=c.path();q=f.keys;var l={};if(f.regexp)if(h=f.regexp.exec(h)){for(var k=1,n=h.length;k<n;++k){var m=q[k-1],p=h[k];m&&p&&(l[m.name]=p)}q=l}else q=null;else q=null;q=a=q}q&&(b=r(f,{params:d.extend({},c.search(),a),pathParams:a}),b.$$route=f)});return b||g[null]&&r(g[null],{params:{},pathParams:{}})}function t(a,b){var c=[];d.forEach((a||"").split(":"),function(a,
d){if(0===d)c.push(a);else{var f=a.match(/(\w+)(?:[?*])?(.*)/),g=f[1];c.push(b[g]);c.push(f[2]||"");delete b[g]}});return c.join("")}var u=!1,p,w,s={routes:g,reload:function(){u=!0;var b={defaultPrevented:!1,preventDefault:function(){this.defaultPrevented=!0;u=!1}};a.$evalAsync(function(){l(b);b.defaultPrevented||m()})},updateParams:function(a){if(this.current&&this.current.$$route)a=d.extend({},this.current.params,a),c.path(t(this.current.$$route.originalPath,a)),c.search(a);else throw B("norout");
}};a.$on("$locationChangeStart",l);a.$on("$locationChangeSuccess",m);return s}]}),B=d.$$minErr("ngRoute");w.provider("$routeParams",function(){this.$get=function(){return{}}});w.directive("ngView",z);w.directive("ngView",A);z.$inject=["$route","$anchorScroll","$animate"];A.$inject=["$compile","$controller","$route"]})(window,window.angular);
//# sourceMappingURL=angular-route.min.js.map
This diff is collapsed.
This diff is collapsed.
{"version":3,"sources":["angular-socialshare.js"],"names":["angular","directiveName","serviceName","socialshareProviderNames","socialshareConfigurationProvider","socialshareConfigurationDefault","provider","conf","subject","body","to","cc","bcc","trigger","url","title","href","quote","hashtags","text","media","mobile_iframe","type","via","from","ref","display","source","caption","redirectUri","popupHeight","popupWidth","description","subreddit","follow","configure","configuration","configurationKeys","configurationIndex","aConfigurationKey","configElement","configIndex","internIndex","$log","injector","get","length","indexOf","Object","keys","warn","$get","manageFacebookShare","$window","attrs","urlString","socialshareType","socialshareVia","encodeURIComponent","socialshareRedirectUri","socialshareUrl","socialshareTo","socialshareDisplay","socialshareRef","socialshareFrom","socialshareSource","open","socialsharePopupWidth","socialsharePopupHeight","innerHeight","innerWidth","socialshareQuote","socialshareMobileiframe","socialshareHashtags","location","manageEmailShare","socialshareBody","socialshareSubject","socialshareCc","socialshareBcc","self","top","facebookMessengerShare","element","attr","manageTwitterShare","socialshareText","manageGooglePlusShare","manageRedditShare","socialshareSubreddit","manageStumbleuponShare","manageLinkedinShare","socialshareDescription","managePinterestShare","socialshareMedia","manageDiggShare","manageTumblrShare","manageVkShare","manageOkShare","manageDeliciousShare","manageBufferShare","manageHackernewsShare","manageFlipboardShare","managePocketShare","manageWordpressShare","manageXingShare","followUrl","socialshareFollow","manageEvernoteShare","manageWhatsappShare","manageSmsShare","replace","toPhoneNumber","manageViberShare","manageTelegramShare","skypeShare","weiboShare","socialshareService","this","emailShare","facebookShare","twitterShare","stumbleuponShare","pinterestShare","googleShare","bufferShare","hackernewsShare","okShare","deliciousShare","pocketShare","vkShare","flipboardShare","xingShare","diggShare","linkedinShare","wordpressShare","telegramShare","redditShare","evernoteShare","tumblrShare","smsShare","share","serviceShareConf","socialshareDirective","socialshareConf","linkingFunction","$scope","configurationElement","index","onEventTriggered","socialshareProvider","sharingFunctions","socialshareTitle","socialshareDislay","socialshareCaption","socialshareTrigger","bind","restrict","link","email","facebook","facebook-messenger","twitter","google","reddit","stumbleupon","linkedin","pinterest","digg","tumblr","vk","ok","delicious","buffer","hackernews","flipboard","pocket","wordpress","xing","evernote","whatsapp","sms","telegram","viber","skype","weibo","module","service","directive"],"mappings":"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","file":"angular-socialshare.js","sourceRoot":"../lib"}
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment