From 236a0b9cd5e232a2db03a4e54da622248a0dc102 Mon Sep 17 00:00:00 2001 From: Oleg Dizus Date: Wed, 22 Jun 2016 11:43:12 +0300 Subject: [PATCH 1/2] Add array of styles feature --- src/parseStyleName.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/parseStyleName.js b/src/parseStyleName.js index 39c328a..33ced59 100644 --- a/src/parseStyleName.js +++ b/src/parseStyleName.js @@ -2,13 +2,16 @@ import _ from 'lodash'; const styleNameIndex = {}; -export default (styleNamePropertyValue: string, allowMultiple: boolean): Array => { +export default (styleNamePropertyValue: (string|array), allowMultiple: boolean): Array => { let styleNames; + let isArray = Array.isArray(styleNamePropertyValue) - if (styleNameIndex[styleNamePropertyValue]) { + if (!isArray && styleNameIndex[styleNamePropertyValue]) { styleNames = styleNameIndex[styleNamePropertyValue]; } else { - styleNames = _.trim(styleNamePropertyValue).split(' '); + styleNames = isArray + ? styleNamePropertyValue.filter(styleNameItem => typeof styleNameItem === 'string') + : _.trim(styleNamePropertyValue).split(' '); styleNames = _.filter(styleNames); styleNameIndex[styleNamePropertyValue] = styleNames; From 27399ea01819814b7bc46d70e7c853d8404a11ad Mon Sep 17 00:00:00 2001 From: Oleg Dizus Date: Wed, 22 Jun 2016 11:52:33 +0300 Subject: [PATCH 2/2] Change isArray and filter to lodash functions --- src/parseStyleName.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/parseStyleName.js b/src/parseStyleName.js index 33ced59..a0b4c7b 100644 --- a/src/parseStyleName.js +++ b/src/parseStyleName.js @@ -4,13 +4,13 @@ const styleNameIndex = {}; export default (styleNamePropertyValue: (string|array), allowMultiple: boolean): Array => { let styleNames; - let isArray = Array.isArray(styleNamePropertyValue) + let isArray = _.isArray(styleNamePropertyValue) if (!isArray && styleNameIndex[styleNamePropertyValue]) { styleNames = styleNameIndex[styleNamePropertyValue]; } else { styleNames = isArray - ? styleNamePropertyValue.filter(styleNameItem => typeof styleNameItem === 'string') + ? _.filter(styleNamePropertyValue, styleNameItem => typeof styleNameItem === 'string') : _.trim(styleNamePropertyValue).split(' '); styleNames = _.filter(styleNames);