From 05aa94d1080a6b5413b40e382729f0bc58505521 Mon Sep 17 00:00:00 2001 From: jsetton Date: Mon, 2 Jan 2023 02:27:11 -0500 Subject: [PATCH] Limit alexa parameter state description options Signed-off-by: jsetton --- .../assets/definitions/metadata/alexa/constants.js | 2 ++ .../assets/definitions/metadata/alexa/parameters.js | 12 +++++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/bundles/org.openhab.ui/web/src/assets/definitions/metadata/alexa/constants.js b/bundles/org.openhab.ui/web/src/assets/definitions/metadata/alexa/constants.js index d2972323a8..aa8f8d3c6b 100644 --- a/bundles/org.openhab.ui/web/src/assets/definitions/metadata/alexa/constants.js +++ b/bundles/org.openhab.ui/web/src/assets/definitions/metadata/alexa/constants.js @@ -24,6 +24,8 @@ export const OPEN_STATES = ['CLOSED', 'OPEN'] export const PLAYBACK_OPERATIONS = ['Play', 'Pause', 'Next', 'Previous', 'FastForward', 'Rewind'] +export const STATE_DESCRIPTION_OPTIONS_LIMIT = 150 + export const TEMPERATURE_SCALES = ['CELSIUS', 'FAHRENHEIT'] export const THERMOSTAT_MODES = ['OFF', 'HEAT', 'COOL', 'ECO', 'AUTO'] diff --git a/bundles/org.openhab.ui/web/src/assets/definitions/metadata/alexa/parameters.js b/bundles/org.openhab.ui/web/src/assets/definitions/metadata/alexa/parameters.js index 716a4b3978..cfbfe10b02 100644 --- a/bundles/org.openhab.ui/web/src/assets/definitions/metadata/alexa/parameters.js +++ b/bundles/org.openhab.ui/web/src/assets/definitions/metadata/alexa/parameters.js @@ -3,6 +3,7 @@ import { EQUALIZER_MODES, LANGUAGES, PLAYBACK_OPERATIONS, + STATE_DESCRIPTION_OPTIONS_LIMIT, TEMPERATURE_SCALES, THERMOSTAT_MODES, UNITS_OF_MEASURE @@ -232,7 +233,8 @@ export default { stateDescription.options && stateDescription.options .filter((option) => !isNaN(option.value)) - .map((option) => `${option.value}=${option.label}`), + .map((option) => `${option.value}=${option.label}`) + .slice(0, STATE_DESCRIPTION_OPTIONS_LIMIT), placeholder: placeholder.replace(/,/g, '\n'), multiple: true }), @@ -356,7 +358,9 @@ export default { default: stateDescription && stateDescription.options && - stateDescription.options.map((option) => `${option.value}=${option.label}`), + stateDescription.options + .map((option) => `${option.value}=${option.label}`) + .slice(0, STATE_DESCRIPTION_OPTIONS_LIMIT), placeholder: placeholder.replace(/,/g, '\n'), multiple: true, required: !stateDescription || !stateDescription.options || !stateDescription.options.length @@ -370,7 +374,9 @@ export default { default: stateDescription && stateDescription.options && - stateDescription.options.map((option) => `${option.value}=${option.label}`), + stateDescription.options + .map((option) => `${option.value}=${option.label}`) + .slice(0, STATE_DESCRIPTION_OPTIONS_LIMIT), placeholder: 'Normal=Normal:Cottons\nWhites=Whites', multiple: true, required: !stateDescription || !stateDescription.options || !stateDescription.options.length