From 6328d16d41032376f9dab03d2f2bf661ed457fc5 Mon Sep 17 00:00:00 2001 From: Egor Date: Sun, 12 Mar 2017 17:13:31 -0700 Subject: [PATCH] new icons, persist manual bridge ip --- assets/pressButtonBridge.psd | Bin 187717 -> 0 bytes .../components/bridge-finder/component.js | 2 +- .../components/bridge-finder/template.hbs | 31 +- .../pods/components/light-group/component.js | 137 +- .../pods/components/light-group/template.hbs | 2 +- chrome/app/styles/dimmer.scss | 14 +- chrome/app/styles/hue-controls.scss | 6 - chrome/app/styles/light-group.scss | 9 +- chrome/package.json | 9 +- chrome/public/assets/images/lights/a19.svg | 32 - chrome/public/assets/images/lights/a19w.svg | 32 - chrome/public/assets/images/lights/br30.svg | 48 - chrome/public/assets/images/lights/br30w.svg | 48 - .../assets/images/lights/filled/aura.svg | 19 + .../filled/beyond_ceiling_pendant_table.svg | 7 + .../assets/images/lights/filled/bloom.svg | 12 + .../assets/images/lights/filled/br30.svg | 9 + .../assets/images/lights/filled/br30_slim.svg | 15 + .../assets/images/lights/filled/bridge_v1.svg | 18 + .../assets/images/lights/filled/bridge_v2.svg | 19 + .../images/lights/filled/ceiling_round.svg | 11 + .../images/lights/filled/ceiling_square.svg | 13 + .../assets/images/lights/filled/entity.svg | 11 + .../assets/images/lights/filled/floor.svg | 10 + .../public/assets/images/lights/filled/go.svg | 10 + .../assets/images/lights/filled/gu10.svg | 19 + .../images/lights/filled/gu10_perfectfit.svg | 19 + .../assets/images/lights/filled/hds.svg | 8 + .../assets/images/lights/filled/impulse.svg | 11 + .../assets/images/lights/filled/iris.svg | 14 + .../images/lights/filled/lightstrip.svg | 13 + .../images/lights/filled/motion_sensor.svg | 15 + .../images/lights/filled/pendant_oval.svg | 7 + .../images/lights/filled/pendant_round.svg | 9 + .../images/lights/filled/pendant_square.svg | 7 + .../phoenix_ceiling_pendant_table_wall.svg | 7 + .../images/lights/filled/phoenix_down.svg | 8 + .../assets/images/lights/filled/recessed.svg | 7 + .../images/lights/filled/storylight.svg | 14 + .../assets/images/lights/filled/table.svg | 10 + .../assets/images/lights/filled/tap.svg | 10 + .../lights/filled/white_and_color_e27_b22.svg | 14 + .../images/lights/filled/white_e27_b22.svg | 10 + chrome/public/assets/images/lights/gu10.svg | 18 - chrome/public/assets/images/lights/gu10w.svg | 18 - chrome/public/assets/images/lights/huego.svg | 23 - chrome/public/assets/images/lights/huegow.svg | 23 - .../public/assets/images/lights/lc_aura.svg | 32 - .../public/assets/images/lights/lc_auraw.svg | 32 - .../public/assets/images/lights/lc_bloom.svg | 30 - .../public/assets/images/lights/lc_bloomw.svg | 30 - .../public/assets/images/lights/lc_iris.svg | 29 - .../public/assets/images/lights/lc_irisw.svg | 29 - .../assets/images/lights/lightstrip.svg | 45 - .../assets/images/lights/lightstripw.svg | 45 - .../assets/images/lights/outline/aura.svg | 24 + .../outline/beyond_ceiling_pendant_table.svg | 17 + .../assets/images/lights/outline/bloom.svg | 17 + .../assets/images/lights/outline/br30.svg | 27 + .../images/lights/outline/br30_slim.svg | 60 + .../images/lights/outline/bridge_v1.svg | 32 + .../images/lights/outline/bridge_v2.svg | 32 + .../images/lights/outline/ceiling_round.svg | 16 + .../images/lights/outline/ceiling_square.svg | 18 + .../assets/images/lights/outline/entity.svg | 1515 +++++++++++++++++ .../assets/images/lights/outline/floor.svg | 15 + .../assets/images/lights/outline/go.svg | 11 + .../assets/images/lights/outline/gu10.svg | 93 + .../images/lights/outline/gu10_perfectfit.svg | 36 + .../assets/images/lights/outline/hds.svg | 14 + .../assets/images/lights/outline/impulse.svg | 413 +++++ .../assets/images/lights/outline/iris.svg | 22 + .../images/lights/outline/lightstrip.svg | 26 + .../images/lights/outline/motion_sensor.svg | 9 + .../assets/images/lights/outline/par16.svg | 28 + .../images/lights/outline/pendant_oval.svg | 12 + .../images/lights/outline/pendant_round.svg | 12 + .../images/lights/outline/pendant_square.svg | 7 + .../images/lights/outline/phoenix_ceiling.svg | 11 + .../lights/outline/phoenix_ceiling_2.svg | 21 + .../images/lights/outline/phoenix_down.svg | 7 + .../images/lights/outline/phoenix_pendant.svg | 17 + .../images/lights/outline/phoenix_table.svg | 15 + .../images/lights/outline/phoenix_wall.svg | 14 + .../assets/images/lights/outline/recessed.svg | 13 + .../images/lights/outline/storylight.svg | 27 + .../assets/images/lights/outline/table.svg | 15 + .../assets/images/lights/outline/tap.svg | 9 + .../lights/outline/white_and_color_e27.svg | 10 + .../images/lights/outline/white_e27.svg | 15 + .../assets/images/lights/storylight.svg | 42 - .../assets/images/lights/storylightw.svg | 42 - .../assets/images/pressButtonBridge.png | Bin 32156 -> 0 bytes .../components/bridge-finder/component.js | 2 +- .../components/bridge-finder/template.hbs | 29 +- .../pods/components/light-group/component.js | 141 +- .../pods/components/light-group/template.hbs | 2 +- mobile/app/styles/dimmer.scss | 10 +- mobile/app/styles/hue-controls.scss | 6 - mobile/app/styles/light-group.scss | 7 +- mobile/ember-cordova/cordova/config.xml | 2 +- mobile/package.json | 9 +- mobile/public/assets/images/lights/a19.svg | 32 - mobile/public/assets/images/lights/a19w.svg | 32 - mobile/public/assets/images/lights/br30.svg | 48 - mobile/public/assets/images/lights/br30w.svg | 48 - .../assets/images/lights/filled/aura.svg | 19 + .../filled/beyond_ceiling_pendant_table.svg | 7 + .../assets/images/lights/filled/bloom.svg | 12 + .../assets/images/lights/filled/br30.svg | 9 + .../assets/images/lights/filled/br30_slim.svg | 15 + .../assets/images/lights/filled/bridge_v1.svg | 18 + .../assets/images/lights/filled/bridge_v2.svg | 19 + .../images/lights/filled/ceiling_round.svg | 11 + .../images/lights/filled/ceiling_square.svg | 13 + .../assets/images/lights/filled/entity.svg | 11 + .../assets/images/lights/filled/floor.svg | 10 + .../public/assets/images/lights/filled/go.svg | 10 + .../assets/images/lights/filled/gu10.svg | 19 + .../images/lights/filled/gu10_perfectfit.svg | 19 + .../assets/images/lights/filled/hds.svg | 8 + .../assets/images/lights/filled/impulse.svg | 11 + .../assets/images/lights/filled/iris.svg | 14 + .../images/lights/filled/lightstrip.svg | 13 + .../images/lights/filled/motion_sensor.svg | 15 + .../images/lights/filled/pendant_oval.svg | 7 + .../images/lights/filled/pendant_round.svg | 9 + .../images/lights/filled/pendant_square.svg | 7 + .../phoenix_ceiling_pendant_table_wall.svg | 7 + .../images/lights/filled/phoenix_down.svg | 8 + .../assets/images/lights/filled/recessed.svg | 7 + .../images/lights/filled/storylight.svg | 14 + .../assets/images/lights/filled/table.svg | 10 + .../assets/images/lights/filled/tap.svg | 10 + .../lights/filled/white_and_color_e27_b22.svg | 14 + .../images/lights/filled/white_e27_b22.svg | 10 + mobile/public/assets/images/lights/gu10.svg | 18 - mobile/public/assets/images/lights/gu10w.svg | 18 - mobile/public/assets/images/lights/huego.svg | 23 - mobile/public/assets/images/lights/huegow.svg | 23 - .../public/assets/images/lights/lc_aura.svg | 32 - .../public/assets/images/lights/lc_auraw.svg | 32 - .../public/assets/images/lights/lc_bloom.svg | 30 - .../public/assets/images/lights/lc_bloomw.svg | 30 - .../public/assets/images/lights/lc_iris.svg | 29 - .../public/assets/images/lights/lc_irisw.svg | 29 - .../assets/images/lights/lightstrip.svg | 45 - .../assets/images/lights/lightstripw.svg | 45 - .../assets/images/lights/outline/aura.svg | 24 + .../outline/beyond_ceiling_pendant_table.svg | 17 + .../assets/images/lights/outline/bloom.svg | 17 + .../assets/images/lights/outline/br30.svg | 27 + .../images/lights/outline/br30_slim.svg | 60 + .../images/lights/outline/bridge_v1.svg | 32 + .../images/lights/outline/bridge_v2.svg | 32 + .../images/lights/outline/ceiling_round.svg | 16 + .../images/lights/outline/ceiling_square.svg | 18 + .../assets/images/lights/outline/entity.svg | 1515 +++++++++++++++++ .../assets/images/lights/outline/floor.svg | 15 + .../assets/images/lights/outline/go.svg | 11 + .../assets/images/lights/outline/gu10.svg | 93 + .../images/lights/outline/gu10_perfectfit.svg | 36 + .../assets/images/lights/outline/hds.svg | 14 + .../assets/images/lights/outline/impulse.svg | 413 +++++ .../assets/images/lights/outline/iris.svg | 22 + .../images/lights/outline/lightstrip.svg | 26 + .../images/lights/outline/motion_sensor.svg | 9 + .../assets/images/lights/outline/par16.svg | 28 + .../images/lights/outline/pendant_oval.svg | 12 + .../images/lights/outline/pendant_round.svg | 12 + .../images/lights/outline/pendant_square.svg | 7 + .../images/lights/outline/phoenix_ceiling.svg | 11 + .../lights/outline/phoenix_ceiling_2.svg | 21 + .../images/lights/outline/phoenix_down.svg | 7 + .../images/lights/outline/phoenix_pendant.svg | 17 + .../images/lights/outline/phoenix_table.svg | 15 + .../images/lights/outline/phoenix_wall.svg | 14 + .../assets/images/lights/outline/recessed.svg | 13 + .../images/lights/outline/storylight.svg | 27 + .../assets/images/lights/outline/table.svg | 15 + .../assets/images/lights/outline/tap.svg | 9 + .../lights/outline/white_and_color_e27.svg | 10 + .../images/lights/outline/white_e27.svg | 15 + .../assets/images/lights/storylight.svg | 42 - .../assets/images/lights/storylightw.svg | 42 - .../assets/images/pressButtonBridge.png | Bin 32156 -> 0 bytes .../components/bridge-finder/component.js | 2 +- .../components/bridge-finder/template.hbs | 29 +- .../pods/components/light-group/component.js | 137 +- .../pods/components/light-group/template.hbs | 2 +- web/app/styles/dimmer.scss | 9 +- web/app/styles/hue-controls.scss | 6 - web/app/styles/light-group.scss | 9 +- web/package.json | 9 +- web/public/assets/images/lights/a19.svg | 32 - web/public/assets/images/lights/a19w.svg | 32 - web/public/assets/images/lights/br30.svg | 48 - web/public/assets/images/lights/br30w.svg | 48 - .../assets/images/lights/filled/aura.svg | 19 + .../filled/beyond_ceiling_pendant_table.svg | 7 + .../assets/images/lights/filled/bloom.svg | 12 + .../assets/images/lights/filled/br30.svg | 9 + .../assets/images/lights/filled/br30_slim.svg | 15 + .../assets/images/lights/filled/bridge_v1.svg | 18 + .../assets/images/lights/filled/bridge_v2.svg | 19 + .../images/lights/filled/ceiling_round.svg | 11 + .../images/lights/filled/ceiling_square.svg | 13 + .../assets/images/lights/filled/entity.svg | 11 + .../assets/images/lights/filled/floor.svg | 10 + web/public/assets/images/lights/filled/go.svg | 10 + .../assets/images/lights/filled/gu10.svg | 19 + .../images/lights/filled/gu10_perfectfit.svg | 19 + .../assets/images/lights/filled/hds.svg | 8 + .../assets/images/lights/filled/impulse.svg | 11 + .../assets/images/lights/filled/iris.svg | 14 + .../images/lights/filled/lightstrip.svg | 13 + .../images/lights/filled/motion_sensor.svg | 15 + .../images/lights/filled/pendant_oval.svg | 7 + .../images/lights/filled/pendant_round.svg | 9 + .../images/lights/filled/pendant_square.svg | 7 + .../phoenix_ceiling_pendant_table_wall.svg | 7 + .../images/lights/filled/phoenix_down.svg | 8 + .../assets/images/lights/filled/recessed.svg | 7 + .../images/lights/filled/storylight.svg | 14 + .../assets/images/lights/filled/table.svg | 10 + .../assets/images/lights/filled/tap.svg | 10 + .../lights/filled/white_and_color_e27_b22.svg | 14 + .../images/lights/filled/white_e27_b22.svg | 10 + web/public/assets/images/lights/gu10.svg | 18 - web/public/assets/images/lights/gu10w.svg | 18 - web/public/assets/images/lights/huego.svg | 23 - web/public/assets/images/lights/huegow.svg | 23 - web/public/assets/images/lights/lc_aura.svg | 32 - web/public/assets/images/lights/lc_auraw.svg | 32 - web/public/assets/images/lights/lc_bloom.svg | 30 - web/public/assets/images/lights/lc_bloomw.svg | 30 - web/public/assets/images/lights/lc_iris.svg | 29 - web/public/assets/images/lights/lc_irisw.svg | 29 - .../assets/images/lights/lightstrip.svg | 45 - .../assets/images/lights/lightstripw.svg | 45 - .../assets/images/lights/outline/aura.svg | 24 + .../outline/beyond_ceiling_pendant_table.svg | 17 + .../assets/images/lights/outline/bloom.svg | 17 + .../assets/images/lights/outline/br30.svg | 27 + .../images/lights/outline/br30_slim.svg | 60 + .../images/lights/outline/bridge_v1.svg | 32 + .../images/lights/outline/bridge_v2.svg | 32 + .../images/lights/outline/ceiling_round.svg | 16 + .../images/lights/outline/ceiling_square.svg | 18 + .../assets/images/lights/outline/entity.svg | 1515 +++++++++++++++++ .../assets/images/lights/outline/floor.svg | 15 + .../assets/images/lights/outline/go.svg | 11 + .../assets/images/lights/outline/gu10.svg | 93 + .../images/lights/outline/gu10_perfectfit.svg | 36 + .../assets/images/lights/outline/hds.svg | 14 + .../assets/images/lights/outline/impulse.svg | 413 +++++ .../assets/images/lights/outline/iris.svg | 22 + .../images/lights/outline/lightstrip.svg | 26 + .../images/lights/outline/motion_sensor.svg | 9 + .../assets/images/lights/outline/par16.svg | 28 + .../images/lights/outline/pendant_oval.svg | 12 + .../images/lights/outline/pendant_round.svg | 12 + .../images/lights/outline/pendant_square.svg | 7 + .../images/lights/outline/phoenix_ceiling.svg | 11 + .../lights/outline/phoenix_ceiling_2.svg | 21 + .../images/lights/outline/phoenix_down.svg | 7 + .../images/lights/outline/phoenix_pendant.svg | 17 + .../images/lights/outline/phoenix_table.svg | 15 + .../images/lights/outline/phoenix_wall.svg | 14 + .../assets/images/lights/outline/recessed.svg | 13 + .../images/lights/outline/storylight.svg | 27 + .../assets/images/lights/outline/table.svg | 15 + .../assets/images/lights/outline/tap.svg | 9 + .../lights/outline/white_and_color_e27.svg | 10 + .../images/lights/outline/white_e27.svg | 15 + .../assets/images/lights/storylight.svg | 42 - .../assets/images/lights/storylightw.svg | 42 - .../assets/images/pressButtonBridge.png | Bin 32156 -> 0 bytes 278 files changed, 9455 insertions(+), 1918 deletions(-) delete mode 100644 assets/pressButtonBridge.psd delete mode 100644 chrome/public/assets/images/lights/a19.svg delete mode 100644 chrome/public/assets/images/lights/a19w.svg delete mode 100644 chrome/public/assets/images/lights/br30.svg delete mode 100644 chrome/public/assets/images/lights/br30w.svg create mode 100644 chrome/public/assets/images/lights/filled/aura.svg create mode 100644 chrome/public/assets/images/lights/filled/beyond_ceiling_pendant_table.svg create mode 100644 chrome/public/assets/images/lights/filled/bloom.svg create mode 100644 chrome/public/assets/images/lights/filled/br30.svg create mode 100644 chrome/public/assets/images/lights/filled/br30_slim.svg create mode 100644 chrome/public/assets/images/lights/filled/bridge_v1.svg create mode 100644 chrome/public/assets/images/lights/filled/bridge_v2.svg create mode 100644 chrome/public/assets/images/lights/filled/ceiling_round.svg create mode 100644 chrome/public/assets/images/lights/filled/ceiling_square.svg create mode 100644 chrome/public/assets/images/lights/filled/entity.svg create mode 100644 chrome/public/assets/images/lights/filled/floor.svg create mode 100644 chrome/public/assets/images/lights/filled/go.svg create mode 100644 chrome/public/assets/images/lights/filled/gu10.svg create mode 100644 chrome/public/assets/images/lights/filled/gu10_perfectfit.svg create mode 100644 chrome/public/assets/images/lights/filled/hds.svg create mode 100644 chrome/public/assets/images/lights/filled/impulse.svg create mode 100644 chrome/public/assets/images/lights/filled/iris.svg create mode 100644 chrome/public/assets/images/lights/filled/lightstrip.svg create mode 100644 chrome/public/assets/images/lights/filled/motion_sensor.svg create mode 100644 chrome/public/assets/images/lights/filled/pendant_oval.svg create mode 100644 chrome/public/assets/images/lights/filled/pendant_round.svg create mode 100644 chrome/public/assets/images/lights/filled/pendant_square.svg create mode 100644 chrome/public/assets/images/lights/filled/phoenix_ceiling_pendant_table_wall.svg create mode 100644 chrome/public/assets/images/lights/filled/phoenix_down.svg create mode 100644 chrome/public/assets/images/lights/filled/recessed.svg create mode 100644 chrome/public/assets/images/lights/filled/storylight.svg create mode 100644 chrome/public/assets/images/lights/filled/table.svg create mode 100644 chrome/public/assets/images/lights/filled/tap.svg create mode 100644 chrome/public/assets/images/lights/filled/white_and_color_e27_b22.svg create mode 100644 chrome/public/assets/images/lights/filled/white_e27_b22.svg delete mode 100644 chrome/public/assets/images/lights/gu10.svg delete mode 100644 chrome/public/assets/images/lights/gu10w.svg delete mode 100644 chrome/public/assets/images/lights/huego.svg delete mode 100644 chrome/public/assets/images/lights/huegow.svg delete mode 100644 chrome/public/assets/images/lights/lc_aura.svg delete mode 100644 chrome/public/assets/images/lights/lc_auraw.svg delete mode 100644 chrome/public/assets/images/lights/lc_bloom.svg delete mode 100644 chrome/public/assets/images/lights/lc_bloomw.svg delete mode 100644 chrome/public/assets/images/lights/lc_iris.svg delete mode 100644 chrome/public/assets/images/lights/lc_irisw.svg delete mode 100644 chrome/public/assets/images/lights/lightstrip.svg delete mode 100644 chrome/public/assets/images/lights/lightstripw.svg create mode 100644 chrome/public/assets/images/lights/outline/aura.svg create mode 100644 chrome/public/assets/images/lights/outline/beyond_ceiling_pendant_table.svg create mode 100644 chrome/public/assets/images/lights/outline/bloom.svg create mode 100644 chrome/public/assets/images/lights/outline/br30.svg create mode 100644 chrome/public/assets/images/lights/outline/br30_slim.svg create mode 100644 chrome/public/assets/images/lights/outline/bridge_v1.svg create mode 100644 chrome/public/assets/images/lights/outline/bridge_v2.svg create mode 100644 chrome/public/assets/images/lights/outline/ceiling_round.svg create mode 100644 chrome/public/assets/images/lights/outline/ceiling_square.svg create mode 100644 chrome/public/assets/images/lights/outline/entity.svg create mode 100644 chrome/public/assets/images/lights/outline/floor.svg create mode 100644 chrome/public/assets/images/lights/outline/go.svg create mode 100644 chrome/public/assets/images/lights/outline/gu10.svg create mode 100644 chrome/public/assets/images/lights/outline/gu10_perfectfit.svg create mode 100644 chrome/public/assets/images/lights/outline/hds.svg create mode 100644 chrome/public/assets/images/lights/outline/impulse.svg create mode 100644 chrome/public/assets/images/lights/outline/iris.svg create mode 100644 chrome/public/assets/images/lights/outline/lightstrip.svg create mode 100644 chrome/public/assets/images/lights/outline/motion_sensor.svg create mode 100644 chrome/public/assets/images/lights/outline/par16.svg create mode 100644 chrome/public/assets/images/lights/outline/pendant_oval.svg create mode 100644 chrome/public/assets/images/lights/outline/pendant_round.svg create mode 100644 chrome/public/assets/images/lights/outline/pendant_square.svg create mode 100644 chrome/public/assets/images/lights/outline/phoenix_ceiling.svg create mode 100644 chrome/public/assets/images/lights/outline/phoenix_ceiling_2.svg create mode 100644 chrome/public/assets/images/lights/outline/phoenix_down.svg create mode 100644 chrome/public/assets/images/lights/outline/phoenix_pendant.svg create mode 100644 chrome/public/assets/images/lights/outline/phoenix_table.svg create mode 100644 chrome/public/assets/images/lights/outline/phoenix_wall.svg create mode 100644 chrome/public/assets/images/lights/outline/recessed.svg create mode 100644 chrome/public/assets/images/lights/outline/storylight.svg create mode 100644 chrome/public/assets/images/lights/outline/table.svg create mode 100644 chrome/public/assets/images/lights/outline/tap.svg create mode 100644 chrome/public/assets/images/lights/outline/white_and_color_e27.svg create mode 100644 chrome/public/assets/images/lights/outline/white_e27.svg delete mode 100644 chrome/public/assets/images/lights/storylight.svg delete mode 100644 chrome/public/assets/images/lights/storylightw.svg delete mode 100644 chrome/public/assets/images/pressButtonBridge.png delete mode 100644 mobile/public/assets/images/lights/a19.svg delete mode 100644 mobile/public/assets/images/lights/a19w.svg delete mode 100644 mobile/public/assets/images/lights/br30.svg delete mode 100644 mobile/public/assets/images/lights/br30w.svg create mode 100644 mobile/public/assets/images/lights/filled/aura.svg create mode 100644 mobile/public/assets/images/lights/filled/beyond_ceiling_pendant_table.svg create mode 100644 mobile/public/assets/images/lights/filled/bloom.svg create mode 100644 mobile/public/assets/images/lights/filled/br30.svg create mode 100644 mobile/public/assets/images/lights/filled/br30_slim.svg create mode 100644 mobile/public/assets/images/lights/filled/bridge_v1.svg create mode 100644 mobile/public/assets/images/lights/filled/bridge_v2.svg create mode 100644 mobile/public/assets/images/lights/filled/ceiling_round.svg create mode 100644 mobile/public/assets/images/lights/filled/ceiling_square.svg create mode 100644 mobile/public/assets/images/lights/filled/entity.svg create mode 100644 mobile/public/assets/images/lights/filled/floor.svg create mode 100644 mobile/public/assets/images/lights/filled/go.svg create mode 100644 mobile/public/assets/images/lights/filled/gu10.svg create mode 100644 mobile/public/assets/images/lights/filled/gu10_perfectfit.svg create mode 100644 mobile/public/assets/images/lights/filled/hds.svg create mode 100644 mobile/public/assets/images/lights/filled/impulse.svg create mode 100644 mobile/public/assets/images/lights/filled/iris.svg create mode 100644 mobile/public/assets/images/lights/filled/lightstrip.svg create mode 100644 mobile/public/assets/images/lights/filled/motion_sensor.svg create mode 100644 mobile/public/assets/images/lights/filled/pendant_oval.svg create mode 100644 mobile/public/assets/images/lights/filled/pendant_round.svg create mode 100644 mobile/public/assets/images/lights/filled/pendant_square.svg create mode 100644 mobile/public/assets/images/lights/filled/phoenix_ceiling_pendant_table_wall.svg create mode 100644 mobile/public/assets/images/lights/filled/phoenix_down.svg create mode 100644 mobile/public/assets/images/lights/filled/recessed.svg create mode 100644 mobile/public/assets/images/lights/filled/storylight.svg create mode 100644 mobile/public/assets/images/lights/filled/table.svg create mode 100644 mobile/public/assets/images/lights/filled/tap.svg create mode 100644 mobile/public/assets/images/lights/filled/white_and_color_e27_b22.svg create mode 100644 mobile/public/assets/images/lights/filled/white_e27_b22.svg delete mode 100644 mobile/public/assets/images/lights/gu10.svg delete mode 100644 mobile/public/assets/images/lights/gu10w.svg delete mode 100644 mobile/public/assets/images/lights/huego.svg delete mode 100644 mobile/public/assets/images/lights/huegow.svg delete mode 100644 mobile/public/assets/images/lights/lc_aura.svg delete mode 100644 mobile/public/assets/images/lights/lc_auraw.svg delete mode 100644 mobile/public/assets/images/lights/lc_bloom.svg delete mode 100644 mobile/public/assets/images/lights/lc_bloomw.svg delete mode 100644 mobile/public/assets/images/lights/lc_iris.svg delete mode 100644 mobile/public/assets/images/lights/lc_irisw.svg delete mode 100644 mobile/public/assets/images/lights/lightstrip.svg delete mode 100644 mobile/public/assets/images/lights/lightstripw.svg create mode 100644 mobile/public/assets/images/lights/outline/aura.svg create mode 100644 mobile/public/assets/images/lights/outline/beyond_ceiling_pendant_table.svg create mode 100644 mobile/public/assets/images/lights/outline/bloom.svg create mode 100644 mobile/public/assets/images/lights/outline/br30.svg create mode 100644 mobile/public/assets/images/lights/outline/br30_slim.svg create mode 100644 mobile/public/assets/images/lights/outline/bridge_v1.svg create mode 100644 mobile/public/assets/images/lights/outline/bridge_v2.svg create mode 100644 mobile/public/assets/images/lights/outline/ceiling_round.svg create mode 100644 mobile/public/assets/images/lights/outline/ceiling_square.svg create mode 100644 mobile/public/assets/images/lights/outline/entity.svg create mode 100644 mobile/public/assets/images/lights/outline/floor.svg create mode 100644 mobile/public/assets/images/lights/outline/go.svg create mode 100644 mobile/public/assets/images/lights/outline/gu10.svg create mode 100644 mobile/public/assets/images/lights/outline/gu10_perfectfit.svg create mode 100644 mobile/public/assets/images/lights/outline/hds.svg create mode 100644 mobile/public/assets/images/lights/outline/impulse.svg create mode 100644 mobile/public/assets/images/lights/outline/iris.svg create mode 100644 mobile/public/assets/images/lights/outline/lightstrip.svg create mode 100644 mobile/public/assets/images/lights/outline/motion_sensor.svg create mode 100644 mobile/public/assets/images/lights/outline/par16.svg create mode 100644 mobile/public/assets/images/lights/outline/pendant_oval.svg create mode 100644 mobile/public/assets/images/lights/outline/pendant_round.svg create mode 100644 mobile/public/assets/images/lights/outline/pendant_square.svg create mode 100644 mobile/public/assets/images/lights/outline/phoenix_ceiling.svg create mode 100644 mobile/public/assets/images/lights/outline/phoenix_ceiling_2.svg create mode 100644 mobile/public/assets/images/lights/outline/phoenix_down.svg create mode 100644 mobile/public/assets/images/lights/outline/phoenix_pendant.svg create mode 100644 mobile/public/assets/images/lights/outline/phoenix_table.svg create mode 100644 mobile/public/assets/images/lights/outline/phoenix_wall.svg create mode 100644 mobile/public/assets/images/lights/outline/recessed.svg create mode 100644 mobile/public/assets/images/lights/outline/storylight.svg create mode 100644 mobile/public/assets/images/lights/outline/table.svg create mode 100644 mobile/public/assets/images/lights/outline/tap.svg create mode 100644 mobile/public/assets/images/lights/outline/white_and_color_e27.svg create mode 100644 mobile/public/assets/images/lights/outline/white_e27.svg delete mode 100644 mobile/public/assets/images/lights/storylight.svg delete mode 100644 mobile/public/assets/images/lights/storylightw.svg delete mode 100644 mobile/public/assets/images/pressButtonBridge.png delete mode 100644 web/public/assets/images/lights/a19.svg delete mode 100644 web/public/assets/images/lights/a19w.svg delete mode 100644 web/public/assets/images/lights/br30.svg delete mode 100644 web/public/assets/images/lights/br30w.svg create mode 100644 web/public/assets/images/lights/filled/aura.svg create mode 100644 web/public/assets/images/lights/filled/beyond_ceiling_pendant_table.svg create mode 100644 web/public/assets/images/lights/filled/bloom.svg create mode 100644 web/public/assets/images/lights/filled/br30.svg create mode 100644 web/public/assets/images/lights/filled/br30_slim.svg create mode 100644 web/public/assets/images/lights/filled/bridge_v1.svg create mode 100644 web/public/assets/images/lights/filled/bridge_v2.svg create mode 100644 web/public/assets/images/lights/filled/ceiling_round.svg create mode 100644 web/public/assets/images/lights/filled/ceiling_square.svg create mode 100644 web/public/assets/images/lights/filled/entity.svg create mode 100644 web/public/assets/images/lights/filled/floor.svg create mode 100644 web/public/assets/images/lights/filled/go.svg create mode 100644 web/public/assets/images/lights/filled/gu10.svg create mode 100644 web/public/assets/images/lights/filled/gu10_perfectfit.svg create mode 100644 web/public/assets/images/lights/filled/hds.svg create mode 100644 web/public/assets/images/lights/filled/impulse.svg create mode 100644 web/public/assets/images/lights/filled/iris.svg create mode 100644 web/public/assets/images/lights/filled/lightstrip.svg create mode 100644 web/public/assets/images/lights/filled/motion_sensor.svg create mode 100644 web/public/assets/images/lights/filled/pendant_oval.svg create mode 100644 web/public/assets/images/lights/filled/pendant_round.svg create mode 100644 web/public/assets/images/lights/filled/pendant_square.svg create mode 100644 web/public/assets/images/lights/filled/phoenix_ceiling_pendant_table_wall.svg create mode 100644 web/public/assets/images/lights/filled/phoenix_down.svg create mode 100644 web/public/assets/images/lights/filled/recessed.svg create mode 100644 web/public/assets/images/lights/filled/storylight.svg create mode 100644 web/public/assets/images/lights/filled/table.svg create mode 100644 web/public/assets/images/lights/filled/tap.svg create mode 100644 web/public/assets/images/lights/filled/white_and_color_e27_b22.svg create mode 100644 web/public/assets/images/lights/filled/white_e27_b22.svg delete mode 100644 web/public/assets/images/lights/gu10.svg delete mode 100644 web/public/assets/images/lights/gu10w.svg delete mode 100644 web/public/assets/images/lights/huego.svg delete mode 100644 web/public/assets/images/lights/huegow.svg delete mode 100644 web/public/assets/images/lights/lc_aura.svg delete mode 100644 web/public/assets/images/lights/lc_auraw.svg delete mode 100644 web/public/assets/images/lights/lc_bloom.svg delete mode 100644 web/public/assets/images/lights/lc_bloomw.svg delete mode 100644 web/public/assets/images/lights/lc_iris.svg delete mode 100644 web/public/assets/images/lights/lc_irisw.svg delete mode 100644 web/public/assets/images/lights/lightstrip.svg delete mode 100644 web/public/assets/images/lights/lightstripw.svg create mode 100644 web/public/assets/images/lights/outline/aura.svg create mode 100644 web/public/assets/images/lights/outline/beyond_ceiling_pendant_table.svg create mode 100644 web/public/assets/images/lights/outline/bloom.svg create mode 100644 web/public/assets/images/lights/outline/br30.svg create mode 100644 web/public/assets/images/lights/outline/br30_slim.svg create mode 100644 web/public/assets/images/lights/outline/bridge_v1.svg create mode 100644 web/public/assets/images/lights/outline/bridge_v2.svg create mode 100644 web/public/assets/images/lights/outline/ceiling_round.svg create mode 100644 web/public/assets/images/lights/outline/ceiling_square.svg create mode 100644 web/public/assets/images/lights/outline/entity.svg create mode 100644 web/public/assets/images/lights/outline/floor.svg create mode 100644 web/public/assets/images/lights/outline/go.svg create mode 100644 web/public/assets/images/lights/outline/gu10.svg create mode 100644 web/public/assets/images/lights/outline/gu10_perfectfit.svg create mode 100644 web/public/assets/images/lights/outline/hds.svg create mode 100644 web/public/assets/images/lights/outline/impulse.svg create mode 100644 web/public/assets/images/lights/outline/iris.svg create mode 100644 web/public/assets/images/lights/outline/lightstrip.svg create mode 100644 web/public/assets/images/lights/outline/motion_sensor.svg create mode 100644 web/public/assets/images/lights/outline/par16.svg create mode 100644 web/public/assets/images/lights/outline/pendant_oval.svg create mode 100644 web/public/assets/images/lights/outline/pendant_round.svg create mode 100644 web/public/assets/images/lights/outline/pendant_square.svg create mode 100644 web/public/assets/images/lights/outline/phoenix_ceiling.svg create mode 100644 web/public/assets/images/lights/outline/phoenix_ceiling_2.svg create mode 100644 web/public/assets/images/lights/outline/phoenix_down.svg create mode 100644 web/public/assets/images/lights/outline/phoenix_pendant.svg create mode 100644 web/public/assets/images/lights/outline/phoenix_table.svg create mode 100644 web/public/assets/images/lights/outline/phoenix_wall.svg create mode 100644 web/public/assets/images/lights/outline/recessed.svg create mode 100644 web/public/assets/images/lights/outline/storylight.svg create mode 100644 web/public/assets/images/lights/outline/table.svg create mode 100644 web/public/assets/images/lights/outline/tap.svg create mode 100644 web/public/assets/images/lights/outline/white_and_color_e27.svg create mode 100644 web/public/assets/images/lights/outline/white_e27.svg delete mode 100644 web/public/assets/images/lights/storylight.svg delete mode 100644 web/public/assets/images/lights/storylightw.svg delete mode 100644 web/public/assets/images/pressButtonBridge.png diff --git a/assets/pressButtonBridge.psd b/assets/pressButtonBridge.psd deleted file mode 100644 index 5ff98322e8843eb2f9410524bcb5a4ba84330d0e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 187717 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 { - this.set('bridgeIp', manualBridgeIp); + this.send('chooseBridge', manualBridgeIp); }); } } diff --git a/chrome/app/pods/components/bridge-finder/template.hbs b/chrome/app/pods/components/bridge-finder/template.hbs index e59f28e..06842cf 100644 --- a/chrome/app/pods/components/bridge-finder/template.hbs +++ b/chrome/app/pods/components/bridge-finder/template.hbs @@ -1,6 +1,32 @@ {{#unless bridgeUsername}} {{#if bridgeIp}} - {{paper-progress-linear warn=true value=bridgeUserNamePingIntervalProgress}} + + + + + + + + + + {{paper-progress-linear warn=true value=bridgeUserNamePingIntervalProgress}} {{#if isAuthenticating}}

@@ -26,7 +52,8 @@ {{else}} {{#if bridgeFindFail}} -

A hue bridge could not be automatically found on your network.
Enter one manually?

( or type offline to look around ) +

+ A hue bridge could not be automatically found on your network.
Enter one manually?

( or type offline to look around )

diff --git a/chrome/app/pods/components/light-group/component.js b/chrome/app/pods/components/light-group/component.js index 1c4b8dc..94b4ead 100644 --- a/chrome/app/pods/components/light-group/component.js +++ b/chrome/app/pods/components/light-group/component.js @@ -22,7 +22,7 @@ export default Component.extend({ activeLights = this.get('activeLights'), dimmerOn = this.get('dimmerOn'), lightsList = A(), - type, + src, activeClass; for (let key in lightsData) { @@ -30,55 +30,144 @@ export default Component.extend({ if (lightsData.hasOwnProperty(key) && lightsData[key].state.reachable) { switch (lightsData[key].modelid) { + case 'BSB001': + src = 'bridge_v1'; + break; + case 'BSB002': + src = 'bridge_v2'; + break; case 'LCT001': - type = 'a19'; + case 'LCT007': + case 'LCT010': + case 'LCT014': + case 'LTW010': + case 'LTW001': + case 'LTW004': + case 'LTW015': + case 'LWB004': + case 'LWB006': + src = 'white_and_color_e27'; + break; + case 'LWB010': + case 'LWB014': + src = 'white_e27'; break; case 'LCT002': - type = 'br30'; + src = 'br30'; + break; + case 'LCT011': + case 'LTW011': + src = 'br30_slim'; break; case 'LCT003': - type = 'gu10'; + src = 'gu10'; break; + case 'LTW013': + src = 'gu10_perfectfit'; + break; + case 'LST002': case 'LST001': - type = 'lightstrip'; - break; - case 'LLC010': - type = 'lc_iris'; - break; - case 'LLC011': - type = 'lc_bloom'; - break; - case 'LLC012': - type = 'lc_bloom'; + src = 'lightstrip'; break; case 'LLC006': - type = 'lc_iris'; + case 'LLC010': + src = 'iris'; break; + case 'LLC005': + case 'LLC011': + case 'LLC012': case 'LLC007': - type = 'lc_aura'; + src = 'bloom'; + break; + case 'LLC014': + src = 'aura'; break; case 'LLC013': - type = 'storylight'; - break; - case 'LWB004': - type = 'a19'; + src = 'storylight'; break; case 'LLC020': - type = 'huego'; + src = 'go'; + break; + case 'HBL001': + case 'HBL002': + case 'HBL003': + src = 'beyond_ceiling_pendant_table'; + break; + case 'HIL001': + case 'HIL002': + src = 'impulse'; + break; + case 'HEL001': + case 'HEL002': + src = 'entity'; + break; + case 'HML001': + case 'HML002': + case 'HML003': + case 'HML004': + case 'HML005': + src = 'phoenix_ceiling_pendant_table_wall'; + break; + case 'HML006': + src = 'phoenix_down'; + break; + case 'LTP003': + src = 'pendant_square'; + break; + case 'LTP002': + case 'LTP003': + src = 'pendant_round'; + break; + case 'LTP001': + src = 'pendant_oval'; + break; + case 'LDF002': + case 'LTF002': + case 'LTF001': + case 'LTC001': + case 'LTC002': + case 'LDF001': + src = 'ceiling_square'; + break; + case 'LTC003': + case 'LTD001': + case 'LTD001': + src = 'ceiling_round'; + break; + case 'LDD002': + src = 'floor'; + break; + case 'LDD001': + src = 'table'; + break; + case 'LDT001': + case 'MWM001': + src = 'recessed'; + break; + case 'SWT001': + src = 'tap'; + break; + case 'RWL021': + src = 'hds'; + break; + case 'SML001': + src = 'motion_sensor'; break; default: - type = 'a19'; + src = 'white_e27'; } if (dimmerOn) { - type += 'w'; + src = `assets/images/lights/filled/${src}.svg`; + } else { + src = `assets/images/lights/outline/${src}.svg`; } if (!activeLights.includes(key)) { activeClass = 'light-inactive'; } - lightsList.push({ type: type, name: lightsData[key].name, id: key, data: lightsData[key], activeClass: activeClass }); + lightsList.push({ src , name: lightsData[key].name, id: key, data: lightsData[key], activeClass }); } } diff --git a/chrome/app/pods/components/light-group/template.hbs b/chrome/app/pods/components/light-group/template.hbs index 3486231..0161669 100644 --- a/chrome/app/pods/components/light-group/template.hbs +++ b/chrome/app/pods/components/light-group/template.hbs @@ -1,7 +1,7 @@ {{#each lightsList as |light|}} {{#if lightsIconsOn}}
- + {{inline-svg light.src class="hue-light"}}
{{else}}
diff --git a/chrome/app/styles/dimmer.scss b/chrome/app/styles/dimmer.scss index b36f0d3..1add9b1 100644 --- a/chrome/app/styles/dimmer.scss +++ b/chrome/app/styles/dimmer.scss @@ -47,9 +47,19 @@ body.dimmerOn { } } } - svg { - -webkit-filter: drop-shadow(0 0 5px #228DFF); + + .light-inactive::before { + display: none; } + + .hue-light { + -webkit-filter: drop-shadow(0 0 5px #228DFF); + fill: $whitish; + path { + fill: $whitish; + } + } + .md-container { color: $whitish; } diff --git a/chrome/app/styles/hue-controls.scss b/chrome/app/styles/hue-controls.scss index 28d2ec9..4ab290f 100644 --- a/chrome/app/styles/hue-controls.scss +++ b/chrome/app/styles/hue-controls.scss @@ -26,12 +26,6 @@ } } -// preload images -#hue-controls:after, md-progress-circular:after { - display: none; - content: url(images/colormap.png) url(images/huegasm.png) url(images/lights/a19.svg) url(images/lights/a19w.svg) url(images/lights/br30.svg) url(images/lights/br30w.svg) url(images/lights/gu10.svg) url(images/lights/gu10w.svg) url(images/lights/huego.svg) url(images/lights/huegow.svg) url(images/lights/lc_aura.svg) url(images/lights/lc_auraw.svg) url(images/lights/lc_bloom.svg) url(images/lights/lc_bloomw.svg) url(images/lights/lc_iris.svg) url(images/lights/lc_irisw.svg) url(images/lights/lightstrip.svg) url(images/lights/lightstripw.svg) url(images/lights/storylight.svg) url(images/lights/storylightw.svg); -} - #navigation { padding: 5px 0 1vh; text-align: center; diff --git a/chrome/app/styles/light-group.scss b/chrome/app/styles/light-group.scss index be9df28..2cc9735 100644 --- a/chrome/app/styles/light-group.scss +++ b/chrome/app/styles/light-group.scss @@ -10,6 +10,10 @@ } } +.hue-light { + width: 35px; +} + .toggleable-light { cursor: pointer; position: relative; @@ -20,6 +24,7 @@ height: 50px; align-items: center; justify-content: center; + padding: 3px; } .light-inactive { @@ -38,12 +43,12 @@ .light-active { border-color: rgba(green, 0.4); - img { + .hue-light { transition-duration: 0.3s; transition-property: transform; box-shadow: 0 0 1px rgba(0, 0, 0, 0); } - img:hover { + .hue-light:hover { transform: scale(1.2); } } diff --git a/chrome/package.json b/chrome/package.json index 754d827..15b5dc9 100644 --- a/chrome/package.json +++ b/chrome/package.json @@ -27,19 +27,20 @@ "ember-cli-inject-live-reload": "^1.3.1", "ember-cli-nouislider": "^0.13.0", "ember-cli-release": "0.2.8", - "ember-cli-shims": "^1.0.2", "ember-cli-sass": "^6.0.0", + "ember-cli-shims": "^1.0.2", "ember-cli-sri": "^2.1.0", "ember-cli-test-loader": "^1.1.0", "ember-cli-uglify": "^1.2.0", "ember-export-application-global": "^1.0.4", + "ember-inline-svg": "^0.1.7", "ember-load-initializers": "^0.6.3", "ember-modal-dialog": "^0.9.0", "ember-notify": "^5.0.4", - "ember-paper": "^1.0.0-alpha.14", + "ember-paper": "git+https://github.com/miguelcobain/ember-paper.git", "ember-resolver": "^2.0.3", - "ember-truth-helpers": "^1.2.0", "ember-source": "^2.11.0", + "ember-truth-helpers": "^1.2.0", "loader.js": "^4.0.7" } -} \ No newline at end of file +} diff --git a/chrome/public/assets/images/lights/a19.svg b/chrome/public/assets/images/lights/a19.svg deleted file mode 100644 index cf3eee3..0000000 --- a/chrome/public/assets/images/lights/a19.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/a19w.svg b/chrome/public/assets/images/lights/a19w.svg deleted file mode 100644 index b05e873..0000000 --- a/chrome/public/assets/images/lights/a19w.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/br30.svg b/chrome/public/assets/images/lights/br30.svg deleted file mode 100644 index 7d71208..0000000 --- a/chrome/public/assets/images/lights/br30.svg +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/br30w.svg b/chrome/public/assets/images/lights/br30w.svg deleted file mode 100644 index ba1585a..0000000 --- a/chrome/public/assets/images/lights/br30w.svg +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/filled/aura.svg b/chrome/public/assets/images/lights/filled/aura.svg new file mode 100644 index 0000000..c047da6 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/aura.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/beyond_ceiling_pendant_table.svg b/chrome/public/assets/images/lights/filled/beyond_ceiling_pendant_table.svg new file mode 100644 index 0000000..2588b6c --- /dev/null +++ b/chrome/public/assets/images/lights/filled/beyond_ceiling_pendant_table.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/chrome/public/assets/images/lights/filled/bloom.svg b/chrome/public/assets/images/lights/filled/bloom.svg new file mode 100644 index 0000000..9765cd8 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/bloom.svg @@ -0,0 +1,12 @@ + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/br30.svg b/chrome/public/assets/images/lights/filled/br30.svg new file mode 100644 index 0000000..e474676 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/br30.svg @@ -0,0 +1,9 @@ + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/br30_slim.svg b/chrome/public/assets/images/lights/filled/br30_slim.svg new file mode 100644 index 0000000..56ec0a2 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/br30_slim.svg @@ -0,0 +1,15 @@ + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/bridge_v1.svg b/chrome/public/assets/images/lights/filled/bridge_v1.svg new file mode 100644 index 0000000..caa67bf --- /dev/null +++ b/chrome/public/assets/images/lights/filled/bridge_v1.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/bridge_v2.svg b/chrome/public/assets/images/lights/filled/bridge_v2.svg new file mode 100644 index 0000000..f84f750 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/bridge_v2.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/ceiling_round.svg b/chrome/public/assets/images/lights/filled/ceiling_round.svg new file mode 100644 index 0000000..fa3f8e1 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/ceiling_round.svg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/ceiling_square.svg b/chrome/public/assets/images/lights/filled/ceiling_square.svg new file mode 100644 index 0000000..10b5080 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/ceiling_square.svg @@ -0,0 +1,13 @@ + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/entity.svg b/chrome/public/assets/images/lights/filled/entity.svg new file mode 100644 index 0000000..8754d90 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/entity.svg @@ -0,0 +1,11 @@ + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/floor.svg b/chrome/public/assets/images/lights/filled/floor.svg new file mode 100644 index 0000000..77404d2 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/floor.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/go.svg b/chrome/public/assets/images/lights/filled/go.svg new file mode 100644 index 0000000..e1b78ec --- /dev/null +++ b/chrome/public/assets/images/lights/filled/go.svg @@ -0,0 +1,10 @@ + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/gu10.svg b/chrome/public/assets/images/lights/filled/gu10.svg new file mode 100644 index 0000000..3efa6dc --- /dev/null +++ b/chrome/public/assets/images/lights/filled/gu10.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/gu10_perfectfit.svg b/chrome/public/assets/images/lights/filled/gu10_perfectfit.svg new file mode 100644 index 0000000..a40f2d4 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/gu10_perfectfit.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/hds.svg b/chrome/public/assets/images/lights/filled/hds.svg new file mode 100644 index 0000000..56c191a --- /dev/null +++ b/chrome/public/assets/images/lights/filled/hds.svg @@ -0,0 +1,8 @@ + + + + + diff --git a/chrome/public/assets/images/lights/filled/impulse.svg b/chrome/public/assets/images/lights/filled/impulse.svg new file mode 100644 index 0000000..636e36a --- /dev/null +++ b/chrome/public/assets/images/lights/filled/impulse.svg @@ -0,0 +1,11 @@ + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/iris.svg b/chrome/public/assets/images/lights/filled/iris.svg new file mode 100644 index 0000000..82d2b54 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/iris.svg @@ -0,0 +1,14 @@ + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/lightstrip.svg b/chrome/public/assets/images/lights/filled/lightstrip.svg new file mode 100644 index 0000000..146bac0 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/lightstrip.svg @@ -0,0 +1,13 @@ + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/motion_sensor.svg b/chrome/public/assets/images/lights/filled/motion_sensor.svg new file mode 100644 index 0000000..ca6ceca --- /dev/null +++ b/chrome/public/assets/images/lights/filled/motion_sensor.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/pendant_oval.svg b/chrome/public/assets/images/lights/filled/pendant_oval.svg new file mode 100644 index 0000000..3e1dfdd --- /dev/null +++ b/chrome/public/assets/images/lights/filled/pendant_oval.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/chrome/public/assets/images/lights/filled/pendant_round.svg b/chrome/public/assets/images/lights/filled/pendant_round.svg new file mode 100644 index 0000000..c98f454 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/pendant_round.svg @@ -0,0 +1,9 @@ + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/pendant_square.svg b/chrome/public/assets/images/lights/filled/pendant_square.svg new file mode 100644 index 0000000..96b65c1 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/pendant_square.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/chrome/public/assets/images/lights/filled/phoenix_ceiling_pendant_table_wall.svg b/chrome/public/assets/images/lights/filled/phoenix_ceiling_pendant_table_wall.svg new file mode 100644 index 0000000..2a581d4 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/phoenix_ceiling_pendant_table_wall.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/chrome/public/assets/images/lights/filled/phoenix_down.svg b/chrome/public/assets/images/lights/filled/phoenix_down.svg new file mode 100644 index 0000000..fe056be --- /dev/null +++ b/chrome/public/assets/images/lights/filled/phoenix_down.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/chrome/public/assets/images/lights/filled/recessed.svg b/chrome/public/assets/images/lights/filled/recessed.svg new file mode 100644 index 0000000..a39c14a --- /dev/null +++ b/chrome/public/assets/images/lights/filled/recessed.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/chrome/public/assets/images/lights/filled/storylight.svg b/chrome/public/assets/images/lights/filled/storylight.svg new file mode 100644 index 0000000..dcb1bb7 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/storylight.svg @@ -0,0 +1,14 @@ + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/table.svg b/chrome/public/assets/images/lights/filled/table.svg new file mode 100644 index 0000000..c2dedb5 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/table.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/tap.svg b/chrome/public/assets/images/lights/filled/tap.svg new file mode 100644 index 0000000..7987991 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/tap.svg @@ -0,0 +1,10 @@ + + + + + diff --git a/chrome/public/assets/images/lights/filled/white_and_color_e27_b22.svg b/chrome/public/assets/images/lights/filled/white_and_color_e27_b22.svg new file mode 100644 index 0000000..c304a62 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/white_and_color_e27_b22.svg @@ -0,0 +1,14 @@ + + + + + + + + + diff --git a/chrome/public/assets/images/lights/filled/white_e27_b22.svg b/chrome/public/assets/images/lights/filled/white_e27_b22.svg new file mode 100644 index 0000000..79981c9 --- /dev/null +++ b/chrome/public/assets/images/lights/filled/white_e27_b22.svg @@ -0,0 +1,10 @@ + + + + + + + diff --git a/chrome/public/assets/images/lights/gu10.svg b/chrome/public/assets/images/lights/gu10.svg deleted file mode 100644 index 014d2f5..0000000 --- a/chrome/public/assets/images/lights/gu10.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/gu10w.svg b/chrome/public/assets/images/lights/gu10w.svg deleted file mode 100644 index 1ea01cb..0000000 --- a/chrome/public/assets/images/lights/gu10w.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/huego.svg b/chrome/public/assets/images/lights/huego.svg deleted file mode 100644 index e912e5a..0000000 --- a/chrome/public/assets/images/lights/huego.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/huegow.svg b/chrome/public/assets/images/lights/huegow.svg deleted file mode 100644 index b3b0b88..0000000 --- a/chrome/public/assets/images/lights/huegow.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/lc_aura.svg b/chrome/public/assets/images/lights/lc_aura.svg deleted file mode 100644 index 9faf3b9..0000000 --- a/chrome/public/assets/images/lights/lc_aura.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/lc_auraw.svg b/chrome/public/assets/images/lights/lc_auraw.svg deleted file mode 100644 index c125947..0000000 --- a/chrome/public/assets/images/lights/lc_auraw.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/lc_bloom.svg b/chrome/public/assets/images/lights/lc_bloom.svg deleted file mode 100644 index a498b9a..0000000 --- a/chrome/public/assets/images/lights/lc_bloom.svg +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/lc_bloomw.svg b/chrome/public/assets/images/lights/lc_bloomw.svg deleted file mode 100644 index 3dce9f7..0000000 --- a/chrome/public/assets/images/lights/lc_bloomw.svg +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/lc_iris.svg b/chrome/public/assets/images/lights/lc_iris.svg deleted file mode 100644 index 876b3d2..0000000 --- a/chrome/public/assets/images/lights/lc_iris.svg +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/lc_irisw.svg b/chrome/public/assets/images/lights/lc_irisw.svg deleted file mode 100644 index cdf472b..0000000 --- a/chrome/public/assets/images/lights/lc_irisw.svg +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/lightstrip.svg b/chrome/public/assets/images/lights/lightstrip.svg deleted file mode 100644 index 1d55b8e..0000000 --- a/chrome/public/assets/images/lights/lightstrip.svg +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/lightstripw.svg b/chrome/public/assets/images/lights/lightstripw.svg deleted file mode 100644 index fb32dab..0000000 --- a/chrome/public/assets/images/lights/lightstripw.svg +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/outline/aura.svg b/chrome/public/assets/images/lights/outline/aura.svg new file mode 100644 index 0000000..194eeb5 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/aura.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/beyond_ceiling_pendant_table.svg b/chrome/public/assets/images/lights/outline/beyond_ceiling_pendant_table.svg new file mode 100644 index 0000000..0e59f05 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/beyond_ceiling_pendant_table.svg @@ -0,0 +1,17 @@ + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/bloom.svg b/chrome/public/assets/images/lights/outline/bloom.svg new file mode 100644 index 0000000..9b68bbe --- /dev/null +++ b/chrome/public/assets/images/lights/outline/bloom.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/br30.svg b/chrome/public/assets/images/lights/outline/br30.svg new file mode 100644 index 0000000..24fa52c --- /dev/null +++ b/chrome/public/assets/images/lights/outline/br30.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/br30_slim.svg b/chrome/public/assets/images/lights/outline/br30_slim.svg new file mode 100644 index 0000000..f11d2bb --- /dev/null +++ b/chrome/public/assets/images/lights/outline/br30_slim.svg @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/bridge_v1.svg b/chrome/public/assets/images/lights/outline/bridge_v1.svg new file mode 100644 index 0000000..28336bb --- /dev/null +++ b/chrome/public/assets/images/lights/outline/bridge_v1.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/bridge_v2.svg b/chrome/public/assets/images/lights/outline/bridge_v2.svg new file mode 100644 index 0000000..2ae2dbb --- /dev/null +++ b/chrome/public/assets/images/lights/outline/bridge_v2.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/ceiling_round.svg b/chrome/public/assets/images/lights/outline/ceiling_round.svg new file mode 100644 index 0000000..5fe0917 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/ceiling_round.svg @@ -0,0 +1,16 @@ + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/ceiling_square.svg b/chrome/public/assets/images/lights/outline/ceiling_square.svg new file mode 100644 index 0000000..0e4ed1a --- /dev/null +++ b/chrome/public/assets/images/lights/outline/ceiling_square.svg @@ -0,0 +1,18 @@ + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/entity.svg b/chrome/public/assets/images/lights/outline/entity.svg new file mode 100644 index 0000000..32f96d0 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/entity.svg @@ -0,0 +1,1515 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/floor.svg b/chrome/public/assets/images/lights/outline/floor.svg new file mode 100644 index 0000000..b6c6264 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/floor.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/go.svg b/chrome/public/assets/images/lights/outline/go.svg new file mode 100644 index 0000000..8a6da13 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/go.svg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/gu10.svg b/chrome/public/assets/images/lights/outline/gu10.svg new file mode 100644 index 0000000..6572d73 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/gu10.svg @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/gu10_perfectfit.svg b/chrome/public/assets/images/lights/outline/gu10_perfectfit.svg new file mode 100644 index 0000000..bbdef6b --- /dev/null +++ b/chrome/public/assets/images/lights/outline/gu10_perfectfit.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/hds.svg b/chrome/public/assets/images/lights/outline/hds.svg new file mode 100644 index 0000000..a299e1b --- /dev/null +++ b/chrome/public/assets/images/lights/outline/hds.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/impulse.svg b/chrome/public/assets/images/lights/outline/impulse.svg new file mode 100644 index 0000000..0067f41 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/impulse.svg @@ -0,0 +1,413 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/iris.svg b/chrome/public/assets/images/lights/outline/iris.svg new file mode 100644 index 0000000..cca3b83 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/iris.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/lightstrip.svg b/chrome/public/assets/images/lights/outline/lightstrip.svg new file mode 100644 index 0000000..91c2b70 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/lightstrip.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/motion_sensor.svg b/chrome/public/assets/images/lights/outline/motion_sensor.svg new file mode 100644 index 0000000..4a18813 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/motion_sensor.svg @@ -0,0 +1,9 @@ + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/par16.svg b/chrome/public/assets/images/lights/outline/par16.svg new file mode 100644 index 0000000..a2b7f75 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/par16.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/pendant_oval.svg b/chrome/public/assets/images/lights/outline/pendant_oval.svg new file mode 100644 index 0000000..ba4a4fa --- /dev/null +++ b/chrome/public/assets/images/lights/outline/pendant_oval.svg @@ -0,0 +1,12 @@ + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/pendant_round.svg b/chrome/public/assets/images/lights/outline/pendant_round.svg new file mode 100644 index 0000000..93afd31 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/pendant_round.svg @@ -0,0 +1,12 @@ + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/pendant_square.svg b/chrome/public/assets/images/lights/outline/pendant_square.svg new file mode 100644 index 0000000..4bcedfc --- /dev/null +++ b/chrome/public/assets/images/lights/outline/pendant_square.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/chrome/public/assets/images/lights/outline/phoenix_ceiling.svg b/chrome/public/assets/images/lights/outline/phoenix_ceiling.svg new file mode 100644 index 0000000..e0a5978 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/phoenix_ceiling.svg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/phoenix_ceiling_2.svg b/chrome/public/assets/images/lights/outline/phoenix_ceiling_2.svg new file mode 100644 index 0000000..0565771 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/phoenix_ceiling_2.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/phoenix_down.svg b/chrome/public/assets/images/lights/outline/phoenix_down.svg new file mode 100644 index 0000000..b5799b9 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/phoenix_down.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/chrome/public/assets/images/lights/outline/phoenix_pendant.svg b/chrome/public/assets/images/lights/outline/phoenix_pendant.svg new file mode 100644 index 0000000..489690e --- /dev/null +++ b/chrome/public/assets/images/lights/outline/phoenix_pendant.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/phoenix_table.svg b/chrome/public/assets/images/lights/outline/phoenix_table.svg new file mode 100644 index 0000000..b42efe0 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/phoenix_table.svg @@ -0,0 +1,15 @@ + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/phoenix_wall.svg b/chrome/public/assets/images/lights/outline/phoenix_wall.svg new file mode 100644 index 0000000..0241640 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/phoenix_wall.svg @@ -0,0 +1,14 @@ + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/recessed.svg b/chrome/public/assets/images/lights/outline/recessed.svg new file mode 100644 index 0000000..5bd5356 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/recessed.svg @@ -0,0 +1,13 @@ + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/storylight.svg b/chrome/public/assets/images/lights/outline/storylight.svg new file mode 100644 index 0000000..f29a2b6 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/storylight.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/table.svg b/chrome/public/assets/images/lights/outline/table.svg new file mode 100644 index 0000000..e05b7b0 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/table.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/tap.svg b/chrome/public/assets/images/lights/outline/tap.svg new file mode 100644 index 0000000..6cab707 --- /dev/null +++ b/chrome/public/assets/images/lights/outline/tap.svg @@ -0,0 +1,9 @@ + + + + + + + + diff --git a/chrome/public/assets/images/lights/outline/white_and_color_e27.svg b/chrome/public/assets/images/lights/outline/white_and_color_e27.svg new file mode 100644 index 0000000..950322e --- /dev/null +++ b/chrome/public/assets/images/lights/outline/white_and_color_e27.svg @@ -0,0 +1,10 @@ + + + + + diff --git a/chrome/public/assets/images/lights/outline/white_e27.svg b/chrome/public/assets/images/lights/outline/white_e27.svg new file mode 100644 index 0000000..4cca0dd --- /dev/null +++ b/chrome/public/assets/images/lights/outline/white_e27.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/chrome/public/assets/images/lights/storylight.svg b/chrome/public/assets/images/lights/storylight.svg deleted file mode 100644 index d04a5db..0000000 --- a/chrome/public/assets/images/lights/storylight.svg +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/lights/storylightw.svg b/chrome/public/assets/images/lights/storylightw.svg deleted file mode 100644 index 8bc66a5..0000000 --- a/chrome/public/assets/images/lights/storylightw.svg +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/chrome/public/assets/images/pressButtonBridge.png b/chrome/public/assets/images/pressButtonBridge.png deleted file mode 100644 index 5aa00411cad0984247a88fa9a0890c75265b29c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32156 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 { - this.set('bridgeIp', manualBridgeIp); + this.send('chooseBridge', manualBridgeIp); }); } } diff --git a/mobile/app/pods/components/bridge-finder/template.hbs b/mobile/app/pods/components/bridge-finder/template.hbs index 08cf26e..f54a2ff 100644 --- a/mobile/app/pods/components/bridge-finder/template.hbs +++ b/mobile/app/pods/components/bridge-finder/template.hbs @@ -1,6 +1,33 @@ {{#unless bridgeUsername}} {{#if bridgeIp}} - {{paper-progress-linear warn=true value=bridgeUserNamePingIntervalProgress}} + + + + + + + + + + {{paper-progress-linear warn=true value=bridgeUserNamePingIntervalProgress}}

{{#if isAuthenticating}} Your bridge IP is {{bridgeIp}} diff --git a/mobile/app/pods/components/light-group/component.js b/mobile/app/pods/components/light-group/component.js index 508f8d3..d1affab 100644 --- a/mobile/app/pods/components/light-group/component.js +++ b/mobile/app/pods/components/light-group/component.js @@ -19,63 +19,152 @@ export default Component.extend({ activeLights = this.get('activeLights'), dimmerOn = this.get('dimmerOn'), lightsList = A(), - type, + src, activeClass; for (let key in lightsData) { activeClass = 'light-active'; if (lightsData.hasOwnProperty(key) && lightsData[key].state.reachable) { - switch(lightsData[key].modelid){ + switch (lightsData[key].modelid) { + case 'BSB001': + src = 'bridge_v1'; + break; + case 'BSB002': + src = 'bridge_v2'; + break; case 'LCT001': - type = 'a19'; + case 'LCT007': + case 'LCT010': + case 'LCT014': + case 'LTW010': + case 'LTW001': + case 'LTW004': + case 'LTW015': + case 'LWB004': + case 'LWB006': + src = 'white_and_color_e27'; + break; + case 'LWB010': + case 'LWB014': + src = 'white_e27'; break; case 'LCT002': - type = 'br30'; + src = 'br30'; + break; + case 'LCT011': + case 'LTW011': + src = 'br30_slim'; break; case 'LCT003': - type = 'gu10'; + src = 'gu10'; break; + case 'LTW013': + src = 'gu10_perfectfit'; + break; + case 'LST002': case 'LST001': - type = 'lightstrip'; - break; - case 'LLC010': - type = 'lc_iris'; - break; - case 'LLC011': - type = 'lc_bloom'; - break; - case 'LLC012': - type = 'lc_bloom'; + src = 'lightstrip'; break; case 'LLC006': - type = 'lc_iris'; + case 'LLC010': + src = 'iris'; break; + case 'LLC005': + case 'LLC011': + case 'LLC012': case 'LLC007': - type = 'lc_aura'; + src = 'bloom'; + break; + case 'LLC014': + src = 'aura'; break; case 'LLC013': - type = 'storylight'; - break; - case 'LWB004': - type ='a19'; + src = 'storylight'; break; case 'LLC020': - type = 'huego'; + src = 'go'; + break; + case 'HBL001': + case 'HBL002': + case 'HBL003': + src = 'beyond_ceiling_pendant_table'; + break; + case 'HIL001': + case 'HIL002': + src = 'impulse'; + break; + case 'HEL001': + case 'HEL002': + src = 'entity'; + break; + case 'HML001': + case 'HML002': + case 'HML003': + case 'HML004': + case 'HML005': + src = 'phoenix_ceiling_pendant_table_wall'; + break; + case 'HML006': + src = 'phoenix_down'; + break; + case 'LTP003': + src = 'pendant_square'; + break; + case 'LTP002': + case 'LTP003': + src = 'pendant_round'; + break; + case 'LTP001': + src = 'pendant_oval'; + break; + case 'LDF002': + case 'LTF002': + case 'LTF001': + case 'LTC001': + case 'LTC002': + case 'LDF001': + src = 'ceiling_square'; + break; + case 'LTC003': + case 'LTD001': + case 'LTD001': + src = 'ceiling_round'; + break; + case 'LDD002': + src = 'floor'; + break; + case 'LDD001': + src = 'table'; + break; + case 'LDT001': + case 'MWM001': + src = 'recessed'; + break; + case 'SWT001': + src = 'tap'; + break; + case 'RWL021': + src = 'hds'; + break; + case 'SML001': + src = 'motion_sensor'; break; default: - type = 'a19'; + src = 'white_e27'; } - if(dimmerOn){ - type += 'w'; + if (dimmerOn) { + src = `assets/images/lights/filled/${src}.svg`; + } else { + src = `assets/images/lights/outline/${src}.svg`; } if(!activeLights.includes(key)){ activeClass = 'light-inactive'; } - lightsList.push({type: type, name: lightsData[key].name, id: key, data: lightsData[key], activeClass: activeClass}); + lightsList.push({ src, name: lightsData[key].name, id: key, data: lightsData[key], activeClass }); } } diff --git a/mobile/app/pods/components/light-group/template.hbs b/mobile/app/pods/components/light-group/template.hbs index b0af952..05c41de 100644 --- a/mobile/app/pods/components/light-group/template.hbs +++ b/mobile/app/pods/components/light-group/template.hbs @@ -1,7 +1,7 @@ {{#each lightsList as |light|}} {{#if lightsIconsOn}}

- + {{inline-svg light.src class="hue-light"}}
{{else}}
diff --git a/mobile/app/styles/dimmer.scss b/mobile/app/styles/dimmer.scss index 3e36acb..285c745 100644 --- a/mobile/app/styles/dimmer.scss +++ b/mobile/app/styles/dimmer.scss @@ -41,8 +41,16 @@ body.dimmerOn { color: $whitish !important; } } - svg { + .light-inactive::before { + display: none; + } + + .hue-light { -webkit-filter: drop-shadow(0 0 5px #228DFF); + fill: $whitish; + path { + fill: $whitish; + } } .md-container { color: $whitish; diff --git a/mobile/app/styles/hue-controls.scss b/mobile/app/styles/hue-controls.scss index 418dcbf..8a75ebf 100644 --- a/mobile/app/styles/hue-controls.scss +++ b/mobile/app/styles/hue-controls.scss @@ -18,12 +18,6 @@ } } -// preload images -#hue-controls:after, md-progress-circular:after { - display: none; - content: url(images/colormap.png) url(images/missingArtwork.png) url(images/sc-white.png) url(images/huegasm.png) url(images/lights/a19.svg) url(images/lights/a19w.svg) url(images/lights/br30.svg) url(images/lights/br30w.svg) url(images/lights/gu10.svg) url(images/lights/gu10w.svg) url(images/lights/huego.svg) url(images/lights/huegow.svg) url(images/lights/lc_aura.svg) url(images/lights/lc_auraw.svg) url(images/lights/lc_bloom.svg) url(images/lights/lc_bloomw.svg) url(images/lights/lc_iris.svg) url(images/lights/lc_irisw.svg) url(images/lights/lightstrip.svg) url(images/lights/lightstripw.svg) url(images/lights/storylight.svg) url(images/lights/storylightw.svg); -} - #navigation { padding: 15px 0 4vh; text-align: center; diff --git a/mobile/app/styles/light-group.scss b/mobile/app/styles/light-group.scss index 39a1012..8ed24c6 100644 --- a/mobile/app/styles/light-group.scss +++ b/mobile/app/styles/light-group.scss @@ -6,6 +6,10 @@ flex-wrap: wrap; } +.hue-light { + width: 35px; +} + .toggleable-light { cursor: pointer; position: relative; @@ -16,6 +20,7 @@ height: 50px; align-items: center; justify-content: center; + padding: 3px; } .light-inactive { @@ -34,7 +39,7 @@ .light-active { border-color: rgba(green, 0.4); - img { + .hue-light { transition-duration: 0.3s; transition-property: transform; box-shadow: 0 0 1px rgba(0, 0, 0, 0); diff --git a/mobile/ember-cordova/cordova/config.xml b/mobile/ember-cordova/cordova/config.xml index b3a29bc..982d848 100644 --- a/mobile/ember-cordova/cordova/config.xml +++ b/mobile/ember-cordova/cordova/config.xml @@ -1,5 +1,5 @@ - + Huegasm diff --git a/mobile/package.json b/mobile/package.json index 8ef3a68..e823e88 100644 --- a/mobile/package.json +++ b/mobile/package.json @@ -29,20 +29,21 @@ "ember-cli-inject-live-reload": "^1.3.1", "ember-cli-nouislider": "^0.13.0", "ember-cli-release": "^0.2.8", - "ember-cli-shims": "^1.0.2", "ember-cli-sass": "^6.0.0", + "ember-cli-shims": "^1.0.2", "ember-cli-sri": "^2.1.0", "ember-cli-test-loader": "^1.1.0", "ember-cli-uglify": "^1.2.0", "ember-cordova": "^0.4.0", "ember-export-application-global": "^1.0.4", + "ember-inline-svg": "^0.1.7", "ember-load-initializers": "^0.6.3", "ember-modal-dialog": "^0.9.0", "ember-notify": "^5.0.4", - "ember-paper": "^1.0.0-alpha.14", + "ember-paper": "git+https://github.com/miguelcobain/ember-paper.git", "ember-resolver": "^2.0.3", - "ember-truth-helpers": "^1.2.0", "ember-source": "^2.11.0", + "ember-truth-helpers": "^1.2.0", "loader.js": "^4.0.7" } -} \ No newline at end of file +} diff --git a/mobile/public/assets/images/lights/a19.svg b/mobile/public/assets/images/lights/a19.svg deleted file mode 100644 index cf3eee3..0000000 --- a/mobile/public/assets/images/lights/a19.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/a19w.svg b/mobile/public/assets/images/lights/a19w.svg deleted file mode 100644 index b05e873..0000000 --- a/mobile/public/assets/images/lights/a19w.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/br30.svg b/mobile/public/assets/images/lights/br30.svg deleted file mode 100644 index 7d71208..0000000 --- a/mobile/public/assets/images/lights/br30.svg +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/br30w.svg b/mobile/public/assets/images/lights/br30w.svg deleted file mode 100644 index ba1585a..0000000 --- a/mobile/public/assets/images/lights/br30w.svg +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/filled/aura.svg b/mobile/public/assets/images/lights/filled/aura.svg new file mode 100644 index 0000000..c047da6 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/aura.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/beyond_ceiling_pendant_table.svg b/mobile/public/assets/images/lights/filled/beyond_ceiling_pendant_table.svg new file mode 100644 index 0000000..2588b6c --- /dev/null +++ b/mobile/public/assets/images/lights/filled/beyond_ceiling_pendant_table.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/mobile/public/assets/images/lights/filled/bloom.svg b/mobile/public/assets/images/lights/filled/bloom.svg new file mode 100644 index 0000000..9765cd8 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/bloom.svg @@ -0,0 +1,12 @@ + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/br30.svg b/mobile/public/assets/images/lights/filled/br30.svg new file mode 100644 index 0000000..e474676 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/br30.svg @@ -0,0 +1,9 @@ + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/br30_slim.svg b/mobile/public/assets/images/lights/filled/br30_slim.svg new file mode 100644 index 0000000..56ec0a2 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/br30_slim.svg @@ -0,0 +1,15 @@ + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/bridge_v1.svg b/mobile/public/assets/images/lights/filled/bridge_v1.svg new file mode 100644 index 0000000..caa67bf --- /dev/null +++ b/mobile/public/assets/images/lights/filled/bridge_v1.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/bridge_v2.svg b/mobile/public/assets/images/lights/filled/bridge_v2.svg new file mode 100644 index 0000000..f84f750 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/bridge_v2.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/ceiling_round.svg b/mobile/public/assets/images/lights/filled/ceiling_round.svg new file mode 100644 index 0000000..fa3f8e1 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/ceiling_round.svg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/ceiling_square.svg b/mobile/public/assets/images/lights/filled/ceiling_square.svg new file mode 100644 index 0000000..10b5080 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/ceiling_square.svg @@ -0,0 +1,13 @@ + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/entity.svg b/mobile/public/assets/images/lights/filled/entity.svg new file mode 100644 index 0000000..8754d90 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/entity.svg @@ -0,0 +1,11 @@ + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/floor.svg b/mobile/public/assets/images/lights/filled/floor.svg new file mode 100644 index 0000000..77404d2 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/floor.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/go.svg b/mobile/public/assets/images/lights/filled/go.svg new file mode 100644 index 0000000..e1b78ec --- /dev/null +++ b/mobile/public/assets/images/lights/filled/go.svg @@ -0,0 +1,10 @@ + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/gu10.svg b/mobile/public/assets/images/lights/filled/gu10.svg new file mode 100644 index 0000000..3efa6dc --- /dev/null +++ b/mobile/public/assets/images/lights/filled/gu10.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/gu10_perfectfit.svg b/mobile/public/assets/images/lights/filled/gu10_perfectfit.svg new file mode 100644 index 0000000..a40f2d4 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/gu10_perfectfit.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/hds.svg b/mobile/public/assets/images/lights/filled/hds.svg new file mode 100644 index 0000000..56c191a --- /dev/null +++ b/mobile/public/assets/images/lights/filled/hds.svg @@ -0,0 +1,8 @@ + + + + + diff --git a/mobile/public/assets/images/lights/filled/impulse.svg b/mobile/public/assets/images/lights/filled/impulse.svg new file mode 100644 index 0000000..636e36a --- /dev/null +++ b/mobile/public/assets/images/lights/filled/impulse.svg @@ -0,0 +1,11 @@ + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/iris.svg b/mobile/public/assets/images/lights/filled/iris.svg new file mode 100644 index 0000000..82d2b54 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/iris.svg @@ -0,0 +1,14 @@ + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/lightstrip.svg b/mobile/public/assets/images/lights/filled/lightstrip.svg new file mode 100644 index 0000000..146bac0 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/lightstrip.svg @@ -0,0 +1,13 @@ + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/motion_sensor.svg b/mobile/public/assets/images/lights/filled/motion_sensor.svg new file mode 100644 index 0000000..ca6ceca --- /dev/null +++ b/mobile/public/assets/images/lights/filled/motion_sensor.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/pendant_oval.svg b/mobile/public/assets/images/lights/filled/pendant_oval.svg new file mode 100644 index 0000000..3e1dfdd --- /dev/null +++ b/mobile/public/assets/images/lights/filled/pendant_oval.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/mobile/public/assets/images/lights/filled/pendant_round.svg b/mobile/public/assets/images/lights/filled/pendant_round.svg new file mode 100644 index 0000000..c98f454 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/pendant_round.svg @@ -0,0 +1,9 @@ + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/pendant_square.svg b/mobile/public/assets/images/lights/filled/pendant_square.svg new file mode 100644 index 0000000..96b65c1 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/pendant_square.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/mobile/public/assets/images/lights/filled/phoenix_ceiling_pendant_table_wall.svg b/mobile/public/assets/images/lights/filled/phoenix_ceiling_pendant_table_wall.svg new file mode 100644 index 0000000..2a581d4 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/phoenix_ceiling_pendant_table_wall.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/mobile/public/assets/images/lights/filled/phoenix_down.svg b/mobile/public/assets/images/lights/filled/phoenix_down.svg new file mode 100644 index 0000000..fe056be --- /dev/null +++ b/mobile/public/assets/images/lights/filled/phoenix_down.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/mobile/public/assets/images/lights/filled/recessed.svg b/mobile/public/assets/images/lights/filled/recessed.svg new file mode 100644 index 0000000..a39c14a --- /dev/null +++ b/mobile/public/assets/images/lights/filled/recessed.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/mobile/public/assets/images/lights/filled/storylight.svg b/mobile/public/assets/images/lights/filled/storylight.svg new file mode 100644 index 0000000..dcb1bb7 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/storylight.svg @@ -0,0 +1,14 @@ + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/table.svg b/mobile/public/assets/images/lights/filled/table.svg new file mode 100644 index 0000000..c2dedb5 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/table.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/tap.svg b/mobile/public/assets/images/lights/filled/tap.svg new file mode 100644 index 0000000..7987991 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/tap.svg @@ -0,0 +1,10 @@ + + + + + diff --git a/mobile/public/assets/images/lights/filled/white_and_color_e27_b22.svg b/mobile/public/assets/images/lights/filled/white_and_color_e27_b22.svg new file mode 100644 index 0000000..c304a62 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/white_and_color_e27_b22.svg @@ -0,0 +1,14 @@ + + + + + + + + + diff --git a/mobile/public/assets/images/lights/filled/white_e27_b22.svg b/mobile/public/assets/images/lights/filled/white_e27_b22.svg new file mode 100644 index 0000000..79981c9 --- /dev/null +++ b/mobile/public/assets/images/lights/filled/white_e27_b22.svg @@ -0,0 +1,10 @@ + + + + + + + diff --git a/mobile/public/assets/images/lights/gu10.svg b/mobile/public/assets/images/lights/gu10.svg deleted file mode 100644 index 014d2f5..0000000 --- a/mobile/public/assets/images/lights/gu10.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/gu10w.svg b/mobile/public/assets/images/lights/gu10w.svg deleted file mode 100644 index 1ea01cb..0000000 --- a/mobile/public/assets/images/lights/gu10w.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/huego.svg b/mobile/public/assets/images/lights/huego.svg deleted file mode 100644 index e912e5a..0000000 --- a/mobile/public/assets/images/lights/huego.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/huegow.svg b/mobile/public/assets/images/lights/huegow.svg deleted file mode 100644 index b3b0b88..0000000 --- a/mobile/public/assets/images/lights/huegow.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/lc_aura.svg b/mobile/public/assets/images/lights/lc_aura.svg deleted file mode 100644 index 9faf3b9..0000000 --- a/mobile/public/assets/images/lights/lc_aura.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/lc_auraw.svg b/mobile/public/assets/images/lights/lc_auraw.svg deleted file mode 100644 index c125947..0000000 --- a/mobile/public/assets/images/lights/lc_auraw.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/lc_bloom.svg b/mobile/public/assets/images/lights/lc_bloom.svg deleted file mode 100644 index a498b9a..0000000 --- a/mobile/public/assets/images/lights/lc_bloom.svg +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/lc_bloomw.svg b/mobile/public/assets/images/lights/lc_bloomw.svg deleted file mode 100644 index 3dce9f7..0000000 --- a/mobile/public/assets/images/lights/lc_bloomw.svg +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/lc_iris.svg b/mobile/public/assets/images/lights/lc_iris.svg deleted file mode 100644 index 876b3d2..0000000 --- a/mobile/public/assets/images/lights/lc_iris.svg +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/lc_irisw.svg b/mobile/public/assets/images/lights/lc_irisw.svg deleted file mode 100644 index cdf472b..0000000 --- a/mobile/public/assets/images/lights/lc_irisw.svg +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/lightstrip.svg b/mobile/public/assets/images/lights/lightstrip.svg deleted file mode 100644 index 1d55b8e..0000000 --- a/mobile/public/assets/images/lights/lightstrip.svg +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/lightstripw.svg b/mobile/public/assets/images/lights/lightstripw.svg deleted file mode 100644 index fb32dab..0000000 --- a/mobile/public/assets/images/lights/lightstripw.svg +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/outline/aura.svg b/mobile/public/assets/images/lights/outline/aura.svg new file mode 100644 index 0000000..194eeb5 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/aura.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/beyond_ceiling_pendant_table.svg b/mobile/public/assets/images/lights/outline/beyond_ceiling_pendant_table.svg new file mode 100644 index 0000000..0e59f05 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/beyond_ceiling_pendant_table.svg @@ -0,0 +1,17 @@ + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/bloom.svg b/mobile/public/assets/images/lights/outline/bloom.svg new file mode 100644 index 0000000..9b68bbe --- /dev/null +++ b/mobile/public/assets/images/lights/outline/bloom.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/br30.svg b/mobile/public/assets/images/lights/outline/br30.svg new file mode 100644 index 0000000..24fa52c --- /dev/null +++ b/mobile/public/assets/images/lights/outline/br30.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/br30_slim.svg b/mobile/public/assets/images/lights/outline/br30_slim.svg new file mode 100644 index 0000000..f11d2bb --- /dev/null +++ b/mobile/public/assets/images/lights/outline/br30_slim.svg @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/bridge_v1.svg b/mobile/public/assets/images/lights/outline/bridge_v1.svg new file mode 100644 index 0000000..28336bb --- /dev/null +++ b/mobile/public/assets/images/lights/outline/bridge_v1.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/bridge_v2.svg b/mobile/public/assets/images/lights/outline/bridge_v2.svg new file mode 100644 index 0000000..2ae2dbb --- /dev/null +++ b/mobile/public/assets/images/lights/outline/bridge_v2.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/ceiling_round.svg b/mobile/public/assets/images/lights/outline/ceiling_round.svg new file mode 100644 index 0000000..5fe0917 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/ceiling_round.svg @@ -0,0 +1,16 @@ + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/ceiling_square.svg b/mobile/public/assets/images/lights/outline/ceiling_square.svg new file mode 100644 index 0000000..0e4ed1a --- /dev/null +++ b/mobile/public/assets/images/lights/outline/ceiling_square.svg @@ -0,0 +1,18 @@ + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/entity.svg b/mobile/public/assets/images/lights/outline/entity.svg new file mode 100644 index 0000000..32f96d0 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/entity.svg @@ -0,0 +1,1515 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/floor.svg b/mobile/public/assets/images/lights/outline/floor.svg new file mode 100644 index 0000000..b6c6264 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/floor.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/go.svg b/mobile/public/assets/images/lights/outline/go.svg new file mode 100644 index 0000000..8a6da13 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/go.svg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/gu10.svg b/mobile/public/assets/images/lights/outline/gu10.svg new file mode 100644 index 0000000..6572d73 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/gu10.svg @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/gu10_perfectfit.svg b/mobile/public/assets/images/lights/outline/gu10_perfectfit.svg new file mode 100644 index 0000000..bbdef6b --- /dev/null +++ b/mobile/public/assets/images/lights/outline/gu10_perfectfit.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/hds.svg b/mobile/public/assets/images/lights/outline/hds.svg new file mode 100644 index 0000000..a299e1b --- /dev/null +++ b/mobile/public/assets/images/lights/outline/hds.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/impulse.svg b/mobile/public/assets/images/lights/outline/impulse.svg new file mode 100644 index 0000000..0067f41 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/impulse.svg @@ -0,0 +1,413 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/iris.svg b/mobile/public/assets/images/lights/outline/iris.svg new file mode 100644 index 0000000..cca3b83 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/iris.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/lightstrip.svg b/mobile/public/assets/images/lights/outline/lightstrip.svg new file mode 100644 index 0000000..91c2b70 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/lightstrip.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/motion_sensor.svg b/mobile/public/assets/images/lights/outline/motion_sensor.svg new file mode 100644 index 0000000..4a18813 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/motion_sensor.svg @@ -0,0 +1,9 @@ + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/par16.svg b/mobile/public/assets/images/lights/outline/par16.svg new file mode 100644 index 0000000..a2b7f75 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/par16.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/pendant_oval.svg b/mobile/public/assets/images/lights/outline/pendant_oval.svg new file mode 100644 index 0000000..ba4a4fa --- /dev/null +++ b/mobile/public/assets/images/lights/outline/pendant_oval.svg @@ -0,0 +1,12 @@ + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/pendant_round.svg b/mobile/public/assets/images/lights/outline/pendant_round.svg new file mode 100644 index 0000000..93afd31 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/pendant_round.svg @@ -0,0 +1,12 @@ + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/pendant_square.svg b/mobile/public/assets/images/lights/outline/pendant_square.svg new file mode 100644 index 0000000..4bcedfc --- /dev/null +++ b/mobile/public/assets/images/lights/outline/pendant_square.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/mobile/public/assets/images/lights/outline/phoenix_ceiling.svg b/mobile/public/assets/images/lights/outline/phoenix_ceiling.svg new file mode 100644 index 0000000..e0a5978 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/phoenix_ceiling.svg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/phoenix_ceiling_2.svg b/mobile/public/assets/images/lights/outline/phoenix_ceiling_2.svg new file mode 100644 index 0000000..0565771 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/phoenix_ceiling_2.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/phoenix_down.svg b/mobile/public/assets/images/lights/outline/phoenix_down.svg new file mode 100644 index 0000000..b5799b9 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/phoenix_down.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/mobile/public/assets/images/lights/outline/phoenix_pendant.svg b/mobile/public/assets/images/lights/outline/phoenix_pendant.svg new file mode 100644 index 0000000..489690e --- /dev/null +++ b/mobile/public/assets/images/lights/outline/phoenix_pendant.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/phoenix_table.svg b/mobile/public/assets/images/lights/outline/phoenix_table.svg new file mode 100644 index 0000000..b42efe0 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/phoenix_table.svg @@ -0,0 +1,15 @@ + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/phoenix_wall.svg b/mobile/public/assets/images/lights/outline/phoenix_wall.svg new file mode 100644 index 0000000..0241640 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/phoenix_wall.svg @@ -0,0 +1,14 @@ + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/recessed.svg b/mobile/public/assets/images/lights/outline/recessed.svg new file mode 100644 index 0000000..5bd5356 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/recessed.svg @@ -0,0 +1,13 @@ + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/storylight.svg b/mobile/public/assets/images/lights/outline/storylight.svg new file mode 100644 index 0000000..f29a2b6 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/storylight.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/table.svg b/mobile/public/assets/images/lights/outline/table.svg new file mode 100644 index 0000000..e05b7b0 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/table.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/tap.svg b/mobile/public/assets/images/lights/outline/tap.svg new file mode 100644 index 0000000..6cab707 --- /dev/null +++ b/mobile/public/assets/images/lights/outline/tap.svg @@ -0,0 +1,9 @@ + + + + + + + + diff --git a/mobile/public/assets/images/lights/outline/white_and_color_e27.svg b/mobile/public/assets/images/lights/outline/white_and_color_e27.svg new file mode 100644 index 0000000..950322e --- /dev/null +++ b/mobile/public/assets/images/lights/outline/white_and_color_e27.svg @@ -0,0 +1,10 @@ + + + + + diff --git a/mobile/public/assets/images/lights/outline/white_e27.svg b/mobile/public/assets/images/lights/outline/white_e27.svg new file mode 100644 index 0000000..4cca0dd --- /dev/null +++ b/mobile/public/assets/images/lights/outline/white_e27.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/mobile/public/assets/images/lights/storylight.svg b/mobile/public/assets/images/lights/storylight.svg deleted file mode 100644 index d04a5db..0000000 --- a/mobile/public/assets/images/lights/storylight.svg +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/lights/storylightw.svg b/mobile/public/assets/images/lights/storylightw.svg deleted file mode 100644 index 8bc66a5..0000000 --- a/mobile/public/assets/images/lights/storylightw.svg +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/mobile/public/assets/images/pressButtonBridge.png b/mobile/public/assets/images/pressButtonBridge.png deleted file mode 100644 index 5aa00411cad0984247a88fa9a0890c75265b29c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32156 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 { - this.set('bridgeIp', manualBridgeIp); + this.send('chooseBridge', manualBridgeIp); }); } } diff --git a/web/app/pods/components/bridge-finder/template.hbs b/web/app/pods/components/bridge-finder/template.hbs index e59f28e..913063a 100644 --- a/web/app/pods/components/bridge-finder/template.hbs +++ b/web/app/pods/components/bridge-finder/template.hbs @@ -1,6 +1,33 @@ {{#unless bridgeUsername}} {{#if bridgeIp}} - {{paper-progress-linear warn=true value=bridgeUserNamePingIntervalProgress}} + + + + + + + + + + {{paper-progress-linear warn=true value=bridgeUserNamePingIntervalProgress}} {{#if isAuthenticating}}

diff --git a/web/app/pods/components/light-group/component.js b/web/app/pods/components/light-group/component.js index 1121adb..115e84f 100644 --- a/web/app/pods/components/light-group/component.js +++ b/web/app/pods/components/light-group/component.js @@ -22,7 +22,7 @@ export default Component.extend({ activeLights = this.get('activeLights'), dimmerOn = this.get('dimmerOn'), lightsList = A(), - type, + src, activeClass; for (let key in lightsData) { @@ -30,55 +30,144 @@ export default Component.extend({ if (lightsData.hasOwnProperty(key) && lightsData[key].state.reachable) { switch (lightsData[key].modelid) { + case 'BSB001': + src = 'bridge_v1'; + break; + case 'BSB002': + src = 'bridge_v2'; + break; case 'LCT001': - type = 'a19'; + case 'LCT007': + case 'LCT010': + case 'LCT014': + case 'LTW010': + case 'LTW001': + case 'LTW004': + case 'LTW015': + case 'LWB004': + case 'LWB006': + src = 'white_and_color_e27'; + break; + case 'LWB010': + case 'LWB014': + src = 'white_e27'; break; case 'LCT002': - type = 'br30'; + src = 'br30'; + break; + case 'LCT011': + case 'LTW011': + src = 'br30_slim'; break; case 'LCT003': - type = 'gu10'; + src = 'gu10'; break; + case 'LTW013': + src = 'gu10_perfectfit'; + break; + case 'LST002': case 'LST001': - type = 'lightstrip'; - break; - case 'LLC010': - type = 'lc_iris'; - break; - case 'LLC011': - type = 'lc_bloom'; - break; - case 'LLC012': - type = 'lc_bloom'; + src = 'lightstrip'; break; case 'LLC006': - type = 'lc_iris'; + case 'LLC010': + src = 'iris'; break; + case 'LLC005': + case 'LLC011': + case 'LLC012': case 'LLC007': - type = 'lc_aura'; + src = 'bloom'; + break; + case 'LLC014': + src = 'aura'; break; case 'LLC013': - type = 'storylight'; - break; - case 'LWB004': - type = 'a19'; + src = 'storylight'; break; case 'LLC020': - type = 'huego'; + src = 'go'; + break; + case 'HBL001': + case 'HBL002': + case 'HBL003': + src = 'beyond_ceiling_pendant_table'; + break; + case 'HIL001': + case 'HIL002': + src = 'impulse'; + break; + case 'HEL001': + case 'HEL002': + src = 'entity'; + break; + case 'HML001': + case 'HML002': + case 'HML003': + case 'HML004': + case 'HML005': + src = 'phoenix_ceiling_pendant_table_wall'; + break; + case 'HML006': + src = 'phoenix_down'; + break; + case 'LTP003': + src = 'pendant_square'; + break; + case 'LTP002': + case 'LTP003': + src = 'pendant_round'; + break; + case 'LTP001': + src = 'pendant_oval'; + break; + case 'LDF002': + case 'LTF002': + case 'LTF001': + case 'LTC001': + case 'LTC002': + case 'LDF001': + src = 'ceiling_square'; + break; + case 'LTC003': + case 'LTD001': + case 'LTD001': + src = 'ceiling_round'; + break; + case 'LDD002': + src = 'floor'; + break; + case 'LDD001': + src = 'table'; + break; + case 'LDT001': + case 'MWM001': + src = 'recessed'; + break; + case 'SWT001': + src = 'tap'; + break; + case 'RWL021': + src = 'hds'; + break; + case 'SML001': + src = 'motion_sensor'; break; default: - type = 'a19'; + src = 'white_e27'; } if (dimmerOn) { - type += 'w'; + src = `assets/images/lights/filled/${src}.svg`; + } else { + src = `assets/images/lights/outline/${src}.svg`; } if (!activeLights.includes(key)) { activeClass = 'light-inactive'; } - lightsList.push({ type: type, name: lightsData[key].name, id: key, data: lightsData[key], activeClass: activeClass }); + lightsList.push({ src, name: lightsData[key].name, id: key, data: lightsData[key], activeClass }); } } diff --git a/web/app/pods/components/light-group/template.hbs b/web/app/pods/components/light-group/template.hbs index 3486231..0161669 100644 --- a/web/app/pods/components/light-group/template.hbs +++ b/web/app/pods/components/light-group/template.hbs @@ -1,7 +1,7 @@ {{#each lightsList as |light|}} {{#if lightsIconsOn}}

- + {{inline-svg light.src class="hue-light"}}
{{else}}
diff --git a/web/app/styles/dimmer.scss b/web/app/styles/dimmer.scss index b36f0d3..8cffff3 100644 --- a/web/app/styles/dimmer.scss +++ b/web/app/styles/dimmer.scss @@ -47,8 +47,15 @@ body.dimmerOn { } } } - svg { + .light-inactive::before { + display: none; + } + .hue-light { -webkit-filter: drop-shadow(0 0 5px #228DFF); + fill: $whitish; + path { + fill: $whitish; + } } .md-container { color: $whitish; diff --git a/web/app/styles/hue-controls.scss b/web/app/styles/hue-controls.scss index 340e0db..6ebe165 100644 --- a/web/app/styles/hue-controls.scss +++ b/web/app/styles/hue-controls.scss @@ -27,12 +27,6 @@ } } -// preload images -#hue-controls:after, md-progress-circular:after { - display: none; - content: url(images/colormap.png) url(images/missingArtwork.png) url(images/sc-white.png) url(images/huegasm.png) url(images/lights/a19.svg) url(images/lights/a19w.svg) url(images/lights/br30.svg) url(images/lights/br30w.svg) url(images/lights/gu10.svg) url(images/lights/gu10w.svg) url(images/lights/huego.svg) url(images/lights/huegow.svg) url(images/lights/lc_aura.svg) url(images/lights/lc_auraw.svg) url(images/lights/lc_bloom.svg) url(images/lights/lc_bloomw.svg) url(images/lights/lc_iris.svg) url(images/lights/lc_irisw.svg) url(images/lights/lightstrip.svg) url(images/lights/lightstripw.svg) url(images/lights/storylight.svg) url(images/lights/storylightw.svg); -} - #navigation { padding: 15px 0 0; text-align: center; diff --git a/web/app/styles/light-group.scss b/web/app/styles/light-group.scss index dc6ee4e..a7a1a90 100644 --- a/web/app/styles/light-group.scss +++ b/web/app/styles/light-group.scss @@ -11,6 +11,10 @@ } } +.hue-light { + width: 35px; +} + .toggleable-light { cursor: pointer; position: relative; @@ -21,6 +25,7 @@ height: 50px; align-items: center; justify-content: center; + padding: 3px; } .light-inactive { @@ -39,12 +44,12 @@ .light-active { border-color: rgba(green, 0.4); - img { + .hue-light { transition-duration: 0.3s; transition-property: transform; box-shadow: 0 0 1px rgba(0, 0, 0, 0); } - img:hover { + .hue-light:hover { transform: scale(1.2); } } diff --git a/web/package.json b/web/package.json index 1dda4b9..458dbe4 100644 --- a/web/package.json +++ b/web/package.json @@ -27,19 +27,20 @@ "ember-cli-inject-live-reload": "^1.3.1", "ember-cli-nouislider": "^0.13.0", "ember-cli-release": "0.2.8", - "ember-cli-shims": "^1.0.2", "ember-cli-sass": "^6.0.0", + "ember-cli-shims": "^1.0.2", "ember-cli-sri": "^2.1.0", "ember-cli-test-loader": "^1.1.0", "ember-cli-uglify": "^1.2.0", "ember-export-application-global": "^1.0.4", + "ember-inline-svg": "^0.1.7", "ember-load-initializers": "^0.6.3", "ember-modal-dialog": "^0.9.0", "ember-notify": "^5.0.4", - "ember-paper": "^1.0.0-alpha.14", + "ember-paper": "git+https://github.com/miguelcobain/ember-paper.git", "ember-resolver": "^2.0.3", - "ember-truth-helpers": "^1.2.0", "ember-source": "^2.11.0", + "ember-truth-helpers": "^1.2.0", "loader.js": "^4.0.7" } -} \ No newline at end of file +} diff --git a/web/public/assets/images/lights/a19.svg b/web/public/assets/images/lights/a19.svg deleted file mode 100644 index cf3eee3..0000000 --- a/web/public/assets/images/lights/a19.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/a19w.svg b/web/public/assets/images/lights/a19w.svg deleted file mode 100644 index b05e873..0000000 --- a/web/public/assets/images/lights/a19w.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/br30.svg b/web/public/assets/images/lights/br30.svg deleted file mode 100644 index 7d71208..0000000 --- a/web/public/assets/images/lights/br30.svg +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/br30w.svg b/web/public/assets/images/lights/br30w.svg deleted file mode 100644 index ba1585a..0000000 --- a/web/public/assets/images/lights/br30w.svg +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/filled/aura.svg b/web/public/assets/images/lights/filled/aura.svg new file mode 100644 index 0000000..c047da6 --- /dev/null +++ b/web/public/assets/images/lights/filled/aura.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + diff --git a/web/public/assets/images/lights/filled/beyond_ceiling_pendant_table.svg b/web/public/assets/images/lights/filled/beyond_ceiling_pendant_table.svg new file mode 100644 index 0000000..2588b6c --- /dev/null +++ b/web/public/assets/images/lights/filled/beyond_ceiling_pendant_table.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/web/public/assets/images/lights/filled/bloom.svg b/web/public/assets/images/lights/filled/bloom.svg new file mode 100644 index 0000000..9765cd8 --- /dev/null +++ b/web/public/assets/images/lights/filled/bloom.svg @@ -0,0 +1,12 @@ + + + + + + + diff --git a/web/public/assets/images/lights/filled/br30.svg b/web/public/assets/images/lights/filled/br30.svg new file mode 100644 index 0000000..e474676 --- /dev/null +++ b/web/public/assets/images/lights/filled/br30.svg @@ -0,0 +1,9 @@ + + + + + + + + diff --git a/web/public/assets/images/lights/filled/br30_slim.svg b/web/public/assets/images/lights/filled/br30_slim.svg new file mode 100644 index 0000000..56ec0a2 --- /dev/null +++ b/web/public/assets/images/lights/filled/br30_slim.svg @@ -0,0 +1,15 @@ + + + + + + + diff --git a/web/public/assets/images/lights/filled/bridge_v1.svg b/web/public/assets/images/lights/filled/bridge_v1.svg new file mode 100644 index 0000000..caa67bf --- /dev/null +++ b/web/public/assets/images/lights/filled/bridge_v1.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/filled/bridge_v2.svg b/web/public/assets/images/lights/filled/bridge_v2.svg new file mode 100644 index 0000000..f84f750 --- /dev/null +++ b/web/public/assets/images/lights/filled/bridge_v2.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/filled/ceiling_round.svg b/web/public/assets/images/lights/filled/ceiling_round.svg new file mode 100644 index 0000000..fa3f8e1 --- /dev/null +++ b/web/public/assets/images/lights/filled/ceiling_round.svg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/web/public/assets/images/lights/filled/ceiling_square.svg b/web/public/assets/images/lights/filled/ceiling_square.svg new file mode 100644 index 0000000..10b5080 --- /dev/null +++ b/web/public/assets/images/lights/filled/ceiling_square.svg @@ -0,0 +1,13 @@ + + + + + + + + diff --git a/web/public/assets/images/lights/filled/entity.svg b/web/public/assets/images/lights/filled/entity.svg new file mode 100644 index 0000000..8754d90 --- /dev/null +++ b/web/public/assets/images/lights/filled/entity.svg @@ -0,0 +1,11 @@ + + + + + + + + + + diff --git a/web/public/assets/images/lights/filled/floor.svg b/web/public/assets/images/lights/filled/floor.svg new file mode 100644 index 0000000..77404d2 --- /dev/null +++ b/web/public/assets/images/lights/filled/floor.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/web/public/assets/images/lights/filled/go.svg b/web/public/assets/images/lights/filled/go.svg new file mode 100644 index 0000000..e1b78ec --- /dev/null +++ b/web/public/assets/images/lights/filled/go.svg @@ -0,0 +1,10 @@ + + + + + + + diff --git a/web/public/assets/images/lights/filled/gu10.svg b/web/public/assets/images/lights/filled/gu10.svg new file mode 100644 index 0000000..3efa6dc --- /dev/null +++ b/web/public/assets/images/lights/filled/gu10.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + diff --git a/web/public/assets/images/lights/filled/gu10_perfectfit.svg b/web/public/assets/images/lights/filled/gu10_perfectfit.svg new file mode 100644 index 0000000..a40f2d4 --- /dev/null +++ b/web/public/assets/images/lights/filled/gu10_perfectfit.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/filled/hds.svg b/web/public/assets/images/lights/filled/hds.svg new file mode 100644 index 0000000..56c191a --- /dev/null +++ b/web/public/assets/images/lights/filled/hds.svg @@ -0,0 +1,8 @@ + + + + + diff --git a/web/public/assets/images/lights/filled/impulse.svg b/web/public/assets/images/lights/filled/impulse.svg new file mode 100644 index 0000000..636e36a --- /dev/null +++ b/web/public/assets/images/lights/filled/impulse.svg @@ -0,0 +1,11 @@ + + + + + + + + + + diff --git a/web/public/assets/images/lights/filled/iris.svg b/web/public/assets/images/lights/filled/iris.svg new file mode 100644 index 0000000..82d2b54 --- /dev/null +++ b/web/public/assets/images/lights/filled/iris.svg @@ -0,0 +1,14 @@ + + + + + + + diff --git a/web/public/assets/images/lights/filled/lightstrip.svg b/web/public/assets/images/lights/filled/lightstrip.svg new file mode 100644 index 0000000..146bac0 --- /dev/null +++ b/web/public/assets/images/lights/filled/lightstrip.svg @@ -0,0 +1,13 @@ + + + + + + + diff --git a/web/public/assets/images/lights/filled/motion_sensor.svg b/web/public/assets/images/lights/filled/motion_sensor.svg new file mode 100644 index 0000000..ca6ceca --- /dev/null +++ b/web/public/assets/images/lights/filled/motion_sensor.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/web/public/assets/images/lights/filled/pendant_oval.svg b/web/public/assets/images/lights/filled/pendant_oval.svg new file mode 100644 index 0000000..3e1dfdd --- /dev/null +++ b/web/public/assets/images/lights/filled/pendant_oval.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/web/public/assets/images/lights/filled/pendant_round.svg b/web/public/assets/images/lights/filled/pendant_round.svg new file mode 100644 index 0000000..c98f454 --- /dev/null +++ b/web/public/assets/images/lights/filled/pendant_round.svg @@ -0,0 +1,9 @@ + + + + + + + + diff --git a/web/public/assets/images/lights/filled/pendant_square.svg b/web/public/assets/images/lights/filled/pendant_square.svg new file mode 100644 index 0000000..96b65c1 --- /dev/null +++ b/web/public/assets/images/lights/filled/pendant_square.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/web/public/assets/images/lights/filled/phoenix_ceiling_pendant_table_wall.svg b/web/public/assets/images/lights/filled/phoenix_ceiling_pendant_table_wall.svg new file mode 100644 index 0000000..2a581d4 --- /dev/null +++ b/web/public/assets/images/lights/filled/phoenix_ceiling_pendant_table_wall.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/web/public/assets/images/lights/filled/phoenix_down.svg b/web/public/assets/images/lights/filled/phoenix_down.svg new file mode 100644 index 0000000..fe056be --- /dev/null +++ b/web/public/assets/images/lights/filled/phoenix_down.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/web/public/assets/images/lights/filled/recessed.svg b/web/public/assets/images/lights/filled/recessed.svg new file mode 100644 index 0000000..a39c14a --- /dev/null +++ b/web/public/assets/images/lights/filled/recessed.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/web/public/assets/images/lights/filled/storylight.svg b/web/public/assets/images/lights/filled/storylight.svg new file mode 100644 index 0000000..dcb1bb7 --- /dev/null +++ b/web/public/assets/images/lights/filled/storylight.svg @@ -0,0 +1,14 @@ + + + + + + + diff --git a/web/public/assets/images/lights/filled/table.svg b/web/public/assets/images/lights/filled/table.svg new file mode 100644 index 0000000..c2dedb5 --- /dev/null +++ b/web/public/assets/images/lights/filled/table.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/web/public/assets/images/lights/filled/tap.svg b/web/public/assets/images/lights/filled/tap.svg new file mode 100644 index 0000000..7987991 --- /dev/null +++ b/web/public/assets/images/lights/filled/tap.svg @@ -0,0 +1,10 @@ + + + + + diff --git a/web/public/assets/images/lights/filled/white_and_color_e27_b22.svg b/web/public/assets/images/lights/filled/white_and_color_e27_b22.svg new file mode 100644 index 0000000..c304a62 --- /dev/null +++ b/web/public/assets/images/lights/filled/white_and_color_e27_b22.svg @@ -0,0 +1,14 @@ + + + + + + + + + diff --git a/web/public/assets/images/lights/filled/white_e27_b22.svg b/web/public/assets/images/lights/filled/white_e27_b22.svg new file mode 100644 index 0000000..79981c9 --- /dev/null +++ b/web/public/assets/images/lights/filled/white_e27_b22.svg @@ -0,0 +1,10 @@ + + + + + + + diff --git a/web/public/assets/images/lights/gu10.svg b/web/public/assets/images/lights/gu10.svg deleted file mode 100644 index 014d2f5..0000000 --- a/web/public/assets/images/lights/gu10.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - diff --git a/web/public/assets/images/lights/gu10w.svg b/web/public/assets/images/lights/gu10w.svg deleted file mode 100644 index 1ea01cb..0000000 --- a/web/public/assets/images/lights/gu10w.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - diff --git a/web/public/assets/images/lights/huego.svg b/web/public/assets/images/lights/huego.svg deleted file mode 100644 index e912e5a..0000000 --- a/web/public/assets/images/lights/huego.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/huegow.svg b/web/public/assets/images/lights/huegow.svg deleted file mode 100644 index b3b0b88..0000000 --- a/web/public/assets/images/lights/huegow.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/lc_aura.svg b/web/public/assets/images/lights/lc_aura.svg deleted file mode 100644 index 9faf3b9..0000000 --- a/web/public/assets/images/lights/lc_aura.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/lc_auraw.svg b/web/public/assets/images/lights/lc_auraw.svg deleted file mode 100644 index c125947..0000000 --- a/web/public/assets/images/lights/lc_auraw.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/lc_bloom.svg b/web/public/assets/images/lights/lc_bloom.svg deleted file mode 100644 index a498b9a..0000000 --- a/web/public/assets/images/lights/lc_bloom.svg +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/lc_bloomw.svg b/web/public/assets/images/lights/lc_bloomw.svg deleted file mode 100644 index 3dce9f7..0000000 --- a/web/public/assets/images/lights/lc_bloomw.svg +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/lc_iris.svg b/web/public/assets/images/lights/lc_iris.svg deleted file mode 100644 index 876b3d2..0000000 --- a/web/public/assets/images/lights/lc_iris.svg +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/lc_irisw.svg b/web/public/assets/images/lights/lc_irisw.svg deleted file mode 100644 index cdf472b..0000000 --- a/web/public/assets/images/lights/lc_irisw.svg +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/lightstrip.svg b/web/public/assets/images/lights/lightstrip.svg deleted file mode 100644 index 1d55b8e..0000000 --- a/web/public/assets/images/lights/lightstrip.svg +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/lightstripw.svg b/web/public/assets/images/lights/lightstripw.svg deleted file mode 100644 index fb32dab..0000000 --- a/web/public/assets/images/lights/lightstripw.svg +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/outline/aura.svg b/web/public/assets/images/lights/outline/aura.svg new file mode 100644 index 0000000..194eeb5 --- /dev/null +++ b/web/public/assets/images/lights/outline/aura.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/beyond_ceiling_pendant_table.svg b/web/public/assets/images/lights/outline/beyond_ceiling_pendant_table.svg new file mode 100644 index 0000000..0e59f05 --- /dev/null +++ b/web/public/assets/images/lights/outline/beyond_ceiling_pendant_table.svg @@ -0,0 +1,17 @@ + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/bloom.svg b/web/public/assets/images/lights/outline/bloom.svg new file mode 100644 index 0000000..9b68bbe --- /dev/null +++ b/web/public/assets/images/lights/outline/bloom.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/br30.svg b/web/public/assets/images/lights/outline/br30.svg new file mode 100644 index 0000000..24fa52c --- /dev/null +++ b/web/public/assets/images/lights/outline/br30.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/br30_slim.svg b/web/public/assets/images/lights/outline/br30_slim.svg new file mode 100644 index 0000000..f11d2bb --- /dev/null +++ b/web/public/assets/images/lights/outline/br30_slim.svg @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/bridge_v1.svg b/web/public/assets/images/lights/outline/bridge_v1.svg new file mode 100644 index 0000000..28336bb --- /dev/null +++ b/web/public/assets/images/lights/outline/bridge_v1.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/bridge_v2.svg b/web/public/assets/images/lights/outline/bridge_v2.svg new file mode 100644 index 0000000..2ae2dbb --- /dev/null +++ b/web/public/assets/images/lights/outline/bridge_v2.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/ceiling_round.svg b/web/public/assets/images/lights/outline/ceiling_round.svg new file mode 100644 index 0000000..5fe0917 --- /dev/null +++ b/web/public/assets/images/lights/outline/ceiling_round.svg @@ -0,0 +1,16 @@ + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/ceiling_square.svg b/web/public/assets/images/lights/outline/ceiling_square.svg new file mode 100644 index 0000000..0e4ed1a --- /dev/null +++ b/web/public/assets/images/lights/outline/ceiling_square.svg @@ -0,0 +1,18 @@ + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/entity.svg b/web/public/assets/images/lights/outline/entity.svg new file mode 100644 index 0000000..32f96d0 --- /dev/null +++ b/web/public/assets/images/lights/outline/entity.svg @@ -0,0 +1,1515 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/floor.svg b/web/public/assets/images/lights/outline/floor.svg new file mode 100644 index 0000000..b6c6264 --- /dev/null +++ b/web/public/assets/images/lights/outline/floor.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/go.svg b/web/public/assets/images/lights/outline/go.svg new file mode 100644 index 0000000..8a6da13 --- /dev/null +++ b/web/public/assets/images/lights/outline/go.svg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/web/public/assets/images/lights/outline/gu10.svg b/web/public/assets/images/lights/outline/gu10.svg new file mode 100644 index 0000000..6572d73 --- /dev/null +++ b/web/public/assets/images/lights/outline/gu10.svg @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/gu10_perfectfit.svg b/web/public/assets/images/lights/outline/gu10_perfectfit.svg new file mode 100644 index 0000000..bbdef6b --- /dev/null +++ b/web/public/assets/images/lights/outline/gu10_perfectfit.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/hds.svg b/web/public/assets/images/lights/outline/hds.svg new file mode 100644 index 0000000..a299e1b --- /dev/null +++ b/web/public/assets/images/lights/outline/hds.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/impulse.svg b/web/public/assets/images/lights/outline/impulse.svg new file mode 100644 index 0000000..0067f41 --- /dev/null +++ b/web/public/assets/images/lights/outline/impulse.svg @@ -0,0 +1,413 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/iris.svg b/web/public/assets/images/lights/outline/iris.svg new file mode 100644 index 0000000..cca3b83 --- /dev/null +++ b/web/public/assets/images/lights/outline/iris.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/lightstrip.svg b/web/public/assets/images/lights/outline/lightstrip.svg new file mode 100644 index 0000000..91c2b70 --- /dev/null +++ b/web/public/assets/images/lights/outline/lightstrip.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/motion_sensor.svg b/web/public/assets/images/lights/outline/motion_sensor.svg new file mode 100644 index 0000000..4a18813 --- /dev/null +++ b/web/public/assets/images/lights/outline/motion_sensor.svg @@ -0,0 +1,9 @@ + + + + + + + diff --git a/web/public/assets/images/lights/outline/par16.svg b/web/public/assets/images/lights/outline/par16.svg new file mode 100644 index 0000000..a2b7f75 --- /dev/null +++ b/web/public/assets/images/lights/outline/par16.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/pendant_oval.svg b/web/public/assets/images/lights/outline/pendant_oval.svg new file mode 100644 index 0000000..ba4a4fa --- /dev/null +++ b/web/public/assets/images/lights/outline/pendant_oval.svg @@ -0,0 +1,12 @@ + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/pendant_round.svg b/web/public/assets/images/lights/outline/pendant_round.svg new file mode 100644 index 0000000..93afd31 --- /dev/null +++ b/web/public/assets/images/lights/outline/pendant_round.svg @@ -0,0 +1,12 @@ + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/pendant_square.svg b/web/public/assets/images/lights/outline/pendant_square.svg new file mode 100644 index 0000000..4bcedfc --- /dev/null +++ b/web/public/assets/images/lights/outline/pendant_square.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/web/public/assets/images/lights/outline/phoenix_ceiling.svg b/web/public/assets/images/lights/outline/phoenix_ceiling.svg new file mode 100644 index 0000000..e0a5978 --- /dev/null +++ b/web/public/assets/images/lights/outline/phoenix_ceiling.svg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/web/public/assets/images/lights/outline/phoenix_ceiling_2.svg b/web/public/assets/images/lights/outline/phoenix_ceiling_2.svg new file mode 100644 index 0000000..0565771 --- /dev/null +++ b/web/public/assets/images/lights/outline/phoenix_ceiling_2.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/phoenix_down.svg b/web/public/assets/images/lights/outline/phoenix_down.svg new file mode 100644 index 0000000..b5799b9 --- /dev/null +++ b/web/public/assets/images/lights/outline/phoenix_down.svg @@ -0,0 +1,7 @@ + + + + + + diff --git a/web/public/assets/images/lights/outline/phoenix_pendant.svg b/web/public/assets/images/lights/outline/phoenix_pendant.svg new file mode 100644 index 0000000..489690e --- /dev/null +++ b/web/public/assets/images/lights/outline/phoenix_pendant.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/phoenix_table.svg b/web/public/assets/images/lights/outline/phoenix_table.svg new file mode 100644 index 0000000..b42efe0 --- /dev/null +++ b/web/public/assets/images/lights/outline/phoenix_table.svg @@ -0,0 +1,15 @@ + + + + + + + + diff --git a/web/public/assets/images/lights/outline/phoenix_wall.svg b/web/public/assets/images/lights/outline/phoenix_wall.svg new file mode 100644 index 0000000..0241640 --- /dev/null +++ b/web/public/assets/images/lights/outline/phoenix_wall.svg @@ -0,0 +1,14 @@ + + + + + + + + diff --git a/web/public/assets/images/lights/outline/recessed.svg b/web/public/assets/images/lights/outline/recessed.svg new file mode 100644 index 0000000..5bd5356 --- /dev/null +++ b/web/public/assets/images/lights/outline/recessed.svg @@ -0,0 +1,13 @@ + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/storylight.svg b/web/public/assets/images/lights/outline/storylight.svg new file mode 100644 index 0000000..f29a2b6 --- /dev/null +++ b/web/public/assets/images/lights/outline/storylight.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/table.svg b/web/public/assets/images/lights/outline/table.svg new file mode 100644 index 0000000..e05b7b0 --- /dev/null +++ b/web/public/assets/images/lights/outline/table.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/web/public/assets/images/lights/outline/tap.svg b/web/public/assets/images/lights/outline/tap.svg new file mode 100644 index 0000000..6cab707 --- /dev/null +++ b/web/public/assets/images/lights/outline/tap.svg @@ -0,0 +1,9 @@ + + + + + + + + diff --git a/web/public/assets/images/lights/outline/white_and_color_e27.svg b/web/public/assets/images/lights/outline/white_and_color_e27.svg new file mode 100644 index 0000000..950322e --- /dev/null +++ b/web/public/assets/images/lights/outline/white_and_color_e27.svg @@ -0,0 +1,10 @@ + + + + + diff --git a/web/public/assets/images/lights/outline/white_e27.svg b/web/public/assets/images/lights/outline/white_e27.svg new file mode 100644 index 0000000..4cca0dd --- /dev/null +++ b/web/public/assets/images/lights/outline/white_e27.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/web/public/assets/images/lights/storylight.svg b/web/public/assets/images/lights/storylight.svg deleted file mode 100644 index d04a5db..0000000 --- a/web/public/assets/images/lights/storylight.svg +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/lights/storylightw.svg b/web/public/assets/images/lights/storylightw.svg deleted file mode 100644 index 8bc66a5..0000000 --- a/web/public/assets/images/lights/storylightw.svg +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/web/public/assets/images/pressButtonBridge.png b/web/public/assets/images/pressButtonBridge.png deleted file mode 100644 index 5aa00411cad0984247a88fa9a0890c75265b29c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32156 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