From 532a6e0dba73db8f3f8ea15296a2fcf3e93ae434 Mon Sep 17 00:00:00 2001 From: plasma16 Date: Thu, 16 Jul 2020 15:46:30 +0800 Subject: [PATCH 01/18] Update samsungtv.markdown (#14012) Added QA55Q7FAM to list of tested & working --- source/_integrations/samsungtv.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/source/_integrations/samsungtv.markdown b/source/_integrations/samsungtv.markdown index 23d11d9a8f9..6d886253872 100644 --- a/source/_integrations/samsungtv.markdown +++ b/source/_integrations/samsungtv.markdown @@ -130,6 +130,7 @@ For example: for model `UN55NU7100`, the `UN55` would mean it's an LED, North Am - RU7172 - RU7475 - Q90RATXZT +- QA55Q7FAM #### Models tested but not yet working From 6a9ed4f34267b4afb4f34b1e7a02672a1f3451fb Mon Sep 17 00:00:00 2001 From: Tomasz Date: Thu, 16 Jul 2020 11:17:32 +0200 Subject: [PATCH 02/18] Uptime Robot offers a read-only API Key (#14013) Uptime Robot offers a read-only API Key. This is much safer to use. Integration works fine with both keys. --- source/_integrations/uptimerobot.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_integrations/uptimerobot.markdown b/source/_integrations/uptimerobot.markdown index 63efc7bb666..2b1e8313f9d 100644 --- a/source/_integrations/uptimerobot.markdown +++ b/source/_integrations/uptimerobot.markdown @@ -32,4 +32,4 @@ api_key: All the data will be fetched from [Uptime Robot](https://uptimerobot.com). -To get your API key, go to [My Settings](https://uptimerobot.com/dashboard#mySettings) on the Uptime Robot website, at the bottom you will find your "Main API Key". +To get your API key, go to [My Settings](https://uptimerobot.com/dashboard#mySettings) on the Uptime Robot website, at the bottom you will find your "Read-Only API Key". From 671dcbdf406197cd35eb75fb09097522c5970634 Mon Sep 17 00:00:00 2001 From: Zack Arnett Date: Thu, 16 Jul 2020 15:52:30 -0500 Subject: [PATCH 03/18] Configuration Variable Redesign (#14008) Co-authored-by: Franck Nijhof --- plugins/configuration.rb | 58 +++++++++++++++--------- sass/custom/_paulus.scss | 95 +++++++++++++++++++++++++++------------- 2 files changed, 102 insertions(+), 51 deletions(-) diff --git a/plugins/configuration.rb b/plugins/configuration.rb index 5a5b94b7bfa..cfaccceef80 100644 --- a/plugins/configuration.rb +++ b/plugins/configuration.rb @@ -12,6 +12,8 @@ module Jekyll 'device_class', 'icon', 'map', 'list', 'date', 'datetime' ] + MIN_DEFAULT_LENGTH = 30 + def initialize(tag_name, text, tokens) super @component, @platform = text.strip.split('.', 2) @@ -55,13 +57,11 @@ module Jekyll def render_config_vars(vars:, component:, platform:, converter:, classes: nil, parent_type: nil) result = Array.new - result << "
" + result << "
" result << vars.map do |key, attr| markup = Array.new - markup << "
#{key}
" - markup << "
" - markup << "

" + markup << "

#{key}" if attr.key? 'type' @@ -78,14 +78,23 @@ module Jekyll TYPES.include? attr['type'] end - markup << "(" - markup << "#{type_link(attr['type'], component: component)})" + markup << "#{type_link(attr['type'], component: component)}" else # Type is missing, which is required (unless we are in a list or template) raise ArgumentError, "Configuration key '#{key}' is missing a type definition" \ unless ['list', 'template'].include? parent_type end + defaultValue = "" + isDefault = false + if attr.key? 'default' and not attr['default'].to_s.empty? + isDefault = true + defaultValue = converter.convert(attr['default'].to_s) + elsif attr['type'].to_s.include? 'boolean' + # If the type is a boolean, a default key is required + raise ArgumentError, "Configuration key '#{key}' is a boolean type and"\ + " therefore, requires a default." + end if attr.key? 'required' # Check if required is a valid value @@ -93,41 +102,48 @@ module Jekyll "true, false, inclusive or exclusive."\ unless [true, false, 'inclusive', 'exclusive'].include? attr['required'] - markup << "(#{required_value(attr['required'])})" + isTrue = attr['required'].to_s == 'true' + startSymbol = isTrue ? '' : '(' + endSymbol = isTrue ? '' : ')' + showDefault = isDefault && (defaultValue.length <= MIN_DEFAULT_LENGTH) + shortDefaultValue = "" + if showDefault + shortDefaultValue = defaultValue + shortDefaultValue.slice!("

") + shortDefaultValue.slice!("

") + shortDefaultValue = shortDefaultValue.strip + shortDefaultValue = ", default: " + shortDefaultValue + end + + markup << "#{startSymbol}#{required_value(attr['required'])}#{shortDefaultValue}#{endSymbol}" end + markup << "
" + if attr.key? 'description' - markup << "#{converter.convert(attr['description'].to_s)}" + markup << "#{converter.convert(attr['description'].to_s)}" else # Description is missing raise ArgumentError, "Configuration key '#{key}' is missing a description." end - markup << "

" - if attr.key? 'default' and not attr['default'].to_s.empty? - markup << "

\nDefault value: #{converter.convert(attr['default'].to_s)}

" - elsif attr['type'].to_s.include? 'boolean' - # Is the type is a boolean, a default key is required - raise ArgumentError, "Configuration key '#{key}' is a boolean type and"\ - " therefore, requires a default." + if isDefault && defaultValue.length > MIN_DEFAULT_LENGTH + markup << "
\nDefault: #{defaultValue}
" end - - markup << "
" + markup << "
" # Check for nested configuration variables if attr.key? 'keys' - markup << "
" markup << render_config_vars( vars: attr['keys'], component: component, platform: platform, converter: converter, classes: 'nested', parent_type: attr['type']) - markup << "
" end - markup + markup << "" end - result << "
" + result << "" result.join end diff --git a/sass/custom/_paulus.scss b/sass/custom/_paulus.scss index a9fd38015af..f9d6e455b5c 100644 --- a/sass/custom/_paulus.scss +++ b/sass/custom/_paulus.scss @@ -491,47 +491,82 @@ twitter-widget { // Configuration variables div.config-vars { - // Future re-design - // h3 { - // border: 0; - // border-top: 1px solid $primary-color; - // padding-top: 1.4rem; - // } + padding-bottom: 16px; - dl { - margin-bottom: 1.5em; + .config-vars-item { + border-bottom: 1px solid #d9dbde; + padding-top: 16px; + padding-bottom: 16px; + } - &.nested { - border-left: 1px dotted $primary-color; - padding-left: 6px; + .nested .config-vars-item:last-child { + border: none + } + + .config-vars-label { + padding-bottom: 4px; + position: relative; + + > span { + padding-right: 4px; } - dt { - font-weight: bold; + &:hover a.title-link::before { + position: absolute; + top: 5px; + left: -25px; + padding-right: 40px; + font-family: "FontAwesome"; + font-size: 15px; + color: #999; + content: ""; } + } - dd { - margin: 0 0 0.5em 1em; + .config-vars-label-name { + font-weight: bold; + font-size: 16px; + color: #222222bd; + } - p.desc { - margin: 0; + .config-vars-type { + color :#8792a2; + font-size: 13px; + } - span.type, - span.required { - font-style: italic; + .config-vars-required { + color :#8792a2; + font-size: 13px; + text-transform: lowercase; - &::after { - content: " " - } - } - } - - p.default { - font-style: italic; - margin: 0; - } + .true { + color: #e56f4a; + text-transform: uppercase; + font-size: 11px; } } + + .config-vars-description-and-children { + font-size: 14px; + color: #4f566b; + } + + .config-vars-description p { + margin: 0; + } + + .config-vars-default { + padding-top: 8px; + + p { + margin: 0; + display: inline; + } + } + + .nested { + margin-left: 48px; + } } code { From 46ea5c75ac40572fd0a57950222616f29143935d Mon Sep 17 00:00:00 2001 From: Celedhrim Date: Fri, 17 Jul 2020 00:33:47 +0200 Subject: [PATCH 04/18] Add Denon AVR-X1600H (#14015) --- source/_integrations/denonavr.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/source/_integrations/denonavr.markdown b/source/_integrations/denonavr.markdown index 4b0ef98448f..4bc0ab8dc1c 100644 --- a/source/_integrations/denonavr.markdown +++ b/source/_integrations/denonavr.markdown @@ -19,6 +19,7 @@ Known supported devices: - Denon AVR-X1200W - Denon AVR-X1300W - Denon AVR-X1500H +- Denon AVR-X1600H - Denon AVR-X2000 - Denon AVR-X2100W - Denon AVR-X2200W From c9a0539d43f8de632643c021bf01e10617190158 Mon Sep 17 00:00:00 2001 From: Jayden Litolff <42988261+JayBigGuy10@users.noreply.github.com> Date: Fri, 17 Jul 2020 22:24:04 +1200 Subject: [PATCH 05/18] Add a Misssing 'A' (#14021) alex to alexa --- source/_integrations/alexa.smart_home.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_integrations/alexa.smart_home.markdown b/source/_integrations/alexa.smart_home.markdown index dac9e8ca1b1..43351387f6b 100644 --- a/source/_integrations/alexa.smart_home.markdown +++ b/source/_integrations/alexa.smart_home.markdown @@ -63,7 +63,7 @@ Steps to Integrate an Amazon Alexa Smart Home Skill with Home Assistant:

- In next screen, make sure *v3* is selected in `Payload version`. -- Now, you have created a skeleton of Smart Home skill. Next step we will do some "real" developer work. You can keep Alex Developer Console opened, we need change the skill configuration later. +- Now, you have created a skeleton of Smart Home skill. Next step we will do some "real" developer work. You can keep Alexa Developer Console opened, we need change the skill configuration later. ## Create an AWS Lambda Function From 8d7e11cd67a47b51f5d7b0eac852bdfa8b85393b Mon Sep 17 00:00:00 2001 From: Troon Date: Fri, 17 Jul 2020 13:48:33 +0100 Subject: [PATCH 06/18] Update sensor.command_line.markdown (#14023) Fixed incorrect quoting in template example: nested single quotes. --- source/_integrations/sensor.command_line.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_integrations/sensor.command_line.markdown b/source/_integrations/sensor.command_line.markdown index b6289a991b8..8cd7baadd21 100644 --- a/source/_integrations/sensor.command_line.markdown +++ b/source/_integrations/sensor.command_line.markdown @@ -183,7 +183,7 @@ sensor: sensor: - platform: command_line name: wind direction - command: 'sh /home/pi/.homeassistant/scripts/wind_direction.sh {{ states('sensor.wind_direction') }}' + command: "sh /home/pi/.homeassistant/scripts/wind_direction.sh {{ states('sensor.wind_direction') }}" unit_of_measurement: "Direction" ``` From 2c024d94d1aa32f540b7b2072c8d0ac5208757ac Mon Sep 17 00:00:00 2001 From: mvnetbiz Date: Fri, 17 Jul 2020 05:48:58 -0700 Subject: [PATCH 07/18] Fix misspelled theme name in footer. (#14019) --- source/_includes/site/footer.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_includes/site/footer.html b/source/_includes/site/footer.html index cb84f4726e7..50f9d891890 100644 --- a/source/_includes/site/footer.html +++ b/source/_includes/site/footer.html @@ -27,7 +27,7 @@