Skip to content

fix(charts): modify isSafeUrl utility#35963

Open
mainframev wants to merge 1 commit intomicrosoft:masterfrom
mainframev:fix/charts-safe-url-allow-list
Open

fix(charts): modify isSafeUrl utility#35963
mainframev wants to merge 1 commit intomicrosoft:masterfrom
mainframev:fix/charts-safe-url-allow-list

Conversation

@mainframev
Copy link
Copy Markdown
Contributor

Updates the isSafeUrl utility function in both the react-charting and react-charts/library packages to allow additional URL protocols (mailto:, tel:, and ftp:), and updates the related unit tests to reflect these changes.

@mainframev mainframev self-assigned this Apr 8, 2026
@mainframev mainframev requested a review from a team as a code owner April 8, 2026 13:26
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 8, 2026

📊 Bundle size report

Package & Exports Baseline (minified/GZIP) PR Change
react-charting
DeclarativeChart
677.039 kB
191.279 kB
677.056 kB
191.292 kB
17 B
13 B
react-charting
DonutChart
203.503 kB
63.649 kB
203.52 kB
63.663 kB
17 B
14 B
react-charting
GroupedVerticalBarChart
294.547 kB
91.782 kB
294.564 kB
91.795 kB
17 B
13 B
react-charting
MultiStackedBarChart
181.737 kB
55.262 kB
181.754 kB
55.275 kB
17 B
13 B
react-charting
StackedBarChart
175.418 kB
52.858 kB
175.435 kB
52.872 kB
17 B
14 B
react-charting
VerticalStackedBarChart
300.577 kB
92.782 kB
300.594 kB
92.797 kB
17 B
15 B
react-charts
DeclarativeChart
763.178 kB
220.492 kB
763.195 kB
220.506 kB
17 B
14 B
react-charts
VerticalStackedBarChart
409.439 kB
124.042 kB
409.456 kB
124.056 kB
17 B
14 B
Unchanged fixtures
Package & Exports Size (minified/GZIP)
react-charting
AreaChart
302.827 kB
94.751 kB
react-charting
ChartHoverCard
37.196 kB
12.7 kB
react-charting
GanttChart
282.797 kB
88.761 kB
react-charting
GaugeChart
197.055 kB
61.221 kB
react-charting
HeatMapChart
285.643 kB
89.439 kB
react-charting
HorizontalBarChart
127.266 kB
39.944 kB
react-charting
HorizontalBarChartWithAxis
293.937 kB
91.167 kB
react-charting
Legends
151.485 kB
46.4 kB
react-charting
LineChart
332.438 kB
101.79 kB
react-charting
PieChart
134.305 kB
42.299 kB
react-charting
PolarChart
235.153 kB
74.294 kB
react-charting
SankeyChart
158.002 kB
49.166 kB
react-charting
ScatterChart
289.004 kB
91.071 kB
react-charting
Sparkline
87.616 kB
29.671 kB
react-charting
TreeChart
84.809 kB
26.636 kB
react-charting
VerticalBarChart
303.589 kB
93.173 kB
react-charts
AreaChart
412.454 kB
126.449 kB
react-charts
DonutChart
322.883 kB
97.008 kB
react-charts
FunnelChart
314.436 kB
94.065 kB
react-charts
GanttChart
395.573 kB
119.965 kB
react-charts
GaugeChart
322.314 kB
96.46 kB
react-charts
GroupedVerticalBarChart
403.443 kB
122.537 kB
react-charts
HeatMapChart
397.644 kB
121.826 kB
react-charts
HorizontalBarChart
302.61 kB
89.151 kB
react-charts
HorizontalBarChartWithAxis
63 B
83 B
react-charts
Legends
242.551 kB
71.624 kB
react-charts
LineChart
423.795 kB
128.511 kB
react-charts
PolarChart
351.496 kB
107.404 kB
react-charts
SankeyChart
220.386 kB
67.867 kB
react-charts
ScatterChart
403.17 kB
122.639 kB
react-charts
Sparkline
91.393 kB
28.708 kB
react-charts
VerticalBarChart
439.914 kB
128.239 kB
🤖 This report was generated against f1902b44b70e3e59643d0e152253a82ffd0dd2b0

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 8, 2026

Pull request demo site: URL

@@ -1564,8 +1564,16 @@ describe('isSafeUrl', () => {
expect(utils.isSafeUrl('file:///etc/passwd')).toBe(false);
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🕵🏾‍♀️ visual changes to review in the Visual Change Report

vr-tests-react-components/Avatar Converged 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Avatar Converged.badgeMask - RTL.normal.chromium.png 6 Changed
vr-tests-react-components/Charts-DonutChart 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Charts-DonutChart.Dynamic - Dark Mode.default.chromium.png 7530 Changed
vr-tests-react-components/Charts-DonutChart.Dynamic - RTL.default.chromium.png 5570 Changed
vr-tests-react-components/Menu Converged - submenuIndicator slotted content 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Menu Converged - submenuIndicator slotted content.default - RTL.submenus open.chromium.png 404 Changed
vr-tests-react-components/Menu Converged - submenuIndicator slotted content.default.submenus open.chromium.png 413 Changed
vr-tests-react-components/Positioning 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Positioning.Positioning end.updated 2 times.chromium.png 196 Changed
vr-tests-react-components/Positioning.Positioning end.chromium.png 512 Changed
vr-tests-react-components/ProgressBar converged 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/ProgressBar converged.Indeterminate + thickness - High Contrast.default.chromium.png 74 Changed
vr-tests-react-components/ProgressBar converged.Indeterminate + thickness.default.chromium.png 96 Changed
vr-tests-react-components/TagPicker 4 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/TagPicker.disabled - High Contrast.disabled input hover.chromium.png 1319 Changed
vr-tests-react-components/TagPicker.disabled - Dark Mode.disabled input hover.chromium.png 658 Changed
vr-tests-react-components/TagPicker.disabled - RTL.disabled input hover.chromium.png 635 Changed
vr-tests-react-components/TagPicker.disabled.chromium.png 677 Changed
vr-tests/Coachmark 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests/Coachmark.Collapsed.default.chromium.png 159 Changed
vr-tests/react-charting-LineChart 3 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests/react-charting-LineChart.Multiple - Dark Mode.default.chromium.png 181 Changed
vr-tests/react-charting-LineChart.Multiple - RTL.default.chromium.png 200 Changed
vr-tests/react-charting-LineChart.Multiple.default.chromium.png 192 Changed

There were 4 duplicate changes discarded. Check the build logs for more information.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants