mirror of
https://github.com/react/react-native-devtools-frontend.git
synced 2026-10-09 21:28:43 +08:00
This also adds CC-BY-4.0 to the list of accepted licenses. DISABLE_THIRD_PARTY_CHECK=update dependencies Bug: chromium:1083142 Change-Id: I8612de2fba52dae32eeb71af79d5aacfde52142b Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2220097 Reviewed-by: Paul Lewis <aerotwist@chromium.org> Commit-Queue: Mathias Bynens <mathias@chromium.org>
function-calc-no-invalid
Disallow an invalid expression within calc functions.
.foo {width: calc();}
/** ↑
* empty expression */
.foo {width: calc(100% 80px);}
/** ↑
/* missing operator */
.foo {width: calc(100% -80px);}
/** ↑
/* missing operator */
.foo {width: calc(100% - - 80px);}
/** ↑
/* unexpected operator */
.foo {width: calc(100% -);}
/** ↑
/* unexpected operator */
.foo {width: calc(- 100%);}
/** ↑
/* unexpected operator */
.foo {width: calc(100% / 0);}
/** ↑ ↑
/* division by zero */
.foo {width: calc(100px + 80);}
/** ↑ ↑ ↑
/* the `resolved type` is invalid */
.foo {width: calc(100% + 80);}
/** ↑ ↑ ↑
/* the `resolved type` is invalid */
.foo {width: calc(100px - 80);}
/** ↑ ↑ ↑
/* the `resolved type` is invalid */
.foo {width: calc(100px * 80px);}
/** ↑ ↑ ↑
/* the `resolved type` is invalid */
.foo {width: calc(100 / 80%);}
/** ↑ ↑ ↑
/* the `resolved type` is invalid */
calc()must have an expression.calc()must have an operator between the arguments.calc()must not be division by zero.- The resolved type must be valid for where the expression is placed.
Options
true
The following patterns are considered violations:
.foo {width: calc();}
.foo {width: calc(100% 80px);}
.foo {width: calc(100% - - 80px);}
.foo {width: calc(100% / 0);}
.foo {width: calc(100px + 80);}
The following patterns are not considered violations:
.foo {width: calc(100% - 80px);}
.foo {width: calc(100% - var(--bar));}
.foo {width: calc(var(--bar) - var(--baz));}