Permalink
Browse files

add 1.0.6 universal-irreversibility

  • Loading branch information...
1 parent e6ad90c commit 43aad28ea6c8f2370b84111b1be59eed8039502f @IgorMinar IgorMinar committed Apr 4, 2013
Showing 576 changed files with 110,833 additions and 0 deletions.
View
Binary file not shown.

Large diffs are not rendered by default.

Oops, something went wrong.

Large diffs are not rendered by default.

Oops, something went wrong.
View
@@ -0,0 +1,167 @@
+/**
+ * @license AngularJS v1.0.6
+ * (c) 2010-2012 Google, Inc. http://angularjs.org
+ * License: MIT
+ */
+(function(window, angular, undefined) {
+'use strict';
+
+var directive = {};
+
+directive.dropdownToggle =
+ ['$document', '$location', '$window',
+ function ($document, $location, $window) {
+ var openElement = null, close;
+ return {
+ restrict: 'C',
+ link: function(scope, element, attrs) {
+ scope.$watch(function dropdownTogglePathWatch(){return $location.path();}, function dropdownTogglePathWatchAction() {
+ close && close();
+ });
+
+ element.parent().bind('click', function(event) {
+ close && close();
+ });
+
+ element.bind('click', function(event) {
+ event.preventDefault();
+ event.stopPropagation();
+
+ var iWasOpen = false;
+
+ if (openElement) {
+ iWasOpen = openElement === element;
+ close();
+ }
+
+ if (!iWasOpen){
+ element.parent().addClass('open');
+ openElement = element;
+
+ close = function (event) {
+ event && event.preventDefault();
+ event && event.stopPropagation();
+ $document.unbind('click', close);
+ element.parent().removeClass('open');
+ close = null;
+ openElement = null;
+ }
+
+ $document.bind('click', close);
+ }
+ });
+ }
+ };
+ }];
+
+
+directive.tabbable = function() {
+ return {
+ restrict: 'C',
+ compile: function(element) {
+ var navTabs = angular.element('<ul class="nav nav-tabs"></ul>'),
+ tabContent = angular.element('<div class="tab-content"></div>');
+
+ tabContent.append(element.contents());
+ element.append(navTabs).append(tabContent);
+ },
+ controller: ['$scope', '$element', function($scope, $element) {
+ var navTabs = $element.contents().eq(0),
+ ngModel = $element.controller('ngModel') || {},
+ tabs = [],
+ selectedTab;
+
+ ngModel.$render = function() {
+ var $viewValue = this.$viewValue;
+
+ if (selectedTab ? (selectedTab.value != $viewValue) : $viewValue) {
+ if(selectedTab) {
+ selectedTab.paneElement.removeClass('active');
+ selectedTab.tabElement.removeClass('active');
+ selectedTab = null;
+ }
+ if($viewValue) {
+ for(var i = 0, ii = tabs.length; i < ii; i++) {
+ if ($viewValue == tabs[i].value) {
+ selectedTab = tabs[i];
+ break;
+ }
+ }
+ if (selectedTab) {
+ selectedTab.paneElement.addClass('active');
+ selectedTab.tabElement.addClass('active');
+ }
+ }
+
+ }
+ };
+
+ this.addPane = function(element, attr) {
+ var li = angular.element('<li><a href></a></li>'),
+ a = li.find('a'),
+ tab = {
+ paneElement: element,
+ paneAttrs: attr,
+ tabElement: li
+ };
+
+ tabs.push(tab);
+
+ attr.$observe('value', update)();
+ attr.$observe('title', function(){ update(); a.text(tab.title); })();
+
+ function update() {
+ tab.title = attr.title;
+ tab.value = attr.value || attr.title;
+ if (!ngModel.$setViewValue && (!ngModel.$viewValue || tab == selectedTab)) {
+ // we are not part of angular
+ ngModel.$viewValue = tab.value;
+ }
+ ngModel.$render();
+ }
+
+ navTabs.append(li);
+ li.bind('click', function(event) {
+ event.preventDefault();
+ event.stopPropagation();
+ if (ngModel.$setViewValue) {
+ $scope.$apply(function() {
+ ngModel.$setViewValue(tab.value);
+ ngModel.$render();
+ });
+ } else {
+ // we are not part of angular
+ ngModel.$viewValue = tab.value;
+ ngModel.$render();
+ }
+ });
+
+ return function() {
+ tab.tabElement.remove();
+ for(var i = 0, ii = tabs.length; i < ii; i++ ) {
+ if (tab == tabs[i]) {
+ tabs.splice(i, 1);
+ }
+ }
+ };
+ }
+ }]
+ };
+};
+
+
+directive.tabPane = function() {
+ return {
+ require: '^tabbable',
+ restrict: 'C',
+ link: function(scope, element, attrs, tabsCtrl) {
+ element.bind('$remove', tabsCtrl.addPane(element, attrs));
+ }
+ };
+};
+
+
+angular.module('bootstrap', []).directive(directive);
+
+
+})(window, window.angular);

Some generated files are not rendered by default. Learn more.

