Add generic form-field editing support
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 25/100
- Issue 类型
- 功能
- 描述清晰度
- 需要澄清
- 活跃度
- 活跃
- 技术栈
- javascript
- 领域
- frontend
调研方向
等待 Issue #84,然后先阅读其公开的 field/widget model、命名方式和兼容性决策。使用这些决策定义共享的 editor 行为和公开 API,并通过 unit 和 browser-level 测试覆盖多个 widget、分离的 field 与 widget 属性以及通用 overlay。完成的标准是:无需实现单独的 field 类型或 PDF/signing workflow,即可复用该基础。
由索引模型根据 Issue 内容生成。
描述
This issue tracks the next editor-level step for form fields in pdf-elements.
The goal is to add generic form-field editing behavior after the public field/widget model is defined.
This issue is blocked by #84. The implementation details and final scope must follow the data model, naming and compatibility decisions made there.
Expected direction
After #84 is completed, this issue should provide the common editor behavior needed by future field types, such as:
- create and place a field widget;
- select a field or widget;
- move and resize widgets;
- edit shared field properties;
- edit widget-specific properties;
- support values, required/read-only state and options where applicable;
- keep one logical field connected to one or more widgets;
- expose behavior through the public API without depending on internal Vue state.
The implementation should remain generic to a Vue 3 PDF editor and must not introduce LibreSign or Nextcloud workflow concepts.
Out of scope
Do not use this issue to implement every field type.
Specific behavior for text fields, checkboxes, radio groups, dropdowns and other controls should be added only after the generic editing foundation is stable.
PDF AcroForm parsing, PDF writing and signing are also outside the scope of this package.
Acceptance criteria
The final acceptance criteria should be refined after #84 is completed.
At minimum, the implementation should:
- follow the public field/widget model defined in #84;
- provide common editing behavior that can be reused by different field types;
- support multiple widgets for the same logical field;
- keep field-level and widget-level properties clearly separated;
- remain compatible with generic non-form overlay use cases;
- include unit and browser-level tests for the shared behavior;
- avoid LibreSign- or Nextcloud-specific domain concepts.
Dependency
Blocked by #84.
Do not start implementation until the model and public API decisions from #84 are available.
Additional context
- If you have questions, feel free to ask in this issue.
- Give a ⭐️ to pdf-elements if you find the package useful.
- You can also support the project by giving a ⭐️ to LibreSign.
- 主要语言
- Vue
- 星标
- 4
- 派生
- 3
- 平均合并
- 13 小时 37 分钟
- 30 天内合并 PR
- 60
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
LibreSign/pdf-elements 的其他 Issue
-
enhancement
难度 5/5 一周以上 新手友好度 38/100
LibreSign/pdf-elements#84 ·
维护者通常 1 天内回复
查看 LibreSign/pdf-elements 的全部 Issue
相似的 Issue
-
Table: Space fires onActivate in single-selection mode — the reference doc and the JSDoc disagree未关闭
难度 2/5 1-3 小时 新手友好度 68/100
sidorares/react-x11-components#764 ·
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 88/100
jspreadsheet/ce#1809 ·
-
难度 2/5 1-3 小时 新手友好度 76/100
backnotprop/plannotator#1840 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 65/100
维护者通常 1 天内回复
-
bug: directory index route root priority is overwritten when wildcard is false可能已有人在做 @TalhaHunter101 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 84/100
fastify/fastify-static#617 ·