From 185d10d55da4caf69cf46f282a2971757be232fe Mon Sep 17 00:00:00 2001 From: khtiana Date: Fri, 22 Oct 2021 15:03:14 +0800 Subject: [PATCH 1/8] support * selector --- deps/weex-styler/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deps/weex-styler/index.js b/deps/weex-styler/index.js index 080b3b9..b51b138 100644 --- a/deps/weex-styler/index.js +++ b/deps/weex-styler/index.js @@ -254,7 +254,7 @@ function parse(code, done, resourcePath) { } else { rule.selectors.forEach(function (selector) { const flag = card ? selector.match(CARD_SELECTOR) : - selector.match(SELECTOR_MATCHER) || selector.match(DESCENDANT_SELECTOR_MATCHER) + selector.match(SELECTOR_MATCHER) || selector.match(DESCENDANT_SELECTOR_MATCHER)||t==="*" if (flag) { var className = selector -- Gitee From df8257ed5f6e6d3c5e82ff3e7e3f7334ec662025 Mon Sep 17 00:00:00 2001 From: khtiana Date: Fri, 22 Oct 2021 15:42:08 +0800 Subject: [PATCH 2/8] support hine-height normal --- deps/weex-styler/lib/validator.js | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/deps/weex-styler/lib/validator.js b/deps/weex-styler/lib/validator.js index 52782e3..625b928 100644 --- a/deps/weex-styler/lib/validator.js +++ b/deps/weex-styler/lib/validator.js @@ -207,6 +207,7 @@ var SUPPORT_CSS_GRID_UNIT = ['px', '%', 'fr', 'vp', 'fp'] var SUPPORT_CSS_TEXT_INDENT_UNIT = ['px', 'cm', '%', 'em', 'vp', 'fp'] var SUPPORT_CSS_ANGLE_UNIT = ["deg", "rad", "grad", "turn"] var logTypes = ["NOTE", "WARNING", "ERROR"] +var NORMAL_REGEXP = "normal" var ANYTHING_VALIDATOR = function ANYTHING_VALIDATOR(v) { v = (v || '').toString().trim() @@ -232,6 +233,29 @@ var PERCENTAGE_LENGTH_VALIDATOR = function PERCENTAGE_LENGTH_VALIDATOR(v) { } } +/** + * the values below is valid + * - number + * - number + 'px'|'%'|'vp'| 'fp' + * + * @param {string} v + * @return {function} a function to return + * - value: number|null + * - reason(k, v, result) + */ +var LINE_HEIGHT_VALIDATOR = function LINE_HEIGHT_VALIDATOR(v) { + v = (v || '').toString().trim() + if (v.match(NORMAL_REGEXP)) { + return { value: v } + } + if (v.match(ID_REGEXP)) { + return { value: v } + } else { + return LENGTH(v, SUPPORT_CSS_PERCENTAGE_UNIT) + } +} + + /** * the values below is valid * - number @@ -2238,7 +2262,7 @@ var RICH_PROP_NAME_GROUPS = { textAlign: genEnumValidator(['start', 'end', 'left', 'center', 'right']), textOverflow: genEnumValidator(['clip', 'ellipsis']), textIndent: TEXT_INDENT_VALIDATOR, - lineHeight: LENGTH_VALIDATOR, + lineHeight: LINE_HEIGHT_VALIDATOR, letterSpacing: LENGTH_VALIDATOR, minLines: NUMBER_VALIDATOR, maxLines: ANYTHING_VALIDATOR, @@ -2818,7 +2842,7 @@ var CARD_PROP_NAME_GROUPS = { textAlign: genEnumValidator(['start', 'end', 'left', 'center', 'right']), textOverflow: genEnumValidator(['clip', 'ellipsis']), textIndent: TEXT_INDENT_VALIDATOR, - lineHeight: LENGTH_VALIDATOR, + lineHeight: PERCENTAGE_LENGTH_VALIDATOR, maxLines: ANYTHING_VALIDATOR, minFontSize: LENGTH_VALIDATOR, maxFontSize: LENGTH_VALIDATOR, -- Gitee From ed88b9ffef3727b6b206e09301adeff575c1a342 Mon Sep 17 00:00:00 2001 From: khtiana Date: Fri, 22 Oct 2021 16:40:38 +0800 Subject: [PATCH 3/8] support line height normal --- deps/weex-styler/lib/validator.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deps/weex-styler/lib/validator.js b/deps/weex-styler/lib/validator.js index 625b928..e711e62 100644 --- a/deps/weex-styler/lib/validator.js +++ b/deps/weex-styler/lib/validator.js @@ -2842,7 +2842,7 @@ var CARD_PROP_NAME_GROUPS = { textAlign: genEnumValidator(['start', 'end', 'left', 'center', 'right']), textOverflow: genEnumValidator(['clip', 'ellipsis']), textIndent: TEXT_INDENT_VALIDATOR, - lineHeight: PERCENTAGE_LENGTH_VALIDATOR, + lineHeight: LINE_HEIGHT_VALIDATOR, maxLines: ANYTHING_VALIDATOR, minFontSize: LENGTH_VALIDATOR, maxFontSize: LENGTH_VALIDATOR, -- Gitee From dc35706f1679afaeb3595ee895f9ef6379ec6806 Mon Sep 17 00:00:00 2001 From: khtiana Date: Wed, 27 Oct 2021 17:55:52 +0800 Subject: [PATCH 4/8] support text validator --- deps/weex-styler/index.js | 3 ++- deps/weex-styler/lib/validator.js | 12 +++++++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/deps/weex-styler/index.js b/deps/weex-styler/index.js index b51b138..36ddef5 100644 --- a/deps/weex-styler/index.js +++ b/deps/weex-styler/index.js @@ -12,6 +12,7 @@ var IMPORT_MATCHER = /(['"]([^()]+?)['"])|(['"]([^()]+?)['"]\s+(only|not)?\s?(sc var LENGTH_REGEXP = /^[-+]?\d*\.?\d+(\S*)$/ const CARD_SELECTOR = /^[\.#][A-Za-z0-9_\-]+$/ const card = process.env.DEVICE_LEVEL === 'card' +var ALL_SELECTOR_MATCHER = "*" /** * expand margin、padding、border、borderWidth、borderColor、borderStyle properties、animation @@ -254,7 +255,7 @@ function parse(code, done, resourcePath) { } else { rule.selectors.forEach(function (selector) { const flag = card ? selector.match(CARD_SELECTOR) : - selector.match(SELECTOR_MATCHER) || selector.match(DESCENDANT_SELECTOR_MATCHER)||t==="*" + selector.match(SELECTOR_MATCHER) || selector.match(DESCENDANT_SELECTOR_MATCHER) || selector.match(ALL_SELECTOR_MATCHER) if (flag) { var className = selector diff --git a/deps/weex-styler/lib/validator.js b/deps/weex-styler/lib/validator.js index e711e62..bf67357 100644 --- a/deps/weex-styler/lib/validator.js +++ b/deps/weex-styler/lib/validator.js @@ -243,7 +243,7 @@ var PERCENTAGE_LENGTH_VALIDATOR = function PERCENTAGE_LENGTH_VALIDATOR(v) { * - value: number|null * - reason(k, v, result) */ -var LINE_HEIGHT_VALIDATOR = function LINE_HEIGHT_VALIDATOR(v) { +var NORMAL_PERCENTAGE_LENGTH_VALIDATOR = function NORMAL_PERCENTAGE_LENGTH_VALIDATOR(v) { v = (v || '').toString().trim() if (v.match(NORMAL_REGEXP)) { return { value: v } @@ -2262,7 +2262,10 @@ var RICH_PROP_NAME_GROUPS = { textAlign: genEnumValidator(['start', 'end', 'left', 'center', 'right']), textOverflow: genEnumValidator(['clip', 'ellipsis']), textIndent: TEXT_INDENT_VALIDATOR, - lineHeight: LINE_HEIGHT_VALIDATOR, + lineHeight: NORMAL_PERCENTAGE_LENGTH_VALIDATOR, + wordSpacing: NORMAL_PERCENTAGE_LENGTH_VALIDATOR, + textDecorationColor: COLOR_VALIDATOR, + whiteSpace: genEnumValidator(['normal', 'nowrap', 'pre', 'pre-wrap', 'pre-line']), letterSpacing: LENGTH_VALIDATOR, minLines: NUMBER_VALIDATOR, maxLines: ANYTHING_VALIDATOR, @@ -2842,7 +2845,10 @@ var CARD_PROP_NAME_GROUPS = { textAlign: genEnumValidator(['start', 'end', 'left', 'center', 'right']), textOverflow: genEnumValidator(['clip', 'ellipsis']), textIndent: TEXT_INDENT_VALIDATOR, - lineHeight: LINE_HEIGHT_VALIDATOR, + lineHeight: NORMAL_PERCENTAGE_LENGTH_VALIDATOR, + wordSpacing: NORMAL_PERCENTAGE_LENGTH_VALIDATOR, + textDecorationColor: COLOR_VALIDATOR, + whiteSpace: genEnumValidator(['normal', 'nowrap', 'pre', 'pre-wrap', 'pre-line']), maxLines: ANYTHING_VALIDATOR, minFontSize: LENGTH_VALIDATOR, maxFontSize: LENGTH_VALIDATOR, -- Gitee From fd015961ca21d75a2e4c1788411ec3982c5741f3 Mon Sep 17 00:00:00 2001 From: khtiana Date: Wed, 27 Oct 2021 18:01:31 +0800 Subject: [PATCH 5/8] modify comment --- deps/weex-styler/lib/validator.js | 1 + 1 file changed, 1 insertion(+) diff --git a/deps/weex-styler/lib/validator.js b/deps/weex-styler/lib/validator.js index bf67357..1c516e3 100644 --- a/deps/weex-styler/lib/validator.js +++ b/deps/weex-styler/lib/validator.js @@ -235,6 +235,7 @@ var PERCENTAGE_LENGTH_VALIDATOR = function PERCENTAGE_LENGTH_VALIDATOR(v) { /** * the values below is valid + * - 'normal' * - number * - number + 'px'|'%'|'vp'| 'fp' * -- Gitee From e3d4f55d03096a3721616beaa64808d6529c767e Mon Sep 17 00:00:00 2001 From: khtiana Date: Thu, 28 Oct 2021 09:00:00 +0800 Subject: [PATCH 6/8] modify normal regex --- deps/weex-styler/lib/validator.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deps/weex-styler/lib/validator.js b/deps/weex-styler/lib/validator.js index 1c516e3..8ccf1c1 100644 --- a/deps/weex-styler/lib/validator.js +++ b/deps/weex-styler/lib/validator.js @@ -207,7 +207,7 @@ var SUPPORT_CSS_GRID_UNIT = ['px', '%', 'fr', 'vp', 'fp'] var SUPPORT_CSS_TEXT_INDENT_UNIT = ['px', 'cm', '%', 'em', 'vp', 'fp'] var SUPPORT_CSS_ANGLE_UNIT = ["deg", "rad", "grad", "turn"] var logTypes = ["NOTE", "WARNING", "ERROR"] -var NORMAL_REGEXP = "normal" +var NORMAL_REGEXP = /^normal$/ var ANYTHING_VALIDATOR = function ANYTHING_VALIDATOR(v) { v = (v || '').toString().trim() -- Gitee From 0bcaf6eea978b2c4861c50420130fcbeefd77ffb Mon Sep 17 00:00:00 2001 From: khtiana Date: Thu, 28 Oct 2021 09:04:47 +0800 Subject: [PATCH 7/8] modify * regex --- deps/weex-styler/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deps/weex-styler/index.js b/deps/weex-styler/index.js index 36ddef5..4078b27 100644 --- a/deps/weex-styler/index.js +++ b/deps/weex-styler/index.js @@ -12,7 +12,7 @@ var IMPORT_MATCHER = /(['"]([^()]+?)['"])|(['"]([^()]+?)['"]\s+(only|not)?\s?(sc var LENGTH_REGEXP = /^[-+]?\d*\.?\d+(\S*)$/ const CARD_SELECTOR = /^[\.#][A-Za-z0-9_\-]+$/ const card = process.env.DEVICE_LEVEL === 'card' -var ALL_SELECTOR_MATCHER = "*" +var ALL_SELECTOR_MATCHER = /^\*$/ /** * expand margin、padding、border、borderWidth、borderColor、borderStyle properties、animation -- Gitee From a090b68457cf5e28d8c538fe1201653cf74dc472 Mon Sep 17 00:00:00 2001 From: khtiana Date: Thu, 28 Oct 2021 09:40:18 +0800 Subject: [PATCH 8/8] modify format --- deps/weex-styler/lib/validator.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deps/weex-styler/lib/validator.js b/deps/weex-styler/lib/validator.js index 8ccf1c1..3fcdf9f 100644 --- a/deps/weex-styler/lib/validator.js +++ b/deps/weex-styler/lib/validator.js @@ -237,7 +237,7 @@ var PERCENTAGE_LENGTH_VALIDATOR = function PERCENTAGE_LENGTH_VALIDATOR(v) { * the values below is valid * - 'normal' * - number - * - number + 'px'|'%'|'vp'| 'fp' + * - number + 'px' | '%' | 'vp' | 'fp' * * @param {string} v * @return {function} a function to return -- Gitee