├── .gitignore ├── Gruntfile.js ├── LICENCE.md ├── README.md ├── app ├── app.js ├── config.js ├── controllers │ ├── association.js │ ├── auth.js │ ├── base.js │ ├── battery.js │ ├── configuration-commands.js │ ├── configuration.js │ ├── configuration_association.js │ ├── configuration_configuration.js │ ├── configuration_firmware.js │ ├── configuration_health.js │ ├── configuration_interview.js │ ├── configuration_postfix.js │ ├── control.js │ ├── controllerinfo.js │ ├── controllers.js │ ├── dongle.js │ ├── expert_config.js │ ├── home.js │ ├── interviewcommand.js │ ├── license.js │ ├── linkstatus.js │ ├── lock.js │ ├── meter.js │ ├── neighbor.js │ ├── networkmap.js │ ├── notification.js │ ├── packets.js │ ├── queue.js │ ├── reorganization.js │ ├── reset-statistic.js │ ├── routemap.js │ ├── rssi-report.controller.js │ ├── sensor.js │ ├── settings.js │ ├── smartstart_dsk_entry.js │ ├── smartstart_dsk_list.js │ ├── smartstart_qr.js │ ├── statistics.js │ ├── status.js │ ├── switch.js │ ├── thermostat.js │ ├── timing.js │ ├── type.js │ ├── uzb.js │ └── zniffer.js ├── css │ ├── .css │ ├── angular-slider.css │ ├── bootstrap │ │ ├── bootstrap.css │ │ ├── bootstrap.css.map │ │ └── dashboard.css │ ├── img │ │ └── komsa.png │ ├── main-responsive.css │ ├── main.css │ ├── main.css.map │ ├── main.map │ ├── print.css │ ├── print.css.map │ └── print.map ├── directives │ ├── angular-slider.js │ ├── configuration │ │ ├── expert-command.directive.js │ │ └── menu.directive.js │ ├── dir-pagination.js │ ├── directives.js │ ├── double-scroll-bars.js │ ├── double-scroll-bars.min.js │ ├── network │ │ ├── controller-info.directive.js │ │ └── encryption-keys.directive.js │ └── share │ │ └── clipboard-copy.directive.js ├── factories │ └── factories.js ├── filters │ └── filters.js ├── fonts │ ├── bootstrap │ │ ├── glyphicons-halflings-regular.eot │ │ ├── glyphicons-halflings-regular.svg │ │ ├── glyphicons-halflings-regular.ttf │ │ └── glyphicons-halflings-regular.woff │ ├── fa-brands-400.eot │ ├── fa-brands-400.woff2 │ ├── fa-duotone-900.eot │ ├── fa-duotone-900.woff2 │ ├── fa-light-300.eot │ ├── fa-light-300.woff2 │ ├── fa-regular-400.eot │ ├── fa-regular-400.woff2 │ ├── fa-solid-900.eot │ └── fa-solid-900.woff2 ├── images │ ├── batteries │ │ ├── battery-0.png │ │ ├── battery-100.png │ │ ├── battery-20.png │ │ ├── battery-30.png │ │ ├── battery-50.png │ │ ├── battery-80.png │ │ └── battery.png │ ├── cn.png │ ├── cz.png │ ├── de.png │ ├── device_placeholder.png │ ├── en.png │ ├── es.png │ ├── flags │ │ ├── cn.png │ │ ├── cz.png │ │ ├── de.png │ │ ├── en.png │ │ ├── es.png │ │ ├── fr.png │ │ ├── pt.png │ │ ├── ru.png │ │ ├── sk.png │ │ └── sv.png │ ├── fr.png │ ├── icons │ │ ├── 1x1.png │ │ ├── battery_0.png │ │ ├── battery_100.png │ │ ├── battery_50.png │ │ ├── interview_unfinished.png │ │ ├── status_awake.png │ │ ├── status_dead.png │ │ ├── status_ok.png │ │ ├── status_sleep.png │ │ ├── switch_all_on_off.png │ │ ├── switch_all_on_xxx.png │ │ ├── switch_all_xx_off.png │ │ ├── switch_all_xx_xxx.png │ │ ├── type_Battery-Wakeup.png │ │ ├── type_FLIRS2.png │ │ ├── type_Mains-Powered.png │ │ ├── type_Remote-Control.png │ │ ├── type_battery_with_wakeup.png │ │ └── type_remote.png │ ├── no_device_image.png │ ├── ru.png │ ├── sk.png │ ├── sv.png │ ├── transparent.png │ ├── z-wave-aliance-logo.png │ ├── z-wave-logo-white.png │ └── zplus.jpg ├── info.json ├── jquery │ └── jquery-app.js ├── lang │ ├── language.cn.json │ ├── language.cz.json │ ├── language.de.json │ ├── language.en.json │ ├── language.es.json │ ├── language.fi.json │ ├── language.fr.json │ ├── language.it.json │ ├── language.pt.json │ ├── language.ru.json │ ├── language.sk.json │ └── language.sv.json ├── modules │ └── qAllSettled.js ├── routes.js ├── sass │ ├── common │ │ ├── _accordion.scss │ │ ├── _alert.scss │ │ ├── _app_popp.scss │ │ ├── _body.scss │ │ ├── _button.scss │ │ ├── _css_variables.scss │ │ ├── _dropdown.scss │ │ ├── _footer.scss │ │ ├── _form.scss │ │ ├── _gird.scss │ │ ├── _header.scss │ │ ├── _images.scss │ │ ├── _legend.scss │ │ ├── _list_group.scss │ │ ├── _loader.scss │ │ ├── _mixins.scss │ │ ├── _modal.scss │ │ ├── _navi.scss │ │ ├── _pagination.scss │ │ ├── _panel.scss │ │ ├── _progress.scss │ │ ├── _report.scss │ │ ├── _switcher.scss │ │ ├── _table.scss │ │ ├── _tabs.scss │ │ ├── _tooltip.scss │ │ ├── _variables.scss │ │ └── _widget.scss │ ├── compile.sh │ ├── config.rb │ ├── main.scss │ ├── modules │ │ ├── _activeassoc.scss │ │ ├── _commands.scss │ │ ├── _configuration.scss │ │ ├── _control.scss │ │ ├── _controllerinfo.scss │ │ ├── _home.scss │ │ ├── _installer.scss │ │ ├── _linkhealth.scss │ │ ├── _neighbors.scss │ │ ├── _networkmap.scss │ │ ├── _print.scss │ │ ├── _routemap.scss │ │ ├── _routing.scss │ │ ├── _rssi.scss │ │ ├── _sensors.scss │ │ ├── _settings.scss │ │ ├── _smartstart.scss │ │ ├── _statistics.scss │ │ └── _timing.scss │ ├── print.scss │ ├── responsive │ │ ├── _mq_lg.scss │ │ ├── _mq_md.scss │ │ ├── _mq_shared.scss │ │ ├── _mq_sm.scss │ │ └── _responsive.scss │ ├── skins │ │ ├── default │ │ │ ├── _main.scss │ │ │ └── _variables.scss │ │ └── installer │ │ │ └── _main.scss │ └── vendor │ │ ├── _alertify.scss │ │ ├── _alpaca.scss │ │ ├── _angular.slider.scss │ │ ├── _colorpicker.scss │ │ ├── _jquery.fileupload-ui.scss │ │ ├── _jquery.fileupload.scss │ │ ├── bootstrap │ │ ├── _alerts.scss │ │ ├── _alerts_1.scss │ │ ├── _badges.scss │ │ ├── _badges_1.scss │ │ ├── _breadcrumbs.scss │ │ ├── _breadcrumbs_1.scss │ │ ├── _button-groups.scss │ │ ├── _button-groups_1.scss │ │ ├── _buttons.scss │ │ ├── _buttons_1.scss │ │ ├── _carousel.scss │ │ ├── _carousel_1.scss │ │ ├── _close.scss │ │ ├── _close_1.scss │ │ ├── _code.scss │ │ ├── _code_1.scss │ │ ├── _component-animations.scss │ │ ├── _component-animations_1.scss │ │ ├── _dropdowns.scss │ │ ├── _dropdowns_1.scss │ │ ├── _forms.scss │ │ ├── _forms_1.scss │ │ ├── _glyphicons.scss │ │ ├── _glyphicons_1.scss │ │ ├── _grid.scss │ │ ├── _grid_1.scss │ │ ├── _input-groups.scss │ │ ├── _input-groups_1.scss │ │ ├── _jumbotron.scss │ │ ├── _jumbotron_1.scss │ │ ├── _labels.scss │ │ ├── _labels_1.scss │ │ ├── _list-group.scss │ │ ├── _list-group_1.scss │ │ ├── _media.scss │ │ ├── _media_1.scss │ │ ├── _mixins.scss │ │ ├── _mixins_1.scss │ │ ├── _modals.scss │ │ ├── _modals_1.scss │ │ ├── _navbar.scss │ │ ├── _navbar_1.scss │ │ ├── _navs.scss │ │ ├── _navs_1.scss │ │ ├── _normalize.scss │ │ ├── _normalize_1.scss │ │ ├── _pager.scss │ │ ├── _pager_1.scss │ │ ├── _pagination.scss │ │ ├── _pagination_1.scss │ │ ├── _panels.scss │ │ ├── _panels_1.scss │ │ ├── _popovers.scss │ │ ├── _popovers_1.scss │ │ ├── _print.scss │ │ ├── _print_1.scss │ │ ├── _progress-bars.scss │ │ ├── _progress-bars_1.scss │ │ ├── _responsive-embed.scss │ │ ├── _responsive-embed_1.scss │ │ ├── _responsive-utilities.scss │ │ ├── _responsive-utilities_1.scss │ │ ├── _scaffolding.scss │ │ ├── _scaffolding_1.scss │ │ ├── _tables.scss │ │ ├── _tables_1.scss │ │ ├── _theme.scss │ │ ├── _theme_1.scss │ │ ├── _thumbnails.scss │ │ ├── _thumbnails_1.scss │ │ ├── _tooltip.scss │ │ ├── _tooltip_1.scss │ │ ├── _type.scss │ │ ├── _type_1.scss │ │ ├── _utilities.scss │ │ ├── _utilities_1.scss │ │ ├── _variables.scss │ │ ├── _variables_1.scss │ │ ├── _wells.scss │ │ ├── _wells_1.scss │ │ ├── bootstrap.scss │ │ ├── bootstrap_1.scss │ │ ├── bootstrap__1.scss │ │ ├── bootstrap_shui.scss │ │ └── mixins │ │ │ ├── _alerts.scss │ │ │ ├── _alerts_1.scss │ │ │ ├── _background-variant.scss │ │ │ ├── _background-variant_1.scss │ │ │ ├── _border-radius.scss │ │ │ ├── _border-radius_1.scss │ │ │ ├── _buttons.scss │ │ │ ├── _buttons_1.scss │ │ │ ├── _center-block.scss │ │ │ ├── _center-block_1.scss │ │ │ ├── _clearfix.scss │ │ │ ├── _clearfix_1.scss │ │ │ ├── _forms.scss │ │ │ ├── _forms_1.scss │ │ │ ├── _gradients.scss │ │ │ ├── _gradients_1.scss │ │ │ ├── _grid-framework.scss │ │ │ ├── _grid-framework_1.scss │ │ │ ├── _grid.scss │ │ │ ├── _grid_1.scss │ │ │ ├── _hide-text.scss │ │ │ ├── _hide-text_1.scss │ │ │ ├── _image.scss │ │ │ ├── _image_1.scss │ │ │ ├── _labels.scss │ │ │ ├── _labels_1.scss │ │ │ ├── _list-group.scss │ │ │ ├── _list-group_1.scss │ │ │ ├── _nav-divider.scss │ │ │ ├── _nav-divider_1.scss │ │ │ ├── _nav-vertical-align.scss │ │ │ ├── _nav-vertical-align_1.scss │ │ │ ├── _opacity.scss │ │ │ ├── _opacity_1.scss │ │ │ ├── _pagination.scss │ │ │ ├── _pagination_1.scss │ │ │ ├── _panels.scss │ │ │ ├── _panels_1.scss │ │ │ ├── _progress-bar.scss │ │ │ ├── _progress-bar_1.scss │ │ │ ├── _reset-filter.scss │ │ │ ├── _reset-filter_1.scss │ │ │ ├── _resize.scss │ │ │ ├── _resize_1.scss │ │ │ ├── _responsive-visibility.scss │ │ │ ├── _responsive-visibility_1.scss │ │ │ ├── _size.scss │ │ │ ├── _size_1.scss │ │ │ ├── _tab-focus.scss │ │ │ ├── _tab-focus_1.scss │ │ │ ├── _table-row.scss │ │ │ ├── _table-row_1.scss │ │ │ ├── _text-emphasis.scss │ │ │ ├── _text-emphasis_1.scss │ │ │ ├── _text-overflow.scss │ │ │ ├── _text-overflow_1.scss │ │ │ ├── _vendor-prefixes.scss │ │ │ └── _vendor-prefixes_1.scss │ │ └── fontawesome │ │ └── all.scss ├── services │ ├── configuration-commands.service.js │ ├── data-holder.service.js │ └── services.js ├── templates.js └── views │ ├── auth │ └── auth.html │ ├── configuration │ ├── assoc.html │ ├── commands.html │ ├── configuration-commands-default.html │ ├── configuration.html │ ├── configuration_commands.html │ ├── configuration_config.html │ ├── configuration_protection.html │ ├── configuration_switchall.html │ ├── configuration_wakeup.html │ ├── expert-command-input.html │ ├── firmware.html │ ├── health.html │ ├── interview.html │ ├── modal_assoc_add.html │ ├── modal_cmdclass.html │ ├── modal_interview.html │ ├── modal_loadxml.html │ ├── navi.html │ └── postfix.html │ ├── controll │ ├── locks.html │ ├── meters.html │ ├── notifications.html │ ├── sensors.html │ ├── switch.html │ └── thermostat.html │ ├── device │ ├── _associations.html │ ├── associations.html │ ├── battery.html │ ├── modal_status_interview.html │ ├── status.html │ └── type.html │ ├── dir-pagination.html │ ├── dist_head.txt │ ├── error.html │ ├── help │ └── help.html │ ├── home │ ├── device_reset.html │ ├── dongle.html │ ├── home.html │ ├── ip.html │ ├── network_health.html │ ├── network_informations.html │ ├── notes.html │ └── promo.html │ ├── indicator.html │ ├── installer │ ├── history.html │ ├── packets.html │ ├── reset-statistic.html │ ├── rssi_background.html │ ├── rssi_meter.html │ ├── rssi_report.html │ ├── statistics.html │ ├── zniffer-art.html │ └── zniffer.html │ ├── network │ ├── __routemap.html │ ├── control │ │ ├── control.html │ │ ├── control_controller_maintance.html │ │ ├── control_different.html │ │ ├── control_frequency.html │ │ ├── control_installer.html │ │ ├── control_link_controller.html │ │ ├── control_management.html │ │ ├── control_network_maintance.html │ │ ├── control_network_maintance_ctrlchange.html │ │ ├── control_promiscuous.html │ │ ├── control_restore.html │ │ ├── control_restore_modal.html │ │ └── control_sucsic.html │ ├── controller.html │ ├── linkstatus.html │ ├── map.html │ ├── neighbors.html │ ├── queue.html │ ├── reorganization.html │ ├── routemap.html │ ├── routing.html │ ├── routing_neigbors.html │ ├── routing_table.html │ └── timing.html │ ├── pages │ ├── license.html │ └── uzb.html │ ├── print │ └── print.html │ ├── settings │ ├── modal_timezone.html │ ├── settings.html │ ├── settings_app.html │ ├── settings_lang.html │ └── settings_report.html │ └── smartstart │ ├── navi.html │ ├── smartstart_dsk_entry.html │ ├── smartstart_dsk_list.html │ └── smartstart_qr.html ├── dist ├── LICENCE.md ├── app │ ├── css │ │ ├── build.css │ │ └── build.css.gz │ ├── fonts │ │ ├── fa-brands-400.eot │ │ ├── fa-brands-400.woff2 │ │ ├── fa-duotone-900.eot │ │ ├── fa-duotone-900.woff2 │ │ ├── fa-light-300.eot │ │ ├── fa-light-300.woff2 │ │ ├── fa-regular-400.eot │ │ ├── fa-regular-400.woff2 │ │ ├── fa-solid-900.eot │ │ └── fa-solid-900.woff2 │ ├── images │ │ ├── batteries │ │ │ ├── battery-0.png │ │ │ ├── battery-100.png │ │ │ ├── battery-20.png │ │ │ ├── battery-30.png │ │ │ ├── battery-50.png │ │ │ ├── battery-80.png │ │ │ └── battery.png │ │ ├── cn.png │ │ ├── cz.png │ │ ├── de.png │ │ ├── device_placeholder.png │ │ ├── en.png │ │ ├── es.png │ │ ├── flags │ │ │ ├── cn.png │ │ │ ├── cz.png │ │ │ ├── de.png │ │ │ ├── en.png │ │ │ ├── es.png │ │ │ ├── fr.png │ │ │ ├── pt.png │ │ │ ├── ru.png │ │ │ ├── sk.png │ │ │ └── sv.png │ │ ├── fr.png │ │ ├── icons │ │ │ ├── 1x1.png │ │ │ ├── battery_0.png │ │ │ ├── battery_100.png │ │ │ ├── battery_50.png │ │ │ ├── interview_unfinished.png │ │ │ ├── status_awake.png │ │ │ ├── status_dead.png │ │ │ ├── status_ok.png │ │ │ ├── status_sleep.png │ │ │ ├── switch_all_on_off.png │ │ │ ├── switch_all_on_xxx.png │ │ │ ├── switch_all_xx_off.png │ │ │ ├── switch_all_xx_xxx.png │ │ │ ├── type_Battery-Wakeup.png │ │ │ ├── type_FLIRS2.png │ │ │ ├── type_Mains-Powered.png │ │ │ ├── type_Remote-Control.png │ │ │ ├── type_battery_with_wakeup.png │ │ │ └── type_remote.png │ │ ├── no_device_image.png │ │ ├── ru.png │ │ ├── sk.png │ │ ├── sv.png │ │ ├── transparent.png │ │ ├── z-wave-aliance-logo.png │ │ ├── z-wave-logo-white.png │ │ └── zplus.jpg │ ├── info.json │ ├── info.json.gz │ ├── js │ │ ├── angular-cookies.min.js.map │ │ ├── angular-route.min.js.map │ │ ├── angular.min.js.map │ │ ├── build.js │ │ ├── build.js.gz │ │ ├── config.js │ │ ├── templates.js │ │ └── templates.js.gz │ └── lang │ │ ├── language.cn.json │ │ ├── language.cn.json.gz │ │ ├── language.cz.json │ │ ├── language.cz.json.gz │ │ ├── language.de.json │ │ ├── language.de.json.gz │ │ ├── language.en.json │ │ ├── language.en.json.gz │ │ ├── language.es.json │ │ ├── language.es.json.gz │ │ ├── language.fi.json │ │ ├── language.fi.json.gz │ │ ├── language.fr.json │ │ ├── language.fr.json.gz │ │ ├── language.it.json │ │ ├── language.it.json.gz │ │ ├── language.pt.json │ │ ├── language.pt.json.gz │ │ ├── language.ru.json │ │ ├── language.ru.json.gz │ │ ├── language.sk.json │ │ ├── language.sk.json.gz │ │ ├── language.sv.json │ │ └── language.sv.json.gz ├── favicon.ico ├── favicon.ico.gz └── index.html ├── favicon.ico ├── index.html ├── package.json ├── release.sh ├── storage └── data │ └── docs │ └── user_guide.pdf └── vendor ├── alertify ├── alertify.js ├── alertify.min.js └── ngAlertify.js ├── angular └── angular-1.2.14 │ ├── angular-cookies.js │ ├── angular-cookies.min.js │ ├── angular-cookies.min.js.map │ ├── angular-resource.js │ ├── angular-resource.min.js │ ├── angular-resource.min.js.map │ ├── angular-route.js │ ├── angular-route.min.js │ ├── angular-route.min.js.map │ ├── angular.hammer.js │ ├── angular.hammer.min.js │ ├── angular.hammer.min.js.map │ ├── angular.js │ ├── angular.min.js │ ├── angular.min.js.map │ ├── errors.json │ ├── hammer.min.js │ ├── version.json │ └── version.txt ├── bootstrap ├── bootstrap.js ├── bootstrap.min.js └── plugins │ └── bootstrap-datetimepicker.js ├── canvasjs └── canvasjs.min.js ├── cytoscape └── cytoscape.min.js ├── jquery └── jquery-1.11.1.min.js ├── justgagejs ├── justgage.js └── raphael-2.1.4.min.js ├── qrcode ├── qrcode.js └── qrcode.min.js ├── routemap ├── ZWaveAnalytics.min.js ├── ZWaveRouteMapDraw.min.js └── d3.v4.min.js ├── sha1 └── sha1.min.js ├── underscore └── underscore-1.8.3 │ └── underscore-min.js ├── upload ├── angular-file-upload-shim.min.js └── angular-file-upload.min.js ├── xml ├── xml2json.js └── xml2json.min.js └── zwave ├── pyzw.js └── pyzw_zwave_ui.js /.gitignore: -------------------------------------------------------------------------------- 1 | .gitignore 2 | /_project/* 3 | /nbproject/* 4 | .**/ 5 | /upload/* 6 | upload.php 7 | /test/* 8 | #/app/core/config.js 9 | /node_modules/* 10 | npm-debug.log 11 | /app/css/vendor/* 12 | *.iml 13 | /.idea 14 | .**/ 15 | /.history 16 | sftp-config.json -------------------------------------------------------------------------------- /app/controllers/auth.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @overview This controller handles authentication process. 3 | * @author Martin Vach 4 | */ 5 | /** 6 | * Auth default controller 7 | * @class AuthController 8 | * 9 | */ 10 | appController.controller('AuthController', function ($location, $window, $timeout) { 11 | $location.path('/home'); 12 | $timeout(function() { 13 | $window.location.reload(); 14 | }, 1); 15 | }); -------------------------------------------------------------------------------- /app/controllers/dongle.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @overview This controller renders and handles dongles. 3 | * @author Martin Vach 4 | */ 5 | 6 | /** 7 | * This controller handles dongles. 8 | * @class DongleController' 9 | * 10 | */ 11 | appController.controller('DongleController', function($scope, $window,$cookies,cfg,dataService) { 12 | // Controller vars 13 | $scope.homeDongle ={ 14 | model: { 15 | current: $scope.cfg.dongle, 16 | dongle: '' 17 | }, 18 | //data: ['zway','newdongle','mydongle'], 19 | data: cfg.dongle_list 20 | }; 21 | 22 | /** 23 | * Set dongle 24 | */ 25 | $scope.setHomeDongle = function() { 26 | if($scope.homeDongle.model.dongle === ''){ 27 | return; 28 | } 29 | angular.extend($scope.cfg,{dongle: $scope.homeDongle.model.dongle}); 30 | $cookies.dongle = $scope.homeDongle.model.dongle; 31 | $window.location.reload(); 32 | }; 33 | }); -------------------------------------------------------------------------------- /app/controllers/reset-statistic.js: -------------------------------------------------------------------------------- 1 | appController.controller('ResetStatistic', function ($scope, dataService) { 2 | $scope.rowSpinner = {} 3 | $scope.resetNetworkStatistics = function () { 4 | console.log('reseted') 5 | $scope.rowSpinner['clearNetworkStatistics'] = true; 6 | dataService.getApi('clearPacketLog', '', true).finally(() => window.location.reload()) 7 | } 8 | }) 9 | -------------------------------------------------------------------------------- /app/controllers/smartstart_qr.js: -------------------------------------------------------------------------------- 1 | /** 2 | * The controller that include device by scanning QR code. 3 | * @class SmartStartQrController 4 | */ 5 | appController.controller('SmartStartQrController', function ($scope, $timeout) { 6 | $scope.qrcode = { 7 | input: { 8 | qrcode: '' 9 | }, 10 | state: 'start' 11 | }; 12 | 13 | /** 14 | * Reset state to start 15 | */ 16 | $scope.resetState = function () { 17 | $scope.qrcode.state = 'start'; 18 | $scope.reloadData(); 19 | }; 20 | /** 21 | * Scan QR code 22 | */ 23 | $scope.scan = function (error) { 24 | $scope.qrcode.state = 'scanning'; 25 | $timeout(function () { 26 | $scope.qrcode.state = (error ? 'error' : 'success-scan'); 27 | }, 4000); 28 | }; 29 | 30 | /** 31 | * Discover the device 32 | */ 33 | $scope.discover = function () { 34 | $scope.qrcode.state = 'discovering'; 35 | $timeout(function () { 36 | $scope.qrcode.state = 'success-discover'; 37 | }, 2000); 38 | }; 39 | 40 | }); -------------------------------------------------------------------------------- /app/css/.css: -------------------------------------------------------------------------------- 1 | /* 2 | Errno::ENOENT: No such file or directory @ rb_sysopen - C:/xampp/htdocs/dev/ExpertUI/app/sass/map 3 | 4 | Backtrace: 5 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/sass-3.4.20/lib/sass/plugin/compiler.rb:482:in `read' 6 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/sass-3.4.20/lib/sass/plugin/compiler.rb:482:in `update_stylesheet' 7 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/sass-3.4.20/lib/sass/plugin/compiler.rb:215:in `block in update_stylesheets' 8 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/sass-3.4.20/lib/sass/plugin/compiler.rb:209:in `each' 9 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/sass-3.4.20/lib/sass/plugin/compiler.rb:209:in `update_stylesheets' 10 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/sass-3.4.20/lib/sass/plugin/compiler.rb:293:in `watch' 11 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/compass-1.0.3/lib/compass/sass_compiler.rb:46:in `watch!' 12 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/compass-1.0.3/lib/compass/commands/watch_project.rb:41:in `perform' 13 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/compass-1.0.3/lib/compass/commands/base.rb:18:in `execute' 14 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/compass-1.0.3/lib/compass/commands/project_base.rb:19:in `execute' 15 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/compass-1.0.3/lib/compass/exec/sub_command_ui.rb:43:in `perform!' 16 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/compass-1.0.3/lib/compass/exec/sub_command_ui.rb:15:in `run!' 17 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/compass-1.0.3/bin/compass:30:in `block in ' 18 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/compass-1.0.3/bin/compass:44:in `call' 19 | C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/compass-1.0.3/bin/compass:44:in `' 20 | C:/Ruby22-x64/bin/compass:23:in `load' 21 | C:/Ruby22-x64/bin/compass:23:in `
' 22 | */ 23 | body:before { 24 | white-space: pre; 25 | font-family: monospace; 26 | content: "Errno::ENOENT: No such file or directory @ rb_sysopen - C:/xampp/htdocs/dev/ExpertUI/app/sass/map"; } 27 | -------------------------------------------------------------------------------- /app/css/bootstrap/dashboard.css: -------------------------------------------------------------------------------- 1 | /* 2 | * Base structure 3 | */ 4 | 5 | /* Move down content because we have a fixed navbar that is 50px tall */ 6 | body { 7 | padding-top: 50px; 8 | } 9 | 10 | 11 | /* 12 | * Global add-ons 13 | */ 14 | 15 | .sub-header { 16 | padding-bottom: 10px; 17 | border-bottom: 1px solid #eee; 18 | } 19 | 20 | 21 | /* 22 | * Sidebar 23 | */ 24 | 25 | /* Hide for mobile, show later */ 26 | .sidebar { 27 | display: none; 28 | } 29 | @media (min-width: 768px) { 30 | .sidebar { 31 | position: fixed; 32 | top: 51px; 33 | bottom: 0; 34 | left: 0; 35 | z-index: 1000; 36 | display: block; 37 | padding: 20px; 38 | overflow-x: hidden; 39 | overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */ 40 | background-color: #f5f5f5; 41 | border-right: 1px solid #eee; 42 | } 43 | } 44 | 45 | /* Sidebar navigation */ 46 | .nav-sidebar { 47 | margin-right: -21px; /* 20px padding + 1px border */ 48 | margin-bottom: 20px; 49 | margin-left: -20px; 50 | } 51 | .nav-sidebar > li > a { 52 | padding-right: 20px; 53 | padding-left: 20px; 54 | } 55 | .nav-sidebar > .active > a { 56 | color: #fff; 57 | background-color: #428bca; 58 | } 59 | 60 | 61 | /* 62 | * Main content 63 | */ 64 | 65 | .main { 66 | padding: 20px; 67 | } 68 | @media (min-width: 768px) { 69 | .main { 70 | padding-right: 40px; 71 | padding-left: 40px; 72 | } 73 | } 74 | .main .page-header { 75 | margin-top: 0; 76 | } 77 | 78 | 79 | /* 80 | * Placeholder dashboard ideas 81 | */ 82 | 83 | .placeholders { 84 | margin-bottom: 30px; 85 | text-align: center; 86 | } 87 | .placeholders h4 { 88 | margin-bottom: 0; 89 | } 90 | .placeholder { 91 | margin-bottom: 20px; 92 | } 93 | .placeholder img { 94 | display: inline-block; 95 | border-radius: 50%; 96 | } 97 | -------------------------------------------------------------------------------- /app/css/img/komsa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/css/img/komsa.png -------------------------------------------------------------------------------- /app/directives/double-scroll-bars.min.js: -------------------------------------------------------------------------------- 1 | /* AngularJS directives for double scroll bars by @przno, v0.1.5, https://github.com/przno/double-scroll-bars, MIT license */!function(a){"use strict";a.module("doubleScrollBars",[]).directive("doubleScrollBarHorizontal",["$timeout","$dsb","$$dsbStorage",function(a,b,c){return{restrict:"A",transclude:!0,scope:{doubleScrollBarHorizontal:"@",id:"@"},template:"
",link:function(d,e,f,g){var h=b.getSize();d.nativeScrollBarHeight=h+"px",d.scrollBarElementHeight=parseInt(h+1)+"px",d.wrapper2scrollWidth="0px";var i=e.children().eq(0),j=i.children().eq(0).children().eq(0),k=i.children().eq(1),l=j[0],m=k[0];j.on("scroll",function(){m.scrollLeft=l.scrollLeft}),k.on("scroll",function(){l.scrollLeft=m.scrollLeft});var n=!0;d.$watch(function(){return d.wrapper2scrollWidth=m.scrollWidth+"px"},function(b,e){a(function(){d.$apply(),n&&(l.scrollLeft=c.get(d.id)||0,m.scrollLeft=c.get(d.id)||0,n=!1)})}),d.$on("$destroy",function(){void 0!==d.id&&c.set(d.id,l.scrollLeft)})}}}]).service("$$dsbStorage",function(){var a={};return{get:function(b){return a[b]},set:function(b,c){a[b]=c}}}).service("$dsb",function(){function a(){var a=document.createElement("div"),b=document.createElement("div");a.style.width="100%",a.style.height="200px",b.style.width="200px",b.style.height="150px",b.style.position="absolute",b.style.top="0",b.style.left="0",b.style.visibility="hidden",b.style.overflow="hidden",b.appendChild(a),document.body.appendChild(b);var c=a.offsetWidth;b.style.overflow="scroll";var d=b.clientWidth;return document.body.removeChild(b),c-d}var b;return{getSize:function(){return b=b||a()}}})}(angular); -------------------------------------------------------------------------------- /app/directives/network/controller-info.directive.js: -------------------------------------------------------------------------------- 1 | angApp.directive('zWaveMoreOptions', function (dataService, _, $http) { 2 | return { 3 | restrict: 'E', 4 | transclude: true, 5 | template: ` 6 | {{_t('getMoreOptions')}} 7 |
8 | {{_t('newLicenceAvailable')}} 9 | 10 |
11 | `, 12 | link: function ($scope) { 13 | $scope.zWaveMoreOptionsUUID = $scope.master['controller.data.uuid'].replace(/^0+/, ''); 14 | const currentCrc = $scope.master['controller.data.firmware.caps.crc.value']; 15 | $scope.updatable = false; 16 | $http({ 17 | method: 'get', 18 | url: 'https://service.z-wave.me/hardware/capabilities/?uuid=' + $scope.zWaveMoreOptionsUUID 19 | }).then( 20 | function (data) { 21 | if (data) { 22 | if (data.data.crc && data.data.crc !== '0' && +data.data.crc !== currentCrc) { 23 | $scope.updatable = true; 24 | } 25 | $scope.setLicense = function () { 26 | dataService.zmeCapabilities(data.data.license).then(console.warn); 27 | } 28 | } 29 | } 30 | ).catch(console.error) 31 | } 32 | } 33 | }) 34 | -------------------------------------------------------------------------------- /app/directives/network/encryption-keys.directive.js: -------------------------------------------------------------------------------- 1 | angApp.directive('zWaveEncryptionKeys', function (cfg) { 2 | return { 3 | restrict: 'E', 4 | transclude: true, 5 | template: `{{_t('encryptionKeys')}}` 6 | } 7 | }); 8 | -------------------------------------------------------------------------------- /app/fonts/bootstrap/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/bootstrap/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /app/fonts/bootstrap/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/bootstrap/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /app/fonts/bootstrap/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/bootstrap/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /app/fonts/fa-brands-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/fa-brands-400.eot -------------------------------------------------------------------------------- /app/fonts/fa-brands-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/fa-brands-400.woff2 -------------------------------------------------------------------------------- /app/fonts/fa-duotone-900.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/fa-duotone-900.eot -------------------------------------------------------------------------------- /app/fonts/fa-duotone-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/fa-duotone-900.woff2 -------------------------------------------------------------------------------- /app/fonts/fa-light-300.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/fa-light-300.eot -------------------------------------------------------------------------------- /app/fonts/fa-light-300.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/fa-light-300.woff2 -------------------------------------------------------------------------------- /app/fonts/fa-regular-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/fa-regular-400.eot -------------------------------------------------------------------------------- /app/fonts/fa-regular-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/fa-regular-400.woff2 -------------------------------------------------------------------------------- /app/fonts/fa-solid-900.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/fa-solid-900.eot -------------------------------------------------------------------------------- /app/fonts/fa-solid-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/fonts/fa-solid-900.woff2 -------------------------------------------------------------------------------- /app/images/batteries/battery-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/batteries/battery-0.png -------------------------------------------------------------------------------- /app/images/batteries/battery-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/batteries/battery-100.png -------------------------------------------------------------------------------- /app/images/batteries/battery-20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/batteries/battery-20.png -------------------------------------------------------------------------------- /app/images/batteries/battery-30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/batteries/battery-30.png -------------------------------------------------------------------------------- /app/images/batteries/battery-50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/batteries/battery-50.png -------------------------------------------------------------------------------- /app/images/batteries/battery-80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/batteries/battery-80.png -------------------------------------------------------------------------------- /app/images/batteries/battery.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/batteries/battery.png -------------------------------------------------------------------------------- /app/images/cn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/cn.png -------------------------------------------------------------------------------- /app/images/cz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/cz.png -------------------------------------------------------------------------------- /app/images/de.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/de.png -------------------------------------------------------------------------------- /app/images/device_placeholder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/device_placeholder.png -------------------------------------------------------------------------------- /app/images/en.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/en.png -------------------------------------------------------------------------------- /app/images/es.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/es.png -------------------------------------------------------------------------------- /app/images/flags/cn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/flags/cn.png -------------------------------------------------------------------------------- /app/images/flags/cz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/flags/cz.png -------------------------------------------------------------------------------- /app/images/flags/de.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/flags/de.png -------------------------------------------------------------------------------- /app/images/flags/en.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/flags/en.png -------------------------------------------------------------------------------- /app/images/flags/es.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/flags/es.png -------------------------------------------------------------------------------- /app/images/flags/fr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/flags/fr.png -------------------------------------------------------------------------------- /app/images/flags/pt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/flags/pt.png -------------------------------------------------------------------------------- /app/images/flags/ru.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/flags/ru.png -------------------------------------------------------------------------------- /app/images/flags/sk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/flags/sk.png -------------------------------------------------------------------------------- /app/images/flags/sv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/flags/sv.png -------------------------------------------------------------------------------- /app/images/fr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/fr.png -------------------------------------------------------------------------------- /app/images/icons/1x1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/1x1.png -------------------------------------------------------------------------------- /app/images/icons/battery_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/battery_0.png -------------------------------------------------------------------------------- /app/images/icons/battery_100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/battery_100.png -------------------------------------------------------------------------------- /app/images/icons/battery_50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/battery_50.png -------------------------------------------------------------------------------- /app/images/icons/interview_unfinished.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/interview_unfinished.png -------------------------------------------------------------------------------- /app/images/icons/status_awake.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/status_awake.png -------------------------------------------------------------------------------- /app/images/icons/status_dead.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/status_dead.png -------------------------------------------------------------------------------- /app/images/icons/status_ok.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/status_ok.png -------------------------------------------------------------------------------- /app/images/icons/status_sleep.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/status_sleep.png -------------------------------------------------------------------------------- /app/images/icons/switch_all_on_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/switch_all_on_off.png -------------------------------------------------------------------------------- /app/images/icons/switch_all_on_xxx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/switch_all_on_xxx.png -------------------------------------------------------------------------------- /app/images/icons/switch_all_xx_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/switch_all_xx_off.png -------------------------------------------------------------------------------- /app/images/icons/switch_all_xx_xxx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/switch_all_xx_xxx.png -------------------------------------------------------------------------------- /app/images/icons/type_Battery-Wakeup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/type_Battery-Wakeup.png -------------------------------------------------------------------------------- /app/images/icons/type_FLIRS2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/type_FLIRS2.png -------------------------------------------------------------------------------- /app/images/icons/type_Mains-Powered.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/type_Mains-Powered.png -------------------------------------------------------------------------------- /app/images/icons/type_Remote-Control.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/type_Remote-Control.png -------------------------------------------------------------------------------- /app/images/icons/type_battery_with_wakeup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/type_battery_with_wakeup.png -------------------------------------------------------------------------------- /app/images/icons/type_remote.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/icons/type_remote.png -------------------------------------------------------------------------------- /app/images/no_device_image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/no_device_image.png -------------------------------------------------------------------------------- /app/images/ru.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/ru.png -------------------------------------------------------------------------------- /app/images/sk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/sk.png -------------------------------------------------------------------------------- /app/images/sv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/sv.png -------------------------------------------------------------------------------- /app/images/transparent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/transparent.png -------------------------------------------------------------------------------- /app/images/z-wave-aliance-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/z-wave-aliance-logo.png -------------------------------------------------------------------------------- /app/images/z-wave-logo-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/z-wave-logo-white.png -------------------------------------------------------------------------------- /app/images/zplus.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/app/images/zplus.jpg -------------------------------------------------------------------------------- /app/info.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Z-Wave Expert", 3 | "version": "v1.6.10", 4 | "built": "22-07-2024 01:39:18", 5 | "timestamp": "1721601558" 6 | } -------------------------------------------------------------------------------- /app/jquery/jquery-app.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Common app functions 3 | * author Martin Vach 4 | */ 5 | 6 | ///////////////////////////////// Works ///////////////////////////////// 7 | $(function() { 8 | /*** Expert commands **/ 9 | // Set/Remove disabled on next text input 10 | $(document).on('click', '.form_commands .commands-data-chbx,#form_config .commands-data-chbx', function() { 11 | // if($(this).hasClass('commands-data-chbx-hastxt')){ 12 | // $(this).attr('disabled',true); 13 | // }else{ 14 | // $(this).parent('.form-group').find('.commands-data-chbx-hastxt').attr('disabled',false); 15 | // } 16 | 17 | $(this).parent('.form-group').find('.commands-data-txt-chbx').attr('disabled',true); 18 | $(this).siblings('.commands-data-txt-chbx').attr('disabled',false); 19 | }); 20 | 21 | /*** Spinner **/ 22 | $(document).on('click', '.spin-true', function() { 23 | $(this).find('.fa-spin').show(); 24 | }); 25 | /*** Lock **/ 26 | // Change status for lock buttons 27 | $(document).on('click', '.lock-controll .btn', function() { 28 | var parent = $(this).closest('tr').attr('id'); 29 | $('#' + parent + ' .btn').removeClass('active'); 30 | $(this).addClass('active'); 31 | }); 32 | }); -------------------------------------------------------------------------------- /app/modules/qAllSettled.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @overview Angular module qAllSettled executes a number of operations concurrently. 3 | */ 4 | 'use strict'; 5 | /** 6 | * This method is often used in its static form on arrays of promises, in order to execute a number of operations concurrently 7 | * and be notified when they all finish, regardless of success or failure. 8 | * Returns a promise that is fulfilled with an array of promise state snapshots, 9 | * but only after all the original promises have settled, i.e. become either fulfilled or rejected. 10 | * @method qAllSettled 11 | */ 12 | angular.module('qAllSettled', []).config(function($provide) { 13 | $provide.decorator('$q', function($delegate) { 14 | var $q = $delegate; 15 | $q.allSettled = function(promises) { 16 | var wrappedPromises = angular.isArray(promises) ? promises.slice(0) : {}; 17 | angular.forEach(promises, function(promise, index){ 18 | wrappedPromises[index] = promise.then(function(value){ 19 | return { state: 'fulfilled', value: value }; 20 | }, function(reason){ 21 | return { state: 'rejected', reason: reason }; 22 | }); 23 | }); 24 | return $q.all(wrappedPromises); 25 | }; 26 | return $q; 27 | }); 28 | }); -------------------------------------------------------------------------------- /app/sass/common/_accordion.scss: -------------------------------------------------------------------------------- 1 | /* Accordion 2 | -------------------------------------------------- */ 3 | .accordion-entry{ 4 | margin-bottom: $spacing; 5 | border-top: dotted 1px $accordion-border-color; 6 | //color: $accordion-color; 7 | } 8 | .accordion-entry-title{ 9 | font-size: $accordion-heading-font-size; 10 | position: relative; 11 | vertical-align: middle; 12 | margin: $spacing 0; 13 | color: $accordion-heading-color; 14 | cursor: pointer; 15 | .fa{ 16 | color: $accordion-icon-color; 17 | padding-right: $spacing; 18 | font-size: $accordion-icon-size; 19 | } 20 | .accordion-arrow{ 21 | position: absolute; 22 | right: 1%; 23 | display: inline-block; 24 | padding:0; 25 | } 26 | &.expanded-only{ 27 | cursor: text; 28 | } 29 | } 30 | .command-arrow { 31 | transform: rotate3d(1,0,0, 0deg); 32 | transition: .6s; 33 | &.rotated { 34 | transform: rotate3d(1,0,0, 180deg); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /app/sass/common/_alert.scss: -------------------------------------------------------------------------------- 1 | /* Alert 2 | -------------------------------------------------- */ 3 | .alert { 4 | margin: $spacing 0; 5 | } -------------------------------------------------------------------------------- /app/sass/common/_app_popp.scss: -------------------------------------------------------------------------------- 1 | /* POPP css 2 | -------------------------------------------------- */ 3 | .app-type-popp{ 4 | .header-logo{ 5 | img{ 6 | max-height: 40px; 7 | max-width: 70px; 8 | } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /app/sass/common/_css_variables.scss: -------------------------------------------------------------------------------- 1 | $mq-laptop: 1440px; 2 | $mq-desktop: 1680px; 3 | $mq-phone: 500px; 4 | 5 | :root { 6 | --font-size-regular: 14px; 7 | --space: 1rem; 8 | } 9 | 10 | @media (max-width: $mq-phone - 1px) { 11 | :root { 12 | --font-size-regular: 12px; 13 | --space: .3rem; 14 | } 15 | } 16 | 17 | @media (min-width: $mq-phone) and (max-width: $mq-laptop - 1px) { 18 | :root { 19 | --font-size-regular: 14px; 20 | --space: .5rem; 21 | } 22 | } 23 | 24 | @media (min-width: $mq-laptop) and (max-width: $mq-desktop - 1px) { 25 | :root { 26 | --font-size-regular: 14px; 27 | --space: 1rem; 28 | } 29 | } 30 | 31 | @media (min-width: $mq-desktop) { 32 | :root { 33 | --font-size-regular: 16px; 34 | --space: 1.5rem; 35 | } 36 | } 37 | 38 | .my-element { 39 | font-size: var(--font-size-regular); 40 | padding: 0 calc(var(--gutter) / 2); 41 | } 42 | -------------------------------------------------------------------------------- /app/sass/common/_footer.scss: -------------------------------------------------------------------------------- 1 | /* Footer 2 | -------------------------------------------------- */ 3 | #footer{ 4 | position:fixed; 5 | left:0px; 6 | bottom:0px; 7 | width:100%; 8 | text-align: center; 9 | z-index: $zindex-footer; 10 | //height: $footer-h; 11 | border-top: solid 1px $footer-border-color; 12 | color: $footer-color; 13 | #footer_in{ 14 | background-color: $footer-bcg-color; 15 | height: $footer-h; 16 | line-height: $footer-h; 17 | .timestamp{ 18 | color: $footer-color; 19 | display: none; 20 | } 21 | } 22 | a{} 23 | a:hover{} 24 | 25 | } -------------------------------------------------------------------------------- /app/sass/common/_gird.scss: -------------------------------------------------------------------------------- 1 | /* Gird 2 | -------------------------------------------------- */ 3 | #main_content { 4 | margin-top: $header-h + $spacing; 5 | margin-bottom: $footer-h + $spacing; 6 | } 7 | 8 | .container{ 9 | max-width:none; 10 | width: $app-container-w; 11 | 12 | } 13 | .row { 14 | padding-right: 0; 15 | margin-right: 0; 16 | position: relative !important; 17 | } 18 | 19 | .mobile-padding{ 20 | padding: 0 $grid-gutter; 21 | .page-header{ 22 | padding: 0; 23 | } 24 | } 25 | 26 | .container-500{ 27 | margin: 0 auto; 28 | max-width:500px !important; 29 | 30 | } -------------------------------------------------------------------------------- /app/sass/common/_images.scss: -------------------------------------------------------------------------------- 1 | /* Images 2 | -------------------------------------------------- */ 3 | img { 4 | vertical-align: middle; 5 | } 6 | .img-circle{ 7 | border-radius: 50%; 8 | } 9 | .fatal-error-img{ 10 | max-width: $fatal-error-img; 11 | max-height: $fatal-error-img; 12 | } 13 | .report-img{ 14 | max-width: $report-img; 15 | max-height: $report-img; 16 | } 17 | .navi-img{ 18 | max-width: $navi-img; 19 | max-height: $navi-img; 20 | @include appBorderRadius(50%); 21 | } 22 | 23 | .widget-preview-img{ 24 | max-width: $widget-img; 25 | max-height: $widget-img; 26 | border: solid 4px $widget-img-border-color; 27 | @include appBorderRadius(50%); 28 | } 29 | 30 | .report-img-s{ 31 | display: inline-block; 32 | max-width: $report-img-s; 33 | max-height:$report-img-s; 34 | } 35 | .lang-img{ 36 | max-width: $lang-img; 37 | max-height:$lang-img; 38 | } 39 | .img-opacity-50{ 40 | opacity: 0.5; 41 | filter: alpha(opacity=50); 42 | 43 | } 44 | .config-device-img{ 45 | max-width: $config-device-img; 46 | } -------------------------------------------------------------------------------- /app/sass/common/_legend.scss: -------------------------------------------------------------------------------- 1 | /* Legend 2 | -------------------------------------------------- */ 3 | .legend-entry { 4 | font-size: 95%; 5 | margin: $spacing-double 0 0 0; 6 | padding: $spacing 0 0 0; 7 | border-top: solid 1px $app-bcg-gray; 8 | .legend-title{ 9 | margin: $spacing-half 0 $spacing-half 0; 10 | font-weight: bold; 11 | } 12 | .legend-row { 13 | margin:0 0 $spacing-half 0; 14 | 15 | } 16 | } 17 | .legend-inline { 18 | .legend-row { 19 | display: inline-block; 20 | margin: 0 $spacing 0 0; 21 | vertical-align: middle; 22 | line-height: 20px; 23 | } 24 | } 25 | 26 | .legend { 27 | position: absolute; 28 | height: auto; 29 | width: 300px; 30 | padding: 10px; 31 | z-index: 1; 32 | top: 20px; 33 | left: 15px; 34 | background-color: #e4f5fc; 35 | border: solid 1px #9fd8ef; 36 | 37 | .legend-entry { 38 | margin: $spacing-half 0 0 0; 39 | padding: $spacing-half 0 0 0; 40 | border-top: solid 1px #9fd8ef; 41 | } 42 | } 43 | 44 | .node { 45 | border-radius: 50%; 46 | background-color: #000000; 47 | width: 15px; 48 | height: 15px; 49 | display: inline-block; 50 | margin-right: 5px; 51 | vertical-align: middle; 52 | } 53 | 54 | .dashed-line { 55 | display: inline-block; 56 | vertical-align: middle; 57 | margin-right: 5px; 58 | width: 15px; 59 | height: 1px; 60 | border: none; 61 | border-top: 3px dashed #000000; 62 | } 63 | 64 | .strong-line { 65 | display: inline-block; 66 | vertical-align: middle; 67 | margin-right: 5px; 68 | width: 15px; 69 | height: 1px; 70 | border: none; 71 | border-top: 7px solid #000000; 72 | } 73 | 74 | .strong-line-yellow { 75 | border-top: 7px solid yellow; 76 | } 77 | 78 | .thin-line { 79 | display: inline-block; 80 | vertical-align: middle; 81 | margin-right: 5px; 82 | width: 15px; 83 | height: 1px; 84 | border: none; 85 | border-top: 1px solid #000000; 86 | } -------------------------------------------------------------------------------- /app/sass/common/_list_group.scss: -------------------------------------------------------------------------------- 1 | /* List groups 2 | -------------------------------------------------- */ 3 | 4 | .list-group-item { 5 | border-color: $app-border-color; 6 | } 7 | // Configuration menu 8 | .row-configuration{ 9 | .menu-vertical{ 10 | height: auto; 11 | max-height: 800px; 12 | overflow-x: hidden; 13 | .list-group-item { 14 | padding: 5px 7px; 15 | a{ 16 | color: $header-subnavi-color; 17 | } 18 | &.active{ 19 | a{ 20 | color: #ffffff; 21 | } 22 | 23 | } 24 | } 25 | } 26 | } 27 | .configuration-select{ 28 | margin: 0 0 $spacing-double 0; 29 | padding: $spacing; 30 | background-color: $app-color-secondary; 31 | } 32 | 33 | .list-report{ 34 | margin: 0 ; 35 | padding: 0; 36 | li{ 37 | padding: $spacing 0; 38 | display: block; 39 | border-top: solid 1px $app-border-color; 40 | } 41 | li:first-child{ 42 | border-top: 0 none; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /app/sass/common/_loader.scss: -------------------------------------------------------------------------------- 1 | /* Absolute Center CSS Spinner 2 | http://codepen.io/MattIn4D/pen/LiKFC 3 | -------------------------------------------------- */ 4 | #loading{ 5 | position: fixed; 6 | z-index: $zindex-loader - 1; 7 | width: $loader-w; 8 | height: $loader-h; 9 | overflow: show; 10 | margin: $loader-margin; 11 | top: 0; 12 | left: 0; 13 | bottom: 0; 14 | right: 0; 15 | text-align: center; 16 | color: $loader-color; 17 | .loading-in{ 18 | position: relative; 19 | z-index: $zindex-loader; 20 | margin: auto; 21 | padding: $spacing; 22 | background-color: $loader-bcg-color; 23 | border: solid 2px $loader-border-color; 24 | @include appBorderRadius($app-border-radius); 25 | } 26 | a{ 27 | font-weight: bold; 28 | text-decoration: underline; 29 | } 30 | } 31 | 32 | /* Transparent Overlay */ 33 | .loading-spin:before { 34 | content: ''; 35 | display: block; 36 | position: fixed; 37 | top: 0; 38 | left: 0; 39 | width: 100%; 40 | height: 100%; 41 | background-color: $app-overlay-bcg-color; 42 | } 43 | 44 | .loading-fade{ 45 | opacity: 0; 46 | -webkit-transition: opacity $loader-fadeout; 47 | -moz-transition: opacity $loader-fadeout; 48 | -ms-transition: opacity $loader-fadeout; 49 | -o-transition: opacity $loader-fadeout; 50 | transition: opacity $loader-fadeout; 51 | 52 | } 53 | -------------------------------------------------------------------------------- /app/sass/common/_pagination.scss: -------------------------------------------------------------------------------- 1 | /* Pagination 2 | -------------------------------------------------- */ 3 | .pagination > li > a, .pagination > li > span { 4 | color: $pagination-color; 5 | background-color: $pagination-bcg-color; 6 | border: 1px solid $pagination-border-color; 7 | } 8 | 9 | .pagination > li > a:hover, .pagination > li > a:focus, .pagination > li > span:hover, .pagination > li > span:focus { 10 | color: $pagination-color; 11 | background-color: $app-body-bcg-color; 12 | border-color:$pagination-border-color; 13 | } 14 | 15 | .pagination > .disabled > a, .pagination > .disabled > a:hover, .pagination > .disabled > a:focus { 16 | color: lighten($pagination-color, 30%); 17 | background-color: $pagination-bcg-color; 18 | border-color: $pagination-border-color; 19 | cursor: not-allowed; 20 | } 21 | 22 | .pagination > .active > a, .pagination > .active > a:hover { 23 | color: $pagination-active-color; 24 | background-color: $pagination-active-bcg-color; 25 | border-color: $pagination-border-color; 26 | } -------------------------------------------------------------------------------- /app/sass/common/_panel.scss: -------------------------------------------------------------------------------- 1 | /* Panel CSS 2 | -------------------------------------------------- */ 3 | .panel { 4 | border: 1px solid $app-border-color; 5 | -webkit-box-shadow: none; 6 | box-shadow: none; 7 | } 8 | .panel-highlighted{ 9 | border: 4px solid darken($app-border-color,20%); 10 | -webkit-box-shadow: 0px 0px 6px 0px rgba(50, 50, 50, 0.43); 11 | -moz-box-shadow: 0px 0px 6px 0px rgba(50, 50, 50, 0.43); 12 | box-shadow: 0px 0px 6px 0px rgba(50, 50, 50, 0.43); 13 | } 14 | .panel-default > .panel-heading { 15 | color: #2A6496; 16 | font-size: 1rem !important; 17 | font-weight: bold; 18 | background-color: $app-color-secondary; 19 | border-color: $app-border-color; 20 | } 21 | 22 | .panel-default > .panel-footer { 23 | background-color: lighten($app-color-secondary,5%); 24 | border-color: $app-border-color; 25 | } 26 | 27 | /* Well CSS 28 | -------------------------------------------------- */ 29 | .well { 30 | 31 | background-color: $app-color-secondary; 32 | border: 1px solid $app-border-color; 33 | border-radius: 4px; 34 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); 35 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); 36 | } 37 | .panel-heading.command { 38 | padding: 5px 15px 5px 5px; 39 | display: grid; 40 | grid-template-columns: min-content min-content auto; 41 | gap: 1rem; 42 | } 43 | .breadcrumb.command { 44 | margin: 0; 45 | padding: 0; 46 | background: inherit; 47 | } 48 | .expert-command { 49 | .panel-body { 50 | padding: var(--space); 51 | } 52 | .list-group { 53 | margin-bottom: calc(var(--space) * 2); 54 | } 55 | .panel-title { 56 | font-size: 1.1rem; 57 | } 58 | input { 59 | padding: var(--space); 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /app/sass/common/_progress.scss: -------------------------------------------------------------------------------- 1 | /* Progress 2 | -------------------------------------------------- */ 3 | .modal-progress{ 4 | height: 30px; 5 | margin: 0 0 $spacing 0; 6 | /*-webkit-border-radius: 0px; 7 | -moz-border-radius: 0px; 8 | -o-border-radius: 0px; 9 | border-radius: 0px; 10 | border: 0px;*/ 11 | .progress-bar{ 12 | line-height: 30px; 13 | } 14 | 15 | } -------------------------------------------------------------------------------- /app/sass/common/_report.scss: -------------------------------------------------------------------------------- 1 | /* Report 2 | -------------------------------------------------- */ 3 | .app-row-report{ 4 | border-top: solid 1px $report-border-color; 5 | background-color: $report-bcg-color; 6 | border-bottom: solid 1px $report-border-color; 7 | } 8 | .report-entry { 9 | border-bottom: solid 1px $report-border-color; 10 | padding: $spacing $spacing-half; 11 | width: 100%; 12 | .report-col{ 13 | display: table-cell; 14 | vertical-align: middle; 15 | } 16 | .report-media{ 17 | width: $report-img + $spacing; 18 | } 19 | .report-body{} 20 | .report-ctrl{ 21 | 22 | min-width: 110px; 23 | display: block; 24 | text-align: right; 25 | } 26 | 27 | .report-ctrl-3{ 28 | min-width: 160px; 29 | } 30 | .report-col-w30{ 31 | width: 30%; 32 | } 33 | } 34 | .rssi-bar { 35 | display: flex; 36 | position: relative; 37 | .rssi-value { 38 | text-align: end; 39 | padding-left: 0.5ch; 40 | ; 41 | } 42 | .std-label { 43 | position: relative; 44 | transform: translateX(-50%); 45 | background: repeating-linear-gradient( 46 | 300deg, rgb(0 0 0 / 50%) 0, rgb(0 0 0 / 50%) 1px, transparent 1px, transparent 2.4px 47 | ); 48 | &::before { 49 | content: attr(data-std); 50 | position: absolute; 51 | top: 50%; 52 | left: 100%; 53 | color: rgb(0 0 0 / 50%); 54 | transform: translate(.5ch, -50%); 55 | font-size: .9rem; 56 | } 57 | } 58 | } 59 | 60 | .progress-bar-no-data { 61 | background-color: lightgray; 62 | } 63 | .background-rssi { 64 | width: 2px; 65 | height: 1.4rem; 66 | position: absolute; 67 | border-left: 2px dashed rgb(0 0 0 / 50%); 68 | } 69 | -------------------------------------------------------------------------------- /app/sass/common/_table.scss: -------------------------------------------------------------------------------- 1 | /* Table 2 | -------------------------------------------------- */ 3 | .table{ 4 | .td-action{ 5 | text-align: right; 6 | } 7 | margin-bottom: 0; 8 | thead{ 9 | tr{ 10 | th{ 11 | border-bottom: 2px solid $table-border-color; 12 | color: $app-a-color; 13 | } 14 | } 15 | } 16 | tbody{ 17 | tr{ 18 | td{ 19 | border-top: 1px solid $table-border-color; 20 | } 21 | } 22 | } 23 | tbody{ 24 | tr{ 25 | td{ 26 | border-top: 1px solid $table-border-color; 27 | } 28 | } 29 | } 30 | 31 | } 32 | 33 | .table-hover > tbody > tr:hover > td, .table-hover > tbody > tr:hover > th { 34 | 35 | background-color: #e4f5fc; 36 | } 37 | #inspect_queue_table{ 38 | font-size: 12px; 39 | width: 100%; 40 | } 41 | .th-slider{ 42 | min-width: 100px; 43 | } 44 | 45 | .table-condensed td p{ 46 | margin: 0 !important; 47 | padding: 0 !important; 48 | } 49 | 50 | .table-report{ 51 | border: 0 !important; 52 | margin-bottom: 0 !important; 53 | tbody{ 54 | td{ 55 | vertical-align: middle !important; 56 | background-color: $report-bcg-color; 57 | } 58 | .td-img{ 59 | width: 30px; 60 | } 61 | .td-action{ 62 | text-align: right; 63 | } 64 | } 65 | } 66 | .table-products{ 67 | td{ 68 | vertical-align: middle !important; 69 | } 70 | } 71 | 72 | .td20{ 73 | width: 20%; 74 | } 75 | .td30{ 76 | width: 30%; 77 | } 78 | 79 | .packets-table { 80 | td { 81 | text-align: right; 82 | } 83 | 84 | td:nth-child(2) { 85 | text-align: left; 86 | } 87 | } 88 | -------------------------------------------------------------------------------- /app/sass/common/_tabs.scss: -------------------------------------------------------------------------------- 1 | /* Tabs - old bootstrap tabs 2 | -------------------------------------------------- */ 3 | .nav-tabs { 4 | border-bottom: 1px solid #9fd8ef; 5 | } 6 | 7 | .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus { 8 | color: #555; 9 | cursor: default; 10 | background-color: #fff; 11 | border: 1px solid $app-border-color; 12 | border-bottom-color: transparent; 13 | } 14 | 15 | .nav > li > a:hover, .nav > li > a:focus { 16 | text-decoration: none; 17 | background-color: #e4f5fc; 18 | } 19 | 20 | .nav-tabs > li > a:hover { 21 | border-color: $app-border-color; 22 | } 23 | 24 | .tab-content{ 25 | padding: 20px; 26 | margin: 0 0 20px 0; 27 | border: solid 1px $app-border-color; 28 | border-top-color: transparent; 29 | } -------------------------------------------------------------------------------- /app/sass/compile.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | sass main.scss ../css/main.css 4 | -------------------------------------------------------------------------------- /app/sass/config.rb: -------------------------------------------------------------------------------- 1 | # Require any additional compass plugins here. 2 | 3 | # Set this to the root of your project when deployed: 4 | http_path = "/" 5 | css_dir = "../css" 6 | sass_dir = "/" 7 | images_dir = "images" 8 | javascripts_dir = "javascripts" 9 | cache_path = '../../../_tmp/.sass-cache' 10 | 11 | # You can select your preferred output style here (can be overridden via the command line): 12 | # output_style = :expanded or :nested or :compact or :compressed 13 | 14 | # To enable relative paths to assets via compass helper functions. Uncomment: 15 | # relative_assets = true 16 | 17 | # To disable debugging comments that display the original location of your selectors. Uncomment: 18 | # line_comments = false 19 | 20 | 21 | # If you prefer the indented syntax, you might want to regenerate this 22 | # project again passing --syntax sass, or you can uncomment this: 23 | # preferred_syntax = :sass 24 | # and then run: 25 | # sass-convert -R --from scss --to sass sass scss && rm -rf sass && mv scss sass 26 | -------------------------------------------------------------------------------- /app/sass/modules/_activeassoc.scss: -------------------------------------------------------------------------------- 1 | /* Active assoc 2 | -------------------------------------------------- */ 3 | /*.badge-assoc{ 4 | margin: 0 5px 5px 0; 5 | padding: 5px; 6 | }*/ 7 | .active-assoc-entry{ 8 | .btn{ 9 | margin: 0 $spacing-half $spacing-half 0; 10 | } 11 | } 12 | 13 | .btn-group-assoc-devices.false-false .btn { 14 | display: none; 15 | } 16 | 17 | .btn-group-assoc-devices.true-false .btn { 18 | color: #333; 19 | background-color: #f9f9f9; 20 | border-color: #ccc; 21 | } 22 | 23 | .btn-group-assoc-devices.false-true .btn{ 24 | color: #fff; 25 | background-color: #f0ad4e; 26 | border-color: #eea236; 27 | } 28 | .btn-group-assoc-devices .btn.excluded-true{ 29 | text-decoration: line-through; 30 | color: #333; 31 | background-color: #f9f9f9; 32 | border-color: #ccc; 33 | } 34 | 35 | -------------------------------------------------------------------------------- /app/sass/modules/_configuration.scss: -------------------------------------------------------------------------------- 1 | 2 | /* Configuration 3 | -------------------------------------------------- */ 4 | .table-cfg-interview th{ 5 | width: 25%; 6 | } 7 | .cfg-block { 8 | margin: 0 0 20px 0; 9 | padding: 0 0 20px 0; 10 | border-bottom: solid 1px #9fd8ef; 11 | } 12 | 13 | .cfg-block-top-border { 14 | margin: 20px 0 0 0; 15 | padding: 20px 0 0 0; 16 | border-top: solid 1px #9fd8ef; 17 | } 18 | 19 | .cfg-block h4{ 20 | color: #2A6496; 21 | } 22 | 23 | .cfg-control-content{ 24 | padding: 10px; 25 | margin: 10px 0; 26 | background-color: #e4f5fc; 27 | } 28 | .cfg-info{ 29 | margin: 10px 0 0 0; 30 | padding: 10px 0 0 0; 31 | border-top: solid 1px #fff; 32 | } 33 | .commads-is-current{ 34 | text-decoration: underline; 35 | } 36 | #wakeup_cont .form-inline{ 37 | /* max-width: 300px;*/ 38 | float: left; 39 | } 40 | 41 | #device_select_image_container{ 42 | margin: 20px; 43 | } 44 | 45 | #device_select_image{ 46 | margin: 0 auto; 47 | text-align: center; 48 | } 49 | 50 | 51 | #device_select_image img{ 52 | margin: 0 auto; 53 | max-width: 200px; 54 | } 55 | 56 | .btn-assoc{ 57 | margin-bottom: 5px; 58 | } 59 | 60 | .btn-group-assoc-devices{ 61 | margin: 0 5px 5px 0; 62 | } 63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /app/sass/modules/_control.scss: -------------------------------------------------------------------------------- 1 | /* Network control 2 | -------------------------------------------------- */ 3 | 4 | .nm-response.alert-danger{ 5 | font-weight: bold; 6 | } 7 | .block-frequency .btn{ 8 | margin: 8px 8px 0 0; 9 | } 10 | 11 | /* Inclusion S2 12 | -------------------------------------------------- */ 13 | input[type="number"]::-webkit-outer-spin-button, 14 | input[type="number"]::-webkit-inner-spin-button { 15 | -webkit-appearance: none; 16 | margin: 0; 17 | } 18 | input[type="number"].input_number { 19 | display: inline-block; 20 | -moz-appearance: textfield; 21 | width: 5em; 22 | } 23 | 24 | .diabled_label { 25 | color: darkgrey; 26 | } 27 | 28 | /* S2 DSK window 29 | -------------------------------------------------- */ 30 | 31 | .dsk-wrap{ 32 | margin: $spacing; 33 | text-align: center; 34 | .dsk-block{ 35 | padding: 0 2px; 36 | font-size: 120%; 37 | } 38 | .dsk-first-block{ 39 | text-decoration: underline; 40 | } 41 | } -------------------------------------------------------------------------------- /app/sass/modules/_controllerinfo.scss: -------------------------------------------------------------------------------- 1 | /* Controller info 2 | -------------------------------------------------- */ 3 | .table-controller table{ 4 | margin-bottom: 20px; 5 | } 6 | .table-controller h3{ 7 | font-size: 100%; 8 | font-weight: bold; 9 | } 10 | .controller-th{ 11 | width: 15%; 12 | } -------------------------------------------------------------------------------- /app/sass/modules/_home.scss: -------------------------------------------------------------------------------- 1 | /* Homepage 2 | -------------------------------------------------- */ 3 | #page_.custom-ip-true #respone_container .alert-danger{ 4 | display: none !important; 5 | } 6 | 7 | .form-home-ip-in { 8 | margin: 10px auto; 9 | text-align: center; 10 | padding: 10px; 11 | /*position: relative;*/ 12 | } 13 | .product-logo{ 14 | max-width: 100px; 15 | max-height: 150px; 16 | } 17 | .product-description { 18 | line-height: 1.6em; 19 | margin: 30px 0 0 0; 20 | padding: 20px 0 0 0; 21 | border-top: 1px solid #9fd8ef; 22 | } 23 | .product-data-list{ 24 | background-color: #e4f5fc; 25 | -webkit-border-radius: 5px; 26 | -moz-border-radius: 5px; 27 | border-radius: 5px; 28 | } 29 | .product-data-list h3{ 30 | color: #2A6496; 31 | font-size: 120%; 32 | font-weight: bold; 33 | margin: 20px 0 10px 0; 34 | } -------------------------------------------------------------------------------- /app/sass/modules/_installer.scss: -------------------------------------------------------------------------------- 1 | /* Zniffer 2 | -------------------------------------------------- */ 3 | .zniffer-row-Predicast{ 4 | color: #6494BC; 5 | } 6 | .zniffer-row-Multicast{ 7 | color:#80AD80; 8 | } -------------------------------------------------------------------------------- /app/sass/modules/_linkhealth.scss: -------------------------------------------------------------------------------- 1 | /* Link health 2 | -------------------------------------------------- */ 3 | /* ID buttons */ 4 | .btn-mains { 5 | color: $app-brand-warning; 6 | background-color: $app-bcg-warning; 7 | border-color: $app-brand-warning; 8 | } 9 | .btn-portable { 10 | color: $app-color-gray; 11 | background-color: $app-bcg-gray; 12 | border-color: $app-color-gray; 13 | } 14 | .btn-flirs { 15 | color: $app-brand-info; 16 | background-color: $app-bcg-info; 17 | border-color: $app-brand-info; 18 | } 19 | .btn-battery{ 20 | color: $app-brand-success; 21 | background-color: $app-bcg-success; 22 | border-color: $app-brand-success 23 | } 24 | .btn-error, .btn-unknown { 25 | color: $app-brand-danger; 26 | background-color: $app-bcg-danger; 27 | border-color: $app-brand-danger; 28 | } 29 | 30 | /* Traffic indicator */ 31 | .traffic-default { 32 | color: $app-brand-success; 33 | } -------------------------------------------------------------------------------- /app/sass/modules/_networkmap.scss: -------------------------------------------------------------------------------- 1 | /* Network map / cytoscype 2 | -------------------------------------------------- */ 3 | #cy { 4 | margin-top: 70px; 5 | height: 100%; 6 | width: 100%; 7 | position: absolute; 8 | left: 0; 9 | top: 0; 10 | } -------------------------------------------------------------------------------- /app/sass/modules/_routemap.scss: -------------------------------------------------------------------------------- 1 | /* Route map 2 | -------------------------------------------------- */ 3 | #page_routemap{ 4 | #main_content.container { 5 | max-width: 100%; 6 | width: 100%; 7 | } 8 | } 9 | #graph { 10 | width:99%; 11 | height: 99%; 12 | } 13 | .annotation-title { 14 | font-weight: bold; 15 | } 16 | .ShowModeParams { 17 | padding-left: 1em; 18 | } 19 | #controlPanel { 20 | //position: absolute; 21 | padding: $spacing; 22 | margin: $spacing 0; 23 | background-color: #e4f5fc; 24 | border: solid 1px $app-border-color; 25 | label{ 26 | font-weight: normal; 27 | } 28 | 29 | .row { 30 | margin-left: 0px; 31 | margin-right: 0px; 32 | } 33 | .btn-row { 34 | margin-bottom: 10px; 35 | } 36 | } 37 | #annotationPanel { 38 | right: 0; 39 | } 40 | #plan { 41 | margin-left: auto; 42 | margin-right: auto; 43 | max-width: 100%; 44 | max-height: 100%; 45 | width: auto; 46 | height: auto; 47 | z-index: -1; 48 | } 49 | #svg { 50 | padding: $spacing-double; 51 | margin: 0; 52 | width: 100%; 53 | height: 100%; 54 | } -------------------------------------------------------------------------------- /app/sass/modules/_rssi.scss: -------------------------------------------------------------------------------- 1 | /* RSSI 2 | -------------------------------------------------- */ 3 | .rssi-entry{ 4 | height: 400px; 5 | width: 100%; 6 | } 7 | 8 | .gauge { 9 | width: 540px; 10 | height: 380px; 11 | float: left; 12 | } 13 | 14 | -------------------------------------------------------------------------------- /app/sass/modules/_sensors.scss: -------------------------------------------------------------------------------- 1 | /* Sensors 2 | -------------------------------------------------- */ 3 | .sensor-triggered{ 4 | color: #FFB200; 5 | } -------------------------------------------------------------------------------- /app/sass/modules/_settings.scss: -------------------------------------------------------------------------------- 1 | /* Settings 2 | -------------------------------------------------- */ 3 | .settings-lang{ 4 | a{ 5 | &:hover, 6 | &:active, 7 | &:focus, 8 | &:visited{ 9 | text-decoration: none; 10 | } 11 | 12 | &:active, 13 | &:focus, 14 | &:visited{ 15 | border: none; 16 | outline: 0; 17 | } 18 | 19 | img{ 20 | width: 32px; 21 | height: 32px; 22 | display: inline-block; 23 | margin-right: $spacing-half; 24 | } 25 | } 26 | a.active{ 27 | img{ 28 | border: solid 4px $app-border-color; 29 | } 30 | 31 | } 32 | } -------------------------------------------------------------------------------- /app/sass/modules/_statistics.scss: -------------------------------------------------------------------------------- 1 | /* Statistics 2 | -------------------------------------------------- */ 3 | .statistic-entry{ 4 | margin: 0 0 $spacing-double 0; 5 | .statistic-title{ 6 | font-size: 110%; 7 | margin: 0 0 $spacing-half 0; 8 | } 9 | .progress{ 10 | height: 30px; 11 | .progress-bar{ 12 | line-height: 30px; 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /app/sass/modules/_timing.scss: -------------------------------------------------------------------------------- 1 | /* Timing 2 | -------------------------------------------------- */ 3 | .timing-packet{ 4 | margin: 0 $spacing 0 0; 5 | /* padding: 5px;*/ 6 | &.hour-ago-true{ 7 | background-color: lighten($app-border-color,10%); 8 | //border: solid 1px $app-border-color; 9 | padding: 2px 5px; 10 | margin-right: 0; 11 | } 12 | } -------------------------------------------------------------------------------- /app/sass/print.scss: -------------------------------------------------------------------------------- 1 | /* Bootstrap files 2 | -------------------------------------------------- */ 3 | @import "vendor/bootstrap/bootstrap"; 4 | 5 | /* Font Awesome files 6 | -------------------------------------------------- */ 7 | @import "vendor/fontawesome/font-awesome"; 8 | /* Expert UI files 9 | -------------------------------------------------- */ 10 | @import "common/_variables"; 11 | @import "common/_mixins"; 12 | // Common 13 | @import "common/_body"; 14 | // Modules 15 | @import "modules/_routing"; 16 | // Print 17 | @import "modules/_print"; 18 | -------------------------------------------------------------------------------- /app/sass/responsive/_mq_lg.scss: -------------------------------------------------------------------------------- 1 | /* Large Devices, Wide Screens 2 | -------------------------------------------------- */ 3 | $app-container-w: 1200px; 4 | $app-body-font-size: 14px; 5 | $header-h: 50px; 6 | $subnavigation-margin: 0 0 0 66%; 7 | $page-navi-h: 30px; 8 | $page-navi-w: 33.33333%; 9 | $app-input-padding: 6px 12px; 10 | $checkbox-scale: 1.2; 11 | $radio-scale: 1.2; 12 | $app-btn-icon-size: 120%; 13 | $app-btn-tag-icon-size: 120%; 14 | $dropdown-w: 380px; 15 | $widget-col-w: 33.33333%; 16 | $widget-zwave-col-w: 50%; 17 | $widget-icon-size: 140%; 18 | $element-widget-col-h: 124px; 19 | $app-widget-col-h: 110px; 20 | $element-icon-img: 32px; 21 | $report-img: 40px; 22 | $customize-img: 300px; 23 | $customize-widget-col-h: $customize-img/2 + 100; 24 | $room-col-w: 25%; 25 | $room-img-preview: 200px; 26 | $modal-w: 60%; 27 | $modal-close-size: 140%; 28 | $footer-h: 40px; 29 | $app-updatetime-font-size: 90%; 30 | $app-updatetime-icon-size: 90%; 31 | $device-vendor-w: 20%; 32 | 33 | /*-------------------------------------*/ 34 | // Shared styles 35 | @import "_mq_shared"; -------------------------------------------------------------------------------- /app/sass/responsive/_mq_md.scss: -------------------------------------------------------------------------------- 1 | /* Medium Devices, Desktops 2 | -------------------------------------------------- */ 3 | $app-container-w: 100%; 4 | $app-body-font-size: 14px; 5 | $header-h: 50px; 6 | $subnavigation-margin: 0 0 0 50%; 7 | $page-navi-h: 30px; 8 | $page-navi-w: 33.33333%; 9 | $checkbox-scale: 1.2; 10 | $radio-scale: 1.2; 11 | $app-input-padding: 6px 12px; 12 | $app-btn-icon-size: 120%; 13 | //$app-btn-tag-font-size: 110%; 14 | $app-btn-tag-icon-size: 120%; 15 | $dropdown-w: 360px; 16 | $widget-col-w: 50%; 17 | $widget-zwave-col-w: 50%; 18 | $widget-icon-size: 140%; 19 | $element-widget-col-h: 124px; 20 | $app-widget-col-h: 110px; 21 | $element-icon-img: 32px; 22 | $report-img: 40px; 23 | $customize-img: 300px; 24 | $customize-widget-col-h: $customize-img/2 + 100; 25 | $room-col-w: 33.33333%; 26 | $room-img-preview: 170px; 27 | $modal-w: 60%; 28 | $modal-close-size: 140%; 29 | $footer-h: 40px; 30 | $app-updatetime-font-size: 90%; 31 | $app-updatetime-icon-size: 90%; 32 | $device-vendor-w: 20%; 33 | /*-------------------------------------*/ 34 | // Shared styles 35 | @import "_mq_shared"; 36 | 37 | 38 | -------------------------------------------------------------------------------- /app/sass/responsive/_mq_sm.scss: -------------------------------------------------------------------------------- 1 | /* Small Devices, Tablets 2 | -------------------------------------------------- */ 3 | -------------------------------------------------------------------------------- /app/sass/skins/default/_main.scss: -------------------------------------------------------------------------------- 1 | /* Main navigation 2 | -------------------------------------------------- */ 3 | 4 | 5 | #main_navigation_wrap { 6 | /*background-color: $header-bcg-color; 7 | border-bottom: solid 1px $header-border-color; 8 | height: $header-h;*/ 9 | background: #1f355e; /* Old browsers */ 10 | background: -moz-linear-gradient(top, #1f355e 0%, #174a7c 100%); /* FF3.6+ */ 11 | background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#1f355e), color-stop(100%,#174a7c)); /* Chrome,Safari4+ */ 12 | background: -webkit-linear-gradient(top, #1f355e 0%,#174a7c 100%); /* Chrome10+,Safari5.1+ */ 13 | background: -o-linear-gradient(top, #1f355e 0%,#174a7c 100%); /* Opera 11.10+ */ 14 | background: -ms-linear-gradient(top, #1f355e 0%,#174a7c 100%); /* IE10+ */ 15 | background: linear-gradient(to bottom, #1f355e 0%,#174a7c 100%); /* W3C */ 16 | filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1f355e', endColorstr='#174a7c',GradientType=0 ); /* IE6-9 */ 17 | border-bottom: solid 4px $header-border-color; 18 | } 19 | 20 | 21 | 22 | /* Form 23 | -------------------------------------------------- */ 24 | /*.form-page{ 25 | border-width: 4px; 26 | }*/ 27 | 28 | -------------------------------------------------------------------------------- /app/sass/vendor/_jquery.fileupload-ui.scss: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | /* 3 | * jQuery File Upload UI Plugin CSS 4 | * https://github.com/blueimp/jQuery-File-Upload 5 | * 6 | * Copyright 2010, Sebastian Tschan 7 | * https://blueimp.net 8 | * 9 | * Licensed under the MIT license: 10 | * http://www.opensource.org/licenses/MIT 11 | */ 12 | 13 | .fileupload-buttonbar .btn, 14 | .fileupload-buttonbar .toggle { 15 | margin-bottom: 5px; 16 | } 17 | .progress-animated .progress-bar, 18 | .progress-animated .bar { 19 | background: url("../img/progressbar.gif") !important; 20 | filter: none; 21 | } 22 | .fileupload-process { 23 | float: right; 24 | display: none; 25 | } 26 | .fileupload-processing .fileupload-process, 27 | .files .processing .preview { 28 | display: block; 29 | width: 32px; 30 | height: 32px; 31 | background: url("../img/loading.gif") center no-repeat; 32 | background-size: contain; 33 | } 34 | .files audio, 35 | .files video { 36 | max-width: 300px; 37 | } 38 | 39 | @media (max-width: 767px) { 40 | .fileupload-buttonbar .toggle, 41 | .files .toggle, 42 | .files .btn span { 43 | display: none; 44 | } 45 | .files .name { 46 | width: 80px; 47 | word-wrap: break-word; 48 | } 49 | .files audio, 50 | .files video { 51 | max-width: 80px; 52 | } 53 | .files img, 54 | .files canvas { 55 | max-width: 100%; 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /app/sass/vendor/_jquery.fileupload.scss: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | /* 3 | * jQuery File Upload Plugin CSS 4 | * https://github.com/blueimp/jQuery-File-Upload 5 | * 6 | * Copyright 2013, Sebastian Tschan 7 | * https://blueimp.net 8 | * 9 | * Licensed under the MIT license: 10 | * http://www.opensource.org/licenses/MIT 11 | */ 12 | 13 | .fileinput-button { 14 | position: relative; 15 | overflow: hidden; 16 | display: inline-block; 17 | } 18 | .fileinput-button input { 19 | position: absolute; 20 | top: 0; 21 | right: 0; 22 | margin: 0; 23 | opacity: 0; 24 | -ms-filter: 'alpha(opacity=0)'; 25 | font-size: 200px; 26 | direction: ltr; 27 | cursor: pointer; 28 | } 29 | 30 | /* Fixes for IE < 8 */ 31 | @media screen\9 { 32 | .fileinput-button input { 33 | filter: alpha(opacity=0); 34 | font-size: 100%; 35 | height: 100%; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_alerts.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Alerts 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base styles 7 | // ------------------------- 8 | 9 | .alert { 10 | padding: $alert-padding; 11 | margin-bottom: $line-height-computed; 12 | border: 1px solid transparent; 13 | border-radius: $alert-border-radius; 14 | 15 | // Headings for larger alerts 16 | h4 { 17 | margin-top: 0; 18 | // Specified for the h4 to prevent conflicts of changing $headings-color 19 | color: inherit; 20 | } 21 | // Provide class for links that match alerts 22 | .alert-link { 23 | font-weight: $alert-link-font-weight; 24 | } 25 | 26 | // Improve alignment and spacing of inner content 27 | > p, 28 | > ul { 29 | margin-bottom: 0; 30 | } 31 | > p + p { 32 | margin-top: 5px; 33 | } 34 | } 35 | 36 | // Dismissible alerts 37 | // 38 | // Expand the right padding and account for the close button's positioning. 39 | 40 | .alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0. 41 | .alert-dismissible { 42 | padding-right: ($alert-padding + 20); 43 | 44 | // Adjust close link position 45 | .close { 46 | position: relative; 47 | top: -2px; 48 | right: -21px; 49 | color: inherit; 50 | } 51 | } 52 | 53 | // Alternate styles 54 | // 55 | // Generate contextual modifier classes for colorizing the alert. 56 | 57 | .alert-success { 58 | @include alert-variant($alert-success-bg, $alert-success-border, $alert-success-text); 59 | } 60 | .alert-info { 61 | @include alert-variant($alert-info-bg, $alert-info-border, $alert-info-text); 62 | } 63 | .alert-warning { 64 | @include alert-variant($alert-warning-bg, $alert-warning-border, $alert-warning-text); 65 | } 66 | .alert-danger { 67 | @include alert-variant($alert-danger-bg, $alert-danger-border, $alert-danger-text); 68 | } 69 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_alerts_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Alerts 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base styles 7 | // ------------------------- 8 | 9 | .alert { 10 | padding: $alert-padding; 11 | margin-bottom: $line-height-computed; 12 | border: 1px solid transparent; 13 | border-radius: $alert-border-radius; 14 | 15 | // Headings for larger alerts 16 | h4 { 17 | margin-top: 0; 18 | // Specified for the h4 to prevent conflicts of changing $headings-color 19 | color: inherit; 20 | } 21 | // Provide class for links that match alerts 22 | .alert-link { 23 | font-weight: $alert-link-font-weight; 24 | } 25 | 26 | // Improve alignment and spacing of inner content 27 | > p, 28 | > ul { 29 | margin-bottom: 0; 30 | } 31 | > p + p { 32 | margin-top: 5px; 33 | } 34 | } 35 | 36 | // Dismissible alerts 37 | // 38 | // Expand the right padding and account for the close button's positioning. 39 | 40 | .alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0. 41 | .alert-dismissible { 42 | padding-right: ($alert-padding + 20); 43 | 44 | // Adjust close link position 45 | .close { 46 | position: relative; 47 | top: -2px; 48 | right: -21px; 49 | color: inherit; 50 | } 51 | } 52 | 53 | // Alternate styles 54 | // 55 | // Generate contextual modifier classes for colorizing the alert. 56 | 57 | .alert-success { 58 | @include alert-variant($alert-success-bg, $alert-success-border, $alert-success-text); 59 | } 60 | .alert-info { 61 | @include alert-variant($alert-info-bg, $alert-info-border, $alert-info-text); 62 | } 63 | .alert-warning { 64 | @include alert-variant($alert-warning-bg, $alert-warning-border, $alert-warning-text); 65 | } 66 | .alert-danger { 67 | @include alert-variant($alert-danger-bg, $alert-danger-border, $alert-danger-text); 68 | } 69 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_badges.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Badges 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | .badge { 8 | display: inline-block; 9 | min-width: 10px; 10 | padding: 3px 7px; 11 | font-size: $font-size-small; 12 | font-weight: $badge-font-weight; 13 | color: $badge-color; 14 | line-height: $badge-line-height; 15 | vertical-align: baseline; 16 | white-space: nowrap; 17 | text-align: center; 18 | background-color: $badge-bg; 19 | border-radius: $badge-border-radius; 20 | 21 | // Empty badges collapse automatically (not available in IE8) 22 | &:empty { 23 | display: none; 24 | } 25 | 26 | // Quick fix for badges in buttons 27 | .btn & { 28 | position: relative; 29 | top: -1px; 30 | } 31 | .btn-xs & { 32 | top: 0; 33 | padding: 1px 5px; 34 | } 35 | 36 | // [converter] extracted a& to a.badge 37 | 38 | // Account for badges in navs 39 | a.list-group-item.active > &, 40 | .nav-pills > .active > a > & { 41 | color: $badge-active-color; 42 | background-color: $badge-active-bg; 43 | } 44 | .nav-pills > li > a > & { 45 | margin-left: 3px; 46 | } 47 | } 48 | 49 | // Hover state, but only for links 50 | a.badge { 51 | &:hover, 52 | &:focus { 53 | color: $badge-link-hover-color; 54 | text-decoration: none; 55 | cursor: pointer; 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_badges_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Badges 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | .badge { 8 | display: inline-block; 9 | min-width: 10px; 10 | padding: 3px 7px; 11 | font-size: $font-size-small; 12 | font-weight: $badge-font-weight; 13 | color: $badge-color; 14 | line-height: $badge-line-height; 15 | vertical-align: baseline; 16 | white-space: nowrap; 17 | text-align: center; 18 | background-color: $badge-bg; 19 | border-radius: $badge-border-radius; 20 | 21 | // Empty badges collapse automatically (not available in IE8) 22 | &:empty { 23 | display: none; 24 | } 25 | 26 | // Quick fix for badges in buttons 27 | .btn & { 28 | position: relative; 29 | top: -1px; 30 | } 31 | .btn-xs & { 32 | top: 0; 33 | padding: 1px 5px; 34 | } 35 | 36 | // [converter] extracted a& to a.badge 37 | 38 | // Account for badges in navs 39 | a.list-group-item.active > &, 40 | .nav-pills > .active > a > & { 41 | color: $badge-active-color; 42 | background-color: $badge-active-bg; 43 | } 44 | .nav-pills > li > a > & { 45 | margin-left: 3px; 46 | } 47 | } 48 | 49 | // Hover state, but only for links 50 | a.badge { 51 | &:hover, 52 | &:focus { 53 | color: $badge-link-hover-color; 54 | text-decoration: none; 55 | cursor: pointer; 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_breadcrumbs.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Breadcrumbs 3 | // -------------------------------------------------- 4 | 5 | 6 | .breadcrumb { 7 | padding: $breadcrumb-padding-vertical $breadcrumb-padding-horizontal; 8 | margin-bottom: $line-height-computed; 9 | list-style: none; 10 | background-color: $breadcrumb-bg; 11 | border-radius: $border-radius-base; 12 | 13 | > li { 14 | display: inline-block; 15 | 16 | + li:before { 17 | content: "#{$breadcrumb-separator}\00a0"; // Unicode space added since inline-block means non-collapsing white-space 18 | padding: 0 5px; 19 | color: $breadcrumb-color; 20 | } 21 | } 22 | 23 | > .active { 24 | color: $breadcrumb-active-color; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_breadcrumbs_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Breadcrumbs 3 | // -------------------------------------------------- 4 | 5 | 6 | .breadcrumb { 7 | padding: $breadcrumb-padding-vertical $breadcrumb-padding-horizontal; 8 | margin-bottom: $line-height-computed; 9 | list-style: none; 10 | background-color: $breadcrumb-bg; 11 | border-radius: $border-radius-base; 12 | 13 | > li { 14 | display: inline-block; 15 | 16 | + li:before { 17 | content: "#{$breadcrumb-separator}\00a0"; // Unicode space added since inline-block means non-collapsing white-space 18 | padding: 0 5px; 19 | color: $breadcrumb-color; 20 | } 21 | } 22 | 23 | > .active { 24 | color: $breadcrumb-active-color; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_close.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Close icons 3 | // -------------------------------------------------- 4 | 5 | 6 | .close { 7 | float: right; 8 | font-size: ($font-size-base * 1.5); 9 | font-weight: $close-font-weight; 10 | line-height: 1; 11 | color: $close-color; 12 | text-shadow: $close-text-shadow; 13 | @include opacity(.2); 14 | 15 | &:hover, 16 | &:focus { 17 | color: $close-color; 18 | text-decoration: none; 19 | cursor: pointer; 20 | @include opacity(.5); 21 | } 22 | 23 | // [converter] extracted button& to button.close 24 | } 25 | 26 | // Additional properties for button version 27 | // iOS requires the button element instead of an anchor tag. 28 | // If you want the anchor version, it requires `href="#"`. 29 | button.close { 30 | padding: 0; 31 | cursor: pointer; 32 | background: transparent; 33 | border: 0; 34 | -webkit-appearance: none; 35 | } 36 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_close_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Close icons 3 | // -------------------------------------------------- 4 | 5 | 6 | .close { 7 | float: right; 8 | font-size: ($font-size-base * 1.5); 9 | font-weight: $close-font-weight; 10 | line-height: 1; 11 | color: $close-color; 12 | text-shadow: $close-text-shadow; 13 | @include opacity(.2); 14 | 15 | &:hover, 16 | &:focus { 17 | color: $close-color; 18 | text-decoration: none; 19 | cursor: pointer; 20 | @include opacity(.5); 21 | } 22 | 23 | // [converter] extracted button& to button.close 24 | } 25 | 26 | // Additional properties for button version 27 | // iOS requires the button element instead of an anchor tag. 28 | // If you want the anchor version, it requires `href="#"`. 29 | button.close { 30 | padding: 0; 31 | cursor: pointer; 32 | background: transparent; 33 | border: 0; 34 | -webkit-appearance: none; 35 | } 36 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_code.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Code (inline and block) 3 | // -------------------------------------------------- 4 | 5 | 6 | // Inline and block code styles 7 | code, 8 | kbd, 9 | pre, 10 | samp { 11 | font-family: $font-family-monospace; 12 | } 13 | 14 | // Inline code 15 | code { 16 | padding: 2px 4px; 17 | font-size: 90%; 18 | color: $code-color; 19 | background-color: $code-bg; 20 | border-radius: $border-radius-base; 21 | } 22 | 23 | // User input typically entered via keyboard 24 | kbd { 25 | padding: 2px 4px; 26 | font-size: 90%; 27 | color: $kbd-color; 28 | background-color: $kbd-bg; 29 | border-radius: $border-radius-small; 30 | box-shadow: inset 0 -1px 0 rgba(0,0,0,.25); 31 | 32 | kbd { 33 | padding: 0; 34 | font-size: 100%; 35 | box-shadow: none; 36 | } 37 | } 38 | 39 | // Blocks of code 40 | pre { 41 | display: block; 42 | padding: (($line-height-computed - 1) / 2); 43 | margin: 0 0 ($line-height-computed / 2); 44 | font-size: ($font-size-base - 1); // 14px to 13px 45 | line-height: $line-height-base; 46 | word-break: break-all; 47 | word-wrap: break-word; 48 | color: $pre-color; 49 | background-color: $pre-bg; 50 | border: 1px solid $pre-border-color; 51 | border-radius: $border-radius-base; 52 | 53 | // Account for some code outputs that place code tags in pre tags 54 | code { 55 | padding: 0; 56 | font-size: inherit; 57 | color: inherit; 58 | white-space: pre-wrap; 59 | background-color: transparent; 60 | border-radius: 0; 61 | } 62 | } 63 | 64 | // Enable scrollable blocks of code 65 | .pre-scrollable { 66 | max-height: $pre-scrollable-max-height; 67 | overflow-y: scroll; 68 | } 69 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_code_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Code (inline and block) 3 | // -------------------------------------------------- 4 | 5 | 6 | // Inline and block code styles 7 | code, 8 | kbd, 9 | pre, 10 | samp { 11 | font-family: $font-family-monospace; 12 | } 13 | 14 | // Inline code 15 | code { 16 | padding: 2px 4px; 17 | font-size: 90%; 18 | color: $code-color; 19 | background-color: $code-bg; 20 | border-radius: $border-radius-base; 21 | } 22 | 23 | // User input typically entered via keyboard 24 | kbd { 25 | padding: 2px 4px; 26 | font-size: 90%; 27 | color: $kbd-color; 28 | background-color: $kbd-bg; 29 | border-radius: $border-radius-small; 30 | box-shadow: inset 0 -1px 0 rgba(0,0,0,.25); 31 | 32 | kbd { 33 | padding: 0; 34 | font-size: 100%; 35 | box-shadow: none; 36 | } 37 | } 38 | 39 | // Blocks of code 40 | pre { 41 | display: block; 42 | padding: (($line-height-computed - 1) / 2); 43 | margin: 0 0 ($line-height-computed / 2); 44 | font-size: ($font-size-base - 1); // 14px to 13px 45 | line-height: $line-height-base; 46 | word-break: break-all; 47 | word-wrap: break-word; 48 | color: $pre-color; 49 | background-color: $pre-bg; 50 | border: 1px solid $pre-border-color; 51 | border-radius: $border-radius-base; 52 | 53 | // Account for some code outputs that place code tags in pre tags 54 | code { 55 | padding: 0; 56 | font-size: inherit; 57 | color: inherit; 58 | white-space: pre-wrap; 59 | background-color: transparent; 60 | border-radius: 0; 61 | } 62 | } 63 | 64 | // Enable scrollable blocks of code 65 | .pre-scrollable { 66 | max-height: $pre-scrollable-max-height; 67 | overflow-y: scroll; 68 | } 69 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_component-animations.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Component animations 3 | // -------------------------------------------------- 4 | 5 | // Heads up! 6 | // 7 | // We don't use the `.opacity()` mixin here since it causes a bug with text 8 | // fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552. 9 | 10 | .fade { 11 | opacity: 0; 12 | @include transition(opacity .15s linear); 13 | &.in { 14 | opacity: 1; 15 | } 16 | } 17 | 18 | .collapse { 19 | display: none; 20 | 21 | &.in { display: block; } 22 | // [converter] extracted tr&.in to tr.collapse.in 23 | // [converter] extracted tbody&.in to tbody.collapse.in 24 | } 25 | 26 | tr.collapse.in { display: table-row; } 27 | 28 | tbody.collapse.in { display: table-row-group; } 29 | 30 | .collapsing { 31 | position: relative; 32 | height: 0; 33 | overflow: hidden; 34 | @include transition(height .35s ease); 35 | } 36 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_component-animations_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Component animations 3 | // -------------------------------------------------- 4 | 5 | // Heads up! 6 | // 7 | // We don't use the `.opacity()` mixin here since it causes a bug with text 8 | // fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552. 9 | 10 | .fade { 11 | opacity: 0; 12 | @include transition(opacity .15s linear); 13 | &.in { 14 | opacity: 1; 15 | } 16 | } 17 | 18 | .collapse { 19 | display: none; 20 | 21 | &.in { display: block; } 22 | // [converter] extracted tr&.in to tr.collapse.in 23 | // [converter] extracted tbody&.in to tbody.collapse.in 24 | } 25 | 26 | tr.collapse.in { display: table-row; } 27 | 28 | tbody.collapse.in { display: table-row-group; } 29 | 30 | .collapsing { 31 | position: relative; 32 | height: 0; 33 | overflow: hidden; 34 | @include transition(height .35s ease); 35 | } 36 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_grid.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Grid system 3 | // -------------------------------------------------- 4 | 5 | 6 | // Container widths 7 | // 8 | // Set the container width, and override it for fixed navbars in media queries. 9 | 10 | .container { 11 | @include container-fixed(); 12 | 13 | @media (min-width: $screen-sm-min) { 14 | width: $container-sm; 15 | } 16 | @media (min-width: $screen-md-min) { 17 | width: $container-md; 18 | } 19 | @media (min-width: $screen-lg-min) { 20 | width: $container-lg; 21 | } 22 | } 23 | 24 | 25 | // Fluid container 26 | // 27 | // Utilizes the mixin meant for fixed width containers, but without any defined 28 | // width for fluid, full width layouts. 29 | 30 | .container-fluid { 31 | @include container-fixed(); 32 | } 33 | 34 | 35 | // Row 36 | // 37 | // Rows contain and clear the floats of your columns. 38 | 39 | .row { 40 | @include make-row(); 41 | } 42 | 43 | 44 | // Columns 45 | // 46 | // Common styles for small and large grid columns 47 | 48 | @include make-grid-columns(); 49 | 50 | 51 | // Extra small grid 52 | // 53 | // Columns, offsets, pushes, and pulls for extra small devices like 54 | // smartphones. 55 | 56 | @include make-grid(xs); 57 | 58 | 59 | // Small grid 60 | // 61 | // Columns, offsets, pushes, and pulls for the small device range, from phones 62 | // to tablets. 63 | 64 | @media (min-width: $screen-sm-min) { 65 | @include make-grid(sm); 66 | } 67 | 68 | 69 | // Medium grid 70 | // 71 | // Columns, offsets, pushes, and pulls for the desktop device range. 72 | 73 | @media (min-width: $screen-md-min) { 74 | @include make-grid(md); 75 | } 76 | 77 | 78 | // Large grid 79 | // 80 | // Columns, offsets, pushes, and pulls for the large desktop device range. 81 | 82 | @media (min-width: $screen-lg-min) { 83 | @include make-grid(lg); 84 | } 85 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_grid_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Grid system 3 | // -------------------------------------------------- 4 | 5 | 6 | // Container widths 7 | // 8 | // Set the container width, and override it for fixed navbars in media queries. 9 | 10 | .container { 11 | @include container-fixed(); 12 | 13 | @media (min-width: $screen-sm-min) { 14 | width: $container-sm; 15 | } 16 | @media (min-width: $screen-md-min) { 17 | width: $container-md; 18 | } 19 | @media (min-width: $screen-lg-min) { 20 | width: $container-lg; 21 | } 22 | } 23 | 24 | 25 | // Fluid container 26 | // 27 | // Utilizes the mixin meant for fixed width containers, but without any defined 28 | // width for fluid, full width layouts. 29 | 30 | .container-fluid { 31 | @include container-fixed(); 32 | } 33 | 34 | 35 | // Row 36 | // 37 | // Rows contain and clear the floats of your columns. 38 | 39 | .row { 40 | @include make-row(); 41 | } 42 | 43 | 44 | // Columns 45 | // 46 | // Common styles for small and large grid columns 47 | 48 | @include make-grid-columns(); 49 | 50 | 51 | // Extra small grid 52 | // 53 | // Columns, offsets, pushes, and pulls for extra small devices like 54 | // smartphones. 55 | 56 | @include make-grid(xs); 57 | 58 | 59 | // Small grid 60 | // 61 | // Columns, offsets, pushes, and pulls for the small device range, from phones 62 | // to tablets. 63 | 64 | @media (min-width: $screen-sm-min) { 65 | @include make-grid(sm); 66 | } 67 | 68 | 69 | // Medium grid 70 | // 71 | // Columns, offsets, pushes, and pulls for the desktop device range. 72 | 73 | @media (min-width: $screen-md-min) { 74 | @include make-grid(md); 75 | } 76 | 77 | 78 | // Large grid 79 | // 80 | // Columns, offsets, pushes, and pulls for the large desktop device range. 81 | 82 | @media (min-width: $screen-lg-min) { 83 | @include make-grid(lg); 84 | } 85 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_jumbotron.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Jumbotron 3 | // -------------------------------------------------- 4 | 5 | 6 | .jumbotron { 7 | padding: $jumbotron-padding; 8 | margin-bottom: $jumbotron-padding; 9 | color: $jumbotron-color; 10 | background-color: $jumbotron-bg; 11 | 12 | h1, 13 | .h1 { 14 | color: $jumbotron-heading-color; 15 | } 16 | p { 17 | margin-bottom: ($jumbotron-padding / 2); 18 | font-size: $jumbotron-font-size; 19 | font-weight: 200; 20 | } 21 | 22 | > hr { 23 | border-top-color: darken($jumbotron-bg, 10%); 24 | } 25 | 26 | .container & { 27 | border-radius: $border-radius-large; // Only round corners at higher resolutions if contained in a container 28 | } 29 | 30 | .container { 31 | max-width: 100%; 32 | } 33 | 34 | @media screen and (min-width: $screen-sm-min) { 35 | padding-top: ($jumbotron-padding * 1.6); 36 | padding-bottom: ($jumbotron-padding * 1.6); 37 | 38 | .container & { 39 | padding-left: ($jumbotron-padding * 2); 40 | padding-right: ($jumbotron-padding * 2); 41 | } 42 | 43 | h1, 44 | .h1 { 45 | font-size: ($font-size-base * 4.5); 46 | } 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_jumbotron_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Jumbotron 3 | // -------------------------------------------------- 4 | 5 | 6 | .jumbotron { 7 | padding: $jumbotron-padding; 8 | margin-bottom: $jumbotron-padding; 9 | color: $jumbotron-color; 10 | background-color: $jumbotron-bg; 11 | 12 | h1, 13 | .h1 { 14 | color: $jumbotron-heading-color; 15 | } 16 | p { 17 | margin-bottom: ($jumbotron-padding / 2); 18 | font-size: $jumbotron-font-size; 19 | font-weight: 200; 20 | } 21 | 22 | > hr { 23 | border-top-color: darken($jumbotron-bg, 10%); 24 | } 25 | 26 | .container & { 27 | border-radius: $border-radius-large; // Only round corners at higher resolutions if contained in a container 28 | } 29 | 30 | .container { 31 | max-width: 100%; 32 | } 33 | 34 | @media screen and (min-width: $screen-sm-min) { 35 | padding-top: ($jumbotron-padding * 1.6); 36 | padding-bottom: ($jumbotron-padding * 1.6); 37 | 38 | .container & { 39 | padding-left: ($jumbotron-padding * 2); 40 | padding-right: ($jumbotron-padding * 2); 41 | } 42 | 43 | h1, 44 | .h1 { 45 | font-size: ($font-size-base * 4.5); 46 | } 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_labels.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Labels 3 | // -------------------------------------------------- 4 | 5 | .label { 6 | display: inline; 7 | padding: .2em .6em .3em; 8 | font-size: 75%; 9 | font-weight: bold; 10 | line-height: 1; 11 | color: $label-color; 12 | text-align: center; 13 | white-space: nowrap; 14 | vertical-align: baseline; 15 | border-radius: .25em; 16 | 17 | // [converter] extracted a& to a.label 18 | 19 | // Empty labels collapse automatically (not available in IE8) 20 | &:empty { 21 | display: none; 22 | } 23 | 24 | // Quick fix for labels in buttons 25 | .btn & { 26 | position: relative; 27 | top: -1px; 28 | } 29 | } 30 | 31 | // Add hover effects, but only for links 32 | a.label { 33 | &:hover, 34 | &:focus { 35 | color: $label-link-hover-color; 36 | text-decoration: none; 37 | cursor: pointer; 38 | } 39 | } 40 | 41 | // Colors 42 | // Contextual variations (linked labels get darker on :hover) 43 | 44 | .label-default { 45 | @include label-variant($label-default-bg); 46 | } 47 | 48 | .label-primary { 49 | @include label-variant($label-primary-bg); 50 | } 51 | 52 | .label-success { 53 | @include label-variant($label-success-bg); 54 | } 55 | 56 | .label-info { 57 | @include label-variant($label-info-bg); 58 | } 59 | 60 | .label-warning { 61 | @include label-variant($label-warning-bg); 62 | } 63 | 64 | .label-danger { 65 | @include label-variant($label-danger-bg); 66 | } 67 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_labels_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Labels 3 | // -------------------------------------------------- 4 | 5 | .label { 6 | display: inline; 7 | padding: .2em .6em .3em; 8 | font-size: 75%; 9 | font-weight: bold; 10 | line-height: 1; 11 | color: $label-color; 12 | text-align: center; 13 | white-space: nowrap; 14 | vertical-align: baseline; 15 | border-radius: .25em; 16 | 17 | // [converter] extracted a& to a.label 18 | 19 | // Empty labels collapse automatically (not available in IE8) 20 | &:empty { 21 | display: none; 22 | } 23 | 24 | // Quick fix for labels in buttons 25 | .btn & { 26 | position: relative; 27 | top: -1px; 28 | } 29 | } 30 | 31 | // Add hover effects, but only for links 32 | a.label { 33 | &:hover, 34 | &:focus { 35 | color: $label-link-hover-color; 36 | text-decoration: none; 37 | cursor: pointer; 38 | } 39 | } 40 | 41 | // Colors 42 | // Contextual variations (linked labels get darker on :hover) 43 | 44 | .label-default { 45 | @include label-variant($label-default-bg); 46 | } 47 | 48 | .label-primary { 49 | @include label-variant($label-primary-bg); 50 | } 51 | 52 | .label-success { 53 | @include label-variant($label-success-bg); 54 | } 55 | 56 | .label-info { 57 | @include label-variant($label-info-bg); 58 | } 59 | 60 | .label-warning { 61 | @include label-variant($label-warning-bg); 62 | } 63 | 64 | .label-danger { 65 | @include label-variant($label-danger-bg); 66 | } 67 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_media.scss: -------------------------------------------------------------------------------- 1 | // Media objects 2 | // Source: http://stubbornella.org/content/?p=497 3 | // -------------------------------------------------- 4 | 5 | 6 | // Common styles 7 | // ------------------------- 8 | 9 | // Clear the floats 10 | .media, 11 | .media-body { 12 | overflow: hidden; 13 | zoom: 1; 14 | } 15 | 16 | // Proper spacing between instances of .media 17 | .media, 18 | .media .media { 19 | margin-top: 15px; 20 | } 21 | .media:first-child { 22 | margin-top: 0; 23 | } 24 | 25 | // For images and videos, set to block 26 | .media-object { 27 | display: block; 28 | } 29 | 30 | // Reset margins on headings for tighter default spacing 31 | .media-heading { 32 | margin: 0 0 5px; 33 | } 34 | 35 | 36 | // Media image alignment 37 | // ------------------------- 38 | 39 | .media { 40 | > .pull-left { 41 | margin-right: 10px; 42 | } 43 | > .pull-right { 44 | margin-left: 10px; 45 | } 46 | } 47 | 48 | 49 | // Media list variation 50 | // ------------------------- 51 | 52 | // Undo default ul/ol styles 53 | .media-list { 54 | padding-left: 0; 55 | list-style: none; 56 | } 57 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_media_1.scss: -------------------------------------------------------------------------------- 1 | // Media objects 2 | // Source: http://stubbornella.org/content/?p=497 3 | // -------------------------------------------------- 4 | 5 | 6 | // Common styles 7 | // ------------------------- 8 | 9 | // Clear the floats 10 | .media, 11 | .media-body { 12 | overflow: hidden; 13 | zoom: 1; 14 | } 15 | 16 | // Proper spacing between instances of .media 17 | .media, 18 | .media .media { 19 | margin-top: 15px; 20 | } 21 | .media:first-child { 22 | margin-top: 0; 23 | } 24 | 25 | // For images and videos, set to block 26 | .media-object { 27 | display: block; 28 | } 29 | 30 | // Reset margins on headings for tighter default spacing 31 | .media-heading { 32 | margin: 0 0 5px; 33 | } 34 | 35 | 36 | // Media image alignment 37 | // ------------------------- 38 | 39 | .media { 40 | > .pull-left { 41 | margin-right: 10px; 42 | } 43 | > .pull-right { 44 | margin-left: 10px; 45 | } 46 | } 47 | 48 | 49 | // Media list variation 50 | // ------------------------- 51 | 52 | // Undo default ul/ol styles 53 | .media-list { 54 | padding-left: 0; 55 | list-style: none; 56 | } 57 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_mixins.scss: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------------------------------- 3 | 4 | // Utilities 5 | @import "mixins/hide-text"; 6 | @import "mixins/opacity"; 7 | @import "mixins/image"; 8 | @import "mixins/labels"; 9 | @import "mixins/reset-filter"; 10 | @import "mixins/resize"; 11 | @import "mixins/responsive-visibility"; 12 | @import "mixins/size"; 13 | @import "mixins/tab-focus"; 14 | @import "mixins/text-emphasis"; 15 | @import "mixins/text-overflow"; 16 | @import "mixins/vendor-prefixes"; 17 | 18 | // Components 19 | @import "mixins/alerts"; 20 | @import "mixins/buttons"; 21 | @import "mixins/panels"; 22 | @import "mixins/pagination"; 23 | @import "mixins/list-group"; 24 | @import "mixins/nav-divider"; 25 | @import "mixins/forms"; 26 | @import "mixins/progress-bar"; 27 | @import "mixins/table-row"; 28 | 29 | // Skins 30 | @import "mixins/background-variant"; 31 | @import "mixins/border-radius"; 32 | @import "mixins/gradients"; 33 | 34 | // Layout 35 | @import "mixins/clearfix"; 36 | @import "mixins/center-block"; 37 | @import "mixins/nav-vertical-align"; 38 | @import "mixins/grid-framework"; 39 | @import "mixins/grid"; 40 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_mixins_1.scss: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------------------------------- 3 | 4 | // Utilities 5 | @import "mixins/hide-text"; 6 | @import "mixins/opacity"; 7 | @import "mixins/image"; 8 | @import "mixins/labels"; 9 | @import "mixins/reset-filter"; 10 | @import "mixins/resize"; 11 | @import "mixins/responsive-visibility"; 12 | @import "mixins/size"; 13 | @import "mixins/tab-focus"; 14 | @import "mixins/text-emphasis"; 15 | @import "mixins/text-overflow"; 16 | @import "mixins/vendor-prefixes"; 17 | 18 | // Components 19 | @import "mixins/alerts"; 20 | @import "mixins/buttons"; 21 | @import "mixins/panels"; 22 | @import "mixins/pagination"; 23 | @import "mixins/list-group"; 24 | @import "mixins/nav-divider"; 25 | @import "mixins/forms"; 26 | @import "mixins/progress-bar"; 27 | @import "mixins/table-row"; 28 | 29 | // Skins 30 | @import "mixins/background-variant"; 31 | @import "mixins/border-radius"; 32 | @import "mixins/gradients"; 33 | 34 | // Layout 35 | @import "mixins/clearfix"; 36 | @import "mixins/center-block"; 37 | @import "mixins/nav-vertical-align"; 38 | @import "mixins/grid-framework"; 39 | @import "mixins/grid"; 40 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_pager.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Pager pagination 3 | // -------------------------------------------------- 4 | 5 | 6 | .pager { 7 | padding-left: 0; 8 | margin: $line-height-computed 0; 9 | list-style: none; 10 | text-align: center; 11 | @include clearfix(); 12 | li { 13 | display: inline; 14 | > a, 15 | > span { 16 | display: inline-block; 17 | padding: 5px 14px; 18 | background-color: $pager-bg; 19 | border: 1px solid $pager-border; 20 | border-radius: $pager-border-radius; 21 | } 22 | 23 | > a:hover, 24 | > a:focus { 25 | text-decoration: none; 26 | background-color: $pager-hover-bg; 27 | } 28 | } 29 | 30 | .next { 31 | > a, 32 | > span { 33 | float: right; 34 | } 35 | } 36 | 37 | .previous { 38 | > a, 39 | > span { 40 | float: left; 41 | } 42 | } 43 | 44 | .disabled { 45 | > a, 46 | > a:hover, 47 | > a:focus, 48 | > span { 49 | color: $pager-disabled-color; 50 | background-color: $pager-bg; 51 | cursor: not-allowed; 52 | } 53 | } 54 | 55 | } 56 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_pager_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Pager pagination 3 | // -------------------------------------------------- 4 | 5 | 6 | .pager { 7 | padding-left: 0; 8 | margin: $line-height-computed 0; 9 | list-style: none; 10 | text-align: center; 11 | @include clearfix(); 12 | li { 13 | display: inline; 14 | > a, 15 | > span { 16 | display: inline-block; 17 | padding: 5px 14px; 18 | background-color: $pager-bg; 19 | border: 1px solid $pager-border; 20 | border-radius: $pager-border-radius; 21 | } 22 | 23 | > a:hover, 24 | > a:focus { 25 | text-decoration: none; 26 | background-color: $pager-hover-bg; 27 | } 28 | } 29 | 30 | .next { 31 | > a, 32 | > span { 33 | float: right; 34 | } 35 | } 36 | 37 | .previous { 38 | > a, 39 | > span { 40 | float: left; 41 | } 42 | } 43 | 44 | .disabled { 45 | > a, 46 | > a:hover, 47 | > a:focus, 48 | > span { 49 | color: $pager-disabled-color; 50 | background-color: $pager-bg; 51 | cursor: not-allowed; 52 | } 53 | } 54 | 55 | } 56 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_print.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Basic print styles 3 | // -------------------------------------------------- 4 | // Source: https://github.com/h5bp/html5-boilerplate/blob/master/css/main.css 5 | 6 | @media print { 7 | 8 | * { 9 | text-shadow: none !important; 10 | color: #000 !important; // Black prints faster: h5bp.com/s 11 | background: transparent !important; 12 | box-shadow: none !important; 13 | } 14 | 15 | a, 16 | a:visited { 17 | text-decoration: underline; 18 | } 19 | 20 | a[href]:after { 21 | content: " (" attr(href) ")"; 22 | } 23 | 24 | abbr[title]:after { 25 | content: " (" attr(title) ")"; 26 | } 27 | 28 | // Don't show links for images, or javascript/internal links 29 | a[href^="javascript:"]:after, 30 | a[href^="#"]:after { 31 | content: ""; 32 | } 33 | 34 | pre, 35 | blockquote { 36 | border: 1px solid #999; 37 | page-break-inside: avoid; 38 | } 39 | 40 | thead { 41 | display: table-header-group; // h5bp.com/t 42 | } 43 | 44 | tr, 45 | img { 46 | page-break-inside: avoid; 47 | } 48 | 49 | img { 50 | max-width: 100% !important; 51 | } 52 | 53 | p, 54 | h2, 55 | h3 { 56 | orphans: 3; 57 | widows: 3; 58 | } 59 | 60 | h2, 61 | h3 { 62 | page-break-after: avoid; 63 | } 64 | 65 | // Chrome (OSX) fix for https://github.com/twbs/bootstrap/issues/11245 66 | // Once fixed, we can just straight up remove this. 67 | select { 68 | background: #fff !important; 69 | } 70 | 71 | // Bootstrap components 72 | .navbar { 73 | display: none; 74 | } 75 | .table { 76 | td, 77 | th { 78 | background-color: #fff !important; 79 | } 80 | } 81 | .btn, 82 | .dropup > .btn { 83 | > .caret { 84 | border-top-color: #000 !important; 85 | } 86 | } 87 | .label { 88 | border: 1px solid #000; 89 | } 90 | 91 | .table { 92 | border-collapse: collapse !important; 93 | } 94 | .table-bordered { 95 | th, 96 | td { 97 | border: 1px solid #ddd !important; 98 | } 99 | } 100 | 101 | } 102 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_print_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Basic print styles 3 | // -------------------------------------------------- 4 | // Source: https://github.com/h5bp/html5-boilerplate/blob/master/css/main.css 5 | 6 | @media print { 7 | 8 | * { 9 | text-shadow: none !important; 10 | color: #000 !important; // Black prints faster: h5bp.com/s 11 | background: transparent !important; 12 | box-shadow: none !important; 13 | } 14 | 15 | a, 16 | a:visited { 17 | text-decoration: underline; 18 | } 19 | 20 | a[href]:after { 21 | content: " (" attr(href) ")"; 22 | } 23 | 24 | abbr[title]:after { 25 | content: " (" attr(title) ")"; 26 | } 27 | 28 | // Don't show links for images, or javascript/internal links 29 | a[href^="javascript:"]:after, 30 | a[href^="#"]:after { 31 | content: ""; 32 | } 33 | 34 | pre, 35 | blockquote { 36 | border: 1px solid #999; 37 | page-break-inside: avoid; 38 | } 39 | 40 | thead { 41 | display: table-header-group; // h5bp.com/t 42 | } 43 | 44 | tr, 45 | img { 46 | page-break-inside: avoid; 47 | } 48 | 49 | img { 50 | max-width: 100% !important; 51 | } 52 | 53 | p, 54 | h2, 55 | h3 { 56 | orphans: 3; 57 | widows: 3; 58 | } 59 | 60 | h2, 61 | h3 { 62 | page-break-after: avoid; 63 | } 64 | 65 | // Chrome (OSX) fix for https://github.com/twbs/bootstrap/issues/11245 66 | // Once fixed, we can just straight up remove this. 67 | select { 68 | background: #fff !important; 69 | } 70 | 71 | // Bootstrap components 72 | .navbar { 73 | display: none; 74 | } 75 | .table { 76 | td, 77 | th { 78 | background-color: #fff !important; 79 | } 80 | } 81 | .btn, 82 | .dropup > .btn { 83 | > .caret { 84 | border-top-color: #000 !important; 85 | } 86 | } 87 | .label { 88 | border: 1px solid #000; 89 | } 90 | 91 | .table { 92 | border-collapse: collapse !important; 93 | } 94 | .table-bordered { 95 | th, 96 | td { 97 | border: 1px solid #ddd !important; 98 | } 99 | } 100 | 101 | } 102 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_responsive-embed.scss: -------------------------------------------------------------------------------- 1 | // Embeds responsive 2 | // 3 | // Credit: Nicolas Gallagher and SUIT CSS. 4 | 5 | .embed-responsive { 6 | position: relative; 7 | display: block; 8 | height: 0; 9 | padding: 0; 10 | overflow: hidden; 11 | 12 | .embed-responsive-item, 13 | iframe, 14 | embed, 15 | object { 16 | position: absolute; 17 | top: 0; 18 | left: 0; 19 | bottom: 0; 20 | height: 100%; 21 | width: 100%; 22 | border: 0; 23 | } 24 | 25 | // Modifier class for 16:9 aspect ratio 26 | &.embed-responsive-16by9 { 27 | padding-bottom: 56.25%; 28 | } 29 | 30 | // Modifier class for 4:3 aspect ratio 31 | &.embed-responsive-4by3 { 32 | padding-bottom: 75%; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_responsive-embed_1.scss: -------------------------------------------------------------------------------- 1 | // Embeds responsive 2 | // 3 | // Credit: Nicolas Gallagher and SUIT CSS. 4 | 5 | .embed-responsive { 6 | position: relative; 7 | display: block; 8 | height: 0; 9 | padding: 0; 10 | overflow: hidden; 11 | 12 | .embed-responsive-item, 13 | iframe, 14 | embed, 15 | object { 16 | position: absolute; 17 | top: 0; 18 | left: 0; 19 | bottom: 0; 20 | height: 100%; 21 | width: 100%; 22 | border: 0; 23 | } 24 | 25 | // Modifier class for 16:9 aspect ratio 26 | &.embed-responsive-16by9 { 27 | padding-bottom: 56.25%; 28 | } 29 | 30 | // Modifier class for 4:3 aspect ratio 31 | &.embed-responsive-4by3 { 32 | padding-bottom: 75%; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_thumbnails.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Thumbnails 3 | // -------------------------------------------------- 4 | 5 | 6 | // Mixin and adjust the regular image class 7 | .thumbnail { 8 | display: block; 9 | padding: $thumbnail-padding; 10 | margin-bottom: $line-height-computed; 11 | line-height: $line-height-base; 12 | background-color: $thumbnail-bg; 13 | border: 1px solid $thumbnail-border; 14 | border-radius: $thumbnail-border-radius; 15 | @include transition(all .2s ease-in-out); 16 | 17 | > img, 18 | a > img { 19 | @include img-responsive(); 20 | margin-left: auto; 21 | margin-right: auto; 22 | } 23 | 24 | // [converter] extracted a&:hover, a&:focus, a&.active to a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active 25 | 26 | // Image captions 27 | .caption { 28 | padding: $thumbnail-caption-padding; 29 | color: $thumbnail-caption-color; 30 | } 31 | } 32 | 33 | // Add a hover state for linked versions only 34 | a.thumbnail:hover, 35 | a.thumbnail:focus, 36 | a.thumbnail.active { 37 | border-color: $link-color; 38 | } 39 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_thumbnails_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Thumbnails 3 | // -------------------------------------------------- 4 | 5 | 6 | // Mixin and adjust the regular image class 7 | .thumbnail { 8 | display: block; 9 | padding: $thumbnail-padding; 10 | margin-bottom: $line-height-computed; 11 | line-height: $line-height-base; 12 | background-color: $thumbnail-bg; 13 | border: 1px solid $thumbnail-border; 14 | border-radius: $thumbnail-border-radius; 15 | @include transition(all .2s ease-in-out); 16 | 17 | > img, 18 | a > img { 19 | @include img-responsive(); 20 | margin-left: auto; 21 | margin-right: auto; 22 | } 23 | 24 | // [converter] extracted a&:hover, a&:focus, a&.active to a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active 25 | 26 | // Image captions 27 | .caption { 28 | padding: $thumbnail-caption-padding; 29 | color: $thumbnail-caption-color; 30 | } 31 | } 32 | 33 | // Add a hover state for linked versions only 34 | a.thumbnail:hover, 35 | a.thumbnail:focus, 36 | a.thumbnail.active { 37 | border-color: $link-color; 38 | } 39 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_utilities.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Utility classes 3 | // -------------------------------------------------- 4 | 5 | 6 | // Floats 7 | // ------------------------- 8 | 9 | .clearfix { 10 | @include clearfix(); 11 | } 12 | .center-block { 13 | @include center-block(); 14 | } 15 | .pull-right { 16 | float: right !important; 17 | } 18 | .pull-left { 19 | float: left !important; 20 | } 21 | 22 | 23 | // Toggling content 24 | // ------------------------- 25 | 26 | // Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1 27 | .hide { 28 | display: none !important; 29 | } 30 | .show { 31 | display: block !important; 32 | } 33 | .invisible { 34 | visibility: hidden; 35 | } 36 | .text-hide { 37 | @include text-hide(); 38 | } 39 | 40 | 41 | // Hide from screenreaders and browsers 42 | // 43 | // Credit: HTML5 Boilerplate 44 | 45 | .hidden { 46 | display: none !important; 47 | visibility: hidden !important; 48 | } 49 | 50 | 51 | // For Affix plugin 52 | // ------------------------- 53 | 54 | .affix { 55 | position: fixed; 56 | @include translate3d(0, 0, 0); 57 | } 58 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_utilities_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Utility classes 3 | // -------------------------------------------------- 4 | 5 | 6 | // Floats 7 | // ------------------------- 8 | 9 | .clearfix { 10 | @include clearfix(); 11 | } 12 | .center-block { 13 | @include center-block(); 14 | } 15 | .pull-right { 16 | float: right !important; 17 | } 18 | .pull-left { 19 | float: left !important; 20 | } 21 | 22 | 23 | // Toggling content 24 | // ------------------------- 25 | 26 | // Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1 27 | .hide { 28 | display: none !important; 29 | } 30 | .show { 31 | display: block !important; 32 | } 33 | .invisible { 34 | visibility: hidden; 35 | } 36 | .text-hide { 37 | @include text-hide(); 38 | } 39 | 40 | 41 | // Hide from screenreaders and browsers 42 | // 43 | // Credit: HTML5 Boilerplate 44 | 45 | .hidden { 46 | display: none !important; 47 | visibility: hidden !important; 48 | } 49 | 50 | 51 | // For Affix plugin 52 | // ------------------------- 53 | 54 | .affix { 55 | position: fixed; 56 | @include translate3d(0, 0, 0); 57 | } 58 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_wells.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Wells 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | .well { 8 | min-height: 20px; 9 | padding: 19px; 10 | margin-bottom: 20px; 11 | background-color: $well-bg; 12 | border: 1px solid $well-border; 13 | border-radius: $border-radius-base; 14 | @include box-shadow(inset 0 1px 1px rgba(0,0,0,.05)); 15 | blockquote { 16 | border-color: #ddd; 17 | border-color: rgba(0,0,0,.15); 18 | } 19 | } 20 | 21 | // Sizes 22 | .well-lg { 23 | padding: 24px; 24 | border-radius: $border-radius-large; 25 | } 26 | .well-sm { 27 | padding: 9px; 28 | border-radius: $border-radius-small; 29 | } 30 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/_wells_1.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Wells 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | .well { 8 | min-height: 20px; 9 | padding: 19px; 10 | margin-bottom: 20px; 11 | background-color: $well-bg; 12 | border: 1px solid $well-border; 13 | border-radius: $border-radius-base; 14 | @include box-shadow(inset 0 1px 1px rgba(0,0,0,.05)); 15 | blockquote { 16 | border-color: #ddd; 17 | border-color: rgba(0,0,0,.15); 18 | } 19 | } 20 | 21 | // Sizes 22 | .well-lg { 23 | padding: 24px; 24 | border-radius: $border-radius-large; 25 | } 26 | .well-sm { 27 | padding: 9px; 28 | border-radius: $border-radius-small; 29 | } 30 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/bootstrap.scss: -------------------------------------------------------------------------------- 1 | // Core variables and mixins 2 | @import "variables"; 3 | @import "mixins"; 4 | 5 | // Reset 6 | @import "normalize"; 7 | @import "print"; 8 | 9 | // Core CSS 10 | @import "scaffolding"; 11 | @import "type"; 12 | @import "code"; 13 | @import "grid"; 14 | @import "tables"; 15 | @import "forms"; 16 | @import "buttons"; 17 | 18 | // Components 19 | @import "component-animations"; 20 | @import "glyphicons"; 21 | @import "dropdowns"; 22 | @import "button-groups"; 23 | @import "input-groups"; 24 | @import "navs"; 25 | @import "navbar"; 26 | @import "breadcrumbs"; 27 | @import "pagination"; 28 | @import "pager"; 29 | @import "labels"; 30 | @import "badges"; 31 | @import "jumbotron"; 32 | @import "thumbnails"; 33 | @import "alerts"; 34 | @import "progress-bars"; 35 | @import "media"; 36 | @import "list-group"; 37 | @import "panels"; 38 | @import "wells"; 39 | @import "close"; 40 | 41 | // Components w/ JavaScript 42 | @import "modals"; 43 | @import "tooltip"; 44 | @import "popovers"; 45 | @import "carousel"; 46 | 47 | // Utility classes 48 | @import "utilities"; 49 | @import "responsive-utilities"; 50 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/bootstrap_1.scss: -------------------------------------------------------------------------------- 1 | // Core variables and mixins 2 | @import "variables"; 3 | @import "mixins"; 4 | 5 | // Reset and dependencies 6 | @import "normalize"; 7 | @import "print"; 8 | @import "glyphicons"; 9 | 10 | // Core CSS 11 | /*@import "scaffolding";*/ 12 | @import "type"; 13 | /*@import "code";*/ 14 | @import "grid"; 15 | @import "tables"; 16 | @import "forms"; 17 | @import "buttons"; 18 | 19 | // Components 20 | /*@import "component-animations";*/ 21 | /*@import "dropdowns";*/ 22 | @import "button-groups"; 23 | @import "input-groups"; 24 | /*@import "navs";*/ 25 | /*@import "navbar";*/ 26 | /*@import "breadcrumbs";*/ 27 | @import "pagination"; 28 | /*@import "pager";*/ 29 | @import "labels"; 30 | @import "badges"; 31 | /*@import "jumbotron";*/ 32 | /*@import "thumbnails";*/ 33 | @import "alerts"; 34 | @import "progress-bars"; 35 | /*@import "media";*/ 36 | /*@import "list-group";*/ 37 | /*@import "panels";*/ 38 | /*@import "responsive-embed";*/ 39 | /*@import "wells";*/ 40 | /*@import "close";*/ 41 | 42 | // Components w/ JavaScript 43 | /*@import "modals";*/ 44 | /*@import "tooltip";*/ 45 | /*@import "popovers";*/ 46 | /*@import "carousel";*/ 47 | 48 | // Utility classes 49 | @import "utilities"; 50 | @import "responsive-utilities"; 51 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/bootstrap__1.scss: -------------------------------------------------------------------------------- 1 | // Core variables and mixins 2 | @import "variables"; 3 | @import "mixins"; 4 | 5 | // Reset 6 | @import "normalize"; 7 | @import "print"; 8 | 9 | // Core CSS 10 | @import "scaffolding"; 11 | @import "type"; 12 | @import "code"; 13 | @import "grid"; 14 | @import "tables"; 15 | @import "forms"; 16 | @import "buttons"; 17 | 18 | // Components 19 | @import "component-animations"; 20 | @import "glyphicons"; 21 | @import "dropdowns"; 22 | @import "button-groups"; 23 | @import "input-groups"; 24 | @import "navs"; 25 | @import "navbar"; 26 | @import "breadcrumbs"; 27 | @import "pagination"; 28 | @import "pager"; 29 | @import "labels"; 30 | @import "badges"; 31 | @import "jumbotron"; 32 | @import "thumbnails"; 33 | @import "alerts"; 34 | @import "progress-bars"; 35 | @import "media"; 36 | @import "list-group"; 37 | @import "panels"; 38 | @import "wells"; 39 | @import "close"; 40 | 41 | // Components w/ JavaScript 42 | @import "modals"; 43 | @import "tooltip"; 44 | @import "popovers"; 45 | @import "carousel"; 46 | 47 | // Utility classes 48 | @import "utilities"; 49 | @import "responsive-utilities"; 50 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/bootstrap_shui.scss: -------------------------------------------------------------------------------- 1 | // Core variables and mixins 2 | @import "variables"; 3 | @import "mixins"; 4 | 5 | // Reset and dependencies 6 | @import "normalize"; 7 | @import "print"; 8 | @import "glyphicons"; 9 | 10 | // Core CSS 11 | /*@import "scaffolding";*/ 12 | @import "type"; 13 | /*@import "code";*/ 14 | @import "grid"; 15 | @import "tables"; 16 | @import "forms"; 17 | @import "buttons"; 18 | 19 | // Components 20 | /*@import "component-animations";*/ 21 | /*@import "dropdowns";*/ 22 | @import "button-groups"; 23 | @import "input-groups"; 24 | /*@import "navs";*/ 25 | /*@import "navbar";*/ 26 | /*@import "breadcrumbs";*/ 27 | @import "pagination"; 28 | /*@import "pager";*/ 29 | @import "labels"; 30 | @import "badges"; 31 | /*@import "jumbotron";*/ 32 | /*@import "thumbnails";*/ 33 | @import "alerts"; 34 | @import "progress-bars"; 35 | /*@import "media";*/ 36 | /*@import "list-group";*/ 37 | /*@import "panels";*/ 38 | /*@import "responsive-embed";*/ 39 | /*@import "wells";*/ 40 | /*@import "close";*/ 41 | 42 | // Components w/ JavaScript 43 | /*@import "modals";*/ 44 | /*@import "tooltip";*/ 45 | /*@import "popovers";*/ 46 | /*@import "carousel";*/ 47 | 48 | // Utility classes 49 | @import "utilities"; 50 | @import "responsive-utilities"; 51 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_alerts.scss: -------------------------------------------------------------------------------- 1 | // Alerts 2 | 3 | @mixin alert-variant($background, $border, $text-color) { 4 | background-color: $background; 5 | border-color: $border; 6 | color: $text-color; 7 | 8 | hr { 9 | border-top-color: darken($border, 5%); 10 | } 11 | .alert-link { 12 | color: darken($text-color, 10%); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_alerts_1.scss: -------------------------------------------------------------------------------- 1 | // Alerts 2 | 3 | @mixin alert-variant($background, $border, $text-color) { 4 | background-color: $background; 5 | border-color: $border; 6 | color: $text-color; 7 | 8 | hr { 9 | border-top-color: darken($border, 5%); 10 | } 11 | .alert-link { 12 | color: darken($text-color, 10%); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_background-variant.scss: -------------------------------------------------------------------------------- 1 | // Contextual backgrounds 2 | 3 | // [converter] $parent hack 4 | @mixin bg-variant($parent, $color) { 5 | #{$parent} { 6 | background-color: $color; 7 | } 8 | a#{$parent}:hover { 9 | background-color: darken($color, 10%); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_background-variant_1.scss: -------------------------------------------------------------------------------- 1 | // Contextual backgrounds 2 | 3 | // [converter] $parent hack 4 | @mixin bg-variant($parent, $color) { 5 | #{$parent} { 6 | background-color: $color; 7 | } 8 | a#{$parent}:hover { 9 | background-color: darken($color, 10%); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_border-radius.scss: -------------------------------------------------------------------------------- 1 | // Single side border-radius 2 | 3 | @mixin border-top-radius($radius) { 4 | border-top-right-radius: $radius; 5 | border-top-left-radius: $radius; 6 | } 7 | @mixin border-right-radius($radius) { 8 | border-bottom-right-radius: $radius; 9 | border-top-right-radius: $radius; 10 | } 11 | @mixin border-bottom-radius($radius) { 12 | border-bottom-right-radius: $radius; 13 | border-bottom-left-radius: $radius; 14 | } 15 | @mixin border-left-radius($radius) { 16 | border-bottom-left-radius: $radius; 17 | border-top-left-radius: $radius; 18 | } 19 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_border-radius_1.scss: -------------------------------------------------------------------------------- 1 | // Single side border-radius 2 | 3 | @mixin border-top-radius($radius) { 4 | border-top-right-radius: $radius; 5 | border-top-left-radius: $radius; 6 | } 7 | @mixin border-right-radius($radius) { 8 | border-bottom-right-radius: $radius; 9 | border-top-right-radius: $radius; 10 | } 11 | @mixin border-bottom-radius($radius) { 12 | border-bottom-right-radius: $radius; 13 | border-bottom-left-radius: $radius; 14 | } 15 | @mixin border-left-radius($radius) { 16 | border-bottom-left-radius: $radius; 17 | border-top-left-radius: $radius; 18 | } 19 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_buttons.scss: -------------------------------------------------------------------------------- 1 | // Button variants 2 | // 3 | // Easily pump out default styles, as well as :hover, :focus, :active, 4 | // and disabled options for all buttons 5 | 6 | @mixin button-variant($color, $background, $border) { 7 | color: $color; 8 | background-color: $background; 9 | border-color: $border; 10 | 11 | &:hover, 12 | &:focus, 13 | &:active, 14 | &.active, 15 | .open > &.dropdown-toggle { 16 | color: $color; 17 | background-color: darken($background, 10%); 18 | border-color: darken($border, 12%); 19 | } 20 | &:active, 21 | &.active, 22 | .open > &.dropdown-toggle { 23 | background-image: none; 24 | } 25 | &.disabled, 26 | &[disabled], 27 | fieldset[disabled] & { 28 | &, 29 | &:hover, 30 | &:focus, 31 | &:active, 32 | &.active { 33 | background-color: $background; 34 | border-color: $border; 35 | } 36 | } 37 | 38 | .badge { 39 | color: $background; 40 | background-color: $color; 41 | } 42 | } 43 | 44 | // Button sizes 45 | @mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) { 46 | padding: $padding-vertical $padding-horizontal; 47 | font-size: $font-size; 48 | line-height: $line-height; 49 | border-radius: $border-radius; 50 | } 51 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_buttons_1.scss: -------------------------------------------------------------------------------- 1 | // Button variants 2 | // 3 | // Easily pump out default styles, as well as :hover, :focus, :active, 4 | // and disabled options for all buttons 5 | 6 | @mixin button-variant($color, $background, $border) { 7 | color: $color; 8 | background-color: $background; 9 | border-color: $border; 10 | 11 | &:hover, 12 | &:focus, 13 | &:active, 14 | &.active, 15 | .open > &.dropdown-toggle { 16 | color: $color; 17 | background-color: darken($background, 10%); 18 | border-color: darken($border, 12%); 19 | } 20 | &:active, 21 | &.active, 22 | .open > &.dropdown-toggle { 23 | background-image: none; 24 | } 25 | &.disabled, 26 | &[disabled], 27 | fieldset[disabled] & { 28 | &, 29 | &:hover, 30 | &:focus, 31 | &:active, 32 | &.active { 33 | background-color: $background; 34 | border-color: $border; 35 | } 36 | } 37 | 38 | .badge { 39 | color: $background; 40 | background-color: $color; 41 | } 42 | } 43 | 44 | // Button sizes 45 | @mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) { 46 | padding: $padding-vertical $padding-horizontal; 47 | font-size: $font-size; 48 | line-height: $line-height; 49 | border-radius: $border-radius; 50 | } 51 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_center-block.scss: -------------------------------------------------------------------------------- 1 | // Center-align a block level element 2 | 3 | @mixin center-block() { 4 | display: block; 5 | margin-left: auto; 6 | margin-right: auto; 7 | } 8 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_center-block_1.scss: -------------------------------------------------------------------------------- 1 | // Center-align a block level element 2 | 3 | @mixin center-block() { 4 | display: block; 5 | margin-left: auto; 6 | margin-right: auto; 7 | } 8 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_clearfix.scss: -------------------------------------------------------------------------------- 1 | // Clearfix 2 | // 3 | // For modern browsers 4 | // 1. The space content is one way to avoid an Opera bug when the 5 | // contenteditable attribute is included anywhere else in the document. 6 | // Otherwise it causes space to appear at the top and bottom of elements 7 | // that are clearfixed. 8 | // 2. The use of `table` rather than `block` is only necessary if using 9 | // `:before` to contain the top-margins of child elements. 10 | // 11 | // Source: http://nicolasgallagher.com/micro-clearfix-hack/ 12 | 13 | @mixin clearfix() { 14 | &:before, 15 | &:after { 16 | content: " "; // 1 17 | display: table; // 2 18 | } 19 | &:after { 20 | clear: both; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_clearfix_1.scss: -------------------------------------------------------------------------------- 1 | // Clearfix 2 | // 3 | // For modern browsers 4 | // 1. The space content is one way to avoid an Opera bug when the 5 | // contenteditable attribute is included anywhere else in the document. 6 | // Otherwise it causes space to appear at the top and bottom of elements 7 | // that are clearfixed. 8 | // 2. The use of `table` rather than `block` is only necessary if using 9 | // `:before` to contain the top-margins of child elements. 10 | // 11 | // Source: http://nicolasgallagher.com/micro-clearfix-hack/ 12 | 13 | @mixin clearfix() { 14 | &:before, 15 | &:after { 16 | content: " "; // 1 17 | display: table; // 2 18 | } 19 | &:after { 20 | clear: both; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_hide-text.scss: -------------------------------------------------------------------------------- 1 | // CSS image replacement 2 | // 3 | // Heads up! v3 launched with with only `.hide-text()`, but per our pattern for 4 | // mixins being reused as classes with the same name, this doesn't hold up. As 5 | // of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`. 6 | // 7 | // Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757 8 | 9 | // Deprecated as of v3.0.1 (will be removed in v4) 10 | @mixin hide-text() { 11 | font: #{0/0} a; 12 | color: transparent; 13 | text-shadow: none; 14 | background-color: transparent; 15 | border: 0; 16 | } 17 | 18 | // New mixin to use as of v3.0.1 19 | @mixin text-hide() { 20 | @include hide-text(); 21 | } 22 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_hide-text_1.scss: -------------------------------------------------------------------------------- 1 | // CSS image replacement 2 | // 3 | // Heads up! v3 launched with with only `.hide-text()`, but per our pattern for 4 | // mixins being reused as classes with the same name, this doesn't hold up. As 5 | // of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`. 6 | // 7 | // Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757 8 | 9 | // Deprecated as of v3.0.1 (will be removed in v4) 10 | @mixin hide-text() { 11 | font: #{0/0} a; 12 | color: transparent; 13 | text-shadow: none; 14 | background-color: transparent; 15 | border: 0; 16 | } 17 | 18 | // New mixin to use as of v3.0.1 19 | @mixin text-hide() { 20 | @include hide-text(); 21 | } 22 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_image.scss: -------------------------------------------------------------------------------- 1 | // Image Mixins 2 | // - Responsive image 3 | // - Retina image 4 | 5 | 6 | // Responsive image 7 | // 8 | // Keep images from scaling beyond the width of their parents. 9 | @mixin img-responsive($display: block) { 10 | display: $display; 11 | width: 100% \9; // Force IE10 and below to size SVG images correctly 12 | max-width: 100%; // Part 1: Set a maximum relative to the parent 13 | height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching 14 | } 15 | 16 | 17 | // Retina image 18 | // 19 | // Short retina mixin for setting background-image and -size. Note that the 20 | // spelling of `min--moz-device-pixel-ratio` is intentional. 21 | @mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) { 22 | background-image: url(if($bootstrap-sass-asset-helper, twbs-image-path("#{$file-1x}"), "#{$file-1x}")); 23 | 24 | @media 25 | only screen and (-webkit-min-device-pixel-ratio: 2), 26 | only screen and ( min--moz-device-pixel-ratio: 2), 27 | only screen and ( -o-min-device-pixel-ratio: 2/1), 28 | only screen and ( min-device-pixel-ratio: 2), 29 | only screen and ( min-resolution: 192dpi), 30 | only screen and ( min-resolution: 2dppx) { 31 | background-image: url(if($bootstrap-sass-asset-helper, twbs-image-path("#{$file-2x}"), "#{$file-2x}")); 32 | background-size: $width-1x $height-1x; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_image_1.scss: -------------------------------------------------------------------------------- 1 | // Image Mixins 2 | // - Responsive image 3 | // - Retina image 4 | 5 | 6 | // Responsive image 7 | // 8 | // Keep images from scaling beyond the width of their parents. 9 | @mixin img-responsive($display: block) { 10 | display: $display; 11 | width: 100% \9; // Force IE10 and below to size SVG images correctly 12 | max-width: 100%; // Part 1: Set a maximum relative to the parent 13 | height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching 14 | } 15 | 16 | 17 | // Retina image 18 | // 19 | // Short retina mixin for setting background-image and -size. Note that the 20 | // spelling of `min--moz-device-pixel-ratio` is intentional. 21 | @mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) { 22 | background-image: url(if($bootstrap-sass-asset-helper, twbs-image-path("#{$file-1x}"), "#{$file-1x}")); 23 | 24 | @media 25 | only screen and (-webkit-min-device-pixel-ratio: 2), 26 | only screen and ( min--moz-device-pixel-ratio: 2), 27 | only screen and ( -o-min-device-pixel-ratio: 2/1), 28 | only screen and ( min-device-pixel-ratio: 2), 29 | only screen and ( min-resolution: 192dpi), 30 | only screen and ( min-resolution: 2dppx) { 31 | background-image: url(if($bootstrap-sass-asset-helper, twbs-image-path("#{$file-2x}"), "#{$file-2x}")); 32 | background-size: $width-1x $height-1x; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_labels.scss: -------------------------------------------------------------------------------- 1 | // Labels 2 | 3 | @mixin label-variant($color) { 4 | background-color: $color; 5 | 6 | &[href] { 7 | &:hover, 8 | &:focus { 9 | background-color: darken($color, 10%); 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_labels_1.scss: -------------------------------------------------------------------------------- 1 | // Labels 2 | 3 | @mixin label-variant($color) { 4 | background-color: $color; 5 | 6 | &[href] { 7 | &:hover, 8 | &:focus { 9 | background-color: darken($color, 10%); 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_list-group.scss: -------------------------------------------------------------------------------- 1 | // List Groups 2 | 3 | @mixin list-group-item-variant($state, $background, $color) { 4 | .list-group-item-#{$state} { 5 | color: $color; 6 | background-color: $background; 7 | 8 | // [converter] extracted a& to a.list-group-item-#{$state} 9 | } 10 | 11 | a.list-group-item-#{$state} { 12 | color: $color; 13 | 14 | .list-group-item-heading { 15 | color: inherit; 16 | } 17 | 18 | &:hover, 19 | &:focus { 20 | color: $color; 21 | background-color: darken($background, 5%); 22 | } 23 | &.active, 24 | &.active:hover, 25 | &.active:focus { 26 | color: #fff; 27 | background-color: $color; 28 | border-color: $color; 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_list-group_1.scss: -------------------------------------------------------------------------------- 1 | // List Groups 2 | 3 | @mixin list-group-item-variant($state, $background, $color) { 4 | .list-group-item-#{$state} { 5 | color: $color; 6 | background-color: $background; 7 | 8 | // [converter] extracted a& to a.list-group-item-#{$state} 9 | } 10 | 11 | a.list-group-item-#{$state} { 12 | color: $color; 13 | 14 | .list-group-item-heading { 15 | color: inherit; 16 | } 17 | 18 | &:hover, 19 | &:focus { 20 | color: $color; 21 | background-color: darken($background, 5%); 22 | } 23 | &.active, 24 | &.active:hover, 25 | &.active:focus { 26 | color: #fff; 27 | background-color: $color; 28 | border-color: $color; 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_nav-divider.scss: -------------------------------------------------------------------------------- 1 | // Horizontal dividers 2 | // 3 | // Dividers (basically an hr) within dropdowns and nav lists 4 | 5 | @mixin nav-divider($color: #e5e5e5) { 6 | height: 1px; 7 | margin: (($line-height-computed / 2) - 1) 0; 8 | overflow: hidden; 9 | background-color: $color; 10 | } 11 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_nav-divider_1.scss: -------------------------------------------------------------------------------- 1 | // Horizontal dividers 2 | // 3 | // Dividers (basically an hr) within dropdowns and nav lists 4 | 5 | @mixin nav-divider($color: #e5e5e5) { 6 | height: 1px; 7 | margin: (($line-height-computed / 2) - 1) 0; 8 | overflow: hidden; 9 | background-color: $color; 10 | } 11 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_nav-vertical-align.scss: -------------------------------------------------------------------------------- 1 | // Navbar vertical align 2 | // 3 | // Vertically center elements in the navbar. 4 | // Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin. 5 | 6 | @mixin navbar-vertical-align($element-height) { 7 | margin-top: (($navbar-height - $element-height) / 2); 8 | margin-bottom: (($navbar-height - $element-height) / 2); 9 | } 10 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_nav-vertical-align_1.scss: -------------------------------------------------------------------------------- 1 | // Navbar vertical align 2 | // 3 | // Vertically center elements in the navbar. 4 | // Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin. 5 | 6 | @mixin navbar-vertical-align($element-height) { 7 | margin-top: (($navbar-height - $element-height) / 2); 8 | margin-bottom: (($navbar-height - $element-height) / 2); 9 | } 10 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_opacity.scss: -------------------------------------------------------------------------------- 1 | // Opacity 2 | 3 | @mixin opacity($opacity) { 4 | opacity: $opacity; 5 | // IE8 filter 6 | $opacity-ie: ($opacity * 100); 7 | filter: #{alpha(opacity=$opacity-ie)}; 8 | } 9 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_opacity_1.scss: -------------------------------------------------------------------------------- 1 | // Opacity 2 | 3 | @mixin opacity($opacity) { 4 | opacity: $opacity; 5 | // IE8 filter 6 | $opacity-ie: ($opacity * 100); 7 | filter: #{alpha(opacity=$opacity-ie)}; 8 | } 9 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_pagination.scss: -------------------------------------------------------------------------------- 1 | // Pagination 2 | 3 | @mixin pagination-size($padding-vertical, $padding-horizontal, $font-size, $border-radius) { 4 | > li { 5 | > a, 6 | > span { 7 | padding: $padding-vertical $padding-horizontal; 8 | font-size: $font-size; 9 | } 10 | &:first-child { 11 | > a, 12 | > span { 13 | @include border-left-radius($border-radius); 14 | } 15 | } 16 | &:last-child { 17 | > a, 18 | > span { 19 | @include border-right-radius($border-radius); 20 | } 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_pagination_1.scss: -------------------------------------------------------------------------------- 1 | // Pagination 2 | 3 | @mixin pagination-size($padding-vertical, $padding-horizontal, $font-size, $border-radius) { 4 | > li { 5 | > a, 6 | > span { 7 | padding: $padding-vertical $padding-horizontal; 8 | font-size: $font-size; 9 | } 10 | &:first-child { 11 | > a, 12 | > span { 13 | @include border-left-radius($border-radius); 14 | } 15 | } 16 | &:last-child { 17 | > a, 18 | > span { 19 | @include border-right-radius($border-radius); 20 | } 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_panels.scss: -------------------------------------------------------------------------------- 1 | // Panels 2 | 3 | @mixin panel-variant($border, $heading-text-color, $heading-bg-color, $heading-border) { 4 | border-color: $border; 5 | 6 | & > .panel-heading { 7 | color: $heading-text-color; 8 | background-color: $heading-bg-color; 9 | border-color: $heading-border; 10 | 11 | + .panel-collapse > .panel-body { 12 | border-top-color: $border; 13 | } 14 | .badge { 15 | color: $heading-bg-color; 16 | background-color: $heading-text-color; 17 | } 18 | } 19 | & > .panel-footer { 20 | + .panel-collapse > .panel-body { 21 | border-bottom-color: $border; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_panels_1.scss: -------------------------------------------------------------------------------- 1 | // Panels 2 | 3 | @mixin panel-variant($border, $heading-text-color, $heading-bg-color, $heading-border) { 4 | border-color: $border; 5 | 6 | & > .panel-heading { 7 | color: $heading-text-color; 8 | background-color: $heading-bg-color; 9 | border-color: $heading-border; 10 | 11 | + .panel-collapse > .panel-body { 12 | border-top-color: $border; 13 | } 14 | .badge { 15 | color: $heading-bg-color; 16 | background-color: $heading-text-color; 17 | } 18 | } 19 | & > .panel-footer { 20 | + .panel-collapse > .panel-body { 21 | border-bottom-color: $border; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_progress-bar.scss: -------------------------------------------------------------------------------- 1 | // Progress bars 2 | 3 | @mixin progress-bar-variant($color) { 4 | background-color: $color; 5 | 6 | // Deprecated parent class requirement as of v3.2.0 7 | .progress-striped & { 8 | @include gradient-striped(); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_progress-bar_1.scss: -------------------------------------------------------------------------------- 1 | // Progress bars 2 | 3 | @mixin progress-bar-variant($color) { 4 | background-color: $color; 5 | 6 | // Deprecated parent class requirement as of v3.2.0 7 | .progress-striped & { 8 | @include gradient-striped(); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_reset-filter.scss: -------------------------------------------------------------------------------- 1 | // Reset filters for IE 2 | // 3 | // When you need to remove a gradient background, do not forget to use this to reset 4 | // the IE filter for IE9 and below. 5 | 6 | @mixin reset-filter() { 7 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); 8 | } 9 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_reset-filter_1.scss: -------------------------------------------------------------------------------- 1 | // Reset filters for IE 2 | // 3 | // When you need to remove a gradient background, do not forget to use this to reset 4 | // the IE filter for IE9 and below. 5 | 6 | @mixin reset-filter() { 7 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); 8 | } 9 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_resize.scss: -------------------------------------------------------------------------------- 1 | // Resize anything 2 | 3 | @mixin resizable($direction) { 4 | resize: $direction; // Options: horizontal, vertical, both 5 | overflow: auto; // Per CSS3 UI, `resize` only applies when `overflow` isn't `visible` 6 | } 7 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_resize_1.scss: -------------------------------------------------------------------------------- 1 | // Resize anything 2 | 3 | @mixin resizable($direction) { 4 | resize: $direction; // Options: horizontal, vertical, both 5 | overflow: auto; // Per CSS3 UI, `resize` only applies when `overflow` isn't `visible` 6 | } 7 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_responsive-visibility.scss: -------------------------------------------------------------------------------- 1 | // Responsive utilities 2 | 3 | // 4 | // More easily include all the states for responsive-utilities.less. 5 | // [converter] $parent hack 6 | @mixin responsive-visibility($parent) { 7 | #{$parent} { 8 | display: block !important; 9 | } 10 | table#{$parent} { display: table; } 11 | tr#{$parent} { display: table-row !important; } 12 | th#{$parent}, 13 | td#{$parent} { display: table-cell !important; } 14 | } 15 | 16 | // [converter] $parent hack 17 | @mixin responsive-invisibility($parent) { 18 | #{$parent} { 19 | display: none !important; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_responsive-visibility_1.scss: -------------------------------------------------------------------------------- 1 | // Responsive utilities 2 | 3 | // 4 | // More easily include all the states for responsive-utilities.less. 5 | // [converter] $parent hack 6 | @mixin responsive-visibility($parent) { 7 | #{$parent} { 8 | display: block !important; 9 | } 10 | table#{$parent} { display: table; } 11 | tr#{$parent} { display: table-row !important; } 12 | th#{$parent}, 13 | td#{$parent} { display: table-cell !important; } 14 | } 15 | 16 | // [converter] $parent hack 17 | @mixin responsive-invisibility($parent) { 18 | #{$parent} { 19 | display: none !important; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_size.scss: -------------------------------------------------------------------------------- 1 | // Sizing shortcuts 2 | 3 | @mixin size($width, $height) { 4 | width: $width; 5 | height: $height; 6 | } 7 | 8 | @mixin square($size) { 9 | @include size($size, $size); 10 | } 11 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_size_1.scss: -------------------------------------------------------------------------------- 1 | // Sizing shortcuts 2 | 3 | @mixin size($width, $height) { 4 | width: $width; 5 | height: $height; 6 | } 7 | 8 | @mixin square($size) { 9 | @include size($size, $size); 10 | } 11 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_tab-focus.scss: -------------------------------------------------------------------------------- 1 | // WebKit-style focus 2 | 3 | @mixin tab-focus() { 4 | // Default 5 | outline: thin dotted; 6 | // WebKit 7 | outline: 5px auto -webkit-focus-ring-color; 8 | outline-offset: -2px; 9 | } 10 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_tab-focus_1.scss: -------------------------------------------------------------------------------- 1 | // WebKit-style focus 2 | 3 | @mixin tab-focus() { 4 | // Default 5 | outline: thin dotted; 6 | // WebKit 7 | outline: 5px auto -webkit-focus-ring-color; 8 | outline-offset: -2px; 9 | } 10 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_table-row.scss: -------------------------------------------------------------------------------- 1 | // Tables 2 | 3 | @mixin table-row-variant($state, $background) { 4 | // Exact selectors below required to override `.table-striped` and prevent 5 | // inheritance to nested tables. 6 | .table > thead > tr, 7 | .table > tbody > tr, 8 | .table > tfoot > tr { 9 | > td.#{$state}, 10 | > th.#{$state}, 11 | &.#{$state} > td, 12 | &.#{$state} > th { 13 | background-color: $background; 14 | } 15 | } 16 | 17 | // Hover states for `.table-hover` 18 | // Note: this is not available for cells or rows within `thead` or `tfoot`. 19 | .table-hover > tbody > tr { 20 | > td.#{$state}:hover, 21 | > th.#{$state}:hover, 22 | &.#{$state}:hover > td, 23 | &:hover > .#{$state}, 24 | &.#{$state}:hover > th { 25 | background-color: darken($background, 5%); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_table-row_1.scss: -------------------------------------------------------------------------------- 1 | // Tables 2 | 3 | @mixin table-row-variant($state, $background) { 4 | // Exact selectors below required to override `.table-striped` and prevent 5 | // inheritance to nested tables. 6 | .table > thead > tr, 7 | .table > tbody > tr, 8 | .table > tfoot > tr { 9 | > td.#{$state}, 10 | > th.#{$state}, 11 | &.#{$state} > td, 12 | &.#{$state} > th { 13 | background-color: $background; 14 | } 15 | } 16 | 17 | // Hover states for `.table-hover` 18 | // Note: this is not available for cells or rows within `thead` or `tfoot`. 19 | .table-hover > tbody > tr { 20 | > td.#{$state}:hover, 21 | > th.#{$state}:hover, 22 | &.#{$state}:hover > td, 23 | &:hover > .#{$state}, 24 | &.#{$state}:hover > th { 25 | background-color: darken($background, 5%); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_text-emphasis.scss: -------------------------------------------------------------------------------- 1 | // Typography 2 | 3 | // [converter] $parent hack 4 | @mixin text-emphasis-variant($parent, $color) { 5 | #{$parent} { 6 | color: $color; 7 | } 8 | a#{$parent}:hover { 9 | color: darken($color, 10%); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_text-emphasis_1.scss: -------------------------------------------------------------------------------- 1 | // Typography 2 | 3 | // [converter] $parent hack 4 | @mixin text-emphasis-variant($parent, $color) { 5 | #{$parent} { 6 | color: $color; 7 | } 8 | a#{$parent}:hover { 9 | color: darken($color, 10%); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_text-overflow.scss: -------------------------------------------------------------------------------- 1 | // Text overflow 2 | // Requires inline-block or block for proper styling 3 | 4 | @mixin text-overflow() { 5 | overflow: hidden; 6 | text-overflow: ellipsis; 7 | white-space: nowrap; 8 | } 9 | -------------------------------------------------------------------------------- /app/sass/vendor/bootstrap/mixins/_text-overflow_1.scss: -------------------------------------------------------------------------------- 1 | // Text overflow 2 | // Requires inline-block or block for proper styling 3 | 4 | @mixin text-overflow() { 5 | overflow: hidden; 6 | text-overflow: ellipsis; 7 | white-space: nowrap; 8 | } 9 | -------------------------------------------------------------------------------- /app/templates.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @overview This is used to store the compiled and compressed views. 3 | * @author Martin Vach 4 | */ 5 | 6 | /** 7 | * Angular module initialization 8 | * @function myAppTemplates 9 | */ 10 | angular.module('myAppTemplates', []).run(['$templateCache', function($templateCache) {'use strict';}]); 11 | -------------------------------------------------------------------------------- /app/views/auth/auth.html: -------------------------------------------------------------------------------- 1 | 2 |
-------------------------------------------------------------------------------- /app/views/configuration/configuration.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 5 | 6 | 7 | 10 |
11 |
12 | 13 |
14 |
15 | 16 |
17 | 18 |
19 | 20 |
21 | 25 | 26 |
27 |
28 | 29 | 30 |
31 | 32 | 33 |
34 | 35 | 36 |
37 | 38 | 39 |
40 |
41 |
42 |
43 |
44 | -------------------------------------------------------------------------------- /app/views/configuration/expert-command-input.html: -------------------------------------------------------------------------------- 1 |
2 | 3 |
    4 |
  • 5 | 13 |
  • 14 |
15 |
    16 |
  • 17 | 27 |
  • 28 |
29 |
30 | -------------------------------------------------------------------------------- /app/views/configuration/modal_cmdclass.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 |
5 | 7 |

{{_t('th_command_class')}}

8 |
9 | 12 | 18 |
19 |
20 | -------------------------------------------------------------------------------- /app/views/dir-pagination.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/views/dist_head.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/views/error.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 5 |
6 |
-------------------------------------------------------------------------------- /app/views/help/help.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |

Interview is not complete

5 |

Right after inclusion Z-Way determines the functions and capabilities of the new device by sending a lot of requests to the very device. The message „Interview is not complete“ indicates that Z-Way did not receive all the information requested. There are multiple reasons for this:

6 |
    7 |
  • Z-Way is just too busy and needs more time. You should wait up to 30 seconds.
  • 8 |
  • The new device is battery operated and went into deep sleep mode too fast to complete the interview. Just wake up the battery-operated device following the instructions for manual wakeup in the devices manual. Usually this completes the interview.
  • 9 |
  • The device has a malfunction and can’t complete the interview. This must not happen for certified Z-wave devices but may sometimes happen for uncertified test and evaluation devices.
  • 10 |
11 |

It is also possible that some wireless interference impacted the interview process. You can go to the “Interview” page and review the process of the interview by clicking the button “Show Interview Results”. All incomplete command classes offer a button to re-do the interview for this command class only. Doing this sometimes helps to finish interview. It is also possible to re-do the whole interview process by hitting the button “Force re-Interview”.

12 |

Note: If the reason for an incomplete interview is a failed secure command class you must re-include the device. The secure communication must be established within 10 seconds after inclusion.

13 | 14 |

Device Failed

15 |

Z-Way can’t connect to this device anymore. This means that the device is

16 |
    17 |
  • not powered: Repower it!
  • 18 |
  • moved to a position outside the wireless network coverage. Move the device back within the wireless range of the network.
  • 19 |
  • damaged. Remove or Replace the device using the function in the network management tab.
  • 20 |
21 |
-------------------------------------------------------------------------------- /app/views/home/device_reset.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | {{_t('device_reset_locally')}} 5 |
6 |
7 | 8 | 13 |
14 | {{_t('no_device_reset_locally')}} 15 |
16 |
17 |
-------------------------------------------------------------------------------- /app/views/home/dongle.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | {{_t('zwave_network')}} 5 |
6 |
7 | 8 |
9 | {{cfg.dongle}} 10 |
11 | 12 |
13 | 19 |
20 | 21 |
22 |
-------------------------------------------------------------------------------- /app/views/home/home.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 |
6 |
7 |
8 | 9 |
10 | 11 |
12 |
13 |
14 | 15 |
16 | 17 |
18 | 19 |
20 | 21 |
22 |
23 |
24 |
25 | -------------------------------------------------------------------------------- /app/views/home/ip.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 | 7 | 9 |
Error in connecting {{cfg.server_url}}
10 |
Connected to {{cfg.server_url}}
11 |
12 |
-------------------------------------------------------------------------------- /app/views/home/network_health.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | {{_t('txt_net_health')}} 5 |
6 |
7 | 8 | 32 |
33 |
-------------------------------------------------------------------------------- /app/views/home/network_informations.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | {{_t('txt_network_info')}} 5 | ({{home.networkSum}} {{_t('txt_devices_present')}}) 6 |
7 |
8 | 9 |
    10 |
  • {{home.networkInformation.mains}} {{_t('txt_devices_mains')}}
  • 11 |
  • {{home.networkInformation.battery}} 12 | {{_t('txt_devices_battery')}} 13 |
  • 14 |
  • {{home.networkInformation.flirs}} {{_t('txt_devices_flirs')}}
  • 15 |
16 | 17 |
18 |
19 | 20 | -------------------------------------------------------------------------------- /app/views/home/notes.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 | {{_t('txt_notes')}} 6 |
7 | 8 |
9 | 10 |
11 | 12 | {{dataHolder.controller.homeNotes|stripTags}} 13 |   14 | 15 | 24 |
25 | 26 | 27 |
30 | 31 | 34 | 35 |
36 | 44 | 45 |
46 |
47 |
48 | 49 | 50 |
-------------------------------------------------------------------------------- /app/views/home/promo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |

4 | 5 |
-------------------------------------------------------------------------------- /app/views/indicator.html: -------------------------------------------------------------------------------- 1 | 2 | {{_t('jobs')}}: {{cfg.busy_indicator.result}}  3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /app/views/installer/packets.html: -------------------------------------------------------------------------------- 1 |
2 |
3 | 4 | 5 | 6 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
7 | 8 |
17 |
18 | -------------------------------------------------------------------------------- /app/views/installer/reset-statistic.html: -------------------------------------------------------------------------------- 1 |
2 | 15 | 16 |
17 | -------------------------------------------------------------------------------- /app/views/installer/rssi_background.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 |
5 |
6 |
-------------------------------------------------------------------------------- /app/views/installer/rssi_meter.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 |
5 | 11 | 17 |
18 |
19 | 20 |
21 |
22 |
23 |
24 |
25 |
-------------------------------------------------------------------------------- /app/views/installer/rssi_report.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 | 5 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 27 | 28 | 29 |
6 | 7 |
{{v.nodeId}}{{v.name}} 15 |
16 |
17 | {{v.RSSI}}
18 |
19 | {{_t('noData')}} 20 |
21 |
23 |  
24 |
25 |
26 |
30 |
31 | -------------------------------------------------------------------------------- /app/views/network/control/control.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 |
6 | 7 |
8 | 9 |
10 | 11 |
12 | 13 |
14 |
15 | 16 |
17 | 18 | 19 | 20 |
21 | 22 |
23 | 24 |
25 |
26 |
27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 |
35 | -------------------------------------------------------------------------------- /app/views/network/control/control_link_controller.html: -------------------------------------------------------------------------------- 1 | 2 | 10 | -------------------------------------------------------------------------------- /app/views/network/control/control_network_maintance_ctrlchange.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |

{{_t('nm_change_controller_war')}}

5 |
7 | {{_t('nm_controller_state_' + controllerState)}} 8 |
9 | 10 | 22 | 23 | 24 | 36 |
37 | 38 | -------------------------------------------------------------------------------- /app/views/network/control/control_promiscuous.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
{{_t('promiscuous_mode')}}
4 |
5 | 6 |
7 | 8 | 16 | 17 | 25 |
26 |
27 |
28 | 29 | -------------------------------------------------------------------------------- /app/views/network/control/control_restore.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
{{_t('nm_backup_title')}}
4 |
5 | 6 | 7 | {{_t('nm_backup_download')}} 8 |   9 | 10 | 15 |
16 |
17 | 18 | 19 |
20 | 21 | 22 | -------------------------------------------------------------------------------- /app/views/network/map.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 |
-------------------------------------------------------------------------------- /app/views/network/reorganization.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 5 | 6 |
7 |
8 |
9 | 10 | 13 |
14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
{{ _t('time')}}{{ _t('nav_status')}}{{ _t('device_node_id')}}{{ _t('device_node_name')}}
{{v.dateTime.time}}{{v.message}}{{v.nodeId}}{{v.nodeName}}
32 |
33 |
34 | -------------------------------------------------------------------------------- /app/views/network/routing.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 27 | 28 |
29 | 30 |
31 | 32 | 33 |
34 | {{_t('direct')}}
35 | {{_t('routed')}}
36 | {{_t('badly_routed')}}
37 | {{_t('not_linked')}}
38 | {{_t('unavailable')}}
39 |
40 |
-------------------------------------------------------------------------------- /app/views/network/routing_neigbors.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 36 | 43 | 44 | 45 |
 {{v.id}}
14 |
15 | {{v.id}} 16 |
17 |

{{v.name}}

18 |

Type info:

19 |

Updated: {{ v.updateTime | isTodayFromUnix }}

20 |
21 | 22 | 32 |
33 |
34 |
35 |
37 |
38 | * 39 |   40 |
41 | 42 |
46 |
-------------------------------------------------------------------------------- /app/views/settings/modal_timezone.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 |
5 | 7 |

{{getCustomCfgVal('title')}}

8 |
9 |
10 |
11 | {{ _t('z_way_restart', {__val__: settings.countdown,__level__: _t('seconds')})}} 12 |
13 |
14 | 19 |
20 |
-------------------------------------------------------------------------------- /app/views/settings/settings.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 | 6 |
7 | 8 |
9 | -------------------------------------------------------------------------------- /app/views/settings/settings_lang.html: -------------------------------------------------------------------------------- 1 | 2 |

3 |  {{_t('language')}} 4 | 5 |

6 |
7 |
8 |
9 | 13 | {{ v }} 14 | 15 |
16 |
17 |
18 | 19 | -------------------------------------------------------------------------------- /app/views/smartstart/navi.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/views/smartstart/smartstart_dsk_list.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 | 6 |
7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 37 | 38 | 41 | 42 | 47 | 48 | 49 |
#{{_t('device_name')}}{{_t('key')}}{{_t('nav_status')}}{{_t('datetime')}} 
{{v.nodeId}}{{dsk.devices[v.nodeId].name}}{{v.DSK}} 33 | 34 | {{v.state}} 35 | 36 | 39 | 40 | 43 | 44 |
50 | 51 |
52 |
-------------------------------------------------------------------------------- /dist/app/css/build.css.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/css/build.css.gz -------------------------------------------------------------------------------- /dist/app/fonts/fa-brands-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/fonts/fa-brands-400.eot -------------------------------------------------------------------------------- /dist/app/fonts/fa-brands-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/fonts/fa-brands-400.woff2 -------------------------------------------------------------------------------- /dist/app/fonts/fa-duotone-900.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/fonts/fa-duotone-900.eot -------------------------------------------------------------------------------- /dist/app/fonts/fa-duotone-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/fonts/fa-duotone-900.woff2 -------------------------------------------------------------------------------- /dist/app/fonts/fa-light-300.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/fonts/fa-light-300.eot -------------------------------------------------------------------------------- /dist/app/fonts/fa-light-300.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/fonts/fa-light-300.woff2 -------------------------------------------------------------------------------- /dist/app/fonts/fa-regular-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/fonts/fa-regular-400.eot -------------------------------------------------------------------------------- /dist/app/fonts/fa-regular-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/fonts/fa-regular-400.woff2 -------------------------------------------------------------------------------- /dist/app/fonts/fa-solid-900.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/fonts/fa-solid-900.eot -------------------------------------------------------------------------------- /dist/app/fonts/fa-solid-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/fonts/fa-solid-900.woff2 -------------------------------------------------------------------------------- /dist/app/images/batteries/battery-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/batteries/battery-0.png -------------------------------------------------------------------------------- /dist/app/images/batteries/battery-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/batteries/battery-100.png -------------------------------------------------------------------------------- /dist/app/images/batteries/battery-20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/batteries/battery-20.png -------------------------------------------------------------------------------- /dist/app/images/batteries/battery-30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/batteries/battery-30.png -------------------------------------------------------------------------------- /dist/app/images/batteries/battery-50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/batteries/battery-50.png -------------------------------------------------------------------------------- /dist/app/images/batteries/battery-80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/batteries/battery-80.png -------------------------------------------------------------------------------- /dist/app/images/batteries/battery.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/batteries/battery.png -------------------------------------------------------------------------------- /dist/app/images/cn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/cn.png -------------------------------------------------------------------------------- /dist/app/images/cz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/cz.png -------------------------------------------------------------------------------- /dist/app/images/de.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/de.png -------------------------------------------------------------------------------- /dist/app/images/device_placeholder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/device_placeholder.png -------------------------------------------------------------------------------- /dist/app/images/en.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/en.png -------------------------------------------------------------------------------- /dist/app/images/es.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/es.png -------------------------------------------------------------------------------- /dist/app/images/flags/cn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/flags/cn.png -------------------------------------------------------------------------------- /dist/app/images/flags/cz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/flags/cz.png -------------------------------------------------------------------------------- /dist/app/images/flags/de.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/flags/de.png -------------------------------------------------------------------------------- /dist/app/images/flags/en.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/flags/en.png -------------------------------------------------------------------------------- /dist/app/images/flags/es.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/flags/es.png -------------------------------------------------------------------------------- /dist/app/images/flags/fr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/flags/fr.png -------------------------------------------------------------------------------- /dist/app/images/flags/pt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/flags/pt.png -------------------------------------------------------------------------------- /dist/app/images/flags/ru.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/flags/ru.png -------------------------------------------------------------------------------- /dist/app/images/flags/sk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/flags/sk.png -------------------------------------------------------------------------------- /dist/app/images/flags/sv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/flags/sv.png -------------------------------------------------------------------------------- /dist/app/images/fr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/fr.png -------------------------------------------------------------------------------- /dist/app/images/icons/1x1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/1x1.png -------------------------------------------------------------------------------- /dist/app/images/icons/battery_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/battery_0.png -------------------------------------------------------------------------------- /dist/app/images/icons/battery_100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/battery_100.png -------------------------------------------------------------------------------- /dist/app/images/icons/battery_50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/battery_50.png -------------------------------------------------------------------------------- /dist/app/images/icons/interview_unfinished.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/interview_unfinished.png -------------------------------------------------------------------------------- /dist/app/images/icons/status_awake.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/status_awake.png -------------------------------------------------------------------------------- /dist/app/images/icons/status_dead.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/status_dead.png -------------------------------------------------------------------------------- /dist/app/images/icons/status_ok.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/status_ok.png -------------------------------------------------------------------------------- /dist/app/images/icons/status_sleep.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/status_sleep.png -------------------------------------------------------------------------------- /dist/app/images/icons/switch_all_on_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/switch_all_on_off.png -------------------------------------------------------------------------------- /dist/app/images/icons/switch_all_on_xxx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/switch_all_on_xxx.png -------------------------------------------------------------------------------- /dist/app/images/icons/switch_all_xx_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/switch_all_xx_off.png -------------------------------------------------------------------------------- /dist/app/images/icons/switch_all_xx_xxx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/switch_all_xx_xxx.png -------------------------------------------------------------------------------- /dist/app/images/icons/type_Battery-Wakeup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/type_Battery-Wakeup.png -------------------------------------------------------------------------------- /dist/app/images/icons/type_FLIRS2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/type_FLIRS2.png -------------------------------------------------------------------------------- /dist/app/images/icons/type_Mains-Powered.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/type_Mains-Powered.png -------------------------------------------------------------------------------- /dist/app/images/icons/type_Remote-Control.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/type_Remote-Control.png -------------------------------------------------------------------------------- /dist/app/images/icons/type_battery_with_wakeup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/type_battery_with_wakeup.png -------------------------------------------------------------------------------- /dist/app/images/icons/type_remote.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/icons/type_remote.png -------------------------------------------------------------------------------- /dist/app/images/no_device_image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/no_device_image.png -------------------------------------------------------------------------------- /dist/app/images/ru.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/ru.png -------------------------------------------------------------------------------- /dist/app/images/sk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/sk.png -------------------------------------------------------------------------------- /dist/app/images/sv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/sv.png -------------------------------------------------------------------------------- /dist/app/images/transparent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/transparent.png -------------------------------------------------------------------------------- /dist/app/images/z-wave-aliance-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/z-wave-aliance-logo.png -------------------------------------------------------------------------------- /dist/app/images/z-wave-logo-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/z-wave-logo-white.png -------------------------------------------------------------------------------- /dist/app/images/zplus.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/images/zplus.jpg -------------------------------------------------------------------------------- /dist/app/info.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Z-Wave Expert", 3 | "version": "v1.6.10", 4 | "built": "22-07-2024 01:39:18", 5 | "timestamp": "1721601558" 6 | } -------------------------------------------------------------------------------- /dist/app/info.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/info.json.gz -------------------------------------------------------------------------------- /dist/app/js/build.js.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/js/build.js.gz -------------------------------------------------------------------------------- /dist/app/js/templates.js.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/js/templates.js.gz -------------------------------------------------------------------------------- /dist/app/lang/language.cn.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/lang/language.cn.json.gz -------------------------------------------------------------------------------- /dist/app/lang/language.cz.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/lang/language.cz.json.gz -------------------------------------------------------------------------------- /dist/app/lang/language.de.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/lang/language.de.json.gz -------------------------------------------------------------------------------- /dist/app/lang/language.en.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/lang/language.en.json.gz -------------------------------------------------------------------------------- /dist/app/lang/language.es.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/lang/language.es.json.gz -------------------------------------------------------------------------------- /dist/app/lang/language.fi.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/lang/language.fi.json.gz -------------------------------------------------------------------------------- /dist/app/lang/language.fr.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/lang/language.fr.json.gz -------------------------------------------------------------------------------- /dist/app/lang/language.it.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/lang/language.it.json.gz -------------------------------------------------------------------------------- /dist/app/lang/language.pt.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/lang/language.pt.json.gz -------------------------------------------------------------------------------- /dist/app/lang/language.ru.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/lang/language.ru.json.gz -------------------------------------------------------------------------------- /dist/app/lang/language.sk.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/lang/language.sk.json.gz -------------------------------------------------------------------------------- /dist/app/lang/language.sv.json.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/app/lang/language.sv.json.gz -------------------------------------------------------------------------------- /dist/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/favicon.ico -------------------------------------------------------------------------------- /dist/favicon.ico.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/dist/favicon.ico.gz -------------------------------------------------------------------------------- /favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/favicon.ico -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Z-Wave", 3 | "version": "v1.6.10", 4 | "rc": 0, 5 | "description": "This User Interfaces allows to operate a Smart Home Network based on Z-Wave devices.", 6 | "main": "index.html", 7 | "app_type": "default", 8 | "built": "30-08-2022 17:19:44", 9 | "type_cfg": { 10 | "default": { 11 | "dir": "dist", 12 | "name": "Z-Wave Expert" 13 | } 14 | }, 15 | "devDependencies": { 16 | "@babel/core": "^7.19.0", 17 | "@babel/preset-env": "^7.19.0", 18 | "babel-plugin-angularjs-annotate": "^0.10.0", 19 | "babel-preset-es2015": "^6.24.1", 20 | "grunt": "^1.5.3", 21 | "grunt-angular-templates": "^1.2.0", 22 | "grunt-babel": "^8.0.0", 23 | "grunt-banner": "^0.6.0", 24 | "grunt-contrib-clean": "^2.0.1", 25 | "grunt-contrib-compress": "^2.0.0", 26 | "grunt-contrib-concat": "^2.1.0", 27 | "grunt-contrib-copy": "^1.0.0", 28 | "grunt-contrib-cssmin": "^4.0.0", 29 | "grunt-contrib-htmlmin": "^3.1.0", 30 | "grunt-contrib-jshint": "^3.2.0", 31 | "grunt-contrib-less": "^3.0.0", 32 | "grunt-contrib-nodeunit": "^4.0.0", 33 | "grunt-contrib-uglify": "^5.2.2", 34 | "grunt-contrib-watch": "^1.1.0", 35 | "grunt-html-build": "^0.7.1", 36 | "grunt-json-generator": "^0.1.0", 37 | "grunt-mkdir": "^0.1.2", 38 | "grunt-push-release": "^0.1.1", 39 | "grunt-release-it": "^1.0.1", 40 | "grunt-replace": "^2.0.2", 41 | "grunt-string-replace": "^1.3.3" 42 | }, 43 | "directories": { 44 | "app": "app", 45 | "storage": "storage" 46 | }, 47 | "scripts": { 48 | "test": "echo \"Error: no test specified\" && exit 1" 49 | }, 50 | "repository": { 51 | "type": "git", 52 | "url": "https://github.com/Z-Wave-Me/ExpertUI.git" 53 | }, 54 | "keywords": [ 55 | "z-wave", 56 | "smart home" 57 | ], 58 | "author": "Serguei Poltorak (ps@z-wave.me) and Martin Vach (info@vades.net)", 59 | "license": "GNU", 60 | "bugs": { 61 | "url": "https://github.com/Z-Wave-Me/ExpertUI/issues" 62 | }, 63 | "homepage": "https://github.com/Z-Wave-Me/ExpertUI", 64 | "dependencies": { 65 | "babel": "^6.23.0", 66 | "findup-sync": "^4.0.0", 67 | "grunt-cli": "^1.3.2", 68 | "npm": "^8.1.3", 69 | "sass": "^1.43.4" 70 | } 71 | } 72 | -------------------------------------------------------------------------------- /release.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | LAST_TAG=`git describe --tags --match 'v*' --abbrev=0` 4 | 5 | git pull || exit 6 | 7 | if [ "$1" != "dist" -a -n "$1" ]; then 8 | TAG="$1" 9 | if [ -z "`grep -E '^## '"$TAG"'$' README.md`" ]; then 10 | echo "Please update README.md:" 11 | echo "## $TAG" 12 | echo "#### New features:" 13 | echo "#### Fixes:" 14 | ../../../utils/git-log-since-tag.sh $LAST_TAG | awk '{print "- " $0}' 15 | exit 1 16 | fi 17 | 18 | awk '/^## v[0-9.]*$/ { first++ } { if (first == 1) {print }}' README.md 19 | read -p "Commit and release? (y/N) " ANSWER 20 | if [ "$ANSWER" != "y" ]; then 21 | exit 2 22 | fi 23 | 24 | sed -i 's/"version": ".*",/"version": "'"$TAG"'",/' package.json 25 | echo "Releasing $TAG" 26 | else 27 | echo "Usage:" 28 | echo " $0 Compile the code" 29 | echo " $0 dist Compile the code and push dist but don't release with a tag" 30 | echo " $0 Compile the code and release with a tag" 31 | echo 32 | echo "Last released version was $LAST_TAG" 33 | echo "Building test version" 34 | fi 35 | 36 | (cd app/sass/; ./compile.sh) || exit -1 37 | 38 | grunt || exit -1 39 | 40 | if [ "$1" == "dist" ]; then 41 | git add app/css/main.css app/css/main.css.map app/info.json package.json dist/ && 42 | git commit -m "dist" && 43 | git push && 44 | git push 45 | fi 46 | 47 | if [ -n "$TAG" ]; then 48 | git add README.md app/css/main.css app/css/main.css.map app/info.json package.json dist/ && 49 | git commit -m "dist" && git tag "$TAG" && 50 | git push && git push --tags && 51 | git checkout master && git merge dev && git push && git checkout dev # merge with master 52 | fi 53 | -------------------------------------------------------------------------------- /storage/data/docs/user_guide.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Z-Wave-Me/ExpertUI/6c34a93680a5371513383f19155cf1de4ae76dd8/storage/data/docs/user_guide.pdf -------------------------------------------------------------------------------- /vendor/angular/angular-1.2.14/angular-cookies.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | AngularJS v1.2.14 3 | (c) 2010-2014 Google, Inc. http://angularjs.org 4 | License: MIT 5 | */ 6 | (function(p,f,n){'use strict';f.module("ngCookies",["ng"]).factory("$cookies",["$rootScope","$browser",function(d,b){var c={},g={},h,k=!1,l=f.copy,m=f.isUndefined;b.addPollFn(function(){var a=b.cookies();h!=a&&(h=a,l(a,g),l(a,c),k&&d.$apply())})();k=!0;d.$watch(function(){var a,e,d;for(a in g)m(c[a])&&b.cookies(a,n);for(a in c)(e=c[a],f.isString(e))?e!==g[a]&&(b.cookies(a,e),d=!0):f.isDefined(g[a])?c[a]=g[a]:delete c[a];if(d)for(a in e=b.cookies(),c)c[a]!==e[a]&&(m(e[a])?delete c[a]:c[a]=e[a])}); 7 | return c}]).factory("$cookieStore",["$cookies",function(d){return{get:function(b){return(b=d[b])?f.fromJson(b):b},put:function(b,c){d[b]=f.toJson(c)},remove:function(b){delete d[b]}}}])})(window,window.angular); 8 | //# sourceMappingURL=angular-cookies.min.js.map 9 | -------------------------------------------------------------------------------- /vendor/angular/angular-1.2.14/version.json: -------------------------------------------------------------------------------- 1 | {"full":"1.2.14","major":"1","minor":"2","dot":"14","codename":"feisty-cryokinesis","cdn":"1.2.13","isStable":true} -------------------------------------------------------------------------------- /vendor/angular/angular-1.2.14/version.txt: -------------------------------------------------------------------------------- 1 | 1.2.14 --------------------------------------------------------------------------------