Oops, something went wrong.
View
@@ -0,0 +1,184 @@
+/**
+ * @license AngularJS v1.0.6
+ * (c) 2010-2012 Google, Inc. http://angularjs.org
+ * License: MIT
+ */
+(function(window, angular, undefined) {
+'use strict';
+
+/**
+ * @ngdoc overview
+ * @name ngCookies
+ */
+
+
+angular.module('ngCookies', ['ng']).
+ /**
+ * @ngdoc object
+ * @name ngCookies.$cookies
+ * @requires $browser
+ *
+ * @description
+ * Provides read/write access to browser's cookies.
+ *
+ * Only a simple Object is exposed and by adding or removing properties to/from
+ * this object, new cookies are created/deleted at the end of current $eval.
+ *
+ * @example
+ <doc:example>
+ <doc:source>
+ <script>
+ function ExampleController($cookies) {
+ // Retrieving a cookie
+ var favoriteCookie = $cookies.myFavorite;
+ // Setting a cookie
+ $cookies.myFavorite = 'oatmeal';
+ }
+ </script>
+ </doc:source>
+ </doc:example>
+ */
+ factory('$cookies', ['$rootScope', '$browser', function ($rootScope, $browser) {
+ var cookies = {},
+ lastCookies = {},
+ lastBrowserCookies,
+ runEval = false,
+ copy = angular.copy,
+ isUndefined = angular.isUndefined;
+
+ //creates a poller fn that copies all cookies from the $browser to service & inits the service
+ $browser.addPollFn(function() {
+ var currentCookies = $browser.cookies();
+ if (lastBrowserCookies != currentCookies) { //relies on browser.cookies() impl
+ lastBrowserCookies = currentCookies;
+ copy(currentCookies, lastCookies);
+ copy(currentCookies, cookies);
+ if (runEval) $rootScope.$apply();
+ }
+ })();
+
+ runEval = true;
+
+ //at the end of each eval, push cookies
+ //TODO: this should happen before the "delayed" watches fire, because if some cookies are not
+ // strings or browser refuses to store some cookies, we update the model in the push fn.
+ $rootScope.$watch(push);
+
+ return cookies;
+
+
+ /**
+ * Pushes all the cookies from the service to the browser and verifies if all cookies were stored.
+ */
+ function push() {
+ var name,
+ value,
+ browserCookies,
+ updated;
+
+ //delete any cookies deleted in $cookies
+ for (name in lastCookies) {
+ if (isUndefined(cookies[name])) {
+ $browser.cookies(name, undefined);
+ }
+ }
+
+ //update all cookies updated in $cookies
+ for(name in cookies) {
+ value = cookies[name];
+ if (!angular.isString(value)) {
+ if (angular.isDefined(lastCookies[name])) {
+ cookies[name] = lastCookies[name];
+ } else {
+ delete cookies[name];
+ }
+ } else if (value !== lastCookies[name]) {
+ $browser.cookies(name, value);
+ updated = true;
+ }
+ }
+
+ //verify what was actually stored
+ if (updated){
+ updated = false;
+ browserCookies = $browser.cookies();
+
+ for (name in cookies) {
+ if (cookies[name] !== browserCookies[name]) {
+ //delete or reset all cookies that the browser dropped from $cookies
+ if (isUndefined(browserCookies[name])) {
+ delete cookies[name];
+ } else {
+ cookies[name] = browserCookies[name];
+ }
+ updated = true;
+ }
+ }
+ }
+ }
+ }]).
+
+
+ /**
+ * @ngdoc object
+ * @name ngCookies.$cookieStore
+ * @requires $cookies
+ *
+ * @description
+ * Provides a key-value (string-object) storage, that is backed by session cookies.
+ * Objects put or retrieved from this storage are automatically serialized or
+ * deserialized by angular's toJson/fromJson.
+ * @example
+ */
+ factory('$cookieStore', ['$cookies', function($cookies) {
+
+ return {
+ /**
+ * @ngdoc method
+ * @name ngCookies.$cookieStore#get
+ * @methodOf ngCookies.$cookieStore
+ *
+ * @description
+ * Returns the value of given cookie key
+ *
+ * @param {string} key Id to use for lookup.
+ * @returns {Object} Deserialized cookie value.
+ */
+ get: function(key) {
+ return angular.fromJson($cookies[key]);
+ },
+
+ /**
+ * @ngdoc method
+ * @name ngCookies.$cookieStore#put
+ * @methodOf ngCookies.$cookieStore
+ *
+ * @description
+ * Sets a value for given cookie key
+ *
+ * @param {string} key Id for the `value`.
+ * @param {Object} value Value to be stored.
+ */
+ put: function(key, value) {
+ $cookies[key] = angular.toJson(value);
+ },
+
+ /**
+ * @ngdoc method
+ * @name ngCookies.$cookieStore#remove
+ * @methodOf ngCookies.$cookieStore
+ *
+ * @description
+ * Remove given cookie
+ *
+ * @param {string} key Id of the key-value pair to delete.
+ */
+ remove: function(key) {
+ delete $cookies[key];
+ }
+ };
+
+ }]);
+
+
+})(window, window.angular);
@@ -0,0 +1,7 @@
+/*
+ AngularJS v1.0.6
+ (c) 2010-2012 Google, Inc. http://angularjs.org
+ License: MIT
+*/
+(function(m,f,l){'use strict';f.module("ngCookies",["ng"]).factory("$cookies",["$rootScope","$browser",function(d,c){var b={},g={},h,i=!1,j=f.copy,k=f.isUndefined;c.addPollFn(function(){var a=c.cookies();h!=a&&(h=a,j(a,g),j(a,b),i&&d.$apply())})();i=!0;d.$watch(function(){var a,e,d;for(a in g)k(b[a])&&c.cookies(a,l);for(a in b)e=b[a],f.isString(e)?e!==g[a]&&(c.cookies(a,e),d=!0):f.isDefined(g[a])?b[a]=g[a]:delete b[a];if(d)for(a in e=c.cookies(),b)b[a]!==e[a]&&(k(e[a])?delete b[a]:b[a]=e[a])});return b}]).factory("$cookieStore",
+["$cookies",function(d){return{get:function(c){return f.fromJson(d[c])},put:function(c,b){d[c]=f.toJson(b)},remove:function(c){delete d[c]}}}])})(window,window.angular);
Oops, something went wrong.

0 comments on commit 43aad28

Please sign in to comment.