diff --git a/draftlogs/6928_fix.md b/draftlogs/6928_fix.md new file mode 100644 index 00000000000..33190e0b925 --- /dev/null +++ b/draftlogs/6928_fix.md @@ -0,0 +1,2 @@ + - Fix scattergl rendering when colors include capital letters [[#6928](https://github.com/plotly/plotly.js/pull/6928)], + with thanks to @28raining and @dy for the contribution! diff --git a/package-lock.json b/package-lock.json index 687a9b65d21..7c03e768026 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ "canvas-fit": "^1.5.0", "color-alpha": "1.0.4", "color-normalize": "1.5.0", - "color-parse": "1.3.8", + "color-parse": "2.0.0", "color-rgba": "2.1.1", "country-regex": "^1.1.0", "d3-force": "^1.2.1", @@ -4070,6 +4070,14 @@ "color-parse": "^1.3.8" } }, + "node_modules/color-alpha/node_modules/color-parse": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.3.tgz", + "integrity": "sha512-BADfVl/FHkQkyo8sRBwMYBqemqsgnu7JZAwUgvBvuwwuNUZAhSvLTbsEErS5bQXzOjDR0dWzJ4vXN2Q+QoPx0A==", + "dependencies": { + "color-name": "^1.0.0" + } + }, "node_modules/color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", @@ -4109,13 +4117,11 @@ } }, "node_modules/color-parse": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.3.8.tgz", - "integrity": "sha512-1Y79qFv0n1xair3lNMTNeoFvmc3nirMVBij24zbs1f13+7fPpQClMg5b4AuKXLt3szj7BRlHMCXHplkce6XlmA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-2.0.0.tgz", + "integrity": "sha512-g2Z+QnWsdHLppAbrpcFWo629kLOnOPtpxYV69GCqm92gqSgyXbzlfyN3MXs0412fPBkFmiuS+rXposgBgBa6Kg==", "dependencies": { - "color-name": "^1.0.0", - "defined": "^1.0.0", - "is-plain-obj": "^1.1.0" + "color-name": "^1.0.0" } }, "node_modules/color-rgba": { @@ -4128,6 +4134,14 @@ "color-space": "^1.14.6" } }, + "node_modules/color-rgba/node_modules/color-parse": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.3.tgz", + "integrity": "sha512-BADfVl/FHkQkyo8sRBwMYBqemqsgnu7JZAwUgvBvuwwuNUZAhSvLTbsEErS5bQXzOjDR0dWzJ4vXN2Q+QoPx0A==", + "dependencies": { + "color-name": "^1.0.0" + } + }, "node_modules/color-space": { "version": "1.16.0", "resolved": "https://registry.npmjs.org/color-space/-/color-space-1.16.0.tgz", @@ -16188,6 +16202,16 @@ "integrity": "sha512-lr8/t5NPozTSqli+duAN+x+no/2WaKTeWvxhHGN+aXT6AJ8vPlzLa7UriyjWak0pSC2jHol9JgjBYnnHsGha9A==", "requires": { "color-parse": "^1.3.8" + }, + "dependencies": { + "color-parse": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.3.tgz", + "integrity": "sha512-BADfVl/FHkQkyo8sRBwMYBqemqsgnu7JZAwUgvBvuwwuNUZAhSvLTbsEErS5bQXzOjDR0dWzJ4vXN2Q+QoPx0A==", + "requires": { + "color-name": "^1.0.0" + } + } } }, "color-convert": { @@ -16231,13 +16255,11 @@ } }, "color-parse": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.3.8.tgz", - "integrity": "sha512-1Y79qFv0n1xair3lNMTNeoFvmc3nirMVBij24zbs1f13+7fPpQClMg5b4AuKXLt3szj7BRlHMCXHplkce6XlmA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-2.0.0.tgz", + "integrity": "sha512-g2Z+QnWsdHLppAbrpcFWo629kLOnOPtpxYV69GCqm92gqSgyXbzlfyN3MXs0412fPBkFmiuS+rXposgBgBa6Kg==", "requires": { - "color-name": "^1.0.0", - "defined": "^1.0.0", - "is-plain-obj": "^1.1.0" + "color-name": "^1.0.0" } }, "color-rgba": { @@ -16248,6 +16270,16 @@ "clamp": "^1.0.1", "color-parse": "^1.3.8", "color-space": "^1.14.6" + }, + "dependencies": { + "color-parse": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/color-parse/-/color-parse-1.4.3.tgz", + "integrity": "sha512-BADfVl/FHkQkyo8sRBwMYBqemqsgnu7JZAwUgvBvuwwuNUZAhSvLTbsEErS5bQXzOjDR0dWzJ4vXN2Q+QoPx0A==", + "requires": { + "color-name": "^1.0.0" + } + } } }, "color-space": { diff --git a/package.json b/package.json index a5c2aba0e75..b0f825bb6ff 100644 --- a/package.json +++ b/package.json @@ -82,7 +82,7 @@ "canvas-fit": "^1.5.0", "color-alpha": "1.0.4", "color-normalize": "1.5.0", - "color-parse": "1.3.8", + "color-parse": "2.0.0", "color-rgba": "2.1.1", "country-regex": "^1.1.0", "d3-force": "^1.2.1", diff --git a/test/image/baselines/zz-gl2d-case-insenstive-colors.png b/test/image/baselines/zz-gl2d-case-insenstive-colors.png new file mode 100644 index 00000000000..8577cf027d5 Binary files /dev/null and b/test/image/baselines/zz-gl2d-case-insenstive-colors.png differ diff --git a/test/image/mocks/zz-gl2d-case-insenstive-colors.json b/test/image/mocks/zz-gl2d-case-insenstive-colors.json new file mode 100644 index 00000000000..1c7122d2fa5 --- /dev/null +++ b/test/image/mocks/zz-gl2d-case-insenstive-colors.json @@ -0,0 +1,52 @@ +{ + "data": [ + { + "type": "scatter", + "name": "svg - `RED`", + "x": [ + 1, + 2, + 3, + 4 + ], + "y": [ + 10, + 15, + 13, + 17 + ], + "mode": "markers", + "marker": { + "color": "RED", + "size": 12 + } + }, + { + "type": "scattergl", + "name": "GL - `BLUE`", + "x": [ + 1, + 2, + 3, + 4 + ], + "y": [ + 9, + 14, + 12, + 16 + ], + "mode": "markers", + "marker": { + "color": "BLUE", + "size": 12 + } + } + ], + "layout": { + "title": { + "text": "ScatterGL named-colors should be case-insensitive" + }, + "showlegend": true + } +}