{"version":3,"sources":["scripts/app.js"],"names":["angular","module","controller","$rootScope","$translate","authService","self","this","userName","title","text","instant","routerPath","support","phoneText","phoneHref","emailTitle","emailAddress","liveChat","logout","event","preventDefault","createNavigationArray","navigationArray","name","icon","hasPermission","type","accordion","clickFunction","getContext","then","data","profile","subText","account","accountNumber","number","user","firstName","lastName","config","$stateProvider","state","url","templateUrl","controllerAs","resolve","myProducts","DudeApi","MyProductsEntity","query","$promise","listOfProducts","filter","constant","users","create","read","update","accounts","delete","$scope","userContextLoaded","$on","api","core","security","file","report","analytics","pendo","apiKey","productName","settings","clientId","$urlRouterProvider","$translateProvider","appConfig","dudeApiConfigProvider","loginRedirectorProvider","preferredLanguage","useSanitizeValueStrategy","otherwise","$injector","$location","path","get","transitionTo","baseUrl","securityUrl","fileUrl","reportUrl","run","$log","$window","notification","marketizr","dudeGuid","init","baseLogObj","accountDbId","id","accountName","asset","assets","userId","userEmail","email","newrelic","isObject","message","dudeReferenceId","generate","actionData","extend","addPageAction","document","body","scrollTop","documentElement","log","arguments","translations","home","TODO","navBar","product","mainNav","toggleNav","accountSettings","WOID","assetTypes","invalidId","configurations","userSettings","editProfile","changePassword","notificationSettings","requester","workOrders","newWorkOrder","helpDropdown","address","phone","phoneDisplay","general","filters","sort","all","result","results","noResults","actionsText","edit","refineBy","viewDetails","inactive","required","search","close","selectAll","unselectAll","clearAll","disabled","notActivated","at","actions","new","add","save","saveAndNext","saveAndEdit","saveAndFinish","cancel","ok","yes","no","back","validation","emailAlreadyExists","timeEmpty","abbreviations","hours","hour","$templateCache","put"],"mappings":"AAAA,YAEAA,SAAQC,OAAO,UAAW,WAAY,oBAAqB,YAAa,YAIxED,QAAQC,OAAO,UACVC,WAAW,oBAAA,aAAA,aAAA,cAAoB,SAAUC,EAAYC,EAAYC,GAC9D,GAAIC,GAAOC,KACPC,EAAW,EAEfF,GAAKG,OACDC,KAAMN,EAAWO,QAAQ,gBACzBC,WAAY,sBAGhBN,EAAKO,SACDC,UAAWV,EAAWO,QAAQ,mCAC9BI,UAAWX,EAAWO,QAAQ,gCAC9BK,WAAYZ,EAAWO,QAAQ,4BAC/BM,aAAcb,EAAWO,QAAQ,8BACjCO,UAAU,GAGdZ,EAAKa,OAAS,SAAUC,GACpBA,EAAMC,iBACNhB,EAAYc,SAGhB,IAAIG,GAAwB,WACxBhB,EAAKiB,kBAEGC,KAAMpB,EAAWO,QAAQ,uBACzBc,KAAM,UACNC,eAAe,EACfC,KAAM,WACNC,YAEQJ,KAAMhB,EACNmB,KAAM,OACND,eAAe,IAGfF,KAAM,UACNE,eAAe,IAGfF,KAAMpB,EAAWO,QAAQ,iBACzBkB,cAAevB,EAAKa,OACpBM,KAAM,cACNC,eAAe,MAOnCrB,GAAYyB,aAAaC,KAAK,SAAUC,GACpC1B,EAAK2B,QAAUD,EACf1B,EAAKG,MAAMyB,QAAUF,EAAKG,QAAQX,KAElClB,EAAKO,QAAQuB,cAAgBJ,EAAKG,QAAQE,OAE1C/B,EAAKO,QAAQoB,QAAUD,EAEvBxB,EAAWwB,EAAKM,KAAKC,UAAY,IAAMP,EAAKM,KAAKE,SACjDlB,SAMZtB,QAAQC,OAAO,QAAS,YAAa,WAAY,cAIjDD,QAAQC,OAAO,QACVwC,QAAA,iBAAO,SAAUC,GACdA,EACKC,MAAM,eACHC,IAAK,OACLC,YAAa,gCACb3C,WAAY,iBACZ4C,aAAc,OACdC,SACIC,YAAA,UAAY,SAAUC,GAClB,MAAOA,GAAQC,iBAAiBC,QAAQC,iBAQhEpD,QAAQC,OAAO,QACVC,WAAW,kBAAA,aAAkB,SAAU8C,GACpC,GAAI1C,GAAOC,IACXD,GAAK+C,eAAiBL,EAAWhB,KAAKsB,OAAO,SAAUtB,GACnD,MAAqB,gBAAdA,EAAKR,UAMxBxB,QAAQC,OAAO,cAIfD,QAAQC,OAAO,WACVsD,SAAS,cACNC,OACIC,OAAQ,eACRC,KAAM,aACNC,OAAQ,gBAEZC,UACIH,OAAQ,kBACRC,KAAM,gBACNC,OAAQ,kBACRE,SAAQ,qBAMpB7D,QAAQC,OAAO,cAEX,YACA,yBACA,aACA,UAGA,eACA,YACA,QACA,iBAGA,iBACA,SACA,UACA,SAKJD,QAAQC,OAAO,cACVC,WAAW,mBAAA,SAAmB,SAAU4D,GACrC,GAAIxD,GAAOC,IAGXD,GAAKyD,mBAAoB,EAEzBD,EAAOE,IAAI,uBAAwB,WAC/B1D,EAAKyD,mBAAoB,OAMrC/D,QAAQC,OAAO,cACVsD,SAAS,aACNU,KAEIC,KAAuB,gCACvBC,SAA6B,4BAC7BC,KAAwB,iCACxBC,OAA0B,oCAE9BC,WACIC,OACIC,OAA0B,GAC1BC,YAAoC,KAG5CC,UAIIC,SAAU,4BAGjBlC,QAAA,qBAAA,qBAAA,YAAA,wBAAA,0BAAO,SAAUmC,EAAoBC,EAAoBC,EAAWC,EAAuBC,GACxFH,EAAmBI,kBAAkB,MACrCJ,EAAmBK,yBAAyB,MAC5CF,EAAwBL,SAAWG,EAAUJ,SAASC,SAEtDC,EAAmBO,UAAU,SAAUC,EAAWC,GAC9C,GAAIC,GAAOD,EAAUC,MAER,OAATA,GAAyB,KAATA,GAChBF,EAAUG,IAAI,UAAUC,aAAa,iBAM7CT,EAAsBU,QAAUX,EAAUb,IAAIC,KAC9Ca,EAAsBW,YAAcZ,EAAUb,IAAIE,SAClDY,EAAsBY,QAAUb,EAAUb,IAAIG,KAC9CW,EAAsBa,UAAYd,EAAUb,IAAII,UAEnDwB,KAAA,aAAA,OAAA,UAAA,eAAA,YAAA,WAAA,YAAI,SAAU1F,EAAY2F,EAAMC,EAASC,EAAcC,EAAWC,EAAUpB,GAGzEkB,EAAaG,MAIb,IAAIC,KACJjG,GAAW6D,IAAI,uBAAwB,SAAU5C,EAAOY,GACpDoE,GACIC,YAAarE,EAAKG,QAAQmE,GAC1BlE,cAAeJ,EAAKG,QAAQE,OAC5BkE,YAAavE,EAAKG,QAAQX,KAC1BgF,MAAOxE,EAAKG,QAAQsE,QAAU,iBAC9BC,OAAQ1E,EAAKM,KAAKgE,GAClBK,UAAW3E,EAAKM,KAAKsE,SAK7BzG,EAAW6D,IAAI,iBAAkB,SAAU5C,EAAOY,GAC9C,GAAI+D,EAAQc,SAAU,CAEb7G,QAAQ8G,SAAS9E,KAClBA,GACI+E,QAAS/E,IAIjBoE,EAAWY,gBAAkBd,EAASe,UACtC,IAAIC,GAAalH,QAAQmH,OAAOf,EAAYpE,EAC5C+D,GAAQc,SAASO,cAAc,YAAaF,MAIpD/G,EAAW6D,IAAI,sBAAuB,WAClC+B,EAAQsB,SAASC,KAAKC,UAAYxB,EAAQsB,SAASG,gBAAgBD,UAAY,IAGnFpH,EAAW6D,IAAI,oBAAqB,WAChC8B,EAAK2B,IAAIC,aAGbvH,EAAWmE,UAAYQ,EAAUR,aAGzCtE,QAAQC,OAAO,mBAAoBwC,QAAQ,qBAAsB,SAASoC,GAC1EA,EAAmB8C,aAAa,MAC5BC,MACIA,KAAQ,OACRnH,MAAS,kBAKjBoE,EAAmB8C,aAAa,MAC5BE,KAAQ,oGACRC,QACIrH,MAAS,cACTsH,QAAW,iBACXC,QAAW,kBACXC,UAAa,oBACbC,gBAAmB,mBACnBC,KAAQ,gBACRC,WAAc,cACdC,UAAa,wBACbC,eAAkB,iBAClBC,aAAgB,gBAChBC,YAAe,eACfC,eAAkB,kBAClBC,qBAAwB,wBACxBvH,OAAU,SACVwH,WACIC,WAAc,cACdC,aAAgB,gBAGxBC,cACIlC,OACInG,MAAS,0DACTsI,QAAW,6BAEfC,OACIC,aAAgB,wBAChBlI,UAAa,sBAMzB8D,EAAmB8C,aAAa,MAC5BuB,SACIC,QAAW,UACXC,KAAQ,OACRC,IAAO,MACPC,OAAU,SACVC,QAAW,UACXC,UAAa,aACbC,YAAe,UACfC,KAAQ,OACRC,SAAY,YACZC,YAAe,eACfC,SAAY,WACZC,SAAY,WACZC,OAAU,SACVC,MAAS,QACTC,UAAa,aACbC,YAAe,eACfC,SAAY,YACZC,SAAY,WACZC,aAAgB,gBAChBC,GAAM,KACNC,SACIC,MAAO,MACPC,IAAO,MACPC,KAAQ,OACRC,YAAe,cACfC,YAAe,sBACfC,cAAiB,gBACjBhH,SAAU,SACViH,OAAU,SACVd,MAAS,QACTe,GAAM,KACNC,IAAO,MACPC,GAAM,KACNC,KAAQ,QAEZC,YACIrB,SAAY,WACZlD,MAAS,gBACTwE,mBAAsB,+BACtBC,UAAa,uBAEjBC,eACIC,MAAS,MACTC,KAAQ,YAWpBxL,QAAQC,OAAO,aAAc,yBAA0B,iBAEvDD,QAAQC,OAAO,cAAc4F,KAAK,iBAAkB,SAAS4F,GAAiBA,EAAeC,IAAI,gCAAgC,4XACjID,EAAeC,IAAI,oCAAoC","file":"scripts/app-850c905cf9.js","sourcesContent":["'use strict';\n\nangular.module('navbar', ['dudeAuth', 'dudeControlsShell', 'translate', 'dudeLog']);\n\n'use strict';\n\nangular.module('navbar')\n .controller('NavbarController', function ($rootScope, $translate, authService) {\n var self = this;\n var userName = '';\n\n self.title = {\n text: $translate.instant('navBar.title'),\n routerPath: 'secure.interceptor'\n };\n\n self.support = {\n phoneText: $translate.instant('helpDropdown.phone.phoneDisplay'),\n phoneHref: $translate.instant('helpDropdown.phone.phoneHref'),\n emailTitle: $translate.instant('helpDropdown.email.title'),\n emailAddress: $translate.instant('helpDropdown.email.address'),\n liveChat: true\n };\n\n self.logout = function (event) {\n event.preventDefault();\n authService.logout();\n };\n\n var createNavigationArray = function () {\n self.navigationArray = [\n {\n name: $translate.instant('navBar.userSettings'),\n icon: 'fa-user',\n hasPermission: true,\n type: 'iconMenu',\n accordion: [\n {\n name: userName,\n type: 'text',\n hasPermission: true\n },\n {\n name: 'divider',\n hasPermission: true\n },\n {\n name: $translate.instant('navBar.logout'),\n clickFunction: self.logout,\n icon: 'fa-sign-out',\n hasPermission: true\n }\n ]\n }\n ];\n };\n\n authService.getContext().then(function (data) {\n self.profile = data;\n self.title.subText = data.account.name;\n\n self.support.accountNumber = data.account.number;\n\n self.support.profile = data;\n\n userName = data.user.firstName + ' ' + data.user.lastName;\n createNavigationArray();\n });\n });\n\n'use strict';\n\nangular.module('home', ['ui.router', 'dudeAuth', 'translate']);\n\n'use strict';\n\nangular.module('home')\n .config(function ($stateProvider) {\n $stateProvider\n .state('secure.home', {\n url: 'home',\n templateUrl: 'app/components/home/home.html',\n controller: 'HomeController',\n controllerAs: 'home',\n resolve: {\n myProducts: function (DudeApi) {\n return DudeApi.MyProductsEntity.query().$promise;\n }\n }\n });\n });\n\n'use strict';\n\nangular.module('home')\n .controller('HomeController', function (myProducts) {\n var self = this;\n self.listOfProducts = myProducts.data.filter(function (data) {\n return data.name !== 'Dude Portal';\n });\n });\n\n'use strict';\n\nangular.module('helpers', []);\n\n'use strict';\n\nangular.module('helpers')\n .constant('permission', {\n users: {\n create: 'Users-Create',\n read: 'Users-Read',\n update: 'Users-Update'\n },\n accounts: {\n create: 'Accounts-Create',\n read: 'Accounts-Read',\n update: 'Accounts-Update',\n delete: 'Accounts-Delete'\n }\n });\n\n'use strict';\n\nangular.module('dudePortal', [\n // need these 2 for global configuration see. index.config.js\n 'ui.router',\n 'pascalprecht.translate',\n 'ngSanitize',\n 'spinner',\n\n // DudeBase/DudeControls Global Modules\n 'notification', // Toastr\n 'dudeError', // DudeBase\n 'utils',\n 'updateLanguage',\n\n // Application\n 'dudeErrorPages',\n 'navbar',\n 'helpers',\n 'home'\n]);\n\n'use strict';\n\nangular.module('dudePortal')\n .controller('IndexController', function ($scope) {\n var self = this;\n\n // This Keeps the navbar and footer from prematurely loading before the user context.\n self.userContextLoaded = false;\n\n $scope.$on('dudeAuth:user-loaded', function () {\n self.userContextLoaded = true;\n });\n });\n\n'use strict';\n\nangular.module('dudePortal')\n .constant('appConfig', {\n api: {\n // TODO Change this list as necessary.\n core: /* DudeApiUri */ 'http://vnext.api.localtest.me' /* DudeApiUri */,\n security: /* DudeOauthUri */ 'http://login.localtest.me' /* DudeOauthUri */,\n file: /* DudeFileUri */ 'http://vnext.file.localtest.me' /* DudeFileUri */,\n report: /* DudeFileUri */ 'http://vnext.report.localtest.me' /* DudeFileUri */\n },\n analytics: {\n pendo: {\n apiKey: /* PendoApiKey */ '' /* PendoApiKey */,\n productName: /* PendoProductName */ '' /* PendoProductName */\n }\n },\n settings: {\n // TODO Update this to your app name followed by 'publicclient';\n // all-lower-case, no-spaces. This should be added to the automation\n // (setup.js) at some point.\n clientId: 'dudeportalpublicclient'\n }\n })\n .config(function ($urlRouterProvider, $translateProvider, appConfig, dudeApiConfigProvider, loginRedirectorProvider) {\n $translateProvider.preferredLanguage('en');\n $translateProvider.useSanitizeValueStrategy(null);\n loginRedirectorProvider.clientId = appConfig.settings.clientId;\n\n $urlRouterProvider.otherwise(function ($injector, $location) {\n var path = $location.path();\n // Stops the loop-de loop\n if (path === '/' || path === '') {\n $injector.get('$state').transitionTo('secure.home');\n }\n });\n\n // set urls\n // TODO Change these as necessary. This list should match the one above in the appConfig.api block.\n dudeApiConfigProvider.baseUrl = appConfig.api.core;\n dudeApiConfigProvider.securityUrl = appConfig.api.security;\n dudeApiConfigProvider.fileUrl = appConfig.api.file;\n dudeApiConfigProvider.reportUrl = appConfig.api.report;\n })\n .run(function ($rootScope, $log, $window, notification, marketizr, dudeGuid, appConfig) {\n // Configure the notifications service\n // for toastr messages\n notification.init();\n\n // Listen for the user context to load and create a base remote logger object\n // This will be used to send info to new relic\n var baseLogObj = {};\n $rootScope.$on('dudeAuth:user-loaded', function (event, data) {\n baseLogObj = {\n accountDbId: data.account.id, // accountId breaks new relic\n accountNumber: data.account.number,\n accountName: data.account.name,\n asset: data.account.assets || 'MaintenanceMVP',\n userId: data.user.id,\n userEmail: data.user.email\n };\n });\n\n // setup listener for `remote` errors that need to be logged to new relic\n $rootScope.$on('dudeLog:remote', function (event, data) {\n if ($window.newrelic) {\n // Check if data coming in is not an object and convert it\n if (!angular.isObject(data)) {\n data = {\n message: data\n };\n }\n // Generate a guid\n baseLogObj.dudeReferenceId = dudeGuid.generate();\n var actionData = angular.extend(baseLogObj, data);\n $window.newrelic.addPageAction('DudeError', actionData);\n }\n });\n\n $rootScope.$on('$stateChangeSuccess', function () {\n $window.document.body.scrollTop = $window.document.documentElement.scrollTop = 0;\n });\n\n $rootScope.$on('$stateChangeError', function () {\n $log.log(arguments);\n });\n\n $rootScope.analytics = appConfig.analytics;\n });\n\nangular.module(\"translations\", []).config([\"$translateProvider\", function($translateProvider) {\n$translateProvider.translations(\"en\", {\n \"home\": {\n \"home\": \"Home\",\n \"title\": \"Applications\"\n }\n}\n);\n\n$translateProvider.translations(\"en\", {\n \"TODO\": \"Get rid of this to do item and change the text below as appropriate to match your new application\",\n \"navBar\": {\n \"title\": \"Dude Portal\",\n \"product\": \"MaintenanceMVP\",\n \"mainNav\": \"Main Navigation\",\n \"toggleNav\": \"Toggle Navigation\",\n \"accountSettings\": \"Account Settings\",\n \"WOID\": \"Work Order ID\",\n \"assetTypes\": \"Asset Types\",\n \"invalidId\": \"Invalid Work Order Id\",\n \"configurations\": \"Configurations\",\n \"userSettings\": \"User Settings\",\n \"editProfile\": \"Edit Profile\",\n \"changePassword\": \"Change Password\",\n \"notificationSettings\": \"Notification Settings\",\n \"logout\": \"Logout\",\n \"requester\": {\n \"workOrders\": \"My Requests\",\n \"newWorkOrder\": \"New Request\"\n }\n },\n \"helpDropdown\": {\n \"email\": {\n \"title\": \"mailto:support@dudesolutions.com?subject=MaintenanceMVP\",\n \"address\": \"support@dudesolutions.com\"\n },\n \"phone\": {\n \"phoneDisplay\": \"1-877-655-DUDE (3833)\",\n \"phoneHref\": \"tel:18776553833\"\n }\n }\n}\n);\n\n$translateProvider.translations(\"en\", {\n \"general\": {\n \"filters\": \"Filters\",\n \"sort\": \"Sort\",\n \"all\": \"All\",\n \"result\": \"Result\",\n \"results\": \"Results\",\n \"noResults\": \"No Results\",\n \"actionsText\": \"Actions\",\n \"edit\": \"Edit\",\n \"refineBy\": \"Refine By\",\n \"viewDetails\": \"View Details\",\n \"inactive\": \"Inactive\",\n \"required\": \"Required\",\n \"search\": \"Search\",\n \"close\": \"Close\",\n \"selectAll\": \"Select All\",\n \"unselectAll\": \"Unselect All\",\n \"clearAll\": \"Clear All\",\n \"disabled\": \"Disabled\",\n \"notActivated\": \"Not Activated\",\n \"at\": \"at\",\n \"actions\": {\n \"new\": \"New\",\n \"add\": \"Add\",\n \"save\": \"Save\",\n \"saveAndNext\": \"Save & Next\",\n \"saveAndEdit\": \"Save & Keep Editing\",\n \"saveAndFinish\": \"Save & Finish\",\n \"delete\": \"Delete\",\n \"cancel\": \"Cancel\",\n \"close\": \"Close\",\n \"ok\": \"Ok\",\n \"yes\": \"Yes\",\n \"no\": \"No\",\n \"back\": \"Back\"\n },\n \"validation\": {\n \"required\": \"Required\",\n \"email\": \"Invalid Email\",\n \"emailAlreadyExists\": \"Email address already exists\",\n \"timeEmpty\": \"Please enter a time\"\n },\n \"abbreviations\": {\n \"hours\": \"hrs\",\n \"hour\": \"hr\"\n }\n }\n}\n);\n}]);\n\n'use strict';\n\n// The dependencies for translate must be declared in this order or translations will fail in testing declaring $translateProvider undefined.\n// So the angular translate dependency 'pascalprecht.translate' must be declared first.\nangular.module('translate', ['pascalprecht.translate', 'translations']);\n\nangular.module(\"dudePortal\").run([\"$templateCache\", function($templateCache) {$templateCache.put(\"app/components/home/home.html\",\"

{{::\\'home.title\\' | translate}}

\");\n$templateCache.put(\"app/components/navbar/navbar.html\",\"
\");}]);"],"sourceRoot":"/source/"}