[CHORE]: Update modebar button names to be more accurate/consistent
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 48/100
- Loại issue
- Tái cấu trúc
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- javascript
- Lĩnh vực
- data-visualization
Hướng nghiên cứu
Bắt đầu từ src/components/modebar/buttons.js và src/components/modebar/constants.js để lần theo cách tên nút và các giá trị _cat trở thành các bí danh loại bỏ. Cập nhật các tên và danh mục modebar được liệt kê, sau đó chạy npm run schema và xác minh rằng test/plot-schema.json, src/types/generated/schema.d.ts và src/types/core/layout.d.ts phản ánh các thay đổi của API công khai.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Description
Update existing modebar button/group names to be more accurate/consistent.
Three related inconsistencies in how modebar buttons are named:
resetViewSankeyreports a differentnamethan its key. It is registered asmodeBarButtons.resetViewSankeybut carriesname: 'resetSankeyGroup'- the only mismatch among the 37 buttons. Removing it therefore requiresmodeBarButtonsToRemove: ['resetSankeyGroup'], whileconfig.modeBarButtonsgroups use'resetViewSankey'._cat: 'reset'matches onlyresetGeo. It reads like a category but leavesresetViews,resetScale2d,resetViewMap, and the sankey reset in place._cat: 'resetView'matches onlyresetViewMap, so it misses the sankey reset despite the name suggesting otherwise.
All of these strings are advertised in the layout.modebar.remove enumeration (48 entries), so they are public API.
Why should this change be made?
Users reasonably expect a button's removal string to match its key, and a category alias to cover a family. Today remove: 'reset' and remove: 'resetView' silently no-op on most reset buttons, and the sankey button can only be removed by a name that appears
nowhere else. Compare the aliases that do behave as categories: zoom (2 buttons), pan (2), zoomin / zoomout (3 each), hoverclosest (4).
Scope
src/components/modebar/buttons.js-nameonresetViewSankey, and the_catvalues forreset/resetView.src/components/modebar/constants.jsbuildsforeButtonsfromname+_cat, so any change regenerates the schema enumeration (npm run schema, committingtest/plot-schema.jsonandsrc/types/generated/schema.d.ts).src/types/core/layout.d.ts-ModeBarDefaultButtonscurrently lists bothresetViewSankeyandresetSankeyGroup
Notes
- All of these changes are breaking
- Nothing is wrong with the current code, but it can be confusing
_catcasing is inconsistent (hoverCompare,resetCameraDefault,resetViewvshoverclosest,zoomin,autoscale) and should be addressed at the same time (though it's only cosmetic)- Every item breaks working code - renaming the sankey
nameinvalidatesmodeBarButtonsToRemove: ['resetSankeyGroup'], and widening the_cataliases makes existingremovecalls take out more buttons. So this belongs in a major release; v4 is the window if it's wanted at all. Separately,_catcasing is inconsistent (hoverCompare,resetCameraDefault,resetViewvshoverclosest,zoomin,autoscale) - cosmetic only, since matching lowercases both sides.
- Ngôn ngữ chính
- JavaScript
- Star
- 18.3k
- Fork
- 2k
- Merge trung bình
- 2 ngày 12 giờ
- Pull request đã merge (30 ngày)
- 28
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của plotly/plotly.js
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
-
chore P1 plotly-internal size: 1 task
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 82/100
-
chore P3 plotly-internal size: 1 task
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
-
bug infrastructure P2
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 65/100
Tất cả issue của plotly/plotly.js
Issue tương tự
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
avniproject/avni-client#2135 ·
-
automated broken-link
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
-
agent/security hive/hosted-available-lke648397-260827-5n31 security
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
babalae/bettergi-scripts-list#3674 ·
-
A-Release-Notes C-Editing D-Modest S-Ready-For-Implementation
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
bevyengine/bevy-website#2595 ·