diff --git a/res/app/device-list/device-column-service.js b/res/app/device-list/column/device-column-service.js similarity index 100% rename from res/app/device-list/device-column-service.js rename to res/app/device-list/column/device-column-service.js diff --git a/res/app/device-list/column/index.js b/res/app/device-list/column/index.js new file mode 100644 index 00000000..8f4323a5 --- /dev/null +++ b/res/app/device-list/column/index.js @@ -0,0 +1,4 @@ +module.exports = angular.module('stf.device-list.column', [ + require('gettext').name +]) + .service('DeviceColumnService', require('./device-column-service')) diff --git a/res/app/device-list/customize/device-list-customize.css b/res/app/device-list/customize/device-list-customize.css new file mode 100644 index 00000000..973abca5 --- /dev/null +++ b/res/app/device-list/customize/device-list-customize.css @@ -0,0 +1,15 @@ +.stf-device-list .stf-device-details-customize { + white-space: nowrap; + padding: 10px; + padding-bottom: 0; + column-count: 2; + -moz-column-count: 2; + -webkit-column-count: 2; + max-width: 800px; +} + +.stf-device-list .stf-device-details-customize .radio, +.stf-device-list .stf-device-details-customize .checkbox { + margin: 0; + margin-bottom: 10px; +} diff --git a/res/app/device-list/customize/index.js b/res/app/device-list/customize/index.js new file mode 100644 index 00000000..e82677e0 --- /dev/null +++ b/res/app/device-list/customize/index.js @@ -0,0 +1,4 @@ +require('./device-list-customize.css') + +module.exports = angular.module('stf.device-list.customize', [ +]) diff --git a/res/app/device-list/details/battery-level.jade b/res/app/device-list/details/battery-level.jade deleted file mode 100644 index 6ebd1a2b..00000000 --- a/res/app/device-list/details/battery-level.jade +++ /dev/null @@ -1,2 +0,0 @@ -progressbar(value='device.battery.level', max='device.battery.scale', type='success') - span {{ device.enhancedBatteryPercentage }} diff --git a/res/app/device-list/device-list-details-directive.js b/res/app/device-list/details/device-list-details-directive.js similarity index 99% rename from res/app/device-list/device-list-details-directive.js rename to res/app/device-list/details/device-list-details-directive.js index 78cea979..b3a172c6 100644 --- a/res/app/device-list/device-list-details-directive.js +++ b/res/app/device-list/details/device-list-details-directive.js @@ -1,4 +1,4 @@ -var patchArray = require('./util/patch-array') +var patchArray = require('./../util/patch-array') module.exports = function DeviceListDetailsDirective( $filter diff --git a/res/app/device-list/details/device-list-details.css b/res/app/device-list/details/device-list-details.css new file mode 100644 index 00000000..48a5208a --- /dev/null +++ b/res/app/device-list/details/device-list-details.css @@ -0,0 +1,13 @@ +.device-list-details-content table { + white-space: nowrap; +} + +.device-list-details-content .device-list-product, +.device-list-details-content .device-list-carrier { + white-space: normal; +} + +.device-list-details-content .progress { + margin-bottom: 0 !important; + height: 17px !important; +} diff --git a/res/app/device-list/device-list-details.jade b/res/app/device-list/details/device-list-details.jade similarity index 100% rename from res/app/device-list/device-list-details.jade rename to res/app/device-list/details/device-list-details.jade diff --git a/res/app/device-list/details/index.js b/res/app/device-list/details/index.js new file mode 100644 index 00000000..100fcc17 --- /dev/null +++ b/res/app/device-list/details/index.js @@ -0,0 +1,11 @@ +require('./device-list-details.css') + +module.exports = angular.module('stf.device-list.details', [ + require('stf/device').name, + require('stf/user/group').name, + require('stf/common-ui').name, + require('stf/admin-mode').name, + require('../column').name, + require('../empty').name +]) + .directive('deviceListDetails', require('./device-list-details-directive')) diff --git a/res/app/device-list/details/model.jade b/res/app/device-list/details/model.jade deleted file mode 100644 index fa415c4c..00000000 --- a/res/app/device-list/details/model.jade +++ /dev/null @@ -1,6 +0,0 @@ -.device-list-product - span.device-small-image - img(ng-src='{{device.enhancedImage24}}') - - span(ng-if='device.state !== "using"') {{device.enhancedModel}} - a(ng-if='device.state === "using"', ng-href='/#!/control/{{ device.serial }}') {{device.enhancedModel}} diff --git a/res/app/device-list/details/status.jade b/res/app/device-list/details/status.jade deleted file mode 100644 index 84281b93..00000000 --- a/res/app/device-list/details/status.jade +++ /dev/null @@ -1,2 +0,0 @@ -button(ng-class='device.enhancedButtonClass', ng-dblclick='tryToKick(device)', - ng-click='device.usable && toggle(device)').btn.btn-xs.device-status {{device.enhancedStateAction | translate }} diff --git a/res/app/device-list/details/user.jade b/res/app/device-list/details/user.jade deleted file mode 100644 index b7a8653d..00000000 --- a/res/app/device-list/details/user.jade +++ /dev/null @@ -1,2 +0,0 @@ -a(ng-if='device.owner', ng-href='{{ device.enhancedUserContactUrl }}', role='button', target='_href') {{ device.enhancedUserName }} - a(ng-if='!device.owner') - diff --git a/res/app/device-list/device-list.css b/res/app/device-list/device-list.css index 5b130120..5ec6c3db 100644 --- a/res/app/device-list/device-list.css +++ b/res/app/device-list/device-list.css @@ -35,101 +35,11 @@ margin-top: 4px; } -.stf-device-list .device-search { - width: 20em; - -webkit-transition: none; - transition: none; -} - -.stf-device-list .filter-out { - display: none; -} - -.stf-device-list .device-search:focus { - /*width: 25em;*/ -} - -ul.devices-icon-view { - margin: 0; - display: inline-block; - list-style-type: none; - /*font-weight: 300;*/ - font-family: 'HelveticaNeue-UltraLight', Helvetica, Arial, sans-serif; -} - -ul.devices-icon-view li { - width: 126px; - height: 170px; - background: white; - -webkit-border-radius: 8px; - -moz-border-radius: 8px; - border-radius: 8px; - border: 1px solid #e6e6e6; - float: left; - clear: none; - margin: 6px; - text-align: center; -} - -ul.devices-icon-view li:hover { - background-color: #fbfbfb; - -} - -ul.devices-icon-view .device-photo-small { - margin-top: 8px; - margin-bottom: 10px; -} - -ul.devices-icon-view .device-photo-small img { - width: auto; - height: 90px; - max-width: 95%; /* TODO: Fix this with a new container */ - /*box-shadow: 0 10px 5px rgba(255, 255, 255, 1);*/ -} - -ul.devices-icon-view .device-name-bigtext { - display: inline-block; - width: 80%; -} - -ul.devices-icon-view .device-name { - color: #3FA9F5; - font-size: 16px; - text-overflow: ellipsis; - overflow: hidden; - white-space: nowrap; -} - -ul.devices-icon-view .device-product { - font-size: 16px; - color: #555; -} - -ul.devices-icon-view .device-status-text { - -} - img.device-icon-smallest { width: 12px; margin-right: 6px; } -ul.devices-icon-view .device-is-busy { - /*box-shadow: inset 0 0 10px #e6e6e6;*/ - /*background: #e6e6e6 !important;*/ - opacity: 0.7; - cursor: not-allowed; -} - -ul.devices-icon-view .device-is-busy .btn { - cursor: not-allowed; -} - -ul.devices-icon-view .device-is-busy .device-photo-small img { - opacity: 0.5; -} - .stf-device-list .device-small-image { margin-right: 8px; width: 13px; @@ -154,52 +64,6 @@ ul.devices-icon-view .device-is-busy .device-photo-small img { opacity: 1; } -.device-list-details-content table { - white-space: nowrap; -} - -.device-list-details-content .device-list-product, -.device-list-details-content .device-list-carrier { - white-space: normal; -} - -.device-list-details-content .progress { - margin-bottom: 0 !important; - height: 17px !important; -} - -.stf-stats-container .fa { - font-size: 0.8em; -} - -.stf-stats-container.ng-enter { - /*-webkit-transition: 2000ms ease 1s;*/ - /*transition: 2000ms ease 1s;*/ - -webkit-transition: 550ms ease 0ms; - transition: 550ms ease 0ms; - opacity: 0; -} - -.stf-stats-container.ng-enter-active { - opacity: 1; -} - -.stf-device-list .stf-device-details-customize { - white-space: nowrap; - padding: 10px; - padding-bottom: 0; - column-count: 2; - -moz-column-count: 2; - -webkit-column-count: 2; - max-width: 800px; -} - -.stf-device-list .stf-device-details-customize .radio, -.stf-device-list .stf-device-details-customize .checkbox { - margin: 0; - margin-bottom: 10px; -} - .stf-device-list .device-product-name-unusable { color: inherit; } diff --git a/res/app/device-list/device-list-empty-directive.js b/res/app/device-list/empty/device-list-empty-directive.js similarity index 100% rename from res/app/device-list/device-list-empty-directive.js rename to res/app/device-list/empty/device-list-empty-directive.js diff --git a/res/app/device-list/device-list-empty.jade b/res/app/device-list/empty/device-list-empty.jade similarity index 100% rename from res/app/device-list/device-list-empty.jade rename to res/app/device-list/empty/device-list-empty.jade diff --git a/res/app/device-list/empty/index.js b/res/app/device-list/empty/index.js new file mode 100644 index 00000000..c926f1be --- /dev/null +++ b/res/app/device-list/empty/index.js @@ -0,0 +1,3 @@ +module.exports = angular.module('stf.device-list.empty', [ +]) + .directive('deviceListEmpty', require('./device-list-empty-directive')) diff --git a/res/app/device-list/device-list-icons-directive.js b/res/app/device-list/icons/device-list-icons-directive.js similarity index 99% rename from res/app/device-list/device-list-icons-directive.js rename to res/app/device-list/icons/device-list-icons-directive.js index 6fc95df7..2a8df9b7 100644 --- a/res/app/device-list/device-list-icons-directive.js +++ b/res/app/device-list/icons/device-list-icons-directive.js @@ -1,4 +1,4 @@ -var patchArray = require('./util/patch-array') +var patchArray = require('./../util/patch-array') module.exports = function DeviceListDetailsDirective( $filter diff --git a/res/app/device-list/icons/device-list-icons.css b/res/app/device-list/icons/device-list-icons.css new file mode 100644 index 00000000..464b33dd --- /dev/null +++ b/res/app/device-list/icons/device-list-icons.css @@ -0,0 +1,71 @@ +ul.devices-icon-view { + margin: 0; + display: inline-block; + list-style-type: none; + /*font-weight: 300;*/ + font-family: 'HelveticaNeue-UltraLight', Helvetica, Arial, sans-serif; +} + +ul.devices-icon-view li { + width: 126px; + height: 170px; + background: white; + -webkit-border-radius: 8px; + -moz-border-radius: 8px; + border-radius: 8px; + border: 1px solid #e6e6e6; + float: left; + clear: none; + margin: 6px; + text-align: center; +} + +ul.devices-icon-view li:hover { + background-color: #fbfbfb; + +} + +ul.devices-icon-view .device-photo-small { + margin-top: 8px; + margin-bottom: 10px; +} + +ul.devices-icon-view .device-photo-small img { + width: auto; + height: 90px; + max-width: 95%; /* TODO: Fix this with a new container */ + /*box-shadow: 0 10px 5px rgba(255, 255, 255, 1);*/ +} + +ul.devices-icon-view .device-name-bigtext { + display: inline-block; + width: 80%; +} + +ul.devices-icon-view .device-name { + color: #3FA9F5; + font-size: 16px; + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; +} + +ul.devices-icon-view .device-product { + font-size: 16px; + color: #555; +} + +ul.devices-icon-view .device-is-busy { + /*box-shadow: inset 0 0 10px #e6e6e6;*/ + /*background: #e6e6e6 !important;*/ + opacity: 0.7; + cursor: not-allowed; +} + +ul.devices-icon-view .device-is-busy .btn { + cursor: not-allowed; +} + +ul.devices-icon-view .device-is-busy .device-photo-small img { + opacity: 0.5; +} diff --git a/res/app/device-list/device-list-icons.jade b/res/app/device-list/icons/device-list-icons.jade similarity index 100% rename from res/app/device-list/device-list-icons.jade rename to res/app/device-list/icons/device-list-icons.jade diff --git a/res/app/device-list/icons/index.js b/res/app/device-list/icons/index.js new file mode 100644 index 00000000..e970aab2 --- /dev/null +++ b/res/app/device-list/icons/index.js @@ -0,0 +1,10 @@ +require('./device-list-icons.css') + +module.exports = angular.module('stf.device-list.icons', [ + require('gettext').name, + require('stf/user/group').name, + require('stf/common-ui').name, + require('../column').name, + require('../empty').name +]) + .directive('deviceListIcons', require('./device-list-icons-directive')) diff --git a/res/app/device-list/index.js b/res/app/device-list/index.js index 2dd49307..e00b4ba7 100644 --- a/res/app/device-list/index.js +++ b/res/app/device-list/index.js @@ -1,13 +1,18 @@ require('./device-list.css') -require('checklist-model') - module.exports = angular.module('device-list', [ require('stf/device').name, require('stf/user/group').name, + require('stf/control').name, require('stf/common-ui').name, - require('stf/admin-mode').name, - 'checklist-model' + require('stf/settings').name, + require('./column').name, + require('./details').name, + require('./empty').name, + require('./icons').name, + require('./stats').name, + require('./customize').name, + require('./search').name ]) .config(['$routeProvider', function ($routeProvider) { $routeProvider @@ -17,8 +22,3 @@ module.exports = angular.module('device-list', [ }) }]) .controller('DeviceListCtrl', require('./device-list-controller')) - .service('DeviceColumnService', require('./device-column-service')) - .directive('deviceListDetails', require('./device-list-details-directive')) - .directive('deviceListIcons', require('./device-list-icons-directive')) - .directive('deviceListStats', require('./device-list-stats-directive')) - .directive('deviceListEmpty', require('./device-list-empty-directive')) diff --git a/res/app/device-list/search/device-list-search.css b/res/app/device-list/search/device-list-search.css new file mode 100644 index 00000000..73aa7435 --- /dev/null +++ b/res/app/device-list/search/device-list-search.css @@ -0,0 +1,13 @@ +.stf-device-list .device-search { + width: 20em; + -webkit-transition: none; + transition: none; +} + +.stf-device-list .filter-out { + display: none; +} + +.stf-device-list .device-search:focus { + /*width: 25em;*/ +} diff --git a/res/app/device-list/search/index.js b/res/app/device-list/search/index.js new file mode 100644 index 00000000..7921e40e --- /dev/null +++ b/res/app/device-list/search/index.js @@ -0,0 +1,4 @@ +require('./device-list-search.css') + +module.exports = angular.module('stf.device-list.search', [ +]) diff --git a/res/app/device-list/device-list-stats-directive.js b/res/app/device-list/stats/device-list-stats-directive.js similarity index 100% rename from res/app/device-list/device-list-stats-directive.js rename to res/app/device-list/stats/device-list-stats-directive.js diff --git a/res/app/device-list/stats/device-list-stats.css b/res/app/device-list/stats/device-list-stats.css new file mode 100644 index 00000000..0debcde9 --- /dev/null +++ b/res/app/device-list/stats/device-list-stats.css @@ -0,0 +1,15 @@ +.stf-stats-container .fa { + font-size: 0.8em; +} + +.stf-stats-container.ng-enter { + /*-webkit-transition: 2000ms ease 1s;*/ + /*transition: 2000ms ease 1s;*/ + -webkit-transition: 550ms ease 0ms; + transition: 550ms ease 0ms; + opacity: 0; +} + +.stf-stats-container.ng-enter-active { + opacity: 1; +} diff --git a/res/app/device-list/device-list-stats.jade b/res/app/device-list/stats/device-list-stats.jade similarity index 100% rename from res/app/device-list/device-list-stats.jade rename to res/app/device-list/stats/device-list-stats.jade diff --git a/res/app/device-list/stats/index.js b/res/app/device-list/stats/index.js new file mode 100644 index 00000000..8c80cc88 --- /dev/null +++ b/res/app/device-list/stats/index.js @@ -0,0 +1,6 @@ +require('./device-list-stats.css') + +module.exports = angular.module('stf.device-list.stats', [ + require('stf/user').name +]) + .directive('deviceListStats', require('./device-list-stats-directive')) diff --git a/res/app/device-list/util/patch-array.js b/res/app/device-list/util/patch-array/index.js similarity index 100% rename from res/app/device-list/util/patch-array.js rename to res/app/device-list/util/patch-array/index.js diff --git a/res/app/device-list/util/patch-array-test.js b/res/app/device-list/util/patch-array/patch-array-test.js similarity index 100% rename from res/app/device-list/util/patch-array-test.js rename to res/app/device-list/util/patch-array/patch-array-test.js diff --git a/res/app/device-list/util/query-parser.js b/res/app/device-list/util/query-parser/index.js similarity index 100% rename from res/app/device-list/util/query-parser.js rename to res/app/device-list/util/query-parser/index.js diff --git a/res/app/device-list/util/query-parser-test.js b/res/app/device-list/util/query-parser/query-parser-test.js similarity index 100% rename from res/app/device-list/util/query-parser-test.js rename to res/app/device-list/util/query-parser/query-parser-test.js