[
  {
    "path": ".gitignore",
    "content": "# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion\n\n*.iml\n\n## Directory-based project format:\n.idea/\n# if you remove the above rule, at least ignore the following:\n\n# User-specific stuff:\n# .idea/workspace.xml\n# .idea/tasks.xml\n# .idea/dictionaries\n\n# Sensitive or high-churn files:\n# .idea/dataSources.ids\n# .idea/dataSources.xml\n# .idea/sqlDataSources.xml\n# .idea/dynamic.xml\n# .idea/uiDesigner.xml\n\n# Gradle:\n# .idea/gradle.xml\n# .idea/libraries\n\n# Mongo Explorer plugin:\n# .idea/mongoSettings.xml\n\n## File-based project format:\n*.ipr\n*.iws\n\n## Plugin-specific files:\n\n# IntelliJ\n/out/\n\n# mpeltonen/sbt-idea plugin\n.idea_modules/\n\n# JIRA plugin\natlassian-ide-plugin.xml\n\n# Crashlytics plugin (for Android Studio and IntelliJ)\ncom_crashlytics_export_strings.xml\ncrashlytics.properties\ncrashlytics-build.properties\n\nnode_modules\ngulp.1\nbuild\n.tmp\n\n/src/release\n/release\n/bower_components\n"
  },
  {
    "path": ".travis.yml",
    "content": "sudo: false\n\nlanguage: node_js\n\nnode_js:\n  - \"8\"\n\naddons:\n  apt:\n    sources:\n      - ubuntu-toolchain-r-test\n    packages:\n      - g++-4.8\n\ninstall:\n  - npm config set spin false\n  - npm install -g gulp\n\n  - npm install\n\nscript:\n  - gulp build\n"
  },
  {
    "path": "CHANGELOG.md",
    "content": "v1.3.1 - 15 Dec 2016\n--------------------\n- Fix gulp build\n- Update dependencies\n- Fix datepicker position\n\nv1.3.0 - 10 Dec 2016\n--------------------\n- Update bower dependencies\n- Add progress dialog component\n- Add datepicker component\n- Scroll up pages upon navigation\n- CSS-only switchers\n- Use ui-select instead of bootstrap-select\n\nv1.2.0 - 16 May 2016\n--------------------\n- Refactoring to improve customization, fixes #22, #26\n- Add documentation\n- Sidebar refactoring, fixes #14, #15, #27\n- Bootstrap select refactoring #18\n\nv1.1.1 - 11 Apr 2016\n--------------------\n- Improved scrolling performance, fixes #2\n- Set 0.9.5 version for the Chartist library by default, fixes #5\n"
  },
  {
    "path": "LICENSE.txt",
    "content": "The MIT License (MIT)\nCopyright (c) 2016 Akvemus GSC\n\nPermission 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:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE 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.\nStatus API Training Shop Blog About\n© 2016 GitHub, Inc. Terms Privacy Security Contact Help\n"
  },
  {
    "path": "README.md",
    "content": "[![Build Status](https://travis-ci.org/akveo/blur-admin.svg?branch=master)](https://travis-ci.org/akveo/blur-admin)\n\n# BlurAdmin Angular admin panel front-end framework\n\nCustomizable admin panel framework made with :heart: by [Akveo team](http://akveo.com/). Follow us on [Twitter](https://twitter.com/akveo_inc) to get latest news about this template first!\n\n### Demo\n**[Mint version demo](http://akveo.com/blur-admin-mint/)**             |  **[Blur version demo](http://akveo.com/blur-admin/)**\n:-------------------------:|:-------------------------:\n![Mint version demo](http://i.imgur.com/A3TMviJ.png)  |  ![Blur version demo](http://i.imgur.com/EAoiK2O.jpg)\n\n## Angular 2 version\nHere you can find Angular2 based version: [ng2-admin](https://github.com/akveo/ng2-admin).\n\n### Documentation\nInstallation, customization and other useful articles: https://akveo.github.io/blur-admin/\n\n*If you have problems installing and just want to download JS and css files, you can find download links here*: http://akveo.github.io/blur-admin/articles/091-downloads/\n\n## How can I support developers?\n- Star our GitHub repo\n- Create pull requests, submit bugs, suggest new features or documentation updates\n- Follow us on [Twitter](https://twitter.com/akveo_inc)\n- Like our page on [Facebook](https://www.facebook.com/akveo/)\n\n## Can I hire you guys?\nYes! We are available for hire. Visit [our homepage](http://akveo.com/) or simply leave us a note to contact@akveo.com. We will be happy to work with you!\n\n## Features\n* Responsive layout\n* High resolution\n* Bootstrap CSS Framework\n* Sass\n* Gulp build\n* AngularJS\n* Jquery\n* Charts (amChart, Chartist, Chart.js, Morris)\n* Maps (Google, Leaflet, amMap)\n* etc\n\nLicense\n-------------\n<a href=/LICENSE.txt target=\"_blank\">MIT</a> license.\n\n### From akveo\n\nEnjoy!\nWe're always happy to hear your feedback.\n"
  },
  {
    "path": "bower.json",
    "content": "{\n  \"name\": \"blur-admin\",\n  \"version\": \"1.3.1\",\n  \"homepage\": \"https://github.com/1itvinka/blur-admin\",\n  \"authors\": [\n    \"akveo\"\n  ],\n  \"description\": \"Blur Admin HTML template\",\n  \"license\": \"MIT\",\n  \"ignore\": [\n    \"**/.*\",\n    \"node_modules\",\n    \"bower_components\",\n    \"test\",\n    \"tests\"\n  ],\n  \"dependencies\": {\n    \"jquery\": \"~3.1.1\",\n    \"jquery-ui\": \"~1.12.1\",\n    \"jquery.easing\": \"~1.3.1\",\n    \"jquery.easy-pie-chart\": \"~2.1.6\",\n    \"chart.js\": \"~2.4.0\",\n    \"Ionicons\": \"ionicons#~2.0.1\",\n    \"amcharts\": \"~3.15.2\",\n    \"amcharts-stock\": \"*\",\n    \"ammap\": \"~3.14.5\",\n    \"angular\": \"~1.5.8\",\n    \"angular-route\": \"~1.5.8\",\n    \"angular-slimscroll\": \"~1.1.5\",\n    \"angular-smart-table\": \"~2.1.3\",\n    \"angular-toastr\": \"~2.1.1\",\n    \"angular-touch\": \"~1.5.8\",\n    \"angular-ui-sortable\": \"~0.15.0\",\n    \"animate.css\": \"~3.5.2\",\n    \"bootstrap\": \"~3.3.5\",\n    \"bootstrap-select\": \"~1.12.1\",\n    \"bootstrap-switch\": \"~3.3.2\",\n    \"bootstrap-tagsinput\": \"~0.7.1\",\n    \"font-awesome\": \"fontawesome#~4.4.0\",\n    \"fullcalendar\": \"~3.0.1\",\n    \"highlight\": \"~8.8.0\",\n    \"leaflet\": \"~0.7.5\",\n    \"moment\": \"~2.17.0\",\n    \"slimScroll\": \"jquery-slimscroll#~1.3.6\",\n    \"angular-progress-button-styles\": \"~0.1.0\",\n    \"angular-ui-router\": \"~0.3.2\",\n    \"angular-chart.js\": \"~1.0.3\",\n    \"angular-chartist.js\": \"~3.3.12\",\n    \"chartist\": \"0.9.5\",\n    \"angular-morris-chart\": \"~1.1.0\",\n    \"ionrangeslider\": \"2.1.4\",\n    \"angular-bootstrap\": \"~1.3.3\",\n    \"angular-animate\": \"~1.5.8\",\n    \"textAngular\": \"~1.4.6\",\n    \"angular-xeditable\": \"~0.5.0\",\n    \"ng-js-tree\": \"~0.0.7\",\n    \"angular-ui-select\": \"^0.19.6\"\n  },\n  \"resolutions\": {\n    \"angular\": \"~1.5.9\",\n    \"jquery\": \"~3.1.1\"\n  },\n  \"overrides\": {\n    \"amcharts\": {\n      \"main\": [\n        \"./dist/amcharts/amcharts.js\",\n        \"./dist/amcharts/plugins/responsive/responsive.min.js\",\n        \"./dist/amcharts/serial.js\",\n        \"./dist/amcharts/funnel.js\",\n        \"./dist/amcharts/pie.js\",\n        \"./dist/amcharts/gantt.js\"\n      ]\n    },\n    \"amcharts-stock\": {\n      \"main\": \"./dist/amcharts/amstock.js\"\n    },\n    \"ammap\": {\n      \"main\": [\n        \"./dist/ammap/ammap.js\",\n        \"./dist/ammap/maps/js/worldLow.js\"\n      ]\n    },\n    \"bootstrap\": {\n      \"main\": [\n        \"dist/css/bootstrap.css\",\n        \"js/dropdown.js\",\n        \"./dist/fonts/**.*\"\n      ]\n    },\n    \"slimScroll\": {\n      \"main\": \"./jquery.slimscroll.js\"\n    },\n    \"font-awesome\": {\n      \"main\": [\n        \"css/font-awesome.css\",\n        \"fonts/FontAwesome.otf\",\n        \"fonts/fontawesome-webfont.eot\",\n        \"fonts/fontawesome-webfont.svg\",\n        \"fonts/fontawesome-webfont.ttf\",\n        \"fonts/fontawesome-webfont.woff\",\n        \"fonts/fontawesome-webfont.woff2\"\n      ]\n    }\n  }\n}\n"
  },
  {
    "path": "docs/config.json",
    "content": "{\n  \"baseUrl\": \"/blur-admin/\",\n  \"locals\": {\n    \"url\": \"http://localhost:8080\",\n    \"name\": \"The Wintersmith's blog\",\n    \"owner\": \"Someone\",\n    \"description\": \"Ramblings of an immor(t)al demigod\"\n  },\n  \"plugins\": [\n    \"./plugins/paginator.coffee\"\n  ],\n  \"require\": {\n    \"moment\": \"moment\",\n    \"_\": \"underscore\",\n    \"typogr\": \"typogr\"\n  },\n  \"jade\": {\n    \"pretty\": true\n  },\n  \"markdown\": {\n    \"smartLists\": true,\n    \"smartypants\": true\n  },\n  \"paginator\": {\n    \"perPage\": 3,\n    \"groupSort\": {\n      \"Quick Start\": 1000,\n      \"Customization\": 900,\n      \"Components\": 800,\n      \"Other\": 100\n    }\n  }\n}\n"
  },
  {
    "path": "docs/contents/articles/001-getting-started/index.md",
    "content": "---\ntitle: Getting Started\nauthor: vl\nsort: 999\ngroup: Quick Start\ntemplate: article.jade\n---\n\n## What is BlurAdmin?\n\nBlur admin is Angular front-end Admin Dashboard template. That means all data you can see on graphs, charts tables is hardcoded in Javascript. You can use any backend you want with it without limitations.\n\n## How can it help me?\n\nWe believe that that at the moment a lot of business applications have some kind of admin interface inside of them. Sometimes it's not that obvious, but a lot of web applications have dashboard with panels, charts analytics.\n\nBlurAdmin aims to bootstrap development of your product and provide ecosystem for building a prototype or even production-ready application.\n\nDespite frameworks like Bootstrap provide a number of components, usually it's not enough of them to build real-world app. This template comes with lots of popular UI components with unified color scheme.\n\nAs well you can use BlurAdmin for learning purposes.\n\n## List of features\n\n* Responsive layout\n* High resolution\n* Bootstrap CSS Framework\n* Sass\n* Gulp build\n* AngularJS\n* Jquery\n* Jquery ui\n* Charts (amChart, Chartist, Chart.js, Morris)\n* Maps (Google, Leaflet, amMap)\n* etc\n\n## I want to start developing with BlurAdmin\n\nWelcome abroad!\n\nYou can start with [Installation Guidelines](/blur-admin/articles/002-installation-guidelines/). We describe there how can you download and run template on you local machine.\n\nGood luck and have fun!"
  },
  {
    "path": "docs/contents/articles/002-installation-guidelines/index.md",
    "content": "---\ntitle: Installation Guidelines\nauthor: vl\nsort: 500\ngroup: Quick Start\ntemplate: article.jade\n---\n\n## Prerequisites\n\nDespite BlurAdmin can be run without any development experience, it would be much easier if you already know something about it. In general following instruction do allow to run local copy by complete newbie, but it doesn't answer questions that can arise in the process of installation.\n\n## Install tools\n\nIf you don't havee any of these tools installed already, you will need to:\n* Download and install [git](https://git-scm.com/)\n* Download and install nodejs [https://nodejs.org](https://nodejs.org)\n\n**Note**: It seems like there are some problems with some libraries used in this template and old node versions. That's why we suggest you to have one of the latest.\n\n## Clone repository and install dependencies\n\nYou will need to clone source code of BlurAdmin GitHub repository. To do this open console and execute following lines:\n```bash\ngit clone https://github.com/akveo/blur-admin.git\n```\nAfter repository is cloned, go inside of repository directory and install dependencies there:\n```bash\ncd blur-admin\nnpm install\n```\nThis will setup a working copy of BlurAdmin on your local machine\n\n## Running local copy\n\nTo run local copy in development mode, execute:\n```bash\ngulp serve\n```\nThis script should automatically open template in your default browser.\n\nTo run local copy in production mode, execute:\n```bash\ngulp serve:dist\n```\nFor addition information about build, please check out [this angular generator](https://github.com/Swiip/generator-gulp-angular)\n"
  },
  {
    "path": "docs/contents/articles/011-changing-color-scheme/index.md",
    "content": "---\ntitle: Changing Color Scheme\nauthor: vl\nsort: 900\ngroup: Customization\ntemplate: article.jade\n---\n\nWe tried to make the process of changing color scheme in BlurAdmin as easy as possible. \n\nBy default BlurAdmin has two color profiles: mint and blur.\nThis article will help you to create your own color profile.\nLet's say you want to make BlurAdmin dark.\n\nFirst we advice you to take some colorscheme file as a basis. \nFor light themes we suggest you to take `src/sass/theme/conf/colorScheme/_mint.scss` one and for dark take `src/sass/theme/conf/colorScheme/_blur.scss` one.\nAs we want dark theme, we're taking `blur`.\n\n1) Copy `src/sass/theme/conf/colorScheme/_blur.scss` to `src/sass/theme/conf/colorScheme/_dark.scss`.\n\n2) Include your colorscheme file in `src/sass/theme/common.scs`.\n\nTo do this, replace \n```scss\n@import 'theme/conf/colorScheme/mint';\n```\n\nto\n\n```scss\n@import 'theme/conf/colorScheme/dark';\n```\n\nNow you can start changing your colors.\nFor example, after playing a bit with different colors, we changed 5 first main variables in `_dark.scss` file:\n```sass\n$default: rgba(#000000, 0.2); //Panel background color\n$body-bg: #F0F3F4; // Body background color\n$default-text: #ffffff; // Default text color\n$help-text: #eeeeee; // Default subtext color\n$label-text: #ffffff; // Text for labels in forms (Basically it should be equal to default-text in most cases)\n```\n\nAfter this is done, you need to setup javascript to use **same colors** while building charts and other javascript components.\nTo do this, add following code to some configuration block, for example to `src/app/theme/theme.config.js`:\n```javascript\n  baConfigProvider.changeColors({\n    default: '#4e4e55',\n    defaultText: '#e2e2e2',\n  });\n``` \n\nThat's basically it! Right now your admin application should look like this:\n\n![](new-color-scheme.jpg)\n\nFor further reference, please look in\n- Colorscheme scss file (`src/sass/theme/conf/colorScheme/_mint.scss` or `src/sass/theme/conf/colorScheme/_blur.scss`)\n- `src/app/theme/theme.configProvider.js` to understand which javascript colors can be changed\n- If you want to know how to change theme to blur, read [following article](/blur-admin/articles/014-switch-to-blur-theme/)"
  },
  {
    "path": "docs/contents/articles/012-project-structure/index.md",
    "content": "---\ntitle: Project Structure\nauthor: vl\nsort: 800\ngroup: Customization\ntemplate: article.jade\n---\n\nProject structure was originally based on [this angular generator](https://github.com/Swiip/generator-gulp-angular). We made some changes we thought would be better for our particular problem.\n\nThe directory structure of this template is as follows:\n```\n├── bower.json               <- front-end library dependencies\n├── gulpfile.js              <- main task runner file\n├── package.json             <- mostly task runner dependencies\n├── docs/                    <- wintersmith documentation generator\n├── gulp/                    <- build tasks\n├── src/                     <- main front-end assets\n│   ├── 404.html\n│   ├── auth.html\n│   ├── index.html          <- main app dashboard page\n│   ├── reg.html\n│   ├── app/                <- angular application files\n│   │   ├── app.js         <- angular application entry point. Used for managing dependencies\n│   │   ├── pages/         <- UI router pages. Pages created for demonstration purposes. Put your application js and html files here\n│   │   ├── theme/         <- theme components. Contains various common widgets, panels which used across application\n│   ├── assets/             <- static files (images, fonts etc.)\n│   ├── sass/               <- sass styles\n│   │   ├── app/           <- application styles. Used mostly for demonstration purposes. Put your app styles here.\n│   │   ├── theme/         <- theme styles. Used to customize bootstrap and other common components used in tempate.\n```\n\nIn our template we tried to separate theme layer and presentation layer. We believe most of other templates have them combined. That's why when you start developing using them, it gets very hard for you to remove things you don't need. Though we understand that our structure is not ideal, but we're aiming to make it as good as possible.\n"
  },
  {
    "path": "docs/contents/articles/013-create-new-page/index.md",
    "content": "---\ntitle: Create New Page\nauthor: vl\nsort: 300\ngroup: Customization\ntemplate: article.jade\n---\n\nBlur admin uses [Angular UI router](https://github.com/angular-ui/ui-router) for navigation. \nThat means to create new page you need to basically configure `ui-router` state.\n\nWe strongly recommend to follow pages structure in your application. \nIf it doesn't fit your needs please create a GitHub issue and tell us why. We would be glad to discuss. \n\nAlso we recommend to put pages to separate modules. \nThis will allow you to easily switch off some pages in the future if needed.\n\n## Page creation example\n\n0) Let's assume we want to create a blank page with title 'My New Page'\n\n1) Let's Create a new directory to contain our new page inside of `src/app/pages`. Let's call this directory `myNewPage`.\n\n2) Then let's create blank angular module to contain our page called 'myNewPage.module.js' inside of `src/app/pages/myNewPage`:\n\n```javascript\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.myNewPage', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig() {\n   \n  }\n\n})();\n```\n\n3) Then let's create empty html file called `my-new-page.html` inside of `src/app/pages/myNewPage`.\n\n4) Lastly let's create ui router state for this page. To do this we need to modify module.js file we created on step 2:\n```javascript\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.myNewPage', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('myNewPage', {\n          url: '/myNewPage',\n          templateUrl: 'app/pages/myNewPage/my-new-page.html',\n          title: 'My New Page',\n          sidebarMeta: {\n            order: 800,\n          },\n        });\n  }\n\n})();\n```\n\nThat's it! Your can now open your new page either from sidebar or through hash URL.\n\n"
  },
  {
    "path": "docs/contents/articles/014-switch-to-blur-theme/index.md",
    "content": "---\ntitle: Enabling blur theme\nauthor: kd\nsort: 850\ngroup: Customization\ntemplate: article.jade\n---\n\nIf you want to switch theme to the blur, you need to follow 3 simple steps:\n\n1) Blur theme needs some javascript to calculate initial background offsets for panels.\nThat's why first thing you need to do is enable that code.\nThis should be done in Angular **configuration block**. \nFor example you can add following lines to `src/app/theme/theme.config.js`:\n```javascript\n  baConfigProvider.changeTheme({blur: true});\n```\n\n2) As well you need to change some colors. \nFor example *Mint*'s default gray text color doesn't look good on blurred panels.\nFor our blur theme we use following configuration:\n```javascript\n  baConfigProvider.changeColors({\n    default: 'rgba(#000000, 0.2)',\n    defaultText: '#ffffff',\n    dashboard: {\n      white: '#ffffff',\n    },\n  });\n```\n3) CSS should also be recompiled. \nBefore running build command, we suggest you to switch to *blur* color profile.\nTo do this replace theme in file `src/sass/theme/common.scss`:\n\n \n```scss\n@import 'theme/conf/colorScheme/mint';\n```\n \nto\n \n```scss\n@import 'theme/conf/colorScheme/blur';\n```\n\n3.1) If you would like to use some different background, replace following images:\n\n- `src/app/assets/img/blur-bg.jpg` (main background image)\n- `src/app/assets/img/blur-bg-blurred.jpg` (blurred background image used on panels)\n\nWe suggest using 10px Gaussian blur to blur original image.\n\n_________________________________________ \nThat's it! You have successfully blurred your theme! Run `gulp serve` and check it out."
  },
  {
    "path": "docs/contents/articles/051-sidebar/index.md",
    "content": "---\ntitle: Sidebar\nauthor: vl\nsort: 900\ngroup: Components\ntemplate: article.jade\n---\n\nSidebar is used to provide convenient way of navigation in the application. \nApplication support only one sidebar per angular application. \nThat means sidebar is basically a singletone object.\nCurrently sidebar supports level 1 and 2 sub menus.\n \nSidebar can be created using `baSidebar` directive:\n```html\n<ba-sidebar></ba-sidebar>\n```\n\nFor now it support only javascript configuration. Though it can be configured manually or via `ui-router` states.\nThis methods can be used either together or one at a time.\n\n\n## Manual configuration\n\nFor manual configuration you need to use `baSidebarServiceProvider` provider in angular [configuration block](https://docs.angularjs.org/guide/module#configuration-blocks).\nThe provider has `addStaticItem` method, which receives menuItem object as an argument, which can have following properties:\n\n<table>\n<thead>\n<tr>\n<td>property</td>\n<td>type</td>\n<td>meaning</td>\n</tr>\n</thead>\n<tbody>\n\n<tr>\n<td>title</td>\n<td>String</td>\n<td>Name of the menu item</td>\n</tr>\n\n<tr>\n<td>icon</td>\n<td>String</td>\n<td>Icon (it's a class name) to be displayed near title</td>\n</tr>\n\n<tr>\n<td>stateRef</td>\n<td>String</td>\n<td>`ui-router` state associated with this menu item</td>\n</tr>\n\n<tr>\n<td>fixedHref</td>\n<td>String</td>\n<td>Url associated with this menu item</td>\n</tr>\n\n<tr>\n<td>blank</td>\n<td>String</td>\n<td>Specifies if following Url should be opened in new browser tab</td>\n</tr>\n\n<tr>\n<td>subMenu</td>\n<td>Array of menu items</td>\n<td>List of menu items to be displayed as next level submenu</td>\n</tr>\n\n</tbody>\n</table>\n\nSample manual configuration:\n```javascript\n    baSidebarServiceProvider.addStaticItem({\n      title: 'Menu Level 1',\n      icon: 'ion-ios-more'\n    });\n```\n\n## Route configuration\n\nBy default sidebar iterates through all **ui-router** states you defined in your application and searches for `sidebarMeta` object in them.\nFor each state, which has this property, sidebar element is created. \n\nStates are being grouped hierarchically. \nThat means if there's a parent abstract state for some state and they both have `sidebarMeta` property, it will be displayed as a sub item of that abstract state's menu item.  \n\nName of the item is taken from `state`'s `title` property. Sample state configuration, which will add an item to sidebar:\n```javascript\n$stateProvider\n        .state('dashboard', {\n          url: '/dashboard',\n          templateUrl: 'app/pages/dashboard/dashboard.html',\n          title: 'Dashboard',\n          sidebarMeta: {\n            icon: 'ion-android-home',\n            order: 0,\n          },\n        });\n```\n\n`sidebarMeta` object can have following properties:\n\n<table>\n<thead>\n<tr>\n<td>property</td>\n<td>type</td>\n<td>meaning</td>\n</tr>\n</thead>\n<tbody>\n\n<tr>\n<td>icon</td>\n<td>String</td>\n<td>Icon (it's a class name) to be displayed near title</td>\n</tr>\n\n<tr>\n<td>order</td>\n<td>Number</td>\n<td>Element's order in current hierarchy</td>\n</tr>\n\n</tbody>\n</table>"
  },
  {
    "path": "docs/contents/articles/091-downloads/index.md",
    "content": "---\ntitle: Downloads\nauthor: vl\nsort: 900\ngroup: Other\ntemplate: article.jade\n---\n\nIf you have problems installing node.js and/or other tools to build and run BlurAdmin on your machine and you just want to download html/js/css files, you can find links for download on this page.\n\nDevelopment (non-compressed) files can be found in `{ARCHIVE_ROOT}/blur-admin-{VERSION}/dev-release` directory. Compressed files are in `{ARCHIVE_ROOT}/blur-admin-{VERSION}/release` directory.\nThen you can just open `index.html` to view your local version.\n\n**Please note**: *As chrome doesn't support AJAX requests, when you open HTML file via **file** protocol, you might need to disable web security to have your template running.*\n\nSample command on OS X:\n\n```bash\nopen -a Google\\ Chrome --args --disable-web-security --user-data-dir=~/ChromeDevSession/\n```\n\nSample command on Linux:\n\n```bash\ngoogle-chrome --user-data-dir=\"~/chrome-dev-session\" --disable-web-security\n```\n\nSample command on Windows:\n\n```bash\nstart chrome --user-data-dir=\"C:/Chrome dev session\" --disable-web-security\n```\n\n## Links for downloads\n\n[BlurAdmin 1.3.1](/blur-admin/downloads/blur-admin-1.3.1.zip)\n[BlurAdmin 1.2.0](/blur-admin/downloads/blur-admin-1.2.0.zip)\n\n"
  },
  {
    "path": "docs/contents/css/main.css",
    "content": "html {\n    font-family: 'Source Sans Pro', sans-serif;\n    color: #484848;\n    line-height: 1.28\n}\n\np {\n    margin: 0 0 10px\n}\n\n.subHeader {\n    font-size: 21px;\n    font-weight: 200;\n    line-height: 30px;\n    margin-bottom: 10px\n}\n\nem {\n    font-style: italic\n}\n\nh1, h2, h3, h4, h5, h6 {\n    margin: 10px 0;\n    font-family: inherit;\n    font-weight: bold;\n    line-height: 20px;\n    color: inherit;\n    text-rendering: optimizelegibility\n}\n\nh1 small, h2 small, h3 small, h4 small, h5 small, h6 small {\n    font-weight: normal;\n    color: #7b7b7b\n}\n\nh1, h2, h3 {\n    line-height: 40px\n}\n\nh1 {\n    font-size: 39px\n}\n\nh2 {\n    font-size: 31px\n}\n\nh3 {\n    font-size: 23px\n}\n\nh4 {\n    font-size: 16px\n}\n\nh5 {\n    font-size: 14px\n}\n\nh6 {\n    font-size: 11px\n}\n\nh1 small {\n    font-size: 24px\n}\n\nh2 small {\n    font-size: 18px\n}\n\nh3 small {\n    font-size: 16px\n}\n\nh4 small {\n    font-size: 14px\n}\n\nul, ol {\n    margin: 0 0 10px 25px;\n    padding: 0\n}\n\nul ul, ul ol, ol ol, ol ul {\n    margin-bottom: 0\n}\n\nli {\n    line-height: 20px\n}\n\na {\n    color: #c05b4d;\n    text-decoration: none\n}\n\na:hover, a:focus {\n    color: #a5473a;\n    text-decoration: underline\n}\n\na:focus {\n    outline: thin dotted #333;\n    outline: 5px auto -webkit-focus-ring-color;\n    outline-offset: -2px\n}\n\n.center {\n    text-align: center\n}\n\nhtml * {\n    color-profile: sRGB;\n    rendering-intent: auto\n}\n\n* {\n    -webkit-box-sizing: border-box;\n    -moz-box-sizing: border-box;\n    box-sizing: border-box;\n    border: none;\n    margin: 0;\n    padding: 0\n}\n\nhtml {\n    background: #f9f9f9\n}\n\n.left {\n    float: left\n}\n\n.right {\n    float: right\n}\n\n.container {\n    padding-top: 50px;\n    min-width: 960px\n}\n\n.wrap {\n    width: 960px;\n    margin-left: auto;\n    margin-right: auto;\n    padding-left: 20px;\n    padding-right: 20px\n}\n\n.skinnyWrap {\n    width: 690px;\n    margin-left: auto;\n    margin-right: auto;\n    padding-left: 20px;\n    padding-right: 20px\n}\n\nhr {\n    height: 0;\n    border-top: 1px solid #ccc;\n    border-bottom: 1px solid #eee\n}\n\nul, li {\n    margin-left: 20px\n}\n\nli + li {\n    margin-top: 10px\n}\n\nh1 .anchor, h2 .anchor, h3 .anchor, h4 .anchor, h5 .anchor, h6 .anchor {\n    margin-top: -50px;\n    position: absolute\n}\n\nh1:hover .hash-link, h2:hover .hash-link, h3:hover .hash-link, h4:hover .hash-link, h5:hover .hash-link, h6:hover .hash-link {\n    display: inline\n}\n\n.hash-link {\n    color: #aaa;\n    display: none\n}\n\n.nav-main {\n    background: #222;\n    color: #fafafa;\n    position: fixed;\n    top: 0;\n    height: 50px;\n    box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);\n    width: 100%;\n    z-index: 100\n}\n\n.nav-main:after {\n    content: \"\";\n    display: table;\n    clear: both\n}\n\n.nav-main a {\n    color: #e9e9e9;\n    text-decoration: none\n}\n\n.nav-main .nav-site-internal {\n    margin: 0 0 0 20px\n}\n\n.nav-main .nav-site-external {\n    float: right;\n    margin: 0\n}\n\n.nav-main .nav-site li {\n    margin: 0\n}\n\n.nav-main .nav-site li > a {\n    box-sizing: content-box;\n    padding: 0 10px;\n    line-height: 50px;\n    display: inline-block;\n    height: 50px;\n    color: #ddd\n}\n\n.nav-main .nav-site li > a:hover {\n    color: #fff\n}\n\n.nav-main .nav-site li > a.active {\n    color: #fafafa;\n    border-bottom: 3px solid #cc7a6f;\n    background: #333\n}\n\n.nav-main .nav-home {\n    color: #ffffff;\n    font-size: 24px;\n    line-height: 50px;\n    height: 50px;\n    display: inline-block\n}\n\n.nav-main .nav-home .blur-label {\n    color: #209e91;\n}\n\n.nav-main .nav-logo {\n    vertical-align: middle;\n    display: inline-block\n}\n\n.nav-main ul {\n    display: inline-block;\n    vertical-align: top\n}\n\n.nav-main li {\n    display: inline\n}\n\n.hero {\n    padding-bottom: 75px;\n}\n\n.hero .hero-content {\n    color: #e9e9e9;\n    font-weight: 300;\n    background: #313131;\n    padding-top: 50px;\n}\n\n.hero .text {\n    font-size: 64px;\n    text-align: center\n}\n\n.hero .minitext {\n    font-size: 16px;\n    text-align: center;\n    text-transform: uppercase\n}\n\n.hero strong {\n    color: #209e91;\n    font-weight: 400\n}\n\n.white-text {\n    color: rgb(249, 249, 249);\n}\n\n.hero .admin-screenshots {\n    margin-top: 40px;\n    display: flex;\n    flex-direction: row;\n}\n\n.hero .admin-screenshot {\n    width: 50%;\n    padding: 0 15px;\n    text-align: center;\n    height: 250px;\n}\n\n.admin-screenshot img {\n    width: 100%;\n}\n\n.demo-link {\n    display: block;\n    position: relative;\n    line-height: 0;\n}\n\n.demo-link:before {\n    content: '';\n    position: absolute;\n    width: 100%;\n    bottom: 0;\n    left: 0;\n    height: 52px;\n    background-image: linear-gradient(to bottom, transparent, rgb(249,259,249));\n}\n\n.demo-link .demo-link-label {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    content: 'Demo';\n    position: absolute;\n    top: 0;\n    left: 0;\n    width: 100%;\n    height: 100%;\n    background: rgba(0,0,0,0.5);\n    color: rgb(249, 249, 249);\n    font-size: 32px;\n    opacity: 0;\n    transition: opacity 0.3s ease-out;\n}\n\n.demo-link:hover .demo-link-label {\n    opacity: 1;\n}\n\n.buttons-unit {\n    margin-top: 60px;\n    text-align: center\n}\n\n.buttons-unit a {\n    color: #61dafb\n}\n\n.buttons-unit .button {\n    font-size: 24px;\n    background: #cc7a6f;\n    color: #fafafa\n}\n\n.buttons-unit .button:active {\n    background: #c5695c\n}\n\n.buttons-unit.downloads {\n    margin: 30px 0\n}\n\n.index-block {\n    padding:40px 0;\n}\n\n.index-block h1 {\n    text-align: center;\n}\n\n.index-block.black {\n    background: #f2f2f2;\n}\n\n.why-items {\n    display: flex;\n    flex-direction: row;\n    align-items: baseline;\n    margin-top: 15px;\n    padding-top: 15px;\n}\n\n.why-item {\n    flex: 33%;\n    text-align: center;\n    padding: 0 15px;\n}\n\n.why-item img {\n    width: 110px;\n}\n\n.nav-docs {\n    color: #2d2d2d;\n    font-size: 14px;\n    float: left;\n    width: 210px\n}\n\n.nav-docs ul {\n    list-style: none;\n    margin: 0\n}\n\n.nav-docs ul ul {\n    margin: 6px 0 0 20px\n}\n\n.nav-docs li {\n    line-height: 16px;\n    margin: 0 0 6px\n}\n\n.nav-docs h3 {\n    text-transform: uppercase;\n    font-size: 14px\n}\n\n.nav-docs a {\n    color: #666;\n    display: block\n}\n\n.nav-docs a:hover {\n    text-decoration: none;\n    color: #cc7a6f\n}\n\n.nav-docs a.active {\n    color: #cc7a6f\n}\n\n.nav-docs a.external:after {\n    content: \"\";\n    display: inline-block;\n    width: 10px;\n    height: 10px;\n    padding-left: 5px;\n    background-image: url(\"../img/external.png\");\n    background-position: 100% 0;\n    background-repeat: no-repeat;\n    font-size: 10px;\n    line-height: 1em;\n    opacity: 0.5\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (min--moz-device-pixel-ratio: 1.3), only screen and (-o-min-device-pixel-ratio: 1.3 / 1), only screen and (min-resolution: 125dpi), only screen and (min-resolution: 1.3dppx) {\n    .nav-docs a.external:after {\n        background-image: url(\"../img/external_2x.png\");\n        background-size: 10px 10px\n    }\n}\n\n.nav-docs .nav-docs-section {\n    border-bottom: 1px solid #ccc;\n    border-top: 1px solid #eee;\n    padding: 12px 0\n}\n\n.nav-docs .nav-docs-section:first-child {\n    padding-top: 0;\n    border-top: 0\n}\n\n.nav-docs .nav-docs-section:last-child {\n    padding-bottom: 0;\n    border-bottom: 0\n}\n\n.nav-blog li {\n    margin-bottom: 5px\n}\n\n.nav-docs-right {\n    display: block;\n    float: right;\n    line-height: 50px;\n}\n\n.nav-docs-right a {\n    color: #c05b4d;\n    text-decoration: none;\n}\n\n.nav-docs-right a:hover {\n    text-decoration: underline;\n}\n\n.home-section {\n    margin: 50px 0\n}\n\n.home-divider {\n    border-top-color: #bbb;\n    margin: 0 auto;\n    width: 400px\n}\n\n.skinny-row:after {\n    content: \"\";\n    display: table;\n    clear: both\n}\n\n.skinny-col {\n    float: left;\n    margin-left: 40px;\n    width: 305px\n}\n\n.skinny-col:first-child {\n    margin-left: 0\n}\n\n.marketing-row {\n    margin: 50px 0\n}\n\n.marketing-row:after {\n    content: \"\";\n    display: table;\n    clear: both\n}\n\n.marketing-col {\n    float: left;\n    margin-left: 40px;\n    width: 280px\n}\n\n.marketing-col h3 {\n    color: #2d2d2d;\n    font-size: 24px;\n    font-weight: normal;\n    text-transform: uppercase\n}\n\n.marketing-col p {\n    font-size: 16px\n}\n\n.marketing-col:first-child {\n    margin-left: 0\n}\n\n#examples h3, .home-presentation h3 {\n    color: #2d2d2d;\n    font-size: 24px;\n    font-weight: normal;\n    margin-bottom: 5px\n}\n\n#examples p {\n    margin: 0 0 25px 0;\n    max-width: 600px\n}\n\n#examples .example {\n    margin-top: 60px\n}\n\n#examples #todoExample {\n    font-size: 14px\n}\n\n#examples #todoExample ul {\n    list-style-type: square;\n    margin: 0 0 10px 0\n}\n\n#examples #todoExample input {\n    border: 1px solid #ccc;\n    font: 14px proxima-nova, \"Helvetica Neue\", Helvetica, Roboto, Arial, sans-serif;\n    padding: 3px;\n    width: 150px\n}\n\n#examples #todoExample button {\n    font: 14px proxima-nova, \"Helvetica Neue\", Helvetica, Roboto, Arial, sans-serif;\n    margin-left: 5px;\n    padding: 4px 10px\n}\n\n#examples #markdownExample textarea {\n    border: 1px solid #ccc;\n    font: 14px proxima-nova, \"Helvetica Neue\", Helvetica, Roboto, Arial, sans-serif;\n    margin-bottom: 10px;\n    padding: 5px\n}\n\n.home-bottom-section {\n    margin-bottom: 100px\n}\n\n.docs-nextprev:after {\n    content: \"\";\n    display: table;\n    clear: both\n}\n\n.jsxCompiler {\n    margin: 0 auto;\n    padding-top: 20px;\n    width: 1220px\n}\n\n.jsxCompiler label.compiler-option {\n    display: block;\n    margin-top: 5px\n}\n\n.jsxCompiler #jsxCompiler {\n    margin-top: 20px\n}\n\n.jsxCompiler .playgroundPreview {\n    padding: 0;\n    width: 600px;\n    word-wrap: break-word\n}\n\n.jsxCompiler .playgroundPreview pre {\n    font-family: 'source-code-pro', Menlo, Consolas, 'Courier New', monospace;\n    font-size: 13px;\n    line-height: 1.5\n}\n\n.jsxCompiler .playgroundError {\n    padding: 15px 20px\n}\n\n.docs-prev {\n    float: left\n}\n\n.docs-next {\n    float: right\n}\n\nfooter {\n    font-size: 13px;\n    font-weight: 600;\n    margin-top: 36px;\n    margin-bottom: 18px;\n    overflow: auto\n}\n\nsection.black content {\n    padding-bottom: 18px\n}\n\n.blogContent {\n    padding-top: 20px\n}\n\n.blogContent:after {\n    content: \"\";\n    display: table;\n    clear: both\n}\n\n.blogContent blockquote {\n    padding: 5px 15px;\n    margin: 20px 0;\n    background-color: #f8f5ec;\n    border-left: 5px solid #f7ebc6\n}\n\n.blogContent h2 > code {\n    font-size: inherit;\n    line-height: inherit;\n    color: #555;\n    background-color: rgba(0, 0, 0, 0.04)\n}\n\n.documentationContent {\n    padding-top: 20px\n}\n\n.documentationContent:after {\n    content: \"\";\n    display: table;\n    clear: both\n}\n\n.documentationContent .subHeader {\n    font-size: 24px\n}\n\n.documentationContent h2 {\n    margin-top: 30px\n}\n\n.documentationContent blockquote {\n    padding: 15px 30px 15px 15px;\n    margin: 20px 0;\n    background-color: rgba(204, 122, 111, 0.1);\n    border-left: 5px solid rgba(191, 87, 73, 0.2)\n}\n\n.documentationContent blockquote h4 {\n    margin-top: 0\n}\n\n.documentationContent blockquote p {\n    margin-bottom: 0\n}\n\n.documentationContent blockquote p:first-child {\n    font-weight: bold;\n    font-size: 17.5px;\n    line-height: 20px;\n    margin-top: 0;\n    text-rendering: optimizelegibility\n}\n\n.docs-prevnext {\n    padding-top: 40px;\n    padding-bottom: 40px\n}\n\n.button {\n    background: -webkit-linear-gradient(#9a9a9a, #646464);\n    background: linear-gradient(#9a9a9a, #646464);\n    border-radius: 4px;\n    padding: 8px 16px;\n    font-size: 18px;\n    font-weight: 400;\n    margin: 0 12px;\n    display: inline-block;\n    color: #fafafa;\n    text-decoration: none;\n    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\n    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);\n    text-decoration: none\n}\n\n.button:hover {\n    text-decoration: none\n}\n\n.button:active {\n    box-shadow: none\n}\n\n.hero .button {\n    box-shadow: 1px 3px 3px rgba(0, 0, 0, 0.3)\n}\n\n.button.blue {\n    background: -webkit-linear-gradient(#77a3d2, #4783c2);\n    background: linear-gradient(#77a3d2, #4783c2)\n}\n\n.row {\n    padding-bottom: 4px\n}\n\n.row .span4 {\n    width: 33.33%;\n    display: table-cell\n}\n\n.row .span8 {\n    width: 66.66%;\n    display: table-cell\n}\n\n.row .span6 {\n    width: 50%;\n    display: table-cell\n}\n\np {\n    margin: 10px 0\n}\n\n.highlight {\n    padding: 10px;\n    margin-bottom: 20px\n}\n\nfigure {\n    text-align: center\n}\n\n.inner-content {\n    float: right;\n    width: 650px\n}\n\n.nosidebar .inner-content {\n    float: none;\n    margin: 0 auto\n}\n\n.inner-content img {\n    max-width: 100%;\n}\n\n.inner-content table {\n    border-collapse: collapse;\n    width: 100%;\n}\n.inner-content th, .inner-content td {\n    padding: 0.25rem;\n    text-align: left;\n    border: 1px solid #ccc;\n}\n.inner-content tbody tr:nth-child(odd) {\n    background: #eee;\n}\n\nh1:after {\n    content: \"\";\n    display: table;\n    clear: both\n}\n\n.edit-page-link {\n    float: right;\n    font-size: 16px;\n    font-weight: normal;\n    line-height: 20px;\n    margin-top: 17px\n}\n\n.post-list-item + .post-list-item {\n    margin-top: 60px\n}\n\n/* code styling */\n\ncode {\n    font-family: 'Anonymous Pro', sans-serif;\n    font-size: 0.85em;\n    color: #000;\n}\n\npre code {\n    display: block;\n    line-height: 1.1;\n    color: #333333;\n    background: #f8f5ec;\n    padding: 30px 14px 14px;\n    position: relative;\n    overflow-x: auto;\n}\n\npre code:before {\n    position: absolute;\n    top: 0;\n    right: 0;\n    left: 0;\n    padding: 3px 7px;\n    font-size: 12px;\n    font-weight: bold;\n    color: #c2c0bc;\n    background-color: #f1ede4;\n    content: \"Code\";\n}\n\np code {\n    padding: 0.1em 0.3em 0.2em;\n    border-radius: 0.3em;\n    position: relative;\n    background: #fffff3;\n\n    white-space: nowrap;\n}\n\n/* syntax hl stuff */\n\ncode.lang-markdown {\n    color: #424242;\n}\n\ncode.lang-markdown .header,\ncode.lang-markdown .strong {\n    font-weight: bold;\n}\n\ncode.lang-markdown .emphasis {\n    font-style: italic;\n}\n\ncode.lang-markdown .horizontal_rule,\ncode.lang-markdown .link_label,\ncode.lang-markdown .code,\ncode.lang-markdown .header,\ncode.lang-markdown .link_url {\n    color: #555;\n}\n\ncode.lang-markdown .blockquote,\ncode.lang-markdown .bullet {\n    color: #bbb;\n}\n\n/* Tomorrow Theme */\n/* http://jmblog.github.com/color-themes-for-google-code-highlightjs */\n/* Original theme - https://github.com/chriskempson/tomorrow-theme */\n/* http://jmblog.github.com/color-themes-for-google-code-highlightjs */\n.tomorrow-comment, pre .comment, pre .title {\n    color: #8e908c;\n}\n\n.tomorrow-red, pre .variable, pre .attribute, pre .tag, pre .regexp, pre .ruby .constant, pre .xml .tag .title, pre .xml .pi, pre .xml .doctype, pre .html .doctype, pre .css .id, pre .css .class, pre .css .pseudo {\n    color: #c82829;\n}\n\n.tomorrow-orange, pre .number, pre .preprocessor, pre .built_in, pre .literal, pre .params, pre .constant {\n    color: #f5871f;\n}\n\n.tomorrow-yellow, pre .class, pre .ruby .class .title, pre .css .rules .attribute {\n    color: #eab700;\n}\n\n.tomorrow-green, pre .string, pre .value, pre .inheritance, pre .header, pre .ruby .symbol, pre .xml .cdata {\n    color: #718c00;\n}\n\n.tomorrow-aqua, pre .css .hexcolor {\n    color: #3e999f;\n}\n\n.tomorrow-blue, pre .function, pre .python .decorator, pre .python .title, pre .ruby .function .title, pre .ruby .title .keyword, pre .perl .sub, pre .javascript .title, pre .coffeescript .title {\n    color: #4271ae;\n}\n\n.tomorrow-purple, pre .keyword, pre .javascript .function {\n    color: #8959a8;\n}\n\n/* media queries */\n\n\n@media screen and (max-width: 960px) {\n    .nav-main {\n        position: static\n    }\n\n    .container {\n        padding-top: 0\n    }\n}"
  },
  {
    "path": "docs/contents/index.json",
    "content": "{\n  \"template\": \"index.jade\",\n  \"activeHome\": true\n}\n"
  },
  {
    "path": "docs/package.json",
    "content": "{\n  \"dependencies\": {\n    \"moment\": \"2.3.x\",\n    \"underscore\": \"1.4.x\",\n    \"typogr\": \"0.5.x\"\n  },\n  \"private\": \"true\"\n}\n"
  },
  {
    "path": "docs/plugins/paginator.coffee",
    "content": "\nmodule.exports = (env, callback) ->\n  ### Paginator plugin. Defaults can be overridden in config.json\n      e.g. \"paginator\": {\"perPage\": 10} ###\n\n  defaults =\n    template: 'index.jade' # template that renders pages\n    articles: 'articles' # directory containing contents to paginate\n    first: 'index.html' # filename/url for first page\n    filename: 'page/%d/index.html' # filename for rest of pages\n    perPage: 2 # number of articles per page\n    groupSort: {}\n\n  # assign defaults any option not set in the config file\n  options = env.config.paginator or {}\n  for key, value of defaults\n    options[key] ?= defaults[key]\n\n  getArticles = (contents) ->\n    # helper that returns a list of articles found in *contents*\n    # note that each article is assumed to have its own directory in the articles directory\n    articles = contents[options.articles]._.directories.map (item) -> item.index\n    # skip articles that does not have a template associated\n    articles = articles.filter (item) -> item.template isnt 'none'\n    # sort article by date\n    articles.sort (a, b) -> b.metadata.sort - a.metadata.sort\n    groupedArticlesObj = articles.reduce (acc, curr) ->\n      groupName = curr.metadata.group\n      if not acc[groupName]\n        acc[groupName] =\n          groupName: groupName\n          items: []\n      acc[groupName].items.push curr\n      return acc\n    , {}\n    groupedArticles = (val for key, val of groupedArticlesObj)\n    groupedArticles.sort (a, b) -> (options.groupSort[b.groupName] || 0) - (options.groupSort[a.groupName] || 0)\n    return groupedArticles\n\n  # add the article helper to the environment so we can use it later\n  env.helpers.getGroupedArticles = getArticles\n\n  # tell the plugin manager we are done\n  callback()\n"
  },
  {
    "path": "docs/templates/article.jade",
    "content": "\nextends layout\n\nblock title\n  | BlurAdmin documentation - #{page.title]\n\nblock content\n  section.content.wrap.documentationContent\n    div.nav-docs\n      each group in groupedArticles\n        div.nav-docs.section\n          h3=group.groupName\n          ul\n            each article in group.items\n              li\n                a(href=article.url)(class= locals.page === article ? 'active': '')= article.title\n    div.inner-content\n      h1=locals.page.title\n      div.subHeader\n      != typogr(page.html).typogrify()\n\n"
  },
  {
    "path": "docs/templates/index.jade",
    "content": "\nextends layout\n\nblock title\n  | BlurAdmin angular admin dashboard template\n\nblock content\n  div.hero\n    div.hero-content\n      div.wrap\n        div.text\n          strong Blur#[span.white-text Admin]\n        div.minitext Angular admin panel front-end framework\n        div.buttons-unit\n          a.button(href=installationArticleUrl) Installation guidelines\n          a.button(href=firstArticleUrl) Documentation\n        div.admin-screenshots\n          div.admin-screenshot\n            h3 Mint version\n            a.demo-link(href='http://akveo.com/blur-admin-mint/',target='_blank')\n              img(src=contents.images['blur-preview-mint.jpg'].url)\n              span.demo-link-label Demo\n          div.admin-screenshot\n            h3 Blur version (experimental)\n            a.demo-link(href='http://akveo.com/blur-admin/',target='_blank')\n              img(src=contents.images['blur-preview.jpg'].url)\n              span.demo-link-label Demo\n  div.index-block\n    div.wrap\n      h1 Why BlurAdmin?\n      div.why-items\n        div.why-item\n          img(src=contents.images['why-structure.svg'].url)\n          h4 Awesome structure\n          p Feature-based structure has proven itself as a good choice for large angular applications.\n        div.why-item\n          img(src=contents.images['why-design.svg'].url)\n          h4 Neat design\n          p We have put a lot of efforts and carefully selected each color and character for this template!\n        div.why-item\n          img(src=contents.images['why-practices.svg'].url)\n          h4 Ease of customization\n          p Check out #[a(href='/blur-admin/articles/011-changing-color-scheme') our article], where we describe how you can create different look in just 2 minutes!\n  div.index-block.black\n    div.wrap\n      h1 Is it free?\n      p Blur admin is completely free and MIT licensed. That means you can do whatever you want with it.\n      p\n        | Initially we planned to sell it on template markets.\n        |&nbsp;But they #[a(href='http://akveo.com/blog/why-i-hate-template-markets/',target='_blank') rejected us several times].\n        |&nbsp;That's why we decided to make it open-source. And honestly, we have completely no regrets about it!\n        |&nbsp;And we suggest you to not waste your money and use our template instead of paid ones!\n        |&nbsp;Trust us, it's better than large number of them.\n  div.index-block\n    div.wrap\n      h1 How can I support you guys?\n      p Here's what you can do:\n      ul\n        li Star #[a(href='https://github.com/akveo/blur-admin',target='_blank') our GitHub repo]\n        li Create pull requests, submit bugs, suggest new features\n        li Follow #[a(href='https://twitter.com/akveo_inc',target='_blank') us on Twitter]\n        li Like #[a(href='https://www.facebook.com/akveo/',target='_blank') our page on Facebook]\n  div.index-block.black\n    div.wrap\n      h1 Can I hire you?\n      p Yes! We are available for hire. Visit #[a(href='http://akveo.com',target='_blank') our homepage]\n        |&nbsp;or simply leave us a note to #[a(href='mailto:contact@akveo.com') contact@akveo.com].\n        |&nbsp;We will be happy to work with you!\n\n"
  },
  {
    "path": "docs/templates/layout.jade",
    "content": "doctype html\nblock vars\n  - var bodyclass = null;\n  - var groupedArticles = env.helpers.getGroupedArticles(contents);\n  - var firstArticleUrl = groupedArticles[0].items[0].url\n  - var installationArticleUrl = groupedArticles[0].items[1].url\nhtml(lang='en')\n  head\n    block head\n      meta(charset='utf-8')\n      meta(http-equiv='X-UA-Compatible', content='IE=edge,chrome=1')\n      meta(name='viewport', content='width=device-width')\n      meta(name='keywords', content='admin,dashboard,template,angular,bootstrap,blur,panel,html,css,javascript')\n      title\n        block title\n          = locals.name\n      link(rel='alternate', href=locals.url+'/feed.xml', type='application/rss+xml', title=locals.description)\n      link(rel='stylesheet', href='https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700,700italic,900italic,900|Anonymous+Pro:400,700,400italic,700italic&subset=latin,greek,greek-ext,vietnamese,cyrillic-ext,latin-ext,cyrillic')\n      link(rel='stylesheet', href=contents.css['main.css'].url)\n      link(rel='shortcut icon', href=contents.images['favicon.png'].url)\n      | <!-- Google Tag Manager -->\n      | <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n      | new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n      | j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n      | 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n      | })(window,document,'script','dataLayer','GTM-K8MXX5F');</script>\n      | <!-- End Google Tag Manager -->\n  body(class=bodyclass)\n    | <!-- Google Tag Manager (noscript) -->\n    | <noscript><iframe src=\"https://www.googletagmanager.com/ns.html?id=GTM-K8MXX5F\"\n    | height=\"0\" width=\"0\" style=\"display:none;visibility:hidden\"></iframe></noscript>\n    | <!-- End Google Tag Manager (noscript) -->\n    div.container\n      div.nav-main\n        div.wrap\n          a.nav-home(href=contents['index'].url)\n            img.nav-logo(src=contents.images['blur-admin-logo.png'].url, width=36,height=36)\n            |&nbsp;#[span.blur-label Blur]Admin\n          ul.nav-site.nav-site-internal\n            li\n              a(class= locals.page.metadata.activeHome ? 'active': '')(href=contents['index'].url) Home\n            li\n              a(class= !locals.page.metadata.activeHome ? 'active': '')(href=firstArticleUrl) Docs\n          span.nav-docs-right\n            | Need some help? Let us know! #[a(href='mailto:contact@akveo.com') contact@akveo.com]\n      block content\n        h2 Welcome to blur admin!\n      footer.wrap\n        div.left Powered by Angular, Bootstrap, Gulp and more...\n        div.right\n          | © 2015–2016 Akveo LLC<br />\n          | Documentation licensed under #[a(href='https://creativecommons.org/licenses/by/4.0/') CC BY 4.0].\n    a(href='https://github.com/akveo/blur-admin')\n      img(style='position: fixed; top: 0; right: 0; border: 0; z-index: 1000;',src='https://camo.githubusercontent.com/365986a132ccd6a44c23a9169022c0b5c890c387/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f7265645f6161303030302e706e67',alt='Fork me on GitHub',data-canonical-src='https://s3.amazonaws.com/github/ribbons/forkme_right_red_aa0000.png')\n"
  },
  {
    "path": "gulp/build.js",
    "content": "'use strict';\n\nvar path = require('path');\nvar gulp = require('gulp');\nvar conf = require('./conf');\n\nvar $ = require('gulp-load-plugins')({\n  pattern: ['gulp-*', 'main-bower-files', 'uglify-save-license', 'del']\n});\n\ngulp.task('partials', function () {\n  return gulp.src([\n    path.join(conf.paths.src, '/app/**/*.html'),\n    path.join(conf.paths.tmp, '/serve/app/**/*.html')\n  ])\n    .pipe($.minifyHtml({\n      empty: true,\n      spare: true,\n      quotes: true\n    }))\n    .pipe($.angularTemplatecache('templateCacheHtml.js', {\n      module: 'BlurAdmin',\n      root: 'app'\n    }))\n    .pipe(gulp.dest(conf.paths.tmp + '/partials/'));\n});\n\ngulp.task('html', ['inject', 'partials'], function () {\n  var partialsInjectFile = gulp.src(path.join(conf.paths.tmp, '/partials/templateCacheHtml.js'), { read: false });\n  var partialsInjectOptions = {\n    starttag: '<!-- inject:partials -->',\n    ignorePath: path.join(conf.paths.tmp, '/partials'),\n    addRootSlash: false\n  };\n\n  var htmlFilter = $.filter('*.html', { restore: true, dot:true});\n  var jsFilter = $.filter('**/*.js', { restore: true, dot:true});\n  var cssFilter = $.filter('**/*.css', { restore: true, dot:true});\n  var assets;\n\n  return gulp.src(path.join(conf.paths.tmp, '/serve/*.html'))\n    .pipe($.inject(partialsInjectFile, partialsInjectOptions))\n    .pipe(assets = $.useref.assets())\n    .pipe($.rev())\n    .pipe(jsFilter)\n    .pipe($.sourcemaps.init())\n    .pipe($.ngAnnotate())\n    .pipe($.uglify({ preserveComments: $.uglifySaveLicense })).on('error', conf.errorHandler('Uglify'))\n    .pipe($.sourcemaps.write('maps'))\n    .pipe(jsFilter.restore)\n    .pipe(cssFilter)\n    .pipe($.sourcemaps.init())\n    .pipe($.replace('../../bower_components/bootstrap-sass/assets/fonts/bootstrap/', '../fonts/'))\n    .pipe($.minifyCss({ processImport: false }))\n    .pipe($.sourcemaps.write('maps'))\n    .pipe(cssFilter.restore)\n    .pipe(assets.restore())\n    .pipe($.useref())\n    .pipe($.revReplace())\n    .pipe(htmlFilter)\n    .pipe($.minifyHtml({\n      empty: true,\n      spare: true,\n      quotes: true,\n      conditionals: true\n    }))\n    .pipe(htmlFilter.restore)\n    .pipe(gulp.dest(path.join(conf.paths.dist, '/')))\n    .pipe($.size({ title: path.join(conf.paths.dist, '/'), showFiles: true }));\n  });\n\n// Only applies for fonts from bower dependencies\n// Custom fonts are handled by the \"other\" task\ngulp.task('fonts', function () {\n  return gulp.src($.mainBowerFiles('**/*.{eot,svg,ttf,woff,woff2}'))\n    .pipe($.flatten())\n    .pipe(gulp.dest(path.join(conf.paths.dist, '/fonts/')));\n});\n\ngulp.task('other', ['copyVendorImages'], function () {\n  var fileFilter = $.filter(function (file) {\n    return file.stat.isFile();\n  });\n\n  return gulp.src([\n    path.join(conf.paths.src, '/**/*'),\n    path.join('!' + conf.paths.src, '/**/*.{html,css,js,scss,md}'),\n    path.join(conf.paths.tmp, '/serve/**/assets/img/theme/vendor/**/*')\n  ])\n    .pipe(fileFilter)\n    .pipe(gulp.dest(path.join(conf.paths.dist, '/')));\n});\n\ngulp.task('clean', function () {\n  return $.del([path.join(conf.paths.dist, '/'), path.join(conf.paths.tmp, '/')]);\n});\n\ngulp.task('build', ['html', 'fonts', 'other']);\n"
  },
  {
    "path": "gulp/conf.js",
    "content": "/**\n *  This file contains the variables used in other gulp files\n *  which defines tasks\n *  By design, we only put there very generic config values\n *  which are used in several places to keep good readability\n *  of the tasks\n */\n\nvar gutil = require('gulp-util');\n\n/**\n *  The main paths of your project handle these with care\n */\nexports.paths = {\n  src: 'src',\n  dist: 'release',\n  devDist: 'dev-release',\n  tmp: '.tmp',\n  e2e: 'e2e'\n};\n\n/**\n *  Wiredep is the lib which inject bower dependencies in your project\n *  Mainly used to inject script tags in the index.html but also used\n *  to inject css preprocessor deps and js files in karma\n */\nexports.wiredep = {\n  exclude: [/\\/bootstrap\\.js$/, /\\/bootstrap-sass\\/.*\\.js/, /\\/require\\.js/],\n  directory: 'bower_components'\n};\n\n/**\n *  Common implementation for an error handler of a Gulp plugin\n */\nexports.errorHandler = function(title) {\n  'use strict';\n\n  return function(err) {\n    gutil.log(gutil.colors.red('[' + title + ']'), err.toString());\n    this.emit('end');\n  };\n};\n"
  },
  {
    "path": "gulp/devRelease.js",
    "content": "'use strict';\n\nvar path = require('path');\nvar gulp = require('gulp');\nvar conf = require('./conf');\n\nvar $ = require('gulp-load-plugins')({\n  pattern: ['gulp-*', 'main-bower-files']\n});\n\nvar _ = require('lodash');\n\ngulp.task('dev-fonts', function () {\n  return gulp.src($.mainBowerFiles())\n      .pipe($.filter('**/*.{eot,svg,ttf,woff,woff2}'))\n      .pipe($.flatten())\n      .pipe(gulp.dest(path.join(conf.paths.devDist, 'fonts')));\n});\n\ngulp.task('dev-copy-lib', function () {\n  var assets = require('wiredep')(_.extend({}, conf.wiredep));\n  var srcList = [];\n  srcList.push.apply(srcList, assets.js);\n  srcList.push.apply(srcList, assets.css);\n  return gulp\n      .src(srcList/*, { base: '.' }*/)\n/*      .pipe($.rename(function (p) {\n        p.dirname = p.dirname.replace(/\\\\/g, '/').replace('bower_components/', '');\n        if (p.dirname.indexOf('/') !== -1) {\n          p.dirname = p.dirname.substr(0, p.dirname.indexOf('/'));\n        }\n      }))*/\n      .pipe(gulp.dest(path.join(conf.paths.devDist, 'lib')));\n});\n\ngulp.task('dev-css-replace', ['dev-copy-assets'], function() {\n  return gulp.src(path.join(conf.paths.devDist, '*.html'))\n      .pipe($.replace(/<link rel=\"stylesheet\" href=\"\\.\\.\\/bower_components\\/.*\\/(.*)\"\\s*?\\/>/g, '<link rel=\"stylesheet\" href=\"lib/$1\" >'))\n      .pipe(gulp.dest(conf.paths.devDist));\n});\n\ngulp.task('dev-js-replace', ['dev-copy-assets'], function() {\n  return gulp.src(path.join(conf.paths.devDist, '.html'))\n      .pipe($.replace(/<script src=\"\\.\\.\\/bower_components\\/.*\\/(.*)\"\\s*?>/g, '<script src=\"lib/$1\">'))\n      .pipe(gulp.dest(conf.paths.devDist));\n});\n\ngulp.task('dev-copy-assets', ['inject', 'dev-copy-lib', 'dev-fonts'], function () {\n  return gulp\n      .src([\n        conf.paths.src + '/**/*',\n        path.join(conf.paths.tmp, '/serve/**/*')\n      ])\n      .pipe(gulp.dest(conf.paths.devDist));\n});\n\ngulp.task('dev-release', ['dev-css-replace', 'dev-js-replace']);\n"
  },
  {
    "path": "gulp/docs.js",
    "content": "'use strict';\n\nvar gulp = require('gulp');\n\nvar $ = require('gulp-load-plugins')();\n\ngulp.task('wintersmith-generate', $.shell.task([\n  'wintersmith build'\n], { cwd: 'docs' }));\n\ngulp.task('deploy-docs', ['wintersmith-generate'], function() {\n  return gulp.src('./docs/build/**/*')\n      .pipe($.ghPages());\n});"
  },
  {
    "path": "gulp/images.js",
    "content": "'use strict';\n\nvar path = require('path');\nvar gulp = require('gulp');\nvar conf = require('./conf');\n\ngulp.task('copyVendorImages', function () {\n  return gulp\n    .src([\n      path.join(conf.wiredep.directory, '**/ammap/dist/ammap/images/**/*'),\n      path.join(conf.wiredep.directory, '**/amcharts/dist/amcharts/images/**/*'),\n      path.join(conf.wiredep.directory, '**/ionrangeslider/img/**/*'),\n      path.join(conf.wiredep.directory, '**/jstree/dist/themes/**/*'),\n      path.join(conf.wiredep.directory, '**/leaflet/dist/images/**/*')\n    ])\n    .pipe(gulp.dest(path.join(conf.paths.tmp, 'serve', '/assets/img/theme/vendor')));\n});\n\n"
  },
  {
    "path": "gulp/inject.js",
    "content": "'use strict';\n\nvar path = require('path');\nvar gulp = require('gulp');\nvar conf = require('./conf');\n\nvar $ = require('gulp-load-plugins')();\n\nvar wiredep = require('wiredep').stream;\nvar _ = require('lodash');\n\nvar browserSync = require('browser-sync');\n\ngulp.task('inject-reload', ['inject'], function () {\n  browserSync.reload();\n});\n\ngulp.task('inject', ['scripts', 'styles', 'injectAuth', 'inject404', 'copyVendorImages'], function () {\n  var injectStyles = gulp.src([\n    path.join(conf.paths.tmp, '/serve/app/main.css'),\n    path.join('!' + conf.paths.tmp, '/serve/app/vendor.css')\n  ], {read: false});\n\n  var injectScripts = gulp.src([\n    path.join(conf.paths.src, '/assets/js/**/*.js'),\n    path.join(conf.paths.src, '/app/**/*.module.js'),\n    path.join(conf.paths.src, '/app/**/*.js'),\n    path.join('!' + conf.paths.src, '/app/**/*.spec.js'),\n    path.join('!' + conf.paths.src, '/app/**/*.mock.js'),\n  ])\n    /*.pipe($.angularFilesort())*/.on('error', conf.errorHandler('AngularFilesort'));\n\n  var injectOptions = {\n    ignorePath: [conf.paths.src, path.join(conf.paths.tmp, '/serve')],\n    addRootSlash: false\n  };\n\n  return gulp.src(path.join(conf.paths.src, '/index.html'))\n    .pipe($.inject(injectStyles, injectOptions))\n    .pipe($.inject(injectScripts, injectOptions))\n    .pipe(wiredep(_.extend({}, conf.wiredep)))\n    .pipe(gulp.dest(path.join(conf.paths.tmp, '/serve')));\n});\n\ngulp.task('injectAuth', ['stylesAuth'], function () {\n  return injectAlone({\n    css: [path.join('!' + conf.paths.tmp, '/serve/app/vendor.css'), path.join(conf.paths.tmp, '/serve/app/auth.css')],\n    paths: [path.join(conf.paths.src, '/auth.html'), path.join(conf.paths.src, '/reg.html')]\n  })\n});\n\ngulp.task('inject404', ['styles404'], function () {\n  return injectAlone({\n    css: [path.join('!' + conf.paths.tmp, '/serve/app/vendor.css'), path.join(conf.paths.tmp, '/serve/app/404.css')],\n    paths: path.join(conf.paths.src, '/404.html')\n  })\n});\n\nvar injectAlone = function (options) {\n  var injectStyles = gulp.src(\n    options.css\n    , {read: false});\n\n  var injectOptions = {\n    ignorePath: [conf.paths.src, path.join(conf.paths.tmp, '/serve')],\n    addRootSlash: false\n  };\n\n  return gulp.src(options.paths)\n    .pipe($.inject(injectStyles, injectOptions))\n    .pipe(wiredep(_.extend({}, conf.wiredep)))\n    .pipe(gulp.dest(path.join(conf.paths.tmp, '/serve')));\n};"
  },
  {
    "path": "gulp/marketplace.js",
    "content": "'use strict';\n\nvar path = require('path');\nvar gulp = require('gulp');\nvar zip = require('gulp-zip');\nvar prompt = require('gulp-prompt');\nvar rename = require('gulp-rename');\n\ngulp.task('marketplace-release', ['build', 'dev-release'], function () {\n  return gulp.src('')\n    .pipe(prompt.prompt({\n      type: 'input',\n      name: 'version',\n      message: 'Please enter release version (x.x.x)'\n    }, function (res) {\n      var nameAndVersion = 'blur-admin-' + res.version;\n      return gulp\n        .src(['src/**', 'release/**', 'dev-release/**', 'gulp/**', 'bower.json', 'gulpfile.js', 'package.json', 'README.md', '.gitignore'], {base: \".\"})\n        .pipe(rename(function (path) {\n          path.dirname = nameAndVersion + '/' + path.dirname;\n        }))\n        .pipe(zip(nameAndVersion + '.zip'))\n        .pipe(gulp.dest('.'));\n    }));\n\n});"
  },
  {
    "path": "gulp/scripts.js",
    "content": "'use strict';\n\nvar path = require('path');\nvar gulp = require('gulp');\nvar conf = require('./conf');\n\nvar browserSync = require('browser-sync');\n\nvar $ = require('gulp-load-plugins')();\n\n\ngulp.task('scripts-reload', function() {\n  return buildScripts()\n    .pipe(browserSync.stream());\n});\n\ngulp.task('scripts', function() {\n  return buildScripts();\n});\n\nfunction buildScripts() {\n  return gulp.src(path.join(conf.paths.src, '/app/**/*.js'))\n    .pipe($.eslint())\n    .pipe($.eslint.format())\n    .pipe($.size())\n};\n"
  },
  {
    "path": "gulp/server.js",
    "content": "'use strict';\n\nvar path = require('path');\nvar gulp = require('gulp');\nvar conf = require('./conf');\n\nvar browserSync = require('browser-sync');\nvar browserSyncSpa = require('browser-sync-spa');\n\nvar util = require('util');\n\nvar proxyMiddleware = require('http-proxy-middleware');\n\nfunction browserSyncInit(baseDir, browser) {\n  browser = browser === undefined ? 'default' : browser;\n\n  var routes = null;\n  if(baseDir === conf.paths.src || (util.isArray(baseDir) && baseDir.indexOf(conf.paths.src) !== -1)) {\n    routes = {\n      '/bower_components': 'bower_components'\n    };\n  }\n\n  var server = {\n    baseDir: baseDir,\n    routes: routes\n  };\n\n  /*\n   * You can add a proxy to your backend by uncommenting the line below.\n   * You just have to configure a context which will we redirected and the target url.\n   * Example: $http.get('/users') requests will be automatically proxified.\n   *\n   * For more details and option, https://github.com/chimurai/http-proxy-middleware/blob/v0.9.0/README.md\n   */\n  // server.middleware = proxyMiddleware('/users', {target: 'http://jsonplaceholder.typicode.com', changeOrigin: true});\n\n  browserSync.instance = browserSync.init({\n    startPath: '/',\n    server: server,\n    browser: browser,\n    ghostMode: false\n  });\n}\n\nbrowserSync.use(browserSyncSpa({\n  selector: '[ng-app]'// Only needed for angular apps\n}));\n\ngulp.task('serve', ['watch'], function () {\n  browserSyncInit([path.join(conf.paths.tmp, '/serve'), conf.paths.src]);\n});\n\ngulp.task('serve:dist', ['build'], function () {\n  browserSyncInit(conf.paths.dist);\n});\n\ngulp.task('serve:e2e', ['inject'], function () {\n  browserSyncInit([conf.paths.tmp + '/serve', conf.paths.src], []);\n});\n\ngulp.task('serve:e2e-dist', ['build'], function () {\n  browserSyncInit(conf.paths.dist, []);\n});\n"
  },
  {
    "path": "gulp/styles.js",
    "content": "'use strict';\n\nvar path = require('path');\nvar gulp = require('gulp');\nvar conf = require('./conf');\n\nvar browserSync = require('browser-sync');\n\nvar $ = require('gulp-load-plugins')();\n\nvar wiredep = require('wiredep').stream;\nvar _ = require('lodash');\n\ngulp.task('styles-reload', ['styles'], function () {\n  return buildStyles()\n    .pipe(browserSync.stream());\n});\n\ngulp.task('styles', function () {\n  return buildStyles();\n});\n\ngulp.task('stylesAuth', function () {\n  return buildSingleScss(path.join(conf.paths.src, '/sass/auth.scss'));\n});\ngulp.task('styles404', function () {\n  return buildSingleScss(path.join(conf.paths.src, '/sass/404.scss'));\n});\n\nvar buildStyles = function () {\n  var sassOptions = {\n    style: 'expanded'\n  };\n\n  var injectFiles = gulp.src([\n    path.join(conf.paths.src, '/sass/**/_*.scss'),\n    '!' + path.join(conf.paths.src, '/sass/theme/conf/**/*.scss'),\n    '!' + path.join(conf.paths.src, '/sass/404.scss'),\n    '!' + path.join(conf.paths.src, '/sass/auth.scss')\n  ], {read: false});\n\n  var injectOptions = {\n    transform: function (filePath) {\n      filePath = filePath.replace(conf.paths.src + '/sass/', '');\n      return '@import \"' + filePath + '\";';\n    },\n    starttag: '// injector',\n    endtag: '// endinjector',\n    addRootSlash: false\n  };\n\n  return gulp.src([\n    path.join(conf.paths.src, '/sass/main.scss')\n  ])\n    .pipe($.inject(injectFiles, injectOptions))\n    .pipe(wiredep(_.extend({}, conf.wiredep)))\n    .pipe($.sourcemaps.init())\n    .pipe($.sass(sassOptions)).on('error', conf.errorHandler('Sass'))\n    .pipe($.autoprefixer()).on('error', conf.errorHandler('Autoprefixer'))\n    .pipe($.sourcemaps.write())\n    .pipe(gulp.dest(path.join(conf.paths.tmp, '/serve/app/')));\n};\n\nvar buildSingleScss = function (paths) {\n  var sassOptions = {\n    style: 'expanded'\n  };\n\n  return gulp.src([paths])\n    .pipe($.sass(sassOptions)).on('error', conf.errorHandler('Sass'))\n    .pipe($.autoprefixer()).on('error', conf.errorHandler('Autoprefixer'))\n    .pipe(gulp.dest(path.join(conf.paths.tmp, '/serve/app/')));\n};\n"
  },
  {
    "path": "gulp/watch.js",
    "content": "'use strict';\n\nvar path = require('path');\nvar gulp = require('gulp');\nvar conf = require('./conf');\n\nvar browserSync = require('browser-sync');\n\nfunction isOnlyChange(event) {\n  return event.type === 'changed';\n}\n\ngulp.task('watch', ['inject'], function () {\n\n  gulp.watch([path.join(conf.paths.src, '/*.html'), 'bower.json'], ['inject-reload']);\n\n  gulp.watch([\n    path.join(conf.paths.src, '/sass/**/*.css'),\n    path.join(conf.paths.src, '/sass/**/*.scss')\n  ], function(event) {\n    if(isOnlyChange(event)) {\n      gulp.start('styles-reload');\n    } else {\n      gulp.start('inject-reload');\n    }\n  });\n\n  gulp.watch(path.join(conf.paths.src, '/app/**/*.js'), function(event) {\n    if(isOnlyChange(event)) {\n      gulp.start('scripts-reload');\n    } else {\n      gulp.start('inject-reload');\n    }\n  });\n\n  gulp.watch(path.join(conf.paths.src, '/app/**/*.html'), function(event) {\n    browserSync.reload(event.path);\n  });\n});\n"
  },
  {
    "path": "gulpfile.js",
    "content": "'use strict';\n\nvar gulp = require('gulp');\nvar wrench = require('wrench');\n\n/**\n *  This will load all js or coffee files in the gulp directory\n *  in order to load all gulp tasks\n */\nwrench.readdirSyncRecursive('./gulp').filter(function(file) {\n  return (/\\.(js|coffee)$/i).test(file);\n}).map(function(file) {\n  require('./gulp/' + file);\n});\n\n\n/**\n *  Default task clean temporaries directories and launch the\n *  main optimization build task\n */\ngulp.task('default', ['clean'], function () {\n  gulp.start('build');\n});\n"
  },
  {
    "path": "package.json",
    "content": "{\n  \"name\": \"blur_admin\",\n  \"version\": \"1.3.1\",\n  \"devDependencies\": {\n    \"bower\": \"~1.8.4\",\n    \"browser-sync\": \"~2.18.2\",\n    \"browser-sync-spa\": \"~1.0.3\",\n    \"chalk\": \"~1.1.1\",\n    \"del\": \"~2.2.2\",\n    \"eslint-plugin-angular\": \"~0.12.0\",\n    \"estraverse\": \"~4.2.0\",\n    \"gulp\": \"~3.9.0\",\n    \"gulp-angular-filesort\": \"~1.1.1\",\n    \"gulp-angular-templatecache\": \"~2.0.0\",\n    \"gulp-autoprefixer\": \"~3.1.1\",\n    \"gulp-eslint\": \"~1.0.0\",\n    \"gulp-filter\": \"~4.0.0\",\n    \"gulp-flatten\": \"~0.3.1\",\n    \"gulp-gh-pages\": \"^0.5.4\",\n    \"gulp-inject\": \"~4.1.0\",\n    \"gulp-load-plugins\": \"~1.4.0\",\n    \"gulp-minify-css\": \"~1.2.1\",\n    \"gulp-minify-html\": \"~1.0.4\",\n    \"gulp-ng-annotate\": \"~2.0.0\",\n    \"gulp-prompt\": \"^0.2.0\",\n    \"gulp-protractor\": \"~3.0.0\",\n    \"gulp-rename\": \"^1.2.2\",\n    \"gulp-replace\": \"~0.5.4\",\n    \"gulp-rev\": \"~7.1.2\",\n    \"gulp-rev-replace\": \"~0.4.2\",\n    \"gulp-sass\": \"^4.0.1\",\n    \"gulp-shell\": \"^0.5.2\",\n    \"gulp-size\": \"~2.1.0\",\n    \"gulp-sourcemaps\": \"~1.6.0\",\n    \"gulp-uglify\": \"~2.0.0\",\n    \"gulp-useref\": \"~1.3.0\",\n    \"gulp-util\": \"~3.0.6\",\n    \"gulp-zip\": \"^3.0.2\",\n    \"http-proxy-middleware\": \"~0.17.2\",\n    \"lodash\": \"~4.17.2\",\n    \"main-bower-files\": \"~2.13.1\",\n    \"uglify-save-license\": \"~0.4.1\",\n    \"wiredep\": \"~4.0.0\",\n    \"wrench\": \"~1.5.8\"\n  },\n  \"scripts\": {\n    \"postinstall\": \"bower install\"\n  }\n}\n"
  },
  {
    "path": "preview.html",
    "content": "<p>\n  <a href=\"http://akveo.com/blur-admin/\" rel=\"nofollow\">\n    <img src=\"http://akveo.com/admin-images/blur-admin/promo_blur.jpg\">\n  </a>\n</p>\n\n<p>\n  <h2>Description</h2>\n  Latest and the most trending web design approaches were brought together in Blur admin to deliver you the best experience ever. Each color, character and image was carefully selected to make you love what you see.<br />\n  <br />\n  Extremely beautiful. Elegant. Charming. Enjoy it.<br />\n  <br />\n  Love,<br />\n  Akveo team\n</p>\n\n<p>\n  <h2>Features</h2>\n<ul>\n  <li>Responsive layout</li>\n  <li>High resolution</li>\n  <li>Bootstrap CSS Framework</li>\n  <li>Sass</li>\n  <li>Gulp build</li>\n  <li>AngularJS</li>\n  <li>Jquery</li>\n  <li>Jquery ui</li>\n  <li>WHAT YOU GUYS CONSIDER SHOULD BE HERE? PAGES AND STUFF OR ONLY FEATURES MENTIONED ABOVE?</li>\n\n</ul>\n</p>\n\n\n"
  },
  {
    "path": "src/404.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n  <meta charset=\"utf-8\">\n  <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n  <title>Blur Admin</title>\n\n  <link href='https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700,700italic,900italic,900&subset=latin,greek,greek-ext,vietnamese,cyrillic-ext,latin-ext,cyrillic' rel='stylesheet' type='text/css'>\n\n  <link rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"assets/img/favicon-16x16.png\">\n  <link rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"assets/img/favicon-32x32.png\">\n  <link rel=\"icon\" type=\"image/png\" sizes=\"96x96\" href=\"assets/img/favicon-96x96.png\">\n\n  <!-- build:css({.tmp/serve,src}) styles/404.css -->\n  <!-- inject:css -->\n  <!-- css files will be automatically insert here -->\n  <!-- endinject -->\n  <!-- endbuild -->\n</head>\n<body>\n<div class=\"page-not-found-modal\">\n  <h1>404 Error</h1>\n\n  <p>Sorry, that page doesn't exist. <a href=\"/\">Go to Home Page.</a></p>\n</div>\n</body>\n</html>"
  },
  {
    "path": "src/app/app.js",
    "content": "'use strict';\n\nangular.module('BlurAdmin', [\n  'ngAnimate',\n  'ui.bootstrap',\n  'ui.sortable',\n  'ui.router',\n  'ngTouch',\n  'toastr',\n  'smart-table',\n  \"xeditable\",\n  'ui.slimscroll',\n  'ngJsTree',\n  'angular-progress-button-styles',\n\n  'BlurAdmin.theme',\n  'BlurAdmin.pages'\n]);"
  },
  {
    "path": "src/app/pages/charts/amCharts/amCharts.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.amCharts', [])\n      .config(routeConfig).config(amChartConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('charts.amCharts', {\n          url: '/amCharts',\n          templateUrl: 'app/pages/charts/amCharts/charts.html',\n          title: 'amCharts',\n          sidebarMeta: {\n            order: 0,\n          },\n        });\n  }\n\n  function amChartConfig(baConfigProvider) {\n    var layoutColors = baConfigProvider.colors;\n    AmCharts.themes.blur = {\n\n      themeName: \"blur\",\n\n      AmChart: {\n        color: layoutColors.defaultText,\n        backgroundColor: \"#FFFFFF\"\n      },\n\n      AmCoordinateChart: {\n        colors: [layoutColors.primary, layoutColors.danger, layoutColors.warning, layoutColors.success, layoutColors.info, layoutColors.primaryDark, layoutColors.warningLight, layoutColors.successDark, layoutColors.successLight, layoutColors.primaryLight, layoutColors.warningDark]\n      },\n\n      AmStockChart: {\n        colors: [layoutColors.primary, layoutColors.danger, layoutColors.warning, layoutColors.success, layoutColors.info, layoutColors.primaryDark, layoutColors.warningLight, layoutColors.successDark, layoutColors.successLight, layoutColors.primaryLight, layoutColors.warningDark]\n      },\n\n      AmSlicedChart: {\n        colors: [layoutColors.primary, layoutColors.danger, layoutColors.warning, layoutColors.success, layoutColors.info, layoutColors.primaryDark, layoutColors.warningLight, layoutColors.successDark, layoutColors.successLight, layoutColors.primaryLight, layoutColors.warningDark],\n        labelTickColor: \"#FFFFFF\",\n        labelTickAlpha: 0.3\n      },\n\n      AmRectangularChart: {\n        zoomOutButtonColor: '#FFFFFF',\n        zoomOutButtonRollOverAlpha: 0.15,\n        zoomOutButtonImage: \"lens.png\"\n      },\n\n      AxisBase: {\n        axisColor: \"#FFFFFF\",\n        axisAlpha: 0.3,\n        gridAlpha: 0.1,\n        gridColor: \"#FFFFFF\"\n      },\n\n      ChartScrollbar: {\n        backgroundColor: \"#FFFFFF\",\n        backgroundAlpha: 0.12,\n        graphFillAlpha: 0.5,\n        graphLineAlpha: 0,\n        selectedBackgroundColor: \"#FFFFFF\",\n        selectedBackgroundAlpha: 0.4,\n        gridAlpha: 0.15\n      },\n\n      ChartCursor: {\n        cursorColor: layoutColors.primary,\n        color: \"#FFFFFF\",\n        cursorAlpha: 0.5\n      },\n\n      AmLegend: {\n        color: \"#FFFFFF\"\n      },\n\n      AmGraph: {\n        lineAlpha: 0.9\n      },\n      GaugeArrow: {\n        color: \"#FFFFFF\",\n        alpha: 0.8,\n        nailAlpha: 0,\n        innerRadius: \"40%\",\n        nailRadius: 15,\n        startWidth: 15,\n        borderAlpha: 0.8,\n        nailBorderAlpha: 0\n      },\n\n      GaugeAxis: {\n        tickColor: \"#FFFFFF\",\n        tickAlpha: 1,\n        tickLength: 15,\n        minorTickLength: 8,\n        axisThickness: 3,\n        axisColor: '#FFFFFF',\n        axisAlpha: 1,\n        bandAlpha: 0.8\n      },\n\n      TrendLine: {\n        lineColor: layoutColors.danger,\n        lineAlpha: 0.8\n      },\n\n      // ammap\n      AreasSettings: {\n        alpha: 0.8,\n        color: layoutColors.info,\n        colorSolid: layoutColors.primaryDark,\n        unlistedAreasAlpha: 0.4,\n        unlistedAreasColor: \"#FFFFFF\",\n        outlineColor: \"#FFFFFF\",\n        outlineAlpha: 0.5,\n        outlineThickness: 0.5,\n        rollOverColor: layoutColors.primary,\n        rollOverOutlineColor: \"#FFFFFF\",\n        selectedOutlineColor: \"#FFFFFF\",\n        selectedColor: \"#f15135\",\n        unlistedAreasOutlineColor: \"#FFFFFF\",\n        unlistedAreasOutlineAlpha: 0.5\n      },\n\n      LinesSettings: {\n        color: \"#FFFFFF\",\n        alpha: 0.8\n      },\n\n      ImagesSettings: {\n        alpha: 0.8,\n        labelColor: \"#FFFFFF\",\n        color: \"#FFFFFF\",\n        labelRollOverColor: layoutColors.primaryDark\n      },\n\n      ZoomControl: {\n        buttonFillAlpha: 0.8,\n        buttonIconColor: layoutColors.defaultText,\n        buttonRollOverColor: layoutColors.danger,\n        buttonFillColor: layoutColors.primaryDark,\n        buttonBorderColor: layoutColors.primaryDark,\n        buttonBorderAlpha: 0,\n        buttonCornerRadius: 0,\n        gridColor: \"#FFFFFF\",\n        gridBackgroundColor: \"#FFFFFF\",\n        buttonIconAlpha: 0.6,\n        gridAlpha: 0.6,\n        buttonSize: 20\n      },\n\n      SmallMap: {\n        mapColor: \"#000000\",\n        rectangleColor: layoutColors.danger,\n        backgroundColor: \"#FFFFFF\",\n        backgroundAlpha: 0.7,\n        borderThickness: 1,\n        borderAlpha: 0.8\n      },\n\n      // the defaults below are set using CSS syntax, you can use any existing css property\n      // if you don't use Stock chart, you can delete lines below\n      PeriodSelector: {\n        color: \"#FFFFFF\"\n      },\n\n      PeriodButton: {\n        color: \"#FFFFFF\",\n        background: \"transparent\",\n        opacity: 0.7,\n        border: \"1px solid rgba(0, 0, 0, .3)\",\n        MozBorderRadius: \"5px\",\n        borderRadius: \"5px\",\n        margin: \"1px\",\n        outline: \"none\",\n        boxSizing: \"border-box\"\n      },\n\n      PeriodButtonSelected: {\n        color: \"#FFFFFF\",\n        backgroundColor: \"#b9cdf5\",\n        border: \"1px solid rgba(0, 0, 0, .3)\",\n        MozBorderRadius: \"5px\",\n        borderRadius: \"5px\",\n        margin: \"1px\",\n        outline: \"none\",\n        opacity: 1,\n        boxSizing: \"border-box\"\n      },\n\n      PeriodInputField: {\n        color: \"#FFFFFF\",\n        background: \"transparent\",\n        border: \"1px solid rgba(0, 0, 0, .3)\",\n        outline: \"none\"\n      },\n\n      DataSetSelector: {\n        color: \"#FFFFFF\",\n        selectedBackgroundColor: \"#b9cdf5\",\n        rollOverBackgroundColor: \"#a8b0e4\"\n      },\n\n      DataSetCompareList: {\n        color: \"#FFFFFF\",\n        lineHeight: \"100%\",\n        boxSizing: \"initial\",\n        webkitBoxSizing: \"initial\",\n        border: \"1px solid rgba(0, 0, 0, .3)\"\n      },\n\n      DataSetSelect: {\n        border: \"1px solid rgba(0, 0, 0, .3)\",\n        outline: \"none\"\n      }\n\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/charts/amCharts/areaChart/AreaChartCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.amCharts')\n      .controller('AreaChartCtrl', AreaChartCtrl);\n\n  /** @ngInject */\n  function AreaChartCtrl($scope, baConfig, $element, layoutPaths) {\n    var layoutColors = baConfig.colors;\n    var id = $element[0].getAttribute('id');\n    var areaChart = AmCharts.makeChart(id, {\n      type: 'serial',\n      theme: 'blur',\n      color: layoutColors.defaultText,\n      dataProvider: [\n        {\n          lineColor: layoutColors.info,\n          date: '2012-01-01',\n          duration: 408\n        },\n        {\n          date: '2012-01-02',\n          duration: 482\n        },\n        {\n          date: '2012-01-03',\n          duration: 562\n        },\n        {\n          date: '2012-01-04',\n          duration: 379\n        },\n        {\n          lineColor: layoutColors.warning,\n          date: '2012-01-05',\n          duration: 501\n        },\n        {\n          date: '2012-01-06',\n          duration: 443\n        },\n        {\n          date: '2012-01-07',\n          duration: 405\n        },\n        {\n          date: '2012-01-08',\n          duration: 309,\n          lineColor: layoutColors.danger\n        },\n        {\n          date: '2012-01-09',\n          duration: 287\n        },\n        {\n          date: '2012-01-10',\n          duration: 485\n        },\n        {\n          date: '2012-01-11',\n          duration: 890\n        },\n        {\n          date: '2012-01-12',\n          duration: 810\n        }\n      ],\n      balloon: {\n        cornerRadius: 6,\n        horizontalPadding: 15,\n        verticalPadding: 10\n      },\n      valueAxes: [\n        {\n          duration: 'mm',\n          durationUnits: {\n            hh: 'h ',\n            mm: 'min'\n          },\n          gridAlpha: 0.5,\n          gridColor: layoutColors.border,\n        }\n      ],\n      graphs: [\n        {\n          bullet: 'square',\n          bulletBorderAlpha: 1,\n          bulletBorderThickness: 1,\n          fillAlphas: 0.5,\n          fillColorsField: 'lineColor',\n          legendValueText: '[[value]]',\n          lineColorField: 'lineColor',\n          title: 'duration',\n          valueField: 'duration'\n        }\n      ],\n\n      chartCursor: {\n        categoryBalloonDateFormat: 'YYYY MMM DD',\n        cursorAlpha: 0,\n        fullWidth: true\n      },\n      dataDateFormat: 'YYYY-MM-DD',\n      categoryField: 'date',\n      categoryAxis: {\n        dateFormats: [\n          {\n            period: 'DD',\n            format: 'DD'\n          },\n          {\n            period: 'WW',\n            format: 'MMM DD'\n          },\n          {\n            period: 'MM',\n            format: 'MMM'\n          },\n          {\n            period: 'YYYY',\n            format: 'YYYY'\n          }\n        ],\n        parseDates: true,\n        autoGridCount: false,\n        gridCount: 50,\n        gridAlpha: 0.5,\n        gridColor: layoutColors.border,\n      },\n      export: {\n        enabled: true\n      },\n      pathToImages: layoutPaths.images.amChart\n    });\n\n    areaChart.addListener('dataUpdated', zoomAreaChart);\n\n    function zoomAreaChart() {\n      areaChart.zoomToDates(new Date(2012, 0, 3), new Date(2012, 0, 11));\n    }\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/charts/amCharts/areaChart/areaChart.html",
    "content": "<div id=\"areaChart\" class=\"admin-chart\" ng-controller=\"AreaChartCtrl\"></div>"
  },
  {
    "path": "src/app/pages/charts/amCharts/barChart/BarChartCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.amCharts')\n      .controller('BarChartCtrl', BarChartCtrl);\n\n  /** @ngInject */\n  function BarChartCtrl($scope, baConfig, $element, layoutPaths) {\n    var layoutColors = baConfig.colors;\n    var id = $element[0].getAttribute('id');\n    var barChart = AmCharts.makeChart(id, {\n      type: 'serial',\n      theme: 'blur',\n      color: layoutColors.defaultText,\n      dataProvider: [\n        {\n          country: 'USA',\n          visits: 3025,\n          color: layoutColors.primary\n        },\n        {\n          country: 'China',\n          visits: 1882,\n          color: layoutColors.danger\n\n        },\n        {\n          country: 'Japan',\n          visits: 1809,\n          color: layoutColors.info\n        },\n        {\n          country: 'Germany',\n          visits: 1322,\n          color: layoutColors.success\n        },\n        {\n          country: 'UK',\n          visits: 1122,\n          color: layoutColors.warning\n        },\n        {\n          country: 'France',\n          visits: 1114,\n          color: layoutColors.primaryLight\n        }\n      ],\n      valueAxes: [\n        {\n          axisAlpha: 0,\n          position: 'left',\n          title: 'Visitors from country',\n          gridAlpha: 0.5,\n          gridColor: layoutColors.border,\n        }\n      ],\n      startDuration: 1,\n      graphs: [\n        {\n          balloonText: '<b>[[category]]: [[value]]</b>',\n          fillColorsField: 'color',\n          fillAlphas: 0.7,\n          lineAlpha: 0.2,\n          type: 'column',\n          valueField: 'visits'\n        }\n      ],\n      chartCursor: {\n        categoryBalloonEnabled: false,\n        cursorAlpha: 0,\n        zoomable: false\n      },\n      categoryField: 'country',\n      categoryAxis: {\n        gridPosition: 'start',\n        labelRotation: 45,\n        gridAlpha: 0.5,\n        gridColor: layoutColors.border,\n      },\n      export: {\n        enabled: true\n      },\n      creditsPosition: 'top-right',\n      pathToImages: layoutPaths.images.amChart\n    });\n  }\n})();\n"
  },
  {
    "path": "src/app/pages/charts/amCharts/barChart/barChart.html",
    "content": "<div id=\"barChart\" class=\"admin-chart\" ng-controller=\"BarChartCtrl\"></div>"
  },
  {
    "path": "src/app/pages/charts/amCharts/charts.html",
    "content": "<div class=\"widgets\">\n\n  <div class=\"row\">\n    <div class=\"col-lg-4 col-md-6\"\n         ba-panel\n         ba-panel-title=\"Bar Chart\"\n         ba-panel-class=\"with-scroll\">\n      <div ng-include=\"'app/pages/charts/amCharts/barChart/barChart.html'\"></div>\n    </div>\n    <div class=\"col-lg-4 col-md-6\"\n         ba-panel\n         ba-panel-title=\"Area Chart\"\n         ba-panel-class=\"with-scroll\">\n      <div ng-include=\"'app/pages/charts/amCharts/areaChart/areaChart.html'\"></div>\n    </div>\n    <div class=\"col-lg-4 col-md-12\"\n         ba-panel\n         ba-panel-title=\"Line Chart\"\n         ba-panel-class=\"with-scroll\">\n      <div ng-include=\"'app/pages/charts/amCharts/lineChart/lineChart.html'\"></div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-6\"\n         ba-panel\n         ba-panel-title=\"Pie Chart\"\n         ba-panel-class=\"with-scroll\">\n      <div ng-include=\"'app/pages/charts/amCharts/pieChart/pieChart.html'\"></div>\n    </div>\n    <div class=\"col-md-6\"\n         ba-panel\n         ba-panel-title=\"Funnel Chart\"\n         ba-panel-class=\"with-scroll\">\n      <div ng-include=\"'app/pages/charts/amCharts/funnelChart/funnelChart.html'\"></div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-12\"\n         ba-panel\n         ba-panel-title=\"Combined bullet/column and line graphs with multiple value axes\"\n         ba-panel-class=\"with-scroll\">\n      <div ng-include=\"'app/pages/charts/amCharts/combinedChart/combinedChart.html'\"></div>\n    </div>\n    <!--<div class=\"col-md-6\">-->\n    <!--<div ba-panel ba-panel-title=\"Gantt chart\" ba-panel-class=\"with-scroll\">-->\n    <!--<div ng-include=\"'app/pages/charts/amCharts/ganttChart/ganttChart.html'\"></div>-->\n    <!--</div>-->\n    <!--</div>-->\n  </div>\n\n</div>"
  },
  {
    "path": "src/app/pages/charts/amCharts/combinedChart/combinedChart.html",
    "content": "<div id=\"zoomAxisChart\" class=\"admin-chart\" ng-controller=\"combinedChartCtrl\"></div>\n"
  },
  {
    "path": "src/app/pages/charts/amCharts/combinedChart/combinedChartCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 22.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.amCharts')\n    .controller('combinedChartCtrl', combinedChartCtrl);\n\n  /** @ngInject */\n  function combinedChartCtrl($element, baConfig, layoutPaths) {\n    var layoutColors = baConfig.colors;\n    var id = $element[0].getAttribute('id');\n    var chart = AmCharts.makeChart(id, {\n      \"type\": \"serial\",\n      \"theme\": \"none\",\n      \"color\": layoutColors.defaultText,\n      \"dataDateFormat\": \"YYYY-MM-DD\",\n      \"precision\": 2,\n      \"valueAxes\": [{\n        color: layoutColors.defaultText,\n        axisColor: layoutColors.defaultText,\n        gridColor: layoutColors.defaultText,\n        \"id\": \"v1\",\n        \"title\": \"Sales\",\n        \"position\": \"left\",\n        \"autoGridCount\": false,\n        \"labelFunction\": function(value) {\n          return \"$\" + Math.round(value) + \"M\";\n        }\n      }, {\n        color: layoutColors.defaultText,\n        axisColor: layoutColors.defaultText,\n        gridColor: layoutColors.defaultText,\n        \"id\": \"v2\",\n        \"title\": \"Market Days\",\n        \"gridAlpha\": 0,\n        \"position\": \"right\",\n        \"autoGridCount\": false\n      }],\n      \"graphs\": [{\n        \"id\": \"g3\",\n        color: layoutColors.defaultText,\n        \"valueAxis\": \"v1\",\n        \"lineColor\": layoutColors.primaryLight,\n        \"fillColors\": layoutColors.primaryLight,\n        \"fillAlphas\": 0.8,\n        \"lineAlpha\": 0.8,\n        \"type\": \"column\",\n        \"title\": \"Actual Sales\",\n        \"valueField\": \"sales2\",\n        \"clustered\": false,\n        \"columnWidth\": 0.5,\n        \"lineColorField\" : layoutColors.defaultText,\n        \"legendValueText\": \"$[[value]]M\",\n        \"balloonText\": \"[[title]]<br/><b style='font-size: 130%'>$[[value]]M</b>\"\n      }, {\n        \"id\": \"g4\",\n        \"valueAxis\": \"v1\",\n        color: layoutColors.defaultText,\n        \"lineColor\": layoutColors.primary,\n        \"fillColors\": layoutColors.primary,\n        \"fillAlphas\": 0.9,\n        \"lineAlpha\": 0.9,\n        \"type\": \"column\",\n        \"title\": \"Target Sales\",\n        \"valueField\": \"sales1\",\n        \"clustered\": false,\n        \"columnWidth\": 0.3,\n        \"legendValueText\": \"$[[value]]M\",\n        \"balloonText\": \"[[title]]<br/><b style='font-size: 130%'>$[[value]]M</b>\"\n      }, {\n        \"id\": \"g1\",\n        \"valueAxis\": \"v2\",\n        \"bullet\": \"round\",\n        \"bulletBorderAlpha\": 1,\n        \"bulletColor\": layoutColors.defaultText,\n        color: layoutColors.defaultText,\n        \"bulletSize\": 5,\n        \"hideBulletsCount\": 50,\n        \"lineThickness\": 2,\n        \"lineColor\": layoutColors.danger,\n        \"type\": \"smoothedLine\",\n        \"title\": \"Market Days\",\n        \"useLineColorForBulletBorder\": true,\n        \"valueField\": \"market1\",\n        \"balloonText\": \"[[title]]<br/><b style='font-size: 130%'>[[value]]</b>\"\n      }, {\n        \"id\": \"g2\",\n        \"valueAxis\": \"v2\",\n        color: layoutColors.defaultText,\n        \"bullet\": \"round\",\n        \"bulletBorderAlpha\": 1,\n        \"bulletColor\": layoutColors.defaultText,\n        \"bulletSize\": 5,\n        \"hideBulletsCount\": 50,\n        \"lineThickness\": 2,\n        \"lineColor\": layoutColors.warning,\n        \"type\": \"smoothedLine\",\n        \"dashLength\": 5,\n        \"title\": \"Market Days ALL\",\n        \"useLineColorForBulletBorder\": true,\n        \"valueField\": \"market2\",\n        \"balloonText\": \"[[title]]<br/><b style='font-size: 130%'>[[value]]</b>\"\n      }],\n      \"chartScrollbar\": {\n        \"graph\": \"g1\",\n        \"oppositeAxis\": false,\n        \"offset\": 30,\n        gridAlpha: 0,\n        color: layoutColors.defaultText,\n        scrollbarHeight: 50,\n        backgroundAlpha: 0,\n        selectedBackgroundAlpha: 0.05,\n        selectedBackgroundColor: layoutColors.defaultText,\n        graphFillAlpha: 0,\n        autoGridCount: true,\n        selectedGraphFillAlpha: 0,\n        graphLineAlpha: 0.2,\n        selectedGraphLineColor: layoutColors.defaultText,\n        selectedGraphLineAlpha: 1\n      },\n      \"chartCursor\": {\n        \"pan\": true,\n        \"cursorColor\" : layoutColors.danger,\n        \"valueLineEnabled\": true,\n        \"valueLineBalloonEnabled\": true,\n        \"cursorAlpha\": 0,\n        \"valueLineAlpha\": 0.2\n      },\n      \"categoryField\": \"date\",\n      \"categoryAxis\": {\n        \"axisColor\": layoutColors.defaultText,\n        \"color\": layoutColors.defaultText,\n        \"gridColor\": layoutColors.defaultText,\n        \"parseDates\": true,\n        \"dashLength\": 1,\n        \"minorGridEnabled\": true\n      },\n      \"legend\": {\n        \"useGraphSettings\": true,\n        \"position\": \"top\",\n        \"color\": layoutColors.defaultText\n      },\n      \"balloon\": {\n        \"borderThickness\": 1,\n        \"shadowAlpha\": 0\n      },\n      \"export\": {\n        \"enabled\": true\n      },\n      \"dataProvider\": [{\n        \"date\": \"2013-01-16\",\n        \"market1\": 71,\n        \"market2\": 75,\n        \"sales1\": 5,\n        \"sales2\": 8\n      }, {\n        \"date\": \"2013-01-17\",\n        \"market1\": 74,\n        \"market2\": 78,\n        \"sales1\": 4,\n        \"sales2\": 6\n      }, {\n        \"date\": \"2013-01-18\",\n        \"market1\": 78,\n        \"market2\": 88,\n        \"sales1\": 5,\n        \"sales2\": 2\n      }, {\n        \"date\": \"2013-01-19\",\n        \"market1\": 85,\n        \"market2\": 89,\n        \"sales1\": 8,\n        \"sales2\": 9\n      }, {\n        \"date\": \"2013-01-20\",\n        \"market1\": 82,\n        \"market2\": 89,\n        \"sales1\": 9,\n        \"sales2\": 6\n      }, {\n        \"date\": \"2013-01-21\",\n        \"market1\": 83,\n        \"market2\": 85,\n        \"sales1\": 3,\n        \"sales2\": 5\n      }, {\n        \"date\": \"2013-01-22\",\n        \"market1\": 88,\n        \"market2\": 92,\n        \"sales1\": 5,\n        \"sales2\": 7\n      }, {\n        \"date\": \"2013-01-23\",\n        \"market1\": 85,\n        \"market2\": 90,\n        \"sales1\": 7,\n        \"sales2\": 6\n      }, {\n        \"date\": \"2013-01-24\",\n        \"market1\": 85,\n        \"market2\": 91,\n        \"sales1\": 9,\n        \"sales2\": 5\n      }, {\n        \"date\": \"2013-01-25\",\n        \"market1\": 80,\n        \"market2\": 84,\n        \"sales1\": 5,\n        \"sales2\": 8\n      }, {\n        \"date\": \"2013-01-26\",\n        \"market1\": 87,\n        \"market2\": 92,\n        \"sales1\": 4,\n        \"sales2\": 8\n      }, {\n        \"date\": \"2013-01-27\",\n        \"market1\": 84,\n        \"market2\": 87,\n        \"sales1\": 3,\n        \"sales2\": 4\n      }, {\n        \"date\": \"2013-01-28\",\n        \"market1\": 83,\n        \"market2\": 88,\n        \"sales1\": 5,\n        \"sales2\": 7\n      }, {\n        \"date\": \"2013-01-29\",\n        \"market1\": 84,\n        \"market2\": 87,\n        \"sales1\": 5,\n        \"sales2\": 8\n      }, {\n        \"date\": \"2013-01-30\",\n        \"market1\": 81,\n        \"market2\": 85,\n        \"sales1\": 4,\n        \"sales2\": 7\n      }],\n      pathToImages: layoutPaths.images.amChart\n    });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/charts/amCharts/funnelChart/FunnelChartCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.amCharts')\n      .controller('FunnelChartCtrl', FunnelChartCtrl);\n\n  /** @ngInject */\n  function FunnelChartCtrl($scope, $element, layoutPaths, baConfig) {\n    var layoutColors = baConfig.colors;\n    var id = $element[0].getAttribute('id');\n    var funnelChart = AmCharts.makeChart(id, {\n      type: 'funnel',\n      theme: 'blur',\n      color: layoutColors.defaultText,\n      labelTickColor: layoutColors.borderDark,\n      dataProvider: [\n        {\n          title: 'Website visits',\n          value: 300\n        },\n        {\n          title: 'Downloads',\n          value: 123\n        },\n        {\n          title: 'Requested prices',\n          value: 98\n        },\n        {\n          title: 'Contaced',\n          value: 72\n        },\n        {\n          title: 'Purchased',\n          value: 35\n        },\n        {\n          title: 'Asked for support',\n          value: 25\n        },\n        {\n          title: 'Purchased more',\n          value: 18\n        }\n      ],\n      titleField: 'title',\n      marginRight: 160,\n      marginLeft: 15,\n      labelPosition: 'right',\n      funnelAlpha: 0.9,\n      valueField: 'value',\n      startX: 0,\n      alpha: 0.8,\n      neckWidth: '0%',\n      startAlpha: 0,\n      outlineThickness: 1,\n      neckHeight: '0%',\n      balloonText: '[[title]]:<b>[[value]]</b>',\n      export: {\n        enabled: true\n      },\n      creditsPosition: 'bottom-left',\n      pathToImages: layoutPaths\n    });\n  }\n})();\n"
  },
  {
    "path": "src/app/pages/charts/amCharts/funnelChart/funnelChart.html",
    "content": "<div id=\"funnelChart\" class=\"admin-chart\" ng-controller=\"FunnelChartCtrl\"></div>"
  },
  {
    "path": "src/app/pages/charts/amCharts/ganttChart/ganttChart.html",
    "content": "<div id=\"gnattChart\" class=\"admin-chart\" ng-controller=\"ganttChartCtrl\"></div>"
  },
  {
    "path": "src/app/pages/charts/amCharts/ganttChart/ganttChartCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 22.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.amCharts')\n    .controller('ganttChartCtrl', ganttChartCtrl);\n\n  /** @ngInject */\n  function ganttChartCtrl($element) {\n    var id = $element[0].getAttribute('id');\n    var chart = AmCharts.makeChart( id, {\n      \"type\": \"gantt\",\n      \"theme\": \"light\",\n      \"marginRight\": 70,\n      \"period\": \"hh\",\n      \"dataDateFormat\":\"YYYY-MM-DD\",\n      \"balloonDateFormat\": \"JJ:NN\",\n      \"columnWidth\": 0.5,\n      \"valueAxis\": {\n        \"type\": \"date\",\n        \"minimum\": 7,\n        \"maximum\": 31\n      },\n      \"brightnessStep\": 10,\n      \"graph\": {\n        \"fillAlphas\": 1,\n        \"balloonText\": \"<b>[[task]]</b>: [[open]] [[value]]\"\n      },\n      \"rotate\": true,\n      \"categoryField\": \"category\",\n      \"segmentsField\": \"segments\",\n      \"colorField\": \"color\",\n      \"startDate\": \"2015-01-01\",\n      \"startField\": \"start\",\n      \"endField\": \"end\",\n      \"durationField\": \"duration\",\n      \"dataProvider\": [\n        {\n        \"category\": \"John\",\n        \"segments\": [ {\n          \"start\": 7,\n          \"duration\": 2,\n          \"color\": \"#46615e\",\n          \"task\": \"Task #1\"\n        }, {\n          \"duration\": 2,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"duration\": 2,\n          \"color\": \"#8dc49f\",\n          \"task\": \"Task #3\"\n        } ]\n      }, {\n        \"category\": \"Smith\",\n        \"segments\": [ {\n          \"start\": 10,\n          \"duration\": 2,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"duration\": 1,\n          \"color\": \"#8dc49f\",\n          \"task\": \"Task #3\"\n        }, {\n          \"duration\": 4,\n          \"color\": \"#46615e\",\n          \"task\": \"Task #1\"\n        } ]\n      }, {\n        \"category\": \"Ben\",\n        \"segments\": [ {\n          \"start\": 12,\n          \"duration\": 2,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"start\": 16,\n          \"duration\": 2,\n          \"color\": \"#FFE4C4\",\n          \"task\": \"Task #4\"\n        } ]\n      }, {\n        \"category\": \"Mike\",\n        \"segments\": [ {\n          \"start\": 9,\n          \"duration\": 6,\n          \"color\": \"#46615e\",\n          \"task\": \"Task #1\"\n        }, {\n          \"duration\": 4,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        } ]\n      }, {\n        \"category\": \"Lenny\",\n        \"segments\": [ {\n          \"start\": 8,\n          \"duration\": 1,\n          \"color\": \"#8dc49f\",\n          \"task\": \"Task #3\"\n        }, {\n          \"duration\": 4,\n          \"color\": \"#46615e\",\n          \"task\": \"Task #1\"\n        } ]\n      }, {\n        \"category\": \"Scott\",\n        \"segments\": [ {\n          \"start\": 15,\n          \"duration\": 3,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        } ]\n      }, {\n        \"category\": \"Julia\",\n        \"segments\": [ {\n          \"start\": 9,\n          \"duration\": 2,\n          \"color\": \"#46615e\",\n          \"task\": \"Task #1\"\n        }, {\n          \"duration\": 1,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"duration\": 8,\n          \"color\": \"#8dc49f\",\n          \"task\": \"Task #3\"\n        } ]\n      }, {\n        \"category\": \"Bob\",\n        \"segments\": [ {\n          \"start\": 9,\n          \"duration\": 8,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"duration\": 7,\n          \"color\": \"#8dc49f\",\n          \"task\": \"Task #3\"\n        } ]\n      }, {\n        \"category\": \"Kendra\",\n        \"segments\": [ {\n          \"start\": 11,\n          \"duration\": 8,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"start\": 16,\n          \"duration\": 2,\n          \"color\": \"#FFE4C4\",\n          \"task\": \"Task #4\"\n        } ]\n      }, {\n        \"category\": \"Tom\",\n        \"segments\": [ {\n          \"start\": 9,\n          \"duration\": 4,\n          \"color\": \"#46615e\",\n          \"task\": \"Task #1\"\n        }, {\n          \"duration\": 3,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"duration\": 5,\n          \"color\": \"#8dc49f\",\n          \"task\": \"Task #3\"\n        } ]\n      }, {\n        \"category\": \"Kyle\",\n        \"segments\": [ {\n          \"start\": 6,\n          \"duration\": 3,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        } ]\n      }, {\n        \"category\": \"Anita\",\n        \"segments\": [ {\n          \"start\": 12,\n          \"duration\": 2,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"start\": 16,\n          \"duration\": 2,\n          \"color\": \"#FFE4C4\",\n          \"task\": \"Task #4\"\n        } ]\n      }, {\n        \"category\": \"Jack\",\n        \"segments\": [ {\n          \"start\": 8,\n          \"duration\": 10,\n          \"color\": \"#46615e\",\n          \"task\": \"Task #1\"\n        }, {\n          \"duration\": 2,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        } ]\n      }, {\n        \"category\": \"Kim\",\n        \"segments\": [ {\n          \"start\": 12,\n          \"duration\": 2,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"duration\": 3,\n          \"color\": \"#8dc49f\",\n          \"task\": \"Task #3\"\n        } ]\n      }, {\n        \"category\": \"Aaron\",\n        \"segments\": [ {\n          \"start\": 18,\n          \"duration\": 2,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"duration\": 2,\n          \"color\": \"#FFE4C4\",\n          \"task\": \"Task #4\"\n        } ]\n      }, {\n        \"category\": \"Alan\",\n        \"segments\": [ {\n          \"start\": 17,\n          \"duration\": 2,\n          \"color\": \"#46615e\",\n          \"task\": \"Task #1\"\n        }, {\n          \"duration\": 2,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"duration\": 2,\n          \"color\": \"#8dc49f\",\n          \"task\": \"Task #3\"\n        } ]\n      }, {\n        \"category\": \"Ruth\",\n        \"segments\": [ {\n          \"start\": 13,\n          \"duration\": 2,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"duration\": 1,\n          \"color\": \"#8dc49f\",\n          \"task\": \"Task #3\"\n        }, {\n          \"duration\": 4,\n          \"color\": \"#46615e\",\n          \"task\": \"Task #1\"\n        } ]\n      }, {\n        \"category\": \"Simon\",\n        \"segments\": [ {\n          \"start\": 10,\n          \"duration\": 3,\n          \"color\": \"#727d6f\",\n          \"task\": \"Task #2\"\n        }, {\n          \"start\": 17,\n          \"duration\": 4,\n          \"color\": \"#FFE4C4\",\n          \"task\": \"Task #4\"\n        } ]\n      } ],\n      \"valueScrollbar\": {\n        \"autoGridCount\":true\n      },\n      \"chartCursor\": {\n        \"cursorColor\":\"#55bb76\",\n        \"valueBalloonsEnabled\": false,\n        \"cursorAlpha\": 0,\n        \"valueLineAlpha\":0.5,\n        \"valueLineBalloonEnabled\": true,\n        \"valueLineEnabled\": true,\n        \"zoomable\":false,\n        \"valueZoomable\":true\n      },\n      \"export\": {\n        \"enabled\": true\n      }\n    });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/charts/amCharts/lineChart/LineChartCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.amCharts')\n      .controller('LineChartCtrl', LineChartCtrl);\n\n  /** @ngInject */\n  function LineChartCtrl($scope, baConfig, $element, layoutPaths) {\n    var layoutColors = baConfig.colors;\n    var id = $element[0].getAttribute('id');\n    var lineChart = AmCharts.makeChart(id, {\n      type: 'serial',\n      theme: 'blur',\n      color: layoutColors.defaultText,\n      marginTop: 0,\n      marginRight: 15,\n      dataProvider: [\n        {\n          year: '1990',\n          value: -0.17\n        },\n        {\n          year: '1991',\n          value: -0.254\n        },\n        {\n          year: '1992',\n          value: 0.019\n        },\n        {\n          year: '1993',\n          value: -0.063\n        },\n        {\n          year: '1994',\n          value: 0.005\n        },\n        {\n          year: '1995',\n          value: 0.077\n        },\n        {\n          year: '1996',\n          value: 0.12\n        },\n        {\n          year: '1997',\n          value: 0.011\n        },\n        {\n          year: '1998',\n          value: 0.177\n        },\n        {\n          year: '1999',\n          value: -0.021\n        },\n        {\n          year: '2000',\n          value: -0.037\n        },\n        {\n          year: '2001',\n          value: 0.03\n        },\n        {\n          year: '2002',\n          value: 0.179\n        },\n        {\n          year: '2003',\n          value: 0.2\n        },\n        {\n          year: '2004',\n          value: 0.180\n        },\n        {\n          year: '2005',\n          value: 0.21\n        }\n      ],\n      valueAxes: [\n        {\n          axisAlpha: 0,\n          position: 'left',\n          gridAlpha: 0.5,\n          gridColor: layoutColors.border,\n        }\n      ],\n      graphs: [\n        {\n          id: 'g1',\n          balloonText: '[[value]]',\n          bullet: 'round',\n          bulletSize: 8,\n          lineColor: layoutColors.danger,\n          lineThickness: 1,\n          negativeLineColor: layoutColors.warning,\n          type: 'smoothedLine',\n          valueField: 'value'\n        }\n      ],\n      chartScrollbar: {\n        graph: 'g1',\n        gridAlpha: 0,\n        color: layoutColors.defaultText,\n        scrollbarHeight: 55,\n        backgroundAlpha: 0,\n        selectedBackgroundAlpha: 0.05,\n        selectedBackgroundColor: layoutColors.defaultText,\n        graphFillAlpha: 0,\n        autoGridCount: true,\n        selectedGraphFillAlpha: 0,\n        graphLineAlpha: 0.2,\n        selectedGraphLineColor: layoutColors.defaultText,\n        selectedGraphLineAlpha: 1\n      },\n      chartCursor: {\n        categoryBalloonDateFormat: 'YYYY',\n        cursorAlpha: 0,\n        valueLineEnabled: true,\n        valueLineBalloonEnabled: true,\n        valueLineAlpha: 0.5,\n        fullWidth: true\n      },\n      dataDateFormat: 'YYYY',\n      categoryField: 'year',\n      categoryAxis: {\n        minPeriod: 'YYYY',\n        parseDates: true,\n        minorGridAlpha: 0.1,\n        minorGridEnabled: true,\n        gridAlpha: 0.5,\n        gridColor: layoutColors.border,\n      },\n      export: {\n        enabled: true\n      },\n      creditsPosition: 'bottom-right',\n      pathToImages: layoutPaths.images.amChart\n    });\n\n    lineChart.addListener('rendered', zoomChart);\n    if (lineChart.zoomChart) {\n      lineChart.zoomChart();\n    }\n\n    function zoomChart() {\n      lineChart.zoomToIndexes(Math.round(lineChart.dataProvider.length * 0.4), Math.round(lineChart.dataProvider.length * 0.55));\n    }\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/charts/amCharts/lineChart/lineChart.html",
    "content": "<div id=\"lineChart\" class=\"admin-chart\" ng-controller=\"LineChartCtrl\"></div>"
  },
  {
    "path": "src/app/pages/charts/amCharts/pieChart/PieChartCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.amCharts')\n      .controller('PieChartCtrl', PieChartCtrl);\n\n  /** @ngInject */\n  function PieChartCtrl($element, layoutPaths, baConfig) {\n    var layoutColors = baConfig.colors;\n    var id = $element[0].getAttribute('id');\n    var pieChart = AmCharts.makeChart(id, {\n      type: 'pie',\n      startDuration: 0,\n      theme: 'blur',\n      addClassNames: true,\n      color: layoutColors.defaultText,\n      labelTickColor: layoutColors.borderDark,\n      legend: {\n        position: 'right',\n        marginRight: 100,\n        autoMargins: false,\n      },\n      innerRadius: '40%',\n      defs: {\n        filter: [\n          {\n            id: 'shadow',\n            width: '200%',\n            height: '200%',\n            feOffset: {\n              result: 'offOut',\n              in: 'SourceAlpha',\n              dx: 0,\n              dy: 0\n            },\n            feGaussianBlur: {\n              result: 'blurOut',\n              in: 'offOut',\n              stdDeviation: 5\n            },\n            feBlend: {\n              in: 'SourceGraphic',\n              in2: 'blurOut',\n              mode: 'normal'\n            }\n          }\n        ]\n      },\n      dataProvider: [\n        {\n          country: 'Lithuania',\n          litres: 501.9\n        },\n        {\n          country: 'Czech Republic',\n          litres: 301.9\n        },\n        {\n          country: 'Ireland',\n          litres: 201.1\n        },\n        {\n          country: 'Germany',\n          litres: 165.8\n        },\n        {\n          country: 'Australia',\n          litres: 139.9\n        },\n        {\n          country: 'Austria',\n          litres: 128.3\n        },\n        {\n          country: 'UK',\n          litres: 99\n        },\n        {\n          country: 'Belgium',\n          litres: 60\n        }\n      ],\n      valueField: 'litres',\n      titleField: 'country',\n      export: {\n        enabled: true\n      },\n      creditsPosition: 'bottom-left',\n\n      autoMargins: false,\n      marginTop: 10,\n      alpha: 0.8,\n      marginBottom: 0,\n      marginLeft: 0,\n      marginRight: 0,\n      pullOutRadius: 0,\n      pathToImages: layoutPaths.images.amChart,\n      responsive: {\n        enabled: true,\n        rules: [\n          // at 900px wide, we hide legend\n          {\n            maxWidth: 900,\n            overrides: {\n              legend: {\n                enabled: false\n              }\n            }\n          },\n\n          // at 200 px we hide value axis labels altogether\n          {\n            maxWidth: 200,\n            overrides: {\n              valueAxes: {\n                labelsEnabled: false\n              },\n              marginTop: 30,\n              marginBottom: 30,\n              marginLeft: 30,\n              marginRight: 30\n            }\n          }\n        ]\n      }\n    });\n\n    pieChart.addListener('init', handleInit);\n\n    pieChart.addListener('rollOverSlice', function (e) {\n      handleRollOver(e);\n    });\n\n    function handleInit() {\n      pieChart.legend.addListener('rollOverItem', handleRollOver);\n    }\n\n    function handleRollOver(e) {\n      var wedge = e.dataItem.wedge.node;\n      wedge.parentNode.appendChild(wedge);\n    }\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/charts/amCharts/pieChart/pieChart.html",
    "content": "<div id=\"pieChart\" class=\"admin-chart\" ng-controller=\"PieChartCtrl\"></div>\n"
  },
  {
    "path": "src/app/pages/charts/chartJs/chartJs.html",
    "content": "<div class=\"row\">\n    <div class=\"col-md-4\" ng-controller=\"chartJs1DCtrl\">\n        <div ba-panel ba-panel-title=\"Pie\" ba-panel-class=\"with-scroll \">\n            <div class=\"chartjs-canvas-holder-first-row\">\n                <canvas id=\"pie\" class=\"chart chart-pie\"\n                       chart-options=\"options\" chart-data=\"data\" chart-labels=\"labels\"\n                        chart-click=\"changeData\">\n                </canvas>\n            </div>\n        </div>\n    </div>\n    <div class=\"col-md-4\" ng-controller=\"chartJs1DCtrl\">\n        <div ba-panel ba-panel-title=\"Doughnut\" ba-panel-class=\"with-scroll \">\n            <div class=\"chartjs-canvas-holder-first-row\">\n                <canvas id=\"doughnut\" chart-options=\"options\" class=\"chart chart-doughnut\"\n                        chart-data=\"data\" chart-labels=\"labels\" chart-click=\"changeData\">\n                </canvas>\n            </div>\n        </div>\n    </div>\n    <div class=\"col-md-4\" ng-controller=\"chartJs1DCtrl\">\n        <div ba-panel ba-panel-title=\"Polar\" ba-panel-class=\"with-scroll \">\n            <div class=\"chartjs-canvas-holder-first-row\">\n                <canvas id=\"polar-area\" class=\"chart chart-polar-area\"\n                        chart-data=\"data\" chart-options=\"options\" chart-labels=\"labels\"\n                        chart-click=\"changeData\">\n                </canvas>\n            </div>\n        </div>\n    </div>\n</div>\n\n<div class=\"row \">\n    <div class=\"col-md-6\" ng-controller=\"chartJsWaveCtrl\">\n        <div ba-panel ba-panel-title=\"Animated Radar\" ba-panel-class=\"col-eq-height\">\n            <div class=\"chartjs-canvas-holder-second-row\">\n                <canvas id=\"waveLine\" class=\"chart chart-radar\" chart-data=\"[data]\" chart-labels=\"labels\"></canvas>\n            </div>\n\n        </div>\n    </div>\n    <div class=\"col-md-6\" ng-controller=\"chartJsWaveCtrl\">\n        <div ba-panel ba-panel-title=\"Animated Bars\" ba-panel-class=\"col-eq-height\">\n            <div class=\"chartjs-canvas-holder-second-row\">\n                <canvas id=\"waveBars\" class=\"chart chart-bar\" chart-data=\"[data]\" chart-labels=\"labels\"></canvas>\n            </div>\n        </div>\n    </div>\n</div>\n\n\n<div class=\"row \">\n    <div class=\"col-lg-4 col-md-6\" ng-controller=\"chartJs2DCtrl\">\n        <div ba-panel ba-panel-title=\"Radar\" ba-panel-class=\"with-scroll \">\n            <div class=\"chartjs-canvas-holder-third-row\">\n                <canvas id=\"radar\" class=\"chart chart-radar\" chart-series=\"series\" chart-data=\"data\"\n                        chart-labels=\"labels\" chart-click=\"changeData\">\n                </canvas>\n            </div>\n        </div>\n    </div>\n    <div class=\"col-lg-4 col-md-6\" ng-controller=\"chartJs2DCtrl\">\n        <div ba-panel ba-panel-title=\"Line\" ba-panel-class=\"with-scroll \">\n            <div class=\"chartjs-canvas-holder-third-row\">\n                <canvas id=\"line\" class=\"chart chart-line\" chart-data=\"data\" chart-labels=\"labels\"\n                        chart-series=\"series\" chart-click=\"changeData\"></canvas>\n            </div>\n        </div>\n    </div>\n    <div class=\"col-lg-4 col-md-12\" ng-controller=\"chartJs2DCtrl\">\n        <div ba-panel ba-panel-title=\"Bars\" ba-panel-class=\"with-scroll \">\n            <div class=\"chartjs-canvas-holder-third-row\">\n                <canvas id=\"bar\" class=\"chart chart-bar\"\n                        chart-data=\"data\" chart-labels=\"labels\" chart-series=\"series\" chart-click=\"changeData\" chart-update=\"updateC\">\n                </canvas>\n            </div>\n        </div>\n    </div>\n</div>\n\n\n"
  },
  {
    "path": "src/app/pages/charts/chartJs/chartJs.module.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/16/15\n */\n(function () {\n    'use strict';\n\n    angular.module('BlurAdmin.pages.charts.chartJs', [])\n        .config(routeConfig).config(chartJsConfig);\n\n    /** @ngInject */\n    function routeConfig($stateProvider) {\n        $stateProvider\n            .state('charts.chartJs', {\n                url: '/chartJs',\n                templateUrl: 'app/pages/charts/chartJs/chartJs.html',\n                title: 'Chart.js',\n                sidebarMeta: {\n                    order: 200\n                }\n            });\n    }\n\n    function chartJsConfig(ChartJsProvider, baConfigProvider) {\n        var layoutColors = baConfigProvider.colors;\n        // Configure all charts\n        ChartJsProvider.setOptions({\n            chartColors: [\n                layoutColors.primary, layoutColors.danger, layoutColors.warning, layoutColors.success, layoutColors.info, layoutColors.default, layoutColors.primaryDark, layoutColors.successDark, layoutColors.warningLight, layoutColors.successLight, layoutColors.primaryLight],\n            responsive: true,\n            maintainAspectRatio: false,\n            animation: {\n                duration: 2500\n            },\n            scale: {\n                gridLines: {\n                    color: layoutColors.border\n                },\n                scaleLabel: {\n                    fontColor: layoutColors.defaultText\n                },\n                ticks: {\n                    fontColor: layoutColors.defaultText,\n                    showLabelBackdrop: false\n                }\n            }\n        });\n        // Configure all line charts\n        ChartJsProvider.setOptions('Line', {\n            datasetFill: false\n        });\n        // Configure all radar charts\n        ChartJsProvider.setOptions('radar', {\n            scale: {\n                pointLabels: {\n                    fontColor: layoutColors.defaultText\n                },\n                ticks: {\n                    maxTicksLimit: 5,\n                    display: false\n                }\n            }\n        });\n        // Configure all bar charts\n        ChartJsProvider.setOptions('bar', {\n            tooltips: {\n                enabled: false\n            }\n        });\n    }\n\n})();"
  },
  {
    "path": "src/app/pages/charts/chartJs/chartJs1DCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/16/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.chartJs')\n    .controller('chartJs1DCtrl', chartJs1DCtrl);\n\n  /** @ngInject */\n  function chartJs1DCtrl($scope, baConfig) {\n    var layoutColors = baConfig.colors;\n\n    $scope.labels =[\"Sleeping\", \"Designing\", \"Coding\", \"Cycling\"];\n    $scope.data = [20, 40, 5, 35];\n    $scope.options = {\n      elements: {\n        arc: {\n          borderWidth: 0\n        }\n      },\n      legend: {\n        display: true,\n        position: 'bottom',\n        labels: {\n          fontColor: layoutColors.defaultText\n        }\n      }\n    };\n\n    $scope.changeData = function () {\n      $scope.data = shuffle($scope.data);\n    };\n\n    function shuffle(o){\n      for(var j, x, i = o.length; i; j = Math.floor(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x){}\n      return o;\n    }\n  }\n\n})();"
  },
  {
    "path": "src/app/pages/charts/chartJs/chartJs2DCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/16/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.chartJs')\n    .controller('chartJs2DCtrl', chartJs2DCtrl);\n\n  /** @ngInject */\n  function chartJs2DCtrl($scope) {\n    $scope.labels =[\"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\"];\n    $scope.data = [\n      [65, 59, 90, 81, 56],\n      [28, 48, 40, 19, 88]\n    ];\n    $scope.series = ['Product A', 'Product B'];\n\n\n    $scope.changeData = function () {\n      $scope.data[0] = shuffle($scope.data[0]);\n      $scope.data[1] = shuffle($scope.data[1]);\n    };\n\n    function shuffle(o){\n      for(var j, x, i = o.length; i; j = Math.floor(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x){}\n      return o;\n    }\n  }\n\n})();"
  },
  {
    "path": "src/app/pages/charts/chartJs/chartJsWaveCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/16/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.chartJs')\n    .controller('chartJsWaveCtrl', chartJsWaveCtrl);\n\n  /** @ngInject */\n  function chartJsWaveCtrl($scope, $interval, stopableInterval) {\n    $scope.labels =[\"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n    $scope.data = [1, 9, 3, 4, 5, 6, 7, 8, 2].map(function(e){\n      return Math.sin(e) * 25 +25;\n    });\n\n    stopableInterval.start($interval, function(){\n      var tempArray = [];\n      var lastElement = $scope.data[$scope.data.length-1];\n      for(var i = $scope.data.length-1; i > 0; i--){\n       tempArray[i] = $scope.data[i-1];\n      }\n      tempArray[0] = lastElement;\n      $scope.data = tempArray;\n    }, 400)\n  }\n\n})();"
  },
  {
    "path": "src/app/pages/charts/chartist/chartist.html",
    "content": "<section ng-controller=\"chartistCtrl\" class=\"chartist\">\n  <div class=\"row\">\n    <div class=\"col-md-6 \">\n      <div ba-panel ba-panel-title=\"Lines\" ba-panel-class=\"with-scroll \">\n        <h5>Simple line chart</h5>\n        <div id=\"line-chart\" class=\"ct-chart\"></div>\n        <h5>Line chart with area</h5>\n        <div id=\"area-chart\" class=\"ct-chart\"></div>\n        <h5>Bi-polar line chart with area only</h5>\n        <div id=\"bi-chart\" class=\"ct-chart\"></div>\n      </div>\n    </div>\n\n    <div class=\"col-md-6 \">\n      <div ba-panel ba-panel-title=\"Bars\" ba-panel-class=\"with-scroll \">\n        <h5>Simple bar chart</h5>\n        <div id=\"simple-bar\" class=\"ct-chart\"></div>\n        <h5>Multi-line labels bar chart</h5>\n        <div id=\"multi-bar\" class=\"ct-chart\"></div>\n        <h5>Stacked bar chart</h5>\n        <div id=\"stacked-bar\" class=\"ct-chart stacked-bar\"></div>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-12\">\n      <div ba-panel ba-panel-title=\"Pies & Donuts\" ba-panel-class=\"with-scroll \">\n        <div class=\"row\">\n          <div class=\"col-md-12 col-lg-4\"><h5>Simple Pie</h5>\n            <div id=\"simple-pie\" class=\"ct-chart\"></div>\n          </div>\n          <div class=\"col-md-12 col-lg-4\"><h5>Pie with labels</h5>\n            <div id=\"label-pie\" class=\"ct-chart\"></div>\n          </div>\n          <div class=\"col-md-12 col-lg-4\"><h5>Donut</h5>\n            <div id=\"donut\" class=\"ct-chart\"></div>\n          </div>\n        </div>\n      </div>\n    </div>\n  </div>\n</section>"
  },
  {
    "path": "src/app/pages/charts/chartist/chartist.module.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/17/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.chartist', [])\n    .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('charts.chartist', {\n          url: '/chartist',\n          templateUrl: 'app/pages/charts/chartist/chartist.html',\n          title: 'Chartist',\n          sidebarMeta: {\n            order: 100,\n          },\n        });\n  }\n\n})();"
  },
  {
    "path": "src/app/pages/charts/chartist/chartistCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/16/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.chartist')\n    .controller('chartistCtrl', chartistCtrl);\n\n  /** @ngInject */\n  function chartistCtrl($scope, $timeout, baConfig) {\n\n    $scope.simpleLineOptions = {\n      color: baConfig.colors.defaultText,\n      fullWidth: true,\n      height: \"300px\",\n      chartPadding: {\n        right: 40\n      }\n    };\n\n    $scope.simpleLineData = {\n      labels: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'],\n      series: [\n        [20, 20, 12, 45, 50],\n        [10, 45, 30, 14, 12],\n        [34, 12, 12, 40, 50],\n        [10, 43, 25, 22, 16],\n        [3, 6, 30, 33, 43]\n      ]\n    };\n\n    $scope.areaLineData = {\n      labels: [1, 2, 3, 4, 5, 6, 7, 8],\n      series: [\n        [5, 9, 7, 8, 5, 3, 5, 4]\n      ]\n    };\n\n    $scope.areaLineOptions = {\n      fullWidth: true,\n      height: \"300px\",\n      low: 0,\n      showArea: true\n    };\n\n    $scope.biLineData = {\n      labels: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],\n      series: [\n        [1, 2, 3, 1, -2, 0, 1],\n        [-2, -1, -2, -1, -2.5, -1, -2],\n        [0, 0, 0, 1, 2, 2.5, 2],\n        [2.5, 2, 1, 0.5, 1, 0.5, -1]\n      ]\n    };\n\n    $scope.biLineOptions = {\n      height: \"300px\",\n      high: 3,\n      low: -3,\n      showArea: true,\n      showLine: false,\n      showPoint: false,\n      fullWidth: true,\n      axisX: {\n        showGrid: false\n      }\n    };\n\n    $scope.simpleBarData = {\n      labels: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n      series: [\n        [15, 24, 43, 27, 5, 10, 23, 44, 68, 50, 26, 8],\n        [13, 22, 49, 22, 4, 6, 24, 46, 57, 48, 22, 4]\n      ]\n    };\n\n    $scope.simpleBarOptions = {\n      fullWidth: true,\n      height: \"300px\"\n    };\n\n    $scope.multiBarData = {\n      labels: ['Quarter 1', 'Quarter 2', 'Quarter 3', 'Quarter 4'],\n      series: [\n        [5, 4, 3, 7],\n        [3, 2, 9, 5],\n        [1, 5, 8, 4],\n        [2, 3, 4, 6],\n        [4, 1, 2, 1]\n      ]\n    };\n\n    $scope.multiBarOptions = {\n      fullWidth: true,\n      height: \"300px\",\n      stackBars: true,\n      axisX: {\n        labelInterpolationFnc: function (value) {\n          return value.split(/\\s+/).map(function (word) {\n            return word[0];\n          }).join('');\n        }\n      },\n      axisY: {\n        offset: 20\n      }\n    };\n\n    $scope.multiBarResponsive = [\n      ['screen and (min-width: 400px)', {\n        reverseData: true,\n        horizontalBars: true,\n        axisX: {\n          labelInterpolationFnc: Chartist.noop\n        },\n        axisY: {\n          offset: 60\n        }\n      }],\n      ['screen and (min-width: 700px)', {\n        stackBars: false,\n        reverseData: false,\n        horizontalBars: false,\n        seriesBarDistance: 15\n      }]\n    ];\n\n    $scope.stackedBarData = {\n      labels: ['Quarter 1', 'Quarter 2', 'Quarter 3', 'Quarter 4'],\n      series: [\n        [800000, 1200000, 1400000, 1300000],\n        [200000, 400000, 500000, 300000],\n        [100000, 200000, 400000, 600000]\n      ]\n    };\n\n    $scope.stackedBarOptions = {\n      fullWidth: true,\n      height: \"300px\",\n      stackBars: true,\n      axisY: {\n        labelInterpolationFnc: function (value) {\n          return (value / 1000) + 'k';\n        }\n      }\n    };\n\n    $scope.simplePieData = {\n      series: [5, 3, 4]\n    };\n\n    $scope.simplePieOptions = {\n      fullWidth: true,\n      height: \"300px\",\n      weight: \"300px\",\n      labelInterpolationFnc: function (value) {\n        return Math.round(value / 12 * 100) + '%';\n      }\n    };\n\n    $scope.labelsPieData = {\n      labels: ['Bananas', 'Apples', 'Grapes'],\n      series: [20, 15, 40]\n    };\n\n    $scope.labelsPieOptions = {\n      fullWidth: true,\n      height: \"300px\",\n      weight: \"300px\",\n      labelDirection: 'explode',\n      labelInterpolationFnc: function (value) {\n        return value[0];\n      }\n    };\n\n    $scope.simpleDonutData = {\n      labels: ['Bananas', 'Apples', 'Grapes'],\n      series: [20, 15, 40]\n    };\n\n    $scope.simpleDonutOptions = {\n      fullWidth: true,\n      donut: true,\n      height: \"300px\",\n      weight: \"300px\",\n      labelDirection: 'explode',\n      labelInterpolationFnc: function (value) {\n        return value[0];\n      }\n    };\n\n    $scope.donutResponsive = getResponsive(5, 40);\n\n    $scope.pieResponsive = getResponsive(20, 80);\n\n    function getResponsive(padding, offset){\n      return [\n        ['screen and (min-width: 1550px)', {\n          chartPadding: padding,\n          labelOffset: offset,\n          labelDirection: 'explode',\n          labelInterpolationFnc: function (value) {\n            return value;\n          }\n        }],\n        ['screen and (max-width: 1200px)', {\n          chartPadding: padding,\n          labelOffset: offset,\n          labelDirection: 'explode',\n          labelInterpolationFnc: function (value) {\n            return value;\n          }\n        }],\n        ['screen and (max-width: 600px)', {\n          chartPadding: 0,\n          labelOffset: 0,\n          labelInterpolationFnc: function (value) {\n            return value[0];\n          }\n        }]\n      ];\n    }\n\n    $timeout(function(){\n      new Chartist.Line('#line-chart', $scope.simpleLineData, $scope.simpleLineOptions);\n      new Chartist.Line('#area-chart', $scope.areaLineData, $scope.areaLineOptions);\n      new Chartist.Line('#bi-chart', $scope.biLineData, $scope.biLineOptions);\n\n      new Chartist.Bar('#simple-bar', $scope.simpleBarData, $scope.simpleBarOptions);\n      new Chartist.Bar('#multi-bar', $scope.multiBarData, $scope.multiBarOptions, $scope.multiBarResponsive);\n      new Chartist.Bar('#stacked-bar', $scope.stackedBarData, $scope.stackedBarOptions);\n\n      new Chartist.Pie('#simple-pie', $scope.simplePieData, $scope.simplePieOptions, $scope.pieResponsive);\n      new Chartist.Pie('#label-pie', $scope.labelsPieData, $scope.labelsPieOptions);\n      new Chartist.Pie('#donut', $scope.simpleDonutData, $scope.simpleDonutOptions, $scope.donutResponsive);\n    });\n  }\n})();"
  },
  {
    "path": "src/app/pages/charts/charts.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts', [\n      'BlurAdmin.pages.charts.amCharts',\n      'BlurAdmin.pages.charts.chartJs',\n      'BlurAdmin.pages.charts.chartist',\n      'BlurAdmin.pages.charts.morris'\n  ])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('charts', {\n          url: '/charts',\n          abstract: true,\n          template: '<div ui-view  autoscroll=\"true\" autoscroll-body-top></div>',\n          title: 'Charts',\n          sidebarMeta: {\n            icon: 'ion-stats-bars',\n            order: 150,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/charts/morris/morris.html",
    "content": "<section ng-controller=\"morrisCtrl\">\n  <div class=\"row\">\n    <div class=\"col-md-12\">\n      <div ba-panel ba-panel-title=\"Line Chart\" ba-panel-class=\"with-scroll\">\n        <div\n            line-chart\n            line-data='lineData'\n            line-xkey='y'\n            line-ykeys='[\"a\", \"b\"]'\n            line-labels='[\"Serie A\", \"Serie B\"]'\n            line-colors='colors'>\n        </div>\n      </div>\n    </div>\n  </div>\n  <div class=\"row\">\n    <div class=\"col-md-4\">\n      <div ba-panel ba-panel-title=\"Donut\" ba-panel-class=\"with-scroll\">\n        <div\n            donut-chart\n            donut-data='donutData'\n            donut-colors='colors'\n\n            donut-formatter='\"currency\"'>\n        </div>\n      </div>\n    </div>\n    <div class=\"col-md-8\">\n      <div ba-panel ba-panel-title=\"Bar Chart\" ba-panel-class=\"with-scroll \">\n        <div\n            bar-chart\n            bar-data='barData'\n            bar-x='y'\n            bar-y='[\"a\", \"b\"]'\n            bar-labels='[\"Series A\", \"Series B\"]'\n            bar-colors='colors'>\n        </div>\n      </div>\n    </div>\n  </div>\n  <div class=\"row\">\n    <div class=\"col-md-12\">\n      <div ba-panel ba-panel-title=\"Area Chart\" ba-panel-class=\"with-scroll\">\n        <div\n            area-chart\n            area-data='areaData'\n            area-xkey='y'\n            area-ykeys='[\"a\", \"b\"]' %\n            area-labels='[\"Serie A\", \"Serie B\"]'\n            line-colors='colors'>\n        </div>\n      </div>\n    </div>\n  </div>\n</section>"
  },
  {
    "path": "src/app/pages/charts/morris/morris.module.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/18/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.morris', [])\n    .config(routeConfig).config(function(baConfigProvider){\n      var layoutColors = baConfigProvider.colors;\n      Morris.Donut.prototype.defaults.backgroundColor = 'transparent';\n      Morris.Donut.prototype.defaults.labelColor = layoutColors.defaultText;\n      Morris.Grid.prototype.gridDefaults.gridLineColor = layoutColors.borderDark;\n      Morris.Grid.prototype.gridDefaults.gridTextColor = layoutColors.defaultText;\n    });\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('charts.morris', {\n          url: '/morris',\n          templateUrl: 'app/pages/charts/morris/morris.html',\n          title: 'Morris',\n          sidebarMeta: {\n            order: 300,\n          }\n        });\n  }\n\n})();"
  },
  {
    "path": "src/app/pages/charts/morris/morrisCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/16/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.charts.morris')\n    .controller('morrisCtrl', morrisCtrl);\n\n  /** @ngInject */\n  function morrisCtrl($scope, $window, baConfig) {\n    var layoutColors = baConfig.colors;\n    $scope.colors = [layoutColors.primary, layoutColors.warning, layoutColors.danger, layoutColors.info, layoutColors.success, layoutColors.primaryDark];\n    $scope.lineData = [\n      {y: \"2006\", a: 100, b: 90},\n      {y: \"2007\", a: 75, b: 65},\n      {y: \"2008\", a: 50, b: 40},\n      {y: \"2009\", a: 75, b: 65},\n      {y: \"2010\", a: 50, b: 40},\n      {y: \"2011\", a: 75, b: 65},\n      {y: \"2012\", a: 100, b: 90}\n    ];\n    $scope.areaData = [\n      {y: \"2006\", a: 100, b: 90},\n      {y: \"2007\", a: 75, b: 65},\n      {y: \"2008\", a: 50, b: 40},\n      {y: \"2009\", a: 75, b: 65},\n      {y: \"2010\", a: 50, b: 40},\n      {y: \"2011\", a: 75, b: 65},\n      {y: \"2012\", a: 100, b: 90}\n    ];\n    $scope.barData = [\n      {y: \"2006\", a: 100, b: 90},\n      {y: \"2007\", a: 75, b: 65},\n      {y: \"2008\", a: 50, b: 40},\n      {y: \"2009\", a: 75, b: 65},\n      {y: \"2010\", a: 50, b: 40},\n      {y: \"2011\", a: 75, b: 65},\n      {y: \"2012\", a: 100, b: 90}\n    ];\n    $scope.donutData = [\n      {label: \"Download Sales\", value: 12},\n      {label: \"In-Store Sales\", value: 30},\n      {label: \"Mail-Order Sales\", value: 20}\n    ];\n\n    angular.element($window).bind('resize', function () {\n      //$window.Morris.Grid.prototype.redraw();\n    });\n  }\n\n})();"
  },
  {
    "path": "src/app/pages/components/components.module.js",
    "content": "/**\n * @author k.danovsky\n * created on 15.01.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.components', [\n    'BlurAdmin.pages.components.mail',\n    'BlurAdmin.pages.components.timeline',\n    'BlurAdmin.pages.components.tree',\n  ])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('components', {\n          url: '/components',\n          template : '<ui-view  autoscroll=\"true\" autoscroll-body-top></ui-view>',\n          abstract: true,\n          title: 'Components',\n          sidebarMeta: {\n            icon: 'ion-gear-a',\n            order: 100,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/components/mail/MailTabCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.components.mail')\n      .controller('MailTabCtrl', MailTabCtrl);\n\n  /** @ngInject */\n  function MailTabCtrl(composeModal, mailMessages) {\n\n    var vm = this;\n    vm.navigationCollapsed = true;\n    vm.showCompose = function(subject, to , text){\n      composeModal.open({\n        subject : subject,\n        to: to,\n        text: text\n      })\n    };\n\n    vm.tabs = mailMessages.getTabs();\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/components/mail/composeBox/compose.html",
    "content": "<div class=\"compose-header\">\n  <span>\n    New message\n  </span>\n  <span class=\"header-controls\">\n    <i class=\"ion-minus-round\"></i>\n    <i class=\"ion-arrow-resize\"></i>\n    <i ng-click=\"$dismiss()\" class=\"ion-close-round\"></i>\n  </span>\n</div>\n<div>\n  <input type=\"text\" class=\"form-control compose-input default-color\"  placeholder=\"To\" ng-model=\"boxCtrl.to\">\n  <input type=\"text\" class=\"form-control compose-input default-color\"  placeholder=\"Subject\" ng-model=\"boxCtrl.subject\">\n  <div class=\"compose-container\">\n    <text-angular-toolbar ta-toolbar-class=\"toolbarMain\" name=\"toolbarMain\" ta-toolbar=\"[['h1','h2','h3','bold','italics', 'underline', 'justifyLeft', 'justifyCenter', 'justifyRight', 'justifyFull']]\"></text-angular-toolbar>\n    <text-angular name=\"htmlcontent\" ta-target-toolbars='toolbarMain,toolbarFooter' ng-model=\"boxCtrl.text\"></text-angular>\n  </div>\n</div>\n<div class=\"compose-footer clearfix\">\n  <button type=\"button\" ng-click=\"$dismiss()\" class=\"btn btn-send\">Send</button>\n  <text-angular-toolbar ta-toolbar-class=\"toolbarFooter\" name=\"toolbarFooter\" ta-toolbar=\"[['insertLink', 'insertImage', 'html', 'quote','insertVideo']]\"></text-angular-toolbar>\n  <div class=\"footer-controls\">\n    <i class=\"footer-control-first compose-footer-icon ion-arrow-down-b\"></i>\n    <i ng-click=\"$dismiss()\" class=\"compose-footer-icon ion-android-delete\"></i>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/components/mail/composeBox/composeBoxCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 24/12/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.components.mail')\n    .controller('composeBoxCtrl', composeBoxCtrl);\n\n  /** @ngInject */\n  function composeBoxCtrl(subject, to, text) {\n    var vm = this;\n    vm.subject = subject;\n    vm.to = to;\n    vm.text = text;\n  }\n})();"
  },
  {
    "path": "src/app/pages/components/mail/composeBox/composeModal.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/24/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.components.mail')\n    .service('composeModal', composeModal);\n\n  /** @ngInject */\n  function composeModal($uibModal) {\n      this.open = function(options){\n        return $uibModal.open({\n          animation: false,\n          templateUrl: 'app/pages/components/mail/composeBox/compose.html',\n          controller: 'composeBoxCtrl',\n          controllerAs: 'boxCtrl',\n          size: 'compose',\n          resolve: {\n            subject: function () {\n              return options.subject;\n            },\n            to: function () {\n              return options.to;\n            },\n            text: function () {\n              return options.text;\n            }\n          }\n        });\n      }\n\n  }\n\n})();"
  },
  {
    "path": "src/app/pages/components/mail/detail/MailDetailCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 28.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.components.mail')\n    .controller('MailDetailCtrl', MailDetailCtrl);\n\n  /** @ngInject */\n  function MailDetailCtrl($stateParams, mailMessages) {\n    var vm = this;\n    vm.mail = mailMessages.getMessageById($stateParams.id);\n    vm.label = $stateParams.label;\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/components/mail/detail/mailDetail.html",
    "content": "<div class=\"message-container\" ng-class=\"{'expanded': tabCtrl.navigationCollapsed}\">\n  <div class=\"message\">\n    <div class=\"row\">\n      <div class=\"toggle-navigation-container detail-page\">\n        <a href class=\"collapse-navigation-link ion-navicon\"\n           ng-click=\"tabCtrl.navigationCollapsed=!tabCtrl.navigationCollapsed\"></a>\n      </div>\n      <button ui-sref=\"components.mail.label({label : detailCtrl.label})\"  type=\"button\" class=\"back-button btn btn-default btn-with-icon\"><i\n          class=\"ion-chevron-left\"></i>Back\n      </button>\n    </div>\n    <div class=\"person-info row\">\n      <div class=\"col-lg-4 col-md-12  no-padding\">\n        <img ng-src=\"{{detailCtrl.mail.name.split(' ')[0] | profilePicture}}\" class=\"human-picture\">\n\n        <div class=\"name\">\n          <h2 class=\"name-h\">{{detailCtrl.mail.name.split(' ')[0]}}</h2>\n\n          <h2 class=\"name-h second-name\">{{detailCtrl.mail.name.split(' ')[1]}}</h2>\n\n          <div>\n            <span class=\"mail-tag tag label {{detailCtrl.mail.tag}}\">{{detailCtrl.mail.tag}}</span>\n          </div>\n        </div>\n      </div>\n      <div class=\"col-lg-4 col-md-6 col-xs-12 no-padding\">\n        <div class=\"contact-info phone-email\">\n          <div>\n            <i class=\"ion-iphone\"></i>\n            <span class=\"phone\">777-777-7777</span>\n          </div>\n          <div>\n            <i class=\"ion-email\"></i>\n            <span class=\"email\">{{detailCtrl.mail.email}}</span>\n          </div>\n        </div>\n      </div>\n\n      <div class=\"col-lg-4 col-md-6 col-xs-12 no-padding\">\n        <div class=\"contact-info position-address\">\n          <div>\n            <span class=\"position\">{{detailCtrl.mail.position}}</span>\n          </div>\n          <div>\n            <span class=\"address\">12 Nezavisimosti st. Vilnius, Lithuania</span>\n          </div>\n        </div>\n      </div>\n    </div>\n    <div class=\"row\">\n    </div>\n    <div class=\"line\"></div>\n    <div class=\"message-details\">\n      <span class=\"subject\">{{detailCtrl.mail.subject}} </span>\n      <span class=\"date\">• {{detailCtrl.mail.date | date : 'h:mm a MMMM d '}}</span>\n    </div>\n    <div class=\"line\"></div>\n    <div ng-bind-html=\"detailCtrl.mail.body\" class=\"message-body\">\n\n    </div>\n    <div class=\"line\"></div>\n    <div class=\"attachment\" ng-show=\"detailCtrl.mail.attachment\">\n      <span class=\"file-links\">1 Attachment - <a href>View</a> | <a href>Download</a></span>\n      <div>\n        <i class=\"file-icon ion-document\"></i>\n        <span class=\"file-name\">{{detailCtrl.mail.attachment}}</span>\n      </div>\n    </div>\n    <div class=\"line\" ng-show=\"detailCtrl.mail.attachment\"></div>\n    <div class=\"answer-container\">\n      <button type=\"button\" class=\"btn btn-with-icon\" ng-click=\"tabCtrl.showCompose(detailCtrl.mail.subject,detailCtrl.mail.email,'')\"><i class=\"ion-reply\"></i>Reply</button>\n      <button type=\"button\" class=\"btn btn-with-icon\" ng-click=\"tabCtrl.showCompose(detailCtrl.mail.subject,'',detailCtrl.mail.body)\"><i class=\"ion-forward\"></i>Forward</button>\n      <button type=\"button\" class=\"btn btn-with-icon\"><i class=\"ion-printer\"></i>Print</button>\n      <button type=\"button\" class=\"btn btn-with-icon\"><i class=\"ion-android-remove-circle\"></i>Spam</button>\n      <button type=\"button\" class=\"btn btn-with-icon\"><i class=\"ion-android-delete\"></i>Delete</button>\n    </div>\n\n  </div>\n  <div ng-show=\"!detailCtrl.mail\">\n    <h5 ng-class=\"text-center\">Nothing to show</h5>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/components/mail/list/MailListCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 28.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.components.mail')\n    .controller('MailListCtrl', MailListCtrl);\n\n  /** @ngInject */\n  function MailListCtrl($stateParams,  mailMessages) {\n    var vm = this;\n    vm.messages = mailMessages.getMessagesByLabel($stateParams.label);\n    vm.label = $stateParams.label;\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/components/mail/list/mailList.html",
    "content": "<div class=\"side-message-navigation\" ng-class=\"{'expanded': tabCtrl.navigationCollapsed}\">\n  <div class=\"mail-messages-control side-message-navigation-item\">\n    <div class=\"toggle-navigation-container\">\n      <a href class=\"collapse-navigation-link ion-navicon\"\n         ng-click=\"tabCtrl.navigationCollapsed=!tabCtrl.navigationCollapsed\"></a>\n    </div>\n    <label class=\"checkbox-inline custom-checkbox nowrap\">\n      <input type=\"checkbox\" id=\"inlineCheckbox01\" value=\"option1\">\n      <span class=\"select-all-label\">Select All</span>\n    </label>\n    <button type=\"button\" class=\"btn  btn-icon refresh-button\"><i class=\"ion-refresh\"></i></button>\n    <div class=\"btn-group\" uib-dropdown>\n      <button type=\"button\" class=\"btn more-button\" uib-dropdown-toggle>\n        More <span class=\"caret\"></span>\n      </button>\n      <ul uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n  <div class=\"messages\">\n    <table>\n      <tr ng-repeat=\"m in listCtrl.messages track by m.id | orderBy:'-date'\"\n          class=\"side-message-navigation-item little-human shineHover {{m.tag}}\">\n        <td class=\"check-td\">\n          <div class=\"mail-checkbox\">\n            <label class=\"checkbox-inline custom-checkbox nowrap\">\n              <input type=\"checkbox\">\n              <span></span>\n            </label>\n          </div>\n        </td>\n        <td  class=\"photo-td\" ui-sref=\"components.mail.detail({id: m.id, label: listCtrl.label})\"><img ng-src=\"{{m.name.split(' ')[0] | profilePicture}}\" class=\"little-human-picture\"></td>\n        <td  ui-sref=\"components.mail.detail({id: m.id, label: listCtrl.label})\">\n          <div class=\"name-container\">\n            <div><span class=\"name\">{{m.name}}</span></div>\n            <div><span class=\"tag label label-primary {{m.tag}}\">{{m.tag}}</span></div>\n          </div>\n        </td>\n        <td  ui-sref=\"components.mail.detail({id: m.id, label: listCtrl.label})\">\n          <div class=\"additional-info\">\n            <span class=\"subject\"> {{m.subject}}</span>\n          </div>\n        </td>\n        <td  ui-sref=\"components.mail.detail({id: m.id, label: listCtrl.label})\">\n          <div class=\"mail-body-part\">{{m.body | plainText}}</div>\n        </td>\n        <td class=\"date\">\n          <span>{{m.date | date : 'MMM d HH:mm'}}</span>\n        </td>\n      </tr>\n    </table>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/components/mail/mail.html",
    "content": "<div class=\"row mail-client-container transparent\">\n  <div class=\"col-md-12\">\n    <div ba-panel ba-panel-class=\"xmedium-panel mail-panel\">\n      <div class=\"letter-layout\">\n        <div class=\"mail-navigation-container\" ng-class=\"{'expanded' : !tabCtrl.navigationCollapsed}\">\n          <div class=\"text-center\">\n            <button type=\"button\" class=\"btn btn-default compose-button\" ng-click=\"tabCtrl.showCompose('','','')\">\n              Compose\n            </button>\n          </div>\n          <div ng-repeat=\"t in tabCtrl.tabs\" ui-sref-active=\"active\" class=\"mail-navigation\"\n               ui-sref=\"components.mail.label({label: t.label})\" ng-click=\"selectTab(t.label)\">\n            {{t.name}}<span class=\"new-mails\" ng-show=\"t.newMails\">{{t.newMails}}</span>\n          </div>\n          <div class=\"labels\">\n            <div class=\"labels-title\">\n\n            </div>\n            <div class=\"labels-container\">\n              <div class=\"label-item\">\n                <span class=\"tag label work\">Work</span>\n              </div>\n              <div class=\"label-item\">\n                <span class=\"tag label family\">Family</span>\n              </div>\n              <div class=\"label-item\">\n                <span class=\"tag label friend\">Friend</span>\n              </div>\n              <div class=\"label-item\">\n                <span class=\"tag label study\">Study</span>\n              </div>\n            </div>\n          </div>\n          <div class=\"add-label-container\">\n            <i class=\"ion-plus-round\"></i><span class=\"label-input-stub\">Add new label</span>\n          </div>\n        </div>\n        <ui-view></ui-view>\n      </div>\n    </div>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/components/mail/mail.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.components.mail', [])\n    .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider,$urlRouterProvider) {\n    $stateProvider\n        .state('components.mail', {\n          url: '/mail',\n          abstract: true,\n          templateUrl: 'app/pages/components/mail/mail.html',\n          controller: \"MailTabCtrl\",\n          controllerAs: \"tabCtrl\",\n          title: 'Mail',\n          sidebarMeta: {\n            order: 0,\n          },\n        }).state('components.mail.label', {\n          url: '/:label',\n          templateUrl: 'app/pages/components/mail/list/mailList.html',\n          title: 'Mail',\n          controller: \"MailListCtrl\",\n          controllerAs: \"listCtrl\"\n        }).state('components.mail.detail', {\n          url: '/:label/:id',\n          templateUrl: 'app/pages/components/mail/detail/mailDetail.html',\n          title: 'Mail',\n          controller: \"MailDetailCtrl\",\n          controllerAs: \"detailCtrl\"\n        });\n    $urlRouterProvider.when('/components/mail','/components/mail/inbox');\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/components/mail/mailMessages.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/29/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.components.mail')\n    .service('mailMessages', mailMessages);\n\n  /** @ngInject */\n  function mailMessages($sce) {\n    var messages = [\n      {\n        \"id\": \"4563faass\",\n        \"name\": \"Nasta Linnie\",\n        \"subject\": \"Great text\",\n        \"date\": \"2015-08-28T07:57:09\",\n        \"body\": $sce.trustAsHtml(\"<p>Hey John, </p><p>Check out this cool text.</p>\"),\n        \"pic\": \"img/Nasta.png\",\n        \"email\": \"petraramsey@mail.com\",\n        \"attachment\": \"poem.txt\",\n        \"position\": \"Great Employee\",\n        \"tag\": \"friend\",\n        \"labels\": ['inbox']\n      },\n      {\n        \"id\": \"4563fdfvd\",\n        \"name\": \"Nasta Linnie\",\n        \"subject\": \"Lores ipsum\",\n        \"date\": \"2015-11-19T03:30:45\",\n        \"important\": false,\n        \"body\": $sce.trustAsHtml(\"<p>Hey John, </p><br><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris ex mauris, ultrices vel lectus quis, scelerisque hendrerit ipsum. Suspendisse ullamcorper turpis neque, eget dapibus magna placerat ac. Suspendisse rhoncus ligula ac mi tempus varius ut sed lacus. Sed et commodo nulla, et placerat leo. Nam rhoncus vulputate sem non pharetra. Praesent fringilla massa in laoreet convallis. Aliquam lobortis dui a congue facilisis. Aenean dapibus semper semper. Quisque aliquam, nibh dapibus interdum condimentum, ex velit tempor tortor, at vestibulum magna leo quis leo. Morbi pulvinar varius erat ac rutrum. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; In hac habitasse platea dictumst.</p>\" +\n          \"<br><p>Cras rhoncus quam ipsum, vel dignissim nisl egestas sed. Aliquam erat volutpat. Integer eu nisl elit. Donec malesuada diam vitae tellus luctus tincidunt. Donec tempus blandit neque, rutrum egestas ipsum sagittis tempor. Curabitur volutpat ligula enim, nec vehicula purus molestie at. Sed a facilisis enim, nec molestie magna. Donec in augue non est viverra dapibus vel tempus risus. Nam porttitor purus sit amet hendrerit ullamcorper. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.</p>\"),\n        \"pic\": \"img/Nasta.png\",\n        \"email\": \"petraramsey@mail.com\",\n        \"position\": \"Great Employee\",\n        \"tag\": \"study\",\n        \"labels\": ['inbox']\n      },\n      {\n        \"id\": \"4563zxcss\",\n        \"name\": \"Nasta Linnie\",\n        \"subject\": \"Lores ipsum\",\n        \"date\": \"2015-10-19T03:30:45\",\n        \"important\": false,\n        \"body\": $sce.trustAsHtml(\"<p>Hey Nasta, </p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit</p>\"),\n        \"pic\": \"img/Nasta.png\",\n        \"email\": \"petraramsey@mail.com\",\n        \"position\": \"Great Employee\",\n        \"tag\": \"work\",\n        \"labels\": ['sent', 'important']\n      },\n      {\n        \"id\": \"8955sddf\",\n        \"name\": \"Nick Cat\",\n        \"subject\": \"New Design\",\n        \"date\": \"2015-05-05T12:59:45\",\n        \"body\": $sce.trustAsHtml(\"<p>Hey John, Consectetur adipiscing elit</p><br>\" +\n          \"<p>Cras rhoncus quam ipsum, vel dignissim nisl egestas sed. Aliquam erat volutpat. Integer eu nisl elit. Donec malesuada diam vitae tellus luctus tincidunt. Donec tempus blandit neque, rutrum egestas ipsum sagittis tempor. Curabitur volutpat ligula enim, nec vehicula purus molestie at. Sed a facilisis enim, nec molestie magna. Donec in augue non est viverra dapibus vel tempus risus. Nam porttitor purus sit amet hendrerit ullamcorper. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.</p>\"),\n        \"pic\": \"img/Nick.png\",\n        \"email\": \"barlowshort@mail.com\",\n        \"position\": \"Graphical designer\",\n        \"attachment\": \"design.psd\",\n        \"tag\": \"work\",\n        \"labels\": ['inbox']\n      },\n      {\n        \"id\": \"8955sdfcc\",\n        \"name\": \"Nick Cat\",\n        \"subject\": \"Gift card\",\n        \"date\": \"2015-07-18T10:19:01\",\n        \"body\": $sce.trustAsHtml(\"<p>Hey John, </p><br><p>Consectetur adipiscing elit, Lorem ipsum dolor sit amet</p>\"),\n        \"pic\": \"img/Nick.png\",\n        \"email\": \"barlowshort@mail.com\",\n        \"position\": \"Graphical designer\",\n        \"tag\": \"study\",\n        \"labels\": ['inbox']\n      },\n      {\n        \"id\": \"8955asewf\",\n        \"name\": \"Nick Cat\",\n        \"subject\": \"Some news\",\n        \"date\": \"2015-09-23T03:04:10\",\n        \"body\": $sce.trustAsHtml(\"<p>Hey John, </p><br><p>Integer eu nisl elit. Donec malesuada diam vitae tellus luctus tincidunt. Donec tempus blandit neque, rutrum egestas ipsum sagittis tempor. Curabitur volutpat ligula enim, nec vehicula purus molestie at. Sed a facilisis enim, nec molestie magna. Donec in augue non est viverra dapibus vel tempus risus. Nam porttitor purus sit amet hendrerit ullamcorper. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.</p>\"),\n        \"pic\": \"img/Nick.png\",\n        \"email\": \"barlowshort@mail.com\",\n        \"position\": \"Graphical designer\",\n        \"tag\": \"work\",\n        \"labels\": ['inbox', 'important']\n      },\n      {\n        \"id\": \"2334uudsa\",\n        \"name\": \"Kostya Danovsky\",\n        \"subject\": \"Street Art\",\n        \"date\": \"2015-11-22T10:05:09\",\n        \"body\": $sce.trustAsHtml(\"<p>Hey John, </p><p>Aliquam eu facilisis eros, quis varius est.</p>\" +\n          \"<p>Consectetur adipiscing elit. Aliquam sodales sem in nibh pellentesque, ac dignissim mi dapibus.</p>\" +\n          \"<p>Lorem ipsum dolor sit amet! Nullam imperdiet justo a ipsum laoreet euismod.</p>\" +\n          \"<br><p>Cras tincidunt fermentum lectus, quis scelerisque lorem volutpat sed.\" +\n          \"Sed quis orci sed nisl sagittis viverra id at mauris. Nam venenatis mi nibh. Sed fringilla mattis vehic</p>\"),\n        \"pic\": \"img/Kostya.png\",\n        \"email\": \"schwart@mail.com\",\n        \"position\": \"Technical Chef\",\n        \"attachment\": \"file.doc\",\n        \"tag\": \"family\",\n        \"labels\": ['inbox', 'important']\n      },\n      {\n        \"id\": \"2334aefvv\",\n        \"name\": \"Kostya Danovsky\",\n        \"subject\": \"New product\",\n        \"date\": \"2015-06-22T06:26:10\",\n        \"body\": $sce.trustAsHtml(\"<p>Hello John, </p><p>\u0003Lorem ipsum dolor sit amet!</p>\" +\n          \"<p>Consectetur adipiscing elit. Aliquam sodales sem in nibh pellentesque, ac dignissim mi dapibus.</p>\" +\n          \"<p>Aliquam eu facilisis eros, quis varius est. Nullam imperdiet justo a ipsum laoreet euismod.</p>\" +\n          \"<br><p>Nulla facilisi. Nulla congue, arcu eget blandit lacinia, leo ante ullamcorper lectus, vel pulvinar justo ipsum vitae justo.\" +\n          \"Cras tincidunt fermentum lectus, quis scelerisque lorem volutpat sed. Sed quis orci sed nisl sagittis viverra id at mauris. Nam venenatis mi nibh. Sed fringilla mattis vehic</p>\"),\n        \"pic\": \"img/Kostya.png\",\n        \"email\": \"schwart@mail.com\",\n        \"position\": \"Technical Chef\",\n        \"tag\": \"family\",\n        \"labels\": ['inbox', 'important']\n      },\n      {\n        \"id\": \"2334cvdss\",\n        \"name\": \"Kostya Danovsky\",\n        \"subject\": \"Old product\",\n        \"date\": \"2015-06-22T06:26:10\",\n        \"body\": $sce.trustAsHtml(\"<p>Hello John, </p>\" +\n          \"<p>Consectetur adipiscing elit. Aliquam sodales sem in nibh pellentesque, ac dignissim mi dapibus.</p>\" +\n          \"<br>\"+\n          \"<p>Cras tincidunt fermentum lectus, quis scelerisque lorem volutpat sed. Sed quis orci sed nisl sagittis viverra id at mauris. Nam venenatis mi nibh. Sed fringilla mattis vehic</p>\"),\n        \"pic\": \"img/Kostya.png\",\n        \"email\": \"schwart@mail.com\",\n        \"position\": \"Technical Chef\",\n        \"tag\": \"study\",\n        \"labels\": ['trash']\n      },\n      {\n        \"id\": \"8223xzxfn\",\n        \"name\": \"Andrey Hrabouski\",\n        \"subject\": \"Skype moji\",\n        \"date\": \"2015-07-16T06:47:53\",\n        \"body\": $sce.trustAsHtml(\"<p>Hello John, </p><p>Aliquam sodales sem in nibh pellentesque</p>\" +\n          \"<p>Lorem ipsum dolor I find moji in skype sit amet!.</p>\"),\n        \"pic\": \"img/Andrey.png\",\n        \"email\": \"lakeishaphillips@mail.com\",\n        \"position\": \"Mobile Developer\",\n        \"tag\": 'family',\n        \"labels\": ['trash']\n      },\n      {\n        \"id\": \"8223sdffn\",\n        \"name\": \"Andrey Hrabouski\",\n        \"subject\": \"My App\",\n        \"date\": \"2015-06-20T07:05:02\",\n        \"body\": $sce.trustAsHtml(\"<p>Hey Vlad. </p><p>\u0003Lorem ipsum dolor sit amet!</p>\" +\n          \"<p>Consectetur My Falasson App elit. Aliquam sodales sem in nibh pellentesque, ac dignissim mi dapibus.</p>\"),\n        \"pic\": \"img/Andrey.png\",\n        \"email\": \"lakeishaphillips@mail.com\",\n        \"position\": \"Mobile Developer\",\n        \"tag\": 'family',\n        \"labels\": ['spam']\n      },\n      {\n        \"id\": \"9391xdsff\",\n        \"name\": \"Vlad Lugovsky\",\n        \"subject\": \"Cool\",\n        \"date\": \"2015-03-31T11:52:58\",\n        \"body\": $sce.trustAsHtml(\"<p>Hey Vlad. </p><p>Aliquam sodales sem in nibh pellentesque</p>\" +\n          \"<p>Cras tincidunt fermentum lectus, quis scelerisque lorem volutpat sed.</p>\"),\n        \"pic\": \"img/Vlad.png\",\n        \"email\": \"carlsongoodman@mail.com\",\n        \"position\": \"Fullstack man\",\n        \"tag\": \"study\",\n        \"labels\": ['draft']\n      },\n      {\n        \"id\": \"8223xsdaa\",\n        \"name\": \"Andrey Hrabouski\",\n        \"subject\": \"Car rent\",\n        \"date\": \"2015-02-25T10:58:58\",\n        \"body\": $sce.trustAsHtml(\"<p>Hey Andrey. </p>\" +\n          \"<p>Cras tincidunt fermentum lectus, quis scelerisque lorem volutpat sed. Sed quis orci sed nisl sagittis viverra id at mauris. Nam venenatis mi nibh. Sed fringilla mattis vehic</p>\"),\n        \"pic\": \"img/Andrey.png\",\n        \"email\": \"lakeishaphillips@mail.com\",\n        \"position\": \"Mobile Developer\",\n        \"tag\": \"family\",\n        \"labels\": ['draft']\n      },\n      {\n        \"id\": \"9391xdsff\",\n        \"name\": \"Vlad Lugovsky\",\n        \"subject\": \"What next\",\n        \"date\": \"2015-03-31T11:52:58\",\n        \"body\": $sce.trustAsHtml(\"<p>Hey Vlad. </p><p>\u0003Lorem ipsum dolor sit amet!</p>\" +\n          \"<p>Esse esse labore tempor ullamco ullamco. Id veniam laborum c.</p>\"),\n        \"pic\": \"img/Vlad.png\",\n        \"email\": \"carlsongoodman@mail.com\",\n        \"position\": \"Fullstack man\",\n        \"tag\": \"study\",\n        \"labels\": ['sent']\n      }\n    ].sort(function (a, b) {\n        if (a.date > b.date) return 1;\n        if (a.date < b.date) return -1;\n      }).reverse();\n    var tabs = [{\n      label: 'inbox',\n      name: 'Inbox',\n      newMails: 7\n    }, {\n      label: 'sent',\n      name: 'Sent Mail'\n    }, {\n      label: 'important',\n      name: 'Important'\n    }, {\n      label: 'draft',\n      name: 'Draft',\n      newMails: 2\n    }, {\n      label: 'spam',\n      name: 'Spam'\n    }, {\n      label: 'trash',\n      name: 'Trash'\n    }];\n\n    return{\n      getTabs : function(){\n        return tabs\n      },\n      getMessagesByLabel : function(label){\n        return messages.filter(function(m){\n          return m.labels.indexOf(label) != -1;\n        });\n      },\n      getMessageById : function(id){\n        return messages.filter(function(m){\n          return m.id == id;\n        })[0];\n      }\n    }\n\n  }\n\n})();"
  },
  {
    "path": "src/app/pages/components/timeline/TimelineCtrl.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.components.timeline')\n      .controller('TimelineCtrl', TimelineCtrl);\n\n  /** @ngInject */\n  function TimelineCtrl() {\n    var timelineBlocks = $('.cd-timeline-block'),\n        offset = 0.8;\n\n    //hide timeline blocks which are outside the viewport\n    hideBlocks(timelineBlocks, offset);\n\n    //on scolling, show/animate timeline blocks when enter the viewport\n    $(window).on('scroll', function () {\n      if (!window.requestAnimationFrame) {\n        setTimeout(function () {\n          showBlocks(timelineBlocks, offset);\n        }, 100);\n      } else {\n        window.requestAnimationFrame(function () {\n          showBlocks(timelineBlocks, offset);\n        });\n      }\n    });\n\n    function hideBlocks(blocks, offset) {\n      blocks.each(function () {\n        ( $(this).offset().top > $(window).scrollTop() + $(window).height() * offset ) && $(this).find('.cd-timeline-img, .cd-timeline-content').addClass('is-hidden');\n      });\n    }\n\n    function showBlocks(blocks, offset) {\n      blocks.each(function () {\n        ( $(this).offset().top <= $(window).scrollTop() + $(window).height() * offset && $(this).find('.cd-timeline-img').hasClass('is-hidden') ) && $(this).find('.cd-timeline-img, .cd-timeline-content').removeClass('is-hidden').addClass('bounce-in');\n      });\n    }\n  }\n})();"
  },
  {
    "path": "src/app/pages/components/timeline/timeline.html",
    "content": "<!-- todo: remove whole block -->\n<div ba-panel>\n  <section id=\"cd-timeline\" class=\"cd-container cssanimations\" ng-controller=\"TimelineCtrl\">\n    <div class=\"cd-timeline-block\">\n      <div class=\"cd-timeline-img\">\n        <div class=\"kameleon-icon with-round-bg warning\"><img ng-src=\"{{::( 'Euro-Coin' | kameleonImg )}}\"></div>\n      </div>\n\n      <div class=\"cd-timeline-content warning\">\n        <h5>Title of section 1</h5>\n\n        <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Iusto, optio, dolorum provident rerum aut hic quasi\n          placeat iure tempora laudantium ipsa ad debitis unde? Iste voluptatibus minus veritatis qui ut.</p>\n        <span class=\"cd-date\">Jan 14</span>\n      </div>\n    </div>\n\n    <div class=\"cd-timeline-block\">\n      <div class=\"cd-timeline-img\">\n        <div class=\"kameleon-icon with-round-bg danger\"><img ng-src=\"{{::( 'Laptop-Signal' | kameleonImg )}}\"></div>\n      </div>\n\n      <div class=\"cd-timeline-content danger\">\n        <h5>Title of section 2</h5>\n\n        <p>Donec dapibus at leo eget volutpat. Praesent dolor tellus, ultricies venenatis molestie eu, luctus eget nibh.\n          Curabitur ullamcorper eleifend nisl.</p>\n        <span class=\"cd-date\">Jan 18</span>\n      </div>\n    </div>\n\n    <div class=\"cd-timeline-block\">\n      <div class=\"cd-timeline-img\">\n        <div class=\"kameleon-icon with-round-bg primary\"><img ng-src=\"{{::( 'Checklist' | kameleonImg )}}\"></div>\n      </div>\n\n      <div class=\"cd-timeline-content primary\">\n        <h5>Title of section 3</h5>\n\n        <p>Phasellus auctor tellus eget lacinia condimentum. Cum sociis natoque penatibus et magnis dis parturient\n          montes.</p>\n        <span class=\"cd-date\">Feb 18</span>\n      </div>\n    </div>\n\n    <div class=\"cd-timeline-block\">\n      <div class=\"cd-timeline-img\">\n        <div class=\"kameleon-icon with-round-bg warning\"><img ng-src=\"{{::( 'Boss-3' | kameleonImg )}}\"></div>\n      </div>\n\n      <div class=\"cd-timeline-content warning\">\n        <h5>Title of section 4</h5>\n\n        <p>Morbi fringilla in massa ac posuere. Fusce non sagittis massa, id accumsan odio. Nullam eget tempor est.\n          Etiam eu felis eu purus aliquam tristique id quis nisl. Nam eros nibh, consequat sed pulvinar eu, ultrices\n          ornare ligula. Aenean interdum sed nunc sed hendrerit.</p>\n        <span class=\"cd-date\">Feb 20</span>\n      </div>\n    </div>\n    <div class=\"cd-timeline-block\">\n      <div class=\"cd-timeline-img\">\n        <div class=\"kameleon-icon with-round-bg danger\"><img ng-src=\"{{::( 'Online-Shopping' | kameleonImg )}}\"></div>\n      </div>\n\n      <div class=\"cd-timeline-content danger\">\n        <h5>Title of section 5</h5>\n\n        <p> Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Curabitur eget mattis\n          metus. Nullam egestas eros metus, quis fringilla urna accumsan sed. Aliquam ultrices at arcu vitae\n          tincidunt.</p>\n        <span class=\"cd-date\">Feb 21</span>\n      </div>\n    </div>\n    <div class=\"cd-timeline-block\">\n      <div class=\"cd-timeline-img\">\n        <div class=\"kameleon-icon with-round-bg primary\"><img ng-src=\"{{::( 'Money-Increase' | kameleonImg )}}\"></div>\n      </div>\n\n      <div class=\"cd-timeline-content primary\">\n        <h5>Title of section 6</h5>\n\n        <p>Praesent bibendum ante mattis augue consectetur, ut commodo turpis consequat. Donec ligula eros, porta in\n          iaculis vel, semper ac sem. Integer at mauris lorem.</p>\n        <span class=\"cd-date\">Feb 23</span>\n      </div>\n    </div>\n    <div class=\"cd-timeline-block\">\n      <div class=\"cd-timeline-img\">\n        <div class=\"kameleon-icon with-round-bg warning\"><img ng-src=\"{{::( 'Vector' | kameleonImg )}}\"></div>\n      </div>\n\n      <div class=\"cd-timeline-content warning\">\n        <h5>Title of section 7</h5>\n\n        <p>Vivamus ut laoreet erat, vitae eleifend eros. Sed varius id tellus non lobortis. Sed dolor ante, cursus non\n          scelerisque sed, euismod id eros.</p>\n        <span class=\"cd-date\">Feb 24</span>\n      </div>\n    </div>\n  </section>\n</div>"
  },
  {
    "path": "src/app/pages/components/timeline/timeline.module.js",
    "content": "/**\n * @author a.demeshko\n * created on 1/12/16\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.components.timeline', [])\n    .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n      .state('components.timeline', {\n        url: '/timeline',\n        templateUrl: 'app/pages/components/timeline/timeline.html',\n          title: 'Timeline',\n          sidebarMeta: {\n            icon: 'ion-ios-pulse',\n            order: 100,\n          },\n      });\n  }\n})();"
  },
  {
    "path": "src/app/pages/components/tree/tree.html",
    "content": "<div class=\"row\" ng-controller=\"treeCtrl\">\n  <div class=\"col-md-6\">\n    <div ba-panel ba-panel-title=\"Basic Action\" ba-panel-class=\"with-scroll tree-panel\">\n      <div class=\"row\">\n        <div class=\"col-sm-4\">\n          <div class=\"control-side text-center\">\n            <div>\n              <button class=\"btn btn-primary\" ng-click=\"addNewNode()\">Add</button>\n            </div>\n            <div>\n              <button class=\"btn btn-primary\" ng-click=\"collapse()\">Collapse All</button>\n            </div>\n            <div>\n              <button class=\"btn btn-primary\" ng-click=\"expand()\">Expand All</button>\n            </div>\n            <div>\n              <button class=\"btn btn-primary\" ng-click=\"refresh()\">Refresh</button>\n            </div>\n          </div>\n        </div>\n        <div class=\"col-sm-8\">\n          <div js-tree=\"basicConfig\" ng-model=\"treeData\" should-apply=\"applyModelChanges()\" tree=\"basicTree\" tree-events=\"ready:readyCB\"></div>\n        </div>\n      </div>\n    </div>\n  </div>\n  <div class=\"col-md-6\">\n    <div ba-panel ba-panel-title=\"Drag & Drop\" ba-panel-class=\"with-scroll tree-panel\">\n      <div js-tree=\"dragConfig\" ng-model=\"dragData\"></div>\n    </div>\n  </div>\n</div>\n</div>\n"
  },
  {
    "path": "src/app/pages/components/tree/tree.module.js",
    "content": "/**\n * @author a.demeshko\n * created on 12.21.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.components.tree', [])\n    .config(routeConfig)\n    .config(function(){\n      $.jstree.defaults.core.themes.url = true;\n      $.jstree.defaults.core.themes.dir = \"assets/img/theme/vendor/jstree/dist/themes\";\n    });\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('components.tree', {\n          url: '/tree',\n          templateUrl: 'app/pages/components/tree/tree.html',\n          title: 'Tree View',\n          sidebarMeta: {\n            order: 200,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/components/tree/treeCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/21/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.components.tree')\n    .controller('treeCtrl', treeCtrl);\n\n  /** @ngInject */\n  function treeCtrl($scope, $timeout) {\n\n    $scope.ignoreChanges = false;\n    var newId = 0;\n    $scope.ignoreChanges = false;\n    $scope.newNode = {};\n\n    $scope.basicConfig = {\n      core: {\n        multiple: false,\n        check_callback: true,\n        worker: true\n      },\n      'types': {\n        'folder': {\n          'icon': 'ion-ios-folder'\n        },\n        'default': {\n          'icon': 'ion-document-text'\n        }\n      },\n      'plugins': ['types'],\n      'version': 1\n    };\n\n    $scope.dragConfig = {\n      'core': {\n        'check_callback': true,\n        'themes': {\n          'responsive': false\n        }\n      },\n      'types': {\n        'folder': {\n          'icon': 'ion-ios-folder'\n        },\n        'default': {\n          'icon': 'ion-document-text'\n        }\n      },\n      \"plugins\": [\"dnd\", 'types']\n    };\n\n    $scope.addNewNode = function () {\n      $scope.ignoreChanges = true;\n      var selected = this.basicTree.jstree(true).get_selected()[0];\n      if (selected)\n        $scope.treeData.push({\n          id: (newId++).toString(),\n          parent: selected,\n          text: \"New node \" + newId,\n          state: {opened: true}\n        });\n      $scope.basicConfig.version++;\n    };\n\n\n    $scope.refresh = function () {\n      $scope.ignoreChanges = true;\n      newId = 0;\n      $scope.treeData = getDefaultData();\n      $scope.basicConfig.version++;\n    };\n\n    $scope.expand = function () {\n      $scope.ignoreChanges = true;\n      $scope.treeData.forEach(function (n) {\n        n.state.opened = true;\n      });\n      $scope.basicConfig.version++;\n    };\n\n    $scope.collapse = function () {\n      $scope.ignoreChanges = true;\n      $scope.treeData.forEach(function (n) {\n        n.state.opened = false;\n      });\n      $scope.basicConfig.version++;\n    };\n\n    $scope.readyCB = function() {\n      $timeout(function() {\n        $scope.ignoreChanges = false;\n      });\n    };\n\n\n    $scope.applyModelChanges = function() {\n      return !$scope.ignoreChanges;\n    };\n\n    $scope.treeData = getDefaultData();\n    $scope.dragData = [\n      {\n        \"id\": \"nd1\",\n        \"parent\": \"#\",\n        \"type\": \"folder\",\n        \"text\": \"Node 1\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd2\",\n        \"parent\": \"#\",\n        \"type\": \"folder\",\n        \"text\": \"Node 2\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd3\",\n        \"parent\": \"#\",\n        \"type\": \"folder\",\n        \"text\": \"Node 3\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd4\",\n        \"parent\": \"#\",\n        \"type\": \"folder\",\n        \"text\": \"Node 4\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd5\",\n        \"parent\": \"nd1\",\n        \"text\": \"Node 1.1\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd6\",\n        \"parent\": \"nd1\",\n        \"text\": \"Node 1.2\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd7\",\n        \"parent\": \"nd1\",\n        \"text\": \"Node 1.3\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd8\",\n        \"parent\": \"nd2\",\n        \"text\": \"Node 2.1\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd9\",\n        \"parent\": \"nd2\",\n        \"text\": \"Node 2.2\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd10\",\n        \"parent\": \"nd2\",\n        \"text\": \"Node 2.3\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd11\",\n        \"parent\": \"nd3\",\n        \"text\": \"Node 3.1\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd12\",\n        \"parent\": \"nd3\",\n        \"text\": \"Node 3.2\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd13\",\n        \"parent\": \"nd3\",\n        \"text\": \"Node 3.3\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd14\",\n        \"parent\": \"nd4\",\n        \"text\": \"Node 4.1\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd15\",\n        \"parent\": \"nd4\",\n        \"text\": \"Node 4.2\",\n        \"state\": {\n          \"opened\": true\n        }\n      },\n      {\n        \"id\": \"nd16\",\n        \"parent\": \"nd4\",\n        \"text\": \"Node 4.3\",\n        \"state\": {\n          \"opened\": true\n        }\n      }\n    ];\n\n    function getDefaultData() {\n      return [\n        {\n          \"id\": \"n1\",\n          \"parent\": \"#\",\n          \"type\": \"folder\",\n          \"text\": \"Node 1\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n2\",\n          \"parent\": \"#\",\n          \"type\": \"folder\",\n          \"text\": \"Node 2\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n3\",\n          \"parent\": \"#\",\n          \"type\": \"folder\",\n          \"text\": \"Node 3\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n5\",\n          \"parent\": \"n1\",\n          \"text\": \"Node 1.1\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n6\",\n          \"parent\": \"n1\",\n          \"text\": \"Node 1.2\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n7\",\n          \"parent\": \"n1\",\n          \"text\": \"Node 1.3\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n8\",\n          \"parent\": \"n1\",\n          \"text\": \"Node 1.4\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n9\",\n          \"parent\": \"n2\",\n          \"text\": \"Node 2.1\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n10\",\n          \"parent\": \"n2\",\n          \"text\": \"Node 2.2 (Custom icon)\",\n          \"icon\": \"ion-help-buoy\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n12\",\n          \"parent\": \"n3\",\n          \"text\": \"Node 3.1\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n13\",\n          \"parent\": \"n3\",\n          \"type\": \"folder\",\n          \"text\": \"Node 3.2\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n14\",\n          \"parent\": \"n13\",\n          \"text\": \"Node 3.2.1\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n15\",\n          \"parent\": \"n13\",\n          \"text\": \"Node 3.2.2\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n16\",\n          \"parent\": \"n3\",\n          \"text\": \"Node 3.3\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n17\",\n          \"parent\": \"n3\",\n          \"text\": \"Node 3.4\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n18\",\n          \"parent\": \"n3\",\n          \"text\": \"Node 3.5\",\n          \"state\": {\n            \"opened\": true\n          }\n        },\n        {\n          \"id\": \"n19\",\n          \"parent\": \"n3\",\n          \"text\": \"Node 3.6\",\n          \"state\": {\n            \"opened\": true\n          }\n        }\n      ]\n    }\n\n\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/blurFeed/BlurFeedCtrl.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .controller('BlurFeedCtrl', BlurFeedCtrl);\n\n  /** @ngInject */\n  function BlurFeedCtrl($scope) {\n    $scope.feed = [\n      {\n        type: 'text-message',\n        author: 'Kostya',\n        surname: 'Danovsky',\n        header: 'Posted new message',\n        text: 'Guys, check this out: \\nA police officer found a perfect hiding place for watching for speeding motorists. One day, the officer was amazed when everyone was under the speed limit, so he investigated and found the problem. A 10 years old boy was standing on the side of the road with a huge hand painted sign which said \"Radar Trap Ahead.\" A little more investigative work led the officer to the boy\\'s accomplice: another boy about 100 yards beyond the radar trap with a sign reading \"TIPS\" and a bucket at his feet full of change.',\n        time: 'Today 11:55 pm',\n        ago: '25 minutes ago',\n        expanded: false,\n      }, {\n        type: 'video-message',\n        author: 'Andrey',\n        surname: 'Hrabouski',\n        header: 'Added new video',\n        text: '\"Vader and Me\"',\n        preview: 'app/feed/vader-and-me-preview.png',\n        link: 'https://www.youtube.com/watch?v=IfcpzBbbamk',\n        time: 'Today 9:30 pm',\n        ago: '3 hrs ago',\n        expanded: false,\n      }, {\n        type: 'image-message',\n        author: 'Vlad',\n        surname: 'Lugovsky',\n        header: 'Added new image',\n        text: '\"My little kitten\"',\n        preview: 'app/feed/my-little-kitten.png',\n        link: 'http://api.ning.com/files/DtcI2O2Ry7A7VhVxeiWfGU9WkHcMy4WSTWZ79oxJq*h0iXvVGndfD7CIYy-Ax-UAFCBCdqXI4GCBw3FOLKTTjQc*2cmpdOXJ/1082127884.jpeg',\n        time: 'Today 2:20 pm',\n        ago: '10 hrs ago',\n        expanded: false,\n      }, {\n        type: 'text-message',\n        author: 'Nasta',\n        surname: 'Linnie',\n        header: 'Posted new message',\n        text: 'Haha lol',\n        time: '11.11.2015',\n        ago: '2 days ago',\n        expanded: false,\n      }, {\n        type: 'geo-message',\n        author: 'Nick',\n        surname: 'Cat',\n        header: 'Posted location',\n        text: '\"New York, USA\"',\n        preview: 'app/feed/new-york-location.png',\n        link: 'https://www.google.by/maps/place/New+York,+NY,+USA/@40.7201111,-73.9893872,14z',\n        time: '11.11.2015',\n        ago: '2 days ago',\n        expanded: false,\n      }, {\n        type: 'text-message',\n        author: 'Vlad',\n        surname: 'Lugovsky',\n        header: 'Posted new message',\n        text: \"First snake: I hope I'm not poisonous. Second snake: Why? First snake: Because I bit my lip!\",\n        time: '12.11.2015',\n        ago: '3 days ago',\n        expanded: false,\n      }, {\n        type: 'text-message',\n        author: 'Andrey',\n        surname: 'Hrabouski',\n        header: 'Posted new message',\n        text: 'How do you smuggle an elephant across the border? Put a slice of bread on each side, and call him \"lunch\".',\n        time: '14.11.2015',\n        ago: '5 days ago',\n        expanded: false,\n      }, {\n        type: 'text-message',\n        author: 'Nasta',\n        surname: 'Linnie',\n        header: 'Posted new message',\n        text: 'When your hammer is C++, everything begins to look like a thumb.',\n        time: '14.11.2015',\n        ago: '5 days ago',\n        expanded: false,\n      }, {\n        type: 'text-message',\n        author: 'Alexander',\n        surname: 'Demeshko',\n        header: 'Posted new message',\n        text: '“I mean, they say you die twice. One time when you stop breathing and a second time, a bit later on, when somebody says your name for the last time.\" ©',\n        time: '15.11.2015',\n        ago: '6 days ago',\n        expanded: false,\n      }, {\n        type: 'image-message',\n        author: 'Nick',\n        surname: 'Cat',\n        header: 'Posted photo',\n        text: '\"Protein Heroes\"',\n        preview: 'app/feed/genom.png',\n        link: 'https://dribbble.com/shots/2504810-Protein-Heroes',\n        time: '16.11.2015',\n        ago: '7 days ago',\n        expanded: false,\n      },\n      {\n        type: 'text-message',\n        author: 'Kostya',\n        surname: 'Danovsky',\n        header: 'Posted new message',\n        text: 'Why did the CoffeeScript developer keep getting lost? Because he couldn\\'t find his source without a map',\n        time: '18.11.2015',\n        ago: '9 days ago',\n        expanded: false,\n      }\n    ];\n\n    $scope.expandMessage = function(message){\n      message.expanded = !message.expanded;\n    }\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/blurFeed/blurFeed.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .directive('blurFeed', blurFeed);\n\n  /** @ngInject */\n  function blurFeed() {\n    return {\n      restrict: 'E',\n      controller: 'BlurFeedCtrl',\n      templateUrl: 'app/pages/dashboard/blurFeed/blurFeed.html'\n    };\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/blurFeed/blurFeed.html",
    "content": "\n<div class=\"feed-messages-container\" track-width=\"smallContainerWidth\" min-width=\"360\">\n  <div class=\"feed-message\" ng-repeat=\"message in feed\" ng-click=\"expandMessage(message)\">\n    <div class=\"message-icon\" ng-if=\"message.type == 'text-message'\">\n      <img class=\"photo-icon\" ng-src=\"{{::( message.author | profilePicture )}}\">\n    </div>\n    <div class=\"message-icon\" ng-if=\"message.type != 'text-message'\">\n      <img class=\"photo-icon\" ng-src=\"{{::( message.author | profilePicture )}}\">\n      <span class=\"sub-photo-icon\" ng-class=\"::message.type\"></span>\n    </div>\n    <div class=\"text-block text-message\">\n      <div class=\"message-header\">\n        <span class=\"author\">{{ ::message.author }} {{ ::message.surname}}</span>\n      </div>\n      <div class=\"message-content line-clamp\" ng-class=\"{'line-clamp-2' : !message.expanded}\">\n        <span ng-if=\"message.preview\">{{message.header}} </span>{{::message.text}}\n      </div>\n      <div class=\"preview\" ng-show=\"message.expanded\" ng-if=\"message.preview\">\n        <a href=\"{{::message.link}}\" target=\"_blank\">\n          <img ng-src=\"{{ ::( message.preview | appImage )}}\">\n        </a>\n      </div>\n      <div ng-show=\"message.expanded\" class=\"message-time\">\n        <div class=\"post-time\">\n          {{::message.time}}\n        </div>\n        <div class=\"ago-time\">\n          {{::message.ago}}\n        </div>\n      </div>\n    </div>\n  </div>\n</div>\n"
  },
  {
    "path": "src/app/pages/dashboard/calendar/dashboardCalendar.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .service('dashboardCalendar', dashboardCalendar);\n\n  /** @ngInject */\n  function dashboardCalendar() {\n\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/dashboard.html",
    "content": "<dashboard-pie-chart></dashboard-pie-chart>\n\n<div class=\"row\">\n  <div class=\"col-lg-6 col-md-12 col-sm-12\"\n       ba-panel\n       ba-panel-title=\"Acquisition Channels\"\n       ba-panel-class=\"medium-panel traffic-panel\">\n    <traffic-chart></traffic-chart>\n  </div>\n  <div class=\"col-lg-6 col-md-12 col-sm-12\"\n       ba-panel\n       ba-panel-title=\"Users by Country\"\n       ba-panel-class=\"medium-panel\">\n    <dashboard-map></dashboard-map>\n  </div>\n</div>\n\n<div class=\"row\">\n  <div class=\"col-xlg-9 col-lg-6 col-md-6 col-sm-12 col-xs-12\">\n    <div class=\"row\">\n      <div class=\"col-xlg-8 col-lg-12 col-md-12 col-sm-7 col-xs-12\"\n           ba-panel\n           ba-panel-title=\"Revenue\"\n           ba-panel-class=\"medium-panel\">\n        <dashboard-line-chart></dashboard-line-chart>\n      </div>\n      <div class=\"col-xlg-4 col-lg-12 col-md-12 col-sm-5 col-xs-12\"\n           ba-panel\n           ba-panel-class=\"popular-app medium-panel\">\n        <popular-app></popular-app>\n      </div>\n    </div>\n  </div>\n  <div class=\"col-xlg-3 col-lg-6 col-md-6 col-sm-12 col-xs-12\"\n       ba-panel\n       ba-panel-title=\"Feed\"\n       ba-panel-class=\"large-panel with-scroll feed-panel\">\n    <blur-feed></blur-feed>\n  </div>\n</div>\n\n<div class=\"row shift-up\">\n  <div class=\"col-xlg-3 col-lg-6 col-md-6 col-xs-12\"\n       ba-panel\n       ba-panel-title=\"To Do List\"\n       ba-panel-class=\"xmedium-panel feed-comply-panel with-scroll todo-panel\">\n    <dashboard-todo></dashboard-todo>\n  </div>\n  <div class=\"col-xlg-6 col-lg-6 col-md-6 col-xs-12\"\n       ba-panel\n       ba-panel-title=\"Calendar\"\n       ba-panel-class=\"xmedium-panel feed-comply-panel with-scroll calendar-panel\">\n    <dashboard-calendar></dashboard-calendar>\n  </div>\n</div>\n\n<!--<div class=\"row\">\n  <div class=\"col-lg-4 col-sm-6 col-xs-12\">\n    <div ba-panel ba-panel-title=\"Weather\" ba-panel-class=\"medium-panel with-scroll\">\n      <blur-weather forecast=\"5\"></blur-weather>\n    </div>\n  </div>\n</div>-->\n"
  },
  {
    "path": "src/app/pages/dashboard/dashboard.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('dashboard', {\n          url: '/dashboard',\n          templateUrl: 'app/pages/dashboard/dashboard.html',\n          title: 'Dashboard',\n          sidebarMeta: {\n            icon: 'ion-android-home',\n            order: 0,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/dashboard/dashboardCalendar/DashboardCalendarCtrl.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .controller('DashboardCalendarCtrl', DashboardCalendarCtrl);\n\n  /** @ngInject */\n  function DashboardCalendarCtrl(baConfig) {\n    var dashboardColors = baConfig.colors.dashboard;\n    var $element = $('#calendar').fullCalendar({\n      //height: 335,\n      header: {\n        left: 'prev,next today',\n        center: 'title',\n        right: 'month,agendaWeek,agendaDay'\n      },\n      defaultDate: '2016-03-08',\n      selectable: true,\n      selectHelper: true,\n      select: function (start, end) {\n        var title = prompt('Event Title:');\n        var eventData;\n        if (title) {\n          eventData = {\n            title: title,\n            start: start,\n            end: end\n          };\n          $element.fullCalendar('renderEvent', eventData, true); // stick? = true\n        }\n        $element.fullCalendar('unselect');\n      },\n      editable: true,\n      eventLimit: true, // allow \"more\" link when too many events\n      events: [\n        {\n          title: 'All Day Event',\n          start: '2016-03-01',\n          color: dashboardColors.silverTree\n        },\n        {\n          title: 'Long Event',\n          start: '2016-03-07',\n          end: '2016-03-10',\n          color: dashboardColors.blueStone\n        },\n        {\n          title: 'Dinner',\n          start: '2016-03-14T20:00:00',\n          color: dashboardColors.surfieGreen\n        },\n        {\n          title: 'Birthday Party',\n          start: '2016-04-01T07:00:00',\n          color: dashboardColors.gossipDark\n        }\n      ]\n    });\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/dashboardCalendar/dashboardCalendar.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .directive('dashboardCalendar', dashboardCalendar);\n\n  /** @ngInject */\n  function dashboardCalendar() {\n    return {\n      restrict: 'E',\n      controller: 'DashboardCalendarCtrl',\n      templateUrl: 'app/pages/dashboard/dashboardCalendar/dashboardCalendar.html'\n    };\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/dashboardCalendar/dashboardCalendar.html",
    "content": "<div id='calendar' class=\"blurCalendar\"></div>"
  },
  {
    "path": "src/app/pages/dashboard/dashboardLineChart/DashboardLineChartCtrl.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .controller('DashboardLineChartCtrl', DashboardLineChartCtrl);\n\n  /** @ngInject */\n  function DashboardLineChartCtrl(baConfig, layoutPaths, baUtil) {\n    var layoutColors = baConfig.colors;\n    var graphColor = baConfig.theme.blur ? '#000000' : layoutColors.primary;\n    var chartData = [\n      { date: new Date(2012, 11), value: 0, value0: 0 },\n      { date: new Date(2013, 0), value: 15000, value0: 19000},\n      { date: new Date(2013, 1), value: 30000, value0: 20000},\n\n      { date: new Date(2013, 2), value: 25000, value0: 22000},\n      { date: new Date(2013, 3), value: 21000, value0: 25000},\n      { date: new Date(2013, 4), value: 24000, value0: 29000},\n      { date: new Date(2013, 5), value: 31000, value0: 26000},\n      { date: new Date(2013, 6), value: 40000, value0: 25000},\n      { date: new Date(2013, 7), value: 37000, value0: 20000},\n      { date: new Date(2013, 8), value: 18000, value0: 22000},\n      { date: new Date(2013, 9), value: 5000, value0: 26000},\n      { date: new Date(2013, 10), value: 40000, value0: 30000},\n      { date: new Date(2013, 11), value: 20000, value0: 25000},\n      { date: new Date(2014, 0), value: 5000, value0: 13000},\n\n      { date: new Date(2014, 1), value: 3000, value0: 13000},\n      { date: new Date(2014, 2), value: 1800, value0: 13000},\n      { date: new Date(2014, 3), value: 10400, value0: 13000},\n      { date: new Date(2014, 4), value: 25500, value0: 13000},\n      { date: new Date(2014, 5), value: 2100, value0: 13000},\n      { date: new Date(2014, 6), value: 6500, value0: 13000},\n      { date: new Date(2014, 7), value: 1100, value0: 13000},\n      { date: new Date(2014, 8), value: 17200, value0: 13000},\n      { date: new Date(2014, 9), value: 26900, value0: 13000},\n      { date: new Date(2014, 10), value: 14100, value0: 13000},\n      { date: new Date(2014, 11), value: 35300, value0: 13000},\n      { date: new Date(2015, 0), value: 54800, value0: 13000},\n      { date: new Date(2015, 1), value: 49800, value0: 13000}\n    ];\n\n    var chart = AmCharts.makeChart('amchart', {\n      type: 'serial',\n      theme: 'blur',\n      marginTop: 15,\n      marginRight: 15,\n      dataProvider: chartData,\n      categoryField: 'date',\n      categoryAxis: {\n        parseDates: true,\n        gridAlpha: 0,\n        color: layoutColors.defaultText,\n        axisColor: layoutColors.defaultText\n      },\n      valueAxes: [\n        {\n          minVerticalGap: 50,\n          gridAlpha: 0,\n          color: layoutColors.defaultText,\n          axisColor: layoutColors.defaultText\n        }\n      ],\n      graphs: [\n        {\n          id: 'g0',\n          bullet: 'none',\n          useLineColorForBulletBorder: true,\n          lineColor: baUtil.hexToRGB(graphColor, 0.3),\n          lineThickness: 1,\n          negativeLineColor: layoutColors.danger,\n          type: 'smoothedLine',\n          valueField: 'value0',\n          fillAlphas: 1,\n          fillColorsField: 'lineColor'\n        },\n        {\n          id: 'g1',\n          bullet: 'none',\n          useLineColorForBulletBorder: true,\n          lineColor: baUtil.hexToRGB(graphColor, 0.5),\n          lineThickness: 1,\n          negativeLineColor: layoutColors.danger,\n          type: 'smoothedLine',\n          valueField: 'value',\n          fillAlphas: 1,\n          fillColorsField: 'lineColor'\n        }\n      ],\n      chartCursor: {\n        categoryBalloonDateFormat: 'MM YYYY',\n        categoryBalloonColor: '#4285F4',\n        categoryBalloonAlpha: 0.7,\n        cursorAlpha: 0,\n        valueLineEnabled: true,\n        valueLineBalloonEnabled: true,\n        valueLineAlpha: 0.5\n      },\n      dataDateFormat: 'MM YYYY',\n      export: {\n        enabled: true\n      },\n      creditsPosition: 'bottom-right',\n      zoomOutButton: {\n        backgroundColor: '#fff',\n        backgroundAlpha: 0\n      },\n      zoomOutText: '',\n      pathToImages: layoutPaths.images.amChart\n    });\n\n    function zoomChart() {\n      chart.zoomToDates(new Date(2013, 3), new Date(2014, 0));\n    }\n\n    chart.addListener('rendered', zoomChart);\n    zoomChart();\n    if (chart.zoomChart) {\n      chart.zoomChart();\n    }\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/dashboardLineChart/dashboardLineChart.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .directive('dashboardLineChart', dashboardLineChart);\n\n  /** @ngInject */\n  function dashboardLineChart() {\n    return {\n      restrict: 'E',\n      controller: 'DashboardLineChartCtrl',\n      templateUrl: 'app/pages/dashboard/dashboardLineChart/dashboardLineChart.html'\n    };\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/dashboardLineChart/dashboardLineChart.html",
    "content": "<div id=\"amchart\"></div>"
  },
  {
    "path": "src/app/pages/dashboard/dashboardMap/DashboardMapCtrl.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .controller('DashboardMapCtrl', DashboardMapCtrl);\n\n  /** @ngInject */\n  function DashboardMapCtrl(baConfig, layoutPaths) {\n    var layoutColors = baConfig.colors;\n    var map = AmCharts.makeChart('amChartMap', {\n      type: 'map',\n      theme: 'blur',\n      zoomControl: { zoomControlEnabled: false, panControlEnabled: false },\n\n      dataProvider: {\n        map: 'worldLow',\n        zoomLevel: 3.5,\n        zoomLongitude: 10,\n        zoomLatitude: 52,\n        areas: [\n          { title: 'Austria', id: 'AT', color: layoutColors.primary, customData: '1 244', groupId: '1'},\n          { title: 'Ireland', id: 'IE', color: layoutColors.primary, customData: '1 342', groupId: '1'},\n          { title: 'Denmark', id: 'DK', color: layoutColors.primary, customData: '1 973', groupId: '1'},\n          { title: 'Finland', id: 'FI', color: layoutColors.primary, customData: '1 573', groupId: '1'},\n          { title: 'Sweden', id: 'SE', color: layoutColors.primary, customData: '1 084', groupId: '1'},\n          { title: 'Great Britain', id: 'GB', color: layoutColors.primary, customData: '1 452', groupId: '1'},\n          { title: 'Italy', id: 'IT', color: layoutColors.primary, customData: '1 321', groupId: '1'},\n          { title: 'France', id: 'FR', color: layoutColors.primary, customData: '1 112', groupId: '1'},\n          { title: 'Spain', id: 'ES', color: layoutColors.primary, customData: '1 865', groupId: '1'},\n          { title: 'Greece', id: 'GR', color: layoutColors.primary, customData: '1 453', groupId: '1'},\n          { title: 'Germany', id: 'DE', color: layoutColors.primary, customData: '1 957', groupId: '1'},\n          { title: 'Belgium', id: 'BE', color: layoutColors.primary, customData: '1 011', groupId: '1'},\n          { title: 'Luxembourg', id: 'LU', color: layoutColors.primary, customData: '1 011', groupId: '1'},\n          { title: 'Netherlands', id: 'NL', color: layoutColors.primary, customData: '1 213', groupId: '1'},\n          { title: 'Portugal', id: 'PT', color: layoutColors.primary, customData: '1 291', groupId: '1'},\n          { title: 'Lithuania', id: 'LT', color: layoutColors.successLight, customData: '567', groupId: '2'},\n          { title: 'Latvia', id: 'LV', color: layoutColors.successLight, customData: '589', groupId: '2'},\n          { title: 'Czech Republic ', id: 'CZ', color: layoutColors.successLight, customData: '785', groupId: '2'},\n          { title: 'Slovakia', id: 'SK', color: layoutColors.successLight, customData: '965', groupId: '2'},\n          { title: 'Estonia', id: 'EE', color: layoutColors.successLight, customData: '685', groupId: '2'},\n          { title: 'Hungary', id: 'HU', color: layoutColors.successLight, customData: '854', groupId: '2'},\n          { title: 'Cyprus', id: 'CY', color: layoutColors.successLight, customData: '754', groupId: '2'},\n          { title: 'Malta', id: 'MT', color: layoutColors.successLight, customData: '867', groupId: '2'},\n          { title: 'Poland', id: 'PL', color: layoutColors.successLight, customData: '759', groupId: '2'},\n          { title: 'Romania', id: 'RO', color: layoutColors.success, customData: '302', groupId: '3'},\n          { title: 'Bulgaria', id: 'BG', color: layoutColors.success, customData: '102', groupId: '3'},\n          { title: 'Slovenia', id: 'SI', color: layoutColors.danger, customData: '23', groupId: '4'},\n          { title: 'Croatia', id: 'HR', color: layoutColors.danger, customData: '96', groupId: '4'}\n        ]\n      },\n\n      areasSettings: {\n        rollOverOutlineColor: layoutColors.border,\n        rollOverColor: layoutColors.primaryDark,\n        alpha: 0.8,\n        unlistedAreasAlpha: 0.2,\n        unlistedAreasColor: layoutColors.defaultText,\n        balloonText: '[[title]]: [[customData]] users'\n      },\n\n\n      legend: {\n        width: '100%',\n        marginRight: 27,\n        marginLeft: 27,\n        equalWidths: false,\n        backgroundAlpha: 0.3,\n        backgroundColor: layoutColors.border,\n        borderColor: layoutColors.border,\n        borderAlpha: 1,\n        top: 362,\n        left: 0,\n        horizontalGap: 10,\n        data: [\n          {\n            title: 'over 1 000 users',\n            color: layoutColors.primary\n          },\n          {\n            title: '500 - 1 000 users',\n            color: layoutColors.successLight\n          },\n          {\n            title: '100 - 500 users',\n            color: layoutColors.success\n          },\n          {\n            title: '0 - 100 users',\n            color: layoutColors.danger\n          }\n        ]\n      },\n      export: {\n        enabled: true\n      },\n      creditsPosition: 'bottom-right',\n      pathToImages: layoutPaths.images.amChart\n    });\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/dashboardMap/dashboardMap.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .directive('dashboardMap', dashboardMap);\n\n  /** @ngInject */\n  function dashboardMap() {\n    return {\n      restrict: 'E',\n      controller: 'DashboardMapCtrl',\n      templateUrl: 'app/pages/dashboard/dashboardMap/dashboardMap.html'\n    };\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/dashboardMap/dashboardMap.html",
    "content": "<div id=\"amChartMap\"></div>"
  },
  {
    "path": "src/app/pages/dashboard/dashboardPieChart/DashboardPieChartCtrl.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .controller('DashboardPieChartCtrl', DashboardPieChartCtrl);\n\n  /** @ngInject */\n  function DashboardPieChartCtrl($scope, $timeout, baConfig, baUtil) {\n    var pieColor = baUtil.hexToRGB(baConfig.colors.defaultText, 0.2);\n    $scope.charts = [{\n      color: pieColor,\n      description: 'New Visits',\n      stats: '57,820',\n      icon: 'person',\n    }, {\n      color: pieColor,\n      description: 'Purchases',\n      stats: '$ 89,745',\n      icon: 'money',\n    }, {\n      color: pieColor,\n      description: 'Active Users',\n      stats: '178,391',\n      icon: 'face',\n    }, {\n      color: pieColor,\n      description: 'Returned',\n      stats: '32,592',\n      icon: 'refresh',\n    }\n    ];\n\n    function getRandomArbitrary(min, max) {\n      return Math.random() * (max - min) + min;\n    }\n\n    function loadPieCharts() {\n      $('.chart').each(function () {\n        var chart = $(this);\n        chart.easyPieChart({\n          easing: 'easeOutBounce',\n          onStep: function (from, to, percent) {\n            $(this.el).find('.percent').text(Math.round(percent));\n          },\n          barColor: chart.attr('rel'),\n          trackColor: 'rgba(0,0,0,0)',\n          size: 84,\n          scaleLength: 0,\n          animation: 2000,\n          lineWidth: 9,\n          lineCap: 'round',\n        });\n      });\n\n      $('.refresh-data').on('click', function () {\n        updatePieCharts();\n      });\n    }\n\n    function updatePieCharts() {\n      $('.pie-charts .chart').each(function(index, chart) {\n        $(chart).data('easyPieChart').update(getRandomArbitrary(55, 90));\n      });\n    }\n\n    $timeout(function () {\n      loadPieCharts();\n      updatePieCharts();\n    }, 1000);\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/dashboardPieChart/dashboardPieChart.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .directive('dashboardPieChart', dashboardPieChart);\n\n  /** @ngInject */\n  function dashboardPieChart() {\n    return {\n      restrict: 'E',\n      controller: 'DashboardPieChartCtrl',\n      templateUrl: 'app/pages/dashboard/dashboardPieChart/dashboardPieChart.html'\n    };\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/dashboardPieChart/dashboardPieChart.html",
    "content": "<div class=\"row pie-charts\">\n  <div class=\"pie-chart-item-container\" ng-repeat=\"chart in charts\">\n    <div ba-panel>\n      <div class=\"pie-chart-item\">\n        <div class=\"chart\" rel=\"{{ ::chart.color }}\" data-percent=\"60\"> <span class=\"percent\"></span> </div>\n        <div class=\"description\">\n          <div>{{ ::chart.description }}</div>\n          <div class=\"description-stats\">{{ ::chart.stats }}</div>\n        </div>\n        <i class=\"chart-icon i-{{ ::chart.icon }}\"></i>\n      </div>\n    </div>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/dashboard/dashboardTodo/DashboardTodoCtrl.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .controller('DashboardTodoCtrl', DashboardTodoCtrl);\n\n  /** @ngInject */\n  function DashboardTodoCtrl($scope, baConfig) {\n\n    $scope.transparent = baConfig.theme.blur;\n    var dashboardColors = baConfig.colors.dashboard;\n    var colors = [];\n    for (var key in dashboardColors) {\n      colors.push(dashboardColors[key]);\n    }\n\n    function getRandomColor() {\n      var i = Math.floor(Math.random() * (colors.length - 1));\n      return colors[i];\n    }\n\n    $scope.todoList = [\n      { text: 'Check me out' },\n      { text: 'Lorem ipsum dolor sit amet, possit denique oportere at his, etiam corpora deseruisse te pro' },\n      { text: 'Ex has semper alterum, expetenda dignissim' },\n      { text: 'Vim an eius ocurreret abhorreant, id nam aeque persius ornatus.' },\n      { text: 'Simul erroribus ad usu' },\n      { text: 'Ei cum solet appareat, ex est graeci mediocritatem' },\n      { text: 'Get in touch with akveo team' },\n      { text: 'Write email to business cat' },\n      { text: 'Have fun with blur admin' },\n      { text: 'What do you think?' },\n    ];\n\n    $scope.todoList.forEach(function(item) {\n      item.color = getRandomColor();\n    });\n\n    $scope.newTodoText = '';\n\n    $scope.addToDoItem = function (event, clickPlus) {\n      if (clickPlus || event.which === 13) {\n        $scope.todoList.unshift({\n          text: $scope.newTodoText,\n          color: getRandomColor(),\n        });\n        $scope.newTodoText = '';\n      }\n    };\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/dashboardTodo/dashboardTodo.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .directive('dashboardTodo', dashboardTodo);\n\n  /** @ngInject */\n  function dashboardTodo() {\n    return {\n      restrict: 'EA',\n      controller: 'DashboardTodoCtrl',\n      templateUrl: 'app/pages/dashboard/dashboardTodo/dashboardTodo.html'\n    };\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/dashboardTodo/dashboardTodo.html",
    "content": "<div class=\"task-todo-container\" ng-class=\"{'transparent': transparent}\">\n  <input type=\"text\" value=\"\" class=\"form-control task-todo\" placeholder=\"Task to do..\" ng-keyup=\"addToDoItem($event)\" ng-model=\"newTodoText\"/>\n  <i ng-click=\"addToDoItem('',true)\" class=\"add-item-icon ion-plus-round\"></i>\n  <div class=\"box-shadow-border\"></div>\n  <ul class=\"todo-list\" ui-sortable ng-model=\"todoList\">\n    <li ng-repeat=\"item in todoList\" ng-if=\"!item.deleted\" ng-init=\"activeItem=false\"\n        ng-class=\"{checked: isChecked, active: activeItem}\"\n        ng-mouseenter=\"activeItem=true\" ng-mouseleave=\"activeItem=false\">\n      <div class=\"blur-container\"><div class=\"blur-box\"></div></div>\n      <i class=\"mark\" style=\"background-color: {{::item.color}}\"></i>\n      <label class=\"todo-checkbox custom-checkbox custom-input-success\">\n        <input type=\"checkbox\" ng-model=\"isChecked\">\n        <span class=\"cut-with-dots\">{{ item.text }}</span>\n      </label>\n      <i class=\"remove-todo ion-ios-close-empty\" ng-click=\"item.deleted = true\"></i>\n    </li>\n  </ul>\n</div>\n"
  },
  {
    "path": "src/app/pages/dashboard/pieCharts/dashboardPieChart.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .service('dashboardPieChart', dashboardPieChart);\n\n  /** @ngInject */\n  function dashboardPieChart() {\n\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/popularApp/popularApp.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .directive('popularApp', popularApp);\n\n  /** @ngInject */\n  function popularApp() {\n    return {\n      restrict: 'E',\n      templateUrl: 'app/pages/dashboard/popularApp/popularApp.html'\n    };\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/popularApp/popularApp.html",
    "content": "<div class=\"popular-app-img-container\">\n  <div class=\"popular-app-img\">\n    <img ng-src=\"{{::( 'app/my-app-logo.png' | appImage )}}\"/>\n    <span class=\"logo-text\">Super&nbspApp</span>\n  </div>\n</div>\n<div class=\"popular-app-cost row\">\n  <div class=\"col-xs-9\">\n    Most Popular App\n  </div>\n  <div class=\"col-xs-3 text-right\">\n    175$\n  </div>\n</div>\n<div class=\"popular-app-info row\">\n  <div class=\"col-xs-4 text-left\">\n    <div class=\"info-label\">Total Visits</div>\n    <div>47,512</div>\n  </div>\n  <div class=\"col-xs-4 text-center\">\n    <div class=\"info-label\">New Visits</div>\n    <div>9,217</div>\n  </div>\n  <div class=\"col-xs-4 text-right\">\n    <div class=\"info-label\">Sales</div>\n    <div>2,928</div>\n  </div>\n</div>\n"
  },
  {
    "path": "src/app/pages/dashboard/trafficChart/TrafficChartCtrl.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .controller('TrafficChartCtrl', TrafficChartCtrl);\n\n  /** @ngInject */\n  function TrafficChartCtrl($scope, baConfig, colorHelper) {\n\n      $scope.transparent = baConfig.theme.blur;\n      var dashboardColors = baConfig.colors.dashboard;\n      $scope.doughnutData = {\n          labels: [\n              'Other',\n              'Search engines',\n              'Referral Traffic',\n              'Direct Traffic',\n              'Ad Campaigns'\n          ],\n          datasets: [\n              {\n                  data: [2000, 1500, 1000, 1200, 400],\n                  backgroundColor: [\n                      dashboardColors.white,\n                      dashboardColors.blueStone,\n                      dashboardColors.surfieGreen,\n                      dashboardColors.silverTree,\n                      dashboardColors.gossip\n\n                  ],\n                  hoverBackgroundColor: [\n                      colorHelper.shade(dashboardColors.white, 15),\n                      colorHelper.shade(dashboardColors.blueStone, 15),\n                      colorHelper.shade(dashboardColors.surfieGreen, 15),\n                      colorHelper.shade(dashboardColors.silverTree, 15),\n                      colorHelper.shade(dashboardColors.gossip, 15)\n                  ],\n                  percentage: [87, 22, 70, 38, 17]\n              }]\n      };\n\n      var ctx = document.getElementById('chart-area').getContext('2d');\n      window.myDoughnut = new Chart(ctx, {\n          type: 'doughnut',\n          data: $scope.doughnutData,\n          options: {\n              cutoutPercentage: 64,\n              responsive: true,\n              elements: {\n                  arc: {\n                      borderWidth: 0\n                  }\n              }\n          }\n      });\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/trafficChart/trafficChart.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .directive('trafficChart', trafficChart);\n\n  /** @ngInject */\n  function trafficChart() {\n    return {\n      restrict: 'E',\n      controller: 'TrafficChartCtrl',\n      templateUrl: 'app/pages/dashboard/trafficChart/trafficChart.html'\n    };\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/trafficChart/trafficChart.html",
    "content": "<div class=\"channels-block\" ng-class=\"{'transparent': transparent}\">\n  <div class=\"chart-bg\"></div>\n  <div class=\"traffic-chart\" id=\"trafficChart\">\n    <div class=\"canvas-holder\">\n      <canvas id=\"chart-area\" width=\"280\" height=\"280\"></canvas>\n      <div class=\"traffic-text\">\n        1,900,128\n        <span>Views Total</span>\n      </div>\n    </div>\n  </div>\n\n    <div class=\"channels-info\">\n        <div>\n            <div class=\"channels-info-item\" ng-repeat=\"label in doughnutData.labels\"\n                 ng-init=\"i = $index; data = doughnutData.datasets[0]\">\n                <div class=\"legend-color\" style=\"background-color: {{::data.backgroundColor[i]}}\"></div>\n                <p>{{::label}}<span class=\"channel-number\">+{{data.percentage[i]}}%</span></p>\n                <div class=\"progress progress-sm channel-progress\">\n                    <div class=\"progress-bar \" role=\"progressbar\"\n                         aria-valuenow=\"{{data.percentage[i]}}\" aria-valuemin=\"0\" aria-valuemax=\"100\"\n                         style=\"width: {{item.percentage}}%\">\n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>\n\n"
  },
  {
    "path": "src/app/pages/dashboard/weather/WeatherCtrl.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .controller('WeatherCtrl', WeatherCtrl);\n\n  /** @ngInject */\n  function WeatherCtrl($scope, $http, $timeout, $element) {\n    var url = 'http://api.openweathermap.org/data/2.5/forecast';\n    var method = 'GET';\n    var key = '2de143494c0b295cca9337e1e96b00e0';\n    var middleOfTheDay = 15;\n    $scope.units = 'metric';\n    $scope.weatherIcons = {\n      '01d': 'ion-ios-sunny-outline',\n      '02d': 'ion-ios-partlysunny-outline',\n      '03d': 'ion-ios-cloud-outline',\n      '04d': 'ion-ios-cloud',\n      '09d': 'ion-ios-rainy',\n      '10d': 'ion-ios-rainy-outline',\n      '11d': 'ion-ios-thunderstorm-outline',\n      '13d': 'ion-ios-snowy',\n      '50d': 'ion-ios-cloudy-outline',\n      '01n': 'ion-ios-cloudy-night-outline',\n      '02n': 'ion-ios-cloudy-night',\n      '03n': 'ion-ios-cloud-outline',\n      '04n': 'ion-ios-cloud',\n      '09n': 'ion-ios-rainy',\n      '10n': 'ion-ios-rainy-outline',\n      '11n': 'ion-ios-thunderstorm',\n      '13n': 'ion-ios-snowy',\n      '50n': 'ion-ios-cloudy-outline'\n    };\n    $scope.weather = {};\n\n    $scope.switchUnits = function (name) {\n      $scope.units = name;\n      $scope.updateWeather();\n    };\n\n    $scope.switchDay = function (day) {\n      $scope.weather.current = day;\n      makeChart($scope.weather.days[$scope.weather.current].timeTemp)\n    };\n\n    $scope.updateWeather = function () {\n      $http({\n        method: method, url: url, params: {\n          appid: key,\n          lat: $scope.geoData.geoplugin_latitude,\n          lon: $scope.geoData.geoplugin_longitude,\n          units: $scope.units\n        }\n      }).then(function success(response) {\n        saveWeatherData(response.data);\n        makeChart($scope.weather.days[$scope.weather.current].timeTemp)\n      }, function error() {\n        console.log(\"WEATHER FAILED\")\n      });\n    };\n\n    function updateGeoData() {\n      $http.jsonp('http://www.geoplugin.net/json.gp?jsoncallback=JSON_CALLBACK').then(function success(response) {\n        $scope.geoData = response.data;\n        $scope.updateWeather();\n      }, function error() {\n        console.log(\"GEO FAILED\")\n      });\n    }\n\n    function makeChart(data) {\n      AmCharts.makeChart('tempChart', {\n        type: 'serial',\n        theme: 'blur',\n        handDrawn: true,\n        categoryField: 'time',\n        dataProvider: data,\n        valueAxes: [\n          {\n            axisAlpha: 0.3,\n            gridAlpha: 0\n          }\n        ],\n        graphs: [\n          {\n            bullet: 'square',\n            fillAlphas: 0.3,\n            fillColorsField: 'lineColor',\n            legendValueText: '[[value]]',\n            lineColorField: 'lineColor',\n            title: 'Temp',\n            valueField: 'temp'\n          }\n        ],\n        categoryAxis: {\n          gridAlpha: 0,\n          axisAlpha: 0.3\n        }\n      }).write('tempChart');\n    }\n\n    function saveWeatherData(data) {\n      var firstItem = data.list[0];\n      var weather = {\n        days: [{\n          date: new Date(),\n          timeTemp: [],\n          main: firstItem.weather[0].main,\n          description: firstItem.weather[0].description,\n          icon: firstItem.weather[0].icon,\n          temp: firstItem.main.temp\n        }], current: 0\n      };\n      data.list.forEach(function (item, i) {\n        var itemDate = new Date(item.dt_txt);\n        if (itemDate.getDate() !== weather.days[weather.days.length - 1].date.getDate()) {\n          weather.days.push({date: itemDate, timeTemp: []});\n        }\n        var lastItem = weather.days[weather.days.length - 1];\n        lastItem.timeTemp.push({\n          time: itemDate.getHours(),\n          temp: item.main.temp\n        });\n        if ((weather.days.length > 1 && itemDate.getHours() == middleOfTheDay) || i == data.list.length - 1) {\n          lastItem.main = item.weather[0].main;\n          lastItem.description = item.weather[0].description;\n          lastItem.icon = item.weather[0].icon;\n          lastItem.temp = item.main.temp;\n          lastItem.date.setHours(i == data.list.length - 1 ? 0 : middleOfTheDay);\n          lastItem.date.setMinutes(0);\n        }\n      });\n      console.log(weather.days[weather.current].date);\n      weather.days = weather.days.slice(0, $element.attr('forecast') || 5);\n      $scope.weather = weather;\n    }\n\n    updateGeoData();\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/weather/weather.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.dashboard')\n      .directive('weather', weather);\n\n  /** @ngInject */\n  function weather() {\n    return {\n      restrict: 'EA',\n      controller: 'WeatherCtrl',\n      templateUrl: 'app/pages/dashboard/weather/weather.html'\n    };\n  }\n})();"
  },
  {
    "path": "src/app/pages/dashboard/weather/weather.html",
    "content": "<div class=\"weather-wrapper\">\n  <div class=\"weather-main-info\">\n    <h5 class=\"city-date font-x1dot5\">\n      <div>\n        {{geoData.geoplugin_city}} - {{geoData.geoplugin_countryName | uppercase}}\n      </div>\n      <div>\n        {{ weather.days[weather.current].date | date : 'EEEE h:mm'}}\n      </div>\n    </h5>\n    <div class=\"weather-description font-x1dot5\">\n      <i class=\"font-x3 {{weatherIcons[weather.days[weather.current].icon]}}\"></i>\n\n      <div class=\"weather-info\">{{weather.days[weather.current].main}} -\n        {{weather.days[weather.current].description}}\n      </div>\n    </div>\n    <div class=\"weather-temp font-x1dot5\">\n      <i class=\"font-x2 ion-thermometer\"></i>\n\n      <div class=\"weather-info\" ng-switch on=\"units\">\n                <span ng-switch-when=\"metric\">{{weather.days[weather.current].temp}} °C | <a\n                    ng-click=\"switchUnits('imperial')\" href>°F</a></span>\n                <span ng-switch-when=\"imperial\">{{weather.days[weather.current].temp}} °F | <a\n                    ng-click=\"switchUnits('metric')\" href>°C</a></span>\n      </div>\n    </div>\n  </div>\n  <div id=\"tempChart\" class=\"temp-by-time\"></div>\n  <div class=\"select-day\">\n    <div class=\"day\" ng-repeat=\"day in weather.days\" ng-click=\"switchDay($index)\">\n      <div>\n        <span class=\"font-x1dot25\">{{day.temp}}</span>\n      </div>\n      <div>\n        <i class=\"weatherIcon font-x2 {{weatherIcons[day.icon]}}\"></i></td>\n        <span class=\"select-day-info\">{{day.main}}</span>\n      </div>\n      <div>\n        <span>{{day.date | date : 'EEE'}}</span>\n      </div>\n    </div>\n  </div>\n</div>\n</div>\n"
  },
  {
    "path": "src/app/pages/form/form.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.form', ['ui.select', 'ngSanitize'])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('form', {\n          url: '/form',\n          template : '<ui-view autoscroll=\"true\" autoscroll-body-top></ui-view>',\n          abstract: true,\n          title: 'Form Elements',\n          sidebarMeta: {\n            icon: 'ion-compose',\n            order: 250,\n          },\n        })\n        .state('form.inputs', {\n          url: '/inputs',\n          templateUrl: 'app/pages/form/inputs/inputs.html',\n          title: 'Form Inputs',\n          sidebarMeta: {\n            order: 0,\n          },\n        })\n        .state('form.layouts', {\n          url: '/layouts',\n          templateUrl: 'app/pages/form/layouts/layouts.html',\n          title: 'Form Layouts',\n          sidebarMeta: {\n            order: 100,\n          },\n        })\n        .state('form.wizard',\n        {\n          url: '/wizard',\n          templateUrl: 'app/pages/form/wizard/wizard.html',\n          controller: 'WizardCtrl',\n          controllerAs: 'vm',\n          title: 'Form Wizard',\n          sidebarMeta: {\n            order: 200,\n          },\n        });\n  }\n})();\n"
  },
  {
    "path": "src/app/pages/form/inputs/inputs.html",
    "content": "<div class=\"widgets\">\n\n  <div class=\"row\">\n    <div class=\"col-md-6\">\n      <div\n          ba-panel\n          ba-panel-title=\"Standard Fields\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/inputs/widgets/standardFields.html'\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Tags Input\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/inputs/widgets/tagsInput/tagsInput.html'\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Input Groups\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/inputs/widgets/inputGroups.html'\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Checkboxes & Radios\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/inputs/widgets/checkboxesRadios.html'\"></div>\n      </div>\n\n      <div ba-panel ba-panel-title=\"On/Off Switches\" ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/inputs/widgets/switches/switch.html'\"></div>\n      </div>\n\n      <div ba-panel ba-panel-title=\"Old On/Off Switches (Deprecated)\" ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/inputs/widgets/oldSwitches/switch.html'\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Datepicker\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/inputs/widgets/datePickers/datePickers.html'\"></div>\n      </div>\n\n    </div>\n    <div class=\"col-md-6\">\n      <div\n          ba-panel\n          ba-panel-title=\"Validation States\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/inputs/widgets/validationStates.html'\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Selects\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/inputs/widgets/select/select.html'\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Old selects(deprecated)\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/inputs/widgets/oldSelect/select.html'\"></div>\n      </div>\n    </div>\n  </div>\n\n</div>"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/checkboxesRadios.html",
    "content": "<div class=\"checkbox-demo-row\">\n  <div class=\"input-demo checkbox-demo row\">\n    <div class=\"col-md-4\">\n      <label class=\"checkbox-inline custom-checkbox nowrap\">\n        <input type=\"checkbox\" id=\"inlineCheckbox01\" value=\"option1\">\n        <span>Check 1</span>\n      </label>\n    </div>\n    <div class=\"col-md-4\">\n      <label class=\"checkbox-inline custom-checkbox nowrap\">\n        <input type=\"checkbox\" id=\"inlineCheckbox02\" value=\"option2\">\n        <span>Check 2</span>\n      </label>\n    </div>\n    <div class=\"col-md-4\">\n      <label class=\"checkbox-inline custom-checkbox nowrap\">\n        <input type=\"checkbox\" id=\"inlineCheckbox03\" value=\"option3\">\n        <span>Check 3</span>\n      </label>\n    </div>\n  </div>\n  <div class=\"input-demo radio-demo row\">\n    <div class=\"col-md-4\">\n      <label class=\"radio-inline custom-radio nowrap\">\n        <input type=\"radio\" name=\"inlineRadioOptions\" id=\"inlineRadio1\" value=\"option1\">\n        <span>Option 1</span>\n      </label>\n    </div>\n    <div class=\"col-md-4\">\n      <label class=\"radio-inline custom-radio nowrap\">\n        <input type=\"radio\" name=\"inlineRadioOptions\" id=\"inlineRadio2\" value=\"option2\">\n        <span>Option 2</span>\n      </label>\n    </div>\n    <div class=\"col-md-4\">\n      <label class=\"radio-inline custom-radio nowrap\">\n        <input type=\"radio\" name=\"inlineRadioOptions\" id=\"inlineRadio3\" value=\"option3\">\n        <span>Option3</span>\n      </label>\n    </div>\n  </div>\n</div>\n<div>\n  <div class=\"checkbox disabled\">\n    <label class=\"custom-checkbox nowrap\">\n      <input type=\"checkbox\" value=\"\" disabled>\n      <span>Checkbox is disabled</span>\n    </label>\n  </div>\n  <div class=\"radio disabled\">\n    <label class=\"custom-radio nowrap\">\n      <input type=\"radio\" name=\"optionsRadios\" id=\"optionsRadios3\" value=\"option3\" disabled>\n      <span>Disabled option</span>\n    </label>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/datePickers/datePickers.html",
    "content": "<div class=\"datepicker row\">\n    <div class=\"col-xlg-6 col-md-12 col-sm-6\" ng-controller=\"datepickerCtrl\">\n        <h4>Inline</h4>\n        <label>Selected date is: <em>{{dt | date:'fullDate' }}</em></label>\n        <div class=\"uib-datepicker-wrap\">\n            <uib-datepicker ng-model=\"dt\" datepicker-options=\"options\"></uib-datepicker>\n        </div>\n    </div>\n\n    <div class=\"col-xlg-6 col-md-12 col-sm-6\" ng-controller=\"datepickerpopupCtrl\">\n        <h4>Popup</h4>\n        <label>Selected date is: <em>{{dt | date:'fullDate' }}</em></label>\n        <p class=\"input-group\">\n            <input type=\"text\" class=\"form-control\" uib-datepicker-popup=\"{{format}}\" datepicker-options=\"options\" ng-model=\"dt\" is-open=\"opened\" ng-required=\"true\" close-text=\"Close\" alt-input-formats=\"altInputFormats\" show-button-bar=\"false\" />\n          <span class=\"input-group-btn\">\n            <button type=\"button\" class=\"btn btn-default\" ng-click=\"open()\"><i class=\"glyphicon glyphicon-calendar\"></i></button>\n          </span>\n        </p>\n        <label>Format: <span class=\"muted-text\">(manual alternate <em>{{altInputFormats[0]}}</em>)</span></label> <select class=\"form-control\" ng-model=\"format\" ng-options=\"f for f in formats\"><option></option></select>\n    </div>\n\n</div>"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/datePickers/datepickerCtrl.js",
    "content": "/**\n * Created by n.poltoratsky\n * on 23.06.2016.\n */\n(function(){\n    'use strict';\n\n    angular.module('BlurAdmin.pages.form')\n        .controller('datepickerCtrl', datepickerCtrl);\n\n    /** @ngInject */\n    function datepickerCtrl($scope) {\n\n        $scope.dt = new Date();\n        $scope.options = {\n            showWeeks: false\n        };\n\n    }\n})();"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/datePickers/datepickerpopupCtrl.js",
    "content": "/**\n * Created by n.poltoratsky\n * on 23.06.2016.\n */\n(function(){\n    'use strict';\n\n    angular.module('BlurAdmin.pages.form')\n        .controller('datepickerpopupCtrl', datepickerpopupCtrl);\n\n    /** @ngInject */\n    function datepickerpopupCtrl($scope) {\n\n        $scope.open = open;\n        $scope.opened = false;\n        $scope.formats = ['dd-MMMM-yyyy', 'yyyy/MM/dd', 'dd.MM.yyyy', 'shortDate'];\n        $scope.format = $scope.formats[0];\n        $scope.options = {\n            showWeeks: false\n        };\n\n        function open() {\n            $scope.opened = true;\n        }\n    }\n})();"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/inputGroups.html",
    "content": "<div class=\"input-group\">\n  <span class=\"input-group-addon input-group-addon-primary addon-left\" id=\"basic-addon1\">@</span>\n  <input type=\"text\" class=\"form-control with-primary-addon\" placeholder=\"Username\" aria-describedby=\"basic-addon1\">\n</div>\n\n<div class=\"input-group\">\n  <input type=\"text\" class=\"form-control with-warning-addon\" placeholder=\"Recipient's username\" aria-describedby=\"basic-addon2\">\n  <span class=\"input-group-addon input-group-addon-warning addon-right\" id=\"basic-addon2\">@example.com</span>\n</div>\n\n<div class=\"input-group\">\n  <span class=\"input-group-addon addon-left input-group-addon-success\">$</span>\n  <input type=\"text\" class=\"form-control with-success-addon\" aria-label=\"Amount (to the nearest dollar)\">\n  <span class=\"input-group-addon addon-right input-group-addon-success\">.00</span>\n</div>\n\n<div class=\"input-group\">\n  <input type=\"text\" class=\"form-control with-danger-addon\" placeholder=\"Search for...\">\n  <span class=\"input-group-btn\">\n      <button class=\"btn btn-danger\" type=\"button\">Go!</button>\n  </span>\n</div>"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/oldSelect/OldSelectpickerPanelCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 22.04.2016\n * @deprecated\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.form')\n      .controller('OldSelectpickerPanelCtrl', OldSelectpickerPanelCtrl);\n\n  /** @ngInject */\n  function OldSelectpickerPanelCtrl() {\n    var vm = this;\n\n    vm.standardSelectItems = [\n      { label: 'Option 1', value: 1 },\n      { label: 'Option 2', value: 2 },\n      { label: 'Option 3', value: 3 },\n      { label: 'Option 4', value: 4 },\n    ];\n\n    vm.selectWithSearchItems = [\n      { label: 'Hot Dog, Fries and a Soda', value: 1 },\n      { label: 'Burger, Shake and a Smile', value: 2 },\n      { label: 'Sugar, Spice and all things nice', value: 3 },\n      { label: 'Baby Back Ribs', value: 4 },\n    ];\n\n    vm.groupedSelectItems = [\n      { label: 'Group 1 - Option 1', value: 1, group: 'Group 1' },\n      { label: 'Group 2 - Option 2', value: 2, group: 'Group 2' },\n      { label: 'Group 1 - Option 3', value: 3, group: 'Group 1' },\n      { label: 'Group 2 - Option 4', value: 4, group: 'Group 2' },\n    ];\n\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/oldSelect/select.html",
    "content": "<div ng-controller=\"OldSelectpickerPanelCtrl as selectpickerVm\">\n    <div class=\"form-group\">\n        <select class=\"form-control selectpicker\" selectpicker title=\"Standard Select\"\n                ng-model=\"selectpickerVm.standardSelected\"\n                ng-options=\"item as item.label for item in selectpickerVm.standardSelectItems\">\n        </select>\n    </div>\n    <div class=\"form-group\">\n        <select class=\"form-control selectpicker with-search\" data-live-search=\"true\" title=\"Select With Search\"\n                selectpicker\n                ng-model=\"selectpickerVm.searchSelectedItem\"\n                ng-options=\"item as item.label for item in selectpickerVm.selectWithSearchItems\">\n        </select>\n    </div>\n    <div class=\"form-group\">\n        <select class=\"form-control selectpicker\" title=\"Option Types\" selectpicker>\n            <option>Standard option</option>\n            <option data-subtext=\"option subtext\">Option with subtext</option>\n            <option disabled>Disabled Option</option>\n            <option data-icon=\"glyphicon-heart\">Option with cion</option>\n        </select>\n    </div>\n    <div class=\"form-group\">\n        <select class=\"form-control selectpicker\" disabled title=\"Disabled Select\" selectpicker>\n            <option>Option 1</option>\n            <option>Option 2</option>\n            <option>Option 3</option>\n        </select>\n    </div>\n\n    <div class=\"row\">\n        <div class=\"col-sm-6\">\n            <div class=\"form-group\">\n                <select class=\"form-control\" title=\"Select with Option Groups\" selectpicker\n                        ng-model=\"selectpickerVm.groupedSelectedItem\"\n                        ng-options=\"item as item.label group by item.group for item in selectpickerVm.groupedSelectItems\">\n                </select>\n            </div>\n        </div>\n        <div class=\"col-sm-6\">\n            <div class=\"form-group\">\n                <select class=\"form-control\" title=\"Select with Divider\" selectpicker>\n                    <option>Group 1 - Option 1</option>\n                    <option>Group 1 - Option 2</option>\n                    <option data-divider=\"true\"></option>\n                    <option>Group 2 - Option 1</option>\n                    <option>Group 2 - Option 2</option>\n                </select>\n            </div>\n        </div>\n    </div>\n\n    <div class=\"form-group\">\n        <select class=\"form-control\" title=\"Multiple Select\" multiple selectpicker\n                ng-model=\"selectpickerVm.multipleSelectedItems\"\n                ng-options=\"item as item.label for item in selectpickerVm.standardSelectItems\">\n            <option>Option 1</option>\n            <option>Option 2</option>\n            <option>Option 3</option>\n        </select>\n    </div>\n    <div class=\"form-group\">\n        <select class=\"form-control\" title=\"Multiple Select with Limit\" multiple data-max-options=\"2\" selectpicker\n                ng-model=\"selectpickerVm.multipleSelectedItems2\"\n                ng-options=\"item as item.label for item in selectpickerVm.standardSelectItems\">\n            <option>Option 1</option>\n            <option>Option 2</option>\n            <option>Option 3</option>\n        </select>\n    </div>\n\n    <div class=\"row\">\n        <div class=\"col-sm-6\">\n            <div class=\"form-group\">\n                <select class=\"form-control\" title=\"Primary Select\" data-style=\"btn-primary\" data-container=\"body\"\n                        selectpicker>\n                    <option>Option 1</option>\n                    <option>Option 2</option>\n                    <option>Option 3</option>\n                    <option>Option 4</option>\n                </select>\n            </div>\n            <div class=\"form-group\">\n                <select class=\"form-control\" title=\"Success Select\" data-style=\"btn-success\" data-container=\"body\"\n                        selectpicker>\n                    <option>Option 1</option>\n                    <option>Option 2</option>\n                    <option>Option 3</option>\n                    <option>Option 4</option>\n                </select>\n            </div>\n            <div class=\"form-group\">\n                <select class=\"form-control\" title=\"Warning Select\" data-style=\"btn-warning\" data-container=\"body\"\n                        selectpicker>\n                    <option>Option 1</option>\n                    <option>Option 2</option>\n                    <option>Option 3</option>\n                    <option>Option 4</option>\n                </select>\n            </div>\n        </div>\n        <div class=\"col-sm-6\">\n            <div class=\"form-group\">\n                <select class=\"form-control\" title=\"Info Select\" data-style=\"btn-info\" data-container=\"body\"\n                        selectpicker>\n                    <option>Option 1</option>\n                    <option>Option 2</option>\n                    <option>Option 3</option>\n                    <option>Option 4</option>\n                </select>\n            </div>\n\n            <div class=\"form-group\">\n                <select class=\"form-control\" title=\"Danger Select\" data-style=\"btn-danger\" data-container=\"body\"\n                        selectpicker>\n                    <option>Option 1</option>\n                    <option>Option 2</option>\n                    <option>Option 3</option>\n                    <option>Option 4</option>\n                </select>\n            </div>\n\n            <div class=\"form-group\">\n                <select class=\"form-control\" title=\"Inverse Select\" data-style=\"btn-inverse\" data-container=\"body\"\n                        selectpicker>\n                    <option>Option 1</option>\n                    <option>Option 2</option>\n                    <option>Option 3</option>\n                    <option>Option 4</option>\n                </select>\n            </div>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/oldSelect/selectpicker.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n * @deprecated\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.form')\n      .directive('selectpicker', selectpicker);\n\n  /** @ngInject */\n  function selectpicker() {\n    return {\n      restrict: 'A',\n      require: '?ngOptions',\n      priority: 1500, // make priority bigger than ngOptions and ngRepeat\n      link: {\n        pre: function(scope, elem, attrs) {\n          elem.append('<option data-hidden=\"true\" disabled value=\"\">' + (attrs.title || 'Select something') + '</option>')\n        },\n        post: function(scope, elem, attrs) {\n          function refresh() {\n            elem.selectpicker('refresh');\n          }\n\n          if (attrs.ngModel) {\n            scope.$watch(attrs.ngModel, refresh);\n          }\n\n          if (attrs.ngDisabled) {\n            scope.$watch(attrs.ngDisabled, refresh);\n          }\n\n          elem.selectpicker({ dropupAuto: false, hideDisabled: true });\n        }\n      }\n    };\n  }\n\n\n})();"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/oldSwitches/OldSwitchPanelCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 07.06.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.form')\n      .controller('OldSwitchPanelCtrl', OldSwitchPanelCtrl);\n\n  /** @ngInject */\n  function OldSwitchPanelCtrl() {\n    var vm = this;\n\n    vm.switcherValues = {\n      primary: true,\n      warning: true,\n      danger: true,\n      info: true,\n      success: true\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/oldSwitches/switch.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n *\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.form')\n      .directive('switch', switchDirective);\n\n  /** @ngInject */\n  function switchDirective($timeout) {\n    return {\n      restrict: 'EA',\n      replace: true,\n      scope: {\n        ngModel: '='\n      },\n      template: function(el, attrs) {\n        return '<div class=\"switch-container ' + (attrs.color || '') + '\"><input type=\"checkbox\" ng-model=\"ngModel\"></div>';\n      },\n      link: function (scope, elem, attr) {\n        var input = $(elem).find('input');\n        input.bootstrapSwitch({\n          size: 'small',\n          onColor: attr.color\n        });\n        input.on('switchChange.bootstrapSwitch', function(event, state) {\n          scope.ngModel = state;\n          scope.$apply();\n        });\n\n      }\n    };\n  }\n})();\n"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/oldSwitches/switch.html",
    "content": "<div ng-controller=\"OldSwitchPanelCtrl as switchPanelVm\" class=\"switches clearfix\">\n  <switch color=\"primary\" ng-model=\"switchPanelVm.switcherValues.primary\"></switch>\n  <switch color=\"warning\" ng-model=\"switchPanelVm.switcherValues.warning\"></switch>\n  <switch color=\"danger\" ng-model=\"switchPanelVm.switcherValues.danger\"></switch>\n  <switch color=\"info\" ng-model=\"switchPanelVm.switcherValues.info\"></switch>\n  <switch color=\"success\" ng-model=\"switchPanelVm.switcherValues.success\"></switch>\n</div>"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/select/GroupSelectpickerOptions.js",
    "content": "/**\n * @author p.maslava\n * created on 28.11.2016\n */\n\n(function() {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.form')\n    .filter('groupSelectpickerOptions', GroupSelectpickerOptions);\n\n  /** @ngInject */\n  function GroupSelectpickerOptions() {\n    return function (items, props) {\n      var out = [];\n\n      if (angular.isArray(items)) {\n        var keys = Object.keys(props);\n\n        items.forEach(function (item) {\n          var itemMatches = false;\n\n          for (var i = 0; i < keys.length; i++) {\n            var prop = keys[i];\n            var text = props[prop].toLowerCase();\n            if (item[prop].toString().toLowerCase().indexOf(text) !== -1) {\n              itemMatches = true;\n              break;\n            }\n          }\n\n          if (itemMatches) {\n            out.push(item);\n          }\n        });\n      } else {\n        // Let the output be the input untouched\n        out = items;\n      }\n\n      return out;\n    };\n  }\n})();"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/select/SelectpickerPanelCtrl.js",
    "content": "/**\n * @author p.maslava\n * created on 28.11.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.form')\n    .controller('SelectpickerPanelCtrl', SelectpickerPanelCtrl);\n\n  /** @ngInject */\n  function SelectpickerPanelCtrl() {\n\n    var vm = this;\n    vm.disabled = undefined;\n\n\n    vm.standardItem = {};\n    vm.standardSelectItems = [\n      {label: 'Option 1', value: 1},\n      {label: 'Option 2', value: 2},\n      {label: 'Option 3', value: 3},\n      {label: 'Option 4', value: 4}\n    ];\n\n    vm.withSearchItem = {};\n\n    vm.selectWithSearchItems = [\n      {label: 'Hot Dog, Fries and a Soda', value: 1},\n      {label: 'Burger, Shake and a Smile', value: 2},\n      {label: 'Sugar, Spice and all things nice', value: 3},\n      {label: 'Baby Back Ribs', value: 4}\n    ];\n    vm.groupedItem = {};\n    vm.groupedSelectItems = [\n      {label: 'Group 1 - Option 1', value: 1, group: 'Group 1'},\n      {label: 'Group 2 - Option 2', value: 2, group: 'Group 2'},\n      {label: 'Group 1 - Option 3', value: 3, group: 'Group 1'},\n      {label: 'Group 2 - Option 4', value: 4, group: 'Group 2'}\n    ];\n\n    vm.groupedByItem = {};\n    vm.groupedBySelectItems = [\n      {name: 'Adam', country: 'United States'},\n      {name: 'Amalie', country: 'Argentina'},\n      {name: 'Estefanía', country: 'Argentina'},\n      {name: 'Adrian', country: 'Ecuador'},\n      {name: 'Wladimir', country: 'Ecuador'},\n      {name: 'Samantha', country: 'United States'},\n      {name: 'Nicole', country: 'Colombia'},\n      {name: 'Natasha', country: 'Ecuador'},\n      {name: 'Michael', country: 'Colombia'},\n      {name: 'Nicolás', country: 'Colombia'}\n    ];\n    vm.someGroupFn = function (item) {\n\n      if (item.name[0] >= 'A' && item.name[0] <= 'M')\n        return 'From A - M';\n      if (item.name[0] >= 'N' && item.name[0] <= 'Z')\n        return 'From N - Z';\n    };\n\n    vm.disableItem = {};\n    vm.disableItems = [];\n\n    vm.multipleItem = {};\n    vm.multipleSelectItems = [\n      {label: 'Option 1', value: 1},\n      {label: 'Option 2', value: 2},\n      {label: 'Option 3', value: 3},\n      {label: 'Option 4', value: 4},\n      {label: 'Option 5', value: 5},\n      {label: 'Option 6', value: 6},\n      {label: 'Option 7', value: 7},\n      {label: 'Option 8', value: 8}\n    ];\n    vm.withDeleteItem = {};\n    vm.withDeleteSelectItems = [\n      {label: 'Option 1', value: 1},\n      {label: 'Option 2', value: 2},\n      {label: 'Option 3', value: 3},\n      {label: 'Option 4', value: 4},\n      {label: 'Option 5', value: 5},\n      {label: 'Option 6', value: 6},\n      {label: 'Option 7', value: 7},\n      {label: 'Option 8', value: 8}\n    ];\n\n  }\n})();\n\n\n"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/select/select.html",
    "content": "<div class=\"ng-cloak\" ng-controller=\"SelectpickerPanelCtrl as selectpickerVm\">\n  <div class=\"form-group\">\n    <ui-select ng-model=\"selectpickerVm.selectedItem.selected\"\n               class=\"btn-group bootstrap-select form-control\"\n               ng-disabled=\"false\"\n               append-to-body=\"true\"\n               search-enabled=\"false\">\n      <ui-select-match placeholder=\"Standard Select\">\n        <span> {{$select.selected.label}}</span>\n      </ui-select-match>\n      <ui-select-choices repeat=\"standardItem in selectpickerVm.standardSelectItems | filter: $select.search\">\n        <span ng-bind-html=\"standardItem.label\"></span>\n      </ui-select-choices>\n    </ui-select>\n  </div>\n  <div class=\"form-group \">\n    <ui-select ng-model=\"selectpickerVm.withSearchItem.selected\"\n               class=\"btn-group bootstrap-select form-control\"\n               ng-disabled=\"false\"\n               append-to-body=\"true\"\n               search-enabled=\"true\">\n      <ui-select-match placeholder=\"Select With Search\">\n        {{$select.selected.label}}\n      </ui-select-match>\n      <ui-select-choices\n          repeat=\"withSearchItem in selectpickerVm.selectWithSearchItems | filter: $select.search\">\n        <span ng-bind-html=\"withSearchItem.label\"></span>\n      </ui-select-choices>\n    </ui-select>\n  </div>\n\n  <div class=\"form-group\">\n    <ui-select ng-model=\"selectpickerVm.disableItem.selected\"\n               class=\"btn-group bootstrap-select form-control\"\n               ng-disabled=\"true\"\n               append-to-body=\"true\"\n               search-enabled=\"false\">\n      <ui-select-match placeholder=\"Disabled Selection\">\n        <span> {{$select.selected.label}}</span>\n      </ui-select-match>\n      <ui-select-choices repeat=\"disableItem in selectpickerVm.disableItems | filter: $select.search\">\n        <span ng-bind-html=\"disableItem.label\"></span>\n      </ui-select-choices>\n    </ui-select>\n  </div>\n\n\n  <div class=\"form-group\">\n    <ui-select ng-model=\"selectpickerVm.groupedItems.selected\"\n               class=\"btn-group bootstrap-select form-control\"\n               ng-disabled=\"false\"\n               append-to-body=\"true\"\n               search-enabled=\"true\">\n      <ui-select-match placeholder=\"Select With Option Groups\">\n        {{$select.selected.label}}\n      </ui-select-match>\n      <ui-select-choices\n          repeat=\"groupedItems in selectpickerVm.groupedSelectItems | groupSelectpickerOptions: {label: $select.search}\"\n          group-by=\"'group'\">\n        <span ng-bind-html=\"groupedItems.label | highlight: $select.search\"></span>\n      </ui-select-choices>\n    </ui-select>\n  </div>\n\n  <div class=\"form-group\">\n    <ui-select ng-model=\"selectpickerVm.groupedByItems.selected\"\n               class=\"btn-group bootstrap-select form-control\"\n               ng-disabled=\"false\"\n               append-to-body=\"true\"\n               search-enabled=\"true\">\n      <ui-select-match placeholder=\"Select With Option Groups Function\">\n        {{$select.selected.name}}\n      </ui-select-match>\n      <ui-select-choices\n          repeat=\"groupedByItems in selectpickerVm.groupedBySelectItems | filter: $select.search\"\n          group-by=\"selectpickerVm.someGroupFn\">\n        <span ng-bind-html=\"groupedByItems.name | highlight: $select.search\"></span>\n      </ui-select-choices>\n    </ui-select>\n  </div>\n\n\n  <div class=\"form-group\">\n    <ui-select multiple ng-model=\"selectpickerVm.multipleItem.selected\"\n               ng-disabled=\"false\"\n               search-enabled=\"true\"\n               append-to-body=\"true\"\n               class=\"form-control \">\n      <ui-select-match placeholder=\"Multiple Select\">\n        {{$item.label}}\n      </ui-select-match>\n      <ui-select-choices repeat=\"multipleItem in selectpickerVm.multipleSelectItems | filter: $select.search\">\n        {{multipleItem.label}}\n      </ui-select-choices>\n    </ui-select>\n  </div>\n\n\n  <div class=\"form-group \">\n    <div class=\"input-group\">\n\n      <ui-select multiple\n                 ng-model=\"selectpickerVm.withDeleteItem.selected\"\n                 ng-disabled=\"false\"\n                 search-enabled=\"true\"\n                 append-to-body=\"true\"\n                 class=\"form-control form-control\">\n        <ui-select-match placeholder=\"Select With Clear Button\">\n          {{$item.label}}\n        </ui-select-match>\n        <ui-select-choices\n            repeat=\"withDeleteItem in selectpickerVm.withDeleteSelectItems | filter: $select.search\">\n          {{withDeleteItem.label}}\n        </ui-select-choices>\n      </ui-select>\n      <span class=\"input-group-btn\">\n        <button type=\"button\" ng-click=\"selectpickerVm.withDeleteItem.selected = undefined\"\n               class=\"btn btn-danger\">\n          <span class=\"glyphicon glyphicon-trash\"></span>\n        </button>\n      </span>\n    </div>\n  </div>\n</div>\n"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/standardFields.html",
    "content": "<form>\n  <div class=\"form-group\">\n    <label for=\"input01\">Text</label>\n    <input type=\"text\" class=\"form-control\" id=\"input01\" placeholder=\"Text\">\n  </div>\n  <div class=\"form-group\">\n    <label for=\"input02\">Password</label>\n    <input type=\"password\" class=\"form-control\" id=\"input02\" placeholder=\"Password\">\n  </div>\n  <div class=\"form-group\">\n    <label for=\"input03\">Rounded Corners</label>\n    <input type=\"text\" class=\"form-control form-control-rounded\" id=\"input03\" placeholder=\"Rounded Corners\">\n  </div>\n  <div class=\"form-group\">\n    <label for=\"input04\">With help</label>\n    <input type=\"text\" class=\"form-control\" id=\"input04\" placeholder=\"With help\">\n    <span class=\"help-block sub-little-text\">A block of help text that breaks onto a new line and may extend beyond one line.</span>\n  </div>\n  <div class=\"form-group\">\n    <label for=\"input05\">Disabled Input</label>\n    <input type=\"text\" class=\"form-control\" id=\"input05\" placeholder=\"Disabled Input\" disabled>\n  </div>\n\n  <div class=\"form-group\">\n    <label for=\"textarea01\">Textarea</label>\n    <textarea placeholder=\"Default Input\" class=\"form-control\" id=\"textarea01\"></textarea>\n  </div>\n\n  <div class=\"form-group\">\n    <input type=\"text\" class=\"form-control input-sm\" id=\"input2\" placeholder=\"Small Input\">\n  </div>\n  <div class=\"form-group\">\n    <input type=\"text\" class=\"form-control input-lg\" id=\"input4\" placeholder=\"Large Input\">\n  </div>\n</form>"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/switches/SwitchDemoPanelCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 10.12.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.form')\n      .controller('SwitchDemoPanelCtrl', SwitchDemoPanelCtrl);\n\n  /** @ngInject */\n  function SwitchDemoPanelCtrl() {\n    var vm = this;\n    vm.switches = {\n      s1: true,\n      s2: false,\n      s3: true,\n      s4: true,\n      s5: false\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/switches/switch.html",
    "content": "<div ng-controller=\"SwitchDemoPanelCtrl as vm\">\n  <ba-switcher switcher-style=\"primary\" switcher-value=\"vm.switches.s1\"></ba-switcher>\n  <ba-switcher switcher-style=\"success\" switcher-value=\"vm.switches.s2\"></ba-switcher>\n  <ba-switcher switcher-style=\"warning\" switcher-value=\"vm.switches.s3\"></ba-switcher>\n  <ba-switcher switcher-style=\"danger\" switcher-value=\"vm.switches.s4\"></ba-switcher>\n  <ba-switcher switcher-style=\"info\" switcher-value=\"vm.switches.s5\"></ba-switcher>\n</div>\n\n\n"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/tagsInput/tagsInput.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.form')\n      .directive('tagInput', tagInput);\n\n  /** @ngInject */\n  function tagInput() {\n    return {\n      restrict: 'A',\n      link: function( $scope, elem, attr) {\n        $(elem).tagsinput({\n          tagClass:  'label label-' + attr.tagInput\n        });\n      }\n    };\n  }\n})();"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/tagsInput/tagsInput.html",
    "content": "<div class=\"form-group\">\n  <div class=\"form-group\">\n    <input type=\"text\" tag-input=\"primary\" value=\"Amsterdam,Washington,Sydney,Beijing,Cairo\" data-role=\"tagsinput\" placeholder=\"Add Tag\">\n  </div>\n  <div class=\"form-group\">\n    <input type=\"text\" tag-input=\"warning\" value=\"Minsk,Prague,Vilnius,Warsaw\" data-role=\"tagsinput\" placeholder=\"Add Tag\">\n  </div>\n  <div class=\"form-group\">\n    <input type=\"text\" tag-input=\"danger\" value=\"London,Berlin,Paris,Rome,Munich\" data-role=\"tagsinput\" placeholder=\"Add Tag\">\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/form/inputs/widgets/validationStates.html",
    "content": "<div class=\"form-group has-success\">\n  <label class=\"control-label\" for=\"inputSuccess1\">Input with success</label>\n  <input type=\"text\" class=\"form-control\" id=\"inputSuccess1\">\n</div>\n<div class=\"form-group has-warning\">\n  <label class=\"control-label\" for=\"inputWarning1\">Input with warning</label>\n  <input type=\"text\" class=\"form-control\" id=\"inputWarning1\">\n</div>\n<div class=\"form-group has-error\">\n  <label class=\"control-label\" for=\"inputError1\">Input with error</label>\n  <input type=\"text\" class=\"form-control\" id=\"inputError1\">\n</div>\n<div class=\"has-success\">\n  <div class=\"checkbox\">\n    <label class=\"custom-checkbox\">\n      <input type=\"checkbox\" id=\"checkboxSuccess\" value=\"option1\">\n      <span>Checkbox with success</span>\n    </label>\n  </div>\n</div>\n<div class=\"has-warning\">\n  <div class=\"checkbox\">\n    <label class=\"custom-checkbox\">\n      <input type=\"checkbox\" id=\"checkboxWarning\" value=\"option1\">\n      <span>Checkbox with warning</span>\n    </label>\n  </div>\n</div>\n<div class=\"has-error\">\n  <div class=\"checkbox\">\n    <label class=\"custom-checkbox\">\n      <input type=\"checkbox\" id=\"checkboxError\" value=\"option1\">\n      <span>Checkbox with error</span>\n    </label>\n  </div>\n</div>\n\n<div class=\"form-group has-success has-feedback\">\n  <label class=\"control-label\" for=\"inputSuccess2\">Input with success</label>\n  <input type=\"text\" class=\"form-control\" id=\"inputSuccess2\" aria-describedby=\"inputSuccess2Status\">\n  <i class=\"ion-checkmark-circled form-control-feedback\" aria-hidden=\"true\"></i>\n  <span id=\"inputSuccess2Status\" class=\"sr-only\">(success)</span>\n</div>\n<div class=\"form-group has-warning has-feedback\">\n  <label class=\"control-label\" for=\"inputWarning2\">Input with warning</label>\n  <input type=\"text\" class=\"form-control\" id=\"inputWarning2\" aria-describedby=\"inputWarning2Status\">\n  <i class=\"ion-alert-circled form-control-feedback\" aria-hidden=\"true\"></i>\n  <span id=\"inputWarning2Status\" class=\"sr-only\">(warning)</span>\n</div>\n<div class=\"form-group has-error has-feedback\">\n  <label class=\"control-label\" for=\"inputError2\">Input with error</label>\n  <input type=\"text\" class=\"form-control\" id=\"inputError2\" aria-describedby=\"inputError2Status\">\n  <i class=\"ion-android-cancel form-control-feedback\" aria-hidden=\"true\"></i>\n  <span id=\"inputError2Status\" class=\"sr-only\">(error)</span>\n</div>\n<div class=\"form-group has-success has-feedback\">\n  <label class=\"control-label\" for=\"inputGroupSuccess1\">Input group with success</label>\n  <div class=\"input-group\">\n    <span class=\"input-group-addon addon-left\">@</span>\n    <input type=\"text\" class=\"form-control\" id=\"inputGroupSuccess1\" aria-describedby=\"inputGroupSuccess1Status\">\n  </div>\n  <i class=\"ion-checkmark-circled form-control-feedback\" aria-hidden=\"true\"></i>\n  <span id=\"inputGroupSuccess1Status\" class=\"sr-only\">(success)</span>\n</div>"
  },
  {
    "path": "src/app/pages/form/layouts/layouts.html",
    "content": "<div class=\"widgets\">\n\n  <div class=\"row\">\n    <div class=\"col-md-12\"\n         ba-panel\n         ba-panel-title=\"Inline Form\"\n         ba-panel-class=\"with-scroll\">\n      <div ng-include=\"'app/pages/form/layouts/widgets/inlineForm.html'\"></div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-6\">\n      <div\n          ba-panel\n          ba-panel-title=\"Basic Form\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/layouts/widgets/basicForm.html'\"></div>\n      </div>\n\n      <div\n          ba-panel\n          ba-panel-title=\"Horizontal Form\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/layouts/widgets/horizontalForm.html'\"></div>\n      </div>\n    </div>\n    <div class=\"col-md-6\">\n      <div\n          ba-panel\n          ba-panel-title=\"Form Without Labels\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/layouts/widgets/formWithoutLabels.html'\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Block Form\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/form/layouts/widgets/blockForm.html'\"></div>\n      </div>\n    </div>\n  </div>\n\n</div>"
  },
  {
    "path": "src/app/pages/form/layouts/widgets/basicForm.html",
    "content": "<form>\n  <div class=\"form-group\">\n    <label for=\"exampleInputEmail1\">Email address</label>\n    <input type=\"email\" class=\"form-control\" id=\"exampleInputEmail1\" placeholder=\"Email\">\n  </div>\n  <div class=\"form-group\">\n    <label for=\"exampleInputPassword1\">Password</label>\n    <input type=\"password\" class=\"form-control\" id=\"exampleInputPassword1\" placeholder=\"Password\">\n  </div>\n  <div class=\"checkbox\">\n    <label class=\"custom-checkbox\">\n      <input type=\"checkbox\">\n      <span>Check me out</span>\n    </label>\n  </div>\n  <button type=\"submit\" class=\"btn btn-danger\">Submit</button>\n</form>"
  },
  {
    "path": "src/app/pages/form/layouts/widgets/blockForm.html",
    "content": "<div class=\"row\">\n  <div class=\"col-sm-6\">\n    <div class=\"form-group\">\n      <label for=\"inputFirstName\">First Name</label>\n      <input type=\"text\" class=\"form-control\" id=\"inputFirstName\" placeholder=\"First Name\">\n    </div>\n  </div>\n  <div class=\"col-sm-6\">\n    <div class=\"form-group\">\n      <label for=\"inputLastName\">Last Name</label>\n      <input type=\"text\" class=\"form-control\" id=\"inputLastName\" placeholder=\"Last Name\">\n    </div>\n  </div>\n</div>\n<div class=\"row\">\n  <div class=\"col-sm-6\">\n    <div class=\"form-group\">\n      <label for=\"inputFirstName\">Email</label>\n      <input type=\"email\" class=\"form-control\" id=\"inputEmail\" placeholder=\"Email\">\n    </div>\n  </div>\n  <div class=\"col-sm-6\">\n    <div class=\"form-group\">\n      <label for=\"inputWebsite\">Website</label>\n      <input type=\"text\" class=\"form-control\" id=\"inputWebsite\" placeholder=\"Website\">\n    </div>\n  </div>\n</div>\n<button type=\"submit\" class=\"btn btn-primary\">Submit</button>"
  },
  {
    "path": "src/app/pages/form/layouts/widgets/formWithoutLabels.html",
    "content": "<form>\n  <div class=\"form-group\">\n    <input type=\"text\" class=\"form-control\" placeholder=\"Recipients\">\n  </div>\n  <div class=\"form-group\">\n    <input type=\"text\" class=\"form-control\" placeholder=\"Subject\">\n  </div>\n  <div class=\"form-group\">\n    <textarea class=\"form-control\" placeholder=\"Message\"></textarea>\n  </div>\n  <button type=\"submit\" class=\"btn btn-success\">Send</button>\n</form>"
  },
  {
    "path": "src/app/pages/form/layouts/widgets/horizontalForm.html",
    "content": "<form class=\"form-horizontal\">\n  <div class=\"form-group\">\n    <label for=\"inputEmail3\" class=\"col-sm-2 control-label\">Email</label>\n    <div class=\"col-sm-10\">\n      <input type=\"email\" class=\"form-control\" id=\"inputEmail3\" placeholder=\"Email\">\n    </div>\n  </div>\n  <div class=\"form-group\">\n    <label for=\"inputPassword3\" class=\"col-sm-2 control-label\">Password</label>\n    <div class=\"col-sm-10\">\n      <input type=\"password\" class=\"form-control\" id=\"inputPassword3\" placeholder=\"Password\">\n    </div>\n  </div>\n  <div class=\"form-group\">\n    <div class=\"col-sm-offset-2 col-sm-10\">\n      <div class=\"checkbox\">\n        <label class=\"custom-checkbox\">\n          <input type=\"checkbox\">\n          <span>Remember me</span>\n        </label>\n      </div>\n    </div>\n  </div>\n  <div class=\"form-group\">\n    <div class=\"col-sm-offset-2 col-sm-10\">\n      <button type=\"submit\" class=\"btn btn-warning\">Sign in</button>\n    </div>\n  </div>\n</form>"
  },
  {
    "path": "src/app/pages/form/layouts/widgets/inlineForm.html",
    "content": "<form class=\"row form-inline\">\n  <div class=\"form-group col-sm-3 col-xs-6\">\n    <input type=\"text\" class=\"form-control\" id=\"exampleInputName2\" placeholder=\"Name\">\n  </div>\n  <div class=\"form-group col-sm-3 col-xs-6\">\n    <input type=\"email\" class=\"form-control\" id=\"exampleInputEmail2\" placeholder=\"Email\">\n  </div>\n  <div class=\"checkbox\">\n    <label class=\"custom-checkbox\">\n      <input type=\"checkbox\">\n      <span>Remember me</span>\n    </label>\n  </div>\n  <button type=\"submit\" class=\"btn btn-primary\">Send invitation</button>\n</form>"
  },
  {
    "path": "src/app/pages/form/wizard/wizard.html",
    "content": "<div class=\"widgets\">\n\n    <div class=\"row\">\n        <div class=\"col-md-12\">\n            <div ba-panel ba-panel-title=\"Form Wizard\" ba-panel-class=\"with-scroll\">\n                <ba-wizard>\n                    <ba-wizard-step title=\"Personal info\" form=\"vm.personalInfoForm\">\n                        <form name=\"vm.personalInfoForm\" novalidate>\n                            <div class=\"row\">\n                                <div class=\"col-md-6\">\n                                    <div class=\"form-group has-feedback\"\n                                         ng-class=\"{'has-error': vm.personalInfoForm.username.$invalid && (vm.personalInfoForm.username.$dirty || vm.personalInfoForm.$submitted)}\">\n                                        <label for=\"exampleUsername1\">Username</label>\n                                        <input type=\"text\" class=\"form-control\" id=\"exampleUsername1\" name=\"username\" placeholder=\"Username\" ng-model=\"vm.personalInfo.username\" required>\n                                        <span class=\"help-block error-block basic-block\">Required</span>\n                                    </div>\n                                    <div class=\"form-group\" ng-class=\"{'has-error': vm.personalInfoForm.email.$invalid && (vm.personalInfoForm.email.$dirty || vm.personalInfoForm.$submitted)}\">\n                                        <label for=\"exampleInputEmail1\">Email address</label>\n                                        <input type=\"email\" class=\"form-control\" id=\"exampleInputEmail1\" name=\"email\" placeholder=\"Email\" ng-model=\"vm.personalInfo.email\" required>\n                                        <span class=\"help-block error-block basic-block\">Proper email required</span>\n                                    </div>\n                                </div>\n                                <div class=\"col-md-6\">\n                                    <div class=\"form-group\" ng-class=\"{'has-error': vm.personalInfoForm.password.$invalid && (vm.personalInfoForm.password.$dirty || vm.personalInfoForm.$submitted)}\">\n                                        <label for=\"exampleInputPassword1\">Password</label>\n                                        <input type=\"password\" class=\"form-control\" id=\"exampleInputPassword1\" name=\"password\" placeholder=\"Password\" ng-model=\"vm.personalInfo.password\" required>\n                                        <span class=\"help-block error-block basic-block\">Required</span>\n                                    </div>\n                                    <div class=\"form-group\"  ng-class=\"{'has-error': !vm.arePersonalInfoPasswordsEqual() && (vm.personalInfoForm.confirmPassword.$dirty || vm.personalInfoForm.$submitted)}\">\n                                        <label for=\"exampleInputConfirmPassword1\">Confirm Password</label>\n                                        <input type=\"password\" class=\"form-control\" id=\"exampleInputConfirmPassword1\" name=\"confirmPassword\" placeholder=\"Confirm Password\" ng-model=\"vm.personalInfo.confirmPassword\" required>\n                                        <span class=\"help-block error-block basic-block\">Passwords should match</span>\n                                    </div>\n                                </div>\n                            </div>\n                        </form>\n                    </ba-wizard-step>\n                    <ba-wizard-step title=\"Product Info\" form=\"vm.productInfoForm\">\n                        <form name=\"vm.productInfoForm\" novalidate>\n                            <div class=\"row\">\n                                <div class=\"col-md-6\">\n                                    <div class=\"form-group has-feedback\"\n                                         ng-class=\"{'has-error': vm.productInfoForm.productName.$invalid && (vm.productInfoForm.productName.$dirty || vm.productInfoForm.$submitted)}\">\n                                        <label for=\"productName\">Product name</label>\n                                        <input type=\"text\" class=\"form-control\" id=\"productName\" name=\"productName\" placeholder=\"Product name\" ng-model=\"vm.productInfo.productName\" required>\n                                        <span class=\"help-block error-block basic-block\">Required</span>\n                                    </div>\n                                    <div class=\"form-group\" ng-class=\"{'has-error': vm.productInfoForm.productId.$invalid && (vm.productInfoForm.productId.$dirty || vm.productInfoForm.$submitted)}\">\n                                        <label for=\"productId\">Product id</label>\n                                        <input type=\"text\" class=\"form-control\" id=\"productId\" name=\"productId\" placeholder=\"productId\" ng-model=\"vm.productInfo.productId\" required>\n                                        <span class=\"help-block error-block basic-block\">Required</span>\n                                    </div>\n                                </div>\n                                <div class=\"col-md-6\">\n                                    <div class=\"form-group\">\n                                        <label for=\"productName\">Category</label>\n                                        <select class=\"form-control\" title=\"Category\" selectpicker>\n                                            <option selected>Electronics</option>\n                                            <option>Toys</option>\n                                            <option>Accessories</option>\n                                        </select>\n                                    </div>\n                                </div>\n                            </div>\n                        </form>\n                    </ba-wizard-step>\n                    <ba-wizard-step title=\"Shipment\"  form=\"vm.addressForm\">\n                        <form name=\"vm.addressForm\" novalidate>\n                            <div class=\"row\">\n                                <div class=\"col-md-6\">\n                                    <div class=\"form-group has-feedback\"\n                                         ng-class=\"{'has-error': vm.addressForm.address.$invalid && (vm.addressForm.address.$dirty || vm.addressForm.$submitted)}\">\n                                        <label for=\"productName\">Shipment address</label>\n                                        <input type=\"text\" class=\"form-control\" id=\"address\" name=\"address\" placeholder=\"Shipment address\" ng-model=\"vm.shipment.address\" required>\n                                        <span class=\"help-block error-block basic-block\">Required</span>\n                                    </div>\n                                </div>\n                                <div class=\"col-md-6\">\n                                    <div class=\"form-group\">\n                                        <label for=\"productName\">Shipment method</label>\n                                        <select class=\"form-control\" title=\"Category\" selectpicker>\n                                            <option selected>Fast & expensive</option>\n                                            <option>Cheap & free</option>\n                                        </select>\n                                    </div>\n                                </div>\n                            </div>\n                            <div class=\"checkbox\">\n                                <label class=\"custom-checkbox\">\n                                    <input type=\"checkbox\">\n                                    <span>Save shipment info</span>\n                                </label>\n                            </div>\n                        </form>\n                    </ba-wizard-step>\n                    <ba-wizard-step title=\"Finish\">\n                        <form class=\"form-horizontal\" name=\"vm.finishForm\" novalidate>\n                            Congratulations! You have successfully filled the form!\n                        </form>\n                    </ba-wizard-step>\n                </ba-wizard>\n            </div>\n        </div>\n    </div>\n\n</div>"
  },
  {
    "path": "src/app/pages/form/wizard/wizrdCtrl.js",
    "content": "(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.form')\n      .controller('WizardCtrl', WizardCtrl);\n\n  /** @ngInject */\n  function WizardCtrl($scope) {\n   var vm = this;\n\n    vm.personalInfo = {};\n    vm.productInfo = {};\n    vm.shipment = {};\n\n    vm.arePersonalInfoPasswordsEqual = function () {\n      return vm.personalInfo.confirmPassword && vm.personalInfo.password == vm.personalInfo.confirmPassword;\n    };\n  }\n\n})();\n\n"
  },
  {
    "path": "src/app/pages/maps/google-maps/GmapPageCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.maps')\n      .controller('GmapPageCtrl', GmapPageCtrl);\n\n  /** @ngInject */\n  function GmapPageCtrl($timeout) {\n    function initialize() {\n      var mapCanvas = document.getElementById('google-maps');\n      var mapOptions = {\n        center: new google.maps.LatLng(44.5403, -78.5463),\n        zoom: 8,\n        mapTypeId: google.maps.MapTypeId.ROADMAP\n      };\n      var map = new google.maps.Map(mapCanvas, mapOptions);\n    }\n\n    $timeout(function(){\n      initialize();\n    }, 100);\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/maps/google-maps/google-maps.html",
    "content": "<div ba-panel ba-panel-title=\"Google Maps\" class=\"viewport100\">\n  <div id=\"google-maps\"></div>\n</div>\n"
  },
  {
    "path": "src/app/pages/maps/leaflet/LeafletPageCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.maps')\n      .controller('LeafletPageCtrl', LeafletPageCtrl);\n\n  /** @ngInject */\n  function LeafletPageCtrl($timeout) {\n    function initialize() {\n      L.Icon.Default.imagePath = 'assets/img/theme/vendor/leaflet/dist/images';\n      var map = L.map(document.getElementById('leaflet-map')).setView([51.505, -0.09], 13);\n      L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {\n        attribution: '&copy; <a href=\"http://osm.org/copyright\">OpenStreetMap</a> contributors'\n      }).addTo(map);\n\n      L.marker([51.5, -0.09]).addTo(map)\n          .bindPopup('A pretty CSS3 popup.<br> Easily customizable.')\n          .openPopup();\n    }\n\n    $timeout(function(){\n      initialize();\n    }, 100);\n\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/maps/leaflet/leaflet.html",
    "content": "<div ba-panel ba-panel-title=\"Leaflet\" class=\"viewport100\">\n  <div id=\"leaflet-map\"></div>\n</div>"
  },
  {
    "path": "src/app/pages/maps/map-bubbles/MapBubblePageCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.maps')\n      .controller('MapBubblePageCtrl', MapBubblePageCtrl);\n\n  /** @ngInject */\n  function MapBubblePageCtrl(baConfig, $timeout, layoutPaths) {\n    var layoutColors = baConfig.colors;\n    var latlong = {};\n    latlong['AD'] = {'latitude': 42.5, 'longitude': 1.5};\n    latlong['AE'] = {'latitude': 24, 'longitude': 54};\n    latlong['AF'] = {'latitude': 33, 'longitude': 65};\n    latlong['AG'] = {'latitude': 17.05, 'longitude': -61.8};\n    latlong['AI'] = {'latitude': 18.25, 'longitude': -63.1667};\n    latlong['AL'] = {'latitude': 41, 'longitude': 20};\n    latlong['AM'] = {'latitude': 40, 'longitude': 45};\n    latlong['AN'] = {'latitude': 12.25, 'longitude': -68.75};\n    latlong['AO'] = {'latitude': -12.5, 'longitude': 18.5};\n    latlong['AP'] = {'latitude': 35, 'longitude': 105};\n    latlong['AQ'] = {'latitude': -90, 'longitude': 0};\n    latlong['AR'] = {'latitude': -34, 'longitude': -64};\n    latlong['AS'] = {'latitude': -14.3333, 'longitude': -170};\n    latlong['AT'] = {'latitude': 47.3333, 'longitude': 13.3333};\n    latlong['AU'] = {'latitude': -27, 'longitude': 133};\n    latlong['AW'] = {'latitude': 12.5, 'longitude': -69.9667};\n    latlong['AZ'] = {'latitude': 40.5, 'longitude': 47.5};\n    latlong['BA'] = {'latitude': 44, 'longitude': 18};\n    latlong['BB'] = {'latitude': 13.1667, 'longitude': -59.5333};\n    latlong['BD'] = {'latitude': 24, 'longitude': 90};\n    latlong['BE'] = {'latitude': 50.8333, 'longitude': 4};\n    latlong['BF'] = {'latitude': 13, 'longitude': -2};\n    latlong['BG'] = {'latitude': 43, 'longitude': 25};\n    latlong['BH'] = {'latitude': 26, 'longitude': 50.55};\n    latlong['BI'] = {'latitude': -3.5, 'longitude': 30};\n    latlong['BJ'] = {'latitude': 9.5, 'longitude': 2.25};\n    latlong['BM'] = {'latitude': 32.3333, 'longitude': -64.75};\n    latlong['BN'] = {'latitude': 4.5, 'longitude': 114.6667};\n    latlong['BO'] = {'latitude': -17, 'longitude': -65};\n    latlong['BR'] = {'latitude': -10, 'longitude': -55};\n    latlong['BS'] = {'latitude': 24.25, 'longitude': -76};\n    latlong['BT'] = {'latitude': 27.5, 'longitude': 90.5};\n    latlong['BV'] = {'latitude': -54.4333, 'longitude': 3.4};\n    latlong['BW'] = {'latitude': -22, 'longitude': 24};\n    latlong['BY'] = {'latitude': 53, 'longitude': 28};\n    latlong['BZ'] = {'latitude': 17.25, 'longitude': -88.75};\n    latlong['CA'] = {'latitude': 54, 'longitude': -100};\n    latlong['CC'] = {'latitude': -12.5, 'longitude': 96.8333};\n    latlong['CD'] = {'latitude': 0, 'longitude': 25};\n    latlong['CF'] = {'latitude': 7, 'longitude': 21};\n    latlong['CG'] = {'latitude': -1, 'longitude': 15};\n    latlong['CH'] = {'latitude': 47, 'longitude': 8};\n    latlong['CI'] = {'latitude': 8, 'longitude': -5};\n    latlong['CK'] = {'latitude': -21.2333, 'longitude': -159.7667};\n    latlong['CL'] = {'latitude': -30, 'longitude': -71};\n    latlong['CM'] = {'latitude': 6, 'longitude': 12};\n    latlong['CN'] = {'latitude': 35, 'longitude': 105};\n    latlong['CO'] = {'latitude': 4, 'longitude': -72};\n    latlong['CR'] = {'latitude': 10, 'longitude': -84};\n    latlong['CU'] = {'latitude': 21.5, 'longitude': -80};\n    latlong['CV'] = {'latitude': 16, 'longitude': -24};\n    latlong['CX'] = {'latitude': -10.5, 'longitude': 105.6667};\n    latlong['CY'] = {'latitude': 35, 'longitude': 33};\n    latlong['CZ'] = {'latitude': 49.75, 'longitude': 15.5};\n    latlong['DE'] = {'latitude': 51, 'longitude': 9};\n    latlong['DJ'] = {'latitude': 11.5, 'longitude': 43};\n    latlong['DK'] = {'latitude': 56, 'longitude': 10};\n    latlong['DM'] = {'latitude': 15.4167, 'longitude': -61.3333};\n    latlong['DO'] = {'latitude': 19, 'longitude': -70.6667};\n    latlong['DZ'] = {'latitude': 28, 'longitude': 3};\n    latlong['EC'] = {'latitude': -2, 'longitude': -77.5};\n    latlong['EE'] = {'latitude': 59, 'longitude': 26};\n    latlong['EG'] = {'latitude': 27, 'longitude': 30};\n    latlong['EH'] = {'latitude': 24.5, 'longitude': -13};\n    latlong['ER'] = {'latitude': 15, 'longitude': 39};\n    latlong['ES'] = {'latitude': 40, 'longitude': -4};\n    latlong['ET'] = {'latitude': 8, 'longitude': 38};\n    latlong['EU'] = {'latitude': 47, 'longitude': 8};\n    latlong['FI'] = {'latitude': 62, 'longitude': 26};\n    latlong['FJ'] = {'latitude': -18, 'longitude': 175};\n    latlong['FK'] = {'latitude': -51.75, 'longitude': -59};\n    latlong['FM'] = {'latitude': 6.9167, 'longitude': 158.25};\n    latlong['FO'] = {'latitude': 62, 'longitude': -7};\n    latlong['FR'] = {'latitude': 46, 'longitude': 2};\n    latlong['GA'] = {'latitude': -1, 'longitude': 11.75};\n    latlong['GB'] = {'latitude': 54, 'longitude': -2};\n    latlong['GD'] = {'latitude': 12.1167, 'longitude': -61.6667};\n    latlong['GE'] = {'latitude': 42, 'longitude': 43.5};\n    latlong['GF'] = {'latitude': 4, 'longitude': -53};\n    latlong['GH'] = {'latitude': 8, 'longitude': -2};\n    latlong['GI'] = {'latitude': 36.1833, 'longitude': -5.3667};\n    latlong['GL'] = {'latitude': 72, 'longitude': -40};\n    latlong['GM'] = {'latitude': 13.4667, 'longitude': -16.5667};\n    latlong['GN'] = {'latitude': 11, 'longitude': -10};\n    latlong['GP'] = {'latitude': 16.25, 'longitude': -61.5833};\n    latlong['GQ'] = {'latitude': 2, 'longitude': 10};\n    latlong['GR'] = {'latitude': 39, 'longitude': 22};\n    latlong['GS'] = {'latitude': -54.5, 'longitude': -37};\n    latlong['GT'] = {'latitude': 15.5, 'longitude': -90.25};\n    latlong['GU'] = {'latitude': 13.4667, 'longitude': 144.7833};\n    latlong['GW'] = {'latitude': 12, 'longitude': -15};\n    latlong['GY'] = {'latitude': 5, 'longitude': -59};\n    latlong['HK'] = {'latitude': 22.25, 'longitude': 114.1667};\n    latlong['HM'] = {'latitude': -53.1, 'longitude': 72.5167};\n    latlong['HN'] = {'latitude': 15, 'longitude': -86.5};\n    latlong['HR'] = {'latitude': 45.1667, 'longitude': 15.5};\n    latlong['HT'] = {'latitude': 19, 'longitude': -72.4167};\n    latlong['HU'] = {'latitude': 47, 'longitude': 20};\n    latlong['ID'] = {'latitude': -5, 'longitude': 120};\n    latlong['IE'] = {'latitude': 53, 'longitude': -8};\n    latlong['IL'] = {'latitude': 31.5, 'longitude': 34.75};\n    latlong['IN'] = {'latitude': 20, 'longitude': 77};\n    latlong['IO'] = {'latitude': -6, 'longitude': 71.5};\n    latlong['IQ'] = {'latitude': 33, 'longitude': 44};\n    latlong['IR'] = {'latitude': 32, 'longitude': 53};\n    latlong['IS'] = {'latitude': 65, 'longitude': -18};\n    latlong['IT'] = {'latitude': 42.8333, 'longitude': 12.8333};\n    latlong['JM'] = {'latitude': 18.25, 'longitude': -77.5};\n    latlong['JO'] = {'latitude': 31, 'longitude': 36};\n    latlong['JP'] = {'latitude': 36, 'longitude': 138};\n    latlong['KE'] = {'latitude': 1, 'longitude': 38};\n    latlong['KG'] = {'latitude': 41, 'longitude': 75};\n    latlong['KH'] = {'latitude': 13, 'longitude': 105};\n    latlong['KI'] = {'latitude': 1.4167, 'longitude': 173};\n    latlong['KM'] = {'latitude': -12.1667, 'longitude': 44.25};\n    latlong['KN'] = {'latitude': 17.3333, 'longitude': -62.75};\n    latlong['KP'] = {'latitude': 40, 'longitude': 127};\n    latlong['KR'] = {'latitude': 37, 'longitude': 127.5};\n    latlong['KW'] = {'latitude': 29.3375, 'longitude': 47.6581};\n    latlong['KY'] = {'latitude': 19.5, 'longitude': -80.5};\n    latlong['KZ'] = {'latitude': 48, 'longitude': 68};\n    latlong['LA'] = {'latitude': 18, 'longitude': 105};\n    latlong['LB'] = {'latitude': 33.8333, 'longitude': 35.8333};\n    latlong['LC'] = {'latitude': 13.8833, 'longitude': -61.1333};\n    latlong['LI'] = {'latitude': 47.1667, 'longitude': 9.5333};\n    latlong['LK'] = {'latitude': 7, 'longitude': 81};\n    latlong['LR'] = {'latitude': 6.5, 'longitude': -9.5};\n    latlong['LS'] = {'latitude': -29.5, 'longitude': 28.5};\n    latlong['LT'] = {'latitude': 55, 'longitude': 24};\n    latlong['LU'] = {'latitude': 49.75, 'longitude': 6};\n    latlong['LV'] = {'latitude': 57, 'longitude': 25};\n    latlong['LY'] = {'latitude': 25, 'longitude': 17};\n    latlong['MA'] = {'latitude': 32, 'longitude': -5};\n    latlong['MC'] = {'latitude': 43.7333, 'longitude': 7.4};\n    latlong['MD'] = {'latitude': 47, 'longitude': 29};\n    latlong['ME'] = {'latitude': 42.5, 'longitude': 19.4};\n    latlong['MG'] = {'latitude': -20, 'longitude': 47};\n    latlong['MH'] = {'latitude': 9, 'longitude': 168};\n    latlong['MK'] = {'latitude': 41.8333, 'longitude': 22};\n    latlong['ML'] = {'latitude': 17, 'longitude': -4};\n    latlong['MM'] = {'latitude': 22, 'longitude': 98};\n    latlong['MN'] = {'latitude': 46, 'longitude': 105};\n    latlong['MO'] = {'latitude': 22.1667, 'longitude': 113.55};\n    latlong['MP'] = {'latitude': 15.2, 'longitude': 145.75};\n    latlong['MQ'] = {'latitude': 14.6667, 'longitude': -61};\n    latlong['MR'] = {'latitude': 20, 'longitude': -12};\n    latlong['MS'] = {'latitude': 16.75, 'longitude': -62.2};\n    latlong['MT'] = {'latitude': 35.8333, 'longitude': 14.5833};\n    latlong['MU'] = {'latitude': -20.2833, 'longitude': 57.55};\n    latlong['MV'] = {'latitude': 3.25, 'longitude': 73};\n    latlong['MW'] = {'latitude': -13.5, 'longitude': 34};\n    latlong['MX'] = {'latitude': 23, 'longitude': -102};\n    latlong['MY'] = {'latitude': 2.5, 'longitude': 112.5};\n    latlong['MZ'] = {'latitude': -18.25, 'longitude': 35};\n    latlong['NA'] = {'latitude': -22, 'longitude': 17};\n    latlong['NC'] = {'latitude': -21.5, 'longitude': 165.5};\n    latlong['NE'] = {'latitude': 16, 'longitude': 8};\n    latlong['NF'] = {'latitude': -29.0333, 'longitude': 167.95};\n    latlong['NG'] = {'latitude': 10, 'longitude': 8};\n    latlong['NI'] = {'latitude': 13, 'longitude': -85};\n    latlong['NL'] = {'latitude': 52.5, 'longitude': 5.75};\n    latlong['NO'] = {'latitude': 62, 'longitude': 10};\n    latlong['NP'] = {'latitude': 28, 'longitude': 84};\n    latlong['NR'] = {'latitude': -0.5333, 'longitude': 166.9167};\n    latlong['NU'] = {'latitude': -19.0333, 'longitude': -169.8667};\n    latlong['NZ'] = {'latitude': -41, 'longitude': 174};\n    latlong['OM'] = {'latitude': 21, 'longitude': 57};\n    latlong['PA'] = {'latitude': 9, 'longitude': -80};\n    latlong['PE'] = {'latitude': -10, 'longitude': -76};\n    latlong['PF'] = {'latitude': -15, 'longitude': -140};\n    latlong['PG'] = {'latitude': -6, 'longitude': 147};\n    latlong['PH'] = {'latitude': 13, 'longitude': 122};\n    latlong['PK'] = {'latitude': 30, 'longitude': 70};\n    latlong['PL'] = {'latitude': 52, 'longitude': 20};\n    latlong['PM'] = {'latitude': 46.8333, 'longitude': -56.3333};\n    latlong['PR'] = {'latitude': 18.25, 'longitude': -66.5};\n    latlong['PS'] = {'latitude': 32, 'longitude': 35.25};\n    latlong['PT'] = {'latitude': 39.5, 'longitude': -8};\n    latlong['PW'] = {'latitude': 7.5, 'longitude': 134.5};\n    latlong['PY'] = {'latitude': -23, 'longitude': -58};\n    latlong['QA'] = {'latitude': 25.5, 'longitude': 51.25};\n    latlong['RE'] = {'latitude': -21.1, 'longitude': 55.6};\n    latlong['RO'] = {'latitude': 46, 'longitude': 25};\n    latlong['RS'] = {'latitude': 44, 'longitude': 21};\n    latlong['RU'] = {'latitude': 60, 'longitude': 100};\n    latlong['RW'] = {'latitude': -2, 'longitude': 30};\n    latlong['SA'] = {'latitude': 25, 'longitude': 45};\n    latlong['SB'] = {'latitude': -8, 'longitude': 159};\n    latlong['SC'] = {'latitude': -4.5833, 'longitude': 55.6667};\n    latlong['SD'] = {'latitude': 15, 'longitude': 30};\n    latlong['SE'] = {'latitude': 62, 'longitude': 15};\n    latlong['SG'] = {'latitude': 1.3667, 'longitude': 103.8};\n    latlong['SH'] = {'latitude': -15.9333, 'longitude': -5.7};\n    latlong['SI'] = {'latitude': 46, 'longitude': 15};\n    latlong['SJ'] = {'latitude': 78, 'longitude': 20};\n    latlong['SK'] = {'latitude': 48.6667, 'longitude': 19.5};\n    latlong['SL'] = {'latitude': 8.5, 'longitude': -11.5};\n    latlong['SM'] = {'latitude': 43.7667, 'longitude': 12.4167};\n    latlong['SN'] = {'latitude': 14, 'longitude': -14};\n    latlong['SO'] = {'latitude': 10, 'longitude': 49};\n    latlong['SR'] = {'latitude': 4, 'longitude': -56};\n    latlong['ST'] = {'latitude': 1, 'longitude': 7};\n    latlong['SV'] = {'latitude': 13.8333, 'longitude': -88.9167};\n    latlong['SY'] = {'latitude': 35, 'longitude': 38};\n    latlong['SZ'] = {'latitude': -26.5, 'longitude': 31.5};\n    latlong['TC'] = {'latitude': 21.75, 'longitude': -71.5833};\n    latlong['TD'] = {'latitude': 15, 'longitude': 19};\n    latlong['TF'] = {'latitude': -43, 'longitude': 67};\n    latlong['TG'] = {'latitude': 8, 'longitude': 1.1667};\n    latlong['TH'] = {'latitude': 15, 'longitude': 100};\n    latlong['TJ'] = {'latitude': 39, 'longitude': 71};\n    latlong['TK'] = {'latitude': -9, 'longitude': -172};\n    latlong['TM'] = {'latitude': 40, 'longitude': 60};\n    latlong['TN'] = {'latitude': 34, 'longitude': 9};\n    latlong['TO'] = {'latitude': -20, 'longitude': -175};\n    latlong['TR'] = {'latitude': 39, 'longitude': 35};\n    latlong['TT'] = {'latitude': 11, 'longitude': -61};\n    latlong['TV'] = {'latitude': -8, 'longitude': 178};\n    latlong['TW'] = {'latitude': 23.5, 'longitude': 121};\n    latlong['TZ'] = {'latitude': -6, 'longitude': 35};\n    latlong['UA'] = {'latitude': 49, 'longitude': 32};\n    latlong['UG'] = {'latitude': 1, 'longitude': 32};\n    latlong['UM'] = {'latitude': 19.2833, 'longitude': 166.6};\n    latlong['US'] = {'latitude': 38, 'longitude': -97};\n    latlong['UY'] = {'latitude': -33, 'longitude': -56};\n    latlong['UZ'] = {'latitude': 41, 'longitude': 64};\n    latlong['VA'] = {'latitude': 41.9, 'longitude': 12.45};\n    latlong['VC'] = {'latitude': 13.25, 'longitude': -61.2};\n    latlong['VE'] = {'latitude': 8, 'longitude': -66};\n    latlong['VG'] = {'latitude': 18.5, 'longitude': -64.5};\n    latlong['VI'] = {'latitude': 18.3333, 'longitude': -64.8333};\n    latlong['VN'] = {'latitude': 16, 'longitude': 106};\n    latlong['VU'] = {'latitude': -16, 'longitude': 167};\n    latlong['WF'] = {'latitude': -13.3, 'longitude': -176.2};\n    latlong['WS'] = {'latitude': -13.5833, 'longitude': -172.3333};\n    latlong['YE'] = {'latitude': 15, 'longitude': 48};\n    latlong['YT'] = {'latitude': -12.8333, 'longitude': 45.1667};\n    latlong['ZA'] = {'latitude': -29, 'longitude': 24};\n    latlong['ZM'] = {'latitude': -15, 'longitude': 30};\n    latlong['ZW'] = {'latitude': -20, 'longitude': 30};\n\n    var mapData = [\n      {'code': 'AF', 'name': 'Afghanistan', 'value': 32358260, 'color': layoutColors.primaryDark},\n      {'code': 'AL', 'name': 'Albania', 'value': 3215988, 'color': layoutColors.warning},\n      {'code': 'DZ', 'name': 'Algeria', 'value': 35980193, 'color': layoutColors.danger},\n      {'code': 'AO', 'name': 'Angola', 'value': 19618432, 'color': layoutColors.danger},\n      {'code': 'AR', 'name': 'Argentina', 'value': 40764561, 'color': layoutColors.success},\n      {'code': 'AM', 'name': 'Armenia', 'value': 3100236, 'color': layoutColors.warning},\n      {'code': 'AU', 'name': 'Australia', 'value': 22605732, 'color': layoutColors.warningDark},\n      {'code': 'AT', 'name': 'Austria', 'value': 8413429, 'color': layoutColors.warning},\n      {'code': 'AZ', 'name': 'Azerbaijan', 'value': 9306023, 'color': layoutColors.warning},\n      {'code': 'BH', 'name': 'Bahrain', 'value': 1323535, 'color': layoutColors.primaryDark},\n      {'code': 'BD', 'name': 'Bangladesh', 'value': 150493658, 'color': layoutColors.primaryDark},\n      {'code': 'BY', 'name': 'Belarus', 'value': 9559441, 'color': layoutColors.warning},\n      {'code': 'BE', 'name': 'Belgium', 'value': 10754056, 'color': layoutColors.warning},\n      {'code': 'BJ', 'name': 'Benin', 'value': 9099922, 'color': layoutColors.danger},\n      {'code': 'BT', 'name': 'Bhutan', 'value': 738267, 'color': layoutColors.primaryDark},\n      {'code': 'BO', 'name': 'Bolivia', 'value': 10088108, 'color': layoutColors.success},\n      {'code': 'BA', 'name': 'Bosnia and Herzegovina', 'value': 3752228, 'color': layoutColors.warning},\n      {'code': 'BW', 'name': 'Botswana', 'value': 2030738, 'color': layoutColors.danger},\n      {'code': 'BR', 'name': 'Brazil', 'value': 196655014, 'color': layoutColors.success},\n      {'code': 'BN', 'name': 'Brunei', 'value': 405938, 'color': layoutColors.primaryDark},\n      {'code': 'BG', 'name': 'Bulgaria', 'value': 7446135, 'color': layoutColors.warning},\n      {'code': 'BF', 'name': 'Burkina Faso', 'value': 16967845, 'color': layoutColors.danger},\n      {'code': 'BI', 'name': 'Burundi', 'value': 8575172, 'color': layoutColors.danger},\n      {'code': 'KH', 'name': 'Cambodia', 'value': 14305183, 'color': layoutColors.primaryDark},\n      {'code': 'CM', 'name': 'Cameroon', 'value': 20030362, 'color': layoutColors.danger},\n      {'code': 'CA', 'name': 'Canada', 'value': 34349561, 'color': layoutColors.primary},\n      {'code': 'CV', 'name': 'Cape Verde', 'value': 500585, 'color': layoutColors.danger},\n      {'code': 'CF', 'name': 'Central African Rep.', 'value': 4486837, 'color': layoutColors.danger},\n      {'code': 'TD', 'name': 'Chad', 'value': 11525496, 'color': layoutColors.danger},\n      {'code': 'CL', 'name': 'Chile', 'value': 17269525, 'color': layoutColors.success},\n      {'code': 'CN', 'name': 'China', 'value': 1347565324, 'color': layoutColors.primaryDark},\n      {'code': 'CO', 'name': 'Colombia', 'value': 46927125, 'color': layoutColors.success},\n      {'code': 'KM', 'name': 'Comoros', 'value': 753943, 'color': layoutColors.danger},\n      {'code': 'CD', 'name': 'Congo, Dem. Rep.', 'value': 67757577, 'color': layoutColors.danger},\n      {'code': 'CG', 'name': 'Congo, Rep.', 'value': 4139748, 'color': layoutColors.danger},\n      {'code': 'CR', 'name': 'Costa Rica', 'value': 4726575, 'color': layoutColors.primary},\n      {'code': 'CI', 'name': 'Cote d\\'Ivoire', 'value': 20152894, 'color': layoutColors.danger},\n      {'code': 'HR', 'name': 'Croatia', 'value': 4395560, 'color': layoutColors.warning},\n      {'code': 'CU', 'name': 'Cuba', 'value': 11253665, 'color': layoutColors.primary},\n      {'code': 'CY', 'name': 'Cyprus', 'value': 1116564, 'color': layoutColors.warning},\n      {'code': 'CZ', 'name': 'Czech Rep.', 'value': 10534293, 'color': layoutColors.warning},\n      {'code': 'DK', 'name': 'Denmark', 'value': 5572594, 'color': layoutColors.warning},\n      {'code': 'DJ', 'name': 'Djibouti', 'value': 905564, 'color': layoutColors.danger},\n      {'code': 'DO', 'name': 'Dominican Rep.', 'value': 10056181, 'color': layoutColors.primary},\n      {'code': 'EC', 'name': 'Ecuador', 'value': 14666055, 'color': layoutColors.success},\n      {'code': 'EG', 'name': 'Egypt', 'value': 82536770, 'color': layoutColors.danger},\n      {'code': 'SV', 'name': 'El Salvador', 'value': 6227491, 'color': layoutColors.primary},\n      {'code': 'GQ', 'name': 'Equatorial Guinea', 'value': 720213, 'color': layoutColors.danger},\n      {'code': 'ER', 'name': 'Eritrea', 'value': 5415280, 'color': layoutColors.danger},\n      {'code': 'EE', 'name': 'Estonia', 'value': 1340537, 'color': layoutColors.warning},\n      {'code': 'ET', 'name': 'Ethiopia', 'value': 84734262, 'color': layoutColors.danger},\n      {'code': 'FJ', 'name': 'Fiji', 'value': 868406, 'color': layoutColors.warningDark},\n      {'code': 'FI', 'name': 'Finland', 'value': 5384770, 'color': layoutColors.warning},\n      {'code': 'FR', 'name': 'France', 'value': 63125894, 'color': layoutColors.warning},\n      {'code': 'GA', 'name': 'Gabon', 'value': 1534262, 'color': layoutColors.danger},\n      {'code': 'GM', 'name': 'Gambia', 'value': 1776103, 'color': layoutColors.danger},\n      {'code': 'GE', 'name': 'Georgia', 'value': 4329026, 'color': layoutColors.warning},\n      {'code': 'DE', 'name': 'Germany', 'value': 82162512, 'color': layoutColors.warning},\n      {'code': 'GH', 'name': 'Ghana', 'value': 24965816, 'color': layoutColors.danger},\n      {'code': 'GR', 'name': 'Greece', 'value': 11390031, 'color': layoutColors.warning},\n      {'code': 'GT', 'name': 'Guatemala', 'value': 14757316, 'color': layoutColors.primary},\n      {'code': 'GN', 'name': 'Guinea', 'value': 10221808, 'color': layoutColors.danger},\n      {'code': 'GW', 'name': 'Guinea-Bissau', 'value': 1547061, 'color': layoutColors.danger},\n      {'code': 'GY', 'name': 'Guyana', 'value': 756040, 'color': layoutColors.success},\n      {'code': 'HT', 'name': 'Haiti', 'value': 10123787, 'color': layoutColors.primary},\n      {'code': 'HN', 'name': 'Honduras', 'value': 7754687, 'color': layoutColors.primary},\n      {'code': 'HK', 'name': 'Hong Kong, China', 'value': 7122187, 'color': layoutColors.primaryDark},\n      {'code': 'HU', 'name': 'Hungary', 'value': 9966116, 'color': layoutColors.warning},\n      {'code': 'IS', 'name': 'Iceland', 'value': 324366, 'color': layoutColors.warning},\n      {'code': 'IN', 'name': 'India', 'value': 1241491960, 'color': layoutColors.primaryDark},\n      {'code': 'ID', 'name': 'Indonesia', 'value': 242325638, 'color': layoutColors.primaryDark},\n      {'code': 'IR', 'name': 'Iran', 'value': 74798599, 'color': layoutColors.primaryDark},\n      {'code': 'IQ', 'name': 'Iraq', 'value': 32664942, 'color': layoutColors.primaryDark},\n      {'code': 'IE', 'name': 'Ireland', 'value': 4525802, 'color': layoutColors.warning},\n      {'code': 'IL', 'name': 'Israel', 'value': 7562194, 'color': layoutColors.primaryDark},\n      {'code': 'IT', 'name': 'Italy', 'value': 60788694, 'color': layoutColors.warning},\n      {'code': 'JM', 'name': 'Jamaica', 'value': 2751273, 'color': layoutColors.primary},\n      {'code': 'JP', 'name': 'Japan', 'value': 126497241, 'color': layoutColors.primaryDark},\n      {'code': 'JO', 'name': 'Jordan', 'value': 6330169, 'color': layoutColors.primaryDark},\n      {'code': 'KZ', 'name': 'Kazakhstan', 'value': 16206750, 'color': layoutColors.primaryDark},\n      {'code': 'KE', 'name': 'Kenya', 'value': 41609728, 'color': layoutColors.danger},\n      {'code': 'KP', 'name': 'Korea, Dem. Rep.', 'value': 24451285, 'color': layoutColors.primaryDark},\n      {'code': 'KR', 'name': 'Korea, Rep.', 'value': 48391343, 'color': layoutColors.primaryDark},\n      {'code': 'KW', 'name': 'Kuwait', 'value': 2818042, 'color': layoutColors.primaryDark},\n      {'code': 'KG', 'name': 'Kyrgyzstan', 'value': 5392580, 'color': layoutColors.primaryDark},\n      {'code': 'LA', 'name': 'Laos', 'value': 6288037, 'color': layoutColors.primaryDark},\n      {'code': 'LV', 'name': 'Latvia', 'value': 2243142, 'color': layoutColors.warning},\n      {'code': 'LB', 'name': 'Lebanon', 'value': 4259405, 'color': layoutColors.primaryDark},\n      {'code': 'LS', 'name': 'Lesotho', 'value': 2193843, 'color': layoutColors.danger},\n      {'code': 'LR', 'name': 'Liberia', 'value': 4128572, 'color': layoutColors.danger},\n      {'code': 'LY', 'name': 'Libya', 'value': 6422772, 'color': layoutColors.danger},\n      {'code': 'LT', 'name': 'Lithuania', 'value': 3307481, 'color': layoutColors.warning},\n      {'code': 'LU', 'name': 'Luxembourg', 'value': 515941, 'color': layoutColors.warning},\n      {'code': 'MK', 'name': 'Macedonia, FYR', 'value': 2063893, 'color': layoutColors.warning},\n      {'code': 'MG', 'name': 'Madagascar', 'value': 21315135, 'color': layoutColors.danger},\n      {'code': 'MW', 'name': 'Malawi', 'value': 15380888, 'color': layoutColors.danger},\n      {'code': 'MY', 'name': 'Malaysia', 'value': 28859154, 'color': layoutColors.primaryDark},\n      {'code': 'ML', 'name': 'Mali', 'value': 15839538, 'color': layoutColors.danger},\n      {'code': 'MR', 'name': 'Mauritania', 'value': 3541540, 'color': layoutColors.danger},\n      {'code': 'MU', 'name': 'Mauritius', 'value': 1306593, 'color': layoutColors.danger},\n      {'code': 'MX', 'name': 'Mexico', 'value': 114793341, 'color': layoutColors.primary},\n      {'code': 'MD', 'name': 'Moldova', 'value': 3544864, 'color': layoutColors.warning},\n      {'code': 'MN', 'name': 'Mongolia', 'value': 2800114, 'color': layoutColors.primaryDark},\n      {'code': 'ME', 'name': 'Montenegro', 'value': 632261, 'color': layoutColors.warning},\n      {'code': 'MA', 'name': 'Morocco', 'value': 32272974, 'color': layoutColors.danger},\n      {'code': 'MZ', 'name': 'Mozambique', 'value': 23929708, 'color': layoutColors.danger},\n      {'code': 'MM', 'name': 'Myanmar', 'value': 48336763, 'color': layoutColors.primaryDark},\n      {'code': 'NA', 'name': 'Namibia', 'value': 2324004, 'color': layoutColors.danger},\n      {'code': 'NP', 'name': 'Nepal', 'value': 30485798, 'color': layoutColors.primaryDark},\n      {'code': 'NL', 'name': 'Netherlands', 'value': 16664746, 'color': layoutColors.warning},\n      {'code': 'NZ', 'name': 'New Zealand', 'value': 4414509, 'color': layoutColors.warningDark},\n      {'code': 'NI', 'name': 'Nicaragua', 'value': 5869859, 'color': layoutColors.primary},\n      {'code': 'NE', 'name': 'Niger', 'value': 16068994, 'color': layoutColors.danger},\n      {'code': 'NG', 'name': 'Nigeria', 'value': 162470737, 'color': layoutColors.danger},\n      {'code': 'NO', 'name': 'Norway', 'value': 4924848, 'color': layoutColors.warning},\n      {'code': 'OM', 'name': 'Oman', 'value': 2846145, 'color': layoutColors.primaryDark},\n      {'code': 'PK', 'name': 'Pakistan', 'value': 176745364, 'color': layoutColors.primaryDark},\n      {'code': 'PA', 'name': 'Panama', 'value': 3571185, 'color': layoutColors.primary},\n      {'code': 'PG', 'name': 'Papua New Guinea', 'value': 7013829, 'color': layoutColors.warningDark},\n      {'code': 'PY', 'name': 'Paraguay', 'value': 6568290, 'color': layoutColors.success},\n      {'code': 'PE', 'name': 'Peru', 'value': 29399817, 'color': layoutColors.success},\n      {'code': 'PH', 'name': 'Philippines', 'value': 94852030, 'color': layoutColors.primaryDark},\n      {'code': 'PL', 'name': 'Poland', 'value': 38298949, 'color': layoutColors.warning},\n      {'code': 'PT', 'name': 'Portugal', 'value': 10689663, 'color': layoutColors.warning},\n      {'code': 'PR', 'name': 'Puerto Rico', 'value': 3745526, 'color': layoutColors.primary},\n      {'code': 'QA', 'name': 'Qatar', 'value': 1870041, 'color': layoutColors.primaryDark},\n      {'code': 'RO', 'name': 'Romania', 'value': 21436495, 'color': layoutColors.warning},\n      {'code': 'RU', 'name': 'Russia', 'value': 142835555, 'color': layoutColors.warning},\n      {'code': 'RW', 'name': 'Rwanda', 'value': 10942950, 'color': layoutColors.danger},\n      {'code': 'SA', 'name': 'Saudi Arabia', 'value': 28082541, 'color': layoutColors.primaryDark},\n      {'code': 'SN', 'name': 'Senegal', 'value': 12767556, 'color': layoutColors.danger},\n      {'code': 'RS', 'name': 'Serbia', 'value': 9853969, 'color': layoutColors.warning},\n      {'code': 'SL', 'name': 'Sierra Leone', 'value': 5997486, 'color': layoutColors.danger},\n      {'code': 'SG', 'name': 'Singapore', 'value': 5187933, 'color': layoutColors.primaryDark},\n      {'code': 'SK', 'name': 'Slovak Republic', 'value': 5471502, 'color': layoutColors.warning},\n      {'code': 'SI', 'name': 'Slovenia', 'value': 2035012, 'color': layoutColors.warning},\n      {'code': 'SB', 'name': 'Solomon Islands', 'value': 552267, 'color': layoutColors.warningDark},\n      {'code': 'SO', 'name': 'Somalia', 'value': 9556873, 'color': layoutColors.danger},\n      {'code': 'ZA', 'name': 'South Africa', 'value': 50459978, 'color': layoutColors.danger},\n      {'code': 'ES', 'name': 'Spain', 'value': 46454895, 'color': layoutColors.warning},\n      {'code': 'LK', 'name': 'Sri Lanka', 'value': 21045394, 'color': layoutColors.primaryDark},\n      {'code': 'SD', 'name': 'Sudan', 'value': 34735288, 'color': layoutColors.danger},\n      {'code': 'SR', 'name': 'Suriname', 'value': 529419, 'color': layoutColors.success},\n      {'code': 'SZ', 'name': 'Swaziland', 'value': 1203330, 'color': layoutColors.danger},\n      {'code': 'SE', 'name': 'Sweden', 'value': 9440747, 'color': layoutColors.warning},\n      {'code': 'CH', 'name': 'Switzerland', 'value': 7701690, 'color': layoutColors.warning},\n      {'code': 'SY', 'name': 'Syria', 'value': 20766037, 'color': layoutColors.primaryDark},\n      {'code': 'TW', 'name': 'Taiwan', 'value': 23072000, 'color': layoutColors.primaryDark},\n      {'code': 'TJ', 'name': 'Tajikistan', 'value': 6976958, 'color': layoutColors.primaryDark},\n      {'code': 'TZ', 'name': 'Tanzania', 'value': 46218486, 'color': layoutColors.danger},\n      {'code': 'TH', 'name': 'Thailand', 'value': 69518555, 'color': layoutColors.primaryDark},\n      {'code': 'TG', 'name': 'Togo', 'value': 6154813, 'color': layoutColors.danger},\n      {'code': 'TT', 'name': 'Trinidad and Tobago', 'value': 1346350, 'color': layoutColors.primary},\n      {'code': 'TN', 'name': 'Tunisia', 'value': 10594057, 'color': layoutColors.danger},\n      {'code': 'TR', 'name': 'Turkey', 'value': 73639596, 'color': layoutColors.warning},\n      {'code': 'TM', 'name': 'Turkmenistan', 'value': 5105301, 'color': layoutColors.primaryDark},\n      {'code': 'UG', 'name': 'Uganda', 'value': 34509205, 'color': layoutColors.danger},\n      {'code': 'UA', 'name': 'Ukraine', 'value': 45190180, 'color': layoutColors.warning},\n      {'code': 'AE', 'name': 'United Arab Emirates', 'value': 7890924, 'color': layoutColors.primaryDark},\n      {'code': 'GB', 'name': 'United Kingdom', 'value': 62417431, 'color': layoutColors.warning},\n      {'code': 'US', 'name': 'United States', 'value': 313085380, 'color': layoutColors.primary},\n      {'code': 'UY', 'name': 'Uruguay', 'value': 3380008, 'color': layoutColors.success},\n      {'code': 'UZ', 'name': 'Uzbekistan', 'value': 27760267, 'color': layoutColors.primaryDark},\n      {'code': 'VE', 'name': 'Venezuela', 'value': 29436891, 'color': layoutColors.success},\n      {'code': 'PS', 'name': 'West Bank and Gaza', 'value': 4152369, 'color': layoutColors.primaryDark},\n      {'code': 'VN', 'name': 'Vietnam', 'value': 88791996, 'color': layoutColors.primaryDark},\n      {'code': 'YE', 'name': 'Yemen, Rep.', 'value': 24799880, 'color': layoutColors.primaryDark},\n      {'code': 'ZM', 'name': 'Zambia', 'value': 13474959, 'color': layoutColors.danger},\n      {'code': 'ZW', 'name': 'Zimbabwe', 'value': 12754378, 'color': layoutColors.danger}\n    ];\n\n    var map;\n    var minBulletSize = 3;\n    var maxBulletSize = 70;\n    var min = Infinity;\n    var max = -Infinity;\n\n    // get min and max values\n    for (var i = 0; i < mapData.length; i++) {\n      var value = mapData[i].value;\n      if (value < min) {\n        min = value;\n      }\n      if (value > max) {\n        max = value;\n      }\n    }\n\n    // build map\n    AmCharts.theme = AmCharts.themes.blur;\n    map = new AmCharts.AmMap();\n\n    map.addTitle('Population of the World in 2011', 14);\n    map.addTitle('source: Gapminder', 11);\n    map.areasSettings = {\n      unlistedAreasColor: '#000000',\n      unlistedAreasAlpha: 0.1\n    };\n    map.imagesSettings.balloonText = '<span style=\"font-size:14px;\"><b>[[title]]</b>: [[value]]</span>';\n    map.pathToImages = layoutPaths.images.amMap;\n\n    var dataProvider = {\n      mapVar: AmCharts.maps.worldLow,\n      images: []\n    };\n\n    // it's better to use circle square to show difference between values, not a radius\n    var maxSquare = maxBulletSize * maxBulletSize * 2 * Math.PI;\n    var minSquare = minBulletSize * minBulletSize * 2 * Math.PI;\n\n    // create circle for each country\n    for (var i = 0; i < mapData.length; i++) {\n      var dataItem = mapData[i];\n      var value = dataItem.value;\n      // calculate size of a bubble\n      var square = (value - min) / (max - min) * (maxSquare - minSquare) + minSquare;\n      if (square < minSquare) {\n        square = minSquare;\n      }\n      var size = Math.sqrt(square / (Math.PI * 2));\n      var id = dataItem.code;\n\n      dataProvider.images.push({\n        type: 'circle',\n        width: size,\n        height: size,\n        color: dataItem.color,\n        longitude: latlong[id].longitude,\n        latitude: latlong[id].latitude,\n        title: dataItem.name,\n        value: value\n      });\n    }\n\n    map.dataProvider = dataProvider;\n    map.export = {\n      enabled: true\n    };\n\n    $timeout(function() {\n      map.write('map-bubbles');\n    }, 100);\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/maps/map-bubbles/map-bubbles.html",
    "content": "<div ba-panel ba-panel-title=\"Map with Bubbles\" class=\"viewport100\">\n  <div id=\"map-bubbles\"></div>\n</div>\n"
  },
  {
    "path": "src/app/pages/maps/map-lines/MapLinesPageCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.maps')\n      .controller('MapLinesPageCtrl', MapLinesPageCtrl);\n\n  /** @ngInject */\n  function MapLinesPageCtrl(baConfig, $timeout, layoutPaths) {\n    var layoutColors = baConfig.colors;\n    // svg path for target icon\n    var targetSVG = 'M9,0C4.029,0,0,4.029,0,9s4.029,9,9,9s9-4.029,9-9S13.971,0,9,0z M9,15.93 c-3.83,0-6.93-3.1-6.93-6.93S5.17,2.07,9,2.07s6.93,3.1,6.93,6.93S12.83,15.93,9,15.93 M12.5,9c0,1.933-1.567,3.5-3.5,3.5S5.5,10.933,5.5,9S7.067,5.5,9,5.5 S12.5,7.067,12.5,9z';\n// svg path for plane icon\n    var planeSVG = 'M19.671,8.11l-2.777,2.777l-3.837-0.861c0.362-0.505,0.916-1.683,0.464-2.135c-0.518-0.517-1.979,0.278-2.305,0.604l-0.913,0.913L7.614,8.804l-2.021,2.021l2.232,1.061l-0.082,0.082l1.701,1.701l0.688-0.687l3.164,1.504L9.571,18.21H6.413l-1.137,1.138l3.6,0.948l1.83,1.83l0.947,3.598l1.137-1.137V21.43l3.725-3.725l1.504,3.164l-0.687,0.687l1.702,1.701l0.081-0.081l1.062,2.231l2.02-2.02l-0.604-2.689l0.912-0.912c0.326-0.326,1.121-1.789,0.604-2.306c-0.452-0.452-1.63,0.101-2.135,0.464l-0.861-3.838l2.777-2.777c0.947-0.947,3.599-4.862,2.62-5.839C24.533,4.512,20.618,7.163,19.671,8.11z';\n    $timeout(function() {\n      var map = AmCharts.makeChart( 'map-lines', {\n        type: 'map',\n        theme: 'blur',\n        dataProvider: {\n          map: 'worldLow',\n          linkToObject: 'london',\n          images: [ {\n            id: 'london',\n            svgPath: targetSVG,\n            title: 'London',\n            latitude: 51.5002,\n            longitude: -0.1262,\n            scale: 1.5,\n            zoomLevel: 2.74,\n            zoomLongitude: -20.1341,\n            zoomLatitude: 49.1712,\n\n            lines: [ {\n              latitudes: [ 51.5002, 50.4422 ],\n              longitudes: [ -0.1262, 30.5367 ]\n            }, {\n              latitudes: [ 51.5002, 46.9480 ],\n              longitudes: [ -0.1262, 7.4481 ]\n            }, {\n              latitudes: [ 51.5002, 59.3328 ],\n              longitudes: [ -0.1262, 18.0645 ]\n            }, {\n              latitudes: [ 51.5002, 40.4167 ],\n              longitudes: [ -0.1262, -3.7033 ]\n            }, {\n              latitudes: [ 51.5002, 46.0514 ],\n              longitudes: [ -0.1262, 14.5060 ]\n            }, {\n              latitudes: [ 51.5002, 48.2116 ],\n              longitudes: [ -0.1262, 17.1547 ]\n            }, {\n              latitudes: [ 51.5002, 44.8048 ],\n              longitudes: [ -0.1262, 20.4781 ]\n            }, {\n              latitudes: [ 51.5002, 55.7558 ],\n              longitudes: [ -0.1262, 37.6176 ]\n            }, {\n              latitudes: [ 51.5002, 38.7072 ],\n              longitudes: [ -0.1262, -9.1355 ]\n            }, {\n              latitudes: [ 51.5002, 54.6896 ],\n              longitudes: [ -0.1262, 25.2799 ]\n            }, {\n              latitudes: [ 51.5002, 64.1353 ],\n              longitudes: [ -0.1262, -21.8952 ]\n            }, {\n              latitudes: [ 51.5002, 40.4300 ],\n              longitudes: [ -0.1262, -74.0000 ]\n            } ],\n\n            images: [ {\n              label: 'Flights from London',\n              svgPath: planeSVG,\n              left: 100,\n              top: 45,\n              labelShiftY: 5,\n              labelShiftX: 5,\n              color: layoutColors.defaultText,\n              labelColor: layoutColors.defaultText,\n              labelRollOverColor: layoutColors.defaultText,\n              labelFontSize: 20\n            }, {\n              label: 'show flights from Vilnius',\n              left: 106,\n              top: 70,\n              labelColor: layoutColors.defaultText,\n              labelRollOverColor: layoutColors.defaultText,\n              labelFontSize: 11,\n              linkToObject: 'vilnius'\n            } ]\n          },\n\n            {\n              id: 'vilnius',\n              svgPath: targetSVG,\n              title: 'Vilnius',\n              latitude: 54.6896,\n              longitude: 25.2799,\n              scale: 1.5,\n              zoomLevel: 4.92,\n              zoomLongitude: 15.4492,\n              zoomLatitude: 50.2631,\n\n              lines: [ {\n                latitudes: [ 54.6896, 50.8371 ],\n                longitudes: [ 25.2799, 4.3676 ]\n              }, {\n                latitudes: [ 54.6896, 59.9138 ],\n                longitudes: [ 25.2799, 10.7387 ]\n              }, {\n                latitudes: [ 54.6896, 40.4167 ],\n                longitudes: [ 25.2799, -3.7033 ]\n              }, {\n                latitudes: [ 54.6896, 50.0878 ],\n                longitudes: [ 25.2799, 14.4205 ]\n              }, {\n                latitudes: [ 54.6896, 48.2116 ],\n                longitudes: [ 25.2799, 17.1547 ]\n              }, {\n                latitudes: [ 54.6896, 44.8048 ],\n                longitudes: [ 25.2799, 20.4781 ]\n              }, {\n                latitudes: [ 54.6896, 55.7558 ],\n                longitudes: [ 25.2799, 37.6176 ]\n              }, {\n                latitudes: [ 54.6896, 37.9792 ],\n                longitudes: [ 25.2799, 23.7166 ]\n              }, {\n                latitudes: [ 54.6896, 54.6896 ],\n                longitudes: [ 25.2799, 25.2799 ]\n              }, {\n                latitudes: [ 54.6896, 51.5002 ],\n                longitudes: [ 25.2799, -0.1262 ]\n              }, {\n                latitudes: [ 54.6896, 53.3441 ],\n                longitudes: [ 25.2799, -6.2675 ]\n              } ],\n\n              images: [ {\n                label: 'Flights from Vilnius',\n                svgPath: planeSVG,\n                left: 100,\n                top: 45,\n                labelShiftY: 5,\n                labelShiftX: 5,\n                color: layoutColors.defaultText,\n                labelColor: layoutColors.defaultText,\n                labelRollOverColor: layoutColors.defaultText,\n                labelFontSize: 20\n              }, {\n                label: 'show flights from London',\n                left: 106,\n                top: 70,\n                labelColor: layoutColors.defaultText,\n                labelRollOverColor: layoutColors.defaultText,\n                labelFontSize: 11,\n                linkToObject: 'london'\n              } ]\n            }, {\n              svgPath: targetSVG,\n              title: 'Brussels',\n              latitude: 50.8371,\n              longitude: 4.3676\n            }, {\n              svgPath: targetSVG,\n              title: 'Prague',\n              latitude: 50.0878,\n              longitude: 14.4205\n            }, {\n              svgPath: targetSVG,\n              title: 'Athens',\n              latitude: 37.9792,\n              longitude: 23.7166\n            }, {\n              svgPath: targetSVG,\n              title: 'Reykjavik',\n              latitude: 64.1353,\n              longitude: -21.8952\n            }, {\n              svgPath: targetSVG,\n              title: 'Dublin',\n              latitude: 53.3441,\n              longitude: -6.2675\n            }, {\n              svgPath: targetSVG,\n              title: 'Oslo',\n              latitude: 59.9138,\n              longitude: 10.7387\n            }, {\n              svgPath: targetSVG,\n              title: 'Lisbon',\n              latitude: 38.7072,\n              longitude: -9.1355\n            }, {\n              svgPath: targetSVG,\n              title: 'Moscow',\n              latitude: 55.7558,\n              longitude: 37.6176\n            }, {\n              svgPath: targetSVG,\n              title: 'Belgrade',\n              latitude: 44.8048,\n              longitude: 20.4781\n            }, {\n              svgPath: targetSVG,\n              title: 'Bratislava',\n              latitude: 48.2116,\n              longitude: 17.1547\n            }, {\n              svgPath: targetSVG,\n              title: 'Ljubljana',\n              latitude: 46.0514,\n              longitude: 14.5060\n            }, {\n              svgPath: targetSVG,\n              title: 'Madrid',\n              latitude: 40.4167,\n              longitude: -3.7033\n            }, {\n              svgPath: targetSVG,\n              title: 'Stockholm',\n              latitude: 59.3328,\n              longitude: 18.0645\n            }, {\n              svgPath: targetSVG,\n              title: 'Bern',\n              latitude: 46.9480,\n              longitude: 7.4481\n            }, {\n              svgPath: targetSVG,\n              title: 'Kiev',\n              latitude: 50.4422,\n              longitude: 30.5367\n            }, {\n              svgPath: targetSVG,\n              title: 'Paris',\n              latitude: 48.8567,\n              longitude: 2.3510\n            }, {\n              svgPath: targetSVG,\n              title: 'New York',\n              latitude: 40.43,\n              longitude: -74\n            }\n          ]\n        },\n\n        areasSettings: {\n          unlistedAreasColor: layoutColors.info\n        },\n\n        imagesSettings: {\n          color: layoutColors.warningLight,\n          selectedColor: layoutColors.warning\n        },\n\n        linesSettings: {\n          color: layoutColors.warningLight,\n          alpha: 0.8\n        },\n\n\n        backgroundZoomsToTop: true,\n        linesAboveImages: true,\n\n        export: {\n          'enabled': true\n        },\n        pathToImages: layoutPaths.images.amMap\n      } );\n    }, 100);\n\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/maps/map-lines/map-lines.html",
    "content": "<div ba-panel ba-panel-title=\"Line Map\" class=\"viewport100\">\n  <div id=\"map-lines\"></div>\n</div>\n\n\n"
  },
  {
    "path": "src/app/pages/maps/maps.html",
    "content": "<div class=\"widgets\">\n\n  <div class=\"row\">\n    <div class=\"col-md-12\" ui-view autoscroll=\"true\" autoscroll-body-top></div>\n  </div>\n\n</div>"
  },
  {
    "path": "src/app/pages/maps/maps.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.maps', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('maps', {\n          url: '/maps',\n          templateUrl: 'app/pages/maps/maps.html',\n          abstract: true,\n          title: 'Maps',\n          sidebarMeta: {\n            icon: 'ion-ios-location-outline',\n            order: 500,\n          },\n        })\n        .state('maps.gmap', {\n          url: '/gmap',\n          templateUrl: 'app/pages/maps/google-maps/google-maps.html',\n          controller: 'GmapPageCtrl',\n          title: 'Google Maps',\n          sidebarMeta: {\n            order: 0,\n          },\n        })\n        .state('maps.leaflet', {\n          url: '/leaflet',\n          templateUrl: 'app/pages/maps/leaflet/leaflet.html',\n          controller: 'LeafletPageCtrl',\n          title: 'Leaflet Maps',\n          sidebarMeta: {\n            order: 100,\n          },\n        })\n        .state('maps.bubble', {\n          url: '/bubble',\n          templateUrl: 'app/pages/maps/map-bubbles/map-bubbles.html',\n          controller: 'MapBubblePageCtrl',\n          title: 'Bubble Maps',\n          sidebarMeta: {\n            order: 200,\n          },\n        })\n        .state('maps.line', {\n          url: '/line',\n          templateUrl: 'app/pages/maps/map-lines/map-lines.html',\n          controller: 'MapLinesPageCtrl',\n          title: 'Line Maps',\n          sidebarMeta: {\n            order: 300,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/pages.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages', [\n    'ui.router',\n\n    'BlurAdmin.pages.dashboard',\n    'BlurAdmin.pages.ui',\n    'BlurAdmin.pages.components',\n    'BlurAdmin.pages.form',\n    'BlurAdmin.pages.tables',\n    'BlurAdmin.pages.charts',\n    'BlurAdmin.pages.maps',\n    'BlurAdmin.pages.profile',\n  ])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($urlRouterProvider, baSidebarServiceProvider) {\n    $urlRouterProvider.otherwise('/dashboard');\n\n    baSidebarServiceProvider.addStaticItem({\n      title: 'Pages',\n      icon: 'ion-document',\n      subMenu: [{\n        title: 'Sign In',\n        fixedHref: 'auth.html',\n        blank: true\n      }, {\n        title: 'Sign Up',\n        fixedHref: 'reg.html',\n        blank: true\n      }, {\n        title: 'User Profile',\n        stateRef: 'profile'\n      }, {\n        title: '404 Page',\n        fixedHref: '404.html',\n        blank: true\n      }]\n    });\n    baSidebarServiceProvider.addStaticItem({\n      title: 'Menu Level 1',\n      icon: 'ion-ios-more',\n      subMenu: [{\n        title: 'Menu Level 1.1',\n        disabled: true\n      }, {\n        title: 'Menu Level 1.2',\n        subMenu: [{\n          title: 'Menu Level 1.2.1',\n          disabled: true\n        }]\n      }]\n    });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/profile/ProfileModalCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 21.01.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.profile')\n    .controller('ProfileModalCtrl', ProfileModalCtrl);\n\n  /** @ngInject */\n  function ProfileModalCtrl($scope, $uibModalInstance) {\n    $scope.link = '';\n    $scope.ok = function () {\n      $uibModalInstance.close($scope.link);\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/pages/profile/ProfilePageCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.profile')\n    .controller('ProfilePageCtrl', ProfilePageCtrl);\n\n  /** @ngInject */\n  function ProfilePageCtrl($scope, fileReader, $filter, $uibModal) {\n    $scope.picture = $filter('profilePicture')('Nasta');\n\n    $scope.removePicture = function () {\n      $scope.picture = $filter('appImage')('theme/no-photo.png');\n      $scope.noPicture = true;\n    };\n\n    $scope.uploadPicture = function () {\n      var fileInput = document.getElementById('uploadFile');\n      fileInput.click();\n\n    };\n\n    $scope.socialProfiles = [\n      {\n        name: 'Facebook',\n        href: 'https://www.facebook.com/akveo/',\n        icon: 'socicon-facebook'\n      },\n      {\n        name: 'Twitter',\n        href: 'https://twitter.com/akveo_inc',\n        icon: 'socicon-twitter'\n      },\n      {\n        name: 'Google',\n        icon: 'socicon-google'\n      },\n      {\n        name: 'LinkedIn',\n        href: 'https://www.linkedin.com/company/akveo',\n        icon: 'socicon-linkedin'\n      },\n      {\n        name: 'GitHub',\n        href: 'https://github.com/akveo',\n        icon: 'socicon-github'\n      },\n      {\n        name: 'StackOverflow',\n        icon: 'socicon-stackoverflow'\n      },\n      {\n        name: 'Dribbble',\n        icon: 'socicon-dribble'\n      },\n      {\n        name: 'Behance',\n        icon: 'socicon-behace'\n      }\n    ];\n\n    $scope.unconnect = function (item) {\n      item.href = undefined;\n    };\n\n    $scope.showModal = function (item) {\n      $uibModal.open({\n        animation: false,\n        controller: 'ProfileModalCtrl',\n        templateUrl: 'app/pages/profile/profileModal.html'\n      }).result.then(function (link) {\n          item.href = link;\n        });\n    };\n\n    $scope.getFile = function () {\n      fileReader.readAsDataUrl($scope.file, $scope)\n          .then(function (result) {\n            $scope.picture = result;\n          });\n    };\n\n    $scope.switches = [true, true, false, true, true, false];\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/profile/profile.html",
    "content": "<div ba-panel ba-panel-class=\"profile-page\">\n  <div class=\"panel-content\">\n    <div class=\"progress-info\">Your profile is 70% Complete</div>\n    <div class=\"progress\">\n      <div class=\"progress-bar progress-bar-primary progress-bar-striped active\" role=\"progressbar\"\n           aria-valuenow=\"70\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 70%\">\n      </div>\n    </div>\n\n    <h3 class=\"with-line\">General Information</h3>\n\n    <div class=\"row\">\n      <div class=\"col-md-6\">\n        <div class=\"form-group row clearfix\">\n          <label for=\"inputFirstName\" class=\"col-sm-3 control-label\">Picture</label>\n\n          <div class=\"col-sm-9\">\n            <div class=\"userpic\">\n              <div class=\"userpic-wrapper\">\n                <img ng-src=\"{{ picture }}\" ng-click=\"uploadPicture()\">\n              </div>\n              <i class=\"ion-ios-close-outline\" ng-click=\"removePicture()\" ng-if=\"!noPicture\"></i>\n              <a href class=\"change-userpic\" ng-click=\"uploadPicture()\">Change Profile Picture</a>\n              <input type=\"file\" ng-show=\"false\" id=\"uploadFile\" ng-file-select=\"onFileSelect($files)\">\n            </div>\n          </div>\n        </div>\n      </div>\n      <div class=\"col-md-6\"></div>\n    </div>\n\n    <div class=\"row\">\n      <div class=\"col-md-6\">\n        <div class=\"form-group row clearfix\">\n          <label for=\"inputFirstName\" class=\"col-sm-3 control-label\">First Name</label>\n\n          <div class=\"col-sm-9\">\n            <input type=\"text\" class=\"form-control\" id=\"inputFirstName\" placeholder=\"\" value=\"Anastasiya\">\n          </div>\n        </div>\n        <div class=\"form-group row clearfix\">\n          <label for=\"inputLastName\" class=\"col-sm-3 control-label\">Last Name</label>\n\n          <div class=\"col-sm-9\">\n            <input type=\"text\" class=\"form-control\" id=\"inputLastName\" placeholder=\"\" value=\"\">\n          </div>\n        </div>\n      </div>\n      <div class=\"col-md-6\">\n        <div class=\"form-group row clearfix\">\n          <label class=\"col-sm-3 control-label\">Department</label>\n\n          <div class=\"col-sm-9\">\n            <select class=\"form-control\" selectpicker>\n              <option>Web Development</option>\n              <option>System Development</option>\n              <option>Sales</option>\n              <option>Human Resources</option>\n            </select>\n          </div>\n        </div>\n\n        <div class=\"form-group row clearfix\">\n          <label for=\"inputOccupation\" class=\"col-sm-3 control-label\">Occupation</label>\n\n          <div class=\"col-sm-9\">\n            <input type=\"text\" class=\"form-control\" id=\"inputOccupation\" placeholder=\"\" value=\"Front End Web Developer\">\n          </div>\n        </div>\n      </div>\n    </div>\n\n    <h3 class=\"with-line\">Change Password</h3>\n\n    <div class=\"row\">\n      <div class=\"col-md-6\">\n        <div class=\"form-group row clearfix\">\n          <label for=\"inputPassword\" class=\"col-sm-3 control-label\">Password</label>\n\n          <div class=\"col-sm-9\">\n            <input type=\"password\" class=\"form-control\" id=\"inputPassword\" placeholder=\"\" value=\"12345678\">\n          </div>\n        </div>\n      </div>\n      <div class=\"col-md-6\">\n        <div class=\"form-group row clearfix\">\n          <label for=\"inputConfirmPassword\" class=\"col-sm-3 control-label\">Confirm Password</label>\n\n          <div class=\"col-sm-9\">\n            <input type=\"password\" class=\"form-control\" id=\"inputConfirmPassword\" placeholder=\"\">\n          </div>\n        </div>\n      </div>\n    </div>\n\n    <h3 class=\"with-line\">Contact Information</h3>\n\n    <div class=\"row\">\n      <div class=\"col-md-6\">\n        <div class=\"form-group row clearfix\">\n          <label for=\"inputEmail3\" class=\"col-sm-3 control-label\">Email</label>\n\n          <div class=\"col-sm-9\">\n            <input type=\"email\" class=\"form-control\" id=\"inputEmail3\" placeholder=\"\" value=\"contact@akveo.com\">\n          </div>\n        </div>\n        <div class=\"form-group row clearfix\">\n          <label for=\"inputPhone\" class=\"col-sm-3 control-label\">Phone</label>\n\n          <div class=\"col-sm-9\">\n            <input type=\"text\" class=\"form-control\" id=\"inputPhone\" placeholder=\"\" value=\"+1 (23) 456 7890\">\n          </div>\n        </div>\n      </div>\n      <div class=\"col-md-6\">\n        <div class=\"form-group row clearfix\">\n          <label class=\"col-sm-3 control-label\">Office Location</label>\n\n          <div class=\"col-sm-9\">\n            <select class=\"form-control\" title=\"Standard Select\" selectpicker>\n              <option>San Francisco</option>\n              <option>London</option>\n              <option>Minsk</option>\n              <option>Tokio</option>\n            </select>\n          </div>\n        </div>\n        <div class=\"form-group row clearfix\">\n          <label for=\"inputRoom\" class=\"col-sm-3 control-label\">Room</label>\n\n          <div class=\"col-sm-9\">\n            <input type=\"text\" class=\"form-control\" id=\"inputRoom\" placeholder=\"\" value=\"303\">\n          </div>\n        </div>\n      </div>\n    </div>\n\n    <h3 class=\"with-line\">Social Profiles</h3>\n\n    <div class=\"social-profiles row clearfix\">\n      <div class=\"col-md-3 col-sm-4\" ng-repeat=\"item in socialProfiles\">\n\n        <a class=\"sn-link\" href ng-click=\"showModal(item)\" ng-if=\"!item.href\">\n          <i class=\"socicon {{ item.icon }}\"></i>\n          <span>{{ item.name }}</span>\n        </a>\n\n        <a class=\"sn-link connected\" href=\"{{ item.href }}\" target=\"_blank\" ng-if=\"item.href\">\n          <i class=\"socicon {{ item.icon }}\"></i>\n          <span>{{ item.name }}</span>\n          <em class=\"ion-ios-close-empty sn-link-close\" ng-mousedown=\"unconnect(item)\"></em>\n        </a>\n      </div>\n    </div>\n\n    <h3 class=\"with-line\">Send Email Notifications</h3>\n\n    <div class=\"notification row clearfix\">\n      <div class=\"col-sm-6\">\n        <div class=\"form-group row clearfix\">\n          <label class=\"col-xs-8\">When I receive a message</label>\n\n          <div class=\"col-xs-4\">\n            <switch color=\"primary\" ng-model=\"switches[0]\"></switch>\n          </div>\n        </div>\n        <div class=\"form-group row clearfix\">\n          <label class=\"col-xs-8\">When Someone sends me an invitation</label>\n\n          <div class=\"col-xs-4\">\n            <switch color=\"primary\" ng-model=\"switches[1]\"></switch>\n          </div>\n        </div>\n        <div class=\"form-group row clearfix\">\n          <label class=\"col-xs-8\">When profile information changes</label>\n\n          <div class=\"col-xs-4\">\n            <switch color=\"primary\" ng-model=\"switches[2]\"></switch>\n          </div>\n        </div>\n      </div>\n      <div class=\"col-sm-6\">\n        <div class=\"form-group row clearfix\">\n          <label class=\"col-xs-8\">When anyone logs into your account from a new device or browser</label>\n\n          <div class=\"col-xs-4\">\n            <switch color=\"primary\" ng-model=\"switches[3]\"></switch>\n          </div>\n        </div>\n        <div class=\"form-group row clearfix\">\n          <label class=\"col-xs-8\">Weekly Reports</label>\n\n          <div class=\"col-xs-4\">\n            <switch color=\"primary\" ng-model=\"switches[4]\"></switch>\n          </div>\n        </div>\n\n        <div class=\"form-group row clearfix\">\n          <label class=\"col-xs-8\">Daily Reports</label>\n\n          <div class=\"col-xs-4\">\n            <switch color=\"primary\" ng-model=\"switches[5]\"></switch>\n          </div>\n        </div>\n      </div>\n    </div>\n    <button type=\"button\" class=\"btn btn-primary btn-with-icon save-profile\">\n      <i class=\"ion-android-checkmark-circle\"></i>Update Profile\n    </button>\n  </div>\n</div>\n"
  },
  {
    "path": "src/app/pages/profile/profile.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.profile', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('profile', {\n          url: '/profile',\n          title: 'Profile',\n          templateUrl: 'app/pages/profile/profile.html',\n          controller: 'ProfilePageCtrl',\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/profile/profileModal.html",
    "content": "<div class=\"modal-content\">\n  <div class=\"modal-header\">\n    <button type=\"button\" class=\"close\" ng-click=\"$dismiss()\" aria-label=\"Close\">\n      <em class=\"ion-ios-close-empty sn-link-close\"></em>\n    </button>\n    <h4 class=\"modal-title\" id=\"myModalLabel\">Add Account</h4>\n  </div>\n  <form name=\"linkForm\">\n    <div class=\"modal-body\">\n      <p>Paste a link to your profile into the box below</p>\n\n      <div class=\"form-group\">\n        <input type=\"text\" class=\"form-control\" placeholder=\"Link to Profile\" ng-model=\"link\">\n      </div>\n    </div>\n    <div class=\"modal-footer\">\n      <button type=\"button\" class=\"btn btn-primary\" ng-click=\"ok(link)\">Save changes</button>\n    </div>\n  </form>\n</div>\n"
  },
  {
    "path": "src/app/pages/tables/TablesPageCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.tables')\n      .controller('TablesPageCtrl', TablesPageCtrl);\n\n  /** @ngInject */\n  function TablesPageCtrl($scope, $filter, editableOptions, editableThemes) {\n\n    $scope.smartTablePageSize = 10;\n\n    $scope.smartTableData = [\n      {\n        id: 1,\n        firstName: 'Mark',\n        lastName: 'Otto',\n        username: '@mdo',\n        email: 'mdo@gmail.com',\n        age: '28'\n      },\n      {\n        id: 2,\n        firstName: 'Jacob',\n        lastName: 'Thornton',\n        username: '@fat',\n        email: 'fat@yandex.ru',\n        age: '45'\n      },\n      {\n        id: 3,\n        firstName: 'Larry',\n        lastName: 'Bird',\n        username: '@twitter',\n        email: 'twitter@outlook.com',\n        age: '18'\n      },\n      {\n        id: 4,\n        firstName: 'John',\n        lastName: 'Snow',\n        username: '@snow',\n        email: 'snow@gmail.com',\n        age: '20'\n      },\n      {\n        id: 5,\n        firstName: 'Jack',\n        lastName: 'Sparrow',\n        username: '@jack',\n        email: 'jack@yandex.ru',\n        age: '30'\n      },\n      {\n        id: 6,\n        firstName: 'Ann',\n        lastName: 'Smith',\n        username: '@ann',\n        email: 'ann@gmail.com',\n        age: '21'\n      },\n      {\n        id: 7,\n        firstName: 'Barbara',\n        lastName: 'Black',\n        username: '@barbara',\n        email: 'barbara@yandex.ru',\n        age: '43'\n      },\n      {\n        id: 8,\n        firstName: 'Sevan',\n        lastName: 'Bagrat',\n        username: '@sevan',\n        email: 'sevan@outlook.com',\n        age: '13'\n      },\n      {\n        id: 9,\n        firstName: 'Ruben',\n        lastName: 'Vardan',\n        username: '@ruben',\n        email: 'ruben@gmail.com',\n        age: '22'\n      },\n      {\n        id: 10,\n        firstName: 'Karen',\n        lastName: 'Sevan',\n        username: '@karen',\n        email: 'karen@yandex.ru',\n        age: '33'\n      },\n      {\n        id: 11,\n        firstName: 'Mark',\n        lastName: 'Otto',\n        username: '@mark',\n        email: 'mark@gmail.com',\n        age: '38'\n      },\n      {\n        id: 12,\n        firstName: 'Jacob',\n        lastName: 'Thornton',\n        username: '@jacob',\n        email: 'jacob@yandex.ru',\n        age: '48'\n      },\n      {\n        id: 13,\n        firstName: 'Haik',\n        lastName: 'Hakob',\n        username: '@haik',\n        email: 'haik@outlook.com',\n        age: '48'\n      },\n      {\n        id: 14,\n        firstName: 'Garegin',\n        lastName: 'Jirair',\n        username: '@garegin',\n        email: 'garegin@gmail.com',\n        age: '40'\n      },\n      {\n        id: 15,\n        firstName: 'Krikor',\n        lastName: 'Bedros',\n        username: '@krikor',\n        email: 'krikor@yandex.ru',\n        age: '32'\n      },\n      {\n        \"id\": 16,\n        \"firstName\": \"Francisca\",\n        \"lastName\": \"Brady\",\n        \"username\": \"@Gibson\",\n        \"email\": \"franciscagibson@comtours.com\",\n        \"age\": 11\n      },\n      {\n        \"id\": 17,\n        \"firstName\": \"Tillman\",\n        \"lastName\": \"Figueroa\",\n        \"username\": \"@Snow\",\n        \"email\": \"tillmansnow@comtours.com\",\n        \"age\": 34\n      },\n      {\n        \"id\": 18,\n        \"firstName\": \"Jimenez\",\n        \"lastName\": \"Morris\",\n        \"username\": \"@Bryant\",\n        \"email\": \"jimenezbryant@comtours.com\",\n        \"age\": 45\n      },\n      {\n        \"id\": 19,\n        \"firstName\": \"Sandoval\",\n        \"lastName\": \"Jacobson\",\n        \"username\": \"@Mcbride\",\n        \"email\": \"sandovalmcbride@comtours.com\",\n        \"age\": 32\n      },\n      {\n        \"id\": 20,\n        \"firstName\": \"Griffin\",\n        \"lastName\": \"Torres\",\n        \"username\": \"@Charles\",\n        \"email\": \"griffincharles@comtours.com\",\n        \"age\": 19\n      },\n      {\n        \"id\": 21,\n        \"firstName\": \"Cora\",\n        \"lastName\": \"Parker\",\n        \"username\": \"@Caldwell\",\n        \"email\": \"coracaldwell@comtours.com\",\n        \"age\": 27\n      },\n      {\n        \"id\": 22,\n        \"firstName\": \"Cindy\",\n        \"lastName\": \"Bond\",\n        \"username\": \"@Velez\",\n        \"email\": \"cindyvelez@comtours.com\",\n        \"age\": 24\n      },\n      {\n        \"id\": 23,\n        \"firstName\": \"Frieda\",\n        \"lastName\": \"Tyson\",\n        \"username\": \"@Craig\",\n        \"email\": \"friedacraig@comtours.com\",\n        \"age\": 45\n      },\n      {\n        \"id\": 24,\n        \"firstName\": \"Cote\",\n        \"lastName\": \"Holcomb\",\n        \"username\": \"@Rowe\",\n        \"email\": \"coterowe@comtours.com\",\n        \"age\": 20\n      },\n      {\n        \"id\": 25,\n        \"firstName\": \"Trujillo\",\n        \"lastName\": \"Mejia\",\n        \"username\": \"@Valenzuela\",\n        \"email\": \"trujillovalenzuela@comtours.com\",\n        \"age\": 16\n      },\n      {\n        \"id\": 26,\n        \"firstName\": \"Pruitt\",\n        \"lastName\": \"Shepard\",\n        \"username\": \"@Sloan\",\n        \"email\": \"pruittsloan@comtours.com\",\n        \"age\": 44\n      },\n      {\n        \"id\": 27,\n        \"firstName\": \"Sutton\",\n        \"lastName\": \"Ortega\",\n        \"username\": \"@Black\",\n        \"email\": \"suttonblack@comtours.com\",\n        \"age\": 42\n      },\n      {\n        \"id\": 28,\n        \"firstName\": \"Marion\",\n        \"lastName\": \"Heath\",\n        \"username\": \"@Espinoza\",\n        \"email\": \"marionespinoza@comtours.com\",\n        \"age\": 47\n      },\n      {\n        \"id\": 29,\n        \"firstName\": \"Newman\",\n        \"lastName\": \"Hicks\",\n        \"username\": \"@Keith\",\n        \"email\": \"newmankeith@comtours.com\",\n        \"age\": 15\n      },\n      {\n        \"id\": 30,\n        \"firstName\": \"Boyle\",\n        \"lastName\": \"Larson\",\n        \"username\": \"@Summers\",\n        \"email\": \"boylesummers@comtours.com\",\n        \"age\": 32\n      },\n      {\n        \"id\": 31,\n        \"firstName\": \"Haynes\",\n        \"lastName\": \"Vinson\",\n        \"username\": \"@Mckenzie\",\n        \"email\": \"haynesmckenzie@comtours.com\",\n        \"age\": 15\n      },\n      {\n        \"id\": 32,\n        \"firstName\": \"Miller\",\n        \"lastName\": \"Acosta\",\n        \"username\": \"@Young\",\n        \"email\": \"milleryoung@comtours.com\",\n        \"age\": 55\n      },\n      {\n        \"id\": 33,\n        \"firstName\": \"Johnston\",\n        \"lastName\": \"Brown\",\n        \"username\": \"@Knight\",\n        \"email\": \"johnstonknight@comtours.com\",\n        \"age\": 29\n      },\n      {\n        \"id\": 34,\n        \"firstName\": \"Lena\",\n        \"lastName\": \"Pitts\",\n        \"username\": \"@Forbes\",\n        \"email\": \"lenaforbes@comtours.com\",\n        \"age\": 25\n      },\n      {\n        \"id\": 35,\n        \"firstName\": \"Terrie\",\n        \"lastName\": \"Kennedy\",\n        \"username\": \"@Branch\",\n        \"email\": \"terriebranch@comtours.com\",\n        \"age\": 37\n      },\n      {\n        \"id\": 36,\n        \"firstName\": \"Louise\",\n        \"lastName\": \"Aguirre\",\n        \"username\": \"@Kirby\",\n        \"email\": \"louisekirby@comtours.com\",\n        \"age\": 44\n      },\n      {\n        \"id\": 37,\n        \"firstName\": \"David\",\n        \"lastName\": \"Patton\",\n        \"username\": \"@Sanders\",\n        \"email\": \"davidsanders@comtours.com\",\n        \"age\": 26\n      },\n      {\n        \"id\": 38,\n        \"firstName\": \"Holden\",\n        \"lastName\": \"Barlow\",\n        \"username\": \"@Mckinney\",\n        \"email\": \"holdenmckinney@comtours.com\",\n        \"age\": 11\n      },\n      {\n        \"id\": 39,\n        \"firstName\": \"Baker\",\n        \"lastName\": \"Rivera\",\n        \"username\": \"@Montoya\",\n        \"email\": \"bakermontoya@comtours.com\",\n        \"age\": 47\n      },\n      {\n        \"id\": 40,\n        \"firstName\": \"Belinda\",\n        \"lastName\": \"Lloyd\",\n        \"username\": \"@Calderon\",\n        \"email\": \"belindacalderon@comtours.com\",\n        \"age\": 21\n      },\n      {\n        \"id\": 41,\n        \"firstName\": \"Pearson\",\n        \"lastName\": \"Patrick\",\n        \"username\": \"@Clements\",\n        \"email\": \"pearsonclements@comtours.com\",\n        \"age\": 42\n      },\n      {\n        \"id\": 42,\n        \"firstName\": \"Alyce\",\n        \"lastName\": \"Mckee\",\n        \"username\": \"@Daugherty\",\n        \"email\": \"alycedaugherty@comtours.com\",\n        \"age\": 55\n      },\n      {\n        \"id\": 43,\n        \"firstName\": \"Valencia\",\n        \"lastName\": \"Spence\",\n        \"username\": \"@Olsen\",\n        \"email\": \"valenciaolsen@comtours.com\",\n        \"age\": 20\n      },\n      {\n        \"id\": 44,\n        \"firstName\": \"Leach\",\n        \"lastName\": \"Holcomb\",\n        \"username\": \"@Humphrey\",\n        \"email\": \"leachhumphrey@comtours.com\",\n        \"age\": 28\n      },\n      {\n        \"id\": 45,\n        \"firstName\": \"Moss\",\n        \"lastName\": \"Baxter\",\n        \"username\": \"@Fitzpatrick\",\n        \"email\": \"mossfitzpatrick@comtours.com\",\n        \"age\": 51\n      },\n      {\n        \"id\": 46,\n        \"firstName\": \"Jeanne\",\n        \"lastName\": \"Cooke\",\n        \"username\": \"@Ward\",\n        \"email\": \"jeanneward@comtours.com\",\n        \"age\": 59\n      },\n      {\n        \"id\": 47,\n        \"firstName\": \"Wilma\",\n        \"lastName\": \"Briggs\",\n        \"username\": \"@Kidd\",\n        \"email\": \"wilmakidd@comtours.com\",\n        \"age\": 53\n      },\n      {\n        \"id\": 48,\n        \"firstName\": \"Beatrice\",\n        \"lastName\": \"Perry\",\n        \"username\": \"@Gilbert\",\n        \"email\": \"beatricegilbert@comtours.com\",\n        \"age\": 39\n      },\n      {\n        \"id\": 49,\n        \"firstName\": \"Whitaker\",\n        \"lastName\": \"Hyde\",\n        \"username\": \"@Mcdonald\",\n        \"email\": \"whitakermcdonald@comtours.com\",\n        \"age\": 35\n      },\n      {\n        \"id\": 50,\n        \"firstName\": \"Rebekah\",\n        \"lastName\": \"Duran\",\n        \"username\": \"@Gross\",\n        \"email\": \"rebekahgross@comtours.com\",\n        \"age\": 40\n      },\n      {\n        \"id\": 51,\n        \"firstName\": \"Earline\",\n        \"lastName\": \"Mayer\",\n        \"username\": \"@Woodward\",\n        \"email\": \"earlinewoodward@comtours.com\",\n        \"age\": 52\n      },\n      {\n        \"id\": 52,\n        \"firstName\": \"Moran\",\n        \"lastName\": \"Baxter\",\n        \"username\": \"@Johns\",\n        \"email\": \"moranjohns@comtours.com\",\n        \"age\": 20\n      },\n      {\n        \"id\": 53,\n        \"firstName\": \"Nanette\",\n        \"lastName\": \"Hubbard\",\n        \"username\": \"@Cooke\",\n        \"email\": \"nanettecooke@comtours.com\",\n        \"age\": 55\n      },\n      {\n        \"id\": 54,\n        \"firstName\": \"Dalton\",\n        \"lastName\": \"Walker\",\n        \"username\": \"@Hendricks\",\n        \"email\": \"daltonhendricks@comtours.com\",\n        \"age\": 25\n      },\n      {\n        \"id\": 55,\n        \"firstName\": \"Bennett\",\n        \"lastName\": \"Blake\",\n        \"username\": \"@Pena\",\n        \"email\": \"bennettpena@comtours.com\",\n        \"age\": 13\n      },\n      {\n        \"id\": 56,\n        \"firstName\": \"Kellie\",\n        \"lastName\": \"Horton\",\n        \"username\": \"@Weiss\",\n        \"email\": \"kellieweiss@comtours.com\",\n        \"age\": 48\n      },\n      {\n        \"id\": 57,\n        \"firstName\": \"Hobbs\",\n        \"lastName\": \"Talley\",\n        \"username\": \"@Sanford\",\n        \"email\": \"hobbssanford@comtours.com\",\n        \"age\": 28\n      },\n      {\n        \"id\": 58,\n        \"firstName\": \"Mcguire\",\n        \"lastName\": \"Donaldson\",\n        \"username\": \"@Roman\",\n        \"email\": \"mcguireroman@comtours.com\",\n        \"age\": 38\n      },\n      {\n        \"id\": 59,\n        \"firstName\": \"Rodriquez\",\n        \"lastName\": \"Saunders\",\n        \"username\": \"@Harper\",\n        \"email\": \"rodriquezharper@comtours.com\",\n        \"age\": 20\n      },\n      {\n        \"id\": 60,\n        \"firstName\": \"Lou\",\n        \"lastName\": \"Conner\",\n        \"username\": \"@Sanchez\",\n        \"email\": \"lousanchez@comtours.com\",\n        \"age\": 16\n      }\n    ];\n\n    $scope.editableTableData = $scope.smartTableData.slice(0, 36);\n\n    $scope.peopleTableData = [\n      {\n        id: 1,\n        firstName: 'Mark',\n        lastName: 'Otto',\n        username: '@mdo',\n        email: 'mdo@gmail.com',\n        age: '28',\n        status: 'info'\n      },\n      {\n        id: 2,\n        firstName: 'Jacob',\n        lastName: 'Thornton',\n        username: '@fat',\n        email: 'fat@yandex.ru',\n        age: '45',\n        status: 'primary'\n      },\n      {\n        id: 3,\n        firstName: 'Larry',\n        lastName: 'Bird',\n        username: '@twitter',\n        email: 'twitter@outlook.com',\n        age: '18',\n        status: 'success'\n      },\n      {\n        id: 4,\n        firstName: 'John',\n        lastName: 'Snow',\n        username: '@snow',\n        email: 'snow@gmail.com',\n        age: '20',\n        status: 'danger'\n      },\n      {\n        id: 5,\n        firstName: 'Jack',\n        lastName: 'Sparrow',\n        username: '@jack',\n        email: 'jack@yandex.ru',\n        age: '30',\n        status: 'warning'\n      }\n    ];\n\n    $scope.metricsTableData = [\n      {\n        image: 'app/browsers/chrome.svg',\n        browser: 'Google Chrome',\n        visits: '10,392',\n        isVisitsUp: true,\n        purchases: '4,214',\n        isPurchasesUp: true,\n        percent: '45%',\n        isPercentUp: true\n      },\n      {\n        image: 'app/browsers/firefox.svg',\n        browser: 'Mozilla Firefox',\n        visits: '7,873',\n        isVisitsUp: true,\n        purchases: '3,031',\n        isPurchasesUp: false,\n        percent: '28%',\n        isPercentUp: true\n      },\n      {\n        image: 'app/browsers/ie.svg',\n        browser: 'Internet Explorer',\n        visits: '5,890',\n        isVisitsUp: false,\n        purchases: '2,102',\n        isPurchasesUp: false,\n        percent: '17%',\n        isPercentUp: false\n      },\n      {\n        image: 'app/browsers/safari.svg',\n        browser: 'Safari',\n        visits: '4,001',\n        isVisitsUp: false,\n        purchases: '1,001',\n        isPurchasesUp: false,\n        percent: '14%',\n        isPercentUp: true\n      },\n      {\n        image: 'app/browsers/opera.svg',\n        browser: 'Opera',\n        visits: '1,833',\n        isVisitsUp: true,\n        purchases: '83',\n        isPurchasesUp: true,\n        percent: '5%',\n        isPercentUp: false\n      }\n    ];\n\n    $scope.users = [\n      {\n        \"id\": 1,\n        \"name\": \"Esther Vang\",\n        \"status\": 4,\n        \"group\": 3\n      },\n      {\n        \"id\": 2,\n        \"name\": \"Leah Freeman\",\n        \"status\": 3,\n        \"group\": 1\n      },\n      {\n        \"id\": 3,\n        \"name\": \"Mathews Simpson\",\n        \"status\": 3,\n        \"group\": 2\n      },\n      {\n        \"id\": 4,\n        \"name\": \"Buckley Hopkins\",\n        \"group\": 4\n      },\n      {\n        \"id\": 5,\n        \"name\": \"Buckley Schwartz\",\n        \"status\": 1,\n        \"group\": 1\n      },\n      {\n        \"id\": 6,\n        \"name\": \"Mathews Hopkins\",\n        \"status\": 4,\n        \"group\": 2\n      },\n      {\n        \"id\": 7,\n        \"name\": \"Leah Vang\",\n        \"status\": 4,\n        \"group\": 1\n      },\n      {\n        \"id\": 8,\n        \"name\": \"Vang Schwartz\",\n        \"status\": 4,\n        \"group\": 2\n      },\n      {\n        \"id\": 9,\n        \"name\": \"Hopkin Esther\",\n        \"status\": 1,\n        \"group\": 2\n      },\n      {\n        \"id\": 10,\n        \"name\": \"Mathews Schwartz\",\n        \"status\": 1,\n        \"group\": 3\n      }\n    ];\n\n    $scope.statuses = [\n      {value: 1, text: 'Good'},\n      {value: 2, text: 'Awesome'},\n      {value: 3, text: 'Excellent'},\n    ];\n\n    $scope.groups = [\n      {id: 1, text: 'user'},\n      {id: 2, text: 'customer'},\n      {id: 3, text: 'vip'},\n      {id: 4, text: 'admin'}\n    ];\n\n    $scope.showGroup = function(user) {\n      if(user.group && $scope.groups.length) {\n        var selected = $filter('filter')($scope.groups, {id: user.group});\n        return selected.length ? selected[0].text : 'Not set';\n      } else return 'Not set'\n    };\n\n    $scope.showStatus = function(user) {\n      var selected = [];\n      if(user.status) {\n        selected = $filter('filter')($scope.statuses, {value: user.status});\n      }\n      return selected.length ? selected[0].text : 'Not set';\n    };\n\n\n    $scope.removeUser = function(index) {\n      $scope.users.splice(index, 1);\n    };\n\n    $scope.addUser = function() {\n      $scope.inserted = {\n        id: $scope.users.length+1,\n        name: '',\n        status: null,\n        group: null\n      };\n      $scope.users.push($scope.inserted);\n    };\n\n    editableOptions.theme = 'bs3';\n    editableThemes['bs3'].submitTpl = '<button type=\"submit\" class=\"btn btn-primary btn-with-icon\"><i class=\"ion-checkmark-round\"></i></button>';\n    editableThemes['bs3'].cancelTpl = '<button type=\"button\" ng-click=\"$form.$cancel()\" class=\"btn btn-default btn-with-icon\"><i class=\"ion-close-round\"></i></button>';\n\n\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/tables/basic/tables.html",
    "content": "<div class=\"widgets\">\n\n  <div class=\"row\">\n    <div class=\"col-lg-6 col-md-12\">\n      <div ba-panel ba-panel-title=\"Hover Rows\" ba-panel-class=\"with-scroll table-panel\">\n        <div include-with-scope=\"app/pages/tables/widgets/hoverRows.html\"></div>\n      </div>\n    </div>\n    <div class=\"col-lg-6 col-md-12\">\n      <div ba-panel ba-panel-title=\"Bordered Table\" ba-panel-class=\"with-scroll table-panel\">\n        <div include-with-scope=\"app/pages/tables/widgets/borderedTable.html\"></div>\n      </div>\n    </div>\n  </div>\n  <div class=\"row\">\n    <div class=\"col-lg-6 col-md-12\">\n      <div ba-panel ba-panel-title=\"Condensed Table\" ba-panel-class=\"with-scroll table-panel\">\n        <div include-with-scope=\"app/pages/tables/widgets/condensedTable.html\"></div>\n      </div>\n    </div>\n    <div class=\"col-lg-6 col-md-12\">\n      <div ba-panel ba-panel-title=\"Striped Rows\" ba-panel-class=\"with-scroll table-panel\">\n        <div include-with-scope=\"app/pages/tables/widgets/stripedRows.html\"></div>\n      </div>\n    </div>\n  </div>\n  <div class=\"row\">\n    <div class=\"col-lg-6 col-md-12\">\n      <div ba-panel ba-panel-title=\"Contextual Table\" ba-panel-class=\"with-scroll table-panel\">\n        <div include-with-scope=\"app/pages/tables/widgets/contextualTable.html\"></div>\n      </div>\n    </div>\n    <div class=\"col-lg-6 col-md-12\">\n      <div ba-panel ba-panel-title=\"Responsive Table\" ba-panel-class=\"with-scroll table-panel\">\n        <div include-with-scope=\"app/pages/tables/widgets/responsiveTable.html\"></div>\n      </div>\n    </div>\n  </div>\n\n</div>"
  },
  {
    "path": "src/app/pages/tables/smart/tables.html",
    "content": "<div class=\"widgets\">\n\n  <div class=\"row\">\n    <div class=\"col-md-12\">\n      <div ba-panel ba-panel-title=\"Editable Rows\" ba-panel-class=\"with-scroll\">\n        <div include-with-scope=\"app/pages/tables/widgets/editableRowTable.html\"></div>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-12\">\n      <div ba-panel ba-panel-title=\"Editable Cells\" ba-panel-class=\"with-scroll\">\n        <div include-with-scope=\"app/pages/tables/widgets/editableTable.html\"></div>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-12\">\n      <div ba-panel ba-panel-title=\"Smart Table With Filtering, Sorting And Pagination\" ba-panel-class=\"with-scroll\">\n        <div include-with-scope=\"app/pages/tables/widgets/smartTable.html\"></div>\n      </div>\n    </div>\n  </div>\n\n</div>"
  },
  {
    "path": "src/app/pages/tables/tables.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.tables', [])\n    .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider, $urlRouterProvider) {\n    $stateProvider\n        .state('tables', {\n          url: '/tables',\n          template : '<ui-view  autoscroll=\"true\" autoscroll-body-top></ui-view>',\n          abstract: true,\n          controller: 'TablesPageCtrl',\n          title: 'Tables',\n          sidebarMeta: {\n            icon: 'ion-grid',\n            order: 300,\n          },\n        }).state('tables.basic', {\n          url: '/basic',\n          templateUrl: 'app/pages/tables/basic/tables.html',\n          title: 'Basic Tables',\n          sidebarMeta: {\n            order: 0,\n          },\n        }).state('tables.smart', {\n          url: '/smart',\n          templateUrl: 'app/pages/tables/smart/tables.html',\n          title: 'Smart Tables',\n          sidebarMeta: {\n            order: 100,\n          },\n        });\n    $urlRouterProvider.when('/tables','/tables/basic');\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/tables/widgets/basicTable.html",
    "content": "<div class=\"horizontal-scroll\">\n  <table class=\"table\">\n    <thead>\n    <tr>\n      <th class=\"browser-icons\"></th>\n      <th>Browser</th>\n      <th class=\"align-right\">Visits</th>\n      <th class=\"table-arr\"></th>\n      <th class=\"align-right\">Downloads</th>\n      <th class=\"table-arr\"></th>\n      <th class=\"align-right\">Purchases</th>\n      <th class=\"table-arr\"></th>\n      <th class=\"align-right\">DAU</th>\n      <th class=\"table-arr\"></th>\n      <th class=\"align-right\">MAU</th>\n      <th class=\"table-arr\"></th>\n      <th class=\"align-right\">LTV</th>\n      <th class=\"table-arr\"></th>\n      <th class=\"align-right\">Users %</th>\n      <th class=\"table-arr\"></th>\n    </tr>\n    </thead>\n    <tbody>\n    <tr>\n      <td><img src=\"img/chrome.svg\" width=\"20\" height=\"20\"></td>\n      <td class=\"nowrap\">Google Chrome</td>\n      <td class=\"align-right\">10,392</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">3,822</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">4,214</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">899</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">7,098</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">178</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">45%</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n    </tr>\n    <tr>\n      <td><img src=\"img/firefox.svg\" width=\"20\" height=\"20\"></td>\n      <td class=\"nowrap\">Mozilla Firefox</td>\n      <td class=\"align-right\">7,873</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">6,003</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">3,031</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">897</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">8,997</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">102</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">28%</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n    </tr>\n    <tr>\n      <td><img src=\"img/ie.svg\" width=\"20\" height=\"20\"></td>\n      <td class=\"nowrap\">Internet Explorer</td>\n      <td class=\"align-right\">5,890</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">3,492</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">2,102</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">27</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">4,039</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">99</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">17%</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n    </tr>\n    <tr>\n      <td><img src=\"img/safari.svg\" width=\"20\" height=\"20\"></td>\n      <td class=\"nowrap\">Safari</td>\n      <td class=\"align-right\">4,001</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">2,039</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">1,001</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">104</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">3,983</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">209</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">14%</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n    </tr>\n    <tr>\n      <td><img src=\"img/opera.svg\" width=\"20\" height=\"20\"></td>\n      <td class=\"nowrap\">Opera</td>\n      <td class=\"align-right\">1,833</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">983</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">83</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">19</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">1,099</td>\n      <td class=\"table-arr\"><i class=\"icon-down\"></i></td>\n      <td class=\"align-right\">103</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n      <td class=\"align-right\">5%</td>\n      <td class=\"table-arr\"><i class=\"icon-up\"></i></td>\n    </tr>\n    </tbody>\n  </table>\n</div>"
  },
  {
    "path": "src/app/pages/tables/widgets/borderedTable.html",
    "content": "<div class=\"horizontal-scroll\">\n  <table class=\"table table-bordered\">\n    <thead>\n    <tr>\n      <th class=\"browser-icons\"></th>\n      <th>Browser</th>\n      <th class=\"align-right\">Visits</th>\n      <th class=\"align-right\">Purchases</th>\n      <th class=\"align-right\">%</th>\n    </tr>\n    </thead>\n    <tbody>\n    <tr ng-repeat=\"item in metricsTableData\">\n      <td><img ng-src=\"{{::( item.image | appImage )}}\" width=\"20\" height=\"20\"></td>\n      <td ng-class=\"nowrap\">{{item.browser}}</td>\n      <td class=\"align-right\">{{item.visits}}</td>\n      <td class=\"align-right\">{{item.purchases}}</td>\n      <td class=\"align-right\">{{item.percent}}</td>\n    </tr>\n    </tbody>\n  </table>\n</div>"
  },
  {
    "path": "src/app/pages/tables/widgets/condensedTable.html",
    "content": "<div class=\"horizontal-scroll\">\n  <table class=\"table table-condensed\">\n    <thead>\n    <tr>\n      <th class=\"table-id\">#</th>\n      <th>First Name</th>\n      <th>Last Name</th>\n      <th>Username</th>\n      <th>Email</th>\n      <th>Status</th>\n    </tr>\n    </thead>\n    <tbody>\n    <tr ng-repeat=\"item in peopleTableData\">\n      <td class=\"table-id\">{{item.id}}</td>\n      <td>{{item.firstName}}</td>\n      <td>{{item.lastName}}</td>\n      <td>{{item.username}}</td>\n      <td><a class=\"email-link\" ng-href=\"mailto:{{item.email}}\">{{item.email}}</a></td>\n      <td><button class=\"status-button btn btn-xs btn-{{item.status}}\">{{item.status}}</button></td>\n    </tr>\n    </tbody>\n  </table>\n</div>"
  },
  {
    "path": "src/app/pages/tables/widgets/contextualTable.html",
    "content": "<table class=\"table\">\n  <tr>\n    <th>#</th>\n    <th>First Name</th>\n    <th>Last Name</th>\n    <th>Username</th>\n    <th>Email</th>\n    <th>Age</th>\n  </tr>\n  <tr class=\"primary\">\n    <td>1</td>\n    <td>Mark</td>\n    <td>Otto</td>\n    <td>@mdo</td>\n    <td><a class=\"email-link \" ng-href=\"mailto:mdo@gmail.com\" href=\"mailto:mdo@gmail.com\">mdo@gmail.com</a></td>\n    <td>28</td>\n  </tr>\n  <tr class=\"success\">\n    <td>2</td>\n    <td>Jacob</td>\n    <td>Thornton</td>\n    <td>@fat</td>\n    <td><a class=\"email-link \" ng-href=\"mailto:fat@yandex.ru\" href=\"mailto:fat@yandex.ru\">fat@yandex.ru</a></td>\n    <td>45</td>\n  </tr>\n  <tr class=\"warning\">\n    <td>3</td>\n    <td>Larry</td>\n    <td>Bird</td>\n    <td>@twitter</td>\n    <td><a class=\"email-link \" ng-href=\"mailto:twitter@outlook.com\" href=\"mailto:twitter@outlook.com\">twitter@outlook.com</a>\n    </td>\n    <td>18</td>\n  </tr>\n  <tr class=\"danger\">\n    <td>4</td>\n    <td>John</td>\n    <td>Snow</td>\n    <td>@snow</td>\n    <td><a class=\"email-link\" ng-href=\"mailto:snow@gmail.com\" href=\"mailto:snow@gmail.com\">snow@gmail.com</a></td>\n    <td>20</td>\n  </tr>\n  <tr class=\"info\">\n    <td>5</td>\n    <td>Jack</td>\n    <td>Sparrow</td>\n    <td>@jack</td>\n    <td><a class=\"email-link\" ng-href=\"mailto:jack@yandex.ru\" href=\"mailto:jack@yandex.ru\">jack@yandex.ru</a></td>\n    <td>30</td>\n  </tr>\n</table>"
  },
  {
    "path": "src/app/pages/tables/widgets/editableRowTable.html",
    "content": "<div class=\"add-row-editable-table\">\n  <button class=\"btn btn-primary\" ng-click=\"addUser()\">Add row</button>\n</div>\n<table class=\"table table-bordered table-hover table-condensed\">\n  <tr>\n    <td></td>\n    <td>Name</td>\n    <td>Status</td>\n    <td>Group</td>\n    <td>Actions</td>\n  </tr>\n  <tr ng-repeat=\"user in users\" class=\"editable-row\">\n    <td>\n        {{$index}}\n    </td>\n    <td>\n        <span editable-text=\"user.name\" e-name=\"name\" e-form=\"rowform\" e-required>\n          {{ user.name || 'empty' }}\n        </span>\n    </td>\n    <td class=\"select-td\">\n        <span editable-select=\"user.status\" e-name=\"status\" e-form=\"rowform\" e-selectpicker\n              e-ng-options=\"s.value as s.text for s in statuses\">\n          {{ showStatus(user) }}\n        </span>\n    </td>\n    <td class=\"select-td\">\n        <span editable-select=\"user.group\" e-name=\"group\" onshow=\"loadGroups()\" e-form=\"rowform\" e-selectpicker\n              e-ng-options=\"g.id as g.text for g in groups\">\n          {{ showGroup(user) }}\n        </span>\n    </td>\n    <td>\n      <form editable-form name=\"rowform\" ng-show=\"rowform.$visible\" class=\"form-buttons form-inline\"\n            shown=\"inserted == user\">\n        <button type=\"submit\" ng-disabled=\"rowform.$waiting\" class=\"btn btn-primary editable-table-button btn-xs\">\n          Save\n        </button>\n        <button type=\"button\" ng-disabled=\"rowform.$waiting\" ng-click=\"rowform.$cancel()\" class=\"btn btn-default editable-table-button btn-xs\">\n          Cancel\n        </button>\n      </form>\n      <div class=\"buttons\" ng-show=\"!rowform.$visible\">\n        <button class=\"btn btn-primary editable-table-button btn-xs\" ng-click=\"rowform.$show()\">Edit</button>\n        <button class=\"btn btn-danger editable-table-button btn-xs\" ng-click=\"removeUser($index)\">Delete</button>\n      </div>\n    </td>\n  </tr>\n</table>\n"
  },
  {
    "path": "src/app/pages/tables/widgets/editableTable.html",
    "content": "<div class=\"horizontal-scroll\">\n  <table class=\"table table-hover\" st-table=\"editableTableData\">\n    <thead>\n    <tr class=\"sortable\">\n      <th class=\"table-id\" st-sort=\"id\" st-sort-default=\"true\">#</th>\n      <th st-sort=\"firstName\">First Name</th>\n      <th st-sort=\"lastName\">Last Name</th>\n      <th st-sort=\"username\">Username</th>\n      <th st-sort=\"email\">Email</th>\n      <th st-sort=\"age\">Age</th>\n    </tr>\n    </thead>\n    <tbody>\n    <tr ng-repeat=\"item in editableTableData\" class=\"editable-tr-wrap\">\n      <td class=\"table-id\">{{item.id}}</td>\n      <td><span editable-text=\"item.firstName\" blur=\"cancel\">{{item.firstName}}</span></td>\n      <td><span editable-text=\"item.lastName\" blur=\"cancel\">{{item.lastName}}</span></td>\n      <td><span editable-text=\"item.username\" blur=\"cancel\">{{item.username}}</span></td>\n      <td><a class=\"email-link\" ng-href=\"mailto:{{item.email}}\">{{item.email}}</a></td>\n      <td><span editable-text=\"item.age\" blur=\"cancel\">{{item.age}}</span></td>\n    </tr>\n    </tbody>\n    <tfoot>\n    <tr>\n      <td colspan=\"6\" class=\"text-center\">\n        <div st-pagination=\"\" st-items-by-page=\"12\" st-displayed-pages=\"5\"></div>\n      </td>\n    </tr>\n    </tfoot>\n  </table>\n</div>"
  },
  {
    "path": "src/app/pages/tables/widgets/hoverRows.html",
    "content": "<div class=\"horizontal-scroll\">\n  <table class=\"table table-hover\">\n    <thead>\n    <tr class=\"black-muted-bg\">\n      <th class=\"browser-icons\"></th>\n      <th>Browser</th>\n      <th class=\"align-right\">Visits</th>\n      <th class=\"table-arr\"></th>\n      <th class=\"align-right\">Purchases</th>\n      <th class=\"table-arr\"></th>\n      <th class=\"align-right\">%</th>\n      <th class=\"table-arr\"></th>\n    </tr>\n    </thead>\n    <tbody>\n    <tr ng-repeat=\"item in metricsTableData\" class=\"no-top-border\">\n      <td><img ng-src=\"{{::( item.image | appImage )}}\" width=\"20\" height=\"20\"></td>\n      <td ng-class=\"nowrap\">{{item.browser}}</td>\n      <td class=\"align-right\">{{item.visits}}</td>\n      <td class=\"table-arr\"><i ng-class=\"{'icon-up': item.isVisitsUp, 'icon-down': !item.isVisitsUp }\"></i></td>\n      <td class=\"align-right\">{{item.purchases}}</td>\n      <td class=\"table-arr\"><i ng-class=\"{'icon-up': item.isPurchasesUp, 'icon-down': !item.isPurchasesUp }\"></i></td>\n      <td class=\"align-right\">{{item.percent}}</td>\n      <td class=\"table-arr\"><i ng-class=\"{'icon-up': item.isPercentUp, 'icon-down': !item.isPercentUp }\"></i></td>\n    </tr>\n    </tbody>\n  </table>\n</div>"
  },
  {
    "path": "src/app/pages/tables/widgets/responsiveTable.html",
    "content": "<div class=\"table-responsive\">\n  <table class=\"table\">\n    <tr>\n      <th>#</th>\n      <th>First Name</th>\n      <th>Last Name</th>\n      <th>Username</th>\n      <th>Email</th>\n      <th>Age</th>\n    </tr>\n    <tr>\n      <td>1</td>\n      <td>Mark</td>\n      <td>Otto</td>\n      <td>@mdo</td>\n      <td><a class=\"email-link \" ng-href=\"mailto:mdo@gmail.com\" href=\"mailto:mdo@gmail.com\">mdo@gmail.com</a></td>\n      <td>28</td>\n    </tr>\n    <tr>\n      <td>2</td>\n      <td>Jacob</td>\n      <td>Thornton</td>\n      <td>@fat</td>\n      <td><a class=\"email-link \" ng-href=\"mailto:fat@yandex.ru\" href=\"mailto:fat@yandex.ru\">fat@yandex.ru</a></td>\n      <td>45</td>\n    </tr>\n    <tr>\n      <td>3</td>\n      <td>Larry</td>\n      <td>Bird</td>\n      <td>@twitter</td>\n      <td><a class=\"email-link \" ng-href=\"mailto:twitter@outlook.com\" href=\"mailto:twitter@outlook.com\">twitter@outlook.com</a>\n      </td>\n      <td>18</td>\n    </tr>\n    <tr>\n      <td>4</td>\n      <td>John</td>\n      <td>Snow</td>\n      <td>@snow</td>\n      <td><a class=\"email-link\" ng-href=\"mailto:snow@gmail.com\" href=\"mailto:snow@gmail.com\">snow@gmail.com</a></td>\n      <td>20</td>\n    </tr>\n    <tr>\n      <td>5</td>\n      <td>Jack</td>\n      <td>Sparrow</td>\n      <td>@jack</td>\n      <td><a class=\"email-link\" ng-href=\"mailto:jack@yandex.ru\" href=\"mailto:jack@yandex.ru\">jack@yandex.ru</a></td>\n      <td>30</td>\n    </tr>\n  </table>\n</div>"
  },
  {
    "path": "src/app/pages/tables/widgets/smartTable.html",
    "content": "<div class=\"horizontal-scroll\">\n  <div class=\"form-group select-page-size-wrap \">\n    <label>Rows on page\n      <select class=\"form-control selectpicker show-tick\" title=\"Rows on page\" selectpicker\n              ng-model=\"smartTablePageSize\" ng-options=\"i for i in [5,10,15,20,25]\">\n      </select>\n    </label>\n  </div>\n  <table class=\"table\" st-table=\"smartTableData\">\n    <thead>\n    <tr class=\"sortable \">\n      <th class=\"table-id\" st-sort=\"id\" st-sort-default=\"true\">#</th>\n      <th st-sort=\"firstName\">First Name</th>\n      <th st-sort=\"lastName\">Last Name</th>\n      <th st-sort=\"username\">Username</th>\n      <th st-sort=\"email\">Email</th>\n      <th st-sort=\"age\">Age</th>\n    </tr>\n    <tr>\n      <th></th>\n      <th><input st-search=\"firstName\" placeholder=\"Search First Name\" class=\"input-sm form-control search-input\"\n                 type=\"search\"/></th>\n      <th><input st-search=\"lastName\" placeholder=\"Search Last Name\" class=\"input-sm form-control search-input\"\n                 type=\"search\"/></th>\n      <th><input st-search=\"username\" placeholder=\"Search Username\" class=\"input-sm form-control search-input\"\n                 type=\"search\"/></th>\n      <th><input st-search=\"email\" placeholder=\"Search Email\" class=\"input-sm form-control search-input\" type=\"search\"/>\n      </th>\n      <th><input st-search=\"age\" placeholder=\"Search Age\" class=\"input-sm form-control search-input\" type=\"search\"/>\n      </th>\n    </tr>\n    </thead>\n    <tbody>\n    <tr ng-repeat=\"item in smartTableData\">\n      <td class=\"table-id\">{{item.id}}</td>\n      <td>{{item.firstName}}</td>\n      <td>{{item.lastName}}</td>\n      <td>{{item.username}}</td>\n      <td><a class=\"email-link\" ng-href=\"mailto:{{item.email}}\">{{item.email}}</a></td>\n      <td>{{item.age}}</td>\n    </tr>\n    </tbody>\n    <tfoot>\n    <tr>\n      <td colspan=\"6\" class=\"text-center\">\n        <div st-pagination=\"\" st-items-by-page=\"smartTablePageSize\" st-displayed-pages=\"5\"></div>\n      </td>\n    </tr>\n    </tfoot>\n  </table>\n</div>"
  },
  {
    "path": "src/app/pages/tables/widgets/stripedRows.html",
    "content": "<div class=\"vertical-scroll\">\n  <table class=\"table table-striped\">\n    <thead>\n    <tr>\n      <th class=\"table-id\">#</th>\n      <th>First Name</th>\n      <th>Last Name</th>\n      <th>Username</th>\n      <th>Email</th>\n      <th>Age</th>\n    </tr>\n    </thead>\n    <tbody>\n    <tr ng-repeat=\"item in smartTableData\">\n      <td class=\"table-id\">{{item.id}}</td>\n      <td>{{item.firstName}}</td>\n      <td>{{item.lastName}}</td>\n      <td>{{item.username}}</td>\n      <td><a class=\"email-link\" ng-href=\"mailto:{{item.email}}\">{{item.email}}</a></td>\n      <td>{{item.age}}</td>\n    </tr>\n    </tbody>\n  </table>\n</div>"
  },
  {
    "path": "src/app/pages/ui/alerts/alerts.html",
    "content": "<div class=\"widgets\">\n  <div class=\"row\">\n\n    <div class=\"col-md-6\"\n         ba-panel\n         ba-panel-title=\"Basic\"\n         ba-panel-class=\"with-scroll\">\n      <div >\n        <div class=\"alert bg-success\">\n          <strong>Well done!</strong> You successfully read this important alert message.\n        </div>\n        <div class=\"alert bg-info\">\n          <strong>Heads up!</strong> This alert needs your attention, but it's not super important.\n        </div>\n        <div class=\"alert bg-warning\">\n          <strong>Warning!</strong> Better check yourself, you're not looking too good.\n        </div>\n        <div class=\"alert bg-danger\">\n          <strong>Oh snap!</strong> Change a few things up and try submitting again.\n        </div>\n      </div>\n    </div>\n\n    <div class=\"col-md-6\"\n         ba-panel\n         ba-panel-title=\"Dismissible alerts\"\n         ba-panel-class=\"with-scroll\">\n      <div >\n        <div class=\"alert bg-success closeable\" role=\"alert\"><button type=\"button\" class=\"close\" aria-label=\"Close\"><span aria-hidden=\"true\">&times;</span></button>\n          <strong>Well done!</strong> You successfully read this important alert message.\n        </div>\n        <div class=\"alert bg-info closeable\" role=\"alert\"><button type=\"button\" class=\"close\" aria-label=\"Close\"><span aria-hidden=\"true\">&times;</span></button>\n          <strong>Heads up!</strong> This alert needs your attention, but it's not super important.\n        </div>\n        <div class=\"alert bg-warning closeable\" role=\"alert\"><button type=\"button\" class=\"close\" aria-label=\"Close\"><span aria-hidden=\"true\">&times;</span></button>\n          <strong>Warning!</strong> Better check yourself, you're not looking too good.\n        </div>\n        <div class=\"alert bg-danger closeable\" role=\"alert\"><button type=\"button\" class=\"close\" aria-label=\"Close\"><span aria-hidden=\"true\">&times;</span></button>\n          <strong>Oh snap!</strong> Change a few things up and try submitting again.\n        </div>\n      </div>\n    </div>\n\n  </div>\n\n  <div class=\"row\">\n\n    <div class=\"col-md-6\"\n         ba-panel\n         ba-panel-title=\"Links in alerts\"\n         ba-panel-class=\"with-scroll\">\n      <div >\n        <div class=\"alert bg-success\">\n          <strong>Well done!</strong> You successfully read <a href class=\"alert-link\">this important alert message</a>.\n        </div>\n        <div class=\"alert bg-info\">\n          <strong>Heads up!</strong> This <a href class=\"alert-link\">alert needs your attention</a>, but it's not super important.\n        </div>\n        <div class=\"alert bg-warning\">\n          <strong>Warning!</strong> Better check yourself, you're <a href class=\"alert-link\">not looking too good</a>.\n        </div>\n        <div class=\"alert bg-danger\">\n          <strong>Oh snap!</strong> <a href class=\"alert-link\">Change a few things up</a> and try submitting again.\n        </div>\n      </div>\n    </div>\n\n    <div class=\"col-md-6\"\n         ba-panel\n         ba-panel-title=\"Composite alerts\"\n         ba-panel-class=\"with-scroll\">\n      <div >\n        <div class=\"alert bg-warning\">\n          <h4>Warning!</h4>\n          <strong>Pay attention.</strong> Change a few things up and try submitting again.\n          <div class=\"control-alert\">\n            <button type=\"button\" class=\"btn btn-danger\">Pay Attention</button>\n            <button type=\"button\" class=\"btn btn-primary\">Ignore</button>\n          </div>\n        </div>\n      </div>\n    </div>\n\n  </div>\n\n</div>\n"
  },
  {
    "path": "src/app/pages/ui/alerts/alerts.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.alerts', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('ui.alerts', {\n          url: '/alerts',\n          templateUrl: 'app/pages/ui/alerts/alerts.html',\n          title: 'Alerts',\n          sidebarMeta: {\n            order: 500,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/buttons/ButtonPageCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.buttons')\n      .controller('ButtonPageCtrl', ButtonPageCtrl);\n\n  /** @ngInject */\n  function ButtonPageCtrl($scope, $timeout) {\n    $scope.progressFunction = function() {\n      return $timeout(function() {}, 3000);\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/buttons/buttons.html",
    "content": "<div class=\"widgets\">\n  <div class=\"row\">\n    <div class=\"col-md-3\"\n         ba-panel\n         ba-panel-title=\"Flat Buttons\"\n         ba-panel-class=\"with-scroll button-panel\">\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-default\">Default</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-primary\">Primary</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-success\">Success</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-info\">Info</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-warning\">Warning</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-danger\">Danger</button></div>\n    </div>\n    <div class=\"col-md-3\"\n         ba-panel\n         ba-panel-title=\"Raised Buttons\"\n         ba-panel-class=\"with-scroll button-panel\">\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-default btn-raised\">Default</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-primary btn-raised\">Primary</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-success btn-raised\">Success</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-info btn-raised\">Info</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-warning btn-raised\">Warning</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-danger btn-raised\">Danger</button></div>\n    </div>\n    <div class=\"col-md-3\"\n         ba-panel\n         ba-panel-title=\"Different sizes\"\n         ba-panel-class=\"with-scroll button-panel df-size-button-panel\">\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-default  btn-xs\">Default</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-primary  btn-sm\">Primary</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-success btn-mm\">Success</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-info btn-md\">Info</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-warning btn-xm\">Warning</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-danger btn-lg\">Danger</button></div>\n    </div>\n    <div class=\"col-md-3\"\n         ba-panel\n         ba-panel-title=\"Disabled\"\n         ba-panel-class=\"with-scroll button-panel\">\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-default\" disabled=\"disabled\">Default</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-primary\" disabled=\"disabled\">Primary</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-success\" disabled=\"disabled\">Success</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-info\" disabled=\"disabled\">Info</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-warning\" disabled=\"disabled\">Warning</button></div>\n      <div class=\"button-wrapper\"><button type=\"button\" class=\"btn btn-danger\" disabled=\"disabled\">Danger</button></div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-6\">\n      <div\n          ba-panel\n          ba-panel-title=\"Icon Buttons\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/ui/buttons/widgets/iconButtons.html'\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Large Buttons\"\n          ba-panel-class=\"with-scroll large-buttons-panel\">\n        <div ng-include=\"'app/pages/ui/buttons/widgets/largeButtons.html'\"></div>\n      </div>\n    </div>\n    <div class=\"col-md-6\">\n      <div\n          ba-panel\n          ba-panel-title=\"Button Dropdowns\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/ui/buttons/widgets/dropdowns.html'\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Button Groups\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/ui/buttons/widgets/buttonGroups.html'\"></div>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-12\"\n         ba-panel\n         ba-panel-title=\"Progress Buttons\"\n         ba-panel-class=\"with-scroll\">\n      <div ng-include=\"'app/pages/ui/buttons/widgets/progressButtons.html'\"></div>\n    </div>\n  </div>\n\n</div>"
  },
  {
    "path": "src/app/pages/ui/buttons/buttons.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.buttons', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('ui.buttons', {\n          url: '/buttons',\n          templateUrl: 'app/pages/ui/buttons/buttons.html',\n          controller: 'ButtonPageCtrl',\n          title: 'Buttons',\n          sidebarMeta: {\n            order: 100,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/buttons/widgets/buttonGroups.html",
    "content": "<div class=\"btn-group-example\">\n  <div class=\"btn-group\" role=\"group\" aria-label=\"Basic example\">\n    <button type=\"button\" class=\"btn btn-danger\">Left</button>\n    <button type=\"button\" class=\"btn btn-danger\">Middle</button>\n    <button type=\"button\" class=\"btn btn-danger\">Right</button>\n  </div>\n</div>\n\n<div class=\"btn-toolbar-example\">\n  <div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Toolbar with button groups\">\n    <div class=\"btn-group\" role=\"group\" aria-label=\"First group\">\n      <button type=\"button\" class=\"btn btn-primary\">1</button>\n      <button type=\"button\" class=\"btn btn-primary\">2</button>\n      <button type=\"button\" class=\"btn btn-primary\">3</button>\n      <button type=\"button\" class=\"btn btn-primary\">4</button>\n    </div>\n    <div class=\"btn-group\" role=\"group\" aria-label=\"Second group\">\n      <button type=\"button\" class=\"btn btn-primary\">5</button>\n      <button type=\"button\" class=\"btn btn-primary\">6</button>\n      <button type=\"button\" class=\"btn btn-primary\">7</button>\n    </div>\n    <div class=\"btn-group\" role=\"group\" aria-label=\"Third group\">\n      <button type=\"button\" class=\"btn btn-primary\">8</button>\n    </div>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/ui/buttons/widgets/buttons.html",
    "content": "<div class=\"basic-btns\">\n  <div class=\"row\">\n    <div class=\"col-md-2\"><h5>Default button</h5></div>\n    <div class=\"col-md-10\">\n      <div class=\"row btns-row btns-same-width-md\">\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-primary\">Primary</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-default\">Default</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-success\">Success</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-info\">Info</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-warning\">Warning</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-danger\">Danger</button></div>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-2\"><h5 class=\"row-sm\">Small button</h5></div>\n    <div class=\"col-md-10\">\n    <div class=\"row btns-row btns-same-width-md\">\n      <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-primary btn-sm\">Primary</button></div>\n      <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-default btn-sm\">Default</button></div>\n      <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-success btn-sm\">Success</button></div>\n      <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-info btn-sm\">Info</button></div>\n      <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-warning btn-sm\">Warning</button></div>\n      <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-danger btn-sm\">Danger</button></div>\n    </div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-2\"><h5 class=\"row-xs\">Extra small button</h5></div>\n    <div class=\"col-md-10\">\n      <div class=\"row btns-row btns-same-width-md\">\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-primary btn-xs\">Primary</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-default btn-xs\">Default</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-success btn-xs\">Success</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-info btn-xs\">Info</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-warning btn-xs\">Warning</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-danger btn-xs\">Danger</button></div>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-2\"><h5>Disabled button</h5></div>\n    <div class=\"col-md-10\">\n      <div class=\"row btns-row btns-same-width-md\">\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-primary\" disabled=\"disabled\">Primary</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-default\" disabled=\"disabled\">Default</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-success\" disabled=\"disabled\">Success</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-info\" disabled=\"disabled\">Info</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-warning\" disabled=\"disabled\">Warning</button></div>\n        <div class=\"col-sm-2 col-xs-4\"><button type=\"button\" class=\"btn btn-danger\" disabled=\"disabled\">Danger</button></div>\n      </div>\n    </div>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/ui/buttons/widgets/dropdowns.html",
    "content": "<div class=\"row btns-row\">\n  <div class=\"col-sm-4 col-xs-6\">\n    <div class=\"btn-group\" uib-dropdown dropdown-append-to-body>\n      <button type=\"button\" class=\"btn btn-primary \" uib-dropdown-toggle>\n        Primary <span class=\"caret\"></span>\n      </button>\n      <ul uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n  <div class=\"col-sm-4 col-xs-6\">\n    <div class=\"btn-group\" uib-dropdown dropdown-append-to-body>\n      <button type=\"button\" class=\"btn btn-success \" uib-dropdown-toggle>\n        Success <span class=\"caret\"></span>\n      </button>\n      <ul uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n  <div class=\"col-sm-4 col-xs-6\">\n    <div class=\"btn-group\" uib-dropdown dropdown-append-to-body>\n      <button type=\"button\" class=\"btn btn-info \" uib-dropdown-toggle>\n        Info <span class=\"caret\"></span>\n      </button>\n      <ul uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n  <div class=\"col-sm-4 col-xs-6\">\n    <div class=\"btn-group\" uib-dropdown dropdown-append-to-body>\n      <button type=\"button\" class=\"btn btn-default \" uib-dropdown-toggle>\n        Default <span class=\"caret\"></span>\n      </button>\n      <ul uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n  <div class=\"col-sm-4 col-xs-6\">\n    <div class=\"btn-group\" uib-dropdown dropdown-append-to-body>\n      <button type=\"button\" class=\"btn btn-warning \" uib-dropdown-toggle>\n        Warning <span class=\"caret\"></span>\n      </button>\n      <ul uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n  <div class=\"col-sm-4 col-xs-6\">\n    <div class=\"btn-group\" uib-dropdown dropdown-append-to-body>\n      <button type=\"button\" class=\"btn btn-danger \" uib-dropdown-toggle>\n        Danger <span class=\"caret\"></span>\n      </button>\n      <ul uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n<h5 class=\"panel-subtitle\">Split button dropdowns</h5>\n\n<div class=\"row btns-row\">\n  <div class=\"col-sm-4 col-xs-6\">\n    <div class=\"btn-group\" uib-dropdown dropdown-append-to-body>\n      <button type=\"button\" class=\"btn btn-primary\">Primary</button>\n      <button type=\"button\" class=\"btn btn-primary \" uib-dropdown-toggle>\n        <span class=\"caret\"></span>\n        <span class=\"sr-only\">Toggle Dropdown</span>\n      </button>\n      <ul uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n  <div class=\"col-sm-4 col-xs-6\">\n    <div class=\"btn-group\" uib-dropdown dropdown-append-to-body>\n      <button type=\"button\" class=\"btn btn-success\">Success</button>\n      <button type=\"button\" class=\"btn btn-success \" uib-dropdown-toggle>\n        <span class=\"caret\"></span>\n        <span class=\"sr-only\">Toggle Dropdown</span>\n      </button>\n      <ul uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n  <div class=\"col-sm-4 col-xs-6\">\n    <div class=\"btn-group\" uib-dropdown dropdown-append-to-body>\n      <button type=\"button\" class=\"btn btn-info\">Info</button>\n      <button type=\"button\" class=\"btn btn-info \" uib-dropdown-toggle>\n        <span class=\"caret\"></span>\n        <span class=\"sr-only\">Toggle Dropdown</span>\n      </button>\n      <ul uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n  <div class=\"col-sm-4 col-xs-6\">\n    <div class=\"btn-group\" uib-dropdown dropdown-append-to-body>\n      <button type=\"button\" class=\"btn btn-default\">Default</button>\n      <button type=\"button\" class=\"btn btn-default \" uib-dropdown-toggle>\n        <span class=\"caret\"></span>\n        <span class=\"sr-only\">Toggle Dropdown</span>\n      </button>\n      <ul uib-dropdown-menu uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n  <div class=\"col-sm-4 col-xs-6\">\n    <div class=\"btn-group\" uib-dropdown dropdown-append-to-body>\n      <button type=\"button\" class=\"btn btn-warning\">Warning</button>\n      <button type=\"button\" class=\"btn btn-warning \" uib-dropdown-toggle>\n        <span class=\"caret\"></span>\n        <span class=\"sr-only\">Toggle Dropdown</span>\n      </button>\n      <ul uib-dropdown-menu uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n  <div class=\"col-sm-4 col-xs-6\">\n    <div class=\"btn-group\" uib-dropdown dropdown-append-to-body>\n      <button type=\"button\" class=\"btn btn-danger\">Danger</button>\n      <button type=\"button\" class=\"btn btn-danger \" uib-dropdown-toggle>\n        <span class=\"caret\"></span>\n        <span class=\"sr-only\">Toggle Dropdown</span>\n      </button>\n      <ul uib-dropdown-menu uib-dropdown-menu>\n        <li><a href>Action</a></li>\n        <li><a href>Another action</a></li>\n        <li><a href>Something else here</a></li>\n        <li role=\"separator\" class=\"divider\"></li>\n        <li><a href>Separated link</a></li>\n      </ul>\n    </div>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/ui/buttons/widgets/iconButtons.html",
    "content": "<ul class=\"btn-list clearfix\">\n  <li><button type=\"button\" class=\"btn btn-primary btn-icon\"><i class=\"ion-android-download\"></i></button></li>\n  <li><button type=\"button\" class=\"btn btn-default btn-icon\"><i class=\"ion-stats-bars\"></i></button></li>\n  <li><button type=\"button\" class=\"btn btn-success btn-icon\"><i class=\"ion-android-checkmark-circle\"></i></button></li>\n  <li><button type=\"button\" class=\"btn btn-info btn-icon\"><i class=\"ion-information\"></i></button></li>\n  <li><button type=\"button\" class=\"btn btn-warning btn-icon\"><i class=\"ion-android-warning\"></i></button></li>\n  <li><button type=\"button\" class=\"btn btn-danger btn-icon\"><i class=\"ion-nuclear\"></i></button></li>\n</ul>\n\n<h5 class=\"panel-subtitle\">Buttons with icons</h5>\n\n<ul class=\"btn-list clearfix\">\n  <li><button type=\"button\" class=\"btn btn-primary btn-with-icon\"><i class=\"ion-android-download\"></i>Primary</button></li>\n  <li><button type=\"button\" class=\"btn btn-default btn-with-icon\"><i class=\"ion-stats-bars\"></i>Default</button></li>\n  <li><button type=\"button\" class=\"btn btn-success btn-with-icon\"><i class=\"ion-android-checkmark-circle\"></i>Success</button></li>\n  <li><button type=\"button\" class=\"btn btn-info btn-with-icon\"><i class=\"ion-information\"></i>Info</button></li>\n  <li><button type=\"button\" class=\"btn btn-warning btn-with-icon\"><i class=\"ion-android-warning\"></i>Warning</button></li>\n  <li><button type=\"button\" class=\"btn btn-danger btn-with-icon\"><i class=\"ion-nuclear\"></i>Danger</button></li>\n</ul>"
  },
  {
    "path": "src/app/pages/ui/buttons/widgets/largeButtons.html",
    "content": "<div class=\"row btns-row btns-same-width-lg\">\n  <div class=\"col-sm-4 col-xs-6\"><button type=\"button\" class=\"btn btn-primary btn-lg\">Primary</button></div>\n  <div class=\"col-sm-4 col-xs-6\"><button type=\"button\" class=\"btn btn-success btn-lg\">Success</button></div>\n  <div class=\"col-sm-4 col-xs-6\"><button type=\"button\" class=\"btn btn-info btn-lg\">Info</button></div>\n  <div class=\"col-sm-4 col-xs-6\"><button type=\"button\" class=\"btn btn-default btn-lg\">Default</button></div>\n  <div class=\"col-sm-4 col-xs-6\"><button type=\"button\" class=\"btn btn-warning btn-lg\">Warning</button></div>\n  <div class=\"col-sm-4 col-xs-6\"><button type=\"button\" class=\"btn btn-danger btn-lg\">Danger</button></div>\n</div>"
  },
  {
    "path": "src/app/pages/ui/buttons/widgets/progressButtons.html",
    "content": "<div class=\"progress-buttons-container text-center default-text\">\n  <div class=\"row\">\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">fill horizontal</span>\n      <button progress-button=\"progressFunction()\" class=\"btn btn-success\">Submit</button>\n    </section>\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">fill vertical</span>\n      <button progress-button=\"progressFunction()\" pb-direction=\"vertical\" class=\"btn btn-danger\">Submit</button>\n    </section>\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">shrink horizontal</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"shrink\" class=\"btn btn-warning\">Submit</button>\n    </section>\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">shrink vertical</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"shrink\" pb-direction=\"vertical\" class=\"btn btn-info\">Submit</button>\n    </section>\n  </div>\n  <div class=\"row\">\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">rotate-angle-bottom <br/>perspective</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"rotate-angle-bottom\" class=\"btn btn-success\">Submit</button>\n    </section>\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">rotate-angle-top <br/>perspective</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"rotate-angle-top\" class=\"btn btn-danger\">Submit</button>\n    </section>\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">rotate-angle-left <br/>perspective</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"rotate-angle-left\" class=\"btn btn-warning\">Submit</button>\n    </section>\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">rotate-angle-right <br/>perspective</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"rotate-angle-right\" class=\"btn btn-info\">Submit</button>\n    </section>\n  </div>\n  <div class=\"row\">\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">rotate-side-down <br/>perspective</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"rotate-side-down\" class=\"btn btn-success\">Submit</button>\n    </section>\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">rotate-side-up <br/>perspective</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"rotate-side-up\" class=\"btn btn-danger\">Submit</button>\n    </section>\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">rotate-side-left <br/>perspective</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"rotate-side-left\" class=\"btn btn-warning\">Submit</button>\n    </section>\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">rotate-side-right <br/>perspective</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"rotate-side-right\" class=\"btn btn-info\">Submit</button>\n    </section>\n  </div>\n  <div class=\"row\">\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">rotate-back <br/>perspective</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"rotate-back\" class=\"btn btn-success\">Submit</button>\n    </section>\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">flip-open <br/>perspective</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"flip-open\" class=\"btn btn-danger\">Submit</button>\n    </section>\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">slide-down <br/>horizontal</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"slide-down\" class=\"btn btn-warning\">Submit</button>\n    </section>\n    <section class=\"col-md-6 col-lg-3\">\n      <span class=\"button-title\">move-up <br/>horizontal</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"move-up\" class=\"btn btn-info\">Submit</button>\n    </section>\n  </div>\n  <div class=\"row\">\n    <section class=\"col-md-6\">\n      <span class=\"button-title\">top-line <br/>horizontal</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"top-line\" class=\"btn btn-success\">Submit</button>\n    </section>\n    <section class=\"col-md-6\">\n      <span class=\"button-title\">lateral-lines <br/>vertical</span>\n      <button progress-button=\"progressFunction()\" pb-style=\"lateral-lines\" class=\"btn btn-info\">Submit</button>\n    </section>\n  </div>\n</div>\n"
  },
  {
    "path": "src/app/pages/ui/grid/baseGrid.html",
    "content": "<h4 class=\"grid-h\">Stacked to horizontal</h4>\n<div class=\"row show-grid\">\n  <div class=\"col-md-1\">\n    <div>.col-md-1</div>\n  </div>\n  <div class=\"col-md-1\">\n    <div>.col-md-1</div>\n  </div>\n  <div class=\"col-md-1\">\n    <div>.col-md-1</div>\n  </div>\n  <div class=\"col-md-1\">\n    <div>.col-md-1</div>\n  </div>\n  <div class=\"col-md-1\">\n    <div>.col-md-1</div>\n  </div>\n  <div class=\"col-md-1\">\n    <div>.col-md-1</div>\n  </div>\n  <div class=\"col-md-1\">\n    <div>.col-md-1</div>\n  </div>\n  <div class=\"col-md-1\">\n    <div>.col-md-1</div>\n  </div>\n  <div class=\"col-md-1\">\n    <div>.col-md-1</div>\n  </div>\n  <div class=\"col-md-1\">\n    <div>.col-md-1</div>\n  </div>\n  <div class=\"col-md-1\">\n    <div>.col-md-1</div>\n  </div>\n  <div class=\"col-md-1\">\n    <div>.col-md-1</div>\n  </div>\n</div>\n<div class=\"row show-grid\">\n  <div class=\"col-md-8\">\n    <div>.col-md-8</div>\n  </div>\n  <div class=\"col-md-4\">\n    <div>.col-md-4</div>\n  </div>\n</div>\n<div class=\"row show-grid\">\n  <div class=\"col-md-4\">\n    <div>.col-md-4</div>\n  </div>\n  <div class=\"col-md-4\">\n    <div>.col-md-4</div>\n  </div>\n  <div class=\"col-md-4\">\n    <div>.col-md-4</div>\n  </div>\n</div>\n<div class=\"row show-grid\">\n  <div class=\"col-md-6\">\n    <div>.col-md-6</div>\n  </div>\n  <div class=\"col-md-6\">\n    <div>.col-md-6</div>\n  </div>\n</div>\n\n<h4 class=\"grid-h\">Mobile and desktop</h4>\n<div class=\"row show-grid\">\n  <div class=\"col-xs-12 col-md-8\">\n    <div>xs-12 .col-md-8</div>\n  </div>\n  <div class=\"col-xs-6 col-md-4\">\n    <div>xs-6 .col-md-4</div>\n  </div>\n</div>\n<div class=\"row show-grid\">\n  <div class=\"col-xs-6 col-md-4\">\n    <div>xs-6 .col-md-4</div>\n  </div>\n  <div class=\"col-xs-6 col-md-4\">\n    <div>xs-6 .col-md-4</div>\n  </div>\n  <div class=\"col-xs-6 col-md-4\">\n    <div>xs-6 .col-md-4</div>\n  </div>\n</div>\n<div class=\"row show-grid\">\n  <div class=\"col-xs-6\">\n    <div>.col-xs-6</div>\n  </div>\n  <div class=\"col-xs-6\">\n    <div>.col-xs-6</div>\n  </div>\n</div>\n\n<h4 class=\"grid-h\">Mobile, tablet, desktop</h4>\n<div class=\"row show-grid\">\n  <div class=\"col-xs-12 col-sm-6 col-md-8\">\n    <div>.col-xs-12 .col-sm-6 .col-md-8</div>\n  </div>\n  <div class=\"col-xs-6 col-md-4\">\n    <div>.col-xs-6 .col-md-4</div>\n  </div>\n</div>\n<div class=\"row show-grid\">\n  <div class=\"col-xs-6 col-sm-4\">\n    <div>.col-xs-6 .col-sm-4</div>\n  </div>\n  <div class=\"col-xs-6 col-sm-4\">\n    <div>.col-xs-6 .col-sm-4</div>\n  </div>\n  <div class=\"clearfix visible-xs-block\"></div>\n  <div class=\"col-xs-6 col-sm-4\">\n    <div>.col-xs-6 .col-sm-4</div>\n  </div>\n</div>\n\n<h4 class=\"grid-h\">Column wrapping</h4>\n<div class=\"row show-grid\">\n  <div class=\"col-xs-9\">\n    <div>.col-xs-9</div>\n  </div>\n  <div class=\"col-xs-4\">\n    <div>.col-xs-4<br>Since 9 + 4 = 13 &gt; 12, this 4-column-wide div gets wrapped onto a new line as one contiguous\n      unit.\n    </div>\n  </div>\n  <div class=\"col-xs-6\">\n    <div>.col-xs-6<br>Subsequent columns continue along the new line.</div>\n  </div>\n</div>\n\n<h4 class=\"grid-h\">Responsive column resets</h4>\n<div class=\"row show-grid\">\n  <div class=\"col-xs-6 col-sm-3\">\n    <div>.col-xs-6 .col-sm-3 <p>Resize your viewport or check it out on your phone for an example.</p></div>\n  </div>\n  <div class=\"col-xs-6 col-sm-3\">\n    <div>.col-xs-6 .col-sm-3</div>\n  </div>\n  <div class=\"clearfix visible-xs-block\"></div>\n  <div class=\"col-xs-6 col-sm-3\">\n    <div>.col-xs-6 .col-sm-3</div>\n  </div>\n  <div class=\"col-xs-6 col-sm-3\">\n    <div>.col-xs-6 .col-sm-3</div>\n  </div>\n</div>\n\n<h4 class=\"grid-h\">Offsetting columns</h4>\n<div class=\"row show-grid\">\n  <div class=\"col-md-4\">\n    <div>.col-md-4</div>\n  </div>\n  <div class=\"col-md-4 col-md-offset-4\">\n    <div>.col-md-4 .col-md-offset-4</div>\n  </div>\n</div>\n<div class=\"row show-grid\">\n  <div class=\"col-md-3 col-md-offset-3\">\n    <div>.col-md-3 .col-md-offset-3</div>\n  </div>\n  <div class=\"col-md-3 col-md-offset-3\">\n    <div>.col-md-3 .col-md-offset-3</div>\n  </div>\n</div>\n<div class=\"row show-grid\">\n  <div class=\"col-md-6 col-md-offset-3\">\n    <div>.col-md-6 .col-md-offset-3</div>\n  </div>\n</div>\n\n<h4 class=\"grid-h\">Grid options</h4>\n<div class=\"table-responsive\">\n<table class=\"table table-bordered table-striped\">\n  <thead>\n  <tr>\n    <th></th>\n    <th> Extra small devices\n      <small>Phones (&lt;768px)</small>\n    </th>\n    <th> Small devices\n      <small>Tablets (≥768px)</small>\n    </th>\n    <th> Medium devices\n      <small>Desktops (≥992px)</small>\n    </th>\n    <th> Large devices\n      <small>Desktops (≥1200px)</small>\n    </th>\n  </tr>\n  </thead>\n  <tbody>\n  <tr>\n    <th class=\"text-nowrap\" scope=\"row\">Grid behavior</th>\n    <td>Horizontal at all times</td>\n    <td colspan=\"3\">Collapsed to start, horizontal above breakpoints</td>\n  </tr>\n  <tr>\n    <th class=\"text-nowrap\" scope=\"row\">Container width</th>\n    <td>None (auto)</td>\n    <td>750px</td>\n    <td>970px</td>\n    <td>1170px</td>\n  </tr>\n  <tr>\n    <th class=\"text-nowrap\" scope=\"row\">Class prefix</th>\n    <td><code>.col-xs-</code></td>\n    <td><code>.col-sm-</code></td>\n    <td><code>.col-md-</code></td>\n    <td><code>.col-lg-</code></td>\n  </tr>\n  <tr>\n    <th class=\"text-nowrap\" scope=\"row\"># of columns</th>\n    <td colspan=\"4\">12</td>\n  </tr>\n  <tr>\n    <th class=\"text-nowrap\" scope=\"row\">Column width</th>\n    <td class=\"text-muted\">Auto</td>\n    <td>~62px</td>\n    <td>~81px</td>\n    <td>~97px</td>\n  </tr>\n  <tr>\n    <th class=\"text-nowrap\" scope=\"row\">Gutter width</th>\n    <td colspan=\"4\">30px (15px on each side of a column)</td>\n  </tr>\n  <tr>\n    <th class=\"text-nowrap\" scope=\"row\">Nestable</th>\n    <td colspan=\"4\">Yes</td>\n  </tr>\n  <tr>\n    <th class=\"text-nowrap\" scope=\"row\">Offsets</th>\n    <td colspan=\"4\">Yes</td>\n  </tr>\n  <tr>\n    <th class=\"text-nowrap\" scope=\"row\">Column ordering</th>\n    <td colspan=\"4\">Yes</td>\n  </tr>\n  </tbody>\n</table>\n</div>"
  },
  {
    "path": "src/app/pages/ui/grid/grid.html",
    "content": "<div class=\"widgets\">\n\n  <div class=\"row\">\n    <div class=\"col-md-12\"\n         ba-panel\n         ba-panel-title=\"Inline Form\"\n         ba-panel-class=\"with-scroll\">\n      <div ng-include=\"'app/pages/ui/grid/baseGrid.html'\"></div>\n    </div>\n  </div>\n\n</div>"
  },
  {
    "path": "src/app/pages/ui/grid/grid.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.grid', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('ui.grid', {\n          url: '/grid',\n          templateUrl: 'app/pages/ui/grid/grid.html',\n          title: 'Grid',\n          sidebarMeta: {\n            order: 400,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/icons/IconsPageCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.icons')\n      .controller('IconsPageCtrl', IconsPageCtrl);\n\n  /** @ngInject */\n  function IconsPageCtrl($scope) {\n    $scope.icons = {\n      kameleonIcons: [\n        {\n          name: 'Beach',\n          img: 'Beach'\n        },\n        {\n          name: 'Bus',\n          img: 'Bus'\n        },\n        {\n          name: 'Cheese',\n          img: 'Cheese'\n        },\n        {\n          name: 'Desert',\n          img: 'Desert'\n        },\n        {\n          name: 'Images',\n          img: 'Images'\n        },\n        {\n          name: 'Magician',\n          img: 'Magician'\n        },\n        {\n          name: 'Makeup',\n          img: 'Makeup'\n        },\n        {\n          name: 'Programming',\n          img: 'Programming'\n        },\n        {\n          name: 'Shop',\n          img: 'Shop'\n        },\n        {\n          name: 'Surfer',\n          img: 'Surfer'\n        },\n        {\n          name: 'Phone Booth',\n          img: 'Phone-Booth'\n        },\n        {\n          name: 'Ninja',\n          img: 'Ninja'\n        },\n        {\n          name: 'Apartment',\n          img: 'Apartment'\n        },\n        {\n          name: 'Batman',\n          img: 'Batman'\n        },\n        {\n          name: 'Medal',\n          img: 'Medal-2'\n        },\n        {\n          name: 'Money',\n          img: 'Money-Increase'\n        },\n        {\n          name: 'Street View',\n          img: 'Street-View'\n        },\n        {\n          name: 'Student',\n          img: 'Student-3'\n        },\n        {\n          name: 'Bell',\n          img: 'Bell'\n        },\n        {\n          name: 'Woman',\n          img: 'Boss-5'\n        },\n        {\n          name: 'Euro',\n          img: 'Euro-Coin'\n        },\n        {\n          name: 'Chessboard',\n          img: 'Chessboard'\n        },\n        {\n          name: 'Burglar',\n          img: 'Burglar'\n        },\n        {\n          name: 'Dna',\n          img: 'Dna'\n        },\n        {\n          name: 'Clipboard Plan',\n          img: 'Clipboard-Plan'\n        },\n        {\n          name: 'Boss',\n          img: 'Boss-3'\n        },\n        {\n          name: 'Key',\n          img: 'Key'\n        },\n        {\n          name: 'Surgeon',\n          img: 'Surgeon'\n        },\n        {\n          name: 'Hacker',\n          img: 'Hacker'\n        },\n        {\n          name: 'Santa',\n          img: 'Santa'\n        }\n      ],\n      kameleonRoundedIcons: [\n        {\n          color: 'success',\n          img: 'Apartment',\n          name: 'Apartment'\n        },\n        {\n          color: 'warning',\n          img: 'Bus',\n          name: 'Bus'\n        },\n        {\n          color: 'primary',\n          img: 'Checklist',\n          name: 'Checklist'\n        },\n        {\n          color: 'warning',\n          img: 'Desert',\n          name: 'Desert'\n        },\n        {\n          color: 'danger',\n          img: 'Laptop-Signal',\n          name: 'Laptop Signal'\n        },\n        {\n          color: 'info',\n          img: 'Love-Letter',\n          name: 'Love Letter'\n        },\n        {\n          color: 'success',\n          img: 'Makeup',\n          name: 'Makeup'\n        },\n        {\n          color: 'primary',\n          img: 'Santa',\n          name: 'Santa'\n        },\n        {\n          color: 'success',\n          img: 'Surfer',\n          name: 'Surfer'\n        },\n        {\n          color: 'info',\n          img: 'Vector',\n          name: 'Vector'\n        },\n        {\n          color: 'warning',\n          img: 'Money-Increase',\n          name: 'Money Increase'\n        },\n        {\n          color: 'info',\n          img: 'Alien',\n          name: 'Alien'\n        },\n        {\n          color: 'danger',\n          img: 'Online-Shopping',\n          name: 'Online Shopping'\n        },\n        {\n          color: 'warning',\n          img: 'Euro-Coin',\n          name: 'Euro'\n        },\n        {\n          color: 'info',\n          img: 'Boss-3',\n          name: 'Boss'\n        }\n      ],\n      ionicons: ['ion-ionic', 'ion-arrow-right-b', 'ion-arrow-down-b', 'ion-arrow-left-b', 'ion-arrow-up-c', 'ion-arrow-right-c', 'ion-arrow-down-c', 'ion-arrow-left-c', 'ion-arrow-return-right', 'ion-arrow-return-left', 'ion-arrow-swap', 'ion-arrow-shrink', 'ion-arrow-expand', 'ion-arrow-move', 'ion-arrow-resize', 'ion-chevron-up', 'ion-chevron-right', 'ion-chevron-down', 'ion-chevron-left', 'ion-navicon-round', 'ion-navicon', 'ion-drag', 'ion-log-in', 'ion-log-out', 'ion-checkmark-round', 'ion-checkmark', 'ion-checkmark-circled', 'ion-close-round', 'ion-plus-round', 'ion-minus-round', 'ion-information', 'ion-help', 'ion-backspace-outline', 'ion-help-buoy', 'ion-asterisk', 'ion-alert', 'ion-alert-circled', 'ion-refresh', 'ion-loop', 'ion-shuffle', 'ion-home', 'ion-search', 'ion-flag', 'ion-star', 'ion-heart', 'ion-heart-broken', 'ion-gear-a', 'ion-gear-b', 'ion-toggle-filled', 'ion-toggle', 'ion-settings', 'ion-wrench', 'ion-hammer', 'ion-edit', 'ion-trash-a', 'ion-trash-b', 'ion-document', 'ion-document-text', 'ion-clipboard', 'ion-scissors', 'ion-funnel', 'ion-bookmark', 'ion-email', 'ion-email-unread', 'ion-folder', 'ion-filing', 'ion-archive', 'ion-reply', 'ion-reply-all', 'ion-forward'],\n      fontAwesomeIcons: ['fa fa-adjust', 'fa fa-anchor', 'fa fa-archive', 'fa fa-area-chart', 'fa fa-arrows', 'fa fa-arrows-h', 'fa fa-arrows-v', 'fa fa-asterisk', 'fa fa-at', 'fa fa-automobile', 'fa fa-ban', 'fa fa-bank', 'fa fa-bar-chart', 'fa fa-bar-chart-o', 'fa fa-barcode', 'fa fa-bars', 'fa fa-bed', 'fa fa-beer', 'fa fa-bell', 'fa fa-bell-o', 'fa fa-bell-slash', 'fa fa-bell-slash-o', 'fa fa-bicycle', 'fa fa-binoculars', 'fa fa-birthday-cake', 'fa fa-bolt', 'fa fa-bomb', 'fa fa-book', 'fa fa-bookmark', 'fa fa-bookmark-o', 'fa fa-briefcase', 'fa fa-bug', 'fa fa-building', 'fa fa-building-o', 'fa fa-bullhorn'],\n      socicon: ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', ',', ';', ':', '+', '@', '=', '-', '^', '?', '$', '*', '&', '(', '#', '.', '_', ']', ')', '\\'', '\"', '}', '{']\n    }\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/icons/icons.html",
    "content": "<div class=\"widgets\">\n\n  <div class=\"row\">\n    <div class=\"col-md-6\">\n      <div\n          ba-panel\n          ba-panel-title=\"Kameleon SVG Icons\"\n          ba-panel-class=\"with-scroll\">\n        <div include-with-scope=\"app/pages/ui/icons/widgets/kameleon.html\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Socicon\"\n          ba-panel-class=\"with-scroll\">\n        <div include-with-scope=\"app/pages/ui/icons/widgets/socicon.html\"></div>\n      </div>\n    </div>\n    <div class=\"col-md-6\">\n      <div\n          ba-panel\n          ba-panel-title=\"Icons With Rounded Background\"\n          ba-panel-class=\"with-scroll\">\n        <div include-with-scope=\"app/pages/ui/icons/widgets/kameleonRounded.html\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"ionicons\"\n          ba-panel-class=\"with-scroll\">\n        <div include-with-scope=\"app/pages/ui/icons/widgets/ionicons.html\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Font Awesome Icons\"\n          ba-panel-class=\"with-scroll\">\n        <div include-with-scope=\"app/pages/ui/icons/widgets/fontAwesomeIcons.html\"></div>\n      </div>\n    </div>\n  </div>\n\n</div>"
  },
  {
    "path": "src/app/pages/ui/icons/icons.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.icons', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('ui.icons', {\n          url: '/icons',\n          templateUrl: 'app/pages/ui/icons/icons.html',\n          controller: 'IconsPageCtrl',\n          title: 'Icons',\n          sidebarMeta: {\n            order: 200,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/icons/widgets/fontAwesomeIcons.html",
    "content": "<div class=\"row icons-list success awesomeIcons\">\n  <div class=\"col-xs-2\" ng-repeat=\"icon in icons.fontAwesomeIcons\"><i class=\"fa {{icon}}\"></i></div>\n</div>\n<a href=\"http://fortawesome.github.io/Font-Awesome/icons/\" target=\"_blank\" class=\"see-all-icons\">See all Font Awesome icons</a>"
  },
  {
    "path": "src/app/pages/ui/icons/widgets/ionicons.html",
    "content": "<div class=\"row icons-list primary\">\n  <div class=\"col-xs-2\" ng-repeat=\"icon in icons.ionicons\"><i class=\"{{icon}}\"></i></div>\n</div>\n<a href=\"http://ionicons.com/\" target=\"_blank\" class=\"see-all-icons\">See all ionicons icons</a>"
  },
  {
    "path": "src/app/pages/ui/icons/widgets/kameleon.html",
    "content": "<div class=\"row clearfix\">\n  <div class=\"kameleon-row\" ng-repeat=\"icon in icons.kameleonIcons\">\n    <div class=\"kameleon-icon\"><img ng-src=\"{{:: (icon.img | kameleonImg )}}\"><span>{{icon.name}}</span></div>\n  </div>\n</div>\n\n<a href=\"http://www.kameleon.pics/\" target=\"_blank\" class=\"see-all-icons\">See all Kamaleon icons</a>\n\n"
  },
  {
    "path": "src/app/pages/ui/icons/widgets/kameleonRounded.html",
    "content": "<div class=\"row clearfix\">\n  <div class=\"kameleon-row\" ng-repeat=\"icon in icons.kameleonRoundedIcons\">\n    <div class=\"kameleon-icon with-round-bg {{icon.color}}\"><img ng-src=\"{{::( icon.img | kameleonImg )}}\"><span>{{ icon.name }}</span></div>\n  </div>\n</div>\n\n<a href=\"http://www.kameleon.pics/\" target=\"_blank\" class=\"see-all-icons\">See all Kamaleon icons</a>"
  },
  {
    "path": "src/app/pages/ui/icons/widgets/socicon.html",
    "content": "<div class=\"row icons-list danger\">\n  <div class=\"col-xs-2\" ng-repeat=\"icon in icons.socicon\"><i class=\"socicon\">{{ icon }}</i></div>\n</div>\n<a href=\"http://www.socicon.com/chart.php\" target=\"_blank\" class=\"see-all-icons\">See all Socicon icons</a>"
  },
  {
    "path": "src/app/pages/ui/modals/ModalsPageCtrl.js",
    "content": "/**\n * @author a.demeshko\n * created on 18.01.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.notifications')\n    .controller('ModalsPageCtrl', ModalsPageCtrl);\n\n  /** @ngInject */\n  function ModalsPageCtrl($scope, $uibModal, baProgressModal) {\n    $scope.open = function (page, size) {\n      $uibModal.open({\n        animation: true,\n        templateUrl: page,\n        size: size,\n        resolve: {\n          items: function () {\n            return $scope.items;\n          }\n        }\n      });\n    };\n    $scope.openProgressDialog = baProgressModal.open;\n  }\n\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/modals/modalTemplates/basicModal.html",
    "content": "<div class=\"modal-content\">\n  <div class=\"modal-header\">\n    <button type=\"button\" class=\"close\" ng-click=\"$dismiss()\" aria-label=\"Close\">\n      <em class=\"ion-ios-close-empty sn-link-close\"></em>\n    </button>\n    <h4 class=\"modal-title\" id=\"myModalLabel\">Modal title</h4>\n  </div>\n  <div class=\"modal-body\">\n    Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet\n    dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper\n    suscipit lobortis nisl ut aliquip ex ea commodo consequat.\n  </div>\n  <div class=\"modal-footer\">\n    <button type=\"button\" class=\"btn btn-primary\" ng-click=\"$dismiss()\">Save changes</button>\n  </div>\n</div>\n"
  },
  {
    "path": "src/app/pages/ui/modals/modalTemplates/dangerModal.html",
    "content": "<div class=\"modal-content\">\n  <div class=\"modal-header bg-danger\">\n    <i class=\"ion-flame modal-icon\"></i><span> Error</span>\n  </div>\n  <div class=\"modal-body text-center\">Your information hasn't been saved!</div>\n  <div class=\"modal-footer\">\n    <button type=\"button\" class=\"btn btn-danger\" ng-click=\"$dismiss()\">OK</button>\n  </div>\n</div>\n"
  },
  {
    "path": "src/app/pages/ui/modals/modalTemplates/infoModal.html",
    "content": "<div class=\"modal-content\">\n  <div class=\"modal-header bg-info\">\n    <i class=\"ion-information-circled modal-icon\"></i><span> Information</span>\n  </div>\n  <div class=\"modal-body text-center\">You've got a new email!</div>\n  <div class=\"modal-footer\">\n    <button type=\"button\" class=\"btn btn-info\" ng-click=\"$dismiss()\">OK</button>\n  </div>\n</div>\n"
  },
  {
    "path": "src/app/pages/ui/modals/modalTemplates/largeModal.html",
    "content": "<div class=\"modal-content\">\n  <div class=\"modal-header\">\n    <button type=\"button\" class=\"close\" ng-click=\"$dismiss()\" aria-label=\"Close\">\n      <em class=\"ion-ios-close-empty sn-link-close\"></em>\n    </button>\n    <h4 class=\"modal-title\">Modal title</h4>\n  </div>\n  <div class=\"modal-body\">\n    Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet\n    dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper\n    suscipit lobortis nisl ut aliquip ex ea commodo consequat.\n  </div>\n  <div class=\"modal-footer\">\n    <button type=\"button\" class=\"btn btn-primary\" ng-click=\"$dismiss()\">Save changes</button>\n  </div>\n</div>\n"
  },
  {
    "path": "src/app/pages/ui/modals/modalTemplates/smallModal.html",
    "content": "<div class=\"modal-content\">\n  <div class=\"modal-header\">\n    <button type=\"button\" class=\"close\" ng-click=\"$dismiss()\" aria-label=\"Close\">\n      <em class=\"ion-ios-close-empty sn-link-close\"></em>\n    </button>\n    <h4 class=\"modal-title\">Modal title</h4>\n  </div>\n  <div class=\"modal-body\">\n    Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet\n    dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper\n    suscipit lobortis nisl ut aliquip ex ea commodo consequat.\n  </div>\n  <div class=\"modal-footer\">\n    <button type=\"button\" class=\"btn btn-primary\" ng-click=\"$dismiss()\">Save changes</button>\n  </div>\n</div>\n\n"
  },
  {
    "path": "src/app/pages/ui/modals/modalTemplates/successModal.html",
    "content": "<div class=\"modal-content\">\n  <div class=\"modal-header bg-success\">\n    <i class=\"ion-checkmark modal-icon\"></i><span> Success</span>\n  </div>\n  <div class=\"modal-body text-center\">Your information has been saved successfully</div>\n  <div class=\"modal-footer\">\n    <button type=\"button\" class=\"btn btn-success\" ng-click=\"$dismiss()\">OK</button>\n  </div>\n</div>\n\n"
  },
  {
    "path": "src/app/pages/ui/modals/modalTemplates/warningModal.html",
    "content": "<div class=\"modal-content\">\n  <div class=\"modal-header bg-warning\">\n    <i class=\"ion-android-warning modal-icon\"></i><span> Warning</span>\n  </div>\n  <div class=\"modal-body text-center\">Your computer is about to explode!</div>\n  <div class=\"modal-footer\">\n    <button type=\"button\" class=\"btn btn-warning\" ng-click=\"$dismiss()\">OK</button>\n  </div>\n</div>\n"
  },
  {
    "path": "src/app/pages/ui/modals/modals.html",
    "content": "<div class=\"widgets\">\n\n  <div class=\"row\">\n    <div class=\"col-md-12\"\n         ba-panel\n         ba-panel-title=\"Modals\"\n         ba-panel-class=\"with-scroll\">\n      <div class=\"modal-buttons clearfix\">\n        <button type=\"button\" class=\"btn btn-primary\" data-toggle=\"modal\" ng-click=\"open('app/pages/ui/modals/modalTemplates/basicModal.html', 'md')\">Default modal</button>\n        <button type=\"button\" class=\"btn btn-success\" data-toggle=\"modal\" ng-click=\"open('app/pages/ui/modals/modalTemplates/largeModal.html', 'lg')\">\n          Large modal\n        </button>\n        <button type=\"button\" class=\"btn btn-warning\" data-toggle=\"modal\" ng-click=\"open('app/pages/ui/modals/modalTemplates/smallModal.html', 'sm')\">\n          Small modal\n        </button>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-6\"\n         ba-panel\n         ba-panel-title=\"Message Modals\"\n         ba-panel-class=\"with-scroll\">\n      <div class=\"modal-buttons same-width clearfix\">\n        <button type=\"button\" class=\"btn btn-success\" data-toggle=\"modal\" ng-click=\"open('app/pages/ui/modals/modalTemplates/successModal.html')\">\n          Success Message\n        </button>\n        <button type=\"button\" class=\"btn btn-info\" data-toggle=\"modal\" ng-click=\"open('app/pages/ui/modals/modalTemplates/infoModal.html')\">Info Message</button>\n        <button type=\"button\" class=\"btn btn-warning\" data-toggle=\"modal\" ng-click=\"open('app/pages/ui/modals/modalTemplates/warningModal.html')\">\n          Warning Message\n        </button>\n        <button type=\"button\" class=\"btn btn-danger\" data-toggle=\"modal\" ng-click=\"open('app/pages/ui/modals/modalTemplates/dangerModal.html')\">\n          Danger Message\n        </button>\n      </div>\n    </div>\n    <div class=\"col-md-6\"\n         ba-panel\n         ba-panel-title=\"Notifications\"\n         ba-panel-class=\"with-scroll\">\n      <div ng-include=\"'app/pages/ui/modals/notifications/notifications.html'\"></div>\n    </div>\n  </div>\n  <div class=\"row\">\n    <div class=\"col-md-6\"\n         ba-panel\n         ba-panel-title=\"Progress dialogs\"\n         ba-panel-class=\"with-scroll\">\n      <div class=\"modal-buttons same-width clearfix\">\n        <button type=\"button\" class=\"btn btn-info\" data-toggle=\"modal\" ng-click=\"openProgressDialog()\">\n          Progress dialog\n        </button>\n      </div>\n    </div>\n  </div>\n\n</div>\n"
  },
  {
    "path": "src/app/pages/ui/modals/modals.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.modals', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('ui.modals', {\n          url: '/modals',\n          templateUrl: 'app/pages/ui/modals/modals.html',\n          controller: 'ModalsPageCtrl',\n          title: 'Modals',\n          sidebarMeta: {\n            order: 300,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/modals/notifications/NotificationsCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.modals')\n      .controller('NotificationsCtrl', NotificationsCtrl);\n\n  /** @ngInject */\n  function NotificationsCtrl($scope, toastr) {\n    $scope.showSuccessMsg = function() {\n      toastr.success('Your information has been saved successfully!');\n    };\n\n    $scope.showInfoMsg = function() {\n      toastr.info(\"You've got a new email!\", 'Information');\n    };\n\n    $scope.showErrorMsg = function() {\n      toastr.error(\"Your information hasn't been saved!\", 'Error');\n    };\n\n    $scope.showWarningMsg = function() {\n      toastr.warning('Your computer is about to explode!', 'Warning');\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/modals/notifications/notifications.html",
    "content": "<div class=\"modal-buttons same-width clearfix\" ng-controller=\"NotificationsCtrl\">\n  <button type=\"button\" class=\"btn btn-success\" ng-click=\"showSuccessMsg()\">Success Notification</button>\n  <button type=\"button\" class=\"btn btn-info\" ng-click=\"showInfoMsg()\">Info Notification</button>\n  <button type=\"button\" class=\"btn btn-warning\" ng-click=\"showWarningMsg()\">Warning Notification</button>\n  <button type=\"button\" class=\"btn btn-danger\" ng-click=\"showErrorMsg()\">Danger Notification</button>\n</div>"
  },
  {
    "path": "src/app/pages/ui/modals/progressModal/ProgressModalCtrl.js",
    "content": "/**\n * Created by n.poltoratsky\n * on 24.06.2016.\n */\n(function () {\n    'use strict';\n\n    angular.module('BlurAdmin.pages.ui.modals')\n        .controller('ProgressModalCtrl', ProgressModalCtrl);\n\n    function ProgressModalCtrl($timeout, baProgressModal) {\n\n        baProgressModal.setProgress(0);\n\n        (function changeValue() {\n            if (baProgressModal.getProgress() >= 100) {\n                baProgressModal.close();\n            } else {\n                baProgressModal.setProgress(baProgressModal.getProgress() + 10);\n                $timeout(changeValue, 300);\n            }\n        })();\n    }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/modals/progressModal/progressModal.html",
    "content": "<div class=\"modal-content\" ng-controller=\"ProgressModalCtrl\">\n    <div class=\"modal-body\">\n        <progress-bar-round>\n        </progress-bar-round>\n    </div>\n    <div class=\"modal-footer\">\n    </div>\n</div>"
  },
  {
    "path": "src/app/pages/ui/notifications/NotificationsPageCtrl.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.notifications')\n      .controller('NotificationsPageCtrl', NotificationsPageCtrl);\n\n  /** @ngInject */\n  function NotificationsPageCtrl($scope, toastr, toastrConfig) {\n    var defaultConfig = angular.copy(toastrConfig);\n    $scope.types = ['success', 'error', 'info', 'warning'];\n\n    $scope.quotes = [\n      {\n        title: 'Come to Freenode',\n        message: 'We rock at <em>#angularjs</em>',\n        options: {\n          allowHtml: true\n        }\n      },\n      {\n        title: 'Looking for bootstrap?',\n        message: 'Try ui-bootstrap out!'\n      },\n      {\n        title: 'Wants a better router?',\n        message: 'We have you covered with ui-router'\n      },\n      {\n        title: 'Angular 2',\n        message: 'Is gonna rock the world'\n      },\n      {\n        title: null,\n        message: 'Titles are not always needed'\n      },\n      {\n        title: null,\n        message: 'Toastr rock!'\n      },\n      {\n        title: 'What about nice html?',\n        message: '<strong>Sure you <em>can!</em></strong>',\n        options: {\n          allowHtml: true\n        }\n      },\n      {\n        title: 'Ionic is <em>cool</em>',\n        message: 'Best mobile framework ever',\n        options: {\n          allowHtml: true\n        }\n      }\n    ];\n\n    var openedToasts = [];\n    $scope.options = {\n      autoDismiss: false,\n      positionClass: 'toast-top-right',\n      type: 'info',\n      timeOut: '5000',\n      extendedTimeOut: '2000',\n      allowHtml: false,\n      closeButton: false,\n      tapToDismiss: true,\n      progressBar: false,\n      newestOnTop: true,\n      maxOpened: 0,\n      preventDuplicates: false,\n      preventOpenDuplicates: false,\n      title: \"Some title here\",\n      msg: \"Type your message here\"\n    };\n\n\n    $scope.clearLastToast = function () {\n      var toast = openedToasts.pop();\n      toastr.clear(toast);\n    };\n\n    $scope.clearToasts = function () {\n      toastr.clear();\n    };\n\n    $scope.openRandomToast = function () {\n      var type = Math.floor(Math.random() * $scope.types.length);\n      var quote = Math.floor(Math.random() * $scope.quotes.length);\n      var toastType = $scope.types[type];\n      var toastQuote = $scope.quotes[quote];\n      openedToasts.push(toastr[toastType](toastQuote.message, toastQuote.title, toastQuote.options));\n      $scope.optionsStr = \"toastr.\" + toastType + \"(\\'\" + toastQuote.message + \"\\', \\'\" + toastQuote.title + \"', \" + JSON.stringify(toastQuote.options || {}, null, 2) + \")\";\n    };\n\n    $scope.openToast = function () {\n      angular.extend(toastrConfig, $scope.options);\n      openedToasts.push(toastr[$scope.options.type]($scope.options.msg, $scope.options.title));\n      var strOptions = {};\n      for (var o in  $scope.options) if (o != 'msg' && o != 'title')strOptions[o] = $scope.options[o];\n      $scope.optionsStr = \"toastr.\" + $scope.options.type + \"(\\'\" + $scope.options.msg + \"\\', \\'\" + $scope.options.title + \"\\', \" + JSON.stringify(strOptions, null, 2) + \")\";\n    };\n\n    $scope.$on('$destroy', function iVeBeenDismissed() {\n      angular.extend(toastrConfig, defaultConfig);\n    })\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/notifications/notifications.html",
    "content": "<div ba-panel ba-panel-class=\"with-scroll notification-panel\">\n  <div class=\"row\">\n    <div class=\"col-md-3 col-sm-4\">\n      <div class=\"control\">\n        <label for=\"title\">Title</label>\n        <input ng-model=\"options.title\" type=\"text\" class=\"form-control\" id=\"title\" placeholder=\"Enter a title ...\">\n      </div>\n      <div class=\"control\">\n        <label for=\"message\">Message</label>\n        <textarea ng-model=\"options.msg\" class=\"form-control\" id=\"message\" rows=\"3\"\n                  placeholder=\"Enter a message ...\"></textarea>\n      </div>\n      <div class=\"control-group\">\n        <div class=\"control\">\n          <label class=\"checkbox-inline custom-checkbox nowrap\">\n            <input ng-model=\"options.closeButton\" type=\"checkbox\" id=\"closeButton\">\n            <span>Close Button</span>\n          </label>\n        </div>\n        <div class=\"control\">\n          <label class=\"checkbox-inline custom-checkbox nowrap\">\n            <input ng-model=\"options.allowHtml\" type=\"checkbox\" id=\"html\">\n            <span>Allow html</span>\n          </label>\n        </div>\n        <div class=\"control\">\n          <label class=\"checkbox-inline custom-checkbox nowrap\">\n            <input ng-model=\"options.progressBar\" type=\"checkbox\" id=\"progressBar\">\n            <span>Progress bar</span>\n          </label>\n        </div>\n        <div class=\"control\">\n          <label class=\"checkbox-inline custom-checkbox nowrap\">\n            <input ng-model=\"options.preventDuplicates\" type=\"checkbox\" id=\"preventDuplicates\">\n            <span>Prevent duplicates</span>\n          </label>\n        </div>\n        <div class=\"control\">\n          <label class=\"checkbox-inline custom-checkbox nowrap\">\n            <input ng-model=\"options.preventOpenDuplicates\" type=\"checkbox\" id=\"preventOpenDuplicates\">\n            <span>Prevent open duplicates</span>\n          </label>\n        </div>\n        <div class=\"control\">\n          <label class=\"checkbox-inline custom-checkbox nowrap\">\n            <input ng-model=\"options.tapToDismiss\" type=\"checkbox\" id=\"tapToDismiss\">\n            <span>Tap to dismiss</span>\n          </label>\n        </div>\n        <div class=\"control\">\n          <label class=\"checkbox-inline custom-checkbox nowrap\">\n            <input ng-model=\"options.newestOnTop\" type=\"checkbox\" id=\"newestOnTop\">\n            <span>Newest on top</span>\n          </label>\n        </div>\n      </div>\n    </div>\n    <div class=\"col-md-2 col-sm-3 toastr-radio-setup\">\n      <div id=\"toastTypeGroup\">\n        <div class=\"controls radio-controls\">\n          <label class=\"radio-header\">Toast Type</label>\n          <label class=\"radio custom-radio\">\n            <input type=\"radio\" ng-model=\"options.type\" name=\"toasts\" value=\"success\"/><span>Success</span>\n          </label>\n          <label class=\"radio custom-radio\">\n            <input type=\"radio\" ng-model=\"options.type\" name=\"toasts\" value=\"info\"/><span>Info</span>\n          </label>\n          <label class=\"radio custom-radio\">\n            <input type=\"radio\" ng-model=\"options.type\" name=\"toasts\" value=\"warning\"/><span>Warning</span>\n          </label>\n          <label class=\"radio custom-radio\">\n            <input type=\"radio\" ng-model=\"options.type\" name=\"toasts\" value=\"error\"/><span>Error</span>\n          </label>\n        </div>\n      </div>\n      <div id=\"positionGroup\">\n        <div class=\"controls radio-controls\">\n          <label class=\"radio-header position-header\">Position</label>\n          <label class=\"radio custom-radio\">\n            <input type=\"radio\" ng-model=\"options.positionClass\" name=\"positions\" value=\"toast-top-right\"/>\n            <span>Top Right</span>\n          </label>\n          <label class=\"radio custom-radio\">\n            <input type=\"radio\" ng-model=\"options.positionClass\" name=\"positions\" value=\"toast-bottom-right\"/>\n            <span>Bottom Right</span>\n          </label>\n          <label class=\"radio custom-radio\">\n            <input type=\"radio\" ng-model=\"options.positionClass\" name=\"positions\" value=\"toast-bottom-left\"/>\n            <span>Bottom Left</span>\n          </label>\n          <label class=\"radio custom-radio\">\n            <input type=\"radio\" ng-model=\"options.positionClass\" name=\"positions\" value=\"toast-top-left\"/>\n            <span>Top Left</span>\n          </label>\n          <label class=\"radio custom-radio\">\n            <input type=\"radio\" ng-model=\"options.positionClass\" name=\"positions\" value=\"toast-top-full-width\"/>\n            <span>Top Full Width</span>\n          </label>\n          <label class=\"radio custom-radio\">\n            <input type=\"radio\" ng-model=\"options.positionClass\" name=\"positions\" value=\"toast-bottom-full-width\"/>\n            <span>Bottom Full Width</span>\n          </label>\n          <label class=\"radio custom-radio\">\n            <input type=\"radio\" ng-model=\"options.positionClass\" name=\"positions\" value=\"toast-top-center\"/>\n            <span>Top Center</span>\n          </label>\n          <label class=\"radio custom-radio\">\n            <input type=\"radio\" ng-model=\"options.positionClass\" name=\"positions\" value=\"toast-bottom-center\"/>\n            <span>Bottom Center</span>\n          </label>\n        </div>\n      </div>\n    </div>\n    <div class=\"col-md-2 col-sm-3\">\n      <div class=\"control\">\n        <label for=\"timeOut\">Time out</label>\n        <input type=\"text\" class=\"form-control\" id=\"timeOut\" ng-model=\"options.timeOut\" placeholder=\"ms\">\n        <label class=\"sub-label\" for=\"timeOut\">If you set it to 0, it will stick</label>\n      </div>\n      <div class=\"control\">\n        <label for=\"extendedTimeOut\">Extended time out</label>\n        <input type=\"text\" class=\"form-control\" id=\"extendedTimeOut\" ng-model=\"options.extendedTimeOut\"\n               placeholder=\"ms\">\n      </div>\n      <div class=\"control\">\n        <label for=\"maxOpened\">Maximum number of toasts</label>\n        <input type=\"text\" class=\"form-control\" id=\"maxOpened\" ng-model=\"options.maxOpened\" value=\"0\">\n        <label for=\"maxOpened\" class=\"sub-label\">0 means no limit</label>\n      </div>\n      <div class=\"control\">\n        <label class=\"checkbox-inline custom-checkbox nowrap\">\n          <input ng-model=\"options.autoDismiss\" type=\"checkbox\" id=\"autoDismiss\">\n          <span>Auto dismiss</span>\n        </label>\n      </div>\n    </div>\n    <div class=\"col-md-5 col-sm-12\">\n      <label>Result:</label>\n      <pre class=\"result-toastr\" id='toastrOptions'>{{optionsStr}}</pre>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-12 button-row\">\n      <button ng-click=\"openToast()\" class=\"btn btn-primary\">Open Toast</button>\n      <button ng-click=\"openRandomToast()\" class=\"btn btn-primary\">Random Toast</button>\n      <button ng-click=\"clearToasts()\" class=\"btn btn-danger\">Clear Toasts</button>\n      <button ng-click=\"clearLastToast()\" class=\"btn btn-danger\">Clear Last Toast</button>\n    </div>\n  </div>\n\n</div>\n"
  },
  {
    "path": "src/app/pages/ui/notifications/notifications.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.notifications', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('ui.notifications', {\n          url: '/notifications',\n          templateUrl: 'app/pages/ui/notifications/notifications.html',\n          controller: 'NotificationsPageCtrl',\n          title: 'Notifications',\n          sidebarMeta: {\n            order: 700,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/panels/panels.html",
    "content": "<h2>Default panels</h2>\n<div class=\"row\">\n\n  <div class=\"col-md-12 col-lg-4\">\n    <div ba-panel ba-panel-class=\"xsmall-panel light-text\">\n      Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris ac mi erat. Phasellus placerat, elit a laoreet\n      semper, enim ipsum ultricies orci, ac tincidunt tellus massa eu est. Nam non porta purus, sed facilisis justo. Nam\n      pulvinar sagittis quam.\n    </div>\n  </div>\n  <div class=\"col-md-12 col-lg-4\">\n    <div ba-panel ba-panel-title=\"Panel with header\" ba-panel-class=\"xsmall-panel light-text\">\n      Phasellus maximus venenatis augue, et vestibulum neque aliquam ut. Morbi mattis libero vitae vulputate dignissim.\n      Praesent placerat, sem non dapibus cursus, lacus nisi blandit quam, vitae porttitor lectus lacus non turpis. Donec\n      suscipit consequat tellus.\n    </div>\n  </div>\n  <div class=\"col-md-12 col-lg-4\">\n    <div ba-panel ba-panel-title=\"Panel with header & scroll\" ba-panel-class=\"xsmall-panel with-scroll light-text\">\n      <p>\n        Suspendisse nec tellus urna. Sed id est metus. Nullam sit amet dolor nec ipsum dictum suscipit. Mauris sed nisi\n        mauris. Nulla iaculis nisl ut velit ornare imperdiet. Suspendisse potenti. In tempor leo sed sem malesuada\n        pellentesque. Maecenas faucibus metus lacus, ac egestas diam vulputate vitae.\n      </p>\n\n\n      <p>\n        Sed dapibus, purus vel hendrerit consectetur, lectus orci gravida massa, sed bibendum dui mauris et eros. Nulla\n        dolor massa, posuere et dictum sit amet, dignissim quis odio. Fusce mollis finibus dignissim. Integer sodales\n        augue erat. Pellentesque laoreet vestibulum urna at iaculis. Nulla libero augue, euismod at diam eget, aliquam\n        condimentum ligula. Donec a leo eu est molestie lacinia hendrerit sed lorem. Duis id diam eu metus sodales\n        consequat vel eu elit. Praesent dolor nibh, convallis eleifend feugiat a, finibus porttitor nibh. Ut non libero\n        vel velit pulvinar scelerisque non vel lorem. Integer porta tempor nulla. Sed nibh erat, ultrices vel lorem eu,\n        rutrum vehicula sem.\n      </p>\n\n      <p>\n        Donec nec tellus urna. Sed id est metus. Nullam sit amet dolor nec ipsum dictum suscipit. Mauris sed nisi\n        mauris. Nulla iaculis nisl ut velit ornare imperdiet. Suspendisse potenti. In tempor leo sed sem malesuada\n        pellentesque. Maecenas faucibus metus lacus, ac egestas diam vulputate vitae.\n      </p>\n\n      <p>\n        Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque fermentum nec ligula egestas rhoncus. Sed\n        dignissim, augue vel scelerisque vulputate, nisi ante posuere lorem, quis iaculis eros dolor eu nisl. Etiam\n        sagittis, ipsum ac tempor iaculis, justo neque mattis ante, ac maximus sapien risus eu sapien. Morbi erat urna,\n        varius et lectus vel, porta dictum orci. Duis bibendum euismod elit, et lobortis purus venenatis in. Mauris eget\n        lacus enim. Cras quis sem et magna fringilla convallis. Proin hendrerit nulla vel gravida mollis. Interdum et\n        malesuada fames ac ante ipsum primis in faucibus. Vestibulum consectetur quis purus vel aliquam.\n      </p>\n\n    </div>\n  </div>\n</div>\n\n\n<h2>Bootstrap panels</h2>\n<div class=\"row\">\n\n  <div class=\"col-md-12 col-lg-4\">\n    <div class=\"panel panel-default bootstrap-panel xsmall-panel\">\n      <div class=\"panel-body\">\n        <p>A panel in bootstrap is a bordered box with some padding around its content.</p>\n\n        <p class=\"p-with-code\">Panels are created with the <code>.panel</code> class, and content inside the panel has a\n          <code>.panel-body</code> class. The <code>.panel-default .panel-primary .panel-danger</code> and other classes\n          are used to style the color of the\n          panel. See the next example on this page for more contextual classes.</p>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"col-md-12 col-lg-4\">\n    <div class=\"panel panel-default bootstrap-panel xsmall-panel\">\n      <div class=\"panel-heading\">Panel Heading</div>\n      <div class=\"panel-body\">\n        <p class=\"p-with-code\">The <code>.panel-heading</code> class adds a heading to the panel.Easily add a heading\n          container to your\n          panel with .panel-heading. You may also include any\n          <code>h1-h6</code> with a <code>.panel-title</code> class to add a pre-styled heading.\n        </p>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"col-md-12 col-lg-4\">\n    <div class=\"panel panel-default bootstrap-panel\">\n      <div class=\"panel-body footer-panel\">\n        <p class=\"p-with-code\">\n          Wrap buttons or secondary text in <code>.panel-footer</code>. Note that panel footers do not inherit colors\n          and\n          borders when\n          using contextual variations as they are not meant to be in the foreground.\n        </p>\n      </div>\n      <div class=\"panel-footer\">Panel Footer</div>\n    </div>\n  </div>\n</div>\n\n<h2>Panels with Contextual Classes</h2>\n<div class=\"row\">\n  <div class=\"col-md-6 col-lg-4\">\n    <div class=\"panel panel-default contextual-example-panel bootstrap-panel\">\n      <div class=\"panel-heading\">Panel with panel-default class</div>\n      <div class=\"panel-body\">To color the panel, use contextual classes. This is sample <code>.panel-default</code>\n        panel\n      </div>\n    </div>\n  </div>\n\n  <div class=\"col-md-6 col-lg-4\">\n    <div class=\"panel panel-primary contextual-example-panel bootstrap-panel\">\n      <div class=\"panel-heading\">Panel with panel-primary class</div>\n      <div class=\"panel-body\">Sample <code>.panel-primary</code> panel</div>\n    </div>\n  </div>\n\n  <div class=\"col-md-6 col-lg-4\">\n    <div class=\"panel panel-success contextual-example-panel bootstrap-panel\">\n      <div class=\"panel-heading\">Panel with panel-success class</div>\n      <div class=\"panel-body\">Sample <code>.panel-success</code> panel</div>\n    </div>\n  </div>\n\n  <div class=\"col-md-6 col-lg-4\">\n    <div class=\"panel panel-info contextual-example-panel bootstrap-panel\">\n      <div class=\"panel-heading\">Panel with panel-info class</div>\n      <div class=\"panel-body\">Sample <code>.panel-info</code> panel</div>\n    </div>\n  </div>\n\n  <div class=\"col-md-6 col-lg-4\">\n    <div class=\"panel panel-warning contextual-example-panel bootstrap-panel\">\n      <div class=\"panel-heading\">Panel with panel-warning class</div>\n      <div class=\"panel-body\">Sample <code>.panel-warning</code> panel</div>\n    </div>\n  </div>\n\n  <div class=\"col-md-6 col-lg-4\">\n    <div class=\"panel panel-danger contextual-example-panel bootstrap-panel\">\n      <div class=\"panel-heading\">Panel with panel-danger class</div>\n      <div class=\"panel-body\">Sample <code>.panel-danger</code> panel</div>\n    </div>\n  </div>\n\n</div>\n\n<div class=\"row\">\n  <div class=\"col-md-12\">\n    <h2>Panel Group</h2>\n\n    <div class=\"panel-group\">\n      <div class=\"panel panel-default bootstrap-panel\">\n        <div class=\"panel-heading\">Panel group 1</div>\n        <div class=\"panel-body\">\n          <p>To group many panels together, wrap a <code>&lt;div&gt;</code> with class <code>\n            .panel-group</code> around them.</p>\n        </div>\n      </div>\n      <div class=\"panel panel-default bootstrap-panel\">\n        <div class=\"panel-heading\">Panel group 2</div>\n        <div class=\"panel-body\">\n          <p>The <code>.panel-group</code> class clears the bottom-margin of each panel.</p>\n        </div>\n      </div>\n    </div>\n  </div>\n</div>\n\n"
  },
  {
    "path": "src/app/pages/ui/panels/panels.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 23.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.panels', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('ui.panels', {\n          url: '/panels',\n          templateUrl: 'app/pages/ui/panels/panels.html',\n          controller: 'NotificationsPageCtrl',\n          title: 'Panels',\n          sidebarMeta: {\n            order: 1100,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/progressBars/progressBars.html",
    "content": "<div class=\"widgets\">\n\n  <div class=\"row\">\n    <div class=\"col-md-6\">\n      <div\n          ba-panel\n          ba-panel-title=\"Basic\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/ui/progressBars/widgets/basic.html'\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Striped\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/ui/progressBars/widgets/striped.html'\"></div>\n      </div>\n    </div>\n    <div class=\"col-md-6\">\n      <div\n          ba-panel\n          ba-panel-title=\"With label\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/ui/progressBars/widgets/label.html'\"></div>\n      </div>\n      <div\n          ba-panel\n          ba-panel-title=\"Animated\"\n          ba-panel-class=\"with-scroll\">\n        <div ng-include=\"'app/pages/ui/progressBars/widgets/animated.html'\"></div>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"row\">\n    <div class=\"col-md-12\"\n         ba-panel\n         ba-panel-title=\"Stacked\"\n         ba-panel-class=\"with-scroll\">\n      <div ng-include=\"'app/pages/ui/progressBars/widgets/stacked.html'\"></div>\n    </div>\n  </div>\n\n</div>"
  },
  {
    "path": "src/app/pages/ui/progressBars/progressBars.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.progressBars', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('ui.progressBars', {\n          url: '/progressBars',\n          templateUrl: 'app/pages/ui/progressBars/progressBars.html',\n          title: 'Progress Bars',\n          sidebarMeta: {\n            order: 600,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/progressBars/widgets/animated.html",
    "content": "<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-success progress-bar-striped active\" role=\"progressbar\" aria-valuenow=\"40\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 40%\">\n    <span class=\"sr-only\">40% Complete (success)</span>\n  </div>\n</div>\n<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-info progress-bar-striped active\" role=\"progressbar\" aria-valuenow=\"20\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 20%\">\n    <span class=\"sr-only\">20% Complete</span>\n  </div>\n</div>\n<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-warning progress-bar-striped active\" role=\"progressbar\" aria-valuenow=\"60\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 60%\">\n    <span class=\"sr-only\">60% Complete (warning)</span>\n  </div>\n</div>\n<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-danger progress-bar-striped active\" role=\"progressbar\" aria-valuenow=\"80\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 80%\">\n    <span class=\"sr-only\">80% Complete (danger)</span>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/ui/progressBars/widgets/basic.html",
    "content": "<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-success\" role=\"progressbar\" aria-valuenow=\"40\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 40%\">\n    <span class=\"sr-only\">40% Complete (success)</span>\n  </div>\n</div>\n<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-info\" role=\"progressbar\" aria-valuenow=\"20\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 20%\">\n    <span class=\"sr-only\">20% Complete</span>\n  </div>\n</div>\n<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-warning\" role=\"progressbar\" aria-valuenow=\"60\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 60%\">\n    <span class=\"sr-only\">60% Complete (warning)</span>\n  </div>\n</div>\n<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-danger\" role=\"progressbar\" aria-valuenow=\"80\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 80%\">\n    <span class=\"sr-only\">80% Complete (danger)</span>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/ui/progressBars/widgets/label.html",
    "content": "<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-success\" role=\"progressbar\" aria-valuenow=\"40\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 40%\">\n    40% Complete (success)\n  </div>\n</div>\n<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-info\" role=\"progressbar\" aria-valuenow=\"20\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 20%\">\n    20% Complete\n  </div>\n</div>\n<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-warning\" role=\"progressbar\" aria-valuenow=\"60\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 60%\">\n    60% Complete (warning)\n  </div>\n</div>\n<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-danger\" role=\"progressbar\" aria-valuenow=\"80\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 80%\">\n    80% Complete (danger)\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/ui/progressBars/widgets/stacked.html",
    "content": "<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-success\" style=\"width: 35%\">\n    <span class=\"sr-only\">35% Complete (success)</span>\n  </div>\n  <div class=\"progress-bar progress-bar-warning progress-bar-striped\" style=\"width: 20%\">\n    <span class=\"sr-only\">20% Complete (warning)</span>\n  </div>\n  <div class=\"progress-bar progress-bar-danger\" style=\"width: 10%\">\n    <span class=\"sr-only\">10% Complete (danger)</span>\n  </div>\n  <div class=\"progress-bar progress-bar-info progress-bar-striped active\" style=\"width: 20%\">\n    <span class=\"sr-only\">20% Complete (warning)</span>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/ui/progressBars/widgets/striped.html",
    "content": "<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-success progress-bar-striped\" role=\"progressbar\" aria-valuenow=\"40\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 40%\">\n    <span class=\"sr-only\">40% Complete (success)</span>\n  </div>\n</div>\n<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-info progress-bar-striped\" role=\"progressbar\" aria-valuenow=\"20\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 20%\">\n    <span class=\"sr-only\">20% Complete</span>\n  </div>\n</div>\n<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-warning progress-bar-striped\" role=\"progressbar\" aria-valuenow=\"60\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 60%\">\n    <span class=\"sr-only\">60% Complete (warning)</span>\n  </div>\n</div>\n<div class=\"progress\">\n  <div class=\"progress-bar progress-bar-danger progress-bar-striped\" role=\"progressbar\" aria-valuenow=\"80\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 80%\">\n    <span class=\"sr-only\">80% Complete (danger)</span>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/ui/slider/slider.html",
    "content": "<div class=\"row\">\n  <div class=\"col-md-12\">\n    <div ba-panel ba-panel-title=\"Ion Range Slider\" ba-panel-class=\"with-scroll\">\n      <div class=\"slider-box\">\n        <h5>Basic</h5>\n        <ion-slider type=\"single\"\n                    grid=\"false\"\n                    min=\"0\"\n                    max=\"100\"\n                    from=\"45\"\n                    disable=\"false\">\n        </ion-slider>\n      </div>\n      <div class=\"slider-box\">\n        <h5>With prefix</h5>\n        <ion-slider type=\"single\"\n                    grid=\"true\"\n                    min=\"100\"\n                    max=\"1200\"\n                    prefix=\"$\"\n                    from=\"420\"\n                    disable=\"false\">\n        </ion-slider>\n      </div>\n      <div class=\"slider-box\">\n        <h5>With postfix</h5>\n        <ion-slider type=\"single\"\n                    grid=\"true\"\n                    min=\"-90\"\n                    max=\"90\"\n                    postfix=\"°\"\n                    from=\"36\"\n                    disable=\"false\">\n        </ion-slider>\n      </div>\n      <div class=\"slider-box\">\n        <h5>Two way range</h5>\n        <ion-slider type=\"double\"\n                    grid=\"true\"\n                    min=\"100\"\n                    max=\"1200\"\n                    from=\"420\"\n                    to=\"900\"\n                    disable=\"false\">\n        </ion-slider>\n      </div>\n      <div class=\"slider-box\">\n        <h5>With Steps</h5>\n        <ion-slider type=\"single\"\n                    grid=\"true\"\n                    min=\"0\"\n                    max=\"1000\"\n                    from=\"300\"\n                    step=\"50\"\n                    disable=\"false\">\n        </ion-slider>\n      </div>\n      <div class=\"slider-box\">\n        <h5>Decorating numbers</h5>\n        <ion-slider type=\"single\"\n                    grid=\"true\"\n                    min=\"0\"\n                    max=\"1000000\"\n                    from=\"300000\"\n                    step=\"1000\"\n                    prettify-separator=\".\"\n                    prettify=\"true\"\n                    disable=\"false\">\n        </ion-slider>\n      </div>\n      <div class=\"slider-box\">\n        <h5>Using custom values array</h5>\n        <ion-slider type=\"single\"\n                    grid=\"true\"\n                    from=\"5\"\n                    step=\"1000\"\n                    values=\"['January', 'February', 'March',\n                            'April', 'May', 'June',\n                            'July', 'August', 'September',\n                            'October', 'November', 'December']\"\n                    disable=\"false\">\n        </ion-slider>\n      </div>\n      <div class=\"slider-box\">\n        <h5>Disabled</h5>\n        <ion-slider type=\"single\"\n                    grid=\"false\"\n                    min=\"0\"\n                    max=\"100\"\n                    from=\"45\"\n                    disable=\"true\">\n        </ion-slider>\n      </div>\n    </div>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/ui/slider/slider.module.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/22/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.slider', [])\n    .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('ui.slider', {\n          url: '/slider',\n          templateUrl: 'app/pages/ui/slider/slider.html',\n          title: 'Sliders',\n          sidebarMeta: {\n            order: 1000,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/tabs/contextualAccordion.html",
    "content": "<uib-accordion>\n  <uib-accordion-group heading=\"Primary\" panel-class=\"panel-primary bootstrap-panel accordion-panel\">\n    Primary <i class=\"ion-heart\"></i>\n  </uib-accordion-group>\n  <uib-accordion-group heading=\"Success\" panel-class=\"panel-success bootstrap-panel accordion-panel\">\n    Success <i class=\"ion-checkmark-round\"></i>\n  </uib-accordion-group>\n  <uib-accordion-group heading=\"Info\" panel-class=\"panel-info bootstrap-panel accordion-panel\">\n    Info <i class=\"ion-information-circled\"></i>\n  </uib-accordion-group>\n  <uib-accordion-group heading=\"Warning\" panel-class=\"panel-warning bootstrap-panel accordion-panel\">\n    Warning <i class=\"ion-alert\"></i>\n  </uib-accordion-group>\n  <uib-accordion-group  heading=\"Danger\"  panel-class=\"panel-danger bootstrap-panel accordion-panel\">\n    Danger <i class=\"ion-nuclear\"></i>\n  </uib-accordion-group>\n</uib-accordion>"
  },
  {
    "path": "src/app/pages/ui/tabs/mainTabs.html",
    "content": "<uib-tabset active=\"$tabSetStatus.activeTab\">\n  <uib-tab heading=\"Start\">\n    <p>\n      Take up one idea. Make that one idea your life--think of it, dream of it, live on that idea. Let the brain,\n      muscles, nerves, every part of your body, be full of that idea, and just leave every other idea alone. This is the\n      way to success.\n    </p>\n\n    <p>\n      People who succeed have momentum. The more they succeed, the more they want to succeed, and the more they find a\n      way to succeed. Similarly, when someone is failing, the tendency is to get on a downward spiral that can even\n      become a self-fulfilling prophecy.\n    </p>\n\n    <div class=\"text-center\">\n      <div class=\"kameleon-icon with-round-bg primary inline-icon\"><img ng-src=\"{{::( 'Shop' | kameleonImg )}}\"></div>\n      <div class=\"kameleon-icon with-round-bg primary inline-icon\"><img ng-src=\"{{::( 'Programming' | kameleonImg )}}\"></div>\n      <div class=\"kameleon-icon with-round-bg primary inline-icon\"><img ng-src=\"{{::( 'Dna' | kameleonImg )}}\"></div>\n    </div>\n\n    <p>\n      The reason most people never reach their goals is that they don't define them, or ever seriously consider them as\n      believable or achievable. Winners can tell you where they are going, what they plan to do along the way, and who\n      will be sharing the adventure with them.\n    </p>\n\n  </uib-tab>\n  <uib-tab heading=\"Getting Done\">\n    <p>\n      You can't connect the dots looking forward; you can only connect them looking backwards. So you have to trust that\n      the dots will somehow connect in your future. You have to trust in something--your gut, destiny, life, karma,\n      whatever. This approach has never let me down, and it has made all the difference in my life.\n    </p>\n\n    <p>\n      The reason most people never reach their goals is that they don't define them, or ever seriously consider them as\n      believable or achievable. Winners can tell you where they are going, what they plan to do along the way, and who\n      will be sharing the adventure with them.\n    </p>\n  </uib-tab>\n  <uib-tab ng-init=\"$dropdownTabActive = 1\" class=\"with-dropdown\">\n    <uib-tab-heading uib-dropdown>\n      <a uib-dropdown-toggle ng-click=\"$event.stopPropagation()\">\n        Dropdown tab <i class=\"caret\"></i>\n      </a>\n      <ul class=\"dropdown-menu\" uib-dropdown-menu>\n        <li><a ng-click=\"$dropdownTabActive = 1; $tabSetStatus.activeTab = 3\">Tab 1</a></li>\n        <li><a ng-click=\"$dropdownTabActive = 2; $tabSetStatus.activeTab = 3\">Tab 2</a></li>\n      </ul>\n    </uib-tab-heading>\n    <div ng-show=\"$dropdownTabActive == 1\">\n      <p>\n        Success is ... knowing your purpose in life, growing to reach your maximum potential, and sowing seeds that\n        benefit others.\n      </p>\n\n      <p>Failure is the condiment that gives success its flavor.</p>\n    </div>\n    <div ng-show=\"$dropdownTabActive == 2\">\n      <p class=\"text-center\">\n        <button class=\"btn btn-danger\">I'm just a dummy button</button>\n      </p>\n    </div>\n  </uib-tab>\n</uib-tabset>"
  },
  {
    "path": "src/app/pages/ui/tabs/sampleAccordion.html",
    "content": "<uib-accordion>\n  <uib-accordion-group is-open=\"true\" heading=\"Static Header, initially expanded\" panel-class=\"bootstrap-panel accordion-panel panel-default\">\n    This content is straight in the template.\n  </uib-accordion-group>\n  <uib-accordion-group heading=\"Dynamic Body Content\" panel-class=\"bootstrap-panel accordion-panel panel-default\">\n    <p>The body of the uib-accordion group grows to fit the contents</p>\n    <button type=\"button\" class=\"btn btn-primary btn-sm\">Add Item</button>\n  </uib-accordion-group>\n  <uib-accordion-group heading=\"Custom template\" panel-class=\"bootstrap-panel accordion-panel panel-default\">\n    Hello\n  </uib-accordion-group>\n  <uib-accordion-group panel-class=\"bootstrap-panel accordion-panel panel-default\">\n    <uib-accordion-heading>\n      I can have markup, too! <i class=\"fa pull-right ion-settings\"></i>\n    </uib-accordion-heading>\n    This is just some content to illustrate fancy headings.\n  </uib-accordion-group>\n</uib-accordion>"
  },
  {
    "path": "src/app/pages/ui/tabs/sideTabs.html",
    "content": "<div ba-panel\n     ba-panel-class=\"tabs-panel xsmall-panel with-scroll\">\n  <uib-tabset class=\"tabs-left\">\n    <uib-tab heading=\"Start\">\n      <p class=\"text-center\">\n        Take up one idea.\n      </p>\n\n      <div class=\"kameleon-icon-tabs kameleon-icon with-round-bg danger\"><img ng-src=\"{{::( 'Key' | kameleonImg )}}\"></div>\n      <p>\n        People who succeed have momentum. The more they succeed, the more they want to succeed, and the more they find a\n        way to succeed. </p>\n    </uib-tab>\n    <uib-tab heading=\"Get it done\">\n      <p>\n        You can't connect the dots looking forward; you can only connect them looking backwards. So you have to trust\n        that\n        the dots will somehow connect in your future. You have to trust in something--your gut, destiny, life, karma,\n        whatever. This approach has never let me down, and it has made all the difference in my life.\n      </p>\n\n      <p>\n        The reason most people never reach their goals is that they don't define them, or ever seriously consider them\n        as\n        believable or achievable. Winners can tell you where they are going, what they plan to do along the way, and who\n        will be sharing the adventure with them.\n      </p>\n    </uib-tab>\n    <uib-tab heading=\"Achieve\">\n      <p>\n        Success is ... knowing your purpose in life, growing to reach your maximum potential, and sowing seeds that\n        benefit others.\n      </p>\n\n      <p>Failure is the condiment that gives success its flavor.</p>\n    </uib-tab>\n  </uib-tabset>\n</div>\n\n<div ba-panel\n     ba-panel-class=\"tabs-panel xsmall-panel with-scroll\">\n  <uib-tabset class=\"tabs-right\">\n    <uib-tab heading=\"Start\">\n      <p class=\"text-center\">\n        Take up one idea.\n      </p>\n\n      <div class=\"kameleon-icon-tabs kameleon-icon with-round-bg warning\"><img ng-src=\"{{::( 'Phone-Booth' | kameleonImg )}}\"></div>\n      <p>\n        People who succeed have momentum. The more they succeed, the more they want to succeed, and the more they find a\n        way to succeed. </p>\n    </uib-tab>\n    <uib-tab heading=\"Get it done\">\n      <p>\n        You can't connect the dots looking forward; you can only connect them looking backwards. So you have to trust\n        that\n        the dots will somehow connect in your future. You have to trust in something--your gut, destiny, life, karma,\n        whatever. This approach has never let me down, and it has made all the difference in my life.\n      </p>\n\n      <p>\n        The reason most people never reach their goals is that they don't define them, or ever seriously consider them\n        as\n        believable or achievable. Winners can tell you where they are going, what they plan to do along the way, and who\n        will be sharing the adventure with them.\n      </p>\n    </uib-tab>\n    <uib-tab heading=\"Achieve\">\n      <p>\n        Success is ... knowing your purpose in life, growing to reach your maximum potential, and sowing seeds that\n        benefit others.\n      </p>\n\n      <p>Failure is the condiment that gives success its flavor.</p>\n    </uib-tab>\n  </uib-tabset>\n</div>"
  },
  {
    "path": "src/app/pages/ui/tabs/tabs.html",
    "content": "<div>\n  <div class=\"row\">\n    <div class=\"col-md-6\">\n      <div\n          ba-panel\n          ba-panel-class=\"with-scroll horizontal-tabs tabs-panel medium-panel\">\n        <div ng-include=\"'app/pages/ui/tabs/mainTabs.html'\"></div>\n      </div>\n    </div>\n    <div class=\"col-md-6 tabset-group\" ng-include=\"'app/pages/ui/tabs/sideTabs.html'\"></div>\n  </div>\n  <div class=\"row accordions-row\">\n    <div class=\"col-md-6\" ng-include=\"'app/pages/ui/tabs/sampleAccordion.html'\"></div>\n    <div class=\"col-md-6\" ng-include=\"'app/pages/ui/tabs/contextualAccordion.html'\"></div>\n  </div>\n</div>"
  },
  {
    "path": "src/app/pages/ui/tabs/tabs.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 21.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.tabs', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('ui.tabs', {\n          url: '/tabs',\n          templateUrl: 'app/pages/ui/tabs/tabs.html',\n          title: 'Tabs & Accordions',\n          sidebarMeta: {\n            order: 800,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/typography/typography.html",
    "content": "<div class=\"typography-document-samples row-fluid\">\n  <div class=\"col-xlg-3 col-lg-6  col-md-6 col-sm-6 col-xs-12 typography-widget\">\n    <div ba-panel ba-panel-class=\"with-scroll heading-widget\" ba-panel-title=\"Text Size\">\n      <div class=\"section-block\">\n        <h1>H1. Heading 1</h1>\n\n        <p>Lorem ipsum dolor sit amet, id mollis iaculis mi nisl pulvinar, lacinia scelerisque pharetra, placerat\n          vestibulum eleifend pellentesque.</p>\n      </div>\n      <div class=\"section-block\">\n        <h2>H2. Heading 2</h2>\n\n        <p>Lorem ipsum dolor sit amet, id mollis iaculis mi nisl pulvinar, lacinia scelerisque pharetra, placerat\n          vestibulum eleifend pellentesque.</p>\n      </div>\n      <div class=\"section-block\">\n        <h3>H3. Heading 3</h3>\n\n        <p>Lorem ipsum dolor sit amet, id mollis iaculis mi nisl pulvinar, lacinia scelerisque pharetra, placerat\n          vestibulum eleifend pellentesque.</p>\n      </div>\n      <div class=\"section-block\">\n        <h4>H4. Heading 4</h4>\n\n        <p>Lorem ipsum dolor sit amet, id mollis iaculis mi nisl pulvinar, lacinia scelerisque pharetra,.</p>\n      </div>\n      <div class=\"section-block\">\n        <h5>H5. Heading 5</h5>\n\n        <p>Lorem ipsum dolor sit amet, id mollis iaculis mi nisl pulvinar, lacinia scelerisque pharetra.</p>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"col-xlg-3 col-lg-6  col-md-6 col-sm-6 col-xs-12 typography-widget\">\n    <div ba-panel ba-panel-class=\"with-scroll more-text-widget\" ba-panel-title=\"Some more text\">\n      <div class=\"section-block light-text\">\n        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur bibendum ornare dolor, quis\n          ullamcorper ligula sodales at. Nulla tellus elit, varius non commodo eget, mattis vel eros. In sed\n          ornare\n          nulla. Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis.\n        </p>\n      </div>\n      <div class=\"section-block regular-text\">\n        <p>Curabitur bibendum ornare dolor, quis ullamcorper ligula dfgz`zzsodales at. Nullam quis risus eget urna\n          mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur\n          ridiculus\n          mus. Nullam id dolor id.\n        </p>\n      </div>\n      <div class=\"section-block upper-text bold-text\">\n        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur bibendum ornare dolor,\n          quis\n          ullamcorper ligula sodales at. Nulla tellus elit, varius non commodo eget, mattis vel eros. In sed\n          ornare\n          nulla. </p>\n      </div>\n      <div class=\"section-block bold-text\">\n        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur bibendum ornare dolor,\n          quis\n          ullam-corper ligula sodales at. Nulla tellus elit, varius non commodo eget, mattis vel eros. In sed\n          ornare\n          nulla.\n        </p>\n      </div>\n      <div class=\"section-block small-text\">\n        <p>Secondary text. Lorem ipsum dolor sit amet, id mollis iaculis mi nisl pulvinar,</p>\n\n        <p>lacinia scelerisque pharetra, placerat vestibulum eleifend</p>\n\n        <p> pellentesque, mi nam.</p>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"col-xlg-3 col-lg-6  col-md-6 col-sm-6 col-xs-12 typography-widget\">\n    <div ba-panel ba-panel-class=\"with-scroll lists-widget\" ba-panel-title=\"Lists\">\n      <div class=\"section-block\">\n        <h5 class=\"list-header\">Unordered list:</h5>\n        <ul class=\"blur\">\n          <li>Lorem ipsum dolor sit amet</li>\n          <li>Сlacinia scelerisque pharetra\n            <ul>\n              <li>Dui rhoncus quisque integer lorem\n                <ul>\n                  <li>Libero iaculis vestibulum eu vitae</li>\n                </ul>\n              </li>\n            </ul>\n          </li>\n          <li>Nisl lectus nibh habitasse suspendisse ut</li>\n          <li><span>Posuere cursus hac, vestibulum wisi nulla bibendum</span></li>\n        </ul>\n        <h5 class=\"list-header\">Ordered Lists:</h5>\n        <ol class=\"blur\">\n          <li><span>Eu non nec cursus quis mollis, amet quam nec</span></li>\n          <li><span>Et suspendisse, adipiscing fringilla ornare sit ligula sed</span>\n            <ol>\n              <li><span>Interdum et justo nulla</span>\n                <ol>\n                  <li><span>Magna amet, suscipit suscipit non amet</span></li>\n                </ol>\n              </li>\n            </ol>\n          </li>\n          <li><span>Metus duis eu non eu ridiculus turpis</span></li>\n          <li>\n            <span>Neque egestas id fringilla consectetuer justo curabitur, wisi magna neque commodo volutpat</span>\n          </li>\n        </ol>\n        <div class=\"accent\">Important text fragment. Lorem ipsum dolor sit amet, id mollis iaculis mi nisl\n          pulvinar,\n          lacinia scelerisque pharetra.\n        </div>\n      </div>\n    </div>\n  </div>\n\n  <div class=\"col-xlg-3 col-lg-6  col-md-6 col-sm-6 col-xs-12 typography-widget\">\n    <div ba-panel ba-panel-class=\"with-scroll color-widget\" ba-panel-title=\"Text Color\">\n      <div class=\"section-block red-text \">\n        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur bibendum ornare dolor, quis\n          ullamcorper ligula sodales at. Nulla tellus elit, varius non commodo eget, mattis vel eros. In sed\n          ornare\n          nulla. Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis\n          dis\n          parturient montes, nascetur ridiculus mus.\n        </p>\n      </div>\n      <div class=\"section-block yellow-text \">\n        <p>Curabitur bibendum ornare dolor, quis ullamcorper ligula dfgz`zzsodales at. Nullam quis risus eget\n          urna\n          mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur\n          ridiculus\n          mus. Nullam id dolor id nibh ultricies vehicula ut id elit. In sed ornare nulla.\n        </p>\n      </div>\n      <div class=\"section-block links\">\n        <p>Lorem ipsum <a href>dolor</a> sit amet, consectetur adipiscing elit. Curabitur bibendum ornare dolor,\n          quis\n          <a href>ullamcorper</a> ligula sodales at. Nulla tellus elit, varius non commodo eget, <a\n              href>mattis</a> vel eros. In sed ornare\n          nulla.\n        </p>\n      </div>\n      <div class=\"section-block links\">\n        <p><a href>Active link — #209e91</a></p>\n\n        <p class=\"hovered\"><a href>Hover link — #17857a</a></p>\n      </div>\n    </div>\n  </div>\n</div>\n\n<div class=\"row-fluid\">\n  <div class=\"col-lg-12 col-sm-12 col-xs-12\">\n    <div ba-panel ba-panel-class=\"banner-column-panel\">\n      <div class=\"banner\">\n        <div class=\"large-banner-wrapper\">\n          <img ng-src=\"{{::( 'app/typography/banner.png' | appImage )}}\" alt=\"\"/>\n        </div>\n        <div class=\"banner-text-wrapper\">\n          <div class=\"banner-text\">\n            <h1>Simple Banner Text</h1>\n\n            <p>Lorem ipsum dolor sit amet</p>\n\n            <p>Odio amet viverra rutrum</p>\n          </div>\n        </div>\n      </div>\n      <div class=\"section\">\n        <h2>Columns</h2>\n\n        <div class=\"row\">\n          <div class=\"col-sm-6\">\n            <div class=\"img-wrapper\"><img ng-src=\"{{::( 'app/typography/typo03.png' | appImage )}}\" alt=\"\" title=\"\"/>\n            </div>\n            <p>Vel elit, eros elementum, id lacinia, duis non ut ut tortor blandit. Mauris <a\n                href>dapibus</a> magna rutrum. Ornare neque suspendisse <a\n                href>phasellus wisi</a>, quam cras pede rutrum suspendisse, <a\n                href>felis amet eu</a>. Congue magna elit quisque quia, nullam justo sagittis,\n              ante erat libero placerat, proin condimentum consectetuer lacus. Velit condimentum velit, sed\n              penatibus\n              arcu nulla.</p>\n          </div>\n          <div class=\"col-sm-6\">\n            <div class=\"img-wrapper\"><img ng-src=\"{{::( 'app/typography/typo01.png' | appImage )}}\" alt=\"\" title=\"\"/>\n            </div>\n            <p>Et suspendisse, adipiscing fringilla ornare sit ligula sed, vel nam. Interdum et justo nulla,\n              fermentum\n              lobortis purus ut eu, duis nibh dolor massa tristique elementum, nibh iste potenti risus fusce\n              aliquet\n              fusce, ullamcorper debitis primis arcu tellus vestibulum ac.</p>\n          </div>\n        </div>\n\n        <div class=\"separator\"></div>\n\n        <div class=\"row\">\n          <div class=\"col-sm-4\">\n            <h4>Column heading example</h4>\n            <div class=\"img-wrapper\"><img ng-src=\"{{::( 'app/typography/typo04.png' | appImage )}}\" alt=\"\"/></div>\n            <p>Eget augue, lacus erat ante egestas scelerisque aliquam, metus molestie leo in habitasse magna\n              maecenas</p>\n            <a href class=\"learn-more\">Lean more</a>\n          </div>\n          <div class=\"col-sm-4\">\n            <h4>Yet another column heading example</h4>\n            <div class=\"img-wrapper\"><img ng-src=\"{{::( 'app/typography/typo05.png' | appImage )}}\" alt=\"\"/></div>\n            <p>Augue massa et parturient, suspendisse orci nec scelerisque sit, integer nam mauris pede consequat\n              in\n              velit</p>\n            <a href class=\"learn-more\">Lean more</a>\n          </div>\n          <div class=\"col-sm-4\">\n            <h4>Third column heading example</h4>\n            <div class=\"img-wrapper\"><img ng-src=\"{{::( 'app/typography/typo06.png' | appImage )}}\" alt=\"\"/></div>\n            <p>Eget turpis, tortor lobortis porttitor, vestibulum nullam vehicula aliquam</p>\n            <a href class=\"learn-more\">Lean more</a>\n          </div>\n        </div>\n        <div class=\"separator\"></div>\n      </div>\n    </div>\n  </div>\n</div>\n"
  },
  {
    "path": "src/app/pages/ui/typography/typography.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui.typography', [])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('ui.typography', {\n          url: '/typography',\n          templateUrl: 'app/pages/ui/typography/typography.html',\n          title: 'Typography',\n          sidebarMeta: {\n            order: 0,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/pages/ui/ui.module.js",
    "content": "/**\n * @author k.danovsky\n * created on 12.01.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.pages.ui', [\n    'BlurAdmin.pages.ui.typography',\n    'BlurAdmin.pages.ui.buttons',\n    'BlurAdmin.pages.ui.icons',\n    'BlurAdmin.pages.ui.modals',\n    'BlurAdmin.pages.ui.grid',\n    'BlurAdmin.pages.ui.alerts',\n    'BlurAdmin.pages.ui.progressBars',\n    'BlurAdmin.pages.ui.notifications',\n    'BlurAdmin.pages.ui.tabs',\n    'BlurAdmin.pages.ui.slider',\n    'BlurAdmin.pages.ui.panels',\n  ])\n      .config(routeConfig);\n\n  /** @ngInject */\n  function routeConfig($stateProvider) {\n    $stateProvider\n        .state('ui', {\n          url: '/ui',\n          template : '<ui-view  autoscroll=\"true\" autoscroll-body-top></ui-view>',\n          abstract: true,\n          title: 'UI Features',\n          sidebarMeta: {\n            icon: 'ion-android-laptop',\n            order: 200,\n          },\n        });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/theme/components/baPanel/baPanel.directive.js",
    "content": "/**\n * @author v.lugovsky\n * created on 23.12.2015\n */\n(function () {\n  'use strict';\n\n  /**\n   * Includes basic panel layout inside of current element.\n   */\n  angular.module('BlurAdmin.theme')\n      .directive('baPanel', baPanel);\n\n  /** @ngInject */\n  function baPanel(baPanel, baConfig) {\n    return angular.extend({}, baPanel, {\n      template: function(el, attrs) {\n        var res = '<div  class=\"panel ' + (baConfig.theme.blur ? 'panel-blur' : '') + ' full-invisible ' + (attrs.baPanelClass || '');\n        res += '\" zoom-in ' + (baConfig.theme.blur ? 'ba-panel-blur' : '') + '>';\n        res += baPanel.template(el, attrs);\n        res += '</div>';\n        return res;\n      }\n    });\n  }\n})();\n"
  },
  {
    "path": "src/app/theme/components/baPanel/baPanel.service.js",
    "content": "/**\n * @author v.lugovsky\n * created on 23.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .factory('baPanel', baPanel);\n\n  /** @ngInject */\n  function baPanel() {\n\n    /** Base baPanel directive */\n    return {\n      restrict: 'A',\n      transclude: true,\n      template: function(elem, attrs) {\n        var res = '<div class=\"panel-body\" ng-transclude></div>';\n        if (attrs.baPanelTitle) {\n          var titleTpl = '<div class=\"panel-heading clearfix\"><h3 class=\"panel-title\">' + attrs.baPanelTitle + '</h3></div>';\n          res = titleTpl + res; // title should be before\n        }\n\n        return res;\n      }\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/theme/components/baPanel/baPanelBlur.directive.js",
    "content": "/**\n * @author v.lugovsky\n * created on 15.01.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .directive('baPanelBlur', baPanelBlur);\n\n  /** @ngInject */\n  function baPanelBlur(baPanelBlurHelper, $window, $rootScope) {\n    var bodyBgSize;\n\n    baPanelBlurHelper.bodyBgLoad().then(function() {\n      bodyBgSize = baPanelBlurHelper.getBodyBgImageSizes();\n    });\n\n    $window.addEventListener('resize', function() {\n      bodyBgSize = baPanelBlurHelper.getBodyBgImageSizes();\n    });\n\n    return {\n      restrict: 'A',\n      link: function($scope, elem) {\n        if(!$rootScope.$isMobile) {\n          baPanelBlurHelper.bodyBgLoad().then(function () {\n            setTimeout(recalculatePanelStyle);\n          });\n          $window.addEventListener('resize', recalculatePanelStyle);\n\n          $scope.$on('$destroy', function () {\n            $window.removeEventListener('resize', recalculatePanelStyle);\n          });\n        }\n\n        function recalculatePanelStyle() {\n          if (!bodyBgSize) {\n            return;\n          }\n          elem.css({\n            backgroundSize: Math.round(bodyBgSize.width) + 'px ' + Math.round(bodyBgSize.height) + 'px',\n            backgroundPosition: Math.floor(bodyBgSize.positionX) + 'px ' + Math.floor(bodyBgSize.positionY) + 'px'\n          });\n        }\n\n      }\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/theme/components/baPanel/baPanelBlurHelper.service.js",
    "content": "/**\n * @author v.lugovsky\n * created on 15.01.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .service('baPanelBlurHelper', baPanelBlurHelper);\n\n  /** @ngInject */\n  function baPanelBlurHelper($q) {\n    var res = $q.defer();\n    var computedStyle = getComputedStyle(document.body, ':before');\n    var image = new Image();\n    image.src = computedStyle.backgroundImage.replace(/url\\((['\"])?(.*?)\\1\\)/gi, '$2');\n    image.onerror = function() {\n      res.reject();\n    };\n    image.onload = function() {\n      res.resolve();\n    };\n\n    this.bodyBgLoad = function() {\n      return res.promise;\n    };\n\n    this.getBodyBgImageSizes = function() {\n      var elemW = document.documentElement.clientWidth;\n      var elemH = document.documentElement.clientHeight;\n      if(elemW <= 640) return;\n      var imgRatio = (image.height / image.width);       // original img ratio\n      var containerRatio = (elemH / elemW);     // container ratio\n\n      var finalHeight, finalWidth;\n      if (containerRatio > imgRatio) {\n        finalHeight = elemH;\n        finalWidth = (elemH / imgRatio);\n      } else {\n        finalWidth = elemW;\n        finalHeight = (elemW * imgRatio);\n      }\n      return { width: finalWidth, height: finalHeight, positionX: (elemW - finalWidth)/2, positionY: (elemH - finalHeight)/2};\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/theme/components/baPanel/baPanelSelf.directive.js",
    "content": "/**\n * @author v.lugovsky\n * created on 23.12.2015\n */\n(function () {\n  'use strict';\n\n  /**\n   * Represents current element as panel, adding all necessary classes.\n   */\n  angular.module('BlurAdmin.theme')\n      .directive('baPanelSelf', baPanelSelf);\n\n  /** @ngInject */\n  function baPanelSelf(baPanel) {\n    return angular.extend({}, baPanel, {\n      link: function(scope, el, attrs) {\n        el.addClass('panel panel-white');\n        if (attrs.baPanelClass) {\n          el.addClass(attrs.baPanelClass);\n        }\n      }\n    });\n  }\n\n})();\n"
  },
  {
    "path": "src/app/theme/components/baSidebar/BaSidebarCtrl.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n    .controller('BaSidebarCtrl', BaSidebarCtrl);\n\n  /** @ngInject */\n  function BaSidebarCtrl($scope, baSidebarService) {\n\n    $scope.menuItems = baSidebarService.getMenuItems();\n    $scope.defaultSidebarState = $scope.menuItems[0].stateRef;\n\n    $scope.hoverItem = function ($event) {\n      $scope.showHoverElem = true;\n      $scope.hoverElemHeight =  $event.currentTarget.clientHeight;\n      var menuTopValue = 66;\n      $scope.hoverElemTop = $event.currentTarget.getBoundingClientRect().top - menuTopValue;\n    };\n\n    $scope.$on('$stateChangeSuccess', function () {\n      if (baSidebarService.canSidebarBeHidden()) {\n        baSidebarService.setMenuCollapsed(true);\n      }\n    });\n  }\n})();"
  },
  {
    "path": "src/app/theme/components/baSidebar/ba-sidebar.html",
    "content": "<aside class=\"al-sidebar\" ng-swipe-right=\"$baSidebarService.setMenuCollapsed(false)\" ng-swipe-left=\"$baSidebarService.setMenuCollapsed(true)\"\n       ng-mouseleave=\"hoverElemTop=selectElemTop\">\n  <ul class=\"al-sidebar-list\" slimscroll=\"{height: '{{menuHeight}}px'}\" slimscroll-watch=\"menuHeight\" >\n    <li ng-repeat=\"item in ::menuItems\" class=\"al-sidebar-list-item\"\n        ng-class=\"::{'with-sub-menu': item.subMenu}\" ui-sref-active=\"selected\"\n        ba-sidebar-toggling-item=\"item\">\n\n      <a ng-mouseenter=\"hoverItem($event, item)\" ui-state=\"item.stateRef || ''\" ng-href=\"{{::(item.fixedHref ? item.fixedHref: '')}}\" ng-if=\"::!item.subMenu\" class=\"al-sidebar-list-link\">\n        <i class=\"{{ ::item.icon }}\"></i><span>{{ ::item.title }}</span>\n      </a>\n\n      <a ng-mouseenter=\"hoverItem($event, item)\" ng-if=\"::item.subMenu\"\n         class=\"al-sidebar-list-link\" ba-ui-sref-toggler>\n        <i class=\"{{ ::item.icon }}\"></i><span>{{ ::item.title }}</span>\n        <b class=\"fa fa-angle-down\" ui-sref-active=\"fa-angle-up\"\n           ng-if=\"::item.subMenu\"></b>\n      </a>\n\n      <ul ng-if=\"::item.subMenu\" class=\"al-sidebar-sublist\"\n          ng-class=\"{'slide-right': item.slideRight}\"\n          ba-ui-sref-toggling-submenu>\n        <li ng-repeat=\"subitem in ::item.subMenu\" ng-class=\"::{'with-sub-menu': subitem.subMenu}\" ui-sref-active=\"selected\"\n            ba-sidebar-toggling-item=\"subitem\" class=\"ba-sidebar-sublist-item\">\n          <a ng-mouseenter=\"hoverItem($event, item)\" ng-if=\"::subitem.subMenu\" ba-ui-sref-toggler\n             class=\"al-sidebar-list-link subitem-submenu-link\"><span>{{ ::subitem.title }}</span>\n            <b class=\"fa\" ng-class=\"{'fa-angle-up': subitem.expanded, 'fa-angle-down': !subitem.expanded}\"\n               ng-if=\"::subitem.subMenu\"></b>\n          </a>\n          <ul ng-if=\"::subitem.subMenu\" class=\"al-sidebar-sublist subitem-submenu-list\"\n              ng-class=\"{expanded: subitem.expanded, 'slide-right': subitem.slideRight}\"\n              ba-ui-sref-toggling-submenu>\n            <li ng-mouseenter=\"hoverItem($event, item)\" ng-repeat=\"subSubitem in ::subitem.subMenu\" ui-sref-active=\"selected\">\n              <a ng-mouseenter=\"hoverItem($event, item)\" href ng-if=\"::subSubitem.disabled\" class=\"al-sidebar-list-link\">\n                {{ ::subSubitem.title }}\n              </a>\n              <a ng-mouseenter=\"hoverItem($event, item)\"\n                 ui-state=\"subSubitem.stateRef || ''\"\n                 ng-if=\"::!subSubitem.disabled\"\n                 ng-href=\"{{::(subSubitem.fixedHref ? subSubitem.fixedHref: '')}}\">\n                {{::subSubitem.title }}\n              </a>\n            </li>\n          </ul>\n          <a ng-mouseenter=\"hoverItem($event, item)\" href ng-if=\"::(!subitem.subMenu && subitem.disabled)\" class=\"al-sidebar-list-link\">\n            {{ ::subitem.title }}\n          </a>\n          <a ng-mouseenter=\"hoverItem($event, item)\" target=\"{{::(subitem.blank ? '_blank' : '_self')}}\"\n             ng-if=\"::(!subitem.subMenu && !subitem.disabled)\"\n             ui-state=\"subitem.stateRef || ''\"\n             ng-href=\"{{::(subitem.fixedHref ? subitem.fixedHref: '')}}\">\n            {{ ::subitem.title}}\n          </a>\n        </li>\n      </ul>\n    </li>\n  </ul>\n  <div class=\"sidebar-hover-elem\" ng-style=\"{top: hoverElemTop + 'px', height: hoverElemHeight + 'px'}\"\n       ng-class=\"{'show-hover-elem': showHoverElem }\"></div>\n</aside>\n"
  },
  {
    "path": "src/app/theme/components/baSidebar/baSidebar.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n      .directive('baSidebar', baSidebar);\n\n  /** @ngInject */\n  function baSidebar($timeout, baSidebarService, baUtil, layoutSizes) {\n    var jqWindow = $(window);\n    return {\n      restrict: 'E',\n      templateUrl: 'app/theme/components/baSidebar/ba-sidebar.html',\n      controller: 'BaSidebarCtrl',\n      link: function(scope, el) {\n\n        scope.menuHeight = el[0].childNodes[0].clientHeight - 84;\n        jqWindow.on('click', _onWindowClick);\n        jqWindow.on('resize', _onWindowResize);\n\n        scope.$on('$destroy', function() {\n          jqWindow.off('click', _onWindowClick);\n          jqWindow.off('resize', _onWindowResize);\n        });\n\n        function _onWindowClick($evt) {\n          if (!baUtil.isDescendant(el[0], $evt.target) &&\n              !$evt.originalEvent.$sidebarEventProcessed &&\n              !baSidebarService.isMenuCollapsed() &&\n              baSidebarService.canSidebarBeHidden()) {\n            $evt.originalEvent.$sidebarEventProcessed = true;\n            $timeout(function () {\n              baSidebarService.setMenuCollapsed(true);\n            }, 10);\n          }\n        }\n\n        // watch window resize to change menu collapsed state if needed\n        function _onWindowResize() {\n          var newMenuCollapsed = baSidebarService.shouldMenuBeCollapsed();\n          var newMenuHeight = _calculateMenuHeight();\n          if (newMenuCollapsed != baSidebarService.isMenuCollapsed() || scope.menuHeight != newMenuHeight) {\n            scope.$apply(function () {\n              scope.menuHeight = newMenuHeight;\n              baSidebarService.setMenuCollapsed(newMenuCollapsed)\n            });\n          }\n        }\n\n        function _calculateMenuHeight() {\n          return el[0].childNodes[0].clientHeight - 84;\n        }\n      }\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/components/baSidebar/baSidebar.service.js",
    "content": "(function() {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n      .provider('baSidebarService', baSidebarServiceProvider);\n\n  /** @ngInject */\n  function baSidebarServiceProvider() {\n    var staticMenuItems = [];\n\n    this.addStaticItem = function() {\n      staticMenuItems.push.apply(staticMenuItems, arguments);\n    };\n\n    /** @ngInject */\n    this.$get = function($state, layoutSizes) {\n      return new _factory();\n\n      function _factory() {\n        var isMenuCollapsed = shouldMenuBeCollapsed();\n\n        this.getMenuItems = function() {\n          var states = defineMenuItemStates();\n          var menuItems = states.filter(function(item) {\n            return item.level == 0;\n          });\n\n          menuItems.forEach(function(item) {\n            var children = states.filter(function(child) {\n              return child.level == 1 && child.name.indexOf(item.name) === 0;\n            });\n            item.subMenu = children.length ? children : null;\n          });\n\n          return menuItems.concat(staticMenuItems);\n        };\n\n        this.shouldMenuBeCollapsed = shouldMenuBeCollapsed;\n        this.canSidebarBeHidden = canSidebarBeHidden;\n\n        this.setMenuCollapsed = function(isCollapsed) {\n          isMenuCollapsed = isCollapsed;\n        };\n\n        this.isMenuCollapsed = function() {\n          return isMenuCollapsed;\n        };\n\n        this.toggleMenuCollapsed = function() {\n          isMenuCollapsed = !isMenuCollapsed;\n        };\n\n        this.getAllStateRefsRecursive = function(item) {\n          var result = [];\n          _iterateSubItems(item);\n          return result;\n\n          function _iterateSubItems(currentItem) {\n            currentItem.subMenu && currentItem.subMenu.forEach(function(subItem) {\n              subItem.stateRef && result.push(subItem.stateRef);\n              _iterateSubItems(subItem);\n            });\n          }\n        };\n\n        function defineMenuItemStates() {\n          return $state.get()\n              .filter(function(s) {\n                return s.sidebarMeta;\n              })\n              .map(function(s) {\n                var meta = s.sidebarMeta;\n                return {\n                  name: s.name,\n                  title: s.title,\n                  level: (s.name.match(/\\./g) || []).length,\n                  order: meta.order,\n                  icon: meta.icon,\n                  stateRef: s.name,\n                };\n              })\n              .sort(function(a, b) {\n                return (a.level - b.level) * 100 + a.order - b.order;\n              });\n        }\n\n        function shouldMenuBeCollapsed() {\n          return window.innerWidth <= layoutSizes.resWidthCollapseSidebar;\n        }\n\n        function canSidebarBeHidden() {\n          return window.innerWidth <= layoutSizes.resWidthHideSidebar;\n        }\n      }\n\n    };\n\n  }\n})();\n"
  },
  {
    "path": "src/app/theme/components/baSidebar/baSidebarHelpers.directive.js",
    "content": "/**\n * @author v.lugovsky\n * created on 03.05.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n      .directive('baSidebarToggleMenu', baSidebarToggleMenu)\n      .directive('baSidebarCollapseMenu', baSidebarCollapseMenu)\n      .directive('baSidebarTogglingItem', baSidebarTogglingItem)\n      .controller('BaSidebarTogglingItemCtrl', BaSidebarTogglingItemCtrl)\n      .directive('baUiSrefTogglingSubmenu', baUiSrefTogglingSubmenu)\n      .directive('baUiSrefToggler', baUiSrefToggler);\n\n  /** @ngInject */\n  function baSidebarToggleMenu(baSidebarService) {\n    return {\n      restrict: 'A',\n      link: function(scope, elem) {\n        elem.on('click', function($evt) {\n          $evt.originalEvent.$sidebarEventProcessed = true;\n          scope.$apply(function() {\n            baSidebarService.toggleMenuCollapsed();\n          });\n        });\n      }\n    };\n  }\n\n  /** @ngInject */\n  function baSidebarCollapseMenu(baSidebarService) {\n    return {\n      restrict: 'A',\n      link: function(scope, elem) {\n        elem.on('click', function($evt) {\n          $evt.originalEvent.$sidebarEventProcessed = true;\n          if (!baSidebarService.isMenuCollapsed()) {\n            scope.$apply(function() {\n              baSidebarService.setMenuCollapsed(true);\n            });\n          }\n        });\n      }\n    };\n  }\n\n  /** @ngInject */\n  function baSidebarTogglingItem() {\n    return {\n      restrict: 'A',\n      controller: 'BaSidebarTogglingItemCtrl'\n    };\n  }\n\n  /** @ngInject */\n  function BaSidebarTogglingItemCtrl($scope, $element, $attrs, $state, baSidebarService) {\n    var vm = this;\n    var menuItem = vm.$$menuItem = $scope.$eval($attrs.baSidebarTogglingItem);\n    if (menuItem && menuItem.subMenu && menuItem.subMenu.length) {\n      vm.$$expandSubmenu = function() { console.warn('$$expandMenu should be overwritten by baUiSrefTogglingSubmenu') };\n      vm.$$collapseSubmenu = function() { console.warn('$$collapseSubmenu should be overwritten by baUiSrefTogglingSubmenu') };\n\n      var subItemsStateRefs = baSidebarService.getAllStateRefsRecursive(menuItem);\n\n      vm.$expand = function() {\n        vm.$$expandSubmenu();\n        $element.addClass('ba-sidebar-item-expanded');\n      };\n\n      vm.$collapse = function() {\n        vm.$$collapseSubmenu();\n        $element.removeClass('ba-sidebar-item-expanded');\n      };\n\n      vm.$toggle = function() {\n        $element.hasClass('ba-sidebar-item-expanded') ?\n            vm.$collapse() :\n            vm.$expand();\n      };\n\n      if (_isState($state.current)) {\n        $element.addClass('ba-sidebar-item-expanded');\n      }\n\n      $scope.$on('$stateChangeStart', function (event, toState) {\n        if (!_isState(toState) && $element.hasClass('ba-sidebar-item-expanded')) {\n          vm.$collapse();\n          $element.removeClass('ba-sidebar-item-expanded');\n        }\n      });\n\n      $scope.$on('$stateChangeSuccess', function (event, toState) {\n        if (_isState(toState) && !$element.hasClass('ba-sidebar-item-expanded')) {\n          vm.$expand();\n          $element.addClass('ba-sidebar-item-expanded');\n        }\n      });\n    }\n\n    function _isState(state) {\n      return state && subItemsStateRefs.some(function(subItemState) {\n            return state.name.indexOf(subItemState) == 0;\n          });\n    }\n  }\n\n  /** @ngInject */\n  function baUiSrefTogglingSubmenu($state) {\n    return {\n      restrict: 'A',\n      require: '^baSidebarTogglingItem',\n      link: function(scope, el, attrs, baSidebarTogglingItem) {\n        baSidebarTogglingItem.$$expandSubmenu = function() { el.slideDown(); };\n        baSidebarTogglingItem.$$collapseSubmenu = function() { el.slideUp(); };\n      }\n    };\n  }\n\n  /** @ngInject */\n  function baUiSrefToggler(baSidebarService) {\n    return {\n      restrict: 'A',\n      require: '^baSidebarTogglingItem',\n      link: function(scope, el, attrs, baSidebarTogglingItem) {\n        el.on('click', function() {\n          if (baSidebarService.isMenuCollapsed()) {\n            // If the whole sidebar is collapsed and this item has submenu. We need to open sidebar.\n            // This should not affect mobiles, because on mobiles sidebar should be hidden at all\n            scope.$apply(function() {\n              baSidebarService.setMenuCollapsed(false);\n            });\n            baSidebarTogglingItem.$expand();\n          } else {\n            baSidebarTogglingItem.$toggle();\n          }\n        });\n      }\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/theme/components/baWizard/baWizard.directive.js",
    "content": "(function() {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n    .directive('baWizard', baWizard);\n\n  /** @ngInject */\n  function baWizard() {\n    return {\n      restrict: 'E',\n      transclude: true,\n      templateUrl: 'app/theme/components/baWizard/baWizard.html',\n      controllerAs: '$baWizardController',\n      controller: 'baWizardCtrl'\n    }\n  }\n})();\n"
  },
  {
    "path": "src/app/theme/components/baWizard/baWizard.html",
    "content": "<div class=\"ba-wizard\">\n    <div class=\"ba-wizard-navigation-container\">\n        <div ng-repeat=\"t in $baWizardController.tabs\" class=\"ba-wizard-navigation {{$baWizardController.tabNum == $index ? 'active' : ''}}\" ng-click=\"$baWizardController.selectTab($index)\">\n            {{t.title}}\n        </div>\n    </div>\n\n    <div class=\"progress ba-wizard-progress\">\n        <div class=\"progress-bar progress-bar-danger active\" role=\"progressbar\"\n             aria-valuemin=\"0\" aria-valuemax=\"100\" ng-style=\"{width: $baWizardController.progress + '%'}\">\n        </div>\n    </div>\n\n    <div class=\"steps\" ng-transclude></div>\n\n    <nav>\n        <ul class=\"pager ba-wizard-pager\">\n            <li class=\"previous\"><button  ng-disabled=\"$baWizardController.isFirstTab()\" ng-click=\"$baWizardController.previousTab()\" type=\"button\" class=\" btn btn-primary\"><span aria-hidden=\"true\">&larr;</span> previous</button></li>\n            <li class=\"next\"> <button ng-disabled=\"$baWizardController.isLastTab()\" ng-click=\"$baWizardController.nextTab()\" type=\"button\" class=\"btn btn-primary\">next <span aria-hidden=\"true\">&rarr;</span></button></li>\n        </ul>\n    </nav>\n</div>\n"
  },
  {
    "path": "src/app/theme/components/baWizard/baWizardCtrl.js",
    "content": "(function() {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n    .controller('baWizardCtrl', baWizardCtrl);\n\n  /** @ngInject */\n  function baWizardCtrl($scope) {\n    var vm = this;\n    vm.tabs = [];\n\n    vm.tabNum = 0;\n    vm.progress = 0;\n\n    vm.addTab = function(tab) {\n      tab.setPrev(vm.tabs[vm.tabs.length - 1]);\n      vm.tabs.push(tab);\n      vm.selectTab(0);\n    };\n\n    $scope.$watch(angular.bind(vm, function () {return vm.tabNum;}), calcProgress);\n\n    vm.selectTab = function (tabNum) {\n      vm.tabs[vm.tabNum].submit();\n      if (vm.tabs[tabNum].isAvailiable()) {\n        vm.tabNum = tabNum;\n        vm.tabs.forEach(function (t, tIndex) {\n          tIndex == vm.tabNum ? t.select(true) : t.select(false);\n        });\n      }\n    };\n\n    vm.isFirstTab = function () {\n      return vm.tabNum == 0;\n    };\n\n    vm.isLastTab = function () {\n      return vm.tabNum == vm.tabs.length - 1 ;\n    };\n\n    vm.nextTab = function () {\n      vm.selectTab(vm.tabNum + 1)\n    };\n\n    vm.previousTab = function () {\n      vm.selectTab(vm.tabNum - 1)\n    };\n\n    function calcProgress() {\n      vm.progress = ((vm.tabNum + 1) / vm.tabs.length) * 100;\n    }\n  }\n})();\n\n"
  },
  {
    "path": "src/app/theme/components/baWizard/baWizardStep.directive.js",
    "content": "(function() {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n    .directive('baWizardStep', baWizardStep);\n\n  /** @ngInject */\n  function baWizardStep() {\n    return {\n      restrict: 'E',\n      transclude: true,\n      require: '^baWizard',\n      scope: {\n        form: '='\n      },\n      templateUrl:  'app/theme/components/baWizard/baWizardStep.html',\n      link: function($scope, $element, $attrs, wizard) {\n        $scope.selected = true;\n\n        var tab = {\n          title: $attrs.title,\n          select: select,\n          submit: submit,\n          isComplete: isComplete,\n          isAvailiable: isAvailiable,\n          prevTab: undefined,\n          setPrev: setPrev\n        };\n\n        wizard.addTab(tab);\n\n        function select(isSelected) {\n          if (isSelected) {\n            $scope.selected = true;\n          } else {\n            $scope.selected = false;\n          }\n        }\n\n        function submit() {\n          $scope.form && $scope.form.$setSubmitted(true);\n        }\n\n        function isComplete() {\n          return $scope.form ? $scope.form.$valid : true;\n        }\n\n        function isAvailiable() {\n          return tab.prevTab ? tab.prevTab.isComplete() : true;\n        }\n\n        function setPrev(pTab) {\n          tab.prevTab = pTab;\n        }\n      }\n    };\n  }\n})();"
  },
  {
    "path": "src/app/theme/components/baWizard/baWizardStep.html",
    "content": "<section ng-show=\"selected\" class=\"step\" ng-transclude></section>"
  },
  {
    "path": "src/app/theme/components/backTop/backTop.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n      .directive('backTop', backTop);\n\n  /** @ngInject */\n  function backTop() {\n    return {\n      restrict: 'E',\n      templateUrl: 'app/theme/components/backTop/backTop.html',\n      controller: function () {\n        $('#backTop').backTop({\n          'position': 200,\n          'speed': 100\n        });\n      }\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/components/backTop/backTop.html",
    "content": "<i class=\"fa fa-angle-up back-top\" id=\"backTop\" title=\"Back to Top\"></i>\n"
  },
  {
    "path": "src/app/theme/components/components.module.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components', []);\n\n})();\n"
  },
  {
    "path": "src/app/theme/components/contentTop/contentTop.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n      .directive('contentTop', contentTop);\n\n  /** @ngInject */\n  function contentTop($location, $state) {\n    return {\n      restrict: 'E',\n      templateUrl: 'app/theme/components/contentTop/contentTop.html',\n      link: function($scope) {\n        $scope.$watch(function () {\n          $scope.activePageTitle = $state.current.title;\n        });\n      }\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/components/contentTop/contentTop.html",
    "content": "<div class=\"content-top clearfix\">\n  <h1 class=\"al-title\">{{ activePageTitle }}</h1>\n\n  <ul class=\"breadcrumb al-breadcrumb\">\n    <li>\n      <a href=\"#/dashboard\">Home</a></li>\n    <li>{{ activePageTitle }}</li>\n  </ul>\n</div>"
  },
  {
    "path": "src/app/theme/components/msgCenter/MsgCenterCtrl.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n      .controller('MsgCenterCtrl', MsgCenterCtrl);\n\n  /** @ngInject */\n  function MsgCenterCtrl($scope, $sce) {\n    $scope.users = {\n      0: {\n        name: 'Vlad',\n      },\n      1: {\n        name: 'Kostya',\n      },\n      2: {\n        name: 'Andrey',\n      },\n      3: {\n        name: 'Nasta',\n      }\n    };\n\n    $scope.notifications = [\n      {\n        userId: 0,\n        template: '&name posted a new article.',\n        time: '1 min ago'\n      },\n      {\n        userId: 1,\n        template: '&name changed his contact information.',\n        time: '2 hrs ago'\n      },\n      {\n        image: 'assets/img/shopping-cart.svg',\n        template: 'New orders received.',\n        time: '5 hrs ago'\n      },\n      {\n        userId: 2,\n        template: '&name replied to your comment.',\n        time: '1 day ago'\n      },\n      {\n        userId: 3,\n        template: 'Today is &name\\'s birthday.',\n        time: '2 days ago'\n      },\n      {\n        image: 'assets/img/comments.svg',\n        template: 'New comments on your post.',\n        time: '3 days ago'\n      },\n      {\n        userId: 1,\n        template: '&name invited you to join the event.',\n        time: '1 week ago'\n      }\n    ];\n\n    $scope.messages = [\n      {\n        userId: 3,\n        text: 'After you get up and running, you can place Font Awesome icons just about...',\n        time: '1 min ago'\n      },\n      {\n        userId: 0,\n        text: 'You asked, Font Awesome delivers with 40 shiny new icons in version 4.2.',\n        time: '2 hrs ago'\n      },\n      {\n        userId: 1,\n        text: 'Want to request new icons? Here\\'s how. Need vectors or want to use on the...',\n        time: '10 hrs ago'\n      },\n      {\n        userId: 2,\n        text: 'Explore your passions and discover new ones by getting involved. Stretch your...',\n        time: '1 day ago'\n      },\n      {\n        userId: 3,\n        text: 'Get to know who we are - from the inside out. From our history and culture, to the...',\n        time: '1 day ago'\n      },\n      {\n        userId: 1,\n        text: 'Need some support to reach your goals? Apply for scholarships across a variety of...',\n        time: '2 days ago'\n      },\n      {\n        userId: 0,\n        text: 'Wrap the dropdown\\'s trigger and the dropdown menu within .dropdown, or...',\n        time: '1 week ago'\n      }\n    ];\n\n    $scope.getMessage = function(msg) {\n      var text = msg.template;\n      if (msg.userId || msg.userId === 0) {\n        text = text.replace('&name', '<strong>' + $scope.users[msg.userId].name + '</strong>');\n      }\n      return $sce.trustAsHtml(text);\n    };\n  }\n})();"
  },
  {
    "path": "src/app/theme/components/msgCenter/msgCenter.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n      .directive('msgCenter', msgCenter);\n\n  /** @ngInject */\n  function msgCenter() {\n    return {\n      restrict: 'E',\n      templateUrl: 'app/theme/components/msgCenter/msgCenter.html',\n      controller: 'MsgCenterCtrl'\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/components/msgCenter/msgCenter.html",
    "content": "<ul class=\"al-msg-center clearfix\">\n  <li uib-dropdown>\n    <a href uib-dropdown-toggle>\n      <i class=\"fa fa-bell-o\"></i><span>5</span>\n\n      <div class=\"notification-ring\"></div>\n    </a>\n\n    <div uib-dropdown-menu class=\"top-dropdown-menu\">\n      <i class=\"dropdown-arr\"></i>\n\n      <div class=\"header clearfix\">\n        <strong>Notifications</strong>\n        <a href>Mark All as Read</a>\n        <a href>Settings</a>\n      </div>\n      <div class=\"msg-list\">\n        <a href class=\"clearfix\" ng-repeat=\"msg in notifications\">\n          <div class=\"img-area\"><img ng-class=\"{'photo-msg-item' : !msg.image}\" ng-src=\"{{::( msg.image ||  (users[msg.userId].name | profilePicture) )}}\"></div>\n          <div class=\"msg-area\">\n            <div ng-bind-html=\"getMessage(msg)\"></div>\n            <span>{{ msg.time }}</span>\n          </div>\n        </a>\n      </div>\n      <a href>See all notifications</a>\n    </div>\n  </li>\n  <li uib-dropdown>\n    <a href class=\"msg\" uib-dropdown-toggle>\n      <i class=\"fa fa-envelope-o\"></i><span>5</span>\n      <div class=\"notification-ring\"></div>\n    </a>\n    <div uib-dropdown-menu class=\"top-dropdown-menu\">\n      <i class=\"dropdown-arr\"></i>\n      <div class=\"header clearfix\">\n        <strong>Messages</strong>\n        <a href>Mark All as Read</a>\n        <a href>Settings</a>\n      </div>\n      <div class=\"msg-list\">\n        <a href class=\"clearfix\" ng-repeat=\"msg in messages\">\n          <div class=\"img-area\"><img class=\"photo-msg-item\" ng-src=\"{{::( users[msg.userId].name | profilePicture )}}\"></div>\n          <div class=\"msg-area\">\n            <div>{{ msg.text }}</div>\n            <span>{{ msg.time }}</span>\n          </div>\n        </a>\n      </div>\n      <a href>See all messages</a>\n    </div>\n  </li>\n</ul>"
  },
  {
    "path": "src/app/theme/components/pageTop/pageTop.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n      .directive('pageTop', pageTop);\n\n  /** @ngInject */\n  function pageTop() {\n    return {\n      restrict: 'E',\n      templateUrl: 'app/theme/components/pageTop/pageTop.html'\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/components/pageTop/pageTop.html",
    "content": "<div class=\"page-top clearfix\" scroll-position=\"scrolled\" max-height=\"50\" ng-class=\"{'scrolled': scrolled}\">\n  <a href=\"#/dashboard\" class=\"al-logo clearfix\"><span>Blur</span>Admin</a>\n  <a href class=\"collapse-menu-link ion-navicon\" ba-sidebar-toggle-menu></a>\n\n  <div class=\"search\">\n    <i class=\"ion-ios-search-strong\" ng-click=\"startSearch()\"></i>\n    <input id=\"searchInput\" type=\"text\" placeholder=\"Search for...\">\n  </div>\n\n  <div class=\"user-profile clearfix\">\n    <div class=\"al-user-profile\" uib-dropdown>\n      <a uib-dropdown-toggle class=\"profile-toggle-link\">\n        <img ng-src=\"{{::( 'Nasta' | profilePicture )}}\">\n      </a>\n      <ul  class=\"top-dropdown-menu profile-dropdown\" uib-dropdown-menu>\n        <li><i class=\"dropdown-arr\"></i></li>\n        <li><a href=\"#/profile\"><i class=\"fa fa-user\"></i>Profile</a></li>\n        <li><a href><i class=\"fa fa-cog\"></i>Settings</a></li>\n        <li><a href class=\"signout\"><i class=\"fa fa-power-off\"></i>Sign out</a></li>\n      </ul>\n    </div>\n    <msg-center></msg-center>\n  </div>\n</div>"
  },
  {
    "path": "src/app/theme/components/progressBarRound/progressBarRound.directive.js",
    "content": "/**\n * Created by n.poltoratsky\n * on 28.06.2016.\n */\n(function () {\n    'use strict';\n\n    angular.module('BlurAdmin.theme.components')\n        .directive('progressBarRound', progressBarRound);\n\n    /** @ngInject */\n    function progressBarRound(baProgressModal) {\n        return {\n            restrict: 'E',\n            templateUrl: 'app/theme/components/progressBarRound/progressBarRound.html',\n            link:function($scope, element, attrs) {\n                $scope.baProgressDialog = baProgressModal;\n                $scope.$watch(function () {\n                    return baProgressModal.getProgress();\n                }, animateBar);\n\n                function animateBar() {\n                    var circle = element.find('#loader')[0];\n                    circle.setAttribute(\"stroke-dasharray\", baProgressModal.getProgress() * 180 * Math.PI / 100 + \", 20000\");\n                    $scope.progress = baProgressModal.getProgress();\n                }\n            }\n        }\n    }\n})();"
  },
  {
    "path": "src/app/theme/components/progressBarRound/progressBarRound.html",
    "content": "<svg class=\"center-block progress-bar-round\" width=\"200\" height=\"200\">\n    <circle cx=\"100\" cy=\"100\" r=\"90\" fill=\"none\" stroke=\"#F8F8FF\" stroke-width=\"8\"/>\n    <circle cx=\"100\" cy=\"100\" r=\"90\" fill=\"none\" id=\"loader\" class=\"\"\n            stroke=\"#209e91\" stroke-width=\"8\" stroke-dasharray=\"0,20000\"\n            transform=\"rotate(-90,100,100)\" stroke-linecap=\"round\"/>\n    <text text-anchor=\"middle\" class=\"loading\" x=\"100\" y=\"90\">Loading...</text>\n    <text class=\"percentage\" text-anchor=\"middle\" x=\"100\" y=\"130\">{{progress}}%</text>\n</svg>"
  },
  {
    "path": "src/app/theme/components/toastrLibConfig.js",
    "content": "/**\n * @author v.lugovksy\n * created on 15.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n      .config(toastrLibConfig);\n\n  /** @ngInject */\n  function toastrLibConfig(toastrConfig) {\n    angular.extend(toastrConfig, {\n      closeButton: true,\n      closeHtml: '<button>&times;</button>',\n      timeOut: 5000,\n      autoDismiss: false,\n      containerId: 'toast-container',\n      maxOpened: 0,\n      newestOnTop: true,\n      positionClass: 'toast-top-right',\n      preventDuplicates: false,\n      preventOpenDuplicates: false,\n      target: 'body'\n    });\n  }\n})();"
  },
  {
    "path": "src/app/theme/components/widgets/widgets.directive.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.components')\n      .directive('widgets', widgets);\n\n  /** @ngInject */\n  function widgets() {\n    return {\n      restrict: 'EA',\n      scope: {\n        ngModel: '='\n      },\n      templateUrl: 'app/theme/components/widgets/widgets.html',\n      replace: true\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/components/widgets/widgets.html",
    "content": "<div class=\"widgets\">\n  <div ng-repeat=\"widgetBlock in ngModel\" ng-class=\"{'row': widgetBlock.widgets.length > 1}\">\n    <div ng-repeat=\"widgetCol in widgetBlock.widgets\" ng-class=\"{'col-md-6': widgetBlock.widgets.length === 2}\" ng-model=\"widgetCol\" class=\"widgets-block\">\n      <div ba-panel ba-panel-title=\"{{::widget.title}}\" ng-repeat=\"widget in widgetCol\" ba-panel-class=\"with-scroll {{widget.panelClass}}\">\n        <div ng-include=\"widget.url\"></div>\n      </div>\n    </div>\n  </div>\n</div>\n"
  },
  {
    "path": "src/app/theme/directives/animatedChange.js",
    "content": "/**\n * Change top \"Daily Downloads\", \"Active Users\" values with animation effect\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .directive('animatedChange', animatedChange);\n\n  /** @ngInject */\n  function animatedChange($timeout) {\n    return {\n      link: function (scope, element) {\n        $timeout(function () {\n          var newValue = element.attr('new-value');\n          var oldvalue = parseInt(element.html());\n\n          function changeValue(val) {\n            $timeout(function () {\n              element.html(val);\n            }, 30);\n          }\n\n          if (newValue > oldvalue) {\n            for (var i = oldvalue; i <= newValue; i++) {\n              changeValue(i);\n            }\n          } else {\n            for (var j = oldvalue; j >= newValue; j--) {\n              changeValue(j);\n            }\n          }\n          $timeout(function () {\n            element.next().find('i').addClass('show-arr');\n          }, 500);\n        }, 3500);\n      }\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/directives/autoExpand.js",
    "content": "/**\n * Auto expand textarea field\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .directive('autoExpand', autoExpand);\n\n  /** @ngInject */\n  function autoExpand() {\n    return {\n      restrict: 'A',\n      link: function ($scope, elem) {\n        elem.bind('keydown', function ($event) {\n          var element = $event.target;\n          $(element).height(0);\n          var height = $(element)[0].scrollHeight;\n          height = (height < 16) ? 16 : height;\n          $(element).height(height);\n        });\n\n        // Expand the textarea as soon as it is added to the DOM\n        setTimeout(function () {\n          var element = elem;\n          $(element).height(0);\n          var height = $(element)[0].scrollHeight;\n          height = (height < 16) ? 16 : height;\n          $(element).height(height);\n        }, 0)\n      }\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/directives/autoFocus.js",
    "content": "(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .directive('autoFocus', autoFocus);\n\n  /** @ngInject */\n  function autoFocus($timeout, $parse) {\n    return {\n      link: function (scope, element, attrs) {\n        var model = $parse(attrs.autoFocus);\n        scope.$watch(model, function (value) {\n          if (value === true) {\n            $timeout(function () {\n              element[0].focus();\n              element[0].select();\n            });\n          }\n        });\n        element.bind('blur', function () {\n          scope.$apply(model.assign(scope, false));\n        });\n      }\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/directives/includeWithScope.js",
    "content": "/**\n * @author v.lugovsky\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .directive('includeWithScope', includeWithScope);\n\n  /** @ngInject */\n  function includeWithScope() {\n    return {\n      restrict: 'AE',\n      templateUrl: function(ele, attrs) {\n        return attrs.includeWithScope;\n      }\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/theme/directives/ionSlider.js",
    "content": "/**\n * @author a.demeshko\n * created on 22.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n    .directive('ionSlider', ionSlider);\n\n  /** @ngInject */\n  function ionSlider($timeout) {\n    return {\n      restrict: 'EA',\n      template: '<div></div>',\n      replace: true,\n      scope: {\n        min: '=',\n        max: '=',\n        type: '@',\n        prefix: '@',\n        maxPostfix: '@',\n        prettify: '=',\n        prettifySeparator: '@',\n        grid: '=',\n        gridMargin: '@',\n        postfix: '@',\n        step: '@',\n        hideMinMax: '@',\n        hideFromTo: '@',\n        from: '=',\n        to: '=',\n        disable: '=',\n        onChange: '=',\n        onFinish: '=',\n        values: '=',\n        timeout: '@'\n      },\n      link: function ($scope, $element) {\n            $element.ionRangeSlider({\n              min: $scope.min,\n              max: $scope.max,\n              type: $scope.type,\n              prefix: $scope.prefix,\n              maxPostfix: $scope.maxPostfix,\n              prettify_enabled: $scope.prettify,\n              prettify_separator: $scope.prettifySeparator,\n              grid: $scope.grid,\n              gridMargin: $scope.gridMargin,\n              postfix: $scope.postfix,\n              step: $scope.step,\n              hideMinMax: $scope.hideMinMax,\n              hideFromTo: $scope.hideFromTo,\n              from: $scope.from,\n              to: $scope.to,\n              disable: $scope.disable,\n              onChange: $scope.onChange,\n              onFinish: $scope.onFinish,\n              values: $scope.values\n            });\n\n            $scope.$watch('min', function (value) {\n              $timeout(function () {\n                $element.data(\"ionRangeSlider\").update({min: value});\n              });\n            }, true);\n            $scope.$watch('max', function (value) {\n              $timeout(function () {\n                $element.data(\"ionRangeSlider\").update({max: value});\n              });\n            });\n            $scope.$watch('from', function (value) {\n              $timeout(function () {\n                $element.data(\"ionRangeSlider\").update({from: value});\n              });\n            });\n            $scope.$watch('to', function (value) {\n              $timeout(function () {\n                $element.data(\"ionRangeSlider\").update({to: value});\n              });\n            });\n            $scope.$watch('disable', function (value) {\n              $timeout(function () {\n                $element.data(\"ionRangeSlider\").update({disable: value});\n              });\n            });\n      }\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/directives/ngFileSelect.js",
    "content": "(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .directive('ngFileSelect', ngFileSelect);\n\n  /** @ngInject */\n  function ngFileSelect() {\n    return {\n      link: function ($scope, el) {\n        el.bind('change', function (e) {\n          $scope.file = (e.srcElement || e.target).files[0];\n          $scope.getFile();\n        })\n      }\n    }\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/directives/scrollPosition.js",
    "content": "(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .directive('scrollPosition', scrollPosition);\n\n  /** @ngInject */\n  function scrollPosition() {\n    return {\n      scope: {\n        scrollPosition: '=',\n        maxHeight: '='\n      },\n      link: function (scope) {\n        $(window).on('scroll', function() {\n          var scrollTop = $(window).scrollTop() > scope.maxHeight;\n          if (scrollTop !== scope.prevScrollTop) {\n            scope.$apply(function() {\n              scope.scrollPosition = scrollTop;\n            });\n          }\n          scope.prevScrollTop = scrollTop;\n        });\n      }\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/directives/trackWidth.js",
    "content": "(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .directive('trackWidth', trackWidth);\n\n  /** @ngInject */\n  function trackWidth() {\n    return {\n      scope: {\n        trackWidth: '=',\n        minWidth: '=',\n      },\n      link: function (scope, element) {\n        scope.trackWidth = $(element).width() < scope.minWidth;\n        scope.prevTrackWidth = scope.trackWidth;\n\n        $(window).resize(function() {\n          var trackWidth = $(element).width() < scope.minWidth;\n          if (trackWidth !== scope.prevTrackWidth) {\n            scope.$apply(function() {\n              scope.trackWidth = trackWidth;\n            });\n          }\n          scope.prevTrackWidth = trackWidth;\n        });\n      }\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/directives/zoomIn.js",
    "content": "/**\n * Animated load block\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .directive('zoomIn', zoomIn);\n\n  /** @ngInject */\n  function zoomIn($timeout, $rootScope) {\n    return {\n      restrict: 'A',\n      link: function ($scope, elem) {\n        var delay = 1000;\n\n        if ($rootScope.$pageFinishedLoading) {\n          delay = 100;\n        }\n\n        $timeout(function () {\n          elem.removeClass('full-invisible');\n          elem.addClass('animated zoomIn');\n        }, delay);\n      }\n    };\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/filters/image/appImage.js",
    "content": "/**\n * @author v.lugovsky\n * created on 17.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .filter('appImage', appImage);\n\n  /** @ngInject */\n  function appImage(layoutPaths) {\n    return function(input) {\n      return layoutPaths.images.root + input;\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/theme/filters/image/kameleonImg.js",
    "content": "/**\n * @author v.lugovsky\n * created on 17.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .filter('kameleonImg', kameleonImg);\n\n  /** @ngInject */\n  function kameleonImg(layoutPaths) {\n    return function(input) {\n      return layoutPaths.images.root + 'theme/icon/kameleon/' + input + '.svg';\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/theme/filters/image/profilePicture.js",
    "content": "/**\n * @author v.lugovsky\n * created on 17.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .filter('profilePicture', profilePicture);\n\n  /** @ngInject */\n  function profilePicture(layoutPaths) {\n    return function(input, ext) {\n      ext = ext || 'png';\n      return layoutPaths.images.profile + input + '.' + ext;\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/theme/filters/text/removeHtml.js",
    "content": "/**\n * @author a.demeshko\n * created on 23.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n    .filter('plainText', plainText);\n\n  /** @ngInject */\n  function plainText() {\n    return function(text) {\n      return  text ? String(text).replace(/<[^>]+>/gm, '') : '';\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/theme/inputs/baSwitcher/baSwitcher.html",
    "content": "<label class=\"switcher-container\">\n  <input type=\"checkbox\" ng-model=\"switcherValue\">\n  <div class=\"switcher\" ng-class=\"::switcherStyle\">\n    <div class=\"handle-container\">\n      <span class=\"handle handle-on\">ON</span>\n      <span class=\"handle\"></span>\n      <span class=\"handle handle-off\">OFF</span>\n    </div>\n  </div>\n</label>"
  },
  {
    "path": "src/app/theme/inputs/baSwitcher/baSwitcher.js",
    "content": "/**\n * @author v.lugovsky\n * created on 10.12.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.inputs')\n      .directive('baSwitcher', baSwitcher);\n\n  /** @ngInject */\n  function baSwitcher() {\n    return {\n      templateUrl: 'app/theme/inputs/baSwitcher/baSwitcher.html',\n      scope: {\n        switcherStyle: '@',\n        switcherValue: '='\n      }\n    };\n  }\n\n})();\n"
  },
  {
    "path": "src/app/theme/inputs/inputs.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 10.12.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme.inputs', []);\n\n})();\n"
  },
  {
    "path": "src/app/theme/services/baProgressModal.js",
    "content": "/**\n * @author n.poltoratsky\n * created on 27.06.2016\n */\n(function () {\n    'use strict';\n\n    angular.module('BlurAdmin.theme')\n        .factory('baProgressModal', baProgressModal);\n\n    /** @ngInject */\n    function baProgressModal($uibModal) {\n        var methods = {};\n        var progress = 0;\n        var max = 100;\n        var opened = false;\n\n        return {\n            setProgress: function (value) {\n                if (value > max) {\n                    throw Error('Progress can\\'t be greater than max');\n                }\n                progress = value;\n            },\n            getProgress: function () {\n                return progress;\n            },\n            open: function() {\n                if (!opened) {\n                    methods = $uibModal.open({\n                        animation: true,\n                        templateUrl: 'app/pages/ui/modals/progressModal/progressModal.html',\n                        size: 'sm',\n                        keyboard: false,\n                        backdrop: 'static'\n                    });\n                    opened = true;\n                } else {\n                    throw Error('Progress modal opened now');\n                }\n\n            },\n            close: function() {\n                if (opened) {\n                    methods.close();\n                    opened = false;\n                } else {\n                    throw Error('Progress modal is not active');\n                }\n\n            }\n        };\n    }\n\n})();"
  },
  {
    "path": "src/app/theme/services/baUtil.js",
    "content": "/**\n * @author v.lugovsky\n * created on 03.05.2016\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .service('baUtil', baUtil);\n\n  /** @ngInject */\n  function baUtil() {\n\n    this.isDescendant = function(parent, child) {\n      var node = child.parentNode;\n      while (node != null) {\n        if (node == parent) {\n          return true;\n        }\n        node = node.parentNode;\n      }\n      return false;\n    };\n\n    this.hexToRGB = function(hex, alpha) {\n      var r = parseInt( hex.slice(1,3), 16 );\n      var g = parseInt( hex.slice(3,5), 16 );\n      var b = parseInt( hex.slice(5,7), 16 );\n      return 'rgba(' + r + ', ' + g + ', ' + b + ', ' + alpha + ')';\n    };\n\n    this.hasAttr = function (elem, attrName) {\n      var attr = $(elem).attr(attrName);\n      return (typeof attr !== typeof undefined && attr !== false);\n    }\n  }\n})();\n"
  },
  {
    "path": "src/app/theme/services/fileReader.js",
    "content": "/**\n * @author v.lugovksy\n * created on 16.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n      .service('fileReader', fileReader);\n\n  /** @ngInject */\n  function fileReader($q) {\n    var onLoad = function(reader, deferred, scope) {\n      return function () {\n        scope.$apply(function () {\n          deferred.resolve(reader.result);\n        });\n      };\n    };\n\n    var onError = function (reader, deferred, scope) {\n      return function () {\n        scope.$apply(function () {\n          deferred.reject(reader.result);\n        });\n      };\n    };\n\n    var onProgress = function(reader, scope) {\n      return function (event) {\n        scope.$broadcast('fileProgress',\n            {\n              total: event.total,\n              loaded: event.loaded\n            });\n      };\n    };\n\n    var getReader = function(deferred, scope) {\n      var reader = new FileReader();\n      reader.onload = onLoad(reader, deferred, scope);\n      reader.onerror = onError(reader, deferred, scope);\n      reader.onprogress = onProgress(reader, scope);\n      return reader;\n    };\n\n    var readAsDataURL = function (file, scope) {\n      var deferred = $q.defer();\n\n      var reader = getReader(deferred, scope);\n      reader.readAsDataURL(file);\n\n      return deferred.promise;\n    };\n\n    return {\n      readAsDataUrl: readAsDataURL\n    };\n  }\n})();"
  },
  {
    "path": "src/app/theme/services/preloader.js",
    "content": "/**\n * @author a.demeshko\n * created on 3/1/16\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n    .service('preloader', preloader);\n\n  /** @ngInject */\n  function preloader($q) {\n    return {\n      loadImg: function (src) {\n        var d = $q.defer();\n        var img = new Image();\n        img.src = src;\n        img.onload = function(){\n          d.resolve();\n        };\n        return d.promise;\n      },\n      loadAmCharts : function(){\n        var d = $q.defer();\n        AmCharts.ready(function(){\n          d.resolve();\n        });\n        return d.promise;\n      }\n    }\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/services/stopableInterval.js",
    "content": "/**\n * @author a.demeshko\n * created on 12/21/15\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n    .service('stopableInterval', stopableInterval);\n\n  /** @ngInject */\n  function stopableInterval($window) {\n    return {\n      start: function (interval, calback, time) {\n        function startInterval() {\n          return interval(calback, time);\n        }\n\n        var i = startInterval();\n\n        angular.element($window).bind('focus', function () {\n          if (i) interval.cancel(i);\n          i = startInterval();\n        });\n\n        angular.element($window).bind('blur', function () {\n          if (i) interval.cancel(i);\n        });\n      }\n    }\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/theme.config.js",
    "content": "/**\n * Created by k.danovsky on 13.05.2016.\n */\n\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n    .config(config);\n\n  /** @ngInject */\n  function config(baConfigProvider, colorHelper, $provide) {\n    $provide.decorator('$uiViewScroll', uiViewScrollDecorator);\n    //baConfigProvider.changeTheme({blur: true});\n    //\n    //baConfigProvider.changeColors({\n    //  default: 'rgba(#000000, 0.2)',\n    //  defaultText: '#ffffff',\n    //  dashboard: {\n    //    white: '#ffffff',\n    //  },\n    //});\n  }\n\n  /** @ngInject */\n  function uiViewScrollDecorator($delegate, $anchorScroll, baUtil) {\n    return function (uiViewElement) {\n      if (baUtil.hasAttr(uiViewElement, \"autoscroll-body-top\")) {\n        $anchorScroll();\n      } else {\n        $delegate(uiViewElement);\n      }\n    };\n  }\n})();\n"
  },
  {
    "path": "src/app/theme/theme.configProvider.js",
    "content": "/**\n * Created by k.danovsky on 13.05.2016.\n */\n\n(function () {\n  'use strict';\n\n  var basic = {\n    default: '#ffffff',\n    defaultText: '#666666',\n    border: '#dddddd',\n    borderDark: '#aaaaaa',\n  };\n\n  // main functional color scheme\n  var colorScheme = {\n    primary: '#209e91',\n    info: '#2dacd1',\n    success: '#90b900',\n    warning: '#dfb81c',\n    danger: '#e85656',\n  };\n\n  // dashboard colors for charts\n  var dashboardColors = {\n    blueStone: '#005562',\n    surfieGreen: '#0e8174',\n    silverTree: '#6eba8c',\n    gossip: '#b9f2a1',\n    white: '#10c4b5',\n  };\n\n  angular.module('BlurAdmin.theme')\n    .provider('baConfig', configProvider);\n\n  /** @ngInject */\n  function configProvider(colorHelper) {\n    var conf = {\n      theme: {\n        blur: false,\n      },\n      colors: {\n        default: basic.default,\n        defaultText: basic.defaultText,\n        border: basic.border,\n        borderDark: basic.borderDark,\n\n        primary: colorScheme.primary,\n        info: colorScheme.info,\n        success: colorScheme.success,\n        warning: colorScheme.warning,\n        danger: colorScheme.danger,\n\n        primaryLight: colorHelper.tint(colorScheme.primary, 30),\n        infoLight: colorHelper.tint(colorScheme.info, 30),\n        successLight: colorHelper.tint(colorScheme.success, 30),\n        warningLight: colorHelper.tint(colorScheme.warning, 30),\n        dangerLight: colorHelper.tint(colorScheme.danger, 30),\n\n        primaryDark: colorHelper.shade(colorScheme.primary, 15),\n        infoDark: colorHelper.shade(colorScheme.info, 15),\n        successDark: colorHelper.shade(colorScheme.success, 15),\n        warningDark: colorHelper.shade(colorScheme.warning, 15),\n        dangerDark: colorHelper.shade(colorScheme.danger, 15),\n\n        dashboard: {\n          blueStone: dashboardColors.blueStone,\n          surfieGreen: dashboardColors.surfieGreen,\n          silverTree: dashboardColors.silverTree,\n          gossip: dashboardColors.gossip,\n          white: dashboardColors.white,\n        },\n      }\n    };\n\n    conf.changeTheme = function(theme) {\n      angular.merge(conf.theme, theme)\n    };\n\n    conf.changeColors = function(colors) {\n      angular.merge(conf.colors, colors)\n    };\n\n    conf.$get = function () {\n      delete conf.$get;\n      return conf;\n    };\n    return conf;\n  }\n})();\n"
  },
  {
    "path": "src/app/theme/theme.constants.js",
    "content": "/**\n * @author v.lugovsky\n * created on 15.12.2015\n */\n(function () {\n  'use strict';\n\n  var IMAGES_ROOT = 'assets/img/';\n\n  angular.module('BlurAdmin.theme')\n    .constant('layoutSizes', {\n      resWidthCollapseSidebar: 1200,\n      resWidthHideSidebar: 500\n    })\n    .constant('layoutPaths', {\n      images: {\n        root: IMAGES_ROOT,\n        profile: IMAGES_ROOT + 'app/profile/',\n        amMap: 'assets/img/theme/vendor/ammap//dist/ammap/images/',\n        amChart: 'assets/img/theme/vendor/amcharts/dist/amcharts/images/'\n      }\n    })\n    .constant('colorHelper', {\n      tint: function(color, weight) {\n        return mix('#ffffff', color, weight);\n      },\n      shade: function(color, weight) {\n        return mix('#000000', color, weight);\n      },\n    });\n\n  function shade(color, weight) {\n    return mix('#000000', color, weight);\n  }\n\n  function tint(color, weight) {\n    return mix('#ffffff', color, weight);\n  }\n\n  //SASS mix function\n  function mix(color1, color2, weight) {\n    // convert a decimal value to hex\n    function d2h(d) {\n      return d.toString(16);\n    }\n    // convert a hex value to decimal\n    function h2d(h) {\n      return parseInt(h, 16);\n    }\n\n    var result = \"#\";\n    for(var i = 1; i < 7; i += 2) {\n      var color1Part = h2d(color1.substr(i, 2));\n      var color2Part = h2d(color2.substr(i, 2));\n      var resultPart = d2h(Math.floor(color2Part + (color1Part - color2Part) * (weight / 100.0)));\n      result += ('0' + resultPart).slice(-2);\n    }\n    return result;\n  }\n})();\n"
  },
  {
    "path": "src/app/theme/theme.module.js",
    "content": "/**\n * @author v.lugovsky\n * created on 15.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme', [\n      'toastr',\n      'chart.js',\n      'angular-chartist',\n      'angular.morris-chart',\n      'textAngular',\n      'BlurAdmin.theme.components',\n      'BlurAdmin.theme.inputs'\n  ]);\n\n})();\n"
  },
  {
    "path": "src/app/theme/theme.run.js",
    "content": "/**\n * @author v.lugovksy\n * created on 15.12.2015\n */\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n    .run(themeRun);\n\n  /** @ngInject */\n  function themeRun($timeout, $rootScope, layoutPaths, preloader, $q, baSidebarService, themeLayoutSettings) {\n    var whatToWait = [\n      preloader.loadAmCharts(),\n      $timeout(3000)\n    ];\n\n    var theme = themeLayoutSettings;\n    if (theme.blur) {\n      if (theme.mobile) {\n        whatToWait.unshift(preloader.loadImg(layoutPaths.images.root + 'blur-bg-mobile.jpg'));\n      } else {\n        whatToWait.unshift(preloader.loadImg(layoutPaths.images.root + 'blur-bg.jpg'));\n        whatToWait.unshift(preloader.loadImg(layoutPaths.images.root + 'blur-bg-blurred.jpg'));\n      }\n    }\n\n    $q.all(whatToWait).then(function () {\n      $rootScope.$pageFinishedLoading = true;\n    });\n\n    $timeout(function () {\n      if (!$rootScope.$pageFinishedLoading) {\n        $rootScope.$pageFinishedLoading = true;\n      }\n    }, 7000);\n\n    $rootScope.$baSidebarService = baSidebarService;\n  }\n\n})();"
  },
  {
    "path": "src/app/theme/theme.service.js",
    "content": "/**\n * Created by k.danovsky on 12.05.2016.\n */\n\n(function () {\n  'use strict';\n\n  angular.module('BlurAdmin.theme')\n    .service('themeLayoutSettings', themeLayoutSettings);\n\n  /** @ngInject */\n  function themeLayoutSettings(baConfig) {\n    var isMobile = (/android|webos|iphone|ipad|ipod|blackberry|windows phone/).test(navigator.userAgent.toLowerCase());\n    var mobileClass = isMobile ? 'mobile' : '';\n    var blurClass = baConfig.theme.blur ? 'blur-theme' : '';\n    angular.element(document.body).addClass(mobileClass).addClass(blurClass);\n\n    return {\n      blur: baConfig.theme.blur,\n      mobile: isMobile,\n    }\n  }\n\n})();"
  },
  {
    "path": "src/auth.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n  <meta charset=\"utf-8\">\n  <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n  <title>Blur Admin</title>\n\n  <link href='https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700,700italic,900italic,900&subset=latin,greek,greek-ext,vietnamese,cyrillic-ext,latin-ext,cyrillic' rel='stylesheet' type='text/css'>\n\n  <link rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"assets/img/favicon-16x16.png\">\n  <link rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"assets/img/favicon-32x32.png\">\n  <link rel=\"icon\" type=\"image/png\" sizes=\"96x96\" href=\"assets/img/favicon-96x96.png\">\n\n  <!-- build:css({.tmp/serve,src}) styles/vendor.css -->\n  <!-- bower:css -->\n  <!-- run `gulp inject` to automatically populate bower styles dependencies -->\n  <!-- endbower -->\n  <!-- endbuild -->\n\n  <!-- build:css({.tmp/serve,src}) styles/auth.css -->\n  <!-- inject:css -->\n  <!-- css files will be automatically insert here -->\n  <!-- endinject -->\n  <!-- endbuild -->\n</head>\n<body>\n<main class=\"auth-main\">\n  <div class=\"auth-block\">\n    <h1>Sign in to Blur Admin</h1>\n    <a href=\"reg.html\" class=\"auth-link\">New to Blur Admin? Sign up!</a>\n\n    <form class=\"form-horizontal\">\n      <div class=\"form-group\">\n        <label for=\"inputEmail3\" class=\"col-sm-2 control-label\">Email</label>\n\n        <div class=\"col-sm-10\">\n          <input type=\"email\" class=\"form-control\" id=\"inputEmail3\" placeholder=\"Email\">\n        </div>\n      </div>\n      <div class=\"form-group\">\n        <label for=\"inputPassword3\" class=\"col-sm-2 control-label\">Password</label>\n\n        <div class=\"col-sm-10\">\n          <input type=\"password\" class=\"form-control\" id=\"inputPassword3\" placeholder=\"Password\">\n        </div>\n      </div>\n      <div class=\"form-group\">\n        <div class=\"col-sm-offset-2 col-sm-10\">\n          <button type=\"submit\" class=\"btn btn-default btn-auth\">Sign in</button>\n          <a href class=\"forgot-pass\">Forgot password?</a>\n        </div>\n      </div>\n    </form>\n\n    <div class=\"auth-sep\"><span><span>or Sign in with one click</span></span></div>\n\n    <div class=\"al-share-auth\">\n      <ul class=\"al-share clearfix\">\n        <li><i class=\"socicon socicon-facebook\" title=\"Share on Facebook\"></i></li>\n        <li><i class=\"socicon socicon-twitter\" title=\"Share on Twitter\"></i></li>\n        <li><i class=\"socicon socicon-google\" title=\"Share on Google Plus\"></i></li>\n      </ul>\n    </div>\n  </div>\n</main>\n</body>\n</html>"
  },
  {
    "path": "src/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\" ng-app=\"BlurAdmin\">\n<head>\n  <!-- Google Tag Manager -->\n  <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n      new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n    j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n    'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n  })(window,document,'script','dataLayer','GTM-KT9L237');</script>\n  <!-- End Google Tag Manager -->\n  <meta charset=\"utf-8\">\n  <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n  <title>Blur Admin</title>\n\n  <link href='https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700,700italic,900italic,900&subset=latin,greek,greek-ext,vietnamese,cyrillic-ext,latin-ext,cyrillic' rel='stylesheet' type='text/css'>\n\n  <link rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"assets/img/favicon-16x16.png\">\n  <link rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"assets/img/favicon-32x32.png\">\n  <link rel=\"icon\" type=\"image/png\" sizes=\"96x96\" href=\"assets/img/favicon-96x96.png\">\n\n  <!-- build:css({.tmp/serve,src}) styles/vendor.css -->\n  <!-- bower:css -->\n  <!-- run `gulp inject` to automatically populate bower styles dependencies -->\n  <!-- endbower -->\n  <!-- endbuild -->\n\n  <!-- build:css({.tmp/serve,src}) styles/app.css -->\n  <!-- inject:css -->\n  <!-- css files will be automatically insert here -->\n  <!-- endinject -->\n  <!-- endbuild -->\n</head>\n<body>\n<!-- Google Tag Manager (noscript) -->\n<noscript><iframe src=\"https://www.googletagmanager.com/ns.html?id=GTM-KT9L237\"\n                  height=\"0\" width=\"0\" style=\"display:none;visibility:hidden\"></iframe></noscript>\n<!-- End Google Tag Manager (noscript) -->\n<div class=\"body-bg\"></div>\n<main ng-if=\"$pageFinishedLoading\" ng-class=\"{ 'menu-collapsed': $baSidebarService.isMenuCollapsed() }\">\n\n  <ba-sidebar></ba-sidebar>\n  <page-top></page-top>\n\n  <div class=\"al-main\">\n    <div class=\"al-content\">\n      <content-top></content-top>\n      <div ui-view autoscroll=\"true\" autoscroll-body-top></div>\n    </div>\n  </div>\n\n  <footer class=\"al-footer clearfix\">\n    <div class=\"al-footer-right\">Created with <i class=\"ion-heart\"></i></div>\n    <div class=\"al-footer-main clearfix\">\n      <div class=\"al-copy\">Blur Admin 2016</div>\n      <ul class=\"al-share clearfix\">\n        <li><i class=\"socicon socicon-facebook\"></i></li>\n        <li><i class=\"socicon socicon-twitter\"></i></li>\n        <li><i class=\"socicon socicon-google\"></i></li>\n        <li><i class=\"socicon socicon-github\"></i></li>\n      </ul>\n    </div>\n  </footer>\n\n  <back-top></back-top>\n</main>\n\n<div id=\"preloader\" ng-show=\"!$pageFinishedLoading\">\n  <div></div>\n</div>\n\n<!-- build:js(src) scripts/vendor.js -->\n<!-- bower:js -->\n<!-- run `gulp inject` to automatically populate bower script dependencies -->\n<!-- endbower -->\n<!-- endbuild -->\n<script type=\"text/javascript\" src=\"http://maps.google.com/maps/api/js?sensor=false\"></script>\n\n<!-- build:js({.tmp/serve,.tmp/partials,src}) scripts/app.js -->\n<!-- inject:js -->\n<!-- js files will be automatically insert here -->\n<!-- endinject -->\n\n<!-- inject:partials -->\n<!-- angular templates will be automatically converted in js and inserted here -->\n<!-- endinject -->\n<!-- endbuild -->\n\n</body>\n</html>"
  },
  {
    "path": "src/reg.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n  <meta charset=\"utf-8\">\n  <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n  <title>Blur Admin</title>\n\n  <link href='https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700,700italic,900italic,900&subset=latin,greek,greek-ext,vietnamese,cyrillic-ext,latin-ext,cyrillic' rel='stylesheet' type='text/css'>\n\n  <link rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"assets/img/favicon-16x16.png\">\n  <link rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"assets/img/favicon-32x32.png\">\n  <link rel=\"icon\" type=\"image/png\" sizes=\"96x96\" href=\"assets/img/favicon-96x96.png\">\n\n  <!-- build:css({.tmp/serve,src}) styles/vendor.css -->\n  <!-- bower:css -->\n  <!-- run `gulp inject` to automatically populate bower styles dependencies -->\n  <!-- endbower -->\n  <!-- endbuild -->\n\n  <!-- build:css({.tmp/serve,src}) styles/auth.css -->\n  <!-- inject:css -->\n  <!-- css files will be automatically insert here -->\n  <!-- endinject -->\n  <!-- endbuild -->\n</head>\n<body>\n<main class=\"auth-main\">\n  <div class=\"auth-block\">\n    <h1>Sign up to Blur Admin</h1>\n    <a href=\"auth.html\" class=\"auth-link\">Already have a Blur Admin account? Sign in!</a>\n\n    <form class=\"form-horizontal\">\n      <div class=\"form-group\">\n        <label for=\"inputName3\" class=\"col-sm-2 control-label\">Name</label>\n\n        <div class=\"col-sm-10\">\n          <input type=\"text\" class=\"form-control\" id=\"inputName3\" placeholder=\"Full Name\">\n        </div>\n      </div>\n      <div class=\"form-group\">\n        <label for=\"inputEmail3\" class=\"col-sm-2 control-label\">Email</label>\n\n        <div class=\"col-sm-10\">\n          <input type=\"email\" class=\"form-control\" id=\"inputEmail3\" placeholder=\"Email\">\n        </div>\n      </div>\n      <div class=\"form-group\">\n        <label for=\"inputPassword3\" class=\"col-sm-2 control-label\">Password</label>\n\n        <div class=\"col-sm-10\">\n          <input type=\"password\" class=\"form-control\" id=\"inputPassword3\" placeholder=\"Password\">\n        </div>\n      </div>\n      <div class=\"form-group\">\n        <div class=\"col-sm-offset-2 col-sm-10\">\n          <button type=\"submit\" class=\"btn btn-default btn-auth\">Sign up</button>\n        </div>\n      </div>\n    </form>\n\n    <div class=\"auth-sep\"><span><span>or Sign up with one click</span></span></div>\n\n    <div class=\"al-share-auth\">\n      <ul class=\"al-share clearfix\">\n        <li><i class=\"socicon socicon-facebook\" title=\"Share on Facebook\"></i></li>\n        <li><i class=\"socicon socicon-twitter\" title=\"Share on Twitter\"></i></li>\n        <li><i class=\"socicon socicon-google\" title=\"Share on Google Plus\"></i></li>\n      </ul>\n    </div>\n  </div>\n</main>\n</body>\n</html>"
  },
  {
    "path": "src/sass/404.scss",
    "content": "@import \"common.scss\";\n\nhtml {\n  position: relative;\n  min-width: 320px;\n}\n\nhtml, body {\n  min-height: 100%;\n  height: 100%;\n}\n\nbody {\n  font: 12px/16px $font-family;\n  color: $default-text;\n  @include main-background();\n  display: flex;\n  align-items: center;\n}\n\n.page-not-found-modal {\n  width: 638px;\n  margin: 0 auto;\n  @include bg-translucent-dark(0.5);\n  border-radius: 5px;\n  font-weight: $font-light;\n  color: #ffffff;\n  padding: 32px;\n  text-align: center;\n\n  h1 {\n    font-weight: $font-light;\n    margin-bottom: 32px;\n  }\n  p {\n    font-size: 16px;\n    line-height: 24px;\n  }\n  a {\n    text-decoration: none;\n    outline: none;\n    transition: all 0.2s ease;\n    color: $primary;\n    display: inline-block;\n    &:hover {\n      color: $primary-dark;\n    }\n  }\n}"
  },
  {
    "path": "src/sass/README.md",
    "content": ""
  },
  {
    "path": "src/sass/app/_alerts.scss",
    "content": ".alert{\n  color: $label-text;\n  font-size: 13px;\n  font-weight: $font-light;\n  strong{\n    font-weight: $font-normal;\n  }\n  .close{\n    margin-top: -3px;\n  }\n  .alert-link{\n    font-weight: $font-normal;\n  }\n  .control-alert{\n    padding-top:10px ;\n    button{\n      margin-right: 10px;\n    }\n  }\n}\n\n.closeable{\n  button{\n    color: $input-border;\n  }\n}\n\n.bg-success {\n  background-color: rgba($success,0.85);\n  color: $label-text;\n  a{\n    color: $danger-dark;\n    &:hover{\n      color: $danger;\n    }\n  }\n}\n.bg-info {\n  background-color: rgba($info,0.85);\n  color: $label-text;\n  a{\n    color: $warning-light;\n    &:hover{\n      color: $warning;\n    }\n  }\n}\n.bg-warning {\n  background-color: rgba($warning,0.85);\n  color: $label-text;\n  a{\n    color: $danger-dark;\n    &:hover{\n      color: $danger;\n    }\n  }\n}\n.bg-danger {\n  background-color: rgba($danger,0.85);\n  color: $label-text;\n  a{\n    color: $warning-light;\n    &:hover{\n      color: $warning;\n    }\n  }\n}"
  },
  {
    "path": "src/sass/app/_buttonsPage.scss",
    "content": ".basic-btns {\n  padding-top: 8px;\n  margin-bottom: -8px;\n  h5 {\n    line-height: 35px;\n    font-size: 12px;\n    &.row-sm {\n      line-height: 30px;\n    }\n    &.row-xs {\n      line-height: 22px;\n    }\n  }\n  & > .row {\n    padding-bottom: 4px;\n  }\n}\n\n.btns-row {\n  & > div {\n    margin-bottom: 12px;\n  }\n}\n\n.btns-same-width-sm {\n  .btn {\n    width: 48px;\n  }\n}\n\n.btns-same-width-md {\n  .btn {\n    width: 79px;\n  }\n}\n\n.btns-same-width-lg {\n  .btn {\n    width: 112px;\n  }\n}\n\nul.btn-list {\n  margin: 0 0 0 -18px;\n  padding: 0;\n  padding-top: 6px;\n  clear: both;\n  li {\n    margin: 0px 0 12px 18px;\n    padding: 0;\n    list-style: none;\n    float: left;\n  }\n}\n\n.btn-group-wrapper {\n  margin-bottom: 12px;\n}\n\n$btn-icon-size: 34px;\n.btn-icon {\n  width: $btn-icon-size;\n  height: $btn-icon-size;\n  line-height: $btn-icon-size;\n  padding: 0;\n  text-align: center;\n}\n\n.btn-group-example {\n  float: left;\n  margin-right: 30px;\n  margin-bottom: 12px;\n}\n\n.btn-toolbar-example {\n  float: left;\n}\n\n.progress-buttons-container {\n  text-align: center;\n  font-size: 16px;\n  span.button-title {\n    display: inline-block;\n    width: 100%;\n    line-height: 1;\n    font-size: 14px;\n    margin-bottom: 10px;\n    margin-top: 10px;\n  }\n  .row + .row {\n    margin-top: 30px;\n  }\n}\n\n.button-panel{\n  height: 315px;\n  .btn{\n    width: 150px;\n  }\n}\n\n.large-buttons-panel{\n  height: 202px;\n}\n\n.button-panel.df-size-button-panel{\n  .btn-xs{\n    width: 60px;\n  }\n  .btn-sm{\n    width: 90px;\n  }\n  .btn-mm{\n    width: 120px;\n  }\n  .btn-md{\n    width: 150px;\n  }\n  .btn-xm{\n    width: 175px;\n  }\n  .btn-lg{\n    width: 200px;\n  }\n}\n\n.button-wrapper{\n  text-align: center;\n  margin: 5px 0;\n}\n\n"
  },
  {
    "path": "src/sass/app/_chartsPage.scss",
    "content": ".admin-chart {\n  width: 100%;\n  height: 500px;\n  font-size: 11px;\n}\n\n.amcharts-export-menu-top-right {\n  top: 10px;\n  right: 0;\n}\n\n#funnelChart, #lineChart {\n}\n\n#pieChart {\n  max-width: 1120px;\n}\n\n.amcharts-pie-slice {\n  transform: scale(1);\n  transform-origin: 50% 50%;\n  transition-duration: 0.3s;\n  transition: all .3s ease-out;\n  cursor: pointer;\n  box-shadow: 0 0 30px 0 #000;\n}\n\n.amcharts-pie-slice:hover {\n  transform: scale(1.1);\n  filter: url(#shadow);\n}\n\n.amChartsButtonSelected {\n  background-color: #CC0000;\n  border: 1px solid #CC0000;\n  color: $default-text;\n  -moz-border-radius: 5px;\n  border-radius: 5px;\n  margin: 1px;\n}\n\n.amChartsButton {\n  background-color: #EEEEEE;\n  border: 1px solid #CCCCCC;\n  color: #000000;\n  border-radius: 5px;\n  margin: 1px;\n}\n\n.ct-area {\n  fill-opacity: .5;\n}\n\n.ct-label{\n  color: $default-text;\n  opacity: 0.9;\n  fill: $default-text;\n}\n\n.ct-chart .ct-label{\n  font-size: 1em;\n}\n\n.ct-chart svg{\n  width: 100%;\n  display: block;\n}\n\n.ct-series-a {\n  .ct-bar,  .ct-line, .ct-point, .ct-slice-donut, .ct-slice-pie {\n    stroke: $primary;\n  }\n  .ct-slice-pie, .ct-area{\n    fill: $primary;\n  }\n}\n\n.ct-series-b {\n  .ct-bar,  .ct-line, .ct-point, .ct-slice-donut, .ct-slice-pie {\n    stroke: $success;\n  }\n  .ct-slice-pie, .ct-area{\n    fill: $success;\n  }\n}\n\n.ct-series-c {\n  .ct-bar,  .ct-line, .ct-point, .ct-slice-donut, .ct-slice-pie {\n    stroke: $danger;\n  }\n  .ct-slice-pie, .ct-area{\n    fill: $danger;\n  }\n}\n\n.ct-series-d {\n  .ct-bar,  .ct-line, .ct-point, .ct-slice-donut, .ct-slice-pie {\n    stroke: $warning;\n  }\n  .ct-slice-pie, .ct-area{\n    fill: $warning;\n  }\n\n}\n\n.ct-series-e {\n  .ct-bar,  .ct-line, .ct-point, .ct-slice-donut, .ct-slice-pie {\n    stroke: $info;\n  }\n  .ct-slice-pie, .ct-area{\n    fill: $info;\n  }\n}\n\n@media screen and (min-width: 992px) {\n  .row.morris-up {\n    > div {\n      margin-top: -434px;\n    }\n  }\n}\n\n.area-morris-header{\n  margin-top: 20px;\n}\n\n.stacked-bar .ct-bar{\n  stroke-width: 30px;\n}\n\n.amChartsCompareList {\n  border: 1px solid #CCCCCC;\n}\n\n.pie-chart-panel {\n  padding: 0;\n}\n\n.chart-panel{\n  height: 495px;\n}\n\n#filterChart {\n  width\t\t: 96%;\n  font-size\t: 11px;\n  margin-left: auto;\n  margin-right: auto;\n  margin-top:15px;\n}\n\n.amcharts-graph-g1 .amcharts-graph-fill {\n  filter: url(#blur);\n}\n\n.amcharts-graph-g2 .amcharts-graph-fill {\n  filter: url(#blur);\n}\n\n.amcharts-cursor-fill {\n  filter: url(#shadow);\n}\n\n.chartist h5 {\n  font-weight: $font-normal;\n}\n\n.chartjs-canvas-holder-first-row {\n  height: 300px;\n}\n\n.chartjs-canvas-holder-second-row {\n  height: 350px;\n}\n\n.chartjs-canvas-holder-third-row {\n  height: 250px;\n}"
  },
  {
    "path": "src/sass/app/_dashboard.scss",
    "content": "@media screen and (min-width: 1620px) {\n  .row.shift-up {\n    > div {\n      margin-top: -573px;\n    }\n  }\n}\n\n@media screen and (max-width: 1620px) {\n .panel.feed-panel.large-panel {\n   height: 824px;\n }\n}\n\n.user-stats-panel {\n  .panel-title {\n    padding: 0 0 15px;\n  }\n}\n\n.blurCalendar{\n  height: 475px;\n}"
  },
  {
    "path": "src/sass/app/_email.scss",
    "content": ".letter-layout {\n  margin-top: -15px;\n  margin-right: -22px;\n}\n\n.mail-panel {\n  &.panel > .panel-body {\n    padding-left: 0;\n  }\n}\n\n.mail-navigation-container {\n  float: left;\n  position: relative;\n  height: 550px;\n  transition: width 0.5s;\n  color: $default-text;\n  width: 200px;\n  overflow: hidden;\n  padding: 0;\n  .mail-navigation {\n    cursor: pointer;\n    font-weight: $font-light;\n    font-size: 16px;\n    text-align: left;\n    padding: 10px 10px 10px 30px;\n    margin-left: 0;\n    transition: 0.8s padding ease;\n    .new-mails {\n      position: absolute;\n      left: 150px;\n      padding: 1px 6px;\n      border: 1px solid;\n      background-color: transparent;\n      margin-top: -2px;\n      font-size: 12px;\n      margin-right: 5px;\n      border-radius: 10px;\n      transition: 0.8s left ease;\n    }\n    &.active {\n      background: rgba(black, 0.2);\n      color: white;\n      transition: background-color .5s ease;\n      &:hover {\n        background-color: rgba(black, 0.3);\n      }\n      .new-mails {\n        background-color: transparent;\n      }\n    }\n    &:hover {\n      background-color: rgba(black, 0.1);\n    }\n  }\n  .btn.compose-button {\n    width: 140px;\n    font-weight: $font-light;\n    border: $border 2px solid;\n    background-color: transparent;\n    margin: 15px 0 ;\n  }\n}\n\n.labels {\n  margin-top: 14px;\n}\n\n.labels-container {\n  margin-top: 16px;\n  text-align: center;\n  padding-right: 28px;\n  padding-left: 20px;\n  .label-item {\n    display: inline-block;\n  }\n}\n\n.labels-title {\n  padding-left: 10px;\n  border-bottom: 1px solid rgba(0, 0, 0, 0.12);\n  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.12);\n  .label-header {\n    line-height: 24px;\n  }\n}\n\n.label-item {\n  margin: 5px;\n}\n\n.add-label-container {\n  margin-top: 10px;\n  text-align: center;\n  font-size: 16px;\n  font-weight: $font-light;\n  .label-input-stub {\n    font-size: 14px;\n    margin-left: 5px;\n  }\n  i {\n    cursor: pointer;\n  }\n}\n\n.margin-left {\n  margin-left: 10px;\n}\n\n.mail-messages-control {\n  padding: 10px;\n\n  ul.dropdown-menu {\n    margin-top: 5px;\n  }\n\n  .btn {\n    background-color: transparent;\n    width: auto;\n    &:focus, &:hover, &:active {\n      color: $default-text;\n      opacity: 0.8;\n      box-shadow: none;\n    }\n  }\n\n  .more-button {\n    width: 60px;\n    font-size: 14px;\n    padding: 6px 5px;\n  }\n\n  .refresh-button {\n    margin-left: 10px;\n  }\n\n  span.select-all-label {\n    font-size: 13px;\n    font-weight: $font-light;\n  }\n}\n\n.message-container, .side-message-navigation {\n  float: left;\n  padding: 0 15px;\n  position: relative;\n  height: 550px;\n  transition: width 0.5s;\n  width: calc(100% - 200px);\n  border-bottom-right-radius: 5px;\n  border-top-right-radius: 5px;\n  border-left: 1px solid rgba(0, 0, 0, 0.12);\n  box-shadow: -1px 0 0 0 rgba(255, 255, 255, 0.12);\n}\n\n.side-message-navigation {\n  padding: 0;\n  width: calc(100% - 200px);\n  .side-message-navigation-item {\n    border-bottom: 1px solid rgba(255, 255, 255, 0.2);\n  }\n}\n\n.mail-body-part {\n  width: calc(100% - 30px);\n  text-overflow: ellipsis;\n  height: 16px;\n  overflow: hidden;\n  margin-top: 3px;\n  margin-left: 5px;\n  opacity: .8;\n}\n\n.mail-tag.tag.label {\n  display: inline-block;\n  font-size: 14px;\n  text-transform: uppercase;\n  width: 65px;\n}\n\n.phone-email {\n  i {\n    color: $default-text;\n  }\n}\n\n.message-container {\n  padding: 15px 15px 10px 15px;\n  overflow-x: hidden;\n}\n\n.little-human {\n  cursor: pointer;\n  transition: border-left 1.5s ease;\n  font-weight: 300;\n  .little-human-picture {\n    width: 45px;\n    height: 45px;\n    border-radius: 23px;\n    margin: 7px 0px 7px 7px;\n    transition: all .2s ease-in-out;\n  }\n  .name {\n    font-size: 14px;\n    vertical-align: super;\n    white-space: nowrap;\n  }\n  .name-wrap {\n    margin-left: 10px;\n  }\n  .date {\n    float: right;\n    margin: 10px 10px 0 5px;\n    display: inline-block;\n    font-size: 13px;\n    white-space: nowrap;\n  }\n  .tag {\n    vertical-align: super;\n  }\n  .subject {\n    white-space: nowrap;\n    margin: 0 30px;\n    font-size: 16px;\n  }\n  &:hover {\n    .little-human-picture {\n      animation: rotateReturnAnimation 0.5s;\n    }\n    background-color: rgba(255, 255, 255, 0.1);\n  }\n}\n\n.back-button {\n  margin-left: 45px;\n}\n\n.name-container {\n  margin-left: 10px;\n}\n\n.mail-checkbox {\n  margin-top: 5px;\n  margin-left: 6px;\n  .custom-checkbox {\n    margin-left: 5px;\n  }\n}\n\n.mail-panel .tag {\n  text-transform: lowercase;\n  font-size: 11px;\n  font-weight: $font-light;\n  width: 45px;\n  cursor: pointer;\n  display: inline-block;\n  &.label {\n    padding: .2em .5em;\n    border-radius: 2px;\n    line-height: 1.1;\n  }\n  &.work {\n    background-color: $primary;\n  }\n\n  &.study {\n    background-color: $warning;\n  }\n\n  &.family {\n    background-color: $success;\n  }\n\n  &.friend {\n    background-color: $danger;\n  }\n}\n\n.messages {\n  overflow: auto;\n  table {\n    width: 100%;\n  }\n}\n\n@media screen and (min-width: 1199px) {\n  .photo-td {\n    width: 55px;\n  }\n  .check-td {\n    width: 35px;\n  }\n}\n\n.important {\n  color: $warning;\n}\n\n.message-control-icon {\n  cursor: pointer;\n  font-size: 16px;\n  margin-right: 5px;\n}\n\n.person-info {\n  padding: 0 0 10px 45px;\n  margin-top: 10px;\n  .human-picture {\n    width: 80px;\n    height: 80px;\n    border-radius: 40px;\n    margin-top: -65px;\n  }\n\n  .name {\n    display: inline-block;\n    margin-left: 10px;\n    margin-top: 5px;\n    h2 {\n      font-weight: 300;\n      margin-bottom: 0;\n      font-size: 24px;\n    }\n    .second-name {\n      margin: 5px 0;\n    }\n  }\n\n}\n\n.no-padding {\n  padding: 0;\n}\n\n.contact-info {\n  display: inline-block;\n  div {\n    margin-top: 10px;\n  }\n  &.phone-email {\n    .ion-iphone {\n      font-size: 32px;\n      width: 27px;\n      display: inline-block;\n    }\n    .phone {\n      font-size: 19px;\n      font-weight: $font-light;\n      vertical-align: super;\n    }\n    .ion-email {\n      font-size: 24px;\n      width: 27px;\n      display: inline-block;\n    }\n    .email {\n      font-size: 16px;\n      font-weight: $font-light;\n      vertical-align: super;\n    }\n  }\n\n  &.position-address {\n    div {\n      margin-top: 17px;\n    }\n    .position {\n      font-size: 20px;\n      font-weight: $font-light;\n    }\n\n    .address {\n      font-size: 16px;\n      font-weight: $font-light;\n    }\n  }\n}\n\n.message-details {\n  margin: 5px 0;\n  padding: 5px 0 5px 30px;\n  .subject {\n    font-size: 20px;\n    margin-right: 10px;\n    font-weight: $font-light;\n  }\n  .control-icons {\n    float: right;\n    font-size: 20px;\n    margin-right: 40px;\n    i {\n      cursor: pointer;\n    }\n  }\n  .date {\n    white-space: nowrap;\n    font-size: 12px;\n  }\n}\n\n.message-body {\n  margin: 20px 0;\n  padding-left: 30px;\n  font-weight: $font-light;\n  line-height: 18px;\n  p {\n    margin-bottom: 0;\n  }\n}\n\n.attachment {\n  margin: 5px 0;\n  padding-left: 30px;\n  .file-icon {\n    font-size: 24px;\n    cursor: pointer;\n  }\n\n  .file-name {\n    font-size: 14px;\n    margin-left: 3px;\n    position: relative;\n    top: -3px;\n    font-weight: $font-light;\n  }\n\n  .file-links {\n    font-size: 14px;\n  }\n}\n\n.line {\n  height: 1px;\n  background-color: $input-border;\n  opacity: 0.3;\n}\n\n.answer-button {\n  margin-left: 20px;\n  color: white;\n  font-size: 16px;\n  font-weight: $font-light;\n  padding-left: 40px;\n  padding-right: 40px;\n  background-color: $dribble-color;\n  &:hover {\n    color: white;\n  }\n  &:focus {\n    color: white;\n  }\n}\n\n.answer-container {\n  float: right;\n  margin-top: 10px;\n  .btn {\n    margin-top: 3px;\n    background-color: $primary-light;\n    border: none;\n    color: white;\n    width: 100px;\n    transition: none;\n    &:hover {\n      transform: none;\n      background-color: $danger;\n    }\n  }\n}\n\n@keyframes rotateReturnAnimation {\n  0% {\n    transform: rotate(0deg);\n  }\n  50% {\n    transform: rotate(10deg);\n  }\n  100% {\n    transform: rotate(0deg);\n  }\n}\n\n@media screen and (max-width: 1199px) {\n  .name-h {\n    display: inline;\n  }\n  .person-info {\n    .human-picture {\n      margin-top: -35px;\n    }\n    .name {\n      margin-top: 20px;\n    }\n    .mail-tag {\n      margin-top: 10px;\n    }\n  }\n  .second-name {\n    margin-top: 0;\n  }\n}\n\n@media screen and (max-width: 990px) {\n\n  .person-info .human-picture {\n    width: 150px;\n    height: 150px;\n    border-radius: 75px;\n    margin: 5px auto;\n    display: block;\n\n  }\n\n  .person-info, .message-details, .message-body, .attachment {\n    padding-left: 10px;\n  }\n\n  .message-container {\n    padding-left: 15px;\n  }\n\n  .back-button, .contact-info {\n    margin-left: 15px;\n  }\n\n  .additional-info {\n    display: none;\n  }\n\n  .little-human .date {\n    font-size: 10px;\n  }\n\n  .margin-left {\n    margin-left: 5px;\n  }\n\n}\n\n@media screen and (max-width: 760px) {\n\n  .mail-navigation-container {\n    width: 175px;\n    .mail-navigation {\n      padding-left: 19px;\n      .new-mails {\n        left: 137px;\n      }\n    }\n  }\n\n  .side-message-navigation {\n    width: calc(100% - 175px);\n  }\n\n  .message-container {\n    width: calc(100% - 175px);\n  }\n\n  .mail-body-part {\n    display: none;\n  }\n  .little-human .little-human-picture {\n    width: 30px;\n    height: 30px;\n  }\n  .messages-control .more-button {\n    width: 50px;\n  }\n}\n\n@media screen and (max-width: 560px) {\n  .mail-navigation-container {\n    padding: 0;\n    width: 0;\n    &.expanded {\n      width: 155px;\n    }\n    .mail-navigation {\n      font-size: 14px;\n      padding-left: 23px;\n      .new-mails {\n        left: 116px;\n        padding: 0px 5px;\n        margin-top: 0px;\n        font-size: 12px;\n      }\n      .labels {\n        margin-left: 10px;\n      }\n    }\n    .compose-button {\n      width: 110px;\n    }\n  }\n\n  .mail-messages-control {\n    .custom-checkbox {\n      margin-left: 5px;\n      margin-top: -2px;\n    }\n  }\n\n  .side-message-navigation, .message-container {\n    &.expanded {\n      width: 100%;\n      border: none;\n      box-shadow: none;\n    }\n    width: calc(100% - 155px);\n  }\n\n  div.toggle-navigation-container {\n    display: inline-block;\n  }\n\n  .little-human {\n    .name {\n      white-space: inherit;\n    }\n    .little-human-picture {\n      display: none;\n    }\n  }\n\n  .add-label-container {\n    padding-left: 0;\n    font-size: 13px;\n    font-weight: $font-light;\n  }\n\n}\n\n.compose-header {\n  padding: 8px 3px 8px 10px;\n  color: white;\n  font-weight: $font-light;\n  font-size: 13px;\n  background-color: $github-color;\n}\n\n.header-controls {\n  display: inline-block;\n  float: right;\n  i {\n    margin-right: 5px;\n    font-size: 14px;\n    cursor: pointer;\n    &:hover {\n      color: $primary-light;\n    }\n  }\n}\n\n.compose-container .ta-scroll-window > .ta-bind {\n  height: 290px;\n  overflow-y: scroll;\n\n}\n\n.modal-compose input.form-control.compose-input {\n  background-color: transparent;\n  border-bottom: 1px solid rgba(0, 0, 0, .2);\n  border-radius: 0;\n}\n\n.compose-footer {\n  padding: 2px 4px;\n  background-color: $mail-box;\n  .btn-send {\n    background-color: $primary-light;\n    color: white;\n    padding: 2px 10px;\n    margin: 3px;\n    font-weight: $font-light;\n  }\n  .btn-default {\n    background-color: transparent;\n    border: none;\n  }\n}\n\n.footer-controls {\n  float: right;\n  margin: 6px;\n}\n\n.compose-footer-icon {\n  font-size: 18px;\n  margin-right: 5px;\n  cursor: pointer;\n  color: $dropdown-text;\n  &:hover {\n    color: $primary-light;\n  }\n}\n\n.compose-container {\n  background-color: $mail-box;\n  .ta-text.ta-editor {\n    background-color: $input-border;\n    div {\n      &:focus {\n        outline: none;\n      }\n    }\n  }\n\n}\n\n.footer-control-first {\n  border-right: 2px solid $help-text;\n  display: inline-block;\n  padding-right: 9px;\n}\n\n.toggle-navigation-container {\n  display: none;\n  vertical-align: middle;\n  margin-left: -1px;\n  &.detail-page {\n    margin-left: 10px;\n  }\n}\n\n.collapse-navigation-link {\n  font-size: 32px;\n  color: $default-text;\n  &:visited {\n    color: $default-text;\n  }\n  &:hover {\n    color: $warning;\n    opacity: .8;\n  }\n\n}\n\n.collapsed {\n  width: 0;\n}\n\n.modal .modal-dialog.modal-compose {\n  max-width: 398px;\n  position: fixed;\n  bottom: 0;\n  right: 0;\n  max-height: 474px;\n\n  .form-control, .bootstrap-tagsinput input {\n    @include placeholderStyle($dropdown-text, 1);\n    color: $dropdown-text;\n    border-radius: 0;\n  }\n  .ta-toolbar {\n    .btn {\n      border-radius: 0;\n      color: $dropdown-text;\n      border: 1px transparent;\n      &.active {\n        box-shadow: none;\n        background-color: rgba(0, 0, 0, .12);\n      }\n    }\n  }\n  @include overrideColors($dropdown-text)\n}\n\n@media (max-width: 640px) {\n  .modal .modal-dialog.modal-compose {\n    max-height: 600px;\n  }\n}"
  },
  {
    "path": "src/sass/app/_form.scss",
    "content": ".label {\n  border-radius: 0;\n}\n\n.label-primary {\n  background: $primary;\n}\n\n.label-info {\n  background: $primary-light;\n}\n\n.label-success {\n  background: $success;\n}\n\n.label-warning {\n  background: $warning;\n}\n\n.label-danger {\n  background: $danger;\n}\n\n.form-horizontal {\n  label {\n    line-height: 34px;\n    margin-bottom: 0;\n    padding-top: 0 !important;\n  }\n}\n\n.form-group {\n  label {\n    margin-bottom: 5px;\n    color: $default-text;\n    font-weight: $font-normal;\n    font-size: 13px;\n  }\n}\n\n.form-control {\n  color: $default-text;\n  @include placeholderStyle($default-text, 0.7);\n  border: 1px solid $input-border;\n  border-radius: 5px;\n  background-color: $input-background;\n  box-shadow: none;\n  &:focus {\n    box-shadow: none;\n    border-color: $primary-bg;\n    background: $input-background;\n  }\n}\n\nselect.form-control {\n  padding-left: 8px;\n}\n\ntextarea.form-control {\n  height: 96px;\n}\n\n.form-inline {\n  .form-group {\n    input {\n      width: 100%;\n    }\n    label {\n      margin-right: 12px;\n    }\n  }\n\n  button[type=\"submit\"] {\n    margin-left: 12px;\n  }\n\n  label.custom-checkbox > span {\n    display: block;\n    margin-top: -13px;\n    margin-right: 10px;\n  }\n}\n\n@mixin setSwitchBorder($color) {\n  .bootstrap-switch.bootstrap-switch-on {\n    border-color: $color;\n  }\n}\n\n@mixin setSwitcherColor($color) {\n  border: solid 1px $color;\n  .handle.handle-on {\n    background-color: $color;\n  }\n}\n\n.switcher-container {\n  margin-right: 10px;\n  font-weight: normal;\n  input {\n    display: none;\n  }\n  .switcher {\n    &.primary {\n      @include setSwitcherColor($primary);\n    }\n    &.success {\n      @include setSwitcherColor($success);\n    }\n    &.warning {\n      @include setSwitcherColor($warning);\n    }\n    &.danger {\n      @include setSwitcherColor($danger);\n    }\n    &.info {\n      @include setSwitcherColor($primary-light);\n    }\n    position: relative;\n    display: inline-block;\n    width: 84px;\n    overflow: hidden;\n    border-radius: 6px;\n    box-sizing: border-box;\n\n    /* this fixes the overflow:hidden in Chrome */\n    -webkit-transform: translateZ(0);\n    /* Hide default HTML checkbox */\n    input {\n      display: none;\n    }\n    .handle-container {\n      position: relative;\n      width: 126px;\n      cursor: pointer;\n      transform: translate3d(-42px, 0, 0);\n      transition: transform .2s linear;\n      .handle {\n        width: 42px;\n        float: left;\n        line-height: 28px;\n        height: 28px;\n        font-size: 12px;\n        text-align: center;\n        color: white;\n        &.handle-off {\n          background: $border;\n          color: black;\n        }\n      }\n    }\n  }\n  input:checked + .switcher {\n    border: solid 1px $border;\n    .handle-container {\n      transform: translate3d(0, 0, 0);\n    }\n  }\n\n}\n\n\n.switch-container {\n  display: inline-block;\n  &.primary {\n    @include setSwitchBorder($primary);\n  }\n  &.success {\n    @include setSwitchBorder($success);\n  }\n  &.warning {\n    @include setSwitchBorder($warning);\n  }\n  &.danger {\n    @include setSwitchBorder($danger);\n  }\n  &.info {\n    @include setSwitchBorder($primary-light);\n  }\n}\n\n.bootstrap-switch {\n  border-radius: 5px;\n  border: 1px solid $default;\n  transition: border-color ease-in-out .7s, box-shadow ease-in-out .7s;\n  &:focus {\n    outline: none;\n  }\n  &.bootstrap-switch-off {\n    border-color: $border;\n  }\n  &.bootstrap-switch-focused {\n    box-shadow: none;\n    &.bootstrap-switch-off {\n      border-color: $border;\n    }\n  }\n  .bootstrap-switch-container {\n    border-radius: 0;\n    &:focus {\n      outline: none;\n    }\n  }\n  .bootstrap-switch-handle-on {\n    border-radius: 0;\n    &.bootstrap-switch-default {\n      background: $default;\n    }\n    &.bootstrap-switch-success {\n      background: $success;\n    }\n    &.bootstrap-switch-primary {\n      background: $primary;\n    }\n    &.bootstrap-switch-warning {\n      background: $warning;\n    }\n    &.bootstrap-switch-danger {\n      background: $danger;\n    }\n    &.bootstrap-switch-info {\n      background: $primary-light;\n    }\n  }\n  .bootstrap-switch-handle-off {\n    border-radius: 0;\n  }\n\n  .bootstrap-switch-label {\n    background: transparent;\n  }\n\n  &.bootstrap-switch-animate .bootstrap-switch-container {\n    transition: margin-left .2s;\n  }\n}\n\n.switches {\n  margin-left: -12px;\n  margin-bottom: -12px;\n  .switch-container {\n    float: left;\n    margin-left: 12px;\n    margin-bottom: 12px;\n  }\n}\n\n.input-group {\n  width: 100%;\n  margin-bottom: 15px;\n  & > span {\n    border-radius: 0;\n  }\n}\n\nlabel.custom-checkbox {\n  padding-right: 0;\n  padding-left: 0;\n  margin-bottom: 0;\n  & > input {\n    height: 0;\n    z-index: -100 !important;\n    opacity: 0;\n    position: absolute;\n    &:checked {\n      & + span {\n        &:before {\n          content: \"\\f00c\";\n          font-weight: $font-light;\n        }\n      }\n    }\n    &:disabled {\n      & + span {\n        color: $disabled;\n        cursor: not-allowed;\n        &:before {\n          border-color: $disabled !important;\n          cursor: not-allowed;\n        }\n      }\n    }\n  }\n  & > span {\n    position: relative;\n    display: inline-block;\n    margin: 0;\n    line-height: 16px;\n    font-weight: $font-light;\n    cursor: pointer;\n    padding-left: 22px;\n    width: 100%;\n    &:before {\n      cursor: pointer;\n      font-family: fontAwesome;\n      font-weight: $font-light;\n      font-size: 12px;\n      color: $default-text;\n      content: \"\\a0\";\n      background-color: transparent;\n      border: 1px solid $border;\n      border-radius: 0;\n      display: inline-block;\n      text-align: center;\n      height: 16px;\n      line-height: 14px;\n      min-width: 16px;\n      margin-right: 6px;\n      position: relative;\n      top: 0;\n      margin-left: -22px;\n      float: left;\n    }\n    &:hover {\n      &:before {\n        border-color: $primary-bg;\n      }\n    }\n  }\n}\n\n.nowrap {\n  white-space: nowrap;\n}\n\n.cut-with-dots {\n  overflow: hidden;\n  text-overflow: ellipsis;\n  display: block;\n}\n\nlabel.custom-radio {\n  @extend .custom-checkbox;\n  & > input {\n    &:checked {\n      & + span {\n        &:before {\n          content: \"\\f111\";\n        }\n      }\n    }\n  }\n  & > span {\n    &:before {\n      border-radius: 16px;\n      font-size: 9px;\n    }\n  }\n}\n\n@mixin customInput($color) {\n  & > span {\n    &:before {\n      color: $color;\n    }\n    &:hover {\n      &:before {\n        border-color: $color;\n      }\n    }\n  }\n}\n\nlabel.custom-input-primary {\n  @include customInput($primary);\n}\n\nlabel.custom-input-success {\n  @include customInput($success);\n}\n\nlabel.custom-input-warning {\n  @include customInput($warning)\n}\n\nlabel.custom-input-danger {\n  @include customInput($danger)\n}\n\n.form-horizontal {\n  .radio, .checkbox, .radio-inline, .checkbox-inline {\n    padding-top: 0px;\n  }\n}\n\n.input-demo {\n  line-height: 25px;\n}\n\n@mixin validationState($color, $focusColor) {\n  .control-label {\n    color: $default-text;\n  }\n  .form-control {\n    border: 1px solid $color;\n    &:focus {\n      box-shadow: none;\n      border-color: $focusColor;\n    }\n  }\n\n  label.custom-checkbox {\n    color: $color;\n    & > span {\n      &:before {\n        color: $color;\n      }\n      &:hover {\n        &:before {\n          border-color: $color;\n        }\n      }\n    }\n  }\n  .form-control-feedback {\n    color: $color;\n  }\n  .input-group-addon {\n    background-color: $color;\n    color: $label-text;\n  }\n}\n\n.has-success {\n  @include validationState($success-bg, $success);\n}\n\n.has-warning {\n  @include validationState($warning-bg, $warning);\n}\n\n.has-error {\n  @include validationState($danger-bg, $danger);\n}\n\n.has-feedback label ~ .form-control-feedback {\n  top: 21px;\n  font-size: 18px;\n}\n\n.bootstrap-select {\n  .btn-default {\n    &:focus {\n      color: $default-text;\n    }\n  }\n  > .dropdown-toggle {\n    &.btn-primary, &.btn-warning, &.btn-danger, &.btn-success, &.btn-inverse, &.btn-info {\n      color: #fff;\n      &:hover, &:focus {\n        color: #fff;\n      }\n    }\n  }\n}\n\n.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {\n  background-color: $input-background;\n  color: $disabled;\n  border-color: $disabled-bg;\n  @include placeholderStyle($default-text, 0.5);\n}\n\n.form-control-rounded {\n  border-radius: 16px;\n}\n\n.help-block {\n  color: $help-text;\n}\n\n.help-block.error-block {\n  display: none;\n  .has-error &.basic-block {\n    display: block;\n  }\n}\n\n@mixin groupAddon($color) {\n  background: $color;\n  color: $label-text;\n  border-color: $color;\n}\n\n.input-group-addon-danger {\n  @include groupAddon($danger);\n}\n\n.input-group-addon-warning {\n  @include groupAddon($warning);\n}\n\n.input-group-addon-success {\n  @include groupAddon($success);\n}\n\n.input-group-addon-primary {\n  @include groupAddon($primary);\n}\n\n.checkbox-demo-row {\n  margin-bottom: 12px;\n}\n\n.dropdown-menu {\n  border-radius: 5px;\n}\n\n.bootstrap-select.btn-group {\n  button.btn.btn-default {\n    background: transparent;\n    color: $default-text;\n    &:hover {\n      background: $default;\n      box-shadow: none;\n      outline: 0 !important;\n    }\n    &:active {\n      background: $default;\n      box-shadow: none;\n    }\n  }\n  &.open {\n    > .btn.btn-default.dropdown-toggle {\n      background: $default;\n      box-shadow: none;\n      border-color: $border;\n    }\n    > .btn {\n      border-radius: 5px 5px 0 0;\n    }\n    .dropdown-menu.open {\n      border: 1px solid $border-light;\n      border-top: none;\n      border-radius: 0 0 5px 5px;\n    }\n  }\n  &.with-search.open .btn-default + .dropdown-menu {\n    .bs-searchbox .form-control {\n      background-color: $default;\n      border: 1px solid $input-border;\n    }\n    .no-results {\n      color: $dropdown-text;\n    }\n  }\n  .notify {\n    color: $dropdown-text;\n  }\n}\n\n.bootstrap-tagsinput {\n  color: $default-text;\n  background-color: $input-background;\n  border: 1px solid $input-border;\n  border-radius: 5px;\n  box-shadow: none;\n  max-width: 100%;\n  font-size: 14px;\n  line-height: 26px;\n  width: 100%;\n  &.form-control {\n    display: block;\n    width: 100%;\n  }\n  .tag {\n    border-radius: 3px;\n    font-weight: $font-normal;\n    font-size: 11px;\n    padding: 4px 8px;\n    & [data-role=\"remove\"]:hover {\n      box-shadow: none;\n    }\n  }\n  input {\n    background-color: $input-background;\n    border: 1px solid $input-border;\n    border-radius: 5px;\n    @include placeholderStyle($default-text, 0.8);\n    line-height: 22px;\n    font-size: 11px;\n    min-width: 53px;\n  }\n}\n\n.ui-select-multiple.ui-select-bootstrap {\n\n  min-height: 34px;\n  padding: 4px 3px 0 12px;\n}\n\n.progress {\n  background: $progress-background;\n}\n\n.progress-bar-primary {\n  background-color: $primary;\n}\n\n.progress-bar-success {\n  background-color: $success-light;\n}\n\n.progress-bar-warning {\n  background-color: $warning;\n}\n\n.progress-bar-danger {\n  background-color: $danger;\n}\n\n.has-success .input-group-addon {\n  border: none;\n}\n\n.input-group > span.addon-left {\n  border-top-left-radius: 5px;\n  border-bottom-left-radius: 5px;\n}\n\n.input-group > span.addon-right {\n  border-top-right-radius: 5px;\n  border-bottom-right-radius: 5px;\n}\n\n.with-primary-addon:focus {\n  border-color: $primary;\n}\n\n.with-warning-addon:focus {\n  border-color: $warning;\n}\n\n.with-success-addon:focus {\n  border-color: $success;\n}\n\n.with-danger-addon:focus {\n  border-color: $danger;\n}\n\n.sub-little-text {\n  font-size: 12px;\n}\n\n"
  },
  {
    "path": "src/sass/app/_grid.scss",
    "content": ".show-grid div[class^=col-]{\n  padding: 10px;\n  box-sizing: border-box;\n  div {\n    color: $default-text;\n    text-align: center;\n    font-size: 18px;\n    background-color: rgba($default-text, 0.3);\n    padding: 12px 5px;\n  }\n}\n\n.grid-h{\n  margin-top: 40px;\n  margin-bottom: 0;\n  &:first-child{\n    margin-top: 0;\n  }\n}\n"
  },
  {
    "path": "src/sass/app/_iconsPage.scss",
    "content": "@mixin icon-hover($color) {\n  i:hover {\n    color: $color;\n  }\n}\n\n.icons-list {\n  & > div {\n    text-align: center;\n    margin-bottom: 32px;\n  }\n  i {\n    font-weight: $font-normal;\n    font-size: 18px;\n    cursor: pointer;\n  }\n\n  &.primary {\n    @include icon-hover($primary);\n  }\n  &.success {\n    @include icon-hover($success);\n  }\n  &.warning {\n    @include icon-hover($warning);\n  }\n  &.danger {\n    @include icon-hover($danger);\n  }\n}\n\na.see-all-icons {\n  float: right;\n}\n\n.awesomeIcons {\n  height: 308px;\n}\n\n.kameleon-row {\n  display: inline-block;\n  min-width: 102px;\n  width: 20%;\n  .kameleon-icon {\n    padding:0 10px;\n    img {\n      width: 81px;\n    }\n  }\n}\n\n@media (max-width: 750px) {\n  .kameleon-row {\n    width: 25%;\n  }\n}\n\n@media (max-width: 550px) {\n  .kameleon-row {\n    width: 33%;\n  }\n}\n\n@media (max-width: 430px) {\n  .kameleon-row {\n    width: 50%;\n  }\n}\n\n.kameleon-icon-tabs {\n  max-width: 84px;\n  img {\n    width: 100%;\n    min-width: 81px;\n    min-height: 81px;\n  }\n}\n\n.kameleon-icon {\n  text-align: center;\n  margin: 0 auto;\n  img {\n    width: 100%;\n  }\n  span {\n    display: block;\n    text-align: center;\n    white-space: nowrap;\n  }\n}\n\n@mixin setImgBg($color) {\n  img {\n    background: $color;\n  }\n}\n\n.with-round-bg {\n  margin-bottom: 6px;\n  img {\n    border-radius: 50%;\n    margin-bottom: 4px;\n  }\n  @include setImgBg($default);\n\n  &.success {\n    @include setImgBg($success);\n  }\n  &.danger {\n    @include setImgBg($danger);\n  }\n  &.warning {\n    @include setImgBg($warning);\n  }\n  &.info {\n    @include setImgBg($info);\n  }\n  &.primary {\n    @include setImgBg($primary);\n  }\n}\n\n\n"
  },
  {
    "path": "src/sass/app/_modalNotifications.scss",
    "content": ".toast {\n  background-color: $primary;\n}\n\n.toast-success {\n  background-color: $success;\n}\n\n.toast-error {\n  background-color: $danger;\n}\n\n.toast-info {\n  background-color: $info;\n}\n\n.toast-warning {\n  background-color: $warning;\n}\n\n#toast-container.toast-top-full-width > div, #toast-container.toast-bottom-full-width > div {\n  margin: 5px auto;\n}\n"
  },
  {
    "path": "src/sass/app/_modals.scss",
    "content": "\n.modal-content {\n  border-radius: 5px;\n  border: none;\n  color: $dropdown-text;\n}\n\n.modal-header {\n  color: $label-text;\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  .modal-title {\n    color: $dropdown-text;\n  }\n}\n\n.modal-buttons {\n  margin-top: -12px;\n  margin-right: -22px;\n  button {\n    float: left;\n    margin-right: 24px;\n    margin-top: 12px;\n  }\n  &.same-width {\n    button {\n      width: 160px;\n      text-align: center;\n    }\n  }\n}\n\n$modal-input-border: #e7e7e7;\n\n.modal {\n  text-align: center;\n  .modal-dialog {\n    display: inline-block;\n    text-align: left;\n    margin: 0 auto;\n    .form-control{\n      color: $github-color;\n      background-color: transparent;\n      border: 1px solid $modal-input-border;\n      @include placeholderStyle($dropdown-text, 0.9);\n    }\n    .modal-body p, .modal-body div, .modal-body span{\n      color: $dropdown-text;\n    }\n  }\n  .modal-header {\n    border: none;\n    .close{\n      margin-top: -5px;\n    }\n  }\n  .modal-footer {\n    border: none;\n    padding-top: 0;\n  }\n  .modal-icon{\n    margin-right: 3px;\n  }\n  .sn-link-close {\n    color: $dropdown-text;\n    font-size: 30px;\n    &:hover {\n      color: $danger;\n    }\n  }\n}\n\n@media screen and (min-width: $resM) {\n  .modal:before {\n    display: inline-block;\n    vertical-align: middle;\n    content: \" \";\n    height: 100%;\n  }\n}\n\n.message-modal {\n  .modal-header {\n    text-align: center;\n    i {\n      font-size: 32px;\n    }\n  }\n  .modal-title {\n    text-align: center;\n    font-size: 18px;\n    margin-bottom: 12px;\n    margin-top: 18px;\n  }\n  .modal-body {\n    text-align: center;\n    padding: 0;\n    font-size: 14px;\n  }\n  .modal-footer {\n    margin: 24px 0 12px;\n    text-align: center;\n  }\n}\n"
  },
  {
    "path": "src/sass/app/_notifications.scss",
    "content": ".control {\n  margin-bottom: 10px;\n  .form-control {\n    width: 75%;\n  }\n  span {\n    white-space: pre-line;\n  }\n}\n\n.notification-panel {\n  .control,\n  .radio,\n  label,\n  label.custom-checkbox > span,\n  label.custom-radio > span {\n    font-weight: $font-light;\n  }\n}\n\n.radio-controls .custom-radio{\n    margin-top: 5px;\n}\n\n@media (max-width: 991px) {\n  .toastr-radio-setup {\n    margin-left: 22px;\n  }\n}\n\n.radio-header {\n\n  margin-bottom: 0;\n  &.position-header {\n    margin-top: 15px;\n  }\n}\n\n.button-row {\n  line-height: 37px;\n  button {\n    width: 125px;\n  }\n}\n\n.result-toastr {\n  border-radius: 5px;\n  color: rgba(255, 255, 255, 0.9);\n  background-color: rgba(0, 0, 0, 0.33);\n  border: none;\n}\n\n.sub-label {\n  margin-top: 5px;\n}\n\n.toast-title {\n  font-weight: $font-normal;\n}\n\n.toast-message {\n  font-weight: $font-light;\n}\n\n#toast-container.toast-top-center, #toast-container.toast-bottom-center{\n  .toast{\n    margin-bottom: 5px;\n  }\n}\n"
  },
  {
    "path": "src/sass/app/_profile.scss",
    "content": "h3.with-line {\n  border-bottom: 1px solid $border;\n  color: $default-text;\n  font-weight: $font-normal;\n  padding-top: 30px;\n  margin-bottom: 14px;\n  line-height: 39px;\n  width: 100%;\n}\n\n.panel .panel-body h3 {\n  &.with-line {\n    margin-bottom: 14px;\n    margin-top: 0;\n  }\n}\n\n.profile-block {\n  background: $default;\n\n  .nav-tabs > li {\n    & > a {\n      border-radius: 0;\n      transition: background, 0s, ease !important;\n    }\n  }\n\n  .progress {\n    border-radius: 0;\n    margin-bottom: 6px;\n  }\n\n  .progress-info {\n    margin-bottom: 8px;\n    margin-top: -2px;\n  }\n\n  .tab-content {\n    padding: 15px 15px 25px;\n  }\n\n  .progress-bar-primary {\n    background-color: $primary-light;\n  }\n\n  .form-group {\n    margin-bottom: 14px;\n    label {\n      text-align: right;\n    }\n  }\n\n  .form-control {\n    font-size: 13px;\n  }\n}\n\n.notification {\n  .form-group {\n    label {\n      text-align: left;\n      padding-left: 26px;\n    }\n  }\n}\n\n.userpic {\n  border: 1px dashed #b8b8b8;\n  width: 202px;\n  height: 202px;\n  position: relative;\n  cursor: pointer;\n  .userpic-wrapper {\n    width: 200px;\n    height: 200px;\n    overflow: hidden;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n  }\n  img {\n    max-width: 100%;\n    max-height: 100%;\n  }\n  i {\n    display: none;\n    position: absolute;\n    font-size: 32px;\n    background: $default;\n    cursor: pointer;\n    color: $primary;\n    top: -11px;\n    right: -11px;\n    height: 26px;\n    border-radius: 50%;\n    &:before {\n      line-height: 26px;\n    }\n    &:hover {\n      color: $danger;\n    }\n  }\n  a.change-userpic {\n    display: none;\n    width: 202px;\n    background: rgba(0, 0, 0, 0.7);\n    transition: all 200ms ease-in-out;\n    color: $default-text;\n    text-decoration: none;\n    position: absolute;\n    bottom: -1px;\n    left: -1px;\n    line-height: 32px;\n    text-align: center;\n  }\n  &:hover {\n    i {\n      display: block;\n    }\n    .change-userpic {\n      display: block;\n    }\n  }\n}\n\n.save-profile {\n  margin: 23px 0 12px 12px;\n}\n\n$snColor: $primary;\n$snPadding: 8px;\na.sn-link {\n  transition: none;\n  display: block;\n  border-radius: 5px;\n  background-color: transparent;\n  padding: $snPadding;\n  color: $default-text;\n  border: 1px solid transparent;\n  margin-bottom: 23px;\n  width: 100%;\n  position: relative;\n  cursor: pointer;\n  text-decoration: none !important;\n  i.socicon {\n    padding: 6px;\n    border-radius: 50%;\n    width: auto;\n    font-size: 17px;\n    margin-right: 8px;\n    background-color: rgba(0,0,0,.15);\n    color: $default-text;\n  }\n  span {\n\n  }\n\n  span {\n    font-size: 14px;\n    line-height: 29px;\n  }\n\n  @mixin activeSn() {\n    border-color: $snColor;\n    border-width: 2px;\n    padding: $snPadding - 1;\n    span {\n      color: $default-text;\n    }\n    i {\n      background: $snColor;\n    }\n  }\n\n  &.connected {\n    @include activeSn();\n    em {\n      display: block;\n    }\n  }\n  &:hover {\n    @include activeSn();\n  }\n\n  .socicon {\n    background: transparent;\n  }\n}\n\n.close {\n  opacity: 1;\n  box-shadow: none;\n  outline: none !important;\n  &:hover, &:focus, &:active {\n    opacity: 1;\n  }\n}\n\n.connected .sn-link-close {\n  position: absolute;\n  top: 1px;\n  right: 0;\n  width: 45px;\n  line-height: 45px;\n  text-align: center;\n  font-size: 32px;\n  color: $snColor;\n  transition: all 0.1s ease;\n  outline: none;\n  &:hover {\n    color: $danger;\n    transform: scale(1.2);\n  }\n}\n\n.social-profiles {\n  padding-top: 3px;\n  margin-bottom: -3px;\n  padding-left: 12px;\n}\n\n.profile-page {\n  .form-group {\n    label {\n      line-height: 34px;\n      font-size: 14px;\n      font-weight: $font-light;\n    }\n    input{\n      font-weight: $font-light;\n    }\n  }\n}\n\n"
  },
  {
    "path": "src/sass/app/_slider.scss",
    "content": ".slider-box{\n  min-height: 86px;\n}\n\n.irs-bar,\n.irs-bar-edge,\n.irs-line-left,\n.irs-line-mid,\n.irs-line-right,\n.irs-slider {\n  background-image: url(../assets/img/theme/vendor/ionrangeslider/img/sprite-skin-flat.png);\n  background-repeat: repeat-x;\n}"
  },
  {
    "path": "src/sass/app/_table.scss",
    "content": ".table-panel {\n  height: 295px;\n}\n"
  },
  {
    "path": "src/sass/app/_tabsPage.scss",
    "content": ".tabset-group {\n  > div + div {\n    margin-top: 15px;\n  }\n}\n\n\n.panel.tabs-panel{\n  .panel-body{\n    padding: 0;\n  }\n  .dropdown-menu{\n    min-width: 132px;\n    top: auto;\n    border: none;\n    border-bottom-left-radius: 5px;\n    border-bottom-right-radius: 5px;\n  }\n  &.with-scroll .panel-body{\n    height: 100%;\n  }\n}\n\n.xsmall-panel {\n  .nav-tabs, .tab-content{\n    height: 100%;\n  }\n}\n.inline-icon{\n  display: inline-block;\n  margin: 20px 5px;\n}\n.panel.horizontal-tabs {\n  .tab-content{\n    height: calc(100% - 40px);\n  }\n}\n\n"
  },
  {
    "path": "src/sass/app/_tplSkinPanel.scss",
    "content": ".tpl-skin-panel {\n  width: 300px;\n  .tpl-skin-option {\n    padding: 10px;\n    line-height: 83px;\n    color: $default-text;\n    &:hover {\n      cursor: pointer;\n      background-color: $primary;\n    }\n    + .tpl-skin-option {\n      border-top: 1px solid $border-light;\n    }\n  }\n  .skin-thumbnail {\n    width: 100%;\n  }\n}"
  },
  {
    "path": "src/sass/app/_tree.scss",
    "content": ".tree-node{\n  line-height: 25px;\n  cursor: pointer;\n  &.selected{\n    background-color: $border-light ;\n  }\n  .control{\n    cursor: pointer;\n    font-size: 16px;\n    padding-left: 5px;\n  }\n  &:hover{\n    background-color: $input-border;\n  }\n}\n\n.jstree-default a.jstree-clicked, .jstree-default a.jstree-hovered {\n  background-color: rgba(0, 0, 0, 0.25);\n}\n\n.jstree-default a.jstree-anchor, .jstree-default a.jstree-wholerow{\n  &:hover{\n    background-color: rgba(0, 0, 0, 0.15);\n  }\n}\n\n.control-side > div {\n  margin-top: 5px;\n  margin-bottom: 10px;\n\n  .btn{\n    width: 100px;\n  }\n}\n\n#tree-root{\n  border-left: 1px solid $border-light;\n  padding-left: 10px;\n}\n\n.tree-panel{\n  height: 500px;\n}\n\n.search-container{\n  margin-top: 10px;\n}"
  },
  {
    "path": "src/sass/app/_typography.scss",
    "content": "h1, h2, h3, h4, h5, h6 {\n  font-family: $font-family;\n  width: 100%;\n  margin-top: 0;\n}\n\nh1.color, h2.color, h3.color, h4.color, h5.color, h6.color {\n  color: $danger;\n}\n\nbody a {\n  color: $activelink;\n  text-decoration: none !important;\n  transition: color 0.2s ease;\n  &:hover {\n    color: $hoverlink;\n  }\n}\n\nh1 {\n  font-size: 32px;\n}\n\nh2 {\n  font-size: 24px;\n}\n\nh3 {\n  font-size: 20px;\n}\n\nh4 {\n  font-size: 18px;\n}\n\nh5 {\n  font-size: 15px;\n}\n\n.typography-document-samples {\n\n\n  p {\n    margin: 0;\n  }\n\n  .typography-widget {\n    height: 100%;\n\n    .panel {\n      height: 620px;\n    }\n\n    .panel-title{\n      text-align: center;\n      width: 100%;\n    }\n\n    .panel.with-scroll .panel-body{\n      height: calc(100% - 45px);\n    }\n\n    .panel-content{\n      padding: 15px 22px 5px 22px;\n    }\n\n  }\n\n}\n\n.heading-widget {\n\n  h1, h2, h3, h4, h5, h6 {\n    width: 100%;\n    font-weight: $font-light;\n    text-align: center;\n  }\n\n  p {\n    line-height: 16px;\n    font-weight: $font-normal;\n    text-align: center;\n  }\n}\n\n.more-text-widget {\n  text-align: center;\n  font-size: 14px;\n\n  p {\n    line-height: 17px;\n  }\n\n  .gray {\n    color: #767676;\n  }\n\n  .black {\n    color: #585858;\n  }\n\n  .light-text {\n    font-weight: $font-light;\n  }\n\n  .regular-text {\n    font-weight: $font-normal;\n  }\n\n  .upper-text {\n    text-transform: uppercase;\n  }\n\n  .bold-text {\n    font-weight: $font-bold;\n  }\n\n  .small-text {\n    padding: 5px 0 0 0;\n    p {\n      font-size: 9px;\n      font-weight: $font-light;\n      line-height: 10px;\n    }\n  }\n}\n\n.color-widget {\n  text-align: center;\n  font-size: 14px;\n  font-weight: $font-normal;\n  p {\n    line-height: 17px;\n  }\n\n  .section-block {\n    margin: 14px 0;\n  }\n\n  .yellow-text p {\n    color: $warning;\n  }\n\n  .red-text p {\n    color: $danger;\n  }\n\n  .links {\n    h3 {\n      margin-bottom: 10px;\n    }\n    p {\n      margin-bottom: 0;\n      &.hovered {\n        a {\n          color: $hoverlink;\n        }\n      }\n    }\n  }\n\n}\n\n.lists-widget {\n\n  font-weight: $font-normal;\n  .list-header {\n    width: 100%;\n    text-align: center;\n  }\n\n  .accent {\n    margin-top: 30px;\n    color: $warning-bg;\n    line-height: 14px;\n    font-size: 14px;\n    padding-left: 11px;\n    border-left: 4px solid $warning-bg;\n    margin-left: 13px;\n  }\n\n  ul.blur, ol.blur {\n    padding-left: 13px;\n    margin-bottom: 19px;\n    list-style: none;\n    padding-top: 1px;\n    li {\n      margin-top: 5px;\n      font-size: 14px;\n      ul, ol {\n        padding-left: 20px;\n        margin-bottom: 0;\n        list-style: none;\n      }\n    }\n  }\n\n  ul.blur {\n    li {\n      &:before {\n        content: \"• \";\n        color: $warning-bg;\n        width: 10px;\n        display: inline-block;\n      }\n    }\n  }\n\n  ol.blur {\n    counter-reset: section;\n    li {\n      color: $warning-bg;\n      padding-left: 0;\n      line-height: 14px;\n      position: relative;\n      span {\n        color: $default-text;\n        display: block;\n      }\n      ol {\n        padding-left: 0;\n        margin-left: 12px;\n      }\n      &:before {\n        content: counters(section, \".\") \".\";\n        counter-increment: section;\n        width: 19px;\n        position: absolute;\n        left: 0;\n        top: 0;\n        white-space: nowrap;\n        overflow: hidden;\n        text-overflow: ellipsis;\n      }\n    }\n    & > li {\n      span {\n        padding-left: 14px;\n      }\n    }\n    ol {\n      counter-reset: section;\n      & > li {\n        &:before {\n          width: 30px;\n        }\n        span {\n          padding-left: 27px\n        }\n      }\n      ol {\n        & > li {\n          &:before {\n            width: 40px;\n          }\n          span {\n            padding-left: 40px;\n          }\n        }\n      }\n    }\n  }\n}\n\n.columns-section {\n  background-color: $default;\n}\n\np {\n  margin-bottom: 12px;\n  font-family: $font-family;\n  font-size: 14px;\n}\n\np.small-text {\n  color: $help-text;\n  font-size: 12px;\n  line-height: 16px;\n  margin-bottom: 8px;\n}\n\n.cols-two {\n  margin-bottom: 50px;\n  & > div {\n    float: left;\n    width: 350px;\n    margin-left: 40px;\n    &:first-child {\n      margin-left: 0;\n    }\n  }\n}\n\n.cols-three {\n  margin-bottom: 50px;\n  & > div {\n    float: left;\n    width: 222px;\n    margin-left: 40px;\n    &:first-child {\n      margin-left: 0;\n    }\n  }\n}\n\na.learn-more {\n  font-size: 14px;\n  font-weight: $font-bold;\n  text-decoration: none;\n  line-height: 24px;\n}\n\n.img-wrapper {\n  margin-bottom: 19px;\n  margin-top: 5px;\n  overflow: hidden;\n  height: 180px;\n  img {\n    width: 100%;\n  }\n}\n\n.cols-three p {\n  margin-bottom: 10px;\n}\n\n.banner {\n  position: relative;\n  margin-bottom: 20px;\n}\n\n.large-banner-wrapper {\n  overflow: hidden;\n  height: 400px;\n  img {\n    height: 100%;\n    width: 100%;\n    display: block\n  }\n}\n\n.banner-text-wrapper {\n  margin-top: -400px;\n  height: 400px;\n  text-align: center;\n}\n\n.banner-text {\n  padding: 85px 90px 60px;\n  display: inline-block;\n  margin: 67px auto;\n  background: $default;\n  min-width: 432px;\n  overflow: hidden;\n  background: rgba(0, 0, 0, 0.75);\n\n  h1 {\n    font-weight: $font-bold;\n    width: 100%;\n    color: $label-text;\n    margin-bottom: 10px;\n  }\n  p {\n    font-size: 24px;\n    line-height: 30px;\n    font-weight: $font-light;\n    color: $primary;\n    margin-bottom: 0px;\n  }\n}\n\n@media (max-width: 600px) {\n  .banner-text {\n    padding: 55px 60px 30px;\n    min-width: 0;\n    h1 {\n      font-size: 24px;\n    }\n\n    p {\n      font-size: 16px;\n    }\n  }\n}\n\n@media (max-width: 400px) {\n  .banner-text {\n    min-width: 0;\n    width: 100%;\n    height: 100%;\n    margin: 0;\n  }\n}\n\n.photo-desc {\n  margin-top: 12px;\n  text-align: center;\n}\n\n.text-info {\n  width: 90%;\n  p {\n    margin-bottom: 10px;\n  }\n}\n\n.section-block {\n  padding-bottom: 12px;\n}\n\n.separator {\n  height: 1px;\n  background: $border-light;\n  width: 100%;\n  margin-bottom: 19px;\n  margin-top: 16px;\n}\n\n.section {\n  padding: 0 20px 50px 20px;\n}\n\n.panel.banner-column-panel {\n  padding: 0;\n  margin-bottom: 90px;\n\n  .panel-body{\n    padding: 0;\n  }\n}\n\n\n\n\n  @media screen and (min-width: 1620px) {\n    .col-xlg-1{\n      width: 8.33333333%;\n    }\n    .col-xlg-2{\n      width: 16.66666667%;\n    }\n    .col-xlg-3{\n      width: 25%;\n    }\n    .col-xlg-4{\n      width: 33.33333333%;\n    }\n    .col-xlg-5{\n      width: 41.66666667%;\n    }\n    .col-xlg-6{\n      width: 50%;\n    }\n    .col-xlg-7{\n      width: 58.33333333%;\n    }\n    .col-xlg-8{\n      width: 66.66666667%;\n    }\n    .col-xlg-9{\n      width: 75%;\n    }\n    .col-xlg-10{\n      width: 83.33333333%;\n    }\n    .col-xlg-11{\n      width: 91.66666667%;\n    }\n    .col-xlg-12{\n      width: 100%;\n    }\n  }"
  },
  {
    "path": "src/sass/app/maps/_google-maps.scss",
    "content": "#google-maps {\n  width: 100%;\n  height: calc(100vh - 283px);\n}"
  },
  {
    "path": "src/sass/app/maps/_leaflet.scss",
    "content": "#leaflet-map {\n  height: calc(100vh - 283px);\n}\n\n/* required styles */\n\n.leaflet-map-pane,\n.leaflet-tile,\n.leaflet-marker-icon,\n.leaflet-marker-shadow,\n.leaflet-tile-pane,\n.leaflet-tile-container,\n.leaflet-overlay-pane,\n.leaflet-shadow-pane,\n.leaflet-marker-pane,\n.leaflet-popup-pane,\n.leaflet-overlay-pane svg,\n.leaflet-zoom-box,\n.leaflet-image-layer,\n.leaflet-layer {\n  position: absolute;\n  left: 0;\n  top: 0;\n}\n\n.leaflet-container {\n  overflow: hidden;\n  -ms-touch-action: none;\n}\n\n.leaflet-tile,\n.leaflet-marker-icon,\n.leaflet-marker-shadow {\n  -webkit-user-select: none;\n  -moz-user-select: none;\n  user-select: none;\n  -webkit-user-drag: none;\n}\n\n.leaflet-marker-icon,\n.leaflet-marker-shadow {\n  display: block;\n}\n\n/* map is broken in FF if you have max-width: 100% on tiles */\n.leaflet-container img {\n  max-width: none !important;\n}\n\n/* stupid Android 2 doesn't understand \"max-width: none\" properly */\n.leaflet-container img.leaflet-image-layer {\n  max-width: 15000px !important;\n}\n\n.leaflet-tile {\n  filter: inherit;\n  visibility: hidden;\n}\n\n.leaflet-tile-loaded {\n  visibility: inherit;\n}\n\n.leaflet-zoom-box {\n  width: 0;\n  height: 0;\n}\n\n/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */\n.leaflet-overlay-pane svg {\n  -moz-user-select: none;\n}\n\n.leaflet-tile-pane {\n  z-index: 2;\n}\n\n.leaflet-objects-pane {\n  z-index: 3;\n}\n\n.leaflet-overlay-pane {\n  z-index: 4;\n}\n\n.leaflet-shadow-pane {\n  z-index: 5;\n}\n\n.leaflet-marker-pane {\n  z-index: 6;\n}\n\n.leaflet-popup-pane {\n  z-index: 7;\n}\n\n.leaflet-vml-shape {\n  width: 1px;\n  height: 1px;\n}\n\n.lvml {\n  behavior: url(#default#VML);\n  display: inline-block;\n  position: absolute;\n}\n\n/* control positioning */\n\n.leaflet-control {\n  position: relative;\n  z-index: 7;\n  pointer-events: auto;\n}\n\n.leaflet-top,\n.leaflet-bottom {\n  position: absolute;\n  z-index: 1000;\n  pointer-events: none;\n}\n\n.leaflet-top {\n  top: 0;\n}\n\n.leaflet-right {\n  right: 0;\n}\n\n.leaflet-bottom {\n  bottom: 0;\n}\n\n.leaflet-left {\n  left: 0;\n}\n\n.leaflet-control {\n  float: left;\n  clear: both;\n}\n\n.leaflet-right .leaflet-control {\n  float: right;\n}\n\n.leaflet-top .leaflet-control {\n  margin-top: 10px;\n}\n\n.leaflet-bottom .leaflet-control {\n  margin-bottom: 10px;\n}\n\n.leaflet-left .leaflet-control {\n  margin-left: 10px;\n}\n\n.leaflet-right .leaflet-control {\n  margin-right: 10px;\n}\n\n/* zoom and fade animations */\n\n.leaflet-fade-anim .leaflet-tile,\n.leaflet-fade-anim .leaflet-popup {\n  opacity: 0;\n  transition: opacity 0.2s linear;\n}\n\n.leaflet-fade-anim .leaflet-tile-loaded,\n.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {\n  opacity: 1;\n}\n\n.leaflet-zoom-anim .leaflet-zoom-animated {\n  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1);\n}\n\n.leaflet-zoom-anim .leaflet-tile,\n.leaflet-pan-anim .leaflet-tile,\n.leaflet-touching .leaflet-zoom-animated {\n  transition: none;\n}\n\n.leaflet-zoom-anim .leaflet-zoom-hide {\n  visibility: hidden;\n}\n\n/* cursors */\n\n.leaflet-clickable {\n  cursor: pointer;\n}\n\n.leaflet-container {\n  cursor: -webkit-grab;\n  cursor: -moz-grab;\n}\n\n.leaflet-popup-pane,\n.leaflet-control {\n  cursor: auto;\n}\n\n.leaflet-dragging .leaflet-container,\n.leaflet-dragging .leaflet-clickable {\n  cursor: move;\n  cursor: -webkit-grabbing;\n  cursor: -moz-grabbing;\n}\n\n/* visual tweaks */\n\n.leaflet-container {\n  background: #ddd;\n  outline: 0;\n}\n\n.leaflet-container a {\n  color: #0078A8;\n}\n\n.leaflet-container a.leaflet-active {\n  outline: 2px solid orange;\n}\n\n.leaflet-zoom-box {\n  border: 2px dotted #38f;\n  background: rgba(255, 255, 255, 0.5);\n}\n\n/* general toolbar styles */\n\n.leaflet-bar {\n  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);\n  a {\n    background-color: $primary-dark;\n    border-bottom: 1px solid #ccc;\n    display: block;\n    text-align: center;\n    text-decoration: none;\n    opacity: 0.8;\n    color: $default-text;\n    font-size: 17px;\n    width: 20px;\n    height: 20px;\n    line-height: 18px;\n    font-family: Lato;\n    font-weight: $font-thin;\n    &:hover {\n      background-color: $danger;\n    }\n    &:last-child {\n      border-bottom: none;\n    }\n    &.leaflet-control-zoom-out {\n      line-height: 16px;\n    }\n  }\n}\n\n.leaflet-bar a.leaflet-disabled {\n  cursor: default;\n  background-color: $disabled-bg;\n  color: $disabled;\n}\n\n/* zoom control */\n\n.leaflet-bar .leaflet-control-zoom-in,\n.leaflet-bar .leaflet-control-zoom-out {\n  line-height: 18px;\n  &:hover{\n    width: 20px;\n    height: 20px;\n  }\n}\n\n.leaflet-control-zoom-out {\n  font-size: 20px;\n}\n\n.leaflet-touch .leaflet-control-zoom-in {\n  font-size: 22px;\n}\n\n.leaflet-touch .leaflet-control-zoom-out {\n  font-size: 24px;\n}\n\n/* layers control */\n\n.leaflet-control-layers {\n  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);\n  background: $default;\n}\n\n.leaflet-control-layers-toggle {\n  background-image: url(../img/layers.png);\n  width: 36px;\n  height: 36px;\n}\n\n.leaflet-retina .leaflet-control-layers-toggle {\n  background-image: url(../img/layers-2x.png);\n  background-size: 26px 26px;\n}\n\n.leaflet-touch .leaflet-control-layers-toggle {\n  width: 44px;\n  height: 44px;\n}\n\n.leaflet-control-layers .leaflet-control-layers-list,\n.leaflet-control-layers-expanded .leaflet-control-layers-toggle {\n  display: none;\n}\n\n.leaflet-control-layers-expanded .leaflet-control-layers-list {\n  display: block;\n  position: relative;\n}\n\n.leaflet-control-layers-expanded {\n  padding: 6px 10px 6px 6px;\n  color: #333;\n  background: $default;\n}\n\n.leaflet-control-layers-selector {\n  margin-top: 2px;\n  position: relative;\n  top: 1px;\n}\n\n.leaflet-control-layers label {\n  display: block;\n}\n\n.leaflet-control-layers-separator {\n  height: 0;\n  border-top: 1px solid #ddd;\n  margin: 5px -10px 5px -6px;\n}\n\n/* attribution and scale controls */\n\n.leaflet-container .leaflet-control-attribution {\n  background: $default;\n  background: rgba(255, 255, 255, 0.7);\n  margin: 0;\n}\n\n.leaflet-control-attribution,\n.leaflet-control-scale-line {\n  padding: 0 5px;\n  color: #333;\n}\n\n.leaflet-control-attribution a {\n  text-decoration: none;\n}\n\n.leaflet-control-attribution a:hover {\n  text-decoration: underline;\n}\n\n.leaflet-container .leaflet-control-attribution,\n.leaflet-container .leaflet-control-scale {\n  font-size: 11px;\n}\n\n.leaflet-left .leaflet-control-scale {\n  margin-left: 5px;\n}\n\n.leaflet-bottom .leaflet-control-scale {\n  margin-bottom: 5px;\n}\n\n.leaflet-control-scale-line {\n  border: 2px solid #777;\n  border-top: none;\n  line-height: 1.1;\n  padding: 2px 5px 1px;\n  font-size: 11px;\n  white-space: nowrap;\n  overflow: hidden;\n  -moz-box-sizing: content-box;\n  box-sizing: content-box;\n\n  background: $default;\n  background: rgba(255, 255, 255, 0.5);\n}\n\n.leaflet-control-scale-line:not(:first-child) {\n  border-top: 2px solid #777;\n  border-bottom: none;\n  margin-top: -2px;\n}\n\n.leaflet-control-scale-line:not(:first-child):not(:last-child) {\n  border-bottom: 2px solid #777;\n}\n\n.leaflet-touch .leaflet-control-attribution,\n.leaflet-touch .leaflet-control-layers,\n.leaflet-touch .leaflet-bar {\n  box-shadow: none;\n}\n\n.leaflet-touch .leaflet-control-layers,\n.leaflet-touch .leaflet-bar {\n  border: none;\n  background-clip: padding-box;\n}\n\n/* popup */\n\n.leaflet-popup {\n  position: absolute;\n  text-align: center;\n}\n\n.leaflet-popup-content-wrapper {\n  padding: 1px;\n  text-align: left;\n}\n\n.leaflet-popup-content {\n  margin: 13px 19px;\n  line-height: 1.4;\n  color: $dropdown-text;\n}\n\n.leaflet-popup-content p {\n  margin: 18px 0;\n}\n\n.leaflet-popup-tip-container {\n  margin: 0 auto;\n  width: 40px;\n  height: 20px;\n  position: relative;\n  overflow: hidden;\n}\n\n.leaflet-popup-tip {\n  width: 17px;\n  height: 17px;\n  padding: 1px;\n  margin: -10px auto 0;\n  transform: rotate(45deg);\n}\n\n.leaflet-popup-content-wrapper,\n.leaflet-popup-tip {\n  background: white;\n\n  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);\n}\n\n.leaflet-container a.leaflet-popup-close-button {\n  position: absolute;\n  top: 0;\n  right: 0;\n  padding: 4px 4px 0 0;\n  text-align: center;\n  width: 18px;\n  height: 14px;\n  font: 16px/14px Tahoma, Verdana, sans-serif;\n  color: #c3c3c3;\n  text-decoration: none;\n  font-weight: $font-bold;\n  background: transparent;\n}\n\n.leaflet-container a.leaflet-popup-close-button:hover {\n  color: #999;\n}\n\n.leaflet-popup-scrolled {\n  overflow: auto;\n  border-bottom: 1px solid #ddd;\n  border-top: 1px solid #ddd;\n}\n\n.leaflet-oldie .leaflet-popup-content-wrapper {\n  zoom: 1;\n}\n\n.leaflet-oldie .leaflet-popup-tip {\n  width: 24px;\n  margin: 0 auto;\n  -ms-filter: \"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)\";\n  filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);\n}\n\n.leaflet-oldie .leaflet-popup-tip-container {\n  margin-top: -1px;\n}\n\n.leaflet-oldie .leaflet-control-zoom,\n.leaflet-oldie .leaflet-control-layers,\n.leaflet-oldie .leaflet-popup-content-wrapper,\n.leaflet-oldie .leaflet-popup-tip {\n  border: 1px solid #999;\n}\n\n/* div icon */\n\n.leaflet-div-icon {\n  background: $default;\n  border: 1px solid #666;\n}"
  },
  {
    "path": "src/sass/app/maps/_map-bubbles.scss",
    "content": "#map-bubbles {\n  width: 100%;\n  height: calc(100vh - 283px);\n  font-size\t: 11px;\n}\n\n/*\n#chartdiv1 {\n  background: #3f3f4f;\n  color:#ffffff;\n  width\t\t: 100%;\n  height\t\t: 500px;\n  font-size\t: 11px;\n}*/\n"
  },
  {
    "path": "src/sass/app/maps/_map-lines.scss",
    "content": "#map-lines {\n  width: 100%;\n  height: calc(100vh - 283px);\n}"
  },
  {
    "path": "src/sass/auth.scss",
    "content": "@import \"common.scss\";\n@import \"theme/_socicon.scss\";\n@import \"theme/_layout.scss\";\n@import 'theme/buttons.scss';\n@import 'app/form.scss';\n\nhtml {\n  min-height: 520px;\n  height: 100%;\n}\n\nbody {\n  @include main-background();\n  height: 100%;\n}\n\n$text-color: #ffffff;\n\n.form-control, .form-control:focus {\n  @include placeholderStyle($text-color, 0.9);\n  background-color: rgba(0, 0, 0, .4);\n  border-radius: 5px;\n  color: $text-color;\n}\n.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {\n  @include placeholderStyle($text-color, 0.6);\n}\n\n.auth-main {\n  display: flex;\n  align-items: center;\n  height: 100%;\n  width: 100%;\n}\n\n.auth-block {\n  width: 540px;\n  margin: 0 auto;\n  border-radius: 5px;\n  @include bg-translucent-dark(0.55);\n  color: #fff;\n  padding: 32px;\n  h1 {\n    font-weight: $font-light;\n    margin-bottom: 28px;\n    text-align: center;\n  }\n  p {\n    font-size: 16px;\n  }\n  a {\n    text-decoration: none;\n    outline: none;\n    transition: all 0.2s ease;\n    color: $primary;\n    &:hover {\n      color: $primary-dark;\n    }\n  }\n\n  .control-label {\n    padding-top: 11px;\n    color: $text-color;\n  }\n\n  .form-group {\n    margin-bottom: 12px;\n  }\n}\n\n.auth-input {\n  width: 300px;\n  margin-bottom: 24px;\n  input {\n    display: block;\n    width: 100%;\n    border: none;\n    font-size: 16px;\n    padding: 4px 10px;\n    outline: none;\n  }\n}\n\na.forgot-pass {\n  display: block;\n  text-align: right;\n  margin-bottom: -20px;\n  float: right;\n  z-index: 2;\n  position: relative;\n}\n\n.auth-link {\n  display: block;\n  font-size: 16px;\n  text-align: center;\n  margin-bottom: 33px;\n}\n\n.auth-sep {\n  margin-top: 36px;\n  margin-bottom: 24px;\n  line-height: 20px;\n  font-size: 16px;\n  text-align: center;\n  display: block;\n  position: relative;\n  & > span {\n    display: table-cell;\n    width: 30%;\n    white-space: nowrap;\n    padding: 0 24px;\n    color: $text-color;\n    & > span {\n      margin-top: -12px;\n      display: block;\n    }\n  }\n  &:before, &:after {\n    border-top: solid 1px $text-color;\n    content: \"\";\n    height: 1px;\n    width: 35%;\n    display: table-cell;\n  }\n}\n\n.al-share-auth {\n  text-align: center;\n  .al-share {\n    float: none;\n    margin: 0;\n    padding: 0;\n    display: inline-block;\n    li {\n      margin-left: 24px;\n      &:first-child {\n        margin-left: 0;\n      }\n      i {\n        font-size: 24px;\n      }\n    }\n  }\n}\n\n.btn-auth {\n  color: #ffffff!important;\n}"
  },
  {
    "path": "src/sass/common.scss",
    "content": "@import 'theme/conf/mixins';\n@import 'theme/conf/colorScheme/mint';\n@import 'theme/conf/variables';\n"
  },
  {
    "path": "src/sass/main.scss",
    "content": "@import 'common';\n\n// injector\n// endinjector"
  },
  {
    "path": "src/sass/theme/_blur-admin-theme.scss",
    "content": ".label {\n  border-radius: 0;\n}\n\n.label-primary {\n  background: $primary;\n}\n\n.label-info {\n  background: $primary-light;\n}\n\n.label-success {\n  background: $success;\n}\n\n.label-warning {\n  background: $warning;\n}\n\n.label-danger {\n  background: $danger;\n}"
  },
  {
    "path": "src/sass/theme/_buttons.scss",
    "content": "$hover: 24;\n.btn:focus, .btn:active:focus, .btn.active:focus,\n.btn.focus, .btn:active.focus, .btn.active.focus {\n  outline: none;\n}\n\n.btn {\n  border-radius: 5px;\n  transition: all 0.1s ease;\n}\n\n.btn:hover {\n  transform: scale(1.2);\n}\n\n@mixin styleButton($color, $borderColor) {\n  background: $color;\n  border-color: $borderColor;\n}\n\n@mixin buttonColor($color, $borderColor) {\n  @include styleButton($color, $borderColor);\n\n  &.disabled, &[disabled], fieldset[disabled] &, &.disabled:hover, &[disabled]:hover,\n  fieldset[disabled] &:hover, &.disabled:focus, &[disabled]:focus, fieldset[disabled] &:focus,\n  &.disabled.focus, &[disabled].focus, fieldset[disabled] &.focus, &.disabled:active,\n  &[disabled]:active, fieldset[disabled] &:active, &.disabled.active, &[disabled].active,\n  fieldset[disabled] &.active {\n    @include styleButton($color, $borderColor + $hover/2);\n    &:hover {\n      transform: none;\n    }\n  }\n\n  &:hover, &:focus, &.focus, &:active, &.active {\n    @include styleButton($color, $borderColor - $hover);\n  }\n}\n\n@mixin openDropdownButton($color, $dark-color) {\n  @include styleButton($color, $color - $hover);\n  background-color: $dark-color;\n  border-color: $dark-color;\n}\n\n.open > .btn.dropdown-toggle {\n  &.btn.btn-primary {\n    @include openDropdownButton($primary, $primary-dark)\n  }\n  &.btn-success {\n    @include openDropdownButton($success, $success-dark)\n  }\n  &.btn-info {\n    @include openDropdownButton($info, $info-dark)\n  }\n  &.btn-warning {\n    @include openDropdownButton($warning, $warning-dark)\n  }\n  &.btn-danger {\n    @include openDropdownButton($danger, $danger-dark)\n  }\n}\n\nbutton.btn.btn-primary {\n  @include buttonColor($primary, $primary);\n  &:active, &:target {\n    background-color: $primary-dark;\n  }\n}\n\nbutton.btn.btn-default {\n  border-width: 1px;\n  color: $default-text;\n  @include buttonColor(transparent, $border);\n  &:active, &:target {\n    background-color: rgba(0, 0, 0, 0.2);\n    color: $default-text;\n  }\n}\n\nbutton.btn.btn-success {\n  @include buttonColor($success, $success);\n  &:active, &:target {\n    background-color: $success-dark;\n  }\n}\n\nbutton.btn.btn-info {\n  @include buttonColor($info, $info);\n  &:active, &:target {\n    background-color: $info-dark;\n  }\n}\n\nbutton.btn.btn-warning {\n  @include buttonColor($warning, $warning);\n  &:active, &:target {\n    background-color: $warning-dark;\n  }\n}\n\nbutton.btn.btn-danger {\n  @include buttonColor($danger, $danger);\n  &:active, &:target {\n    background-color: $danger-dark;\n  }\n}\n\n\nbutton.btn.btn-inverse {\n  @include buttonColor($help-text, $help-text);\n  color: $label-text;\n  &:active, &:target, &:hover {\n    background-color: $help-text;\n    color: $label-text;\n  }\n}\n\n.btn-with-icon {\n  i {\n    margin-right: 10px;\n  }\n}\n\n.btn-group, .btn-toolbar {\n  :hover {\n    transform: none;\n  }\n}\n\n@mixin buttonGroupColor($color) {\n  border-color: $color - $hover/2;\n  &:hover {\n    border-color: $color - $hover;\n  }\n}\n\n.btn-group {\n  button.btn.btn-primary {\n    @include buttonGroupColor($primary);\n  }\n  button.btn.btn-danger {\n    @include buttonGroupColor($danger);\n  }\n  button.btn.btn-info {\n    @include buttonGroupColor($info);\n  }\n  button.btn.btn-success {\n    @include buttonGroupColor($success);\n  }\n  button.btn.btn-warning {\n    @include buttonGroupColor($warning);\n  }\n  .dropdown-menu {\n    margin-top: 0px;\n  }\n}\n\n.btn-toolbar {\n  display: inline-block;\n}\n\n.btn .caret {\n  margin-left: 2px;\n}\n\n@mixin progressButtonColor($btnColor) {\n  border-radius: 0;\n  .content {\n    &:after, &:before {\n      color: darken($btnColor, 40);\n    }\n  }\n\n  &.progress-button-style-move-up, &.progress-button-style-slide-down {\n    .content {\n      background-color: darken($btnColor, 10);\n    }\n  }\n\n  &.progress-button-style-lateral-lines .progress-inner {\n    border-color: darken($btnColor, 10);\n    background: 0 0;\n  }\n\n  .progress {\n    background-color: darken($btnColor, 10);\n    box-shadow: 0 1px 0 darken($btnColor, 10);\n  }\n\n  .progress-inner {\n    background-color: darken($btnColor, 20);\n  }\n  &.progress-button-perspective {\n    background: none;\n    .content {\n      background-color: $btnColor;\n    }\n  }\n}\n\nbutton.progress-button {\n\n  .progress {\n    margin-bottom: 0;\n    border-radius: 0;\n  }\n  &:hover {\n    transform: none;\n  }\n\n  &.progress-button-style-shrink.btn.disabled.progress-button-dir-horizontal:hover {\n    transform: scaleY(.3);\n  }\n  &.progress-button-style-shrink.btn.disabled.progress-button-dir-vertical:hover {\n    transform: scaleX(.1);\n  }\n\n  &.btn.btn-primary {\n    @include progressButtonColor($primary);\n  }\n\n  &.btn.btn-default {\n    @include progressButtonColor($default);\n  }\n\n  &.btn.btn-success {\n    @include progressButtonColor($success);\n  }\n\n  &.btn.btn-info {\n    @include progressButtonColor($info);\n  }\n\n  &.btn.btn-warning {\n    @include progressButtonColor($warning);\n  }\n\n  &.btn.btn-danger {\n    @include progressButtonColor($danger);\n  }\n}\n\n.btn-raised {\n  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.35);\n}\n\n.btn-mm {\n  padding: 5px 11px;\n  font-size: 13px;\n}\n\n.btn-xm {\n  padding: 8px 14px;\n  font-size: 16px;\n}\n\n.dropdown button.btn.btn-default.dropdown-toggle {\n  color: $default-text;\n  border: 1px solid $border;\n  background-color: transparent;\n  &:focus, &:active {\n    background-color: $default;\n  }\n}\n\n.bootstrap-select {\n  .dropdown-toggle:focus {\n    outline: none !important;\n  }\n  button.btn-default:focus {\n    color: $default;\n  }\n  .btn {\n    transition: none;\n  }\n}"
  },
  {
    "path": "src/sass/theme/_datePicker.scss",
    "content": ".datepicker {\n  .btn:hover {\n    transform: scale(1);\n  }\n\n  button.btn.btn-default {\n    background-color: transparent;\n  }\n\n  button.btn.btn-default.active {\n    background-color: $info;\n    color: white;\n  }\n\n  button.btn.active span.ng-binding.text-info {\n    color: white;\n  }\n}\n\n.uib-datepicker-wrap {\n  min-height:270px;\n}\n\n.uib-datepicker span.ng-binding.text-muted {\n  color: $default-text;\n}\n.uib-datepicker-popup {\n\n  background-color: $bootstrap-panel-bg;\n  border-width: 0;\n  color: black;\n\n  button.btn {\n    color: black;\n\n    .text-muted {\n      color: black;\n    }\n  }\n\n  .glyphicon {\n    color: rgba($progress-background, 1);\n  }\n}"
  },
  {
    "path": "src/sass/theme/_icons.scss",
    "content": "@mixin svg-icon($url, $width:'', $height:'') {\n  display: inline-block;\n  background: url($url) no-repeat center;\n  background-size: contain;\n  vertical-align: middle;\n  @if ($width != '') {\n    width: $width + px;\n  }\n  @if ($height != '') {\n    height: $height + px;\n  }\n}\n\n@mixin svg-icon-class($iconName, $width:'', $height:'') {\n  .#{'i-' + $iconName} {\n    @include svg-icon($images-root + $iconName + '.svg', $width, $height);\n  }\n}\n\n@include svg-icon-class('face', 80, 80);\n@include svg-icon-class('money', 80, 80);\n@include svg-icon-class('person', 80, 80);\n@include svg-icon-class('refresh', 80, 80);\n\n\n@mixin png-icon($url, $width, $height) {\n  display: inline-block;\n  width: $width + px;\n  height: $height + px;\n  background: url($url) no-repeat center center;\n  background-size: $width + px $height + px;\n}\n\n@mixin png-icon-class($iconName, $width, $height) {\n  .#{'i-' + $iconName} {\n    @include png-icon($images-root + $iconName + '.png', $width, $height);\n  }\n}\n\n//@include icon-png-class('arrival-icon', 11, 11);"
  },
  {
    "path": "src/sass/theme/_layout.scss",
    "content": "$left-space: 180px;\n\n@include scrollbars(.5em, #d9d9d9, rgba(0,0,0,0));\n\nhtml {\n  position: relative;\n  min-width: 320px;\n}\n\nhtml, body {\n  min-height: 100%;\n  min-width: $resMin;\n}\n\nbody {\n  font: 14px/16px $font-family;\n  color: $default-text;\n  background-color: $body-bg;\n  &.blur-theme {\n    @include main-background();\n  }\n}\n\nbody.mobile{\n  background: none;\n  .body-bg{\n    display: block;\n    position: fixed;\n    top: 0;\n    left: 0;\n    bottom: 0;\n    right: 0;\n    background-attachment: inherit;\n    background-color: $body-bg;\n  }\n  &.blur-theme .body-bg{\n    @include main-background();\n  }\n}\n\n@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)\n{\n  html{\n    overflow: hidden;\n    height: 100%;\n  }\n  body{\n    overflow: auto;\n    height: 100%;\n  }\n}\n\na {\n  transition: color 0.5s ease;\n  outline: 0 !important;\n}\n\n.body-bg{\n  display: none;\n}\n.al-header {\n  display: block;\n  height: 49px;\n  margin: 0;\n  background-repeat: repeat-x;\n  position: relative;\n  z-index: 905;\n  color: #444444;\n}\n\n.al-main {\n  margin-left: $left-space;\n  padding: 66px 0 34px 0;\n  min-height: 500px;\n}\n\n.al-footer {\n  height: 34px;\n  padding: 0px 18px 0 $left-space;\n  width: 100%;\n  position: absolute;\n  display: block;\n  bottom: 0;\n  font-size: 13px;\n  color: $default-text;\n  transition: padding-left 0.5s ease;\n}\n\n.al-footer-main {\n  float: left;\n  margin-left: 15px;\n}\n\n.al-copy {\n  float: left;\n}\n\n.al-footer-right {\n  float: right;\n  margin-right: 12px;\n  i {\n    margin: 0 4px;\n    color: $danger;\n    font-size: 12px;\n  }\n  a {\n    margin-left: 4px;\n    color: $default-text;\n    &:hover {\n      color: $danger;\n    }\n  }\n}\n\n.al-share {\n  margin: -6px 0 0 12px;\n  padding: 0;\n  list-style: none;\n  float: left;\n  li {\n    list-style: none;\n    float: left;\n    margin-left: 16px;\n    i {\n      cursor: pointer;\n      transition: all 0.1s ease;\n      color: white;\n      padding: 6px;\n      box-sizing: content-box;\n      font-size: 16px;\n      &:hover {\n        transform: scale(1.2);\n      }\n    }\n    i.fa-facebook-square {\n      color: $facebook-color;\n    }\n    i.fa-twitter-square {\n      color: $twitter-color;\n    }\n    i.fa-google-plus-square {\n      color: $google-color;\n    }\n  }\n}\n\n.al-content {\n  padding: 8px 32px 8px 40px;\n}\n\n@media screen and (max-width: $resXS) {\n  .al-content {\n    padding: 8px 20px;\n  }\n}\n\n.vis-hidden {\n  visibility: hidden;\n  position: absolute;\n  top: -9999px;\n  left: -9999px;\n}\n\n.icon-up, .icon-down {\n  width: 5px;\n  height: 13px;\n  display: block;\n}\n\n.icon-up {\n  @include bg-nr('arrow-green-up.svg');\n}\n\n.icon-down {\n  @include bg-nr('arrow-red-down.svg');\n}\n\n.disable-text-selection {\n  -webkit-touch-callout: none;\n  user-select: none;\n}\n\n.align-right {\n  text-align: right\n}\n\n.amcharts-chart-div > a {\n  font-size: 6px !important;\n}\n\n.content-panel {\n  padding-left: 22px;\n  padding-top: 26px;\n}\n\n@media (max-width: 590px) {\n  .al-footer-right {\n    float: none;\n    margin-bottom: 19px;\n    margin-right: 0;\n  }\n  .al-footer {\n    height: 76px;\n    text-align: center;\n  }\n  .al-main {\n    padding-bottom: 76px;\n  }\n  .al-footer-main {\n    float: none;\n    display: inline-block;\n  }\n}\n\n.full-invisible {\n  visibility: hidden!important;\n  * {\n    visibility: hidden!important;\n  }\n}\n\n.irs-grid-text {\n  color: $default-text;\n}"
  },
  {
    "path": "src/sass/theme/_preloader.scss",
    "content": "@-webkit-keyframes spin {\n  0% {\n    transform: rotate(0deg); /* Firefox 16+, IE 10+, Opera */\n  }\n  100% {\n    transform: rotate(360deg); /* Firefox 16+, IE 10+, Opera */\n  }\n}\n@-moz-keyframes spin {\n  0% {\n    -moz-transform: rotate(0deg); /* Firefox 16+*/\n  }\n  100% {\n    -moz-transform: rotate(360deg); /* Firefox 16+*/\n  }\n}\n\n@keyframes spin {\n  0% {\n    transform: rotate(0deg); /* Firefox 16+, IE 10+, Opera */\n  }\n  100% {\n    transform: rotate(360deg); /* Firefox 16+, IE 10+, Opera */\n  }\n}\n\n#preloader {\n  position: fixed;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  z-index: 1000;\n  background: #000000;\n  backface-visibility: hidden;\n  & > div {\n    display: block;\n    position: relative;\n    left: 50%;\n    top: 50%;\n    width: 150px;\n    height: 150px;\n    margin: -75px 0 0 -75px;\n    border-radius: 50%;\n    border: 3px solid transparent;\n    border-top-color: $danger;\n    backface-visibility: hidden;\n    transform: translate3d(0, 0, 0);\n    backface-visibility: hidden;\n    animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n    &:before {\n      content: \"\";\n      position: absolute;\n      top: 5px;\n      left: 5px;\n      right: 5px;\n      bottom: 5px;\n      border-radius: 50%;\n      border: 3px solid transparent;\n      border-top-color: $primary;\n      -webkit-animation: spin 3s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n      animation: spin 3s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n    }\n    &:after {\n      content: \"\";\n      position: absolute;\n      top: 15px;\n      left: 15px;\n      right: 15px;\n      bottom: 15px;\n      border-radius: 50%;\n      border: 3px solid transparent;\n      border-top-color: $warning;\n      animation: spin 1.5s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n    }\n  }\n}"
  },
  {
    "path": "src/sass/theme/_socicon.scss",
    "content": "@font-face {\n  font-family: 'socicon';\n  src: url('#{$fonts-root}socicon.eot');\n  src: url('#{$fonts-root}socicon.eot?#iefix') format('embedded-opentype'),\n  url('#{$fonts-root}socicon.woff') format('woff'),\n  url('#{$fonts-root}socicon.woff2') format('woff2'),\n  url('#{$fonts-root}socicon.ttf') format('truetype'),\n  url('#{$fonts-root}socicon.svg#sociconregular') format('svg');\n  font-weight: $font-normal;\n  font-style: normal;\n  text-transform: initial;\n}\n\n.socicon {\n  font-family: 'socicon' !important;\n}\n\n.socicon {\n  position: relative;\n  top: 1px;\n  display: inline-block;\n  font-family: 'socicon';\n  font-style: normal;\n  font-weight: $font-normal;\n  line-height: 1;\n  -webkit-font-smoothing: antialiased;\n}\n\n.socicon:empty {\n  width: 1em;\n}\n\n@mixin socicon($background, $content) {\n  background-color: $background;\n  &:before {\n    content: $content;\n  }\n}\n\n.socicon-twitter {\n  @include socicon($twitter-color, \"a\");\n}\n\n.socicon-facebook {\n  @include socicon($facebook-color, \"b\");\n}\n\n.socicon-google {\n  @include socicon($google-color, \"c\");\n}\n\n.socicon-linkedin {\n  @include socicon($linkedin-color, \"j\");\n}\n\n.socicon-github {\n  @include socicon($github-color, \"Q\");\n}\n\n.socicon-stackoverflow {\n  @include socicon($stackoverflow-color, \"(\");\n}\n\n.socicon-dribble {\n  @include socicon($dribble-color, \"D\");\n}\n\n.socicon-behace {\n  @include socicon($behace-color, \"H\");\n}"
  },
  {
    "path": "src/sass/theme/_table.scss",
    "content": ".table {\n  margin-bottom: 0px;\n  & > thead {\n    & > tr {\n      & > th {\n        border-bottom: 1px solid $border-light;\n        white-space: nowrap;\n        &:first-child {\n          text-align: center;\n        }\n        &:last-child {\n          padding-right: 16px;\n        }\n      }\n    }\n  }\n  & > tbody {\n    & > tr {\n      & > tr:first-child {\n        padding-top: 1px;\n      }\n      & > td {\n        padding: 0px 8px;\n        line-height: 35px;\n        border-top: 1px solid $border-light;\n        &:first-child {\n          text-align: center;\n        }\n        &:last-child {\n          padding-right: 16px !important;\n        }\n      }\n    }\n  }\n}\n\n.table-id {\n  text-align: left !important;\n  width: 40px;\n}\n\n.table-arr {\n  width: 5px;\n  padding: 10px 8px 8px 0 !important;\n}\n\n.table-no-borders {\n  border: none;\n  td, th, tr {\n    border: none !important;\n  }\n}\n\n.editable-wrap .btn-group.form-control {\n  background-color: transparent;\n}\n\n.editable-tr-wrap {\n  .editable-wrap {\n    vertical-align: super;\n  }\n  .editable-controls input.editable-input {\n    width: 110px;\n  }\n  td {\n    width: 20%;\n  }\n}\n\n.editable-table-button {\n  width: 70px;\n}\n\n.add-row-editable-table {\n  margin-bottom: 10px;\n}\n\n.add-row-editable-table + table {\n  margin-bottom: 5px;\n}\n\n.select-page-size-wrap {\n  width: 150px;\n}\n\n.table .header-row th {\n  vertical-align: middle;\n  padding: 0 8px;\n}\n\ntr.editable-row {\n  input.form-control {\n    vertical-align: middle;\n  }\n}\n\n.select-td .editable-select {\n  margin-bottom: 1px;\n}\n\n@media screen and (max-width: 1199px) {\n  .editable-tr-wrap {\n    .editable-wrap {\n      vertical-align: middle;\n    }\n  }\n}\n\n.browser-icons {\n  width: 41px;\n}\n\n.st-sort-ascent, .st-sort-descent {\n  position: relative;\n}\n\n.st-sort-ascent:after, .st-sort-descent:after {\n  width: 0;\n  height: 0;\n  border-bottom: 4px solid $default-text;\n  border-top: 4px solid transparent;\n  border-left: 4px solid transparent;\n  border-right: 4px solid transparent;\n  margin-bottom: 2px;\n}\n\n.st-sort-descent:after {\n  transform: rotate(-180deg);\n  margin-bottom: -2px;\n}\n\n.sortable {\n  th {\n    cursor: pointer;\n    &:after {\n      content: '';\n      display: inline-block;\n      width: 8px;\n      margin-left: 8px;\n    }\n  }\n}\n\na.email-link {\n  color: $default-text;\n  &:hover {\n    color: $danger;\n  }\n}\n\ninput.search-input {\n  margin-left: -8px;\n  padding-left: 8px;\n}\n\n.table .pagination {\n  margin: 4px 0 -12px 0;\n  a {\n    cursor: pointer;\n  }\n}\n\n.vertical-scroll {\n  max-height: 214px;\n}\n\n.pagination > li > a, .pagination > li > span {\n  background: transparent;\n}\n\n.pagination > li:first-child > a, .pagination > li:first-child > span {\n  border-top-left-radius: 0px;\n  border-bottom-left-radius: 0px;\n}\n\n.pagination > li:last-child > a, .pagination > li:last-child > span {\n  border-top-right-radius: 0px;\n  border-bottom-right-radius: 0px;\n}\n\n.status-button {\n  width: 60px;\n}\n\n.table {\n  .editable-wrap .editable-controls, .editable-wrap .editable-error {\n    vertical-align: sub;\n    .btn {\n      &.dropdown-toggle {\n        padding: 3px 20px;\n        margin-top: 3px;\n      }\n      padding: 3px 8px;\n    }\n    input {\n      line-height: 1px;\n      height: 30px;\n    }\n  }\n}\n\n.form-inline button[type=\"submit\"].editable-table-button {\n  margin-left: 0;\n}\n\n.table {\n  & > thead {\n    & > tr {\n      & > th {\n        border-bottom: none;\n      }\n    }\n  }\n  & > tbody {\n    & > tr.no-top-border {\n      &:first-child > td {\n        border-top: none;\n      }\n    }\n  }\n}\n\n.black-muted-bg {\n  background-color: rgba(0, 0, 0, 0.1);\n}\n\n.table-hover {\n  > tbody > tr:hover {\n    background-color: rgba(0, 0, 0, 0.1);\n  }\n}\n\n.table-bordered,\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td{\n  border: 1px solid $border-light;\n}\n\n.table-striped > tbody > tr:nth-of-type(odd) {\n  background-color: rgba(0, 0, 0, 0.1);\n}\n\n@mixin color-row($color) {\n  background-color: rgba($color, 0.7);\n  color: $label-text;\n  border: none;\n  a.email-link {\n    color: $label-text;\n    &:hover {\n      color: $danger;\n    }\n  }\n}\n.table > tbody > tr.primary > td {\n  @include color-row($primary);\n}\n.table > tbody > tr.success > td {\n  @include color-row($success);\n}\n.table > tbody > tr.warning > td {\n  @include color-row($warning);\n}\n.table > tbody > tr.danger > td {\n  @include color-row($danger);\n}\n.table > tbody > tr.info > td {\n  @include color-row($info);\n}\n\n.editable-click, a.editable-click {\n  color: $default-text;\n  border-bottom: dashed 1px $border;\n}\n\nth {\n  font-weight: $font-normal;\n}\n\n.editable-empty {\n  color: $danger-dark;\n}\n\n.table > tbody > tr > th {\n  border: none;\n}\n\n.table-striped > tbody > tr > td {\n  border: none;\n}\n.pagination > li > a,\n.pagination > li > span{\n  color: $default-text;\n  border-color: $border;\n}\n\n\n.pagination > li:first-of-type > a,\n.pagination > li:first-of-type > span{\n  border-top-left-radius: 5px;\n  border-bottom-left-radius: 5px;\n}\n\n.pagination > li:last-of-type > a,\n.pagination > li:last-of-type > span{\n  border-top-right-radius: 5px;\n  border-bottom-right-radius: 5px;\n}\n\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n  background-color: $primary;\n  border-color: $border;\n}\n\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus{\n  background-color: rgba(0,0,0,.2);\n  color: $default-text;\n}\n\n.editable-buttons .btn-with-icon i {\n   margin-right: 0;\n}\n\n.table-responsive {\n  margin-top: 10px;\n}\n"
  },
  {
    "path": "src/sass/theme/_tree.scss",
    "content": ""
  },
  {
    "path": "src/sass/theme/bootstrap-overrides/_panel.scss",
    "content": "$panel-title-height: 44px;\n$panel-heading-font-size: 16px;\n\n.panel {\n  @include scrollbars(.4em, rgba(0, 0, 0, 0.6), rgba(255, 255, 255, 0.7));\n  color: $default-text;\n  background-color: $default;\n  border: none;\n  border-radius: 5px;\n  position: relative;\n  margin-bottom: 24px;\n  box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.25);\n  &.animated {\n    animation-duration: 0.5s;\n  }\n  &.small-panel {\n    height: $small-panel-height;\n  }\n  &.xsmall-panel {\n    height: $xsmall-panel-height;\n  }\n  &.medium-panel {\n    height: $medium-panel-height;\n  }\n  &.xmedium-panel {\n    height: $extra-medium-panel-height;\n  }\n  &.large-panel {\n    height: $large-panel-height;\n  }\n  &.viewport100 {\n    height: calc(100vh - 218px);\n  }\n\n  &.with-scroll {\n    .panel-body {\n      height: calc(100% - #{$panel-title-height});\n      overflow-y: auto;\n    }\n  }\n}\n\n.panel.panel-blur {\n  $blurredBgUrl: $images-root + 'blur-bg-blurred.jpg';\n  background: url($blurredBgUrl);\n  transition: none;\n  background-attachment: fixed;\n}\n\n.panel {\n  > .panel-body {\n    padding: 15px 22px;\n    height: 100%;\n  }\n  > .panel-heading {\n    color: $default-text;\n    border-bottom-left-radius: 0;\n    border-bottom-right-radius: 0;\n  }\n  > .panel-footer {\n    color: $default-text;\n  }\n}\n\n.panel-heading, .panel-footer {\n  border-bottom: 1px solid rgba(0, 0, 0, 0.12);\n  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.12);\n  height: $panel-title-height;\n  font-size: $panel-heading-font-size;\n  $vertical-padding: ($panel-title-height - $panel-heading-font-size) / 2;\n  padding: $vertical-padding 22px;\n}\n\n.panel-title {\n  font-weight: $font-normal;\n  text-transform: uppercase;\n  opacity: 0.9;\n}\n\n.panel-default {\n  > .panel-heading {\n    color: $bootstrap-panel-text;\n  }\n  > .panel-footer {\n    color: $bootstrap-panel-text;\n  }\n}\n\n\n.panel-primary {\n  > .panel-heading {\n    background-color: $primary-bg;\n    border-color: $primary-bg;\n  }\n}\n\n.panel-success {\n  > .panel-heading {\n    background-color: $success-bg;\n    border-color: $success-bg;\n  }\n}\n\n.panel-info {\n  > .panel-heading {\n    background-color: $info-bg;\n    border-color: $info-bg;\n  }\n}\n\n.panel-warning {\n  > .panel-heading {\n    background-color: $warning-bg;\n    border-color: $warning-bg;\n  }\n}\n\n.panel-danger {\n  > .panel-heading {\n    background-color: $danger-bg;\n    border-color: $danger-bg;\n  }\n}\n\n.bootstrap-panel{\n  background-color: $bootstrap-panel-bg;\n  .panel-body{\n    color: $bootstrap-panel-text;\n  }\n}\n\n.accordion-panel.panel {\n  &.panel-primary,\n  &.panel-success,\n  &.panel-info,\n  &.panel-warning,\n  &.panel-danger {\n    .panel-heading {\n      p, div, span {\n        color: rgba(255, 255, 255, 0.8);\n      }\n    }\n  }\n}\n\n.panel-group .panel.accordion-panel {\n  .panel-heading {\n    border-bottom: 0;\n  }\n}\n\n.panel-group .panel {\n  .panel-heading {\n    border-bottom: 1px solid #ddd;\n  }\n}\n\n.p-with-code {\n  line-height: 1.5em;\n}\n\n.contextual-example-panel {\n  height: 120px;\n}\n\n.footer-panel {\n  height: 142px;\n}\n\n.light-text {\n  font-weight: $font-light;\n}\n\n/*\n.panel-group .panel {\n  border-radius: 0;\n}*/\n"
  },
  {
    "path": "src/sass/theme/bootstrap-overrides/_tabs.scss",
    "content": "/** Different tabs positions, which were removed from bootstrap */\n.tabs-below, .tabs-right, .tabs-left {\n  .nav-tabs {\n    border-bottom: 0;\n  }\n}\n\n.tabs-right, .tabs-left {\n  .nav-tabs {\n    min-width: 100px;\n  }\n  .tab-content {\n    width: calc(100% - 100px);\n    overflow-y: auto;\n  }\n}\n\n.tabs-right .tab-content {\n  margin-right: 100px;\n}\n\n.tabs-left .tab-content {\n  margin-left: 100px;\n}\n\n.tab-content > .tab-pane,\n.pill-content > .pill-pane {\n  display: none;\n}\n\n.tab-content > .active,\n.pill-content > .active {\n  display: block;\n}\n\n.tabs-below {\n  > .nav-tabs {\n\n    > li {\n      margin-top: -1px;\n      margin-bottom: 0;\n\n      > a {\n        &:hover, &:focus {\n        }\n      }\n    }\n    > .active a {\n      &, &:hover, &:focus {\n      }\n    }\n  }\n}\n\n.tabs-left, .tabs-right {\n  height: 100%;\n  > .nav-tabs > li {\n    float: none;\n    margin-bottom: 0;\n    > a {\n      min-width: 74px;\n      margin-right: 0;\n      margin-bottom: 3px;\n    }\n  }\n}\n\n.tabs-left > .nav-tabs {\n  float: left;\n  border-bottom-left-radius: 5px;\n  > li > a {\n    margin-right: -1px;\n\n    &:hover, &:focus {\n    }\n  }\n\n  > .active a {\n    &, &:hover, &:focus {\n    }\n  }\n}\n\n.tabs-right > .nav.nav-tabs {\n  float: right;\n  border-top-left-radius: 0;\n  border-bottom-right-radius: 5px;\n  > li > a {\n    &:hover, &:focus {\n    }\n  }\n\n  & > li:first-of-type a {\n    border-top-left-radius: 0;\n  }\n\n  > .active a {\n    &, &:hover, &:focus {\n    }\n  }\n}\n\n/** /Different tabs positions, which were removed from bootstrap */\n\n.nav-tabs > li.with-dropdown {\n  > a {\n    padding: 0;\n  }\n\n  .dropdown-toggle {\n    padding: 10px 15px;\n    display: inline-block;\n    cursor: pointer;\n  }\n}\n\n.tab-content {\n  padding: 15px 15px 5px 15px;\n  background: transparent;\n  color: $default-text;\n  .tab-pane p {\n    color: $default-text;\n  }\n}\n\n.nav.nav-tabs {\n  border-top-left-radius: 5px;\n  border-top-right-radius: 5px;\n  border-bottom: 1px solid transparent;\n  background-color: $primary-light;\n  a {\n    color: $label-text;\n    &:hover {\n      color: $label-text;\n    }\n  }\n  & > li > a {\n    margin-right: 0;\n    margin-bottom: 0;\n    border-radius: 0;\n    border: none;\n    &:hover, &:focus {\n      border: none;\n      background-color: $primary-light;\n    }\n  }\n  & > li.active > a {\n    color: $label-text;\n    background-color: $primary;\n  }\n  > li:first-of-type a {\n    border-top-left-radius: 5px;\n  }\n  .dropdown-menu > li > a {\n    color: $dropdown-text;\n    &:hover {\n      color: $dropdown-text;\n    }\n  }\n}\n\n.blur-theme {\n  .nav.nav-tabs {\n    background-color: rgba(0, 0, 0, 0.2);\n    a {\n      color: $default-text;\n      &:hover {\n        color: $default-text;\n      }\n    }\n    & > li > a:hover {\n      background-color: rgba(0, 0, 0, 0.2);\n    }\n    & > li.active > a {\n      color: $default-text;\n      background-color: rgba(0, 0, 0, 0.25);\n    }\n  }\n}\n\n.nav .open > a, .nav .open > a:hover, .nav .open > a:focus {\n  background-color: transparent;\n}\n\n.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {\n  border: none;\n}\n\n.accordion-panel  {\n  .panel-heading {\n    border-radius: 3px;\n  }\n\n  &.panel-open .panel-heading {\n    border-bottom-left-radius: 0;\n    border-bottom-right-radius: 0;\n  }\n\n  &:not(.panel-open) .panel-heading {\n    transition-delay: .3s;\n  }\n\n  > .panel-heading + .panel-collapse > .panel-body {\n    border-top: none;\n  }\n}\n\n.accordion-panel .panel-heading {\n  padding: 0;\n  .accordion-toggle {\n    display: inline-block;\n    width: 100%;\n    padding: 14px 22px;\n  }\n}\n\n"
  },
  {
    "path": "src/sass/theme/components/_accordion.scss",
    "content": "/*\n.panel-group {\n  > .panel {\n    > .panel-heading {\n      padding: 0;\n\n      > h4.panel-title {\n        height: 50px;\n        width: 100%;\n        padding: 0;\n\n        > a {\n          display: block;\n          padding: 15px 22px;\n          width: 100%;\n        }\n      }\n    }\n  }\n\n}\n\n.panel-collapse {\n  transition: height $default-animation-duration $default-animation-style;\n  .panel-body {\n    padding: 15px;\n  }\n}*/\n"
  },
  {
    "path": "src/sass/theme/components/_baWizard.scss",
    "content": ".ba-wizard-progress {\n  margin-top: 10px;\n  height: 10px;\n}\n\n.ba-wizard-pager {\n  .previous {\n    float: left;\n  }\n  .next {\n    float: right;\n  }\n}\n\n.ba-wizard-navigation-container {\n  display: table;\n  table-layout: fixed;\n  width: 100%;\n  padding: 15px 0;\n  .ba-wizard-navigation {\n    cursor: pointer;\n    display: table-cell;\n    line-height: 1;\n    text-align: center;\n    font-weight: $font-light;\n    font-size: 18px;\n    opacity: 0.7;\n    &.active {\n      opacity: 0.95;\n    }\n  }\n}"
  },
  {
    "path": "src/sass/theme/components/_backTop.scss",
    "content": "$height: 52px;\n\n.back-top {\n  width: $height;\n  height: $height;\n  cursor: pointer;\n  z-index: 9999;\n  display: none;\n  text-decoration: none;\n  right: (180px - $height) / 2;\n  bottom: 40px !important;\n  font-size: 45px;\n  text-align: center;\n  opacity: 0.4;\n  color: $primary;\n  background-color: rgba(0, 0, 0, 0.75);\n  border-radius: 50%;\n  line-height: 46px;\n  &:hover {\n    opacity: 0.8;\n  }\n}\n"
  },
  {
    "path": "src/sass/theme/components/_contentTop.scss",
    "content": ".content-top {\n  padding-top: 13px;\n  padding-bottom: 27px;\n}\n\nh1.al-title {\n  font-weight: $font-bold;\n  color: $default-text;\n  float: left;\n  width: auto;\n  margin: 0;\n  padding: 0;\n  font-size: 24px;\n  text-transform: uppercase;\n  opacity: 0.9;\n}\n\n.al-breadcrumb {\n  background: none;\n  color: $default-text;\n  padding: 0;\n  margin: 0;\n  float: right;\n  padding-top: 11px;\n  li {\n    font-size: 18px;\n    font-weight: $font-normal;\n  }\n}\n\n.al-look {\n  float: right;\n  margin-right: 10px;\n  padding-top: 10px;\n  > a {\n    font-size: 19px;\n  }\n}"
  },
  {
    "path": "src/sass/theme/components/_msgCenter.scss",
    "content": "/* msg center */\n@-webkit-keyframes pulsate {\n  30% {\n    -webkit-transform: scale(0.1, 0.1);\n    opacity: 0.0;\n  }\n  35% {\n    opacity: 1.0;\n  }\n  40% {\n    -webkit-transform: scale(1.2, 1.2);\n    opacity: 0.0;\n  }\n}\n\n.al-msg-center {\n  float: right;\n  padding: 0;\n  list-style: none;\n  margin: 13px 47px 0 0;\n\n  li {\n    list-style: none;\n    float: left;\n    margin-left: 30px;\n    &:first-child {\n      margin-left: 0;\n    }\n    & > a {\n      color: $sidebar-text;\n      text-decoration: none;\n      font-size: 13px;\n      position: relative;\n      span {\n        display: inline-block;\n        min-width: 10px;\n        padding: 2px 4px 2px 4px;\n        color: $sidebar-text;\n        vertical-align: baseline;\n        white-space: nowrap;\n        text-align: center;\n        border-radius: 13px;\n        text-shadow: none;\n        line-height: 11px;\n        background-color: $danger;\n        position: absolute;\n        top: -5px;\n        right: -14px;\n        font-size: 11px;\n      }\n      .notification-ring {\n        border: 1px solid $danger;\n        border-radius: 100px;\n        height: 40px;\n        width: 40px;\n        position: absolute;\n        top: -18px;\n        right: -27px;\n        animation: pulsate 8s ease-out;\n        animation-iteration-count: infinite;\n        opacity: 0.0\n      }\n\n      &:hover {\n        color: $danger;\n        &.msg {\n          color: $primary;\n        }\n      }\n      &.msg {\n        span {\n          background-color: $primary;\n        }\n        .notification-ring {\n          border-color: $primary;\n        }\n      }\n    }\n    &.open {\n      & > a {\n        color: $danger;\n        &.msg {\n          color: $primary;\n        }\n      }\n    }\n  }\n}\n\n@media (max-width: $resXXS) {\n  .al-msg-center {\n    margin-right: 20px;\n    li {\n      margin-left: 20px;\n      &:first-child {\n        margin-left: 0;\n      }\n    }\n  }\n}\n\n.msg-block-header {\n  display: inline-block;\n  padding: 0;\n  font-size: 13px;\n  margin: 0 0 0 6px;\n}\n\n.top-dropdown-menu {\n  width: 316px;\n  left: auto;\n  right: -47px;\n  top: 26px;\n  @include scrollbars(.4em, rgba(0,0,0,0.5), #fff);\n  .header {\n    padding: 10px 12px;\n    border-bottom: 1px solid $default;\n    font-size: 12px;\n    strong {\n      float: left;\n      color: $dropdown-text;\n    }\n    & > a {\n      float: right;\n      margin-left: 12px;\n      text-decoration: none;\n      &:hover {\n        color: $dropdown-text;\n      }\n    }\n  }\n  .msg-list {\n    max-height: 296px;\n    overflow: scroll;\n    overflow-x: hidden;\n    & > a {\n      border-top: 1px solid $default;\n      padding: 10px 12px;\n      display: block;\n      text-decoration: none;\n      color: $dropdown-text;\n      font-size: 12px;\n      &:first-child {\n        border-top: none;\n      }\n      .img-area {\n        float: left;\n        width: 36px;\n        img {\n          width: 36px;\n          height: 36px;\n          &.photo-msg-item{\n            border-radius: 18px;\n          }\n        }\n        & > div {\n          width: 36px;\n          height: 36px;\n          border-radius: 4px;\n          font-size: 24px;\n          text-align: center;\n          &.comments {\n            color: $warning;\n          }\n          &.orders {\n            color: $warning;\n          }\n          i {\n            width: 36px;\n            line-height: 36px;\n          }\n        }\n      }\n      .msg-area {\n        float: right;\n        width: 230px;\n        div {\n          max-height: 34px;\n          overflow: hidden;\n          text-overflow: ellipsis;\n        }\n        span {\n          font-style: italic;\n          text-align: right;\n          display: block;\n          font-size: 11px;\n        }\n      }\n      &:hover {\n        background: #E2F0FF;\n      }\n    }\n  }\n  & > a {\n    border-top: 1px solid $default;\n    display: block;\n    text-align: center;\n    padding: 10px;\n    font-size: 12px;\n    text-decoration: none;\n    &:hover {\n      color: $dropdown-text;\n    }\n  }\n\n  &.profile-dropdown {\n    width: 145px;\n    top: 55px;\n    right: -25px;\n    a {\n      text-align: left;\n      border: none;\n      text-decoration: none;\n      color: $dropdown-text;\n      padding: 4px 16px 4px 20px;\n      &.signout {\n        border-top: 1px solid $default;\n      }\n      i {\n        margin-right: 10px;\n      }\n      &:hover {\n        background: #f4fcff;\n      }\n    }\n    i.dropdown-arr {\n      right: 25px;\n    }\n  }\n\n  i.dropdown-arr {\n    position: absolute;\n    top: -22px;\n    right: 42px;\n    display: block;\n    width: 0;\n    height: 0;\n    border: 11px solid transparent;\n    border-bottom-color: rgba(0, 0, 0, .15);\n    &:after {\n      top: -9px;\n      left: 0px;\n      margin-left: -10px;\n      content: \" \";\n      position: absolute;\n      display: block;\n      width: 0;\n      height: 0;\n      border: 10px solid transparent;\n      border-bottom-color: $default;\n    }\n  }\n}\n\n@media (max-width: 415px) {\n  .top-dropdown-menu {\n    right: -81px;\n    i.dropdown-arr {\n      right: 75px;\n    }\n  }\n}"
  },
  {
    "path": "src/sass/theme/components/_pageTop.scss",
    "content": ".page-top {\n  background-color: $sidebar;\n  position: fixed;\n  z-index: 904;\n  box-shadow: 2px 0px 3px rgba(0, 0, 0, 0.5);\n  height: 66px;\n  width: 100%;\n  min-width: $resMin;\n  padding: 0 32px 0 40px;\n\n  &.scrolled {\n    background-color: rgba(black, 0.85)\n  }\n}\n\na.al-logo {\n  color: $sidebar-text;\n  display: block;\n  font-size: 24px;\n  font-family: $font-family;\n  white-space: nowrap;\n  float: left;\n  outline: none !important;\n  line-height: 60px;\n\n  span {\n    color: $primary;\n  }\n}\n\n.user-profile {\n  float: right;\n  min-width: 230px;\n  margin-top: 10px;\n}\n\n.al-user-profile {\n  float: right;\n  margin-right: 12px;\n  transition: all .15s ease-in-out;\n  padding: 0;\n  width: 36px;\n  height: 36px;\n  border: 0;\n  opacity: 1;\n  position: relative;\n  a {\n    display: block;\n  }\n  img {\n    width: 45px;\n    height: 45px;\n    border-radius: 50%;\n  }\n}\n\na.refresh-data {\n  color: $sidebar-text;\n  font-size: 13px;\n  text-decoration: none;\n  font-weight: $font-normal;\n  float: right;\n  margin-top: 13px;\n  margin-right: 26px;\n\n  &:hover {\n    color: $warning !important;\n  }\n}\n\na.collapse-menu-link {\n  font-size: 31px;\n  cursor: pointer;\n  display: block;\n  text-decoration: none;\n  line-height: 42px;\n  color: $sidebar-text;\n  padding: 0;\n  float: left;\n  margin: 11px 0 0 25px;\n\n  &:hover {\n    text-decoration: none;\n    color: $warning;\n  }\n}\n\n.al-skin-dropdown {\n  float: right;\n  margin-top: 14px;\n  margin-right: 26px;\n\n  .tpl-skin-panel {\n    max-height: 300px;\n    overflow-y: scroll;\n    overflow-x: hidden;\n  }\n}\n\n.icon-palette {\n  display: inline-block;\n  width: 14px;\n  height: 13px;\n  @include bg('theme/palette.png');\n  background-size: cover;\n}\n\n.search {\n  text-shadow: none;\n  color: $sidebar-text;\n  font-size: 13px;\n  line-height: 25px;\n  transition: all 0.5s ease;\n  white-space: nowrap;\n  overflow: hidden;\n  width: 162px;\n  float: left;\n  margin: 20px 0 0 30px;\n\n  label {\n    cursor: pointer;\n  }\n  i {\n    width: 16px;\n    display: inline-block;\n    cursor: pointer;\n    padding-left: 1px;\n    font-size: 16px;\n    margin-right: 13px;\n  }\n  input {\n    background: none;\n    border: none;\n    outline: none;\n    width: 120px;\n    padding: 0;\n    margin: 0 0 0 -3px;\n    height: 27px;\n  }\n}\n\n@media screen and (max-width: $resS) {\n  .search {\n    display: none;\n  }\n}\n\n@media screen and (max-width: $resXS) {\n  .page-top {\n    padding: 0 20px;\n  }\n}\n\n@media (max-width: $resXXS) {\n  .user-profile{\n    min-width: 136px;\n  }\n  a.refresh-data {\n    margin-right: 10px;\n  }\n  a.collapse-menu-link {\n    margin-left: 10px;\n  }\n\n  .al-skin-dropdown {\n    display: none;\n  }\n}\n\n.profile-toggle-link{\n  cursor: pointer;\n}\n"
  },
  {
    "path": "src/sass/theme/components/_progressRound.scss",
    "content": "svg.progress-bar-round circle {\n  transition: 0.5s;\n}\n.percentage {\n  font-size: 46px;\n}\n.loading {\n  font-size: 16px;\n}\n.progress-bar-round {\n  margin-top: 15px;\n}"
  },
  {
    "path": "src/sass/theme/components/_sidebar.scss",
    "content": "$sidebar-width: 180px;\n$angle-left: \"\\f100\";\n$angle-right: \"\\f101\";\n\n.al-sidebar {\n  width: $sidebar-width;\n  top: $top-height;\n  left: 0;\n  z-index: 904;\n  display: block;\n  min-height: 100%;\n  background-color: $sidebar;\n  height: 100%;\n  position: fixed;\n}\n\n.al-sidebar-list {\n  margin: 0;\n  padding: 18px 0 0 0;\n  list-style: none;\n}\n\n.al-sidebar-sublist .subitem-submenu-list {\n  padding-left: 15px;\n}\n\n.subitem-submenu-link {\n  .fa {\n    top: 7px;\n  }\n}\n\n.al-sidebar-list-item {\n  display: block;\n  position: relative;\n  float: none;\n  padding: 0;\n  &.selected:not(.with-sub-menu) {\n    background-color: $primary;\n    a.al-sidebar-list-link {\n      color: $sidebar-text;\n      b {\n        color: $sidebar-text;\n      }\n    }\n  }\n}\n\n.al-sidebar-list-item, .ba-sidebar-sublist-item {\n  &.ba-sidebar-item-expanded {\n    > .al-sidebar-list-link {\n      b {\n        transform: rotate(180deg);\n      }\n    }\n\n    > .al-sidebar-sublist {\n      display: block;\n    }\n  }\n}\n\na.al-sidebar-list-link {\n  display: block;\n  height: 42px;\n  padding-left: 18px;\n  text-shadow: none;\n  font-size: 13px;\n  text-decoration: none;\n  color: $sidebar-text;\n  line-height: 42px;\n  white-space: nowrap;\n  overflow: hidden;\n  cursor: pointer;\n  &:hover {\n    color: $primary;\n    b {\n      color: $primary;\n    }\n  }\n  i {\n    margin-right: 18px;\n    width: 16px;\n    display: inline-block;\n  }\n  b {\n    display: block;\n    opacity: 1;\n    width: 14px;\n    height: 14px;\n    line-height: 14px;\n    text-shadow: none;\n    font-size: 18px;\n    position: absolute;\n    right: 10px;\n    top: 12px;\n    padding: 0;\n    text-align: center;\n    color: $sidebar-text;\n    transition: transform 0.2s linear;\n  }\n}\n\n.slimScrollBar, .slimScrollRail {\n  border-radius: 0px !important;\n  width: 4px !important;\n  left: 176px;\n}\n\n@mixin layout-collapsed() {\n  .al-main {\n    margin-left: 50px;\n  }\n\n  .al-footer {\n    padding-left: 83px\n  }\n}\n\n@mixin default-sublist() {\n  padding: 0;\n  list-style: none;\n  position: relative;\n  display: none;\n  &.expanded {\n    display: block;\n  }\n  > li {\n    display: block;\n    float: none;\n    padding: 0;\n    border-bottom: none;\n    position: relative;\n    a {\n      display: block;\n      text-shadow: none;\n      font-size: 13px;\n      text-decoration: none;\n      color: $sidebar-text;\n      padding-left: 52px;\n      height: auto;\n      line-height: 29px;\n      &:hover {\n        color: $primary;\n      }\n    }\n    &.selected:not(.with-sub-menu) > a {\n      border: none;\n      background-color: $primary;\n      &:hover {\n        color: $sidebar-text;\n      }\n    }\n\n  }\n}\n\n.al-sidebar-sublist {\n  @include default-sublist();\n}\n\n.sidebar-hover-elem{\n  width: 4px;\n  background: $primary;\n  position: absolute;\n  top: -150px;\n  left: 176px;\n  transition: all 0.5s ease;\n  transition-property: top, height;\n  height: 42px;\n  display: block;\n}\n\n.sidebar-select-elem {\n  display: block;\n  top: 94px;\n}\n\n@mixin sidebar-collapsed() {\n  .al-sidebar {\n    width: 52px;\n\n    .fa-angle-down, .fa-angle-up {\n      opacity: 0;\n    }\n\n    .al-sidebar-sublist {\n      position: absolute;\n      top: -1px;\n      left: 52px;\n      @include bg-translucent-dark(0.8);\n      width: 0;\n      display: block;\n      overflow: hidden;\n      transition: width 0.5s ease;\n      &.slide-right {\n        width: 135px;\n      }\n      &:before {\n        display: none;\n      }\n      li {\n        &:before {\n          display: none;\n        }\n        a {\n          padding-left: 18px;\n          padding-right: 18px;\n          min-width: 130px;\n          white-space: nowrap;\n        }\n      }\n    }\n\n    .sidebar-hover-elem, .sidebar-select-elem {\n      left: 48px;\n    }\n  }\n}\n\n@mixin sidebar-hidden() {\n  .al-sidebar {\n    width: 0;\n  }\n  .sidebar-hover-elem, .sidebar-select-elem {\n    display: none;\n  }\n}\n\n@mixin sidebar-overlap() {\n  .al-sidebar {\n    width: $sidebar-width;\n    @include bg-translucent-dark(0.75);\n    transition: width 0.5s ease;\n\n    .fa-angle-down, .fa-angle-up {\n      opacity: 1;\n    }\n\n    .al-sidebar-sublist {\n      @include default-sublist();\n      top: auto;\n      left: auto;\n      background: none;\n      width: auto;\n      overflow: visible;\n      transition: none;\n    }\n\n    .sidebar-hover-elem, .sidebar-select-elem {\n      left: $sidebar-width - 4;\n      transition: left 0.5s ease;\n    }\n  }\n}\n\n@media (min-width: 1200px) {\n  .menu-collapsed {\n    @include layout-collapsed();\n  }\n}\n\n@media (min-width: $resXS + 1) {\n  .menu-collapsed {\n    @include sidebar-collapsed();\n  }\n}\n\n@media (max-width: 1200px) and (min-width: $resXS) {\n  @include layout-collapsed();\n}\n\n@media (max-width: 1200px) {\n  @include sidebar-overlap();\n}\n\n@media (max-width: $resXS) {\n  .menu-collapsed {\n    @include sidebar-hidden();\n  }\n  .al-main {\n    margin-left: 0;\n  }\n  .al-footer {\n    padding-left: 0;\n  }\n}"
  },
  {
    "path": "src/sass/theme/components/_widgets.scss",
    "content": ".widgets {\n  transform: translate3d(0, 0, 0);\n  backface-visibility: hidden;\n}\n\n.full-width {\n  margin: 0 -22px -16px;\n}\n\n.horizontal-scroll {\n  overflow-x: auto;\n  overflow-y: visible;\n}\n\n.panel-subtitle {\n  font-size: 15px;\n  margin-bottom: 16px;\n}\n\n.panel-nav {\n  position: absolute;\n  top: 12px;\n  right: 15px;\n  z-index: 2;\n\n  i {\n    cursor: pointer;\n    font-size: 14px;\n    color: #bfbfbf;\n    margin-left: 11px;\n    display: inline-block;\n\n    &.fa-minus {\n      margin-bottom: -1px;\n      vertical-align: bottom;\n    }\n\n    &:hover {\n      color: $default-text;\n    }\n  }\n}"
  },
  {
    "path": "src/sass/theme/conf/_mixins.scss",
    "content": "/// Slightly lighten a color\n/// @access public\n/// @param {Color} $color - color to tint\n/// @param {Number} $percentage - percentage of `$color` in returned color\n/// @return {Color}\n@function tint($color, $percentage) {\n  @return mix(white, $color, $percentage);\n}\n\n/// Slightly darken a color\n/// @access public\n/// @param {Color} $color - color to shade\n/// @param {Number} $percentage - percentage of `$color` in returned color\n/// @return {Color}\n@function shade($color, $percentage) {\n  @return mix(black, $color, $percentage);\n}\n\n@mixin scrollbars($size, $foreground-color, $background-color: mix($foreground-color, white, 50%)) {\n  ::-webkit-scrollbar {\n    width: $size;\n    height: $size;\n  }\n\n  ::-webkit-scrollbar-thumb {\n    background: $foreground-color;\n    cursor: pointer;\n  }\n\n  ::-webkit-scrollbar-track {\n    background: $background-color;\n  }\n\n  // For Internet Explorer\n  body {\n    scrollbar-face-color: $foreground-color;\n    scrollbar-track-color: $background-color;\n  }\n}\n\n@mixin bg-nr($relativeUrl) {\n  background: url($images-root + $relativeUrl) no-repeat 0 0;\n}\n@mixin bg($relativeUrl) {\n  background: url($images-root + $relativeUrl);\n}\n\n@mixin bg-image($relativeUrl) {\n  background-image: url($images-root + $relativeUrl);\n}\n\n@mixin main-background() {\n  $mainBgUrl: $images-root + 'blur-bg.jpg';\n\n  &::before {\n    content: '';\n    position: fixed;\n    width: 100%;\n    height: 100%;\n    top: 0;\n    left: 0;\n    background: url($mainBgUrl) no-repeat center center;\n    background-size: cover;\n    will-change: transform;\n    z-index: -1;\n  }\n}\n\n@mixin bg-translucent-dark($opacity) {\n  background: rgba(0, 0, 0, $opacity);\n}\n\n@mixin placeholderStyle($color, $opacity) {\n  &::-webkit-input-placeholder {\n    color: $color;\n    opacity: $opacity;\n  }\n  &:-moz-placeholder {\n    /* Firefox 18- */\n    color: $color;\n    opacity: $opacity;\n  }\n  &::-moz-placeholder {\n    /* Firefox 19+ */\n    color: $color;\n    opacity: $opacity;\n  }\n  &:-ms-input-placeholder {\n    color: $color;\n    opacity: $opacity;\n  }\n}\n\n@mixin overrideColors($color) {\n  p,\n  h1,h2,h3,h4,h5,h6,\n  .pie-chart-item,\n  .panel-heading>.dropdown .dropdown-toggle,\n  .panel-title,\n  ol.blur span,\n  ul.blur,\n  .popular-app-cost,\n  .popular-app-info,\n  .panel-title>.small,\n  .panel-title>.small>a,\n  .panel-title>a,\n  .panel-title>small,\n  .panel-title>small>a,\n  .traffic-text span,\n  .form-group label,\n  .help-block{\n    color: $color;\n  }\n  .feed-message .message-time, .text-muted {\n    color: darken($color, 20);\n  }\n}\n"
  },
  {
    "path": "src/sass/theme/conf/_variables.scss",
    "content": "$font-family: 'Roboto', sans-serif;\n\n$activelink: $primary;\n$hoverlink: $primary-dark;\n\n$resXXL: 1280px;\n$resXL: 1170px;\n$resL: 991px;\n$resM: 768px;\n$resS: 660px;\n$resXS: 500px;\n$resXXS: 435px;\n$resMin: 320px;\n\n$top-height: 66px;\n\n$small-panel-height: 114px;\n$xsmall-panel-height: 187px;\n$medium-panel-height: 400px;\n$extra-medium-panel-height: 550px;\n$large-panel-height: 974px;\n\n$default-animation-duration: 0.2s;\n$default-animation-style: ease-out;\n\n$assets-root: '../assets/';\n$images-root: $assets-root + 'img/';\n$fonts-root: $assets-root + 'fonts/';\n$font-thin: 100;\n$font-light: 300;\n$font-normal: 400;\n$font-bold: 700;\n$font-ultraBold: 900;\n\n$facebook-color: #3b5998;\n$twitter-color: #55acee;\n$google-color: #dd4b39;\n$linkedin-color: #0177B5;\n$github-color: #6b6b6b;\n$stackoverflow-color: #2F96E8;\n$dribble-color: #F26798;\n$behace-color: #0093FA;\n"
  },
  {
    "path": "src/sass/theme/conf/colorScheme/_blur.scss",
    "content": "$default: rgba(#000000, 0.2);\n$body-bg: #F0F3F4;\n$default-text: #ffffff;\n$help-text: #eeeeee;\n$label-text: #ffffff;\n\n$disabled: #dddddd;\n$disabled-bg: transparent;\n$border: #ffffff;\n$border-light: rgba(#ffffff, 0.2);\n$input-border: transparent;\n$input-background: rgba(#000000, 0.15);\n\n$sidebar: rgba(#000000, 0.5);\n$sidebar-text: #ffffff;\n$dropdown-text: #7d7d7d;\n$bootstrap-panel-text: #7d7d7d;\n$bootstrap-panel-bg: #ffffff;\n$mail-box: whitesmoke;\n$auth-panel-background: rgba(#000000, 0.55);\n$progress-background: rgba(#000000, 0.15);\n$progress-default: #ffffff;\n\n$primary: #209e91 !default;\n$info: #2dacd1 !default;\n$success: #90b900 !default;\n$warning: #dfb81c !default;\n$danger: #e85656 !default;\n\n$primary-light: tint($primary, 30%);\n$info-light: tint($info, 30%);\n$success-light: tint($success, 30%);\n$warning-light: tint($warning, 30%);\n$danger-light: tint($danger, 30%);\n\n$primary-dark: shade($primary, 15%);\n$info-dark: shade($info, 15%);\n$success-dark: shade($success, 15%);\n$warning-dark: shade($warning, 15%);\n$danger-dark: shade($danger, 15%);\n\n$primary-bg: tint($primary, 20%);\n$info-bg: tint($info, 20%);\n$success-bg: tint($success, 20%);\n$warning-bg: tint($warning, 20%);\n$danger-bg: tint($danger, 20%);\n"
  },
  {
    "path": "src/sass/theme/conf/colorScheme/_mint.scss",
    "content": "$default: #ffffff;\n$body-bg: #F0F3F4;\n$default-text: #666666;\n$help-text: #949494;\n$label-text: #ffffff;\n\n$disabled: #dddddd;\n$disabled-bg: tint($disabled, 15%);\n$border: #d6d6d6;\n$border-light: tint($border, 15%);\n$input-border: shade($border, 5%);\n$input-background: #ffffff;\n\n$sidebar: #1C2B36;\n$sidebar-text: #ffffff;\n$dropdown-text: #7d7d7d;\n$bootstrap-panel-text: #7d7d7d;\n$bootstrap-panel-bg: #ffffff;\n$mail-box: whitesmoke;\n$auth-panel-background: #ffffff;\n$progress-background: rgba(#000000, 0.07);\n$progress-default: rgba(#000000, 0.15);\n\n$primary: #209e91 !default;\n$info: #2dacd1 !default;\n$success: #90b900 !default;\n$warning: #dfb81c !default;\n$danger: #e85656 !default;\n\n$primary-light: tint($primary, 30%);\n$info-light: tint($info, 30%);\n$success-light: tint($success, 30%);\n$warning-light: tint($warning, 30%);\n$danger-light: tint($danger, 30%);\n\n$primary-dark: shade($primary, 15%);\n$info-dark: shade($info, 15%);\n$success-dark: shade($success, 15%);\n$warning-dark: shade($warning, 15%);\n$danger-dark: shade($danger, 15%);\n\n$primary-bg: tint($primary, 20%);\n$info-bg: tint($info, 20%);\n$success-bg: tint($success, 20%);\n$warning-bg: tint($warning, 20%);\n$danger-bg: tint($danger, 20%);\n"
  },
  {
    "path": "src/sass/theme/dashboard/_amChart.scss",
    "content": "#amchart {\n  width: 100%;\n  height: 350px;\n  margin-top: -20px;\n}"
  },
  {
    "path": "src/sass/theme/dashboard/_amChartMap.scss",
    "content": "#amChartMap {\n  width: 100%;\n  height: 315px;\n}"
  },
  {
    "path": "src/sass/theme/dashboard/_blurFeed.scss",
    "content": ".feed-panel .panel-body{\n  padding: 10px 0;\n}\n\n.feed-message {\n  $text-message-color: $default-text;\n  $video-message-color: $danger;\n  $image-message-color: $success;\n  $geo-message-color: $primary;\n  padding: 10px 0 ;\n  border-bottom: 1px solid rgba(0,0,0,0.12);\n  box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.12);\n  &:first-child {\n    padding-top: 0;\n  }\n\n  .message-icon {\n    cursor: pointer;\n    width: 60px;\n    height: 60px;\n    float: left;\n    position: relative;\n    margin-left: 20px;\n    > img, .media-icon {\n      border-radius: 30px;\n      width: 100%;\n      height: 100%;\n    }\n\n    .sub-photo-icon {\n      display: inline-block;\n      padding: 4px;\n      &:after {\n        content: '';\n        display: inline-block;\n        width: 22px;\n        height: 22px;\n        background-size: contain;\n      }\n      &.video-message {\n        background: $video-message-color;\n        &:after {\n          @include bg-image('theme/icon/feed/feed-video.svg');\n        }\n      }\n      &.image-message {\n        background: $image-message-color;\n        &:after {\n          width: 21px;\n          height: 21px;\n          margin-top: 1px;\n          margin-left: 1px;\n          border-radius: 5px;\n          @include bg-image('theme/icon/feed/feed-image.svg');\n        }\n      }\n      &.geo-message {\n        background: $geo-message-color;\n        &:after {\n          width: 22px;\n          height: 22px;\n          @include bg-image('theme/icon/feed/feed-location.svg');\n        }\n      }\n    }\n\n    .sub-photo-icon {\n      position: absolute;\n      width: 30px;\n      height: 30px;\n      right: -2px;\n      bottom: -4px;\n      border-radius: 15px;\n    }\n  }\n\n  .text-block {\n    cursor: pointer;\n    position: relative;\n    border-radius: 5px;\n    margin: 0 0 0 80px;\n    padding: 5px 20px;\n    color: $default-text;\n    width: 280px;\n    height: 70px;\n\n    &.text-message {\n      font-size: 12px;\n      width: inherit;\n      max-width: calc(100% - 80px);\n      height: inherit;\n      min-height: 60px;\n      &:before {\n        display: block;\n      }\n      .message-content {\n        font-size: 12px;\n        line-height: 15px;\n        font-weight: $font-light;\n      }\n    }\n    &.small-message {\n      width: 155px;\n      height: 145px;\n      .preview {\n        bottom: 0;\n        top: initial;\n        height: 87px;\n        img {\n          width: 155px;\n          height: 87px;\n          border-radius: 0 0 5px 5px;\n        }\n      }\n    }\n  }\n\n  .message-header {\n    font-size: 12px;\n    padding-bottom: 5px;\n    .author {\n      font-size: 13px;\n      padding-right: 5px;\n    }\n  }\n\n  .message-content {\n    font-size: 18px;\n    line-height: 20px;\n  }\n\n  .preview {\n    transition: 0s linear all;\n    display: inline-block;\n    img {\n      padding-top: 10px;\n      width: 100%;\n      height: auto;\n      float: none!important;\n    }\n  }\n\n  .message-time {\n    width: 100%;\n    left: 0;\n    font-size: 11px;\n    padding-top: 10px;\n    color: $help-text;\n    margin-bottom: 5px;\n    .post-time {\n      float: left;\n    }\n    .ago-time {\n      float: right;\n    }\n  }\n}\n\n\n\n.line-clamp\n{\n  display            : block;\n  display            : -webkit-box;\n  -webkit-box-orient : vertical;\n  position           : relative;\n\n  line-height        : 1.2;\n  overflow           : hidden;\n  text-overflow      : ellipsis;\n  padding            : 0 !important;\n}\n\n@media screen and (-webkit-min-device-pixel-ratio:0) {\n  .line-clamp:after\n  {\n    content    : '...';\n    text-align : right;\n    bottom     : 0;\n    right      : 0;\n    width      : 25%;\n    display    : block;\n    position   : absolute;\n    height     : calc(1em * 1.2);\n  }\n}\n\n\n@supports (-webkit-line-clamp: 1)\n{\n  .line-clamp:after\n  {\n    display : none !important;\n  }\n}\n.line-clamp-1\n{\n  -webkit-line-clamp : 1;\n  height             : calc(1em * 1.2 * 1);\n}\n.line-clamp-2\n{\n  -webkit-line-clamp : 2;\n  height             : calc(1em * 1.2 * 2);\n}\n.line-clamp-3\n{\n  -webkit-line-clamp : 3;\n  height             : calc(1em * 1.2 * 3);\n}\n.line-clamp-4\n{\n  -webkit-line-clamp : 4;\n  height             : calc(1em * 1.2 * 4);\n}\n.line-clamp-5\n{\n  -webkit-line-clamp : 5;\n  height             : calc(1em * 1.2 * 5);\n}\n"
  },
  {
    "path": "src/sass/theme/dashboard/_calendar.scss",
    "content": "div.blurCalendar{\n font-size: 12px;\n}\n.fc {\n  direction: ltr;\n  text-align: left;\n\n  button {\n    box-sizing: border-box;\n    margin: 0;\n    height: 2.1em;\n    padding: 0 .6em;\n    font-size: 1em;\n    white-space: nowrap;\n    cursor: pointer;\n    &::-moz-focus-inner {\n      margin: 0;\n      padding: 0;\n    }\n    .fc-icon {\n      position: relative;\n      top: 0;\n      margin: 0;\n    }\n  }\n\n  .fc-button-group {\n    & > * {\n      float: left;\n      margin: 0 0 0 -1px;\n    }\n    & > :first-child {\n      margin-left: 0;\n    }\n  }\n\n  hr {\n    height: 0;\n    margin: 0;\n    padding: 0 0 2px;\n    border-style: solid;\n    border-width: 1px 0;\n  }\n\n  table {\n    width: 100%;\n    table-layout: fixed;\n    border-collapse: collapse;\n    border-spacing: 0;\n    font-size: 1em;\n  }\n\n  th {\n    text-align: center;\n  }\n\n  th, td {\n    border: 1px solid rgba(255,255,255,0.3);\n    padding: 0;\n    vertical-align: top;\n  }\n\n  td.fc-today {\n    border-style: double;\n  }\n\n  .fc-row {\n    border: 0 solid;\n  }\n\n  .fc-toolbar {\n    & > * {\n      & > * {\n        float: left;\n        margin-left: .75em;\n      }\n      & > :first-child {\n        margin-left: 0;\n\n      }\n    }\n  }\n\n  .fc-axis {\n    vertical-align: middle;\n    padding: 0 4px;\n    white-space: nowrap;\n  }\n}\n\n.fc-rtl {\n  text-align: right;\n}\n\n.fc-unthemed {\n  th, td, hr, thead, tbody, .fc-row, .fc-popover {\n    border-color: rgba($border, 0.3);\n  }\n\n  .fc-popover {\n    background-color: $default;\n    border: 1px solid;\n\n    .fc-header {\n      background: #eee;\n\n      .fc-close {\n        color: #666666;\n        font-size: 25px;\n        margin-top: 4px;\n      }\n    }\n  }\n\n  hr {\n    background: #eee;\n  }\n\n  .fc-today {\n    background: rgba(255,255,255,0.15);\n  }\n}\n\n.fc-highlight {\n  background: rgba(255,255,255,0.25);\n  opacity: .3;\n}\n\n.fc-icon {\n  display: inline-block;\n  font-size: 2em;\n  font-family: \"Courier New\", Courier, monospace;\n}\n\n.fc-icon-left-single-arrow:after {\n  content: \"\\02039\";\n  font-weight: $font-bold;\n  font-size: 100%;\n}\n\n.fc-icon-right-single-arrow:after {\n  content: \"\\0203A\";\n  font-weight: $font-bold;\n  font-size: 100%;\n}\n\n.fc-icon-left-double-arrow:after {\n  content: \"\\000AB\";\n}\n\n.fc-icon-right-double-arrow:after {\n  content: \"\\000BB\";\n}\n\n.fc-icon-x:after {\n  content: \"\\000D7\";\n}\n\n.fc-state-default {\n  border: 1px solid;\n  outline: none;\n  background: #f5f5f5 repeat-x;\n  border-color: #e6e6e6 #e6e6e6 #bfbfbf;\n  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1);\n  color: #333333;\n\n  &.fc-corner-left {\n    border-top-left-radius: 0px;\n    border-bottom-left-radius: 0px;\n  }\n\n  &.fc-corner-right {\n    border-top-right-radius: 0px;\n    border-bottom-right-radius: 0px;\n  }\n}\n\n.fc-state-hover,\n.fc-state-down,\n.fc-state-active,\n.fc-state-disabled {\n  color: #333333;\n  background-color: $disabled-bg;\n}\n\n.fc-state-hover {\n  color: #333333;\n  text-decoration: none;\n  background-position: 0 -15px;\n  transition: background-position 0.1s linear;\n}\n\n.fc-state-down,\n.fc-state-active {\n  background: #cccccc none;\n}\n\n.fc-state-disabled {\n  cursor: default;\n  background-image: none;\n  opacity: 0.65;\n  box-shadow: none;\n}\n\n.fc-button-group {\n  display: inline-block;\n}\n\n.fc-popover {\n  position: absolute;\n\n  .fc-header {\n    padding: 2px 4px;\n  }\n\n  .fc-header .fc-title {\n    margin: 0 2px;\n  }\n\n  .fc-header .fc-close {\n    cursor: pointer;\n  }\n}\n\n.fc-ltr .fc-popover .fc-header .fc-title,\n.fc-rtl .fc-popover .fc-header .fc-close {\n  float: left;\n}\n\n.fc-rtl .fc-popover .fc-header .fc-title,\n.fc-ltr .fc-popover .fc-header .fc-close {\n  float: right;\n}\n\n.fc-popover > .ui-widget-header + .ui-widget-content {\n  border-top: 0;\n}\n\n.fc-clear {\n  clear: both;\n}\n\n.fc-bg,\n.fc-highlight-skeleton,\n.fc-helper-skeleton {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n}\n\n.fc-bg {\n  bottom: 0;\n}\n\n.fc-bg table {\n  height: 100%;\n}\n\n.fc-row {\n  position: relative;\n  table {\n    border-left: 0 hidden transparent;\n    border-right: 0 hidden transparent;\n    border-bottom: 0 hidden transparent;\n  }\n\n  &:first-child table {\n    border-top: 0 hidden transparent;\n  }\n\n  .fc-bg {\n    z-index: 1;\n  }\n\n  .fc-highlight-skeleton {\n    z-index: 2;\n    bottom: 0;\n    table {\n      height: 100%;\n    }\n    td {\n      border-color: transparent;\n    }\n  }\n  .fc-content-skeleton {\n    position: relative;\n    z-index: 3;\n    padding-bottom: 2px;\n  }\n\n  .fc-helper-skeleton {\n    z-index: 4;\n  }\n\n  .fc-content-skeleton td,\n  .fc-helper-skeleton td {\n    background: none;\n    border-color: transparent;\n    border-bottom: 0;\n  }\n\n  .fc-content-skeleton tbody td,\n  .fc-helper-skeleton tbody td {\n    border-top: 0;\n  }\n}\n\n.fc-scroller {\n  //overflow-y: scroll;\n  //overflow-x: hidden;\n  & > * {\n    //position: relative;\n    //width: 100%;\n    //overflow: hidden;\n    //height: 100%;\n  }\n}\n\n.fc-event {\n  position: relative;\n  display: block;\n  font-size: .85em;\n  line-height: 1.3;\n  border: 1px solid $primary;\n  background-color: $primary;\n  font-weight: $font-normal;\n}\n\n.fc-event,\n.fc-event:hover,\n.ui-widget .fc-event {\n  color: $label-text;\n  text-decoration: none;\n}\n\n.fc-event[href],\n.fc-event.fc-draggable {\n  cursor: pointer;\n}\n\n.fc-day-grid-event {\n  margin: 1px 2px 0;\n  padding: 0 1px;\n}\n\n.fc-ltr .fc-day-grid-event.fc-not-start,\n.fc-rtl .fc-day-grid-event.fc-not-end {\n  margin-left: 0;\n  border-left-width: 0;\n  padding-left: 1px;\n  border-top-left-radius: 0;\n  border-bottom-left-radius: 0;\n}\n\n.fc-ltr .fc-day-grid-event.fc-not-end,\n.fc-rtl .fc-day-grid-event.fc-not-start {\n  margin-right: 0;\n  border-right-width: 0;\n  padding-right: 1px;\n  border-top-right-radius: 0;\n  border-bottom-right-radius: 0;\n}\n\n.fc-day-grid-event > .fc-content {\n  white-space: nowrap;\n  overflow: hidden;\n}\n\n.fc-day-grid-event .fc-time {\n  font-weight: $font-bold;\n}\n\n.fc-day-grid-event .fc-resizer {\n  position: absolute;\n  top: 0;\n  bottom: 0;\n  width: 7px;\n}\n\n.fc-ltr .fc-day-grid-event .fc-resizer {\n  right: -3px;\n  cursor: e-resize;\n}\n\n.fc-rtl .fc-day-grid-event .fc-resizer {\n  left: -3px;\n  cursor: w-resize;\n}\n\na.fc-more {\n  margin: 1px 3px;\n  font-size: .85em;\n  cursor: pointer;\n  text-decoration: none;\n  &:hover {\n    text-decoration: underline;\n  }\n}\n\n.fc-limited {\n  display: none;\n}\n\n.fc-day-grid .fc-row {\n  z-index: 1;\n}\n\n.fc-more-popover {\n  z-index: 2;\n  width: 220px;\n\n  .fc-event-container {\n    padding: 10px;\n  }\n}\n\n.fc-toolbar {\n  text-align: center;\n  margin-bottom: 1em;\n  .fc-left {\n    float: left;\n  }\n  .fc-right {\n    float: right;\n  }\n  .fc-center {\n    display: inline-block;\n  }\n  h2 {\n    margin: 0;\n    font-size: 24px;\n    width: 100%;\n    line-height: 26px;\n  }\n  button {\n    position: relative;\n  }\n\n  .fc-state-hover, .ui-state-hover {\n    z-index: 2;\n  }\n\n  .fc-state-down {\n    z-index: 3;\n  }\n\n  .fc-state-active,\n  .ui-state-active {\n    z-index: 4;\n  }\n\n  button:focus {\n    z-index: 5;\n  }\n}\n\n.fc-view-container *,\n.fc-view-container *:before,\n.fc-view-container *:after {\n  box-sizing: content-box;\n}\n\n.fc-view,\n.fc-view > table {\n  position: relative;\n  z-index: 1;\n}\n\n.fc-basicWeek-view .fc-content-skeleton,\n.fc-basicDay-view .fc-content-skeleton {\n  padding-top: 1px;\n  padding-bottom: 1em;\n}\n\n.fc-basic-view tbody .fc-row {\n  min-height: 4em;\n  max-height: 70px;\n}\n\n.fc-row.fc-rigid {\n  overflow: hidden;\n}\n\n.fc-row.fc-rigid .fc-content-skeleton {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n}\n\n.fc-basic-view .fc-week-number,\n.fc-basic-view .fc-day-number {\n  padding: 0 2px;\n}\n\n.fc-basic-view td.fc-week-number span,\n.fc-basic-view td.fc-day-number {\n  padding-top: 2px;\n  padding-bottom: 2px;\n}\n\n.fc-basic-view .fc-week-number {\n  text-align: center;\n}\n\n.fc-basic-view .fc-week-number span {\n  display: inline-block;\n  min-width: 1.25em;\n}\n\n.fc-ltr .fc-basic-view .fc-day-number {\n  text-align: right;\n}\n\n.fc-rtl .fc-basic-view .fc-day-number {\n  text-align: left;\n}\n\n.fc-day-number.fc-other-month {\n  opacity: 0.3;\n}\n\n.fc-agenda-view .fc-day-grid {\n  position: relative;\n  z-index: 2;\n}\n\n.fc-agenda-view .fc-day-grid .fc-row {\n  min-height: 3em;\n}\n\n.fc-agenda-view .fc-day-grid .fc-row .fc-content-skeleton {\n  padding-top: 1px;\n  padding-bottom: 1em;\n}\n\n.fc-ltr .fc-axis {\n  text-align: right;\n}\n\n.fc-rtl .fc-axis {\n  text-align: left;\n}\n\n.ui-widget td.fc-axis {\n  font-weight: $font-normal;\n}\n\n.fc-time-grid-container,\n.fc-time-grid {\n  position: relative;\n  z-index: 1;\n}\n\n.fc-time-grid {\n  min-height: 100%;\n}\n\n.fc-time-grid table {\n  border: 0 hidden transparent;\n}\n\n.fc-time-grid > .fc-bg {\n  z-index: 1;\n}\n\n.fc-time-grid .fc-slats,\n.fc-time-grid > hr {\n  position: relative;\n  z-index: 2;\n}\n\n.fc-time-grid .fc-highlight-skeleton {\n  z-index: 3;\n}\n\n.fc-time-grid .fc-content-skeleton {\n  position: absolute;\n  z-index: 4;\n  top: 0;\n  left: 0;\n  right: 0;\n}\n\n.fc-time-grid > .fc-helper-skeleton {\n  z-index: 5;\n}\n\n.fc-slats {\n  td {\n    height: 1.5em;\n    border-bottom: 0;\n  }\n\n  .fc-minor td {\n    border-top-style: dotted;\n  }\n\n  .ui-widget-content {\n    background: none;\n  }\n}\n\n.fc-time-grid .fc-highlight-container {\n  position: relative;\n}\n\n.fc-time-grid .fc-highlight {\n  position: absolute;\n  left: 0;\n  right: 0;\n}\n\n.fc-time-grid .fc-event-container {\n  position: relative;\n}\n\n.fc-ltr .fc-time-grid .fc-event-container {\n  margin: 0 2.5% 0 2px;\n}\n\n.fc-rtl .fc-time-grid .fc-event-container {\n  margin: 0 2px 0 2.5%;\n}\n\n.fc-time-grid .fc-event {\n  position: absolute;\n  z-index: 1;\n}\n\n.fc-time-grid-event {\n  overflow: hidden;\n\n  &.fc-not-start {\n    border-top-width: 0;\n    padding-top: 1px;\n    border-top-left-radius: 0;\n    border-top-right-radius: 0;\n  }\n\n  &.fc-not-end {\n    border-bottom-width: 0;\n    padding-bottom: 1px;\n    border-bottom-left-radius: 0;\n    border-bottom-right-radius: 0;\n  }\n\n  & > .fc-content {\n    position: relative;\n    z-index: 2;\n  }\n\n  .fc-title {\n    padding: 0 1px;\n  }\n\n  .fc-time {\n    padding: 0 1px;\n    font-size: .85em;\n    white-space: nowrap;\n  }\n\n  .fc-bg {\n    z-index: 1;\n    background: $default;\n    opacity: .25;\n    filter: alpha(opacity=25);\n  }\n\n  &.fc-short {\n    .fc-content {\n      white-space: nowrap;\n    }\n\n    .fc-time {\n      display: inline-block;\n      vertical-align: top;\n\n      span {\n        display: none;\n      }\n\n      &:before {\n        content: attr(data-start);\n      }\n\n      &:after {\n        content: \"\\000A0-\\000A0\";\n      }\n    }\n\n    .fc-title {\n      display: inline-block;\n      vertical-align: top;\n      font-size: .85em;\n      padding: 0;\n    }\n  }\n\n  .fc-resizer {\n    position: absolute;\n    z-index: 3;\n    left: 0;\n    right: 0;\n    bottom: 0;\n    height: 8px;\n    overflow: hidden;\n    line-height: 8px;\n    font-size: 11px;\n    font-family: monospace;\n    text-align: center;\n    cursor: s-resize;\n    &:after {\n      content: \"=\";\n    }\n  }\n}\n\n.fc-day-grid-container.fc-scroller  {\n  height: auto!important;\n}\n\n.calendar-panel.panel .panel-body{\n  padding: 0;\n}\n\n.fc-body > tr > .fc-widget-content{\n  border: none;\n}\n\n.fc-head{\n  color: $label-text;\n  background-color: $primary;\n  td, th{\n    border:none;\n  }\n  div.fc-widget-header{\n    padding: 5px 0;\n  }\n}\n\n.fc-today-button, .fc-month-button, .fc-agendaWeek-button, .fc-agendaDay-button  {\n  display: none;\n}\n.blurCalendar{\n  margin-top: 15px;\n}\n.fc-prev-button, .fc-next-button{\n  position: absolute;\n  background: transparent;\n  box-shadow: none;\n  border: none;\n  color: $default-text;\n}\n.fc-next-button {\n  left: 30px;\n}\n.fc-prev-button {\n}\n.fc-day-number{\n  color: $default-text;\n  opacity: 0.9;\n}\n"
  },
  {
    "path": "src/sass/theme/dashboard/_pieCharts.scss",
    "content": ".pie-charts {\n  color: $default-text;\n\n  .pie-chart-item-container {\n    position: relative;\n    padding: 0 15px;\n    float: left;\n    box-sizing: border-box;\n\n    .panel {\n      height: $small-panel-height;\n    }\n  }\n  @media screen and (min-width: 1325px) {\n    .pie-chart-item-container {\n      width: 25%;\n    }\n  }\n  @media screen and (min-width: 700px) and (max-width: 1325px)  {\n    .pie-chart-item-container {\n      width: 50%;\n    }\n  }\n  @media screen and (max-width: 700px)  {\n    .pie-chart-item-container {\n      width: 100%;\n    }\n  }\n\n  .pie-chart-item {\n    position: relative;\n    .chart-icon {\n      position: absolute;\n      right: 0px;\n      top: 3px;\n      z-index: -1;\n    }\n  }\n  @media screen and\n    (min-width: 1325px) and (max-width: 1650px),\n    (min-width: 700px) and (max-width: 830px),\n    (max-width: 400px) {\n    .chart-icon {\n      display: none;\n    }\n  }\n\n  .chart {\n    position: relative;\n    display: inline-block;\n    width: 84px;\n    height: 84px;\n    text-align: center;\n    float: left;\n  }\n  .chart canvas {\n    position: absolute;\n    top: 0;\n    left: 0;\n  }\n  .percent {\n    display: inline-block;\n    line-height: 84px;\n    z-index: 2;\n    font-size: 16px;\n  }\n  .percent:after {\n    content: '%';\n    margin-left: 0.1em;\n    font-size: .8em;\n  }\n  .description {\n    display: inline-block;\n    padding: 20px 0 0 20px;\n    font-size: 18px;\n    opacity: 0.9;\n    .description-stats {\n      padding-top: 8px;\n      font-size: 24px;\n    }\n  }\n  .angular {\n    margin-top: 100px;\n  }\n  .angular .chart {\n    margin-top: 0;\n  }\n}"
  },
  {
    "path": "src/sass/theme/dashboard/_popularApp.scss",
    "content": ".panel.popular-app {\n  &>.panel-body {\n    padding: 0;\n  }\n\n  .popular-app-img-container {\n    position: relative;\n    padding: 30px 0;\n    height: 260px;\n    border-top-right-radius: 5px;\n    border-top-left-radius: 5px;\n    .popular-app-img {\n      width: 260px;\n      position: absolute;\n      transform: translateY(-50%) translate(-50%);\n      top: 50%;\n      left: 50%;\n\n      .logo-text {\n        display: inline-block;\n        margin: 10px;\n        font-size: 26px;\n        color: $default-text;\n      }\n    }\n  }\n  .popular-app-cost {\n    font-size: 20px;\n    padding: 20px 22px;\n    border-bottom: 1px solid $border-light;\n    border-top: 1px solid $border-light;\n  }\n  .popular-app-info {\n    padding: 20px 22px;\n    font-size: 20px;\n    text-align: center;\n    .info-label {\n      font-size: 12px;\n    }\n  }\n  .row {\n    margin: 0;\n    > div {\n      padding: 0;\n    }\n  }\n}\n\n.blur-theme .panel.popular-app .popular-app-img-container {\n  background: rgba(0, 0, 0, 0.5);\n}"
  },
  {
    "path": "src/sass/theme/dashboard/_timeline.scss",
    "content": "#cd-timeline {\n  margin-top: 15px;\n  position: relative;\n\n  &:before {\n    content: '';\n    position: absolute;\n    top: 0;\n    left: 18px;\n    height: 100%;\n    width: 4px;\n    background: #d7e4ed;\n  }\n}\n\n.cd-timeline-block {\n  position: relative;\n  margin: 2em 0;\n\n  &:after {\n    content: \"\";\n    display: table;\n    clear: both;\n  }\n\n  &:first-child {\n    margin-top: 0;\n  }\n\n  &:last-child {\n    margin-bottom: 0;\n  }\n}\n\n.cd-timeline-img {\n  position: absolute;\n  top: 0;\n  left: 0;\n  width: 40px;\n  height: 40px;\n  border-radius: 50%;\n}\n\n@media only screen and (min-width: $resXL) {\n  .cd-timeline-img {\n    width: 60px;\n    height: 60px;\n    left: 50%;\n    margin-left: -30px;\n    /* Force Hardware Acceleration in WebKit */\n    -webkit-transform: translateZ(0);\n    -webkit-backface-visibility: hidden;\n  }\n  .cssanimations .cd-timeline-img.is-hidden {\n    visibility: hidden;\n  }\n  .cssanimations .cd-timeline-img.bounce-in {\n    visibility: visible;\n    animation: cd-bounce-1 0.6s;\n  }\n}\n\n@keyframes cd-bounce-1 {\n  0% {\n    opacity: 0;\n    transform: scale(0.5);\n  }\n\n  60% {\n    opacity: 1;\n    transform: scale(1.2);\n  }\n\n  100% {\n    transform: scale(1);\n  }\n}\n\n.cd-timeline-content {\n  position: relative;\n  margin-left: 60px;\n  background: $primary;\n  padding: 1em;\n  border-radius: 5px;\n  &:after {\n    content: \"\";\n    display: table;\n    clear: both;\n  }\n\n  h2 {\n    color: #303e49;\n    margin: 0;\n    font-size: 18px;\n  }\n\n  .cd-read-more, .cd-date {\n    font-size: 13px;\n    display: inline-block;\n  }\n\n  p {\n    font-size: 13px;\n    margin-bottom: 0;\n  }\n\n  .cd-read-more {\n    float: right;\n    padding: .8em 1em;\n    background: #acb7c0;\n    color: white;\n    border-radius: 0.25em;\n  }\n\n  .cd-date {\n    float: left;\n    padding: .8em 0;\n    opacity: .7;\n  }\n\n  &:before {\n    content: '';\n    position: absolute;\n    top: 16px;\n    right: 100%;\n    height: 0;\n    width: 0;\n    border: 7px solid transparent;\n    border-right: 7px solid white;\n  }\n}\n\n@mixin cd-timeline-color($color) {\n  background: $color;\n}\n\n@mixin cd-timeline-left-color($color) {\n  &:before {\n    border-left-color: $color;\n  }\n}\n\n@mixin cd-timeline-right-color($color) {\n  &::before {\n    border-right-color: $color;\n  }\n}\n\n.cd-timeline-content.warning {\n  @include cd-timeline-color(rgba($warning, 0.2));\n}\n.cd-timeline-content.danger {\n  @include cd-timeline-color(rgba($danger, 0.2));\n}\n.cd-timeline-content.primary {\n  @include cd-timeline-color(rgba($primary, 0.2));\n}\n\n.no-touch .cd-timeline-content .cd-read-more:hover {\n  background-color: $border;\n}\n\n@media only screen and (min-width: $resXL) {\n\n  #cd-timeline::before {\n    left: 50%;\n    margin-left: -2px;\n  }\n\n  .cd-timeline-block {\n    margin: 4em 0;\n    &:first-child {\n      margin-top: 0;\n    }\n    &:last-child {\n      margin-bottom: 0;\n    }\n  }\n\n  .cd-timeline-content {\n    margin-left: 0;\n    padding: 1.6em;\n    width: 42%;\n    &::before {\n      top: 24px;\n      left: 100%;\n      border-color: transparent;\n      border-left-color: white;\n    }\n\n    .cd-read-more {\n      float: left;\n    }\n    .cd-date {\n      position: absolute;\n      width: 100%;\n      left: 137%;\n      top: 6px;\n      font-size: 16px;\n    }\n  }\n\n  .cd-timeline-content.warning {\n    @include cd-timeline-left-color(rgba($warning, 0.2));\n  }\n  .cd-timeline-content.danger {\n    @include cd-timeline-left-color(rgba($danger, 0.2));\n  }\n  .cd-timeline-content.primary {\n    @include cd-timeline-left-color(rgba($primary, 0.2));\n  }\n\n  .cd-timeline-block:nth-child(even) .cd-timeline-content {\n    float: right;\n  }\n\n  .cd-timeline-block:nth-child(even) {\n    .cd-timeline-content {\n      &::before {\n        top: 24px;\n        left: auto;\n        right: 100%;\n        border-color: transparent;\n        border-right-color: white;\n      }\n\n      &.cd-timeline-content.warning {\n        @include cd-timeline-right-color(rgba($warning, 0.2));\n      }\n      &.cd-timeline-content.danger {\n        @include cd-timeline-right-color(rgba($danger, 0.2));\n      }\n      &.cd-timeline-content.primary {\n        @include cd-timeline-right-color(rgba($primary, 0.2));\n      }\n    }\n  }\n\n  .cd-timeline-block:nth-child(even) {\n    .cd-timeline-content {\n      .cd-read-more {\n        float: right;\n      }\n      .cd-date {\n        left: auto;\n        right: 137%;\n        text-align: right;\n      }\n    }\n  }\n\n  .cssanimations .cd-timeline-content {\n    &.is-hidden {\n      visibility: hidden;\n    }\n    &.bounce-in {\n      visibility: visible;\n      animation: cd-bounce-2 0.6s;\n    }\n  }\n}\n\n@media only screen and (min-width: $resXL) {\n  /* inverse bounce effect on even content blocks */\n  .cssanimations .cd-timeline-block:nth-child(even) .cd-timeline-content.bounce-in {\n    animation: cd-bounce-2-inverse 0.6s;\n  }\n}\n\n@keyframes cd-bounce-2 {\n  0% {\n    opacity: 0;\n    transform: translateX(-100px);\n  }\n\n  60% {\n    opacity: 1;\n    transform: translateX(20px);\n  }\n\n  100% {\n    transform: translateX(0);\n  }\n}\n\n@keyframes cd-bounce-2-inverse {\n  0% {\n    opacity: 0;\n    transform: translateX(100px);\n  }\n\n  60% {\n    opacity: 1;\n    transform: translateX(-20px);\n  }\n\n  100% {\n    transform: translateX(0);\n  }\n}"
  },
  {
    "path": "src/sass/theme/dashboard/_todo.scss",
    "content": "input.task-todo {\n  margin-bottom: 8px;\n}\n\nul.todo-list {\n  margin: 0;\n  padding: 0;\n  .placeholder, .ui-sortable-placeholder {\n  }\n  li {\n    margin: 0 0 -1px 0;\n    padding: 12px;\n    list-style: none;\n    position: relative;\n    border: 1px solid $input-border;\n    cursor: grab;\n    height: 42px;\n    i.remove-todo {\n      position: absolute;\n      cursor: pointer;\n      top: 0px;\n      right: 12px;\n      font-size: 32px;\n      transition: color 0.2s;\n      color: rgba($input-border, 0.5);\n      visibility: hidden;\n      line-height: 42px;\n      &:hover {\n        color: $input-border;\n      }\n    }\n    &:hover {\n      i.remove-todo {\n        visibility: visible;\n      }\n    }\n\n    &.checked {\n      .todo-text {\n        color: $default-text;\n      }\n      &:before {\n        background: $input-border !important;\n      }\n    }\n\n    i.mark {\n      display: block;\n      position: absolute;\n      top: -1px;\n      left: -1px;\n      height: 42px;\n      min-width: 4px;\n      background: $input-border;\n      cursor: pointer;\n      transition: min-width 0.3s ease-out;\n    }\n\n    &.active {\n      i.mark {\n        min-width: 40px;\n      }\n      label.todo-checkbox > span {\n        &:before {\n          color: white;\n          content: '\\f10c';\n          margin-right: 20px;\n          transition: margin-right 0.1s ease-out;\n          transition-delay: 0.2s;\n          float: none;\n        }\n      }\n      label.todo-checkbox > input:checked + span:before {\n        content: '\\f00c';\n      }\n    }\n  }\n}\n\nlabel.todo-checkbox {\n  width: 100%;\n  padding-right: 25px;\n  min-height: 16px;\n  cursor: pointer;\n  > span {\n    white-space: nowrap;\n    height: 16px;\n    &:before {\n      border: none;\n      color: $help-text;\n      transition: all 0.15s ease-out;\n    }\n  }\n}\n\n.add-item-icon {\n  display: none;\n}\n\n.task-todo-container.transparent {\n  .todo-panel.panel {\n    color: white;\n    opacity: 0.9;\n  }\n  input.task-todo {\n    color: white;\n    width: calc(100% - 25px);\n    border-radius: 0;\n    border: none;\n    background: transparent;\n    &:focus {\n      outline: none;\n      background-color: transparent;\n      border-bottom: 1px solid rgba(0, 0, 0, 0.12);\n      box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.12);\n    }\n  }\n  .add-item-icon {\n    display: block;\n    float: right;\n    margin-top: -45px;\n    margin-right: 5px;\n    font-size: 25px;\n    cursor: pointer;\n  }\n\n  ul.todo-list {\n    li {\n      margin: 0;\n      border: none;\n      font-weight: $font-light;\n\n      .blur-container{\n        height: 40px;\n        position: absolute;\n        width: calc(100% + 40px);;\n        top: 0;\n        left: -25px;\n        overflow-y: hidden;\n      }\n      &:hover{\n        .blur-container{\n          box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.12);\n        }\n        .blur-box {\n          height: 100%;\n          background: linear-gradient(to right, rgba(255,255,255,0.3) 0%,rgba(255,255,255,0) 100%);\n          -webkit-filter: blur(3px);\n        }\n      }\n      i.remove-todo {\n        color: white;\n        opacity: 0.4;\n        &:hover {\n          color: white;\n          opacity: 0.95;\n        }\n      }\n      i.mark {\n        min-width: 40px;\n        display: none;\n      }\n      label.todo-checkbox > span {\n        &:before {\n          position: absolute;\n          color: $default-text;\n          content: '\\f10c';\n          float: none;\n          margin-right: 6px;\n          transition: none;\n        }\n      }\n      &.checked {\n        label.todo-checkbox > span {\n          &:before {\n            content: '\\f00c';\n          }\n        }\n      }\n    }\n  }\n\n  .box-shadow-border{\n    border-bottom: 1px solid rgba(0, 0, 0, 0.12);\n    box-shadow: 0px 1px 0px 0px rgba(255, 255, 255, 0.12);\n    width: calc(100% + 44px);\n    margin-left: -22px;\n  }\n\n}"
  },
  {
    "path": "src/sass/theme/dashboard/_trafficChart.scss",
    "content": ".channels-block {\n  width: 100%;\n  position: relative;\n}\n\n.channels-block.transparent {\n  .traffic-chart canvas{\n    border: 10px solid rgba(0,0,0,0.35);\n    box-shadow: 0 0 5px 0 rgb(0, 0, 0) inset;\n    border-radius: 150px;\n  }\n  .chart-bg {\n    background-color: rgba(0,0,0,0.35);\n  }\n}\n\n.chart-bg {\n  position: absolute;\n  width: 180px;\n  height: 180px;\n  left: 60px;\n  top: 60px;\n  border-radius: 100px;\n  background-color: transparent;\n}\n\n.channels-info {\n  display: inline-block;\n  width: calc(100% - 370px);\n  margin-left: 70px;\n  margin-top: -20px;\n}\n.small-container {\n  .channels-info {\n    display: none;\n  }\n}\n\n.channels-info-item {\n  p {\n    margin-bottom: 9px;\n    font-size: 18px;\n    opacity: 0.9;\n  }\n  .channel-number{\n    display: inline-block;\n    float: right;\n  }\n}\n\n.traffic-chart {\n  width: 300px;\n  position: relative;\n  min-height: 300px;\n  float: left;\n}\n\n.traffic-legend {\n  display: inline-block;\n  padding: 70px 0 0 0px;\n  width: 160px;\n}\n\n.traffic-legend ul.doughnut-legend {\n  li {\n    list-style: none;\n    font-size: 12px;\n    margin-bottom: 12px;\n    line-height: 16px;\n    position: relative;\n    white-space: nowrap;\n    overflow: hidden;\n    text-overflow: ellipsis;\n    width: 120px;\n    span {\n      float: left;\n      display: inline-block;\n      width: 16px;\n      height: 16px;\n      margin-right: 10px;\n    }\n  }\n}\n\n.canvas-holder {\n  display: inline-block;\n  width: 300px;\n  height: 300px;\n  position: relative;\n  float: left;\n}\n\n.traffic-text {\n  width: 100%;\n  height: 40px;\n  position: absolute;\n  top: 50%;\n  left: 0;\n  margin-top: -24px;\n  line-height: 24px;\n  text-align: center;\n  font-size: 18px;\n  span {\n    display: block;\n    font-size: 18px;\n    color: $default-text;\n  }\n}\n\n.channel-change {\n  display: block;\n  margin-bottom: 12px;\n}\n\n.channel-progress {\n  height: 4px;\n  border-radius: 0;\n  width: 100%;\n  margin-bottom: 0;\n  background-color: $progress-background;\n  box-shadow: none;\n  .progress-bar{\n    height: 4px;\n    background-color: $progress-default;\n    box-shadow: none;\n  }\n}\n\n.legend-color{\n  width: 30px;\n  height: 30px;\n  box-shadow:0 2px 2px 0 rgba(0, 0, 0, 0.25);\n  position: relative;\n  top: 27px;\n  border-radius: 15px;\n  left: -45px;\n}\n\n@media (max-width: $resM) {\n  div.channels-info{\n    display: block;\n    width: calc(100% - 88px);\n    margin-top: -65px;\n    margin-bottom: 10px;\n  }\n  .panel.medium-panel.traffic-panel{\n    height: auto;\n  }\n  .traffic-chart{\n    position: inherit;\n    float: none;\n    margin: 0 auto;\n  }\n  .chart-bg{\n    left: calc(50% - 90px);\n  }\n}\n\n@media (max-width: 1465px) and (min-width: 1199px){\n  .channels-info{\n    display: none;\n  }\n  .traffic-chart{\n    position: inherit;\n    float: none;\n    margin: 0 auto;\n  }\n  .chart-bg{\n    left: calc(50% - 90px);\n  }\n}\n\n@media (max-width: 380px){\n  .traffic-chart{\n    width: 240px;\n  }\n  .canvas-holder{\n    width: 240px;\n    height: 240px;\n  }\n  .chart-bg {\n    top: 30px;\n  }\n}\n@media (max-width: 320px){\n  .chart-bg {\n    left: 50px;\n    top: 50px;\n    width: 142px;\n    height: 142px;\n  }\n}\n"
  },
  {
    "path": "src/sass/theme/dashboard/_weather.scss",
    "content": ".weather-wrapper {\n\n  height: 100%;\n\n  .weather-main-info {\n    min-height: 140px;\n\n    div i {\n      display: inline-block;\n      width: 48px;\n      text-align: center;\n    }\n\n    .city-date {\n      display: flex;\n      flex-wrap: wrap;\n      justify-content: space-between;\n    }\n  }\n\n  .temp-by-time {\n    height: calc(100% - 210px);\n  }\n\n  .select-day {\n    display: table;\n    table-layout: fixed;\n    width: 100%;\n    height: 70px;\n\n    .day {\n      display: table-cell;\n      line-height: 1;\n      text-align: center;\n      cursor: pointer;\n\n      i.weatherIcon {\n        transition: color 0.5s ease;\n      }\n\n      .select-day-info {\n        vertical-align: super;\n      }\n    }\n\n    .day:hover {\n      i.weatherIcon {\n        color: #40BDE8;\n      }\n    }\n  }\n\n  .rightHeading {\n    display: block;\n    float: right;\n  }\n\n  .weather-info {\n    display: inline-block;\n    vertical-align: super;\n  }\n\n  .font-x1dot25 {\n    font-size: 1.5em;\n  }\n\n  .font-x1dot5 {\n    font-size: 1.5em;\n  }\n\n  .font-x2 {\n    font-size: 2em;\n  }\n\n  .font-x3 {\n    font-size: 3em;\n  }\n\n}\n\n\n"
  }
]