From e402f4dcedb4883ceab4ebe65ffc59a39dd5da64 Mon Sep 17 00:00:00 2001 From: John Mitchell Date: Mon, 11 May 2015 11:24:19 -0400 Subject: [PATCH 01/15] moving working to the corner --- awx/ui/static/js/shared/Utilities.js | 9 ++++----- awx/ui/static/less/ansible-ui.less | 15 +++++++++++---- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/awx/ui/static/js/shared/Utilities.js b/awx/ui/static/js/shared/Utilities.js index a09f730feb..4af3440da6 100644 --- a/awx/ui/static/js/shared/Utilities.js +++ b/awx/ui/static/js/shared/Utilities.js @@ -590,23 +590,22 @@ angular.module('Utilities', ['RestServices', 'Utilities', 'sanitizeFilter']) .factory('Wait', ['$rootScope', function ($rootScope) { return function (directive) { - var docw, doch, spinnyw, spinnyh, x, y; + var docw, doch, spinnyw, spinnyh; if (directive === 'start' && !$rootScope.waiting) { $rootScope.waiting = true; docw = $(window).width(); doch = $(window).height(); spinnyw = $('.spinny').width(); spinnyh = $('.spinny').height(); - x = (docw - spinnyw) / 2; - y = (doch - spinnyh) / 2; $('.overlay').css({ width: $(document).width(), height: $(document).height() }).fadeIn(); $('.spinny').css({ - top: y, - left: x + bottom: 15, + right: 15 }).fadeIn(400); + console.log("got here"); } else if (directive === 'stop' && $rootScope.waiting) { $('.spinny, .overlay').fadeOut(400, function () { $rootScope.waiting = false; diff --git a/awx/ui/static/less/ansible-ui.less b/awx/ui/static/less/ansible-ui.less index ddc5e628bc..15f460f09d 100644 --- a/awx/ui/static/less/ansible-ui.less +++ b/awx/ui/static/less/ansible-ui.less @@ -361,8 +361,8 @@ textarea.allowresize { display: none; position: fixed; z-index: 2000; - width: 75px; - height: 75px; + width: 138px; + height: 50px; text-align:center; color: #eee; background-color: @black; @@ -371,8 +371,15 @@ textarea.allowresize { padding-top: 10px; p { - padding-top: 10px; - font-size: 11px; + padding-top: 0px; + font-size: 18px; + text-align: right; + margin-right: 10px; + } + + i { + float: left; + margin-left: 10px; } } From 4497b2cfba5fb22274e6f83dcb267872cb97f7c6 Mon Sep 17 00:00:00 2001 From: John Mitchell Date: Mon, 11 May 2015 12:00:39 -0400 Subject: [PATCH 02/15] fixed xss survey bug --- .../js/filters/sanitize/xss-sanitizer.filter.js | 2 +- awx/ui/static/js/helpers/Survey.js | 12 +++++------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/awx/ui/static/js/filters/sanitize/xss-sanitizer.filter.js b/awx/ui/static/js/filters/sanitize/xss-sanitizer.filter.js index 40689805d1..0ed767aacb 100644 --- a/awx/ui/static/js/filters/sanitize/xss-sanitizer.filter.js +++ b/awx/ui/static/js/filters/sanitize/xss-sanitizer.filter.js @@ -1,6 +1,6 @@ angular.module('sanitizeFilter', []).filter('sanitize', function() { return function(input) { - input = input.replace(//g, ">"); + input = input.replace(//g, ">").replace(/'/g, "'").replace(/"/g, """); return input; }; }); diff --git a/awx/ui/static/js/helpers/Survey.js b/awx/ui/static/js/helpers/Survey.js index ab7a922bd0..77632bae06 100644 --- a/awx/ui/static/js/helpers/Survey.js +++ b/awx/ui/static/js/helpers/Survey.js @@ -15,7 +15,7 @@ import listGenerator from 'tower/shared/list-generator/main'; export default angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper', 'SearchHelper', 'PaginationHelpers', listGenerator.name, 'ModalDialog' , - 'GeneratorHelpers']) + 'GeneratorHelpers', 'sanitizeFilter']) .factory('ShowSurveyModal', ['Wait', 'CreateDialog', 'Empty', '$compile' , function(Wait, CreateDialog, Empty, $compile) { @@ -253,8 +253,8 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper', * }) * */ - .factory('FinalizeQuestion', ['GetBasePath','Rest', 'Wait', 'ProcessErrors', '$compile', 'Empty', - function(GetBasePath, Rest, Wait, ProcessErrors, $compile, Empty) { + .factory('FinalizeQuestion', ['GetBasePath','Rest', 'Wait', 'ProcessErrors', '$compile', 'Empty', '$filter', 'sanitizeFilter', + function(GetBasePath, Rest, Wait, ProcessErrors, $compile, Empty, $filter, sanitizeFilter) { return function(params) { var scope = params.scope, @@ -317,8 +317,7 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper', html += '
'; for( i = 0; i/g, ">"); + choices[i] = $filter('sanitize')(choices[i]); choices[i] = scope.serialize(choices[i]); html+= '' + ''+choices[i] +'
' ; @@ -328,8 +327,7 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper', if(question.type === 'password'){ defaultValue = (question.default) ? question.default : ""; - defaultValue = defaultValue.replace(//g, ">"); + defaultValue = $filter('defaultValue')(choices[i]); defaultValue = scope.serialize(defaultValue); html+='
'+ '
'+ From 581cff1a6ff69542eb964a2a3ba14d0954a70887 Mon Sep 17 00:00:00 2001 From: Joe Fiorini Date: Mon, 11 May 2015 12:56:47 -0400 Subject: [PATCH 03/15] Add helpful startup script for docker container Not actually adding this to the container yet. Want to make sure @matburt is okay with that first. --- tools/docker/start_everything.sh | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100755 tools/docker/start_everything.sh diff --git a/tools/docker/start_everything.sh b/tools/docker/start_everything.sh new file mode 100755 index 0000000000..97b76efc42 --- /dev/null +++ b/tools/docker/start_everything.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +/etc/init.d/postgresql start +/etc/init.d/redis-server start +#nohup mongod --smallfiles & + +(cd /tower_devel && make server && +/bin/bash) From ac76423a93cf08b0d333898385e9b2ab8ae1441e Mon Sep 17 00:00:00 2001 From: John Mitchell Date: Mon, 11 May 2015 13:02:46 -0400 Subject: [PATCH 04/15] accidentally left a console.log in the code --- awx/ui/static/js/shared/Utilities.js | 1 - 1 file changed, 1 deletion(-) diff --git a/awx/ui/static/js/shared/Utilities.js b/awx/ui/static/js/shared/Utilities.js index 4af3440da6..9731dde633 100644 --- a/awx/ui/static/js/shared/Utilities.js +++ b/awx/ui/static/js/shared/Utilities.js @@ -605,7 +605,6 @@ angular.module('Utilities', ['RestServices', 'Utilities', 'sanitizeFilter']) bottom: 15, right: 15 }).fadeIn(400); - console.log("got here"); } else if (directive === 'stop' && $rootScope.waiting) { $('.spinny, .overlay').fadeOut(400, function () { $rootScope.waiting = false; From 23a69995d3d582b6a0a2196ab7612018f94e54d2 Mon Sep 17 00:00:00 2001 From: John Mitchell Date: Mon, 11 May 2015 13:15:24 -0400 Subject: [PATCH 05/15] fixed scan job and job run type ordering --- awx/ui/static/js/controllers/JobTemplates.js | 36 +++++++++++--------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/awx/ui/static/js/controllers/JobTemplates.js b/awx/ui/static/js/controllers/JobTemplates.js index 7563b987c4..443ab095ee 100644 --- a/awx/ui/static/js/controllers/JobTemplates.js +++ b/awx/ui/static/js/controllers/JobTemplates.js @@ -346,6 +346,25 @@ export function JobTemplatesAdd($scope, $rootScope, $compile, $location, $log, $ // this sets the default options for the selects as specified by the controller. $scope.verbosity = $scope.verbosity_options[$scope.verbosity_field.default]; $scope.job_type = $scope.job_type_options[$scope.job_type_field.default]; + + // if you're getting to the form from the scan job section on inventories, + // set the job type select to be scan + if ($routeParams.inventory_id) { + // This means that the job template form was accessed via inventory prop's + // This also means the job is a scan job. + $scope.job_type.value = 'scan'; + $scope.jobTypeChange(); + $scope.inventory = $routeParams.inventory_id; + Rest.setUrl(GetBasePath('inventory') + $routeParams.inventory_id + '/'); + Rest.get() + .success(function (data) { + $scope.inventory_name = data.name; + }) + .error(function (data, status) { + ProcessErrors($scope, data, status, form, { hdr: 'Error!', + msg: 'Failed to lookup inventory: ' + data.id + '. GET returned status: ' + status }); + }); + } $scope.$emit('lookUpInitialize'); } }); @@ -424,23 +443,6 @@ export function JobTemplatesAdd($scope, $rootScope, $compile, $location, $log, $ } }; - if ($routeParams.inventory_id) { - // This means that the job template form was accessed via inventory prop's - // This also means the job is a scan job. - $scope.job_type.value = 'scan'; - $scope.jobTypeChange(); - $scope.inventory = $routeParams.inventory_id; - Rest.setUrl(GetBasePath('inventory') + $routeParams.inventory_id + '/'); - Rest.get() - .success(function (data) { - $scope.inventory_name = data.name; - }) - .error(function (data, status) { - ProcessErrors($scope, data, status, form, { hdr: 'Error!', - msg: 'Failed to lookup inventory: ' + data.id + '. GET returned status: ' + status }); - }); - } - // Detect and alert user to potential SCM status issues checkSCMStatus = function (oldValue, newValue) { if (oldValue !== newValue && !Empty($scope.project)) { From 7dd5dd947d0be2566096b3c05fdf75215160f7fb Mon Sep 17 00:00:00 2001 From: John Mitchell Date: Mon, 11 May 2015 13:39:56 -0400 Subject: [PATCH 06/15] changed instances of hardcoding xss filtering to using the filter --- awx/ui/static/js/helpers/EventViewer.js | 8 +++----- awx/ui/static/js/helpers/JobSubmission.js | 13 +++++-------- awx/ui/static/js/helpers/Survey.js | 16 ++++++---------- awx/ui/static/js/widgets/Stream.js | 11 ++++------- 4 files changed, 18 insertions(+), 30 deletions(-) diff --git a/awx/ui/static/js/helpers/EventViewer.js b/awx/ui/static/js/helpers/EventViewer.js index 6e8c13802a..ff76bffc3d 100644 --- a/awx/ui/static/js/helpers/EventViewer.js +++ b/awx/ui/static/js/helpers/EventViewer.js @@ -437,8 +437,7 @@ export default else { if( typeof itm === "string"){ if(itm.indexOf('<') > -1 || itm.indexOf('>') > -1){ - itm = itm.replace(//g, ">"); + itm = $filter('sanitize')(itm); } } html += "" + itm + ""; @@ -547,15 +546,14 @@ export default }; }]) - .factory('EventAddPreFormattedText', [function() { + .factory('EventAddPreFormattedText', ['$filter', function($filter) { return function(params) { var id = params.id, val = params.val, html; if( typeof val === "string"){ if(val.indexOf('<') > -1 || val.indexOf('>') > -1){ - val = val.replace(//g, ">"); + val = $filter('sanitize')(val); } } html = "
" + val + "
\n"; diff --git a/awx/ui/static/js/helpers/JobSubmission.js b/awx/ui/static/js/helpers/JobSubmission.js index f0d9f4bc83..3ec4b2f8ef 100644 --- a/awx/ui/static/js/helpers/JobSubmission.js +++ b/awx/ui/static/js/helpers/JobSubmission.js @@ -497,9 +497,9 @@ function($compile, Rest, GetBasePath, TextareaResize,CreateDialog, GenerateForm, }; }]) - .factory('PromptForSurvey', ['$compile', 'Wait', 'Alert', 'CredentialForm', 'CreateLaunchDialog', 'SurveyControllerInit' , 'GetBasePath', 'Rest' , 'Empty', + .factory('PromptForSurvey', ['$filter', '$compile', 'Wait', 'Alert', 'CredentialForm', 'CreateLaunchDialog', 'SurveyControllerInit' , 'GetBasePath', 'Rest' , 'Empty', 'GenerateForm', 'ShowSurveyModal', 'ProcessErrors', '$routeParams' , - function($compile, Wait, Alert, CredentialForm, CreateLaunchDialog, SurveyControllerInit, GetBasePath, Rest, Empty, + function($filter, $compile, Wait, Alert, CredentialForm, CreateLaunchDialog, SurveyControllerInit, GetBasePath, Rest, Empty, GenerateForm, ShowSurveyModal, ProcessErrors, $routeParams) { return function(params) { var html = params.html || "", @@ -519,10 +519,8 @@ function($compile, Rest, GetBasePath, TextareaResize,CreateDialog, GenerateForm, function buildHtml(question, index){ question.index = index; - question.question_name = question.question_name.replace(//g, ">"); - question.question_description = (question.question_description) ? question.question_description.replace(//g, ">") : undefined; + question.question_name = $filter('sanitize')(question.question_name); + question.question_description = (question.question_description) ? $filter('sanitize')(question.question_description) : undefined; requiredAsterisk = (question.required===true) ? "prepend-asterisk" : ""; @@ -603,8 +601,7 @@ function($compile, Rest, GetBasePath, TextareaResize,CreateDialog, GenerateForm, html+='
'; for( j = 0; j/g, ">"); + choices[j] = $filter('sanitize')(choices[j]); html+= '' + ''+choices[j] +'
' ; } diff --git a/awx/ui/static/js/helpers/Survey.js b/awx/ui/static/js/helpers/Survey.js index 77632bae06..0f1f494ed6 100644 --- a/awx/ui/static/js/helpers/Survey.js +++ b/awx/ui/static/js/helpers/Survey.js @@ -253,8 +253,8 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper', * }) * */ - .factory('FinalizeQuestion', ['GetBasePath','Rest', 'Wait', 'ProcessErrors', '$compile', 'Empty', '$filter', 'sanitizeFilter', - function(GetBasePath, Rest, Wait, ProcessErrors, $compile, Empty, $filter, sanitizeFilter) { + .factory('FinalizeQuestion', ['GetBasePath','Rest', 'Wait', 'ProcessErrors', '$compile', 'Empty', '$filter', + function(GetBasePath, Rest, Wait, ProcessErrors, $compile, Empty, $filter) { return function(params) { var scope = params.scope, @@ -272,10 +272,8 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper', html = ""; question.index = index; - question.question_name = question.question_name.replace(//g, ">"); - question.question_description = (question.question_description) ? question.question_description.replace(//g, ">") : undefined; + question.question_name = $filter('sanitize')(question.question_name); + question.question_description = (question.question_description) ? $filter('sanitize')(question.question_description) : undefined; if(!$('#question_'+question.index+':eq(0)').is('div')){ @@ -291,8 +289,7 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper', if(question.type === 'text' ){ defaultValue = (question.default) ? question.default : ""; - defaultValue = defaultValue.replace(//g, ">"); + defaultValue = $filter('sanitize')(defaultValue); defaultValue = scope.serialize(defaultValue); html+='
'+ '
'+ @@ -301,8 +298,7 @@ angular.module('SurveyHelper', [ 'Utilities', 'RestServices', 'SchedulesHelper', } if(question.type === "textarea"){ defaultValue = (question.default) ? question.default : (question.default_textarea) ? question.default_textarea: "" ; - defaultValue = defaultValue.replace(//g, ">"); + defaultValue = $filter('sanitize')(defaultValue); defaultValue = scope.serialize(defaultValue); html+='
'+ '
'+ diff --git a/awx/ui/static/js/widgets/Stream.js b/awx/ui/static/js/widgets/Stream.js index afa564c2cd..3000100012 100644 --- a/awx/ui/static/js/widgets/Stream.js +++ b/awx/ui/static/js/widgets/Stream.js @@ -176,8 +176,8 @@ angular.module('StreamWidget', ['RestServices', 'Utilities', 'StreamListDefiniti } ]) -.factory('BuildDescription', ['FixUrl', 'BuildUrl','$sce', - function (FixUrl, BuildUrl, $sce) { +.factory('BuildDescription', ['$filter', 'FixUrl', 'BuildUrl','$sce', + function ($filter, FixUrl, BuildUrl, $sce) { return function (activity) { function stripDeleted(s) { @@ -210,9 +210,7 @@ angular.module('StreamWidget', ['RestServices', 'Utilities', 'StreamListDefiniti // The block until line 221 is for associative/disassociative operations, such as adding/removing a user to a team or vise versa if (obj2_obj && obj2_obj.name && !/^_delete/.test(obj2_obj.name)) { obj2_obj.base = obj2; - obj2_obj.name = obj2_obj.name.replace(//g, ">"); - obj2_obj.name = $sce.getTrustedHtml(obj2_obj.name); + obj2_obj.name = $filter('sanitize')(obj2_obj.name); descr += obj2 + " " + obj2_obj.name + '' + ((activity.operation === 'disassociate') ? ' from ' : ' to '); descr_nolink += obj2 + ' ' + obj2_obj.name + ((activity.operation === 'disassociate') ? ' from ' : ' to '); } else if (obj2) { @@ -227,8 +225,7 @@ angular.module('StreamWidget', ['RestServices', 'Utilities', 'StreamListDefiniti obj1_obj.base = obj1; // Need to character escape the link names, as a malicious url or piece of html could be inserted here that could take the // user to a unknown location. - obj1_obj.name = obj1_obj.name.replace(//g, ">"); + obj1_obj.name = $filter('sanitize')(obj1_obj.name); obj1_obj.name = $sce.getTrustedHtml(obj1_obj.name); descr += obj1 + " " + obj1_obj.name + ''; descr_nolink += obj1 + ' ' + obj1_obj.name; From 78fb6947040b3971b77de9b7d358ad161f5ebdea Mon Sep 17 00:00:00 2001 From: John Mitchell Date: Mon, 11 May 2015 15:04:50 -0400 Subject: [PATCH 07/15] fixed 403 schedule errors not being displayed --- awx/ui/static/js/helpers/Schedules.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/awx/ui/static/js/helpers/Schedules.js b/awx/ui/static/js/helpers/Schedules.js index ba0aa4eeb7..a32ea1abc2 100644 --- a/awx/ui/static/js/helpers/Schedules.js +++ b/awx/ui/static/js/helpers/Schedules.js @@ -341,7 +341,7 @@ export default Wait('stop'); } }) - .error( function() { + .error( function(data, status) { ProcessErrors(scope, data, status, null, { hdr: 'Error!', msg: 'Failed to update schedule ' + id + ' PUT returned: ' + status }); }); From 76f01cbc2a3140f33a4194f1a97f1d33d585c524 Mon Sep 17 00:00:00 2001 From: John Mitchell Date: Mon, 11 May 2015 15:45:09 -0400 Subject: [PATCH 08/15] fixed autopopulation of org and user lookups --- awx/ui/static/js/shared/form-generator.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/awx/ui/static/js/shared/form-generator.js b/awx/ui/static/js/shared/form-generator.js index e8f89f3e56..f49fe1764b 100644 --- a/awx/ui/static/js/shared/form-generator.js +++ b/awx/ui/static/js/shared/form-generator.js @@ -197,6 +197,10 @@ angular.module('FormGenerator', [GeneratorHelpers.name, 'Utilities', listGenerat this.scope = element.scope(); } + if (options.mode) { + this.scope.mode = options.mode; + } + for (fld in form.fields) { this.scope[fld + '_field'] = form.fields[fld]; this.scope[fld + '_field'].name = fld; @@ -752,7 +756,7 @@ angular.module('FormGenerator', [GeneratorHelpers.name, 'Utilities', listGenerat html += "'"; html += (field.ngShow) ? this.attr(field, 'ngShow') : ""; html += (field.ngHide) ? this.attr(field, 'ngHide') : ""; - html += (field.awFeature) ? "aw-feature=\"" + field.awFeature + "\" " : ""; + html += (field.awFeature) ? "aw-feature=\"" + field.awFeature + "\" " : ""; html += ">\n"; //text fields From 27b06313a7403cf46476cdac3cb355a346fbd41a Mon Sep 17 00:00:00 2001 From: Joe Fiorini Date: Wed, 6 May 2015 13:15:29 -0400 Subject: [PATCH 09/15] Merge pull request #189 from joefiorini/system-tracking--addMomentjs Add moment.js via angular-moment plugin --- awx/ui/static/lib/angular-moment/.bower.json | 32 + .../static/lib/angular-moment/.editorconfig | 24 + awx/ui/static/lib/angular-moment/.gitignore | 4 + awx/ui/static/lib/angular-moment/.jshintrc | 26 + awx/ui/static/lib/angular-moment/.npmignore | 4 + awx/ui/static/lib/angular-moment/.travis.yml | 7 + awx/ui/static/lib/angular-moment/CHANGELOG.md | 131 + .../static/lib/angular-moment/CONTRIBUTING.md | 68 + awx/ui/static/lib/angular-moment/Gruntfile.js | 62 + awx/ui/static/lib/angular-moment/LICENSE | 21 + awx/ui/static/lib/angular-moment/README.md | 141 + .../lib/angular-moment/angular-moment.js | 563 + .../lib/angular-moment/angular-moment.min.js | 2 + .../angular-moment/angular-moment.min.js.map | 1 + .../lib/angular-moment/angular-moment.nuspec | 24 + awx/ui/static/lib/angular-moment/bower.json | 23 + .../static/lib/angular-moment/karma.conf.js | 36 + awx/ui/static/lib/angular-moment/package.json | 35 + awx/ui/static/lib/angular-moment/tests.js | 725 + awx/ui/static/lib/moment/.bower.json | 30 + awx/ui/static/lib/moment/CHANGELOG.md | 435 + awx/ui/static/lib/moment/LICENSE | 22 + awx/ui/static/lib/moment/Moment.js.nuspec | 28 + awx/ui/static/lib/moment/README.md | 55 + awx/ui/static/lib/moment/benchmarks/clone.js | 10 + awx/ui/static/lib/moment/bower.json | 20 + awx/ui/static/lib/moment/locale/af.js | 72 + awx/ui/static/lib/moment/locale/ar-ma.js | 58 + awx/ui/static/lib/moment/locale/ar-sa.js | 102 + awx/ui/static/lib/moment/locale/ar-tn.js | 56 + awx/ui/static/lib/moment/locale/ar.js | 135 + awx/ui/static/lib/moment/locale/az.js | 103 + awx/ui/static/lib/moment/locale/be.js | 146 + awx/ui/static/lib/moment/locale/bg.js | 89 + awx/ui/static/lib/moment/locale/bn.js | 112 + awx/ui/static/lib/moment/locale/bo.js | 109 + awx/ui/static/lib/moment/locale/br.js | 106 + awx/ui/static/lib/moment/locale/bs.js | 140 + awx/ui/static/lib/moment/locale/ca.js | 78 + awx/ui/static/lib/moment/locale/cs.js | 156 + awx/ui/static/lib/moment/locale/cv.js | 62 + awx/ui/static/lib/moment/locale/cy.js | 78 + awx/ui/static/lib/moment/locale/da.js | 59 + awx/ui/static/lib/moment/locale/de-at.js | 75 + awx/ui/static/lib/moment/locale/de.js | 74 + awx/ui/static/lib/moment/locale/el.js | 93 + awx/ui/static/lib/moment/locale/en-au.js | 65 + awx/ui/static/lib/moment/locale/en-ca.js | 62 + awx/ui/static/lib/moment/locale/en-gb.js | 66 + awx/ui/static/lib/moment/locale/eo.js | 72 + awx/ui/static/lib/moment/locale/es.js | 78 + awx/ui/static/lib/moment/locale/et.js | 79 + awx/ui/static/lib/moment/locale/eu.js | 63 + awx/ui/static/lib/moment/locale/fa.js | 104 + awx/ui/static/lib/moment/locale/fi.js | 106 + awx/ui/static/lib/moment/locale/fo.js | 59 + awx/ui/static/lib/moment/locale/fr-ca.js | 57 + awx/ui/static/lib/moment/locale/fr.js | 61 + awx/ui/static/lib/moment/locale/fy.js | 70 + awx/ui/static/lib/moment/locale/gl.js | 74 + awx/ui/static/lib/moment/locale/he.js | 81 + awx/ui/static/lib/moment/locale/hi.js | 122 + awx/ui/static/lib/moment/locale/hr.js | 139 + awx/ui/static/lib/moment/locale/hu.js | 108 + awx/ui/static/lib/moment/locale/hy-am.js | 110 + awx/ui/static/lib/moment/locale/id.js | 82 + awx/ui/static/lib/moment/locale/is.js | 126 + awx/ui/static/lib/moment/locale/it.js | 69 + awx/ui/static/lib/moment/locale/ja.js | 64 + awx/ui/static/lib/moment/locale/ka.js | 102 + awx/ui/static/lib/moment/locale/km.js | 57 + awx/ui/static/lib/moment/locale/ko.js | 67 + awx/ui/static/lib/moment/locale/lb.js | 133 + awx/ui/static/lib/moment/locale/lt.js | 114 + awx/ui/static/lib/moment/locale/lv.js | 78 + awx/ui/static/lib/moment/locale/mk.js | 89 + awx/ui/static/lib/moment/locale/ml.js | 70 + awx/ui/static/lib/moment/locale/mr.js | 120 + awx/ui/static/lib/moment/locale/ms-my.js | 81 + awx/ui/static/lib/moment/locale/my.js | 91 + awx/ui/static/lib/moment/locale/nb.js | 60 + awx/ui/static/lib/moment/locale/ne.js | 122 + awx/ui/static/lib/moment/locale/nl.js | 70 + awx/ui/static/lib/moment/locale/nn.js | 59 + awx/ui/static/lib/moment/locale/pl.js | 99 + awx/ui/static/lib/moment/locale/pt-br.js | 59 + awx/ui/static/lib/moment/locale/pt.js | 63 + awx/ui/static/lib/moment/locale/ro.js | 73 + awx/ui/static/lib/moment/locale/ru.js | 163 + awx/ui/static/lib/moment/locale/sk.js | 157 + awx/ui/static/lib/moment/locale/sl.js | 146 + awx/ui/static/lib/moment/locale/sq.js | 68 + awx/ui/static/lib/moment/locale/sr-cyrl.js | 107 + awx/ui/static/lib/moment/locale/sr.js | 107 + awx/ui/static/lib/moment/locale/sv.js | 66 + awx/ui/static/lib/moment/locale/ta.js | 94 + awx/ui/static/lib/moment/locale/th.js | 64 + awx/ui/static/lib/moment/locale/tl-ph.js | 61 + awx/ui/static/lib/moment/locale/tr.js | 89 + awx/ui/static/lib/moment/locale/tzm-latn.js | 57 + awx/ui/static/lib/moment/locale/tzm.js | 57 + awx/ui/static/lib/moment/locale/uk.js | 152 + awx/ui/static/lib/moment/locale/uz.js | 57 + awx/ui/static/lib/moment/locale/vi.js | 65 + awx/ui/static/lib/moment/locale/zh-cn.js | 126 + awx/ui/static/lib/moment/locale/zh-tw.js | 100 + awx/ui/static/lib/moment/meteor/README.md | 25 + awx/ui/static/lib/moment/meteor/export.js | 3 + awx/ui/static/lib/moment/meteor/test.js | 5 + awx/ui/static/lib/moment/min/locales.js | 6372 +++ awx/ui/static/lib/moment/min/locales.min.js | 77 + .../lib/moment/min/moment-with-locales.js | 9449 ++++ .../lib/moment/min/moment-with-locales.min.js | 79 + awx/ui/static/lib/moment/min/moment.min.js | 7 + awx/ui/static/lib/moment/min/tests.js | 38220 ++++++++++++++++ awx/ui/static/lib/moment/moment.js | 3083 ++ .../lib/moment/scripts/npm_prepublish.sh | 43 + .../moment/src/lib/create/check-overflow.js | 27 + .../moment/src/lib/create/date-from-array.js | 19 + .../src/lib/create/default-parsing-flags.js | 15 + .../moment/src/lib/create/from-anything.js | 93 + .../lib/moment/src/lib/create/from-array.js | 123 + .../lib/moment/src/lib/create/from-object.js | 13 + .../src/lib/create/from-string-and-array.js | 51 + .../src/lib/create/from-string-and-format.js | 99 + .../lib/moment/src/lib/create/from-string.js | 82 + .../static/lib/moment/src/lib/create/local.js | 5 + .../static/lib/moment/src/lib/create/utc.js | 5 + .../static/lib/moment/src/lib/create/valid.js | 34 + .../static/lib/moment/src/lib/duration/abs.js | 18 + .../moment/src/lib/duration/add-subtract.js | 21 + .../static/lib/moment/src/lib/duration/as.js | 55 + .../lib/moment/src/lib/duration/bubble.js | 54 + .../moment/src/lib/duration/constructor.js | 41 + .../lib/moment/src/lib/duration/create.js | 113 + .../lib/moment/src/lib/duration/duration.js | 12 + .../static/lib/moment/src/lib/duration/get.js | 25 + .../lib/moment/src/lib/duration/humanize.js | 64 + .../lib/moment/src/lib/duration/iso-string.js | 28 + .../lib/moment/src/lib/duration/prototype.js | 48 + .../lib/moment/src/lib/format/format.js | 95 + .../lib/moment/src/lib/locale/calendar.js | 13 + .../lib/moment/src/lib/locale/constructor.js | 2 + awx/ui/static/lib/moment/src/lib/locale/en.js | 15 + .../lib/moment/src/lib/locale/formats.js | 19 + .../lib/moment/src/lib/locale/invalid.js | 5 + .../static/lib/moment/src/lib/locale/lists.js | 48 + .../lib/moment/src/lib/locale/locale.js | 35 + .../lib/moment/src/lib/locale/locales.js | 119 + .../lib/moment/src/lib/locale/ordinal.js | 7 + .../moment/src/lib/locale/pre-post-format.js | 3 + .../lib/moment/src/lib/locale/prototype.js | 70 + .../lib/moment/src/lib/locale/relative.js | 27 + .../static/lib/moment/src/lib/locale/set.js | 14 + .../lib/moment/src/lib/moment/add-subtract.js | 46 + .../lib/moment/src/lib/moment/calendar.js | 17 + .../static/lib/moment/src/lib/moment/clone.js | 5 + .../lib/moment/src/lib/moment/compare.js | 43 + .../lib/moment/src/lib/moment/constructor.js | 72 + .../static/lib/moment/src/lib/moment/diff.js | 49 + .../lib/moment/src/lib/moment/format.js | 27 + .../static/lib/moment/src/lib/moment/from.js | 10 + .../lib/moment/src/lib/moment/get-set.js | 39 + .../lib/moment/src/lib/moment/locale.js | 34 + .../lib/moment/src/lib/moment/min-max.js | 54 + .../lib/moment/src/lib/moment/moment.js | 26 + .../lib/moment/src/lib/moment/prototype.js | 141 + .../lib/moment/src/lib/moment/start-end-of.js | 52 + .../lib/moment/src/lib/moment/to-type.js | 16 + .../static/lib/moment/src/lib/moment/valid.js | 14 + .../static/lib/moment/src/lib/parse/regex.js | 44 + .../static/lib/moment/src/lib/parse/token.js | 32 + .../lib/moment/src/lib/units/aliases.js | 29 + .../lib/moment/src/lib/units/constants.js | 7 + .../lib/moment/src/lib/units/day-of-month.js | 32 + .../lib/moment/src/lib/units/day-of-week.js | 133 + .../lib/moment/src/lib/units/day-of-year.js | 49 + .../static/lib/moment/src/lib/units/hour.js | 76 + .../lib/moment/src/lib/units/millisecond.js | 42 + .../static/lib/moment/src/lib/units/minute.js | 24 + .../static/lib/moment/src/lib/units/month.js | 128 + .../static/lib/moment/src/lib/units/offset.js | 206 + .../lib/moment/src/lib/units/quarter.js | 27 + .../static/lib/moment/src/lib/units/second.js | 24 + .../lib/moment/src/lib/units/timestamp.js | 20 + .../lib/moment/src/lib/units/timezone.js | 16 + .../static/lib/moment/src/lib/units/units.js | 20 + .../lib/moment/src/lib/units/week-year.js | 78 + .../static/lib/moment/src/lib/units/week.js | 88 + .../static/lib/moment/src/lib/units/year.js | 60 + .../lib/moment/src/lib/utils/abs-floor.js | 7 + .../moment/src/lib/utils/compare-arrays.js | 16 + .../lib/moment/src/lib/utils/defaults.js | 10 + .../lib/moment/src/lib/utils/deprecate.js | 31 + .../static/lib/moment/src/lib/utils/extend.js | 19 + .../lib/moment/src/lib/utils/has-own-prop.js | 3 + .../static/lib/moment/src/lib/utils/hooks.js | 13 + .../lib/moment/src/lib/utils/is-array.js | 3 + .../lib/moment/src/lib/utils/is-date.js | 3 + awx/ui/static/lib/moment/src/lib/utils/map.js | 7 + .../static/lib/moment/src/lib/utils/to-int.js | 14 + .../lib/moment/src/lib/utils/zero-fill.js | 9 + awx/ui/static/lib/moment/src/locale/af.js | 63 + awx/ui/static/lib/moment/src/locale/ar-ma.js | 50 + awx/ui/static/lib/moment/src/locale/ar-sa.js | 94 + awx/ui/static/lib/moment/src/locale/ar-tn.js | 48 + awx/ui/static/lib/moment/src/locale/ar.js | 127 + awx/ui/static/lib/moment/src/locale/az.js | 95 + awx/ui/static/lib/moment/src/locale/be.js | 138 + awx/ui/static/lib/moment/src/locale/bg.js | 81 + awx/ui/static/lib/moment/src/locale/bn.js | 104 + awx/ui/static/lib/moment/src/locale/bo.js | 101 + awx/ui/static/lib/moment/src/locale/br.js | 98 + awx/ui/static/lib/moment/src/locale/bs.js | 132 + awx/ui/static/lib/moment/src/locale/ca.js | 70 + awx/ui/static/lib/moment/src/locale/cs.js | 148 + awx/ui/static/lib/moment/src/locale/cv.js | 54 + awx/ui/static/lib/moment/src/locale/cy.js | 70 + awx/ui/static/lib/moment/src/locale/da.js | 51 + awx/ui/static/lib/moment/src/locale/de-at.js | 67 + awx/ui/static/lib/moment/src/locale/de.js | 66 + awx/ui/static/lib/moment/src/locale/el.js | 85 + awx/ui/static/lib/moment/src/locale/en-au.js | 57 + awx/ui/static/lib/moment/src/locale/en-ca.js | 54 + awx/ui/static/lib/moment/src/locale/en-gb.js | 58 + awx/ui/static/lib/moment/src/locale/eo.js | 64 + awx/ui/static/lib/moment/src/locale/es.js | 70 + awx/ui/static/lib/moment/src/locale/et.js | 71 + awx/ui/static/lib/moment/src/locale/eu.js | 55 + awx/ui/static/lib/moment/src/locale/fa.js | 96 + awx/ui/static/lib/moment/src/locale/fi.js | 98 + awx/ui/static/lib/moment/src/locale/fo.js | 51 + awx/ui/static/lib/moment/src/locale/fr-ca.js | 49 + awx/ui/static/lib/moment/src/locale/fr.js | 53 + awx/ui/static/lib/moment/src/locale/fy.js | 62 + awx/ui/static/lib/moment/src/locale/gl.js | 66 + awx/ui/static/lib/moment/src/locale/he.js | 73 + awx/ui/static/lib/moment/src/locale/hi.js | 114 + awx/ui/static/lib/moment/src/locale/hr.js | 131 + awx/ui/static/lib/moment/src/locale/hu.js | 100 + awx/ui/static/lib/moment/src/locale/hy-am.js | 102 + awx/ui/static/lib/moment/src/locale/id.js | 74 + awx/ui/static/lib/moment/src/locale/is.js | 118 + awx/ui/static/lib/moment/src/locale/it.js | 61 + awx/ui/static/lib/moment/src/locale/ja.js | 56 + awx/ui/static/lib/moment/src/locale/ka.js | 94 + awx/ui/static/lib/moment/src/locale/km.js | 49 + awx/ui/static/lib/moment/src/locale/ko.js | 59 + awx/ui/static/lib/moment/src/locale/lb.js | 125 + awx/ui/static/lib/moment/src/locale/lt.js | 106 + awx/ui/static/lib/moment/src/locale/lv.js | 70 + awx/ui/static/lib/moment/src/locale/mk.js | 81 + awx/ui/static/lib/moment/src/locale/ml.js | 62 + awx/ui/static/lib/moment/src/locale/mr.js | 112 + awx/ui/static/lib/moment/src/locale/ms-my.js | 73 + awx/ui/static/lib/moment/src/locale/my.js | 83 + awx/ui/static/lib/moment/src/locale/nb.js | 52 + awx/ui/static/lib/moment/src/locale/ne.js | 114 + awx/ui/static/lib/moment/src/locale/nl.js | 62 + awx/ui/static/lib/moment/src/locale/nn.js | 51 + awx/ui/static/lib/moment/src/locale/pl.js | 91 + awx/ui/static/lib/moment/src/locale/pt-br.js | 51 + awx/ui/static/lib/moment/src/locale/pt.js | 55 + awx/ui/static/lib/moment/src/locale/ro.js | 65 + awx/ui/static/lib/moment/src/locale/ru.js | 155 + awx/ui/static/lib/moment/src/locale/sk.js | 149 + awx/ui/static/lib/moment/src/locale/sl.js | 138 + awx/ui/static/lib/moment/src/locale/sq.js | 60 + .../static/lib/moment/src/locale/sr-cyrl.js | 99 + awx/ui/static/lib/moment/src/locale/sr.js | 99 + awx/ui/static/lib/moment/src/locale/sv.js | 58 + awx/ui/static/lib/moment/src/locale/ta.js | 86 + awx/ui/static/lib/moment/src/locale/th.js | 56 + awx/ui/static/lib/moment/src/locale/tl-ph.js | 53 + awx/ui/static/lib/moment/src/locale/tr.js | 81 + .../static/lib/moment/src/locale/tzm-latn.js | 49 + awx/ui/static/lib/moment/src/locale/tzm.js | 49 + awx/ui/static/lib/moment/src/locale/uk.js | 144 + awx/ui/static/lib/moment/src/locale/uz.js | 49 + awx/ui/static/lib/moment/src/locale/vi.js | 57 + awx/ui/static/lib/moment/src/locale/zh-cn.js | 118 + awx/ui/static/lib/moment/src/locale/zh-tw.js | 92 + awx/ui/static/lib/moment/src/moment.js | 68 + .../static/lib/moment/templates/amd-named.js | 7 + awx/ui/static/lib/moment/templates/amd.js | 7 + awx/ui/static/lib/moment/templates/globals.js | 5 + .../lib/moment/templates/locale-header.js | 5 + .../lib/moment/templates/test-header.js | 5 + 288 files changed, 77106 insertions(+) create mode 100644 awx/ui/static/lib/angular-moment/.bower.json create mode 100644 awx/ui/static/lib/angular-moment/.editorconfig create mode 100644 awx/ui/static/lib/angular-moment/.gitignore create mode 100644 awx/ui/static/lib/angular-moment/.jshintrc create mode 100644 awx/ui/static/lib/angular-moment/.npmignore create mode 100644 awx/ui/static/lib/angular-moment/.travis.yml create mode 100644 awx/ui/static/lib/angular-moment/CHANGELOG.md create mode 100644 awx/ui/static/lib/angular-moment/CONTRIBUTING.md create mode 100644 awx/ui/static/lib/angular-moment/Gruntfile.js create mode 100644 awx/ui/static/lib/angular-moment/LICENSE create mode 100644 awx/ui/static/lib/angular-moment/README.md create mode 100644 awx/ui/static/lib/angular-moment/angular-moment.js create mode 100644 awx/ui/static/lib/angular-moment/angular-moment.min.js create mode 100644 awx/ui/static/lib/angular-moment/angular-moment.min.js.map create mode 100644 awx/ui/static/lib/angular-moment/angular-moment.nuspec create mode 100644 awx/ui/static/lib/angular-moment/bower.json create mode 100644 awx/ui/static/lib/angular-moment/karma.conf.js create mode 100644 awx/ui/static/lib/angular-moment/package.json create mode 100644 awx/ui/static/lib/angular-moment/tests.js create mode 100644 awx/ui/static/lib/moment/.bower.json create mode 100644 awx/ui/static/lib/moment/CHANGELOG.md create mode 100644 awx/ui/static/lib/moment/LICENSE create mode 100644 awx/ui/static/lib/moment/Moment.js.nuspec create mode 100644 awx/ui/static/lib/moment/README.md create mode 100644 awx/ui/static/lib/moment/benchmarks/clone.js create mode 100644 awx/ui/static/lib/moment/bower.json create mode 100644 awx/ui/static/lib/moment/locale/af.js create mode 100644 awx/ui/static/lib/moment/locale/ar-ma.js create mode 100644 awx/ui/static/lib/moment/locale/ar-sa.js create mode 100644 awx/ui/static/lib/moment/locale/ar-tn.js create mode 100644 awx/ui/static/lib/moment/locale/ar.js create mode 100644 awx/ui/static/lib/moment/locale/az.js create mode 100644 awx/ui/static/lib/moment/locale/be.js create mode 100644 awx/ui/static/lib/moment/locale/bg.js create mode 100644 awx/ui/static/lib/moment/locale/bn.js create mode 100644 awx/ui/static/lib/moment/locale/bo.js create mode 100644 awx/ui/static/lib/moment/locale/br.js create mode 100644 awx/ui/static/lib/moment/locale/bs.js create mode 100644 awx/ui/static/lib/moment/locale/ca.js create mode 100644 awx/ui/static/lib/moment/locale/cs.js create mode 100644 awx/ui/static/lib/moment/locale/cv.js create mode 100644 awx/ui/static/lib/moment/locale/cy.js create mode 100644 awx/ui/static/lib/moment/locale/da.js create mode 100644 awx/ui/static/lib/moment/locale/de-at.js create mode 100644 awx/ui/static/lib/moment/locale/de.js create mode 100644 awx/ui/static/lib/moment/locale/el.js create mode 100644 awx/ui/static/lib/moment/locale/en-au.js create mode 100644 awx/ui/static/lib/moment/locale/en-ca.js create mode 100644 awx/ui/static/lib/moment/locale/en-gb.js create mode 100644 awx/ui/static/lib/moment/locale/eo.js create mode 100644 awx/ui/static/lib/moment/locale/es.js create mode 100644 awx/ui/static/lib/moment/locale/et.js create mode 100644 awx/ui/static/lib/moment/locale/eu.js create mode 100644 awx/ui/static/lib/moment/locale/fa.js create mode 100644 awx/ui/static/lib/moment/locale/fi.js create mode 100644 awx/ui/static/lib/moment/locale/fo.js create mode 100644 awx/ui/static/lib/moment/locale/fr-ca.js create mode 100644 awx/ui/static/lib/moment/locale/fr.js create mode 100644 awx/ui/static/lib/moment/locale/fy.js create mode 100644 awx/ui/static/lib/moment/locale/gl.js create mode 100644 awx/ui/static/lib/moment/locale/he.js create mode 100644 awx/ui/static/lib/moment/locale/hi.js create mode 100644 awx/ui/static/lib/moment/locale/hr.js create mode 100644 awx/ui/static/lib/moment/locale/hu.js create mode 100644 awx/ui/static/lib/moment/locale/hy-am.js create mode 100644 awx/ui/static/lib/moment/locale/id.js create mode 100644 awx/ui/static/lib/moment/locale/is.js create mode 100644 awx/ui/static/lib/moment/locale/it.js create mode 100644 awx/ui/static/lib/moment/locale/ja.js create mode 100644 awx/ui/static/lib/moment/locale/ka.js create mode 100644 awx/ui/static/lib/moment/locale/km.js create mode 100644 awx/ui/static/lib/moment/locale/ko.js create mode 100644 awx/ui/static/lib/moment/locale/lb.js create mode 100644 awx/ui/static/lib/moment/locale/lt.js create mode 100644 awx/ui/static/lib/moment/locale/lv.js create mode 100644 awx/ui/static/lib/moment/locale/mk.js create mode 100644 awx/ui/static/lib/moment/locale/ml.js create mode 100644 awx/ui/static/lib/moment/locale/mr.js create mode 100644 awx/ui/static/lib/moment/locale/ms-my.js create mode 100644 awx/ui/static/lib/moment/locale/my.js create mode 100644 awx/ui/static/lib/moment/locale/nb.js create mode 100644 awx/ui/static/lib/moment/locale/ne.js create mode 100644 awx/ui/static/lib/moment/locale/nl.js create mode 100644 awx/ui/static/lib/moment/locale/nn.js create mode 100644 awx/ui/static/lib/moment/locale/pl.js create mode 100644 awx/ui/static/lib/moment/locale/pt-br.js create mode 100644 awx/ui/static/lib/moment/locale/pt.js create mode 100644 awx/ui/static/lib/moment/locale/ro.js create mode 100644 awx/ui/static/lib/moment/locale/ru.js create mode 100644 awx/ui/static/lib/moment/locale/sk.js create mode 100644 awx/ui/static/lib/moment/locale/sl.js create mode 100644 awx/ui/static/lib/moment/locale/sq.js create mode 100644 awx/ui/static/lib/moment/locale/sr-cyrl.js create mode 100644 awx/ui/static/lib/moment/locale/sr.js create mode 100644 awx/ui/static/lib/moment/locale/sv.js create mode 100644 awx/ui/static/lib/moment/locale/ta.js create mode 100644 awx/ui/static/lib/moment/locale/th.js create mode 100644 awx/ui/static/lib/moment/locale/tl-ph.js create mode 100644 awx/ui/static/lib/moment/locale/tr.js create mode 100644 awx/ui/static/lib/moment/locale/tzm-latn.js create mode 100644 awx/ui/static/lib/moment/locale/tzm.js create mode 100644 awx/ui/static/lib/moment/locale/uk.js create mode 100644 awx/ui/static/lib/moment/locale/uz.js create mode 100644 awx/ui/static/lib/moment/locale/vi.js create mode 100644 awx/ui/static/lib/moment/locale/zh-cn.js create mode 100644 awx/ui/static/lib/moment/locale/zh-tw.js create mode 100644 awx/ui/static/lib/moment/meteor/README.md create mode 100644 awx/ui/static/lib/moment/meteor/export.js create mode 100644 awx/ui/static/lib/moment/meteor/test.js create mode 100644 awx/ui/static/lib/moment/min/locales.js create mode 100644 awx/ui/static/lib/moment/min/locales.min.js create mode 100644 awx/ui/static/lib/moment/min/moment-with-locales.js create mode 100644 awx/ui/static/lib/moment/min/moment-with-locales.min.js create mode 100644 awx/ui/static/lib/moment/min/moment.min.js create mode 100644 awx/ui/static/lib/moment/min/tests.js create mode 100644 awx/ui/static/lib/moment/moment.js create mode 100755 awx/ui/static/lib/moment/scripts/npm_prepublish.sh create mode 100644 awx/ui/static/lib/moment/src/lib/create/check-overflow.js create mode 100644 awx/ui/static/lib/moment/src/lib/create/date-from-array.js create mode 100644 awx/ui/static/lib/moment/src/lib/create/default-parsing-flags.js create mode 100644 awx/ui/static/lib/moment/src/lib/create/from-anything.js create mode 100644 awx/ui/static/lib/moment/src/lib/create/from-array.js create mode 100644 awx/ui/static/lib/moment/src/lib/create/from-object.js create mode 100644 awx/ui/static/lib/moment/src/lib/create/from-string-and-array.js create mode 100644 awx/ui/static/lib/moment/src/lib/create/from-string-and-format.js create mode 100644 awx/ui/static/lib/moment/src/lib/create/from-string.js create mode 100644 awx/ui/static/lib/moment/src/lib/create/local.js create mode 100644 awx/ui/static/lib/moment/src/lib/create/utc.js create mode 100644 awx/ui/static/lib/moment/src/lib/create/valid.js create mode 100644 awx/ui/static/lib/moment/src/lib/duration/abs.js create mode 100644 awx/ui/static/lib/moment/src/lib/duration/add-subtract.js create mode 100644 awx/ui/static/lib/moment/src/lib/duration/as.js create mode 100644 awx/ui/static/lib/moment/src/lib/duration/bubble.js create mode 100644 awx/ui/static/lib/moment/src/lib/duration/constructor.js create mode 100644 awx/ui/static/lib/moment/src/lib/duration/create.js create mode 100644 awx/ui/static/lib/moment/src/lib/duration/duration.js create mode 100644 awx/ui/static/lib/moment/src/lib/duration/get.js create mode 100644 awx/ui/static/lib/moment/src/lib/duration/humanize.js create mode 100644 awx/ui/static/lib/moment/src/lib/duration/iso-string.js create mode 100644 awx/ui/static/lib/moment/src/lib/duration/prototype.js create mode 100644 awx/ui/static/lib/moment/src/lib/format/format.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/calendar.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/constructor.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/en.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/formats.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/invalid.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/lists.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/locale.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/locales.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/ordinal.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/pre-post-format.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/prototype.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/relative.js create mode 100644 awx/ui/static/lib/moment/src/lib/locale/set.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/add-subtract.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/calendar.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/clone.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/compare.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/constructor.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/diff.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/format.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/from.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/get-set.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/locale.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/min-max.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/moment.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/prototype.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/start-end-of.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/to-type.js create mode 100644 awx/ui/static/lib/moment/src/lib/moment/valid.js create mode 100644 awx/ui/static/lib/moment/src/lib/parse/regex.js create mode 100644 awx/ui/static/lib/moment/src/lib/parse/token.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/aliases.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/constants.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/day-of-month.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/day-of-week.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/day-of-year.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/hour.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/millisecond.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/minute.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/month.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/offset.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/quarter.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/second.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/timestamp.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/timezone.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/units.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/week-year.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/week.js create mode 100644 awx/ui/static/lib/moment/src/lib/units/year.js create mode 100644 awx/ui/static/lib/moment/src/lib/utils/abs-floor.js create mode 100644 awx/ui/static/lib/moment/src/lib/utils/compare-arrays.js create mode 100644 awx/ui/static/lib/moment/src/lib/utils/defaults.js create mode 100644 awx/ui/static/lib/moment/src/lib/utils/deprecate.js create mode 100644 awx/ui/static/lib/moment/src/lib/utils/extend.js create mode 100644 awx/ui/static/lib/moment/src/lib/utils/has-own-prop.js create mode 100644 awx/ui/static/lib/moment/src/lib/utils/hooks.js create mode 100644 awx/ui/static/lib/moment/src/lib/utils/is-array.js create mode 100644 awx/ui/static/lib/moment/src/lib/utils/is-date.js create mode 100644 awx/ui/static/lib/moment/src/lib/utils/map.js create mode 100644 awx/ui/static/lib/moment/src/lib/utils/to-int.js create mode 100644 awx/ui/static/lib/moment/src/lib/utils/zero-fill.js create mode 100644 awx/ui/static/lib/moment/src/locale/af.js create mode 100644 awx/ui/static/lib/moment/src/locale/ar-ma.js create mode 100644 awx/ui/static/lib/moment/src/locale/ar-sa.js create mode 100644 awx/ui/static/lib/moment/src/locale/ar-tn.js create mode 100644 awx/ui/static/lib/moment/src/locale/ar.js create mode 100644 awx/ui/static/lib/moment/src/locale/az.js create mode 100644 awx/ui/static/lib/moment/src/locale/be.js create mode 100644 awx/ui/static/lib/moment/src/locale/bg.js create mode 100644 awx/ui/static/lib/moment/src/locale/bn.js create mode 100644 awx/ui/static/lib/moment/src/locale/bo.js create mode 100644 awx/ui/static/lib/moment/src/locale/br.js create mode 100644 awx/ui/static/lib/moment/src/locale/bs.js create mode 100644 awx/ui/static/lib/moment/src/locale/ca.js create mode 100644 awx/ui/static/lib/moment/src/locale/cs.js create mode 100644 awx/ui/static/lib/moment/src/locale/cv.js create mode 100644 awx/ui/static/lib/moment/src/locale/cy.js create mode 100644 awx/ui/static/lib/moment/src/locale/da.js create mode 100644 awx/ui/static/lib/moment/src/locale/de-at.js create mode 100644 awx/ui/static/lib/moment/src/locale/de.js create mode 100644 awx/ui/static/lib/moment/src/locale/el.js create mode 100644 awx/ui/static/lib/moment/src/locale/en-au.js create mode 100644 awx/ui/static/lib/moment/src/locale/en-ca.js create mode 100644 awx/ui/static/lib/moment/src/locale/en-gb.js create mode 100644 awx/ui/static/lib/moment/src/locale/eo.js create mode 100644 awx/ui/static/lib/moment/src/locale/es.js create mode 100644 awx/ui/static/lib/moment/src/locale/et.js create mode 100644 awx/ui/static/lib/moment/src/locale/eu.js create mode 100644 awx/ui/static/lib/moment/src/locale/fa.js create mode 100644 awx/ui/static/lib/moment/src/locale/fi.js create mode 100644 awx/ui/static/lib/moment/src/locale/fo.js create mode 100644 awx/ui/static/lib/moment/src/locale/fr-ca.js create mode 100644 awx/ui/static/lib/moment/src/locale/fr.js create mode 100644 awx/ui/static/lib/moment/src/locale/fy.js create mode 100644 awx/ui/static/lib/moment/src/locale/gl.js create mode 100644 awx/ui/static/lib/moment/src/locale/he.js create mode 100644 awx/ui/static/lib/moment/src/locale/hi.js create mode 100644 awx/ui/static/lib/moment/src/locale/hr.js create mode 100644 awx/ui/static/lib/moment/src/locale/hu.js create mode 100644 awx/ui/static/lib/moment/src/locale/hy-am.js create mode 100644 awx/ui/static/lib/moment/src/locale/id.js create mode 100644 awx/ui/static/lib/moment/src/locale/is.js create mode 100644 awx/ui/static/lib/moment/src/locale/it.js create mode 100644 awx/ui/static/lib/moment/src/locale/ja.js create mode 100644 awx/ui/static/lib/moment/src/locale/ka.js create mode 100644 awx/ui/static/lib/moment/src/locale/km.js create mode 100644 awx/ui/static/lib/moment/src/locale/ko.js create mode 100644 awx/ui/static/lib/moment/src/locale/lb.js create mode 100644 awx/ui/static/lib/moment/src/locale/lt.js create mode 100644 awx/ui/static/lib/moment/src/locale/lv.js create mode 100644 awx/ui/static/lib/moment/src/locale/mk.js create mode 100644 awx/ui/static/lib/moment/src/locale/ml.js create mode 100644 awx/ui/static/lib/moment/src/locale/mr.js create mode 100644 awx/ui/static/lib/moment/src/locale/ms-my.js create mode 100644 awx/ui/static/lib/moment/src/locale/my.js create mode 100644 awx/ui/static/lib/moment/src/locale/nb.js create mode 100644 awx/ui/static/lib/moment/src/locale/ne.js create mode 100644 awx/ui/static/lib/moment/src/locale/nl.js create mode 100644 awx/ui/static/lib/moment/src/locale/nn.js create mode 100644 awx/ui/static/lib/moment/src/locale/pl.js create mode 100644 awx/ui/static/lib/moment/src/locale/pt-br.js create mode 100644 awx/ui/static/lib/moment/src/locale/pt.js create mode 100644 awx/ui/static/lib/moment/src/locale/ro.js create mode 100644 awx/ui/static/lib/moment/src/locale/ru.js create mode 100644 awx/ui/static/lib/moment/src/locale/sk.js create mode 100644 awx/ui/static/lib/moment/src/locale/sl.js create mode 100644 awx/ui/static/lib/moment/src/locale/sq.js create mode 100644 awx/ui/static/lib/moment/src/locale/sr-cyrl.js create mode 100644 awx/ui/static/lib/moment/src/locale/sr.js create mode 100644 awx/ui/static/lib/moment/src/locale/sv.js create mode 100644 awx/ui/static/lib/moment/src/locale/ta.js create mode 100644 awx/ui/static/lib/moment/src/locale/th.js create mode 100644 awx/ui/static/lib/moment/src/locale/tl-ph.js create mode 100644 awx/ui/static/lib/moment/src/locale/tr.js create mode 100644 awx/ui/static/lib/moment/src/locale/tzm-latn.js create mode 100644 awx/ui/static/lib/moment/src/locale/tzm.js create mode 100644 awx/ui/static/lib/moment/src/locale/uk.js create mode 100644 awx/ui/static/lib/moment/src/locale/uz.js create mode 100644 awx/ui/static/lib/moment/src/locale/vi.js create mode 100644 awx/ui/static/lib/moment/src/locale/zh-cn.js create mode 100644 awx/ui/static/lib/moment/src/locale/zh-tw.js create mode 100644 awx/ui/static/lib/moment/src/moment.js create mode 100644 awx/ui/static/lib/moment/templates/amd-named.js create mode 100644 awx/ui/static/lib/moment/templates/amd.js create mode 100644 awx/ui/static/lib/moment/templates/globals.js create mode 100644 awx/ui/static/lib/moment/templates/locale-header.js create mode 100644 awx/ui/static/lib/moment/templates/test-header.js diff --git a/awx/ui/static/lib/angular-moment/.bower.json b/awx/ui/static/lib/angular-moment/.bower.json new file mode 100644 index 0000000000..aa74eee08f --- /dev/null +++ b/awx/ui/static/lib/angular-moment/.bower.json @@ -0,0 +1,32 @@ +{ + "name": "angular-moment", + "version": "0.10.1", + "description": "Moment.JS directives & filters for AngularJS (timeago alternative)", + "author": "Uri Shaked", + "license": "MIT", + "homepage": "http://github.com/urish/angular-moment", + "main": "./angular-moment.js", + "ignore": [], + "dependencies": { + "angular": ">=1.2.0 <1.5.0", + "moment": ">=2.8.0 <2.11.0" + }, + "devDependencies": { + "angular-mocks": "1.3.x", + "moment-timezone": "0.3.1" + }, + "repository": { + "type": "git", + "url": "git://github.com/urish/angular-moment.git" + }, + "_release": "0.10.1", + "_resolution": { + "type": "version", + "tag": "0.10.1", + "commit": "8910240ee1872478a1b318d2d800c1c073526c37" + }, + "_source": "git://github.com/urish/angular-moment.git", + "_target": "~0.10.1", + "_originalSource": "angular-moment", + "_direct": true +} \ No newline at end of file diff --git a/awx/ui/static/lib/angular-moment/.editorconfig b/awx/ui/static/lib/angular-moment/.editorconfig new file mode 100644 index 0000000000..297368244a --- /dev/null +++ b/awx/ui/static/lib/angular-moment/.editorconfig @@ -0,0 +1,24 @@ +# EditorConfig helps developers define and maintain consistent +# coding styles between different editors and IDEs +# editorconfig.org + +root = true + +[*] + +# Change these settings to your own preference +indent_style = tab +indent_size = 4 + +# We recommend you to keep these unchanged +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[{package.json,bower.json}] +indent_style=space +indent_size=2 + +[*.md] +trim_trailing_whitespace = false diff --git a/awx/ui/static/lib/angular-moment/.gitignore b/awx/ui/static/lib/angular-moment/.gitignore new file mode 100644 index 0000000000..fccb56b324 --- /dev/null +++ b/awx/ui/static/lib/angular-moment/.gitignore @@ -0,0 +1,4 @@ +/.idea +/bower_components +/node_modules +/coverage \ No newline at end of file diff --git a/awx/ui/static/lib/angular-moment/.jshintrc b/awx/ui/static/lib/angular-moment/.jshintrc new file mode 100644 index 0000000000..d430ef2a6b --- /dev/null +++ b/awx/ui/static/lib/angular-moment/.jshintrc @@ -0,0 +1,26 @@ +{ + "node": true, + "browser": true, + "esnext": true, + "bitwise": true, + "camelcase": true, + "curly": true, + "eqeqeq": true, + "immed": true, + "indent": 2, + "latedef": true, + "newcap": true, + "noarg": true, + "quotmark": "single", + "regexp": true, + "undef": true, + "unused": true, + "strict": true, + "trailing": true, + "smarttabs": true, + "maxdepth": 2, + "maxcomplexity": 10, + "globals": { + "angular": false + } +} diff --git a/awx/ui/static/lib/angular-moment/.npmignore b/awx/ui/static/lib/angular-moment/.npmignore new file mode 100644 index 0000000000..2a9c3935f7 --- /dev/null +++ b/awx/ui/static/lib/angular-moment/.npmignore @@ -0,0 +1,4 @@ +.idea +bower_components +node_modules +coverage diff --git a/awx/ui/static/lib/angular-moment/.travis.yml b/awx/ui/static/lib/angular-moment/.travis.yml new file mode 100644 index 0000000000..c85bdee3c0 --- /dev/null +++ b/awx/ui/static/lib/angular-moment/.travis.yml @@ -0,0 +1,7 @@ +language: node_js +node_js: + - "0.10" +before_script: + - npm run bower +after_success: + - cat ./coverage/*/lcov.info | ./node_modules/coveralls/bin/coveralls.js diff --git a/awx/ui/static/lib/angular-moment/CHANGELOG.md b/awx/ui/static/lib/angular-moment/CHANGELOG.md new file mode 100644 index 0000000000..669057ba3b --- /dev/null +++ b/awx/ui/static/lib/angular-moment/CHANGELOG.md @@ -0,0 +1,131 @@ +# Changelog + +## 0.10.1 - 2015-05-01 +- Fix broken SystemJS/JSPM support (see [#104](https://github.com/urish/angular-moment/issues/104)) + +## 0.10.0 - 2015-04-10 +- Breaking change: removed one-time binding for `am-time-ago` in favor of AngularJS 1.3's one time binding ([#122](https://github.com/urish/angular-moment/issues/122)) +- Remove support for AngularJS 1.0.x and 1.1.x. +- Support moment.js v2.10.x +- Support for displaying full dates in `am-time-ago` (see [#75](https://github.com/urish/angular-moment/issues/75)) +- Support Angular Core's style CommonJS standard ([#123](https://github.com/urish/angular-moment/pull/123), contributed by [seanhealy](https://github.com/seanhealy)) +- Added an optional timezone parameter to amDateFormat ([#90](https://github.com/urish/angular-moment/pull/90), contributed by [robertbrooker](https://github.com/robertbrooker)) + +## 0.9.2 - 2015-03-17 +- Critical fix: npm install angular-moment fails ([#121](https://github.com/urish/angular-moment/issues/121)) + +## 0.9.1 - 2015-03-17 +- Add support for locale strings customization ([#102](https://github.com/urish/angular-moment/pull/102), contributed by [vosi](https://github.com/vosi)) +- Add `amDifference` filter ([#120](https://github.com/urish/angular-moment/pull/120), contributed by [ajhodges](https://github.com/ajhodges)) +- Support for changing the timezone via `amMoment.changeTimezone()` ([#92](https://github.com/urish/angular-moment/issues/92)) +- Support for AngularJS 1.4.x +- Remove explicit module name for RequireJS ([#112](https://github.com/urish/angular-moment/pull/112), contributed by [WilliamCarter](https://github.com/WilliamCarter)) + +## 0.9.0 - 2015-01-11 +- Support moment.js v2.9.0. See [here](https://gist.github.com/ichernev/0c9a9b49951111a27ce7) for changelog. +- Removed support for older moment.js versions. Only 2.8.0 and newer versions are now supported. +- Removed deprecated method: `amMoment.changeLanguage()`. Use `amMoment.changeLocale()` instead. +- Removed deprecated event: `amMoment:languageChange`. Listen for `amMoment:localeChange` instead. +- Filters are now stateful by default (fixes [#97](https://github.com/urish/angular-moment/issues/97)). +- The project is now available on [NuGet](https://www.nuget.org/packages/angular-moment/) ([#99](https://github.com/urish/angular-moment/pull/99), contributed by [markvp](https://github.com/markvp)). + +## 0.8.3 - 2014-12-08 +- `amTimeAgo` filter ([#96](https://github.com/urish/angular-moment/pull/96), contributed by [maxklenk](https://github.com/maxklenk)) +- Show formatted time as element title ([#78](https://github.com/urish/angular-moment/pull/78), contributed by [ctesene](https://github.com/ctesene)) +- Support commonjs and browserify ([#95](https://github.com/urish/angular-moment/pull/95), contributed by [Pencroff](https://github.com/Pencroff)) +- SystemJS Loader support ([#85](https://github.com/urish/angular-moment/pull/85), contributed by [capaj](https://github.com/capaj)) + +## 0.8.2 - 2014-09-07 +- `amMoment.changeLanguage()` was deprecated in favor of `amMoment.changeLocale()` (following [a change](http://momentjs.com/docs/#/i18n/changing-locale/) introduced in moment v2.8.1) +- Bugfix: changing the locale emitted a deprecation warning (see [#76](https://github.com/urish/angular-moment/issues/76) for details). + +## 0.8.1 - 2014-09-01 +- Support moment.js v2.8.0. See [here](https://gist.github.com/ichernev/ac3899324a5fa6c8c9b4) for changelog. +- Support moment-timezone v0.2.1. See [here](https://github.com/moment/moment-timezone/blob/develop/changelog.md#021-2014-08-02) for changelog. +- Bugfix: `updateTime()` is called too often for future dates ([#73](https://github.com/urish/angular-moment/issues/73)) + +## 0.8.0 - 2014-07-26 +- Generate source map for the minified version ([#50](https://github.com/urish/angular-moment/issues/50)) +- Add support HTML `