chore: Clean up some console warnings (#11061)

* Upgrade a few packages

* Update some prop types

* Update HTML

* Moar warning fixes

* Remove wrapper div
This commit is contained in:
Kamil Gabryjelski 2020-09-28 18:43:21 +02:00 committed by GitHub
parent f01b8a30f7
commit 2fd8fca207
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
15 changed files with 326 additions and 229 deletions

View File

@ -3750,72 +3750,68 @@
}
},
"@data-ui/shared": {
"version": "0.0.54",
"resolved": "https://registry.npmjs.org/@data-ui/shared/-/shared-0.0.54.tgz",
"integrity": "sha1-L7DW3ukNrCC/jzwpE8aFCoIj1Zs=",
"version": "0.0.84",
"resolved": "https://registry.npmjs.org/@data-ui/shared/-/shared-0.0.84.tgz",
"integrity": "sha512-MsDLsFzBHFEREr/eF2/RX1o/cXioEg+VQTsM8gViW5ywGQ7Xo5+EqUOaBSrwqKAkvp3e8PaEZVkchPC54IBhrA==",
"requires": {
"@data-ui/theme": "0.0.48",
"@vx/event": "0.0.143",
"@vx/group": "0.0.143",
"@vx/shape": "0.0.145",
"@vx/tooltip": "0.0.148",
"@data-ui/theme": "^0.0.84",
"@vx/event": "^0.0.165",
"@vx/group": "^0.0.165",
"@vx/shape": "^0.0.168",
"@vx/tooltip": "0.0.165",
"d3-array": "^1.2.1",
"prop-types": "^15.5.10"
},
"dependencies": {
"@data-ui/theme": {
"version": "0.0.48",
"resolved": "https://registry.npmjs.org/@data-ui/theme/-/theme-0.0.48.tgz",
"integrity": "sha1-8hUy0T2n5sXXJcrbD1p210bzvYU="
},
"@vx/bounds": {
"version": "0.0.147",
"resolved": "https://registry.npmjs.org/@vx/bounds/-/bounds-0.0.147.tgz",
"integrity": "sha1-ihYnVPy6BmQkT7f8aK5+p3NIPRc=",
"version": "0.0.165",
"resolved": "https://registry.npmjs.org/@vx/bounds/-/bounds-0.0.165.tgz",
"integrity": "sha512-ZvRb72/4QNs1ZrytZTZxd0hfAb/KKfhsdkcYtIQkmdF6dTsjigMQZ+h2bLvLnbZb/RxyCCoxdiZSGXd+T1c//Q==",
"requires": {
"prop-types": "^15.5.10"
}
},
"@vx/event": {
"version": "0.0.143",
"resolved": "https://registry.npmjs.org/@vx/event/-/event-0.0.143.tgz",
"integrity": "sha1-SbFJP+Fu99eGVAXS3PJnwKlYcdE=",
"version": "0.0.165",
"resolved": "https://registry.npmjs.org/@vx/event/-/event-0.0.165.tgz",
"integrity": "sha512-FsQiw0f3s5DQB6aBQmBcoWk9e4q65LcDobHIyV8qrmpW2QgV2NvQFM1w0Q300ohpRMgJDzGk68HHHQgFOJvApw==",
"requires": {
"@vx/point": "0.0.143"
"@vx/point": "0.0.165"
}
},
"@vx/group": {
"version": "0.0.143",
"resolved": "https://registry.npmjs.org/@vx/group/-/group-0.0.143.tgz",
"integrity": "sha1-ONvT+idA1XPG/fxpHrwV6F0+sBs=",
"version": "0.0.165",
"resolved": "https://registry.npmjs.org/@vx/group/-/group-0.0.165.tgz",
"integrity": "sha512-gi1DSg8AAaVRseyWiq8y4bzyvKiQIXT6vDUYBVRmv2LBcpHocBGaxNiNK0X602RgLG0XmNyRv6qSCWLOaBs3Mg==",
"requires": {
"classnames": "^2.2.5"
}
},
"@vx/point": {
"version": "0.0.143",
"resolved": "https://registry.npmjs.org/@vx/point/-/point-0.0.143.tgz",
"integrity": "sha1-e236YRF17ht048OSByWJp52t8mU="
"version": "0.0.165",
"resolved": "https://registry.npmjs.org/@vx/point/-/point-0.0.165.tgz",
"integrity": "sha512-spoHilhjcWNgccrSzBUPw+PXV81tYxeyEWBkgr35aGVU4m7YT86Ywvfemwp7AVVGPn+XJHrhB0ujAhDoyqFPoA=="
},
"@vx/shape": {
"version": "0.0.145",
"resolved": "https://registry.npmjs.org/@vx/shape/-/shape-0.0.145.tgz",
"integrity": "sha1-TXA8HY8IXlh1QbPvHAauUQ1jQaQ=",
"version": "0.0.168",
"resolved": "https://registry.npmjs.org/@vx/shape/-/shape-0.0.168.tgz",
"integrity": "sha512-urKZkwSafMpPQ0wI/L5FJmufRiAR4UsgYUCKxROjfE1Cf4jWNlK6mlVIIASxCdHlh9CGBbIrRMdl5Yv5lzqhjA==",
"requires": {
"@vx/curve": "0.0.143",
"@vx/group": "0.0.143",
"@vx/point": "0.0.143",
"@vx/curve": "0.0.165",
"@vx/group": "0.0.165",
"@vx/point": "0.0.165",
"classnames": "^2.2.5",
"d3-path": "^1.0.5",
"d3-shape": "^1.2.0",
"prop-types": "^15.5.10"
}
},
"@vx/tooltip": {
"version": "0.0.148",
"resolved": "https://registry.npmjs.org/@vx/tooltip/-/tooltip-0.0.148.tgz",
"integrity": "sha1-HEiEsp6u1bdoM5cqI8gTOYAJX+A=",
"version": "0.0.165",
"resolved": "https://registry.npmjs.org/@vx/tooltip/-/tooltip-0.0.165.tgz",
"integrity": "sha512-/x1NZc67QGQ4e/WNT7Ks5LYRyeLSqp8lG04gX5J6leUS0zscAVzo3aE5u65Qqbc0cnMyMPRZ2Qtb4klWTLg+eQ==",
"requires": {
"@vx/bounds": "0.0.147",
"@vx/bounds": "0.0.165",
"classnames": "^2.2.5",
"prop-types": "^15.5.10"
}
@ -3823,23 +3819,23 @@
}
},
"@data-ui/sparkline": {
"version": "0.0.54",
"resolved": "https://registry.npmjs.org/@data-ui/sparkline/-/sparkline-0.0.54.tgz",
"integrity": "sha1-zj0WbZ4LI5oLoC84lMuejIQXHO8=",
"version": "0.0.84",
"resolved": "https://registry.npmjs.org/@data-ui/sparkline/-/sparkline-0.0.84.tgz",
"integrity": "sha512-Ja7T2JjioZtnoy0PEXF72qv/J8xIotu+oS1Z+ygVGZni6aN/DUY35eGpg/DDeemEFDMoifcx+kYa5LU7hQCnJg==",
"requires": {
"@data-ui/shared": "0.0.54",
"@data-ui/theme": "0.0.8",
"@vx/axis": "0.0.140",
"@vx/curve": "0.0.140",
"@vx/event": "0.0.143",
"@vx/glyph": "0.0.140",
"@vx/gradient": "0.0.140",
"@vx/group": "0.0.140",
"@vx/pattern": "0.0.140",
"@vx/point": "0.0.136",
"@vx/responsive": "0.0.140",
"@vx/scale": "0.0.140",
"@vx/shape": "0.0.140",
"@data-ui/shared": "^0.0.84",
"@data-ui/theme": "^0.0.8",
"@vx/axis": "^0.0.179",
"@vx/curve": "^0.0.165",
"@vx/event": "^0.0.179",
"@vx/glyph": "^0.0.179",
"@vx/gradient": "^0.0.165",
"@vx/group": "^0.0.170",
"@vx/pattern": "^0.0.179",
"@vx/point": "^0.0.165",
"@vx/responsive": "^0.0.192",
"@vx/scale": "^0.0.179",
"@vx/shape": "^0.0.179",
"d3-array": "^1.2.0",
"prop-types": "^15.5.10"
},
@ -3849,36 +3845,105 @@
"resolved": "https://registry.npmjs.org/@data-ui/theme/-/theme-0.0.8.tgz",
"integrity": "sha1-MRZyPQS5n2XHdQ+BpQDpYItIN8M="
},
"@vx/curve": {
"version": "0.0.140",
"resolved": "https://registry.npmjs.org/@vx/curve/-/curve-0.0.140.tgz",
"integrity": "sha1-Ke84jos3GCE9ZqiW1WncHryO34k=",
"@vx/axis": {
"version": "0.0.179",
"resolved": "https://registry.npmjs.org/@vx/axis/-/axis-0.0.179.tgz",
"integrity": "sha512-FtUcdJxejYn5jgixSgSk9AdA96VwP9sCRATVfGvugEL0gtTKWYDbJEgSgqXfKqpeUdsDdf/JT7NVbLMc1hzrZg==",
"requires": {
"d3-shape": "^1.0.6"
"@vx/group": "0.0.170",
"@vx/point": "0.0.165",
"@vx/shape": "0.0.179",
"@vx/text": "0.0.179",
"classnames": "^2.2.5",
"prop-types": "^15.6.0"
}
},
"@vx/event": {
"version": "0.0.143",
"resolved": "https://registry.npmjs.org/@vx/event/-/event-0.0.143.tgz",
"integrity": "sha1-SbFJP+Fu99eGVAXS3PJnwKlYcdE=",
"version": "0.0.179",
"resolved": "https://registry.npmjs.org/@vx/event/-/event-0.0.179.tgz",
"integrity": "sha512-wEwqKsxrzoRV/A9Va/f/CHPmV9asrTH/kW/f88jCydsVXd5W/nrJZiVpozN2Zr1Ernv0i1gW5896FWo/LHRg0A==",
"requires": {
"@vx/point": "0.0.143"
},
"dependencies": {
"@vx/point": {
"version": "0.0.143",
"resolved": "https://registry.npmjs.org/@vx/point/-/point-0.0.143.tgz",
"integrity": "sha1-e236YRF17ht048OSByWJp52t8mU="
}
"@vx/point": "0.0.165"
}
},
"@vx/responsive": {
"version": "0.0.140",
"resolved": "https://registry.npmjs.org/@vx/responsive/-/responsive-0.0.140.tgz",
"integrity": "sha1-xz7Gi56JoYFgXxrJ7MCfNSFneag=",
"@vx/glyph": {
"version": "0.0.179",
"resolved": "https://registry.npmjs.org/@vx/glyph/-/glyph-0.0.179.tgz",
"integrity": "sha512-RO7adwyG+9gGzjFdfmplrojgWCT+gsOnIFcRgJNJjx41+P6hWdI9X4OpsLx8VVqNhp7g+hxBDZWte8AxTvLQGw==",
"requires": {
"lodash": "^4.0.8"
"@vx/group": "0.0.170",
"classnames": "^2.2.5",
"d3-shape": "^1.2.0",
"prop-types": "^15.6.2"
}
},
"@vx/gradient": {
"version": "0.0.165",
"resolved": "https://registry.npmjs.org/@vx/gradient/-/gradient-0.0.165.tgz",
"integrity": "sha512-FjRXMTmcy7k0TWsfDzWWXw6T9WXKP+6LS/GRgnguq271pab/P+AdOJThsVxtBgUc8ZOAPbub3/2Gggz9d8tocg==",
"requires": {
"classnames": "^2.2.5",
"prop-types": "^15.5.7"
}
},
"@vx/group": {
"version": "0.0.170",
"resolved": "https://registry.npmjs.org/@vx/group/-/group-0.0.170.tgz",
"integrity": "sha512-RnDdRoy0YI5hokk+YWXc8t39Kp51i4BdCpiwkDJU4YypGycTYnDFjicam6jigUmZ/6wyMirDf/aQboWviFLt2Q==",
"requires": {
"classnames": "^2.2.5"
}
},
"@vx/pattern": {
"version": "0.0.179",
"resolved": "https://registry.npmjs.org/@vx/pattern/-/pattern-0.0.179.tgz",
"integrity": "sha512-qvJsK07oUnSbuzj9jo7b/1Up13DknIeTlj9FDIhg0UNmz90ikVN2CZIWtdJyc2I1AFDEg0odOqYXzUx9aEBRfg==",
"requires": {
"classnames": "^2.2.5",
"prop-types": "^15.5.10"
}
},
"@vx/point": {
"version": "0.0.165",
"resolved": "https://registry.npmjs.org/@vx/point/-/point-0.0.165.tgz",
"integrity": "sha512-spoHilhjcWNgccrSzBUPw+PXV81tYxeyEWBkgr35aGVU4m7YT86Ywvfemwp7AVVGPn+XJHrhB0ujAhDoyqFPoA=="
},
"@vx/responsive": {
"version": "0.0.192",
"resolved": "https://registry.npmjs.org/@vx/responsive/-/responsive-0.0.192.tgz",
"integrity": "sha512-HaXVwhSJXUfRbzRV+glxsX0ki2Hi1mdpz42iuGArVQgDPJEmBHjkXyoiXU8U6v66M7FAH+OyKgtc5j2bfhyYzA==",
"requires": {
"lodash": "^4.17.10",
"prop-types": "^15.6.1",
"resize-observer-polyfill": "1.5.0"
}
},
"@vx/scale": {
"version": "0.0.179",
"resolved": "https://registry.npmjs.org/@vx/scale/-/scale-0.0.179.tgz",
"integrity": "sha512-j40WiGu4VcHZdaSQAl12ig2w5c4Q9EVn7qqYf9PX7uoS5PbxRYNnHeKZ7e5Bf8O6b57iv5jFTfUV7HkpNF4vvg==",
"requires": {
"d3-scale": "^2.0.0"
}
},
"@vx/shape": {
"version": "0.0.179",
"resolved": "https://registry.npmjs.org/@vx/shape/-/shape-0.0.179.tgz",
"integrity": "sha512-YHVNx4xGpbjolkW3Lb5pEgJB0+u349vfnLI976DJlinY0hRNa4TZbWXOB4ywLIrYzQEXXPMUR8WtdubNxg6g0w==",
"requires": {
"@vx/curve": "0.0.165",
"@vx/group": "0.0.170",
"@vx/point": "0.0.165",
"classnames": "^2.2.5",
"d3-path": "^1.0.5",
"d3-shape": "^1.2.0",
"prop-types": "^15.5.10"
}
},
"resize-observer-polyfill": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.0.tgz",
"integrity": "sha512-M2AelyJDVR/oLnToJLtuDJRBBWUGUvvGigj1411hXhAdyFWqMaqHp7TixW3FpiLuVaikIcR1QL+zqoJoZlOgpg=="
}
}
},
@ -18219,9 +18284,9 @@
"integrity": "sha1-smI9AE3Vw8imr+jQYN5Z31FHLZQ="
},
"@vx/curve": {
"version": "0.0.143",
"resolved": "https://registry.npmjs.org/@vx/curve/-/curve-0.0.143.tgz",
"integrity": "sha1-AixqigfsAZ7Vgg8CFNoh/ZNkVyQ=",
"version": "0.0.165",
"resolved": "https://registry.npmjs.org/@vx/curve/-/curve-0.0.165.tgz",
"integrity": "sha512-fiQAGrKNGjJbL+eixUckJqIZDWXH/1NtIyyDbSz3J7ksk0QpYr5BgWcNJN76HLNt7wfcLwNzCHeNs4iVYyFGTg==",
"requires": {
"d3-shape": "^1.0.6"
}
@ -21063,28 +21128,28 @@
"dependencies": {
"abbrev": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
"resolved": "",
"integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
"dev": true,
"optional": true
},
"ansi-regex": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
"resolved": "",
"integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
"dev": true,
"optional": true
},
"aproba": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
"resolved": "",
"integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
"dev": true,
"optional": true
},
"are-we-there-yet": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz",
"resolved": "",
"integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==",
"dev": true,
"optional": true,
@ -21095,14 +21160,14 @@
},
"balanced-match": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
"resolved": "",
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
"dev": true,
"optional": true
},
"brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"resolved": "",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
"optional": true,
@ -21113,35 +21178,35 @@
},
"code-point-at": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
"resolved": "",
"integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
"dev": true,
"optional": true
},
"concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
"resolved": "",
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
"dev": true,
"optional": true
},
"console-control-strings": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
"resolved": "",
"integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
"dev": true,
"optional": true
},
"core-util-is": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
"resolved": "",
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
"dev": true,
"optional": true
},
"debug": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
"resolved": "",
"integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
"dev": true,
"optional": true,
@ -21151,35 +21216,35 @@
},
"deep-extend": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
"resolved": "",
"integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
"dev": true,
"optional": true
},
"delegates": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
"resolved": "",
"integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
"dev": true,
"optional": true
},
"detect-libc": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
"resolved": "",
"integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=",
"dev": true,
"optional": true
},
"fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"resolved": "",
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
"dev": true,
"optional": true
},
"gauge": {
"version": "2.7.4",
"resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
"resolved": "",
"integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
"dev": true,
"optional": true,
@ -21196,7 +21261,7 @@
},
"glob": {
"version": "7.1.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz",
"resolved": "",
"integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
"dev": true,
"optional": true,
@ -21211,14 +21276,14 @@
},
"has-unicode": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
"resolved": "",
"integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
"dev": true,
"optional": true
},
"iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
"resolved": "",
"integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
"dev": true,
"optional": true,
@ -21228,7 +21293,7 @@
},
"ignore-walk": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz",
"resolved": "",
"integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==",
"dev": true,
"optional": true,
@ -21238,7 +21303,7 @@
},
"inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"resolved": "",
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
"dev": true,
"optional": true,
@ -21249,21 +21314,21 @@
},
"inherits": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
"resolved": "",
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
"dev": true,
"optional": true
},
"ini": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
"resolved": "",
"integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
"dev": true,
"optional": true
},
"is-fullwidth-code-point": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
"resolved": "",
"integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
"dev": true,
"optional": true,
@ -21273,14 +21338,14 @@
},
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"resolved": "",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
"dev": true,
"optional": true
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"resolved": "",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"dev": true,
"optional": true,
@ -21297,14 +21362,14 @@
},
"ms": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
"resolved": "",
"integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
"dev": true,
"optional": true
},
"needle": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/needle/-/needle-2.3.0.tgz",
"resolved": "",
"integrity": "sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg==",
"dev": true,
"optional": true,
@ -21316,7 +21381,7 @@
},
"node-pre-gyp": {
"version": "0.12.0",
"resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz",
"resolved": "",
"integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==",
"dev": true,
"optional": true,
@ -21335,7 +21400,7 @@
},
"nopt": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz",
"resolved": "",
"integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=",
"dev": true,
"optional": true,
@ -21346,14 +21411,14 @@
},
"npm-bundled": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz",
"resolved": "",
"integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==",
"dev": true,
"optional": true
},
"npm-packlist": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.1.tgz",
"resolved": "",
"integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==",
"dev": true,
"optional": true,
@ -21364,7 +21429,7 @@
},
"npmlog": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
"resolved": "",
"integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
"dev": true,
"optional": true,
@ -21377,21 +21442,21 @@
},
"number-is-nan": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
"resolved": "",
"integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
"dev": true,
"optional": true
},
"object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"resolved": "",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
"dev": true,
"optional": true
},
"once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"resolved": "",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"dev": true,
"optional": true,
@ -21401,21 +21466,21 @@
},
"os-homedir": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
"resolved": "",
"integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
"dev": true,
"optional": true
},
"os-tmpdir": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
"resolved": "",
"integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
"dev": true,
"optional": true
},
"osenv": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
"resolved": "",
"integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
"dev": true,
"optional": true,
@ -21426,21 +21491,21 @@
},
"path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"resolved": "",
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
"dev": true,
"optional": true
},
"process-nextick-args": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
"resolved": "",
"integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==",
"dev": true,
"optional": true
},
"rc": {
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz",
"resolved": "",
"integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==",
"dev": true,
"optional": true,
@ -21453,7 +21518,7 @@
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"resolved": "",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"dev": true,
"optional": true,
@ -21469,7 +21534,7 @@
},
"rimraf": {
"version": "2.6.3",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
"resolved": "",
"integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
"dev": true,
"optional": true,
@ -21479,49 +21544,49 @@
},
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"resolved": "",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
"dev": true,
"optional": true
},
"safer-buffer": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
"resolved": "",
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
"dev": true,
"optional": true
},
"sax": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
"resolved": "",
"integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
"dev": true,
"optional": true
},
"semver": {
"version": "5.7.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz",
"resolved": "",
"integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==",
"dev": true,
"optional": true
},
"set-blocking": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
"resolved": "",
"integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
"dev": true,
"optional": true
},
"signal-exit": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
"resolved": "",
"integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
"dev": true,
"optional": true
},
"string-width": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
"resolved": "",
"integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
"dev": true,
"optional": true,
@ -21533,7 +21598,7 @@
},
"string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"resolved": "",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"dev": true,
"optional": true,
@ -21543,7 +21608,7 @@
},
"strip-ansi": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
"resolved": "",
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
"dev": true,
"optional": true,
@ -21553,21 +21618,21 @@
},
"strip-json-comments": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
"resolved": "",
"integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=",
"dev": true,
"optional": true
},
"util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
"resolved": "",
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
"dev": true,
"optional": true
},
"wide-align": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
"resolved": "",
"integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
"dev": true,
"optional": true,
@ -21577,7 +21642,7 @@
},
"wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"resolved": "",
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
"dev": true,
"optional": true
@ -22727,16 +22792,6 @@
"sha.js": "^2.4.8"
}
},
"create-react-class": {
"version": "15.6.3",
"resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.3.tgz",
"integrity": "sha512-M+/3Q6E6DLO6Yx3OwrWjwHBnvfXXYA7W+dFjt/ZDBemHO1DDZhsalX/NUtnTYclN6GfnBDRh4qRHjcDHmlJBJg==",
"requires": {
"fbjs": "^0.8.9",
"loose-envify": "^1.3.1",
"object-assign": "^4.1.1"
}
},
"create-react-context": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz",
@ -26443,6 +26498,11 @@
"resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
"integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc="
},
"fast-memoize": {
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/fast-memoize/-/fast-memoize-2.5.2.tgz",
"integrity": "sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw=="
},
"fast-safe-stringify": {
"version": "2.0.7",
"resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz",
@ -39007,9 +39067,12 @@
}
},
"re-resizable": {
"version": "4.11.0",
"resolved": "https://registry.npmjs.org/re-resizable/-/re-resizable-4.11.0.tgz",
"integrity": "sha512-dye+7rERqNf/6mDT1iwps+4Gf42420xuZgygF33uX178DxffqcyeuHbBuJ382FIcB5iP6mMZOhfW7kI0uXwb/Q=="
"version": "6.6.1",
"resolved": "https://registry.npmjs.org/re-resizable/-/re-resizable-6.6.1.tgz",
"integrity": "sha512-ttWVasZ9X7c0ir0+4YK47tkmm9EAFssW07YLkeLzG5HCOuFgFAlSVzMlzAH0h3i6hDShQCHHJecVx5rk+snoFA==",
"requires": {
"fast-memoize": "^2.5.1"
}
},
"react": {
"version": "16.13.1",
@ -39133,21 +39196,11 @@
}
},
"react-datetime": {
"version": "2.16.3",
"resolved": "https://registry.npmjs.org/react-datetime/-/react-datetime-2.16.3.tgz",
"integrity": "sha512-amWfb5iGEiyqjLmqCLlPpu2oN415jK8wX1qoTq7qn6EYiU7qQgbNHglww014PT4O/3G5eo/3kbJu/M/IxxTyGw==",
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/react-datetime/-/react-datetime-3.0.4.tgz",
"integrity": "sha512-v6MVwCve+DRaLN2f22LTO5TlrPpkUXumPkp1zfrbhaFtSYGl2grZ2JtwJfLxRj/T4ACyePAV4srCR6cMSiQ/Iw==",
"requires": {
"create-react-class": "^15.5.2",
"object-assign": "^3.0.0",
"prop-types": "^15.5.7",
"react-onclickoutside": "^6.5.0"
},
"dependencies": {
"object-assign": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz",
"integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I="
}
"prop-types": "^15.5.7"
}
},
"react-dev-utils": {
@ -40337,11 +40390,6 @@
"react-lifecycles-compat": "^3.0.4"
}
},
"react-onclickoutside": {
"version": "6.7.1",
"resolved": "https://registry.npmjs.org/react-onclickoutside/-/react-onclickoutside-6.7.1.tgz",
"integrity": "sha512-p84kBqGaMoa7VYT0vZ/aOYRfJB+gw34yjpda1Z5KeLflg70HipZOT+MXQenEhdkPAABuE2Astq4zEPdMqUQxcg=="
},
"react-overlays": {
"version": "0.9.2",
"resolved": "https://registry.npmjs.org/react-overlays/-/react-overlays-0.9.2.tgz",

View File

@ -61,7 +61,7 @@
"homepage": "https://superset.apache.org/",
"dependencies": {
"@babel/runtime-corejs3": "^7.8.4",
"@data-ui/sparkline": "^0.0.54",
"@data-ui/sparkline": "^0.0.84",
"@emotion/core": "^10.0.28",
"@superset-ui/chart-controls": "^0.15.3",
"@superset-ui/core": "^0.15.2",
@ -122,7 +122,7 @@
"omnibar": "^2.1.1",
"polished": "^3.6.5",
"prop-types": "^15.7.2",
"re-resizable": "^4.3.1",
"re-resizable": "^6.6.1",
"react": "^16.13.1",
"react-ace": "^5.10.0",
"react-avatar": "^3.9.7",
@ -131,7 +131,7 @@
"react-bootstrap-slider": "2.1.5",
"react-checkbox-tree": "^1.5.1",
"react-color": "^2.13.8",
"react-datetime": "^2.14.0",
"react-datetime": "^3.0.4",
"react-dnd": "^2.5.4",
"react-dnd-html5-backend": "^2.5.4",
"react-dom": "^16.13.0",
@ -149,7 +149,7 @@
"react-select-fast-filter-options": "^0.2.1",
"react-sortable-hoc": "^1.11.0",
"react-split": "^2.0.4",
"react-sticky": "^6.0.2",
"react-sticky": "^6.0.3",
"react-syntax-highlighter": "^13.5.3",
"react-table": "^7.2.1",
"react-transition-group": "^2.5.3",

View File

@ -53,7 +53,7 @@ describe('Header', () => {
fetchCharts: () => {},
saveFaveStar: () => {},
savePublished: () => {},
isPublished: () => {},
isPublished: false,
updateDashboardTitle: () => {},
editMode: false,
setEditMode: () => {},

View File

@ -17,7 +17,7 @@
* under the License.
*/
import React from 'react';
import Resizable from 're-resizable';
import { Resizable } from 're-resizable';
import { shallow } from 'enzyme';
import ResizableContainer from 'src/dashboard/components/resizable/ResizableContainer';

View File

@ -29,9 +29,9 @@ interface CRUDCollectionProps {
allowDeletes?: boolean;
collection: Array<object>;
columnLabels?: object;
emptyMessage: ReactNode;
expandFieldset: ReactNode;
extraButtons: ReactNode;
emptyMessage?: ReactNode;
expandFieldset?: ReactNode;
extraButtons?: ReactNode;
itemGenerator?: () => any;
itemRenderers?: ((
val: unknown,

View File

@ -30,7 +30,7 @@ import FormLabel from 'src/components/FormLabel';
import './crud.less';
const propTypes = {
value: PropTypes.any.isRequired,
value: PropTypes.any,
label: PropTypes.string.isRequired,
description: PropTypes.node,
fieldKey: PropTypes.string.isRequired,

View File

@ -25,8 +25,8 @@ import Field from './Field';
const propTypes = {
children: PropTypes.node.isRequired,
onChange: PropTypes.func.isRequired,
item: PropTypes.object.isRequired,
onChange: PropTypes.func,
item: PropTypes.object,
title: PropTypes.node,
compact: PropTypes.bool,
};

View File

@ -35,7 +35,7 @@ import AsyncSelect from '../../components/AsyncSelect';
const propTypes = {
actions: PropTypes.object.isRequired,
height: PropTypes.string.isRequired,
height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,
displayLimit: PropTypes.number.isRequired,
};

View File

@ -40,7 +40,7 @@ export type AddSliceContainerState = {
visType: string;
};
const styleSelectWidth = { width: 600 };
const styleSelectContainer = { width: 600, marginBottom: '10px' };
export default class AddSliceContainer extends React.PureComponent<
AddSliceContainerProps,
@ -96,27 +96,24 @@ export default class AddSliceContainer extends React.PureComponent<
<Panel.Body>
<div>
<p>{t('Choose a datasource')}</p>
<p>
<div style={styleSelectWidth}>
<Select
clearable={false}
ignoreAccents={false}
name="select-datasource"
onChange={this.changeDatasource}
options={this.props.datasources}
placeholder={t('Choose a datasource')}
style={styleSelectWidth}
value={
this.state.datasourceValue
? {
value: this.state.datasourceValue,
}
: undefined
}
width={600}
/>
</div>
</p>
<div style={styleSelectContainer}>
<Select
clearable={false}
ignoreAccents={false}
name="select-datasource"
onChange={this.changeDatasource}
options={this.props.datasources}
placeholder={t('Choose a datasource')}
value={
this.state.datasourceValue
? {
value: this.state.datasourceValue,
}
: undefined
}
width={600}
/>
</div>
<span className="text-muted">
{t(
'If the datasource you are looking for is not available in the list, follow the instructions on how to add it in the Superset tutorial.',

View File

@ -47,7 +47,7 @@ class BuilderComponentPane extends React.PureComponent {
renderTabs(height) {
const { isSticky } = this.props;
return (
<Tabs className="m-t-10 tabs-components">
<Tabs className="m-t-10 tabs-components" id="tabs">
<Tab eventKey={1} title={t('Components')}>
<NewTabs />
<NewRow />

View File

@ -18,7 +18,7 @@
*/
import React from 'react';
import PropTypes from 'prop-types';
import Resizable from 're-resizable';
import { Resizable } from 're-resizable';
import cx from 'classnames';
import ResizableHandle from './ResizableHandle';

View File

@ -68,7 +68,7 @@ export const slicePropShape = PropTypes.shape({
viz_type: PropTypes.string.isRequired,
description: PropTypes.string,
description_markeddown: PropTypes.string,
owners: PropTypes.arrayOf(PropTypes.string).isRequired,
owners: PropTypes.arrayOf(PropTypes.string),
});
export const filterIndicatorPropShape = PropTypes.shape({

View File

@ -121,12 +121,22 @@ function ColumnCollectionTable({
<Field
fieldKey="verbose_name"
label={t('Label')}
control={<TextControl placeholder={t('Label')} />}
control={
<TextControl
controlId="verbose_name"
placeholder={t('Label')}
/>
}
/>
<Field
fieldKey="description"
label={t('Description')}
control={<TextControl placeholder={t('Description')} />}
control={
<TextControl
controlId="description"
placeholder={t('Description')}
/>
}
/>
{allowEditDataType && (
<Field
@ -162,7 +172,12 @@ function ColumnCollectionTable({
database/column name level via the extra parameter.`)}
</div>
}
control={<TextControl placeholder="%y/%m/%d" />}
control={
<TextControl
controlId="python_date_format"
placeholder="%y/%m/%d"
/>
}
/>
</Fieldset>
</FormContainer>
@ -492,7 +507,7 @@ class DatasourceEditor extends React.PureComponent {
description={t(
'Default URL to redirect to when accessing from the dataset list page',
)}
control={<TextControl />}
control={<TextControl controlId="default_endpoint" />}
/>
<Field
fieldKey="filter_select_enabled"
@ -511,7 +526,7 @@ class DatasourceEditor extends React.PureComponent {
'values from the table. Typically the intent would be to limit the scan ' +
'by applying a relative time filter on a partitioned or indexed time-related field.',
)}
control={<TextControl />}
control={<TextControl controlId="fetch_values_predicate" />}
/>
)}
<Field
@ -576,12 +591,12 @@ class DatasourceEditor extends React.PureComponent {
description={t(
'The duration of time in seconds before the cache is invalidated',
)}
control={<TextControl />}
control={<TextControl controlId="cache_timeout" />}
/>
<Field
fieldKey="offset"
label={t('Hours offset')}
control={<TextControl />}
control={<TextControl controlId="offset" />}
/>
{this.state.isSqla && (
<Field
@ -590,7 +605,7 @@ class DatasourceEditor extends React.PureComponent {
description={t(
'A set of parameters that become available in the query using Jinja templating syntax',
)}
control={<TextControl />}
control={<TextControl controlId="template_params" />}
/>
)}
</Fieldset>
@ -658,17 +673,24 @@ class DatasourceEditor extends React.PureComponent {
<Field
fieldKey="verbose_name"
label={t('Label')}
control={<TextControl />}
control={<TextControl controlId="verbose_name" />}
/>
<Field
fieldKey="description"
label={t('Description')}
control={<TextControl placeholder={t('Description')} />}
control={
<TextControl
controlId="description"
placeholder={t('Description')}
/>
}
/>
<Field
fieldKey="d3format"
label={t('D3 Format')}
control={<TextControl placeholder="%y/%m/%d" />}
control={
<TextControl controlId="d3format" placeholder="%y/%m/%d" />
}
/>
<Field
label={t('Warning Message')}
@ -676,7 +698,12 @@ class DatasourceEditor extends React.PureComponent {
description={t(
'Warning message to display in the metric selector',
)}
control={<TextControl placeholder={t('Warning Message')} />}
control={
<TextControl
controlId="warning_text"
placeholder={t('Warning Message')}
/>
}
/>
<Field
label={t('Certified By')}
@ -684,14 +711,22 @@ class DatasourceEditor extends React.PureComponent {
description={t(
'Person or group that has certified this metric',
)}
control={<TextControl placeholder={t('Certified By')} />}
control={
<TextControl
controlId="certified_by"
placeholder={t('Certified By')}
/>
}
/>
<Field
label={t('Certification Details')}
fieldKey="certification_details"
description={t('Details of the certification')}
control={
<TextControl placeholder={t('Certification Details')} />
<TextControl
controlId="certification_details"
placeholder={t('Certification Details')}
/>
}
/>
</Fieldset>

View File

@ -22,19 +22,35 @@ import { legacyValidateNumber, legacyValidateInteger } from '@superset-ui/core';
import ControlHeader from '../ControlHeader';
interface TextControlProps {
disabled: boolean;
isFloat: boolean;
isInt: boolean;
onChange: (value: any, errors: any) => {};
onFocus: () => {};
placeholder: string;
value: string | number;
disabled?: boolean;
isFloat?: boolean;
isInt?: boolean;
onChange?: (value: any, errors: any) => {};
onFocus?: () => {};
placeholder?: string;
value?: string | number;
controlId?: string;
}
export default class TextControl extends React.Component<TextControlProps> {
interface TextControlState {
controlId: string;
}
const generateControlId = (controlId?: string) =>
`formInlineName_${controlId ?? (Math.random() * 1000000).toFixed()}`;
export default class TextControl extends React.Component<
TextControlProps,
TextControlState
> {
constructor(props: TextControlProps) {
super(props);
this.onChange = this.onChange.bind(this);
// if there's no control id provided, generate a random
// number to prevent rendering elements with same ids
this.state = {
controlId: generateControlId(props.controlId),
};
}
onChange(event: any) {
@ -47,7 +63,7 @@ export default class TextControl extends React.Component<TextControlProps> {
if (error) {
errors.push(error);
} else {
value = value.match(/.*(\.|0)$/g) ? value : parseFloat(value);
value = value.match(/.*([.0])$/g) ? value : parseFloat(value);
}
}
if (value !== '' && this.props.isInt) {
@ -58,7 +74,7 @@ export default class TextControl extends React.Component<TextControlProps> {
value = parseInt(value, 10);
}
}
this.props.onChange(value, errors);
this.props.onChange?.(value, errors);
}
render() {
@ -67,10 +83,11 @@ export default class TextControl extends React.Component<TextControlProps> {
typeof rawValue !== 'undefined' && rawValue !== null
? rawValue.toString()
: '';
return (
<div>
<ControlHeader {...this.props} />
<FormGroup controlId="formInlineName" bsSize="small">
<FormGroup controlId={this.state.controlId} bsSize="small">
<FormControl
type="text"
placeholder={this.props.placeholder}

View File

@ -38,7 +38,7 @@ const propTypes = {
colType: PropTypes.string,
width: PropTypes.string,
height: PropTypes.string,
timeLag: PropTypes.string,
timeLag: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
timeRatio: PropTypes.string,
comparisonType: PropTypes.string,
showYAxis: PropTypes.bool,