Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Sharing Pane: Developers Notes for redesign (code in solid-ui now)

未关闭
#683 4 条评论 0 个 reaction 已指派 1 人 在 GitHub 查看

@SharonStrats 已经在做这个了。

开始于 2026年6月1日。

评估

这个 Issue 还没有评估数据。

描述

documentation

Wanted to document my findings and some ideas/notes on redesign work and how we could go about it, what we might be able to reuse etc.

Current Design Structure

Overview

Currently the sharingPane in solid-panes is only a wrapper for the function ACLControlBox5 this as well is basically a wrapper for the AccessControler. The groups such as Viewers, Editors, etc are defined and rendered by the AccessGroups render function. There is then the 'Add + Button' where you can select access recipients/agents. These are dragged/dropped onto the access groups and automatically saved.

Data

Set and Remove default permissions
The following are used for the buttons that appear at the bottom under the Add + button and/or the agent list. It's based on whether the using default acl flag is true or false. If true then you get the button to set the acl for the resource, if false you get the button to remove the acl for the resource.

  • add ACLs which creates a specific ACL for the current resource by copying the inherited default ACL into the target ACL document.
  • remove ACLs which deletes the custom ACL file for this resource and go back to inherited default sharing

Using the Add button

  • add a new URI which adds this new agent as a Viewer, then saves the ACL. Not drag and drop.
  • dropped handlers when the user drags and drops on a group.
  • delete Agent which removes one existing recipient/agent from one specific access combo, then saves the ACL.

New Design Potential Structure

Based on the review of the current sharingPane implementation, it does not look practical to reuse the existing ACL code directly in a new dialog.

The main issue is that the current read/write ACL logic is tightly coupled to the existing UI classes in solid-ui, in the ACL UI components the access controller and access groups. Because of that, the current code is not structured as a reusable data layer that a new dialog could call cleanly.

The best path is likely to use the existing code as reference and extract a new ACL data module that handles loading, mutating, and saving permissions independently from the UI.

Potential Options
Keep the new dialog near sharingPane, extract the data layer into solid-ui
  • Create the new dialog UI under the existing sharing area so it stays close to the current feature surface.
  • Keep the current sharingPane in place as-is for now, or optionally move it into a legacy location later if we want to make the old implementation status more explicit.
  • At the same time, build a reusable ACL data module in solid-ui.
Put both the new dialog and the data module in solid-ui
  • place the dialog UI under the existing widgets area
  • place the reusable ACL data module under the existing acl area

Futher acl permission api research

  • solid-contrib there is just an archived solid-permissions and it says to use solid/acl-check which only checks the resource not read and write. Both are very old and solid-permissions is archived.
主要语言
HTML
星标
106
派生
52
平均合并
8 分钟
30 天内合并 PR
2

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

SolidOS/solid-panes 的其他 Issue

查看 SolidOS/solid-panes 的全部 Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。