eslint-plugin-react-dom 2.0.0-beta.27 → 2.0.0-beta.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +2 -0
- package/dist/index.js +75 -29
- package/package.json +7 -7
package/dist/index.d.ts
CHANGED
|
@@ -35,6 +35,7 @@ declare const _default: {
|
|
|
35
35
|
readonly "no-render": _typescript_eslint_utils_ts_eslint.RuleModule<"noRender", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
36
36
|
readonly "no-render-return-value": _typescript_eslint_utils_ts_eslint.RuleModule<"noRenderReturnValue", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
37
37
|
readonly "no-script-url": _typescript_eslint_utils_ts_eslint.RuleModule<"noScriptUrl", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
38
|
+
readonly "no-string-style-prop": _typescript_eslint_utils_ts_eslint.RuleModule<"noStringStyleProp", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
38
39
|
readonly "no-unknown-property": _typescript_eslint_utils_ts_eslint.RuleModule<"dataLowercaseRequired" | "invalidPropOnTag" | "unknownProp" | "unknownPropWithStandardName", unknown[], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
39
40
|
readonly "no-unsafe-iframe-sandbox": _typescript_eslint_utils_ts_eslint.RuleModule<"noUnsafeIframeSandbox", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
40
41
|
readonly "no-unsafe-target-blank": _typescript_eslint_utils_ts_eslint.RuleModule<MessageID$2, [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
@@ -67,6 +68,7 @@ declare const _default: {
|
|
|
67
68
|
readonly "no-render": _typescript_eslint_utils_ts_eslint.RuleModule<"noRender", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
68
69
|
readonly "no-render-return-value": _typescript_eslint_utils_ts_eslint.RuleModule<"noRenderReturnValue", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
69
70
|
readonly "no-script-url": _typescript_eslint_utils_ts_eslint.RuleModule<"noScriptUrl", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
71
|
+
readonly "no-string-style-prop": _typescript_eslint_utils_ts_eslint.RuleModule<"noStringStyleProp", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
70
72
|
readonly "no-unknown-property": _typescript_eslint_utils_ts_eslint.RuleModule<"dataLowercaseRequired" | "invalidPropOnTag" | "unknownProp" | "unknownPropWithStandardName", unknown[], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
71
73
|
readonly "no-unsafe-iframe-sandbox": _typescript_eslint_utils_ts_eslint.RuleModule<"noUnsafeIframeSandbox", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
|
72
74
|
readonly "no-unsafe-target-blank": _typescript_eslint_utils_ts_eslint.RuleModule<MessageID$2, [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
|
package/dist/index.js
CHANGED
|
@@ -32,6 +32,7 @@ var rules = {
|
|
|
32
32
|
"react-dom/no-render": "error",
|
|
33
33
|
"react-dom/no-render-return-value": "error",
|
|
34
34
|
"react-dom/no-script-url": "warn",
|
|
35
|
+
"react-dom/no-string-style-prop": "error",
|
|
35
36
|
"react-dom/no-unsafe-iframe-sandbox": "warn",
|
|
36
37
|
"react-dom/no-unsafe-target-blank": "warn",
|
|
37
38
|
"react-dom/no-use-form-state": "error",
|
|
@@ -43,7 +44,7 @@ var settings = {
|
|
|
43
44
|
|
|
44
45
|
// package.json
|
|
45
46
|
var name2 = "eslint-plugin-react-dom";
|
|
46
|
-
var version = "2.0.0-beta.
|
|
47
|
+
var version = "2.0.0-beta.29";
|
|
47
48
|
function createJsxElementResolver(context) {
|
|
48
49
|
const { components, polymorphicPropName } = getSettingsFromContext(context);
|
|
49
50
|
return {
|
|
@@ -695,7 +696,51 @@ function create11(context) {
|
|
|
695
696
|
}
|
|
696
697
|
};
|
|
697
698
|
}
|
|
698
|
-
var RULE_NAME12 = "no-
|
|
699
|
+
var RULE_NAME12 = "no-string-style-prop";
|
|
700
|
+
var RULE_FEATURES12 = [];
|
|
701
|
+
var no_string_style_prop_default = createRule({
|
|
702
|
+
meta: {
|
|
703
|
+
type: "problem",
|
|
704
|
+
docs: {
|
|
705
|
+
description: "Disallows the use of string style prop.",
|
|
706
|
+
[Symbol.for("rule_features")]: RULE_FEATURES12
|
|
707
|
+
},
|
|
708
|
+
messages: {
|
|
709
|
+
noStringStyleProp: "Do not use string style prop. Use an object instead."
|
|
710
|
+
},
|
|
711
|
+
schema: []
|
|
712
|
+
},
|
|
713
|
+
name: RULE_NAME12,
|
|
714
|
+
create: create12,
|
|
715
|
+
defaultOptions: []
|
|
716
|
+
});
|
|
717
|
+
function create12(context) {
|
|
718
|
+
return {
|
|
719
|
+
JSXAttribute(node) {
|
|
720
|
+
if (node.name.name !== "style") return;
|
|
721
|
+
const styleText = getAttributeValueText(context, node.value);
|
|
722
|
+
if (styleText == null) return;
|
|
723
|
+
context.report({
|
|
724
|
+
messageId: "noStringStyleProp",
|
|
725
|
+
node
|
|
726
|
+
});
|
|
727
|
+
}
|
|
728
|
+
};
|
|
729
|
+
}
|
|
730
|
+
function getAttributeValueText(context, node) {
|
|
731
|
+
if (node == null) return null;
|
|
732
|
+
switch (true) {
|
|
733
|
+
case (node.type === AST_NODE_TYPES.Literal && typeof node.value === "string"):
|
|
734
|
+
return context.sourceCode.getText(node);
|
|
735
|
+
case (node.type === AST_NODE_TYPES.JSXExpressionContainer && node.expression.type === AST_NODE_TYPES.Literal && typeof node.expression.value === "string"):
|
|
736
|
+
return context.sourceCode.getText(node.expression);
|
|
737
|
+
case (node.type === AST_NODE_TYPES.JSXExpressionContainer && node.expression.type === AST_NODE_TYPES.TemplateLiteral):
|
|
738
|
+
return context.sourceCode.getText(node.expression);
|
|
739
|
+
default:
|
|
740
|
+
return null;
|
|
741
|
+
}
|
|
742
|
+
}
|
|
743
|
+
var RULE_NAME13 = "no-unknown-property";
|
|
699
744
|
var DEFAULTS = {
|
|
700
745
|
ignore: [],
|
|
701
746
|
requireDataLowercase: false
|
|
@@ -1658,11 +1703,11 @@ var no_unknown_property_default = createRule({
|
|
|
1658
1703
|
}
|
|
1659
1704
|
}]
|
|
1660
1705
|
},
|
|
1661
|
-
name:
|
|
1662
|
-
create:
|
|
1706
|
+
name: RULE_NAME13,
|
|
1707
|
+
create: create13,
|
|
1663
1708
|
defaultOptions: []
|
|
1664
1709
|
});
|
|
1665
|
-
function
|
|
1710
|
+
function create13(context) {
|
|
1666
1711
|
const report = Reporter.make(context);
|
|
1667
1712
|
function getIgnoreConfig() {
|
|
1668
1713
|
return context.options[0]?.ignore || DEFAULTS.ignore;
|
|
@@ -1755,8 +1800,8 @@ function testReactVersion(context, comparator, version2) {
|
|
|
1755
1800
|
}
|
|
1756
1801
|
|
|
1757
1802
|
// src/rules/no-unsafe-iframe-sandbox.ts
|
|
1758
|
-
var
|
|
1759
|
-
var
|
|
1803
|
+
var RULE_NAME14 = "no-unsafe-iframe-sandbox";
|
|
1804
|
+
var RULE_FEATURES13 = [];
|
|
1760
1805
|
var unsafeSandboxValues = [
|
|
1761
1806
|
["allow-scripts", "allow-same-origin"]
|
|
1762
1807
|
];
|
|
@@ -1771,18 +1816,18 @@ var no_unsafe_iframe_sandbox_default = createRule({
|
|
|
1771
1816
|
type: "problem",
|
|
1772
1817
|
docs: {
|
|
1773
1818
|
description: "Enforces `sandbox` attribute for `iframe` elements is not set to unsafe combinations.",
|
|
1774
|
-
[Symbol.for("rule_features")]:
|
|
1819
|
+
[Symbol.for("rule_features")]: RULE_FEATURES13
|
|
1775
1820
|
},
|
|
1776
1821
|
messages: {
|
|
1777
1822
|
noUnsafeIframeSandbox: "Unsafe 'sandbox' attribute value on 'iframe' component."
|
|
1778
1823
|
},
|
|
1779
1824
|
schema: []
|
|
1780
1825
|
},
|
|
1781
|
-
name:
|
|
1782
|
-
create:
|
|
1826
|
+
name: RULE_NAME14,
|
|
1827
|
+
create: create14,
|
|
1783
1828
|
defaultOptions: []
|
|
1784
1829
|
});
|
|
1785
|
-
function
|
|
1830
|
+
function create14(context) {
|
|
1786
1831
|
const resolver = createJsxElementResolver(context);
|
|
1787
1832
|
return {
|
|
1788
1833
|
JSXElement(node) {
|
|
@@ -1800,8 +1845,8 @@ function create13(context) {
|
|
|
1800
1845
|
}
|
|
1801
1846
|
|
|
1802
1847
|
// src/rules/no-unsafe-target-blank.ts
|
|
1803
|
-
var
|
|
1804
|
-
var
|
|
1848
|
+
var RULE_NAME15 = "no-unsafe-target-blank";
|
|
1849
|
+
var RULE_FEATURES14 = [
|
|
1805
1850
|
"FIX"
|
|
1806
1851
|
];
|
|
1807
1852
|
function isExternalLinkLike(value) {
|
|
@@ -1817,7 +1862,7 @@ var no_unsafe_target_blank_default = createRule({
|
|
|
1817
1862
|
type: "problem",
|
|
1818
1863
|
docs: {
|
|
1819
1864
|
description: 'Disallow `target="_blank"` without `rel="noreferrer noopener"`.',
|
|
1820
|
-
[Symbol.for("rule_features")]:
|
|
1865
|
+
[Symbol.for("rule_features")]: RULE_FEATURES14
|
|
1821
1866
|
},
|
|
1822
1867
|
fixable: "code",
|
|
1823
1868
|
hasSuggestions: true,
|
|
@@ -1827,11 +1872,11 @@ var no_unsafe_target_blank_default = createRule({
|
|
|
1827
1872
|
},
|
|
1828
1873
|
schema: []
|
|
1829
1874
|
},
|
|
1830
|
-
name:
|
|
1831
|
-
create:
|
|
1875
|
+
name: RULE_NAME15,
|
|
1876
|
+
create: create15,
|
|
1832
1877
|
defaultOptions: []
|
|
1833
1878
|
});
|
|
1834
|
-
function
|
|
1879
|
+
function create15(context) {
|
|
1835
1880
|
const resolver = createJsxElementResolver(context);
|
|
1836
1881
|
return {
|
|
1837
1882
|
JSXElement(node) {
|
|
@@ -1879,8 +1924,8 @@ function create14(context) {
|
|
|
1879
1924
|
}
|
|
1880
1925
|
};
|
|
1881
1926
|
}
|
|
1882
|
-
var
|
|
1883
|
-
var
|
|
1927
|
+
var RULE_NAME16 = "no-use-form-state";
|
|
1928
|
+
var RULE_FEATURES15 = [
|
|
1884
1929
|
"MOD"
|
|
1885
1930
|
];
|
|
1886
1931
|
var no_use_form_state_default = createRule({
|
|
@@ -1888,7 +1933,7 @@ var no_use_form_state_default = createRule({
|
|
|
1888
1933
|
type: "problem",
|
|
1889
1934
|
docs: {
|
|
1890
1935
|
description: "Replaces usages of `useFormState` with `useActionState`.",
|
|
1891
|
-
[Symbol.for("rule_features")]:
|
|
1936
|
+
[Symbol.for("rule_features")]: RULE_FEATURES15
|
|
1892
1937
|
},
|
|
1893
1938
|
fixable: "code",
|
|
1894
1939
|
messages: {
|
|
@@ -1896,11 +1941,11 @@ var no_use_form_state_default = createRule({
|
|
|
1896
1941
|
},
|
|
1897
1942
|
schema: []
|
|
1898
1943
|
},
|
|
1899
|
-
name:
|
|
1900
|
-
create:
|
|
1944
|
+
name: RULE_NAME16,
|
|
1945
|
+
create: create16,
|
|
1901
1946
|
defaultOptions: []
|
|
1902
1947
|
});
|
|
1903
|
-
function
|
|
1948
|
+
function create16(context) {
|
|
1904
1949
|
if (!context.sourceCode.text.includes("useFormState")) return {};
|
|
1905
1950
|
const settings2 = getSettingsFromContext(context);
|
|
1906
1951
|
if (compare(settings2.version, "19.0.0", "<")) return {};
|
|
@@ -1955,8 +2000,8 @@ function getFix3(context, node) {
|
|
|
1955
2000
|
];
|
|
1956
2001
|
};
|
|
1957
2002
|
}
|
|
1958
|
-
var
|
|
1959
|
-
var
|
|
2003
|
+
var RULE_NAME17 = "no-void-elements-with-children";
|
|
2004
|
+
var RULE_FEATURES16 = [];
|
|
1960
2005
|
var voidElements = /* @__PURE__ */ new Set([
|
|
1961
2006
|
"area",
|
|
1962
2007
|
"base",
|
|
@@ -1980,18 +2025,18 @@ var no_void_elements_with_children_default = createRule({
|
|
|
1980
2025
|
type: "problem",
|
|
1981
2026
|
docs: {
|
|
1982
2027
|
description: "Disallow `children` in void DOM elements.",
|
|
1983
|
-
[Symbol.for("rule_features")]:
|
|
2028
|
+
[Symbol.for("rule_features")]: RULE_FEATURES16
|
|
1984
2029
|
},
|
|
1985
2030
|
messages: {
|
|
1986
2031
|
noVoidElementsWithChildren: "'{{element}}' is a void element tag and must not have children."
|
|
1987
2032
|
},
|
|
1988
2033
|
schema: []
|
|
1989
2034
|
},
|
|
1990
|
-
name:
|
|
1991
|
-
create:
|
|
2035
|
+
name: RULE_NAME17,
|
|
2036
|
+
create: create17,
|
|
1992
2037
|
defaultOptions: []
|
|
1993
2038
|
});
|
|
1994
|
-
function
|
|
2039
|
+
function create17(context) {
|
|
1995
2040
|
const resolver = createJsxElementResolver(context);
|
|
1996
2041
|
return {
|
|
1997
2042
|
JSXElement(node) {
|
|
@@ -2042,6 +2087,7 @@ var plugin = {
|
|
|
2042
2087
|
"no-render": no_render_default,
|
|
2043
2088
|
"no-render-return-value": no_render_return_value_default,
|
|
2044
2089
|
"no-script-url": no_script_url_default,
|
|
2090
|
+
"no-string-style-prop": no_string_style_prop_default,
|
|
2045
2091
|
"no-unknown-property": no_unknown_property_default,
|
|
2046
2092
|
"no-unsafe-iframe-sandbox": no_unsafe_iframe_sandbox_default,
|
|
2047
2093
|
"no-unsafe-target-blank": no_unsafe_target_blank_default,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eslint-plugin-react-dom",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.29",
|
|
4
4
|
"description": "ESLint React's ESLint plugin for React DOM related rules.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -41,12 +41,12 @@
|
|
|
41
41
|
"compare-versions": "^6.1.1",
|
|
42
42
|
"string-ts": "^2.2.1",
|
|
43
43
|
"ts-pattern": "^5.8.0",
|
|
44
|
-
"@eslint-react/
|
|
45
|
-
"@eslint-react/ast": "2.0.0-beta.
|
|
46
|
-
"@eslint-react/
|
|
47
|
-
"@eslint-react/
|
|
48
|
-
"@eslint-react/shared": "2.0.0-beta.
|
|
49
|
-
"@eslint-react/var": "2.0.0-beta.
|
|
44
|
+
"@eslint-react/core": "2.0.0-beta.29",
|
|
45
|
+
"@eslint-react/ast": "2.0.0-beta.29",
|
|
46
|
+
"@eslint-react/kit": "2.0.0-beta.29",
|
|
47
|
+
"@eslint-react/eff": "2.0.0-beta.29",
|
|
48
|
+
"@eslint-react/shared": "2.0.0-beta.29",
|
|
49
|
+
"@eslint-react/var": "2.0.0-beta.29"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
52
|
"@types/react": "^19.1.10",
|