code-corps / code-corps/code-corps-ember
Extract project join status from project-card component into a separate component
- 主要语言
- JavaScript
- 星标
- 120
- 派生
- 75
- PR 合并指标
- 30 天内没有已合并 PR
描述
# Problem
The logic for the project status/join button in the project card template is highly complex. We could simplify it by extracting a part.
The following code:
```handlebars
{{#if currentProjectMembership.isLoaded}}
{{#if (eq currentProjectMembership.role 'pending')}}
Request sent
{{else}}
Member
{{/if}}
{{/if}}
{{#unless currentProjectMembership}}
{{project-join-modal project=project skills=projectSkills}}
{{/unless}}
```
should be replaced with the equivalent of:
```handlebars
{{#if currentProjectMembership}}
{{membership-status membership=currentProjectMembership}}
{{else}}
{{project-join-modal project=project skills=projectSkills}}
{{/if}}
```
## Subtasks
- [ ] Implement component
- Write integration tests for component
- [ ] If current project membership is loading, it renders nothing
- [ ] If current project membership is loaded and role is pending, it renders the "Request sent" button
- [ ] If current project membership is loaded and role is something else, it renders the "Member" button
- [ ] A page-object should be written for these tests
- [ ] Replace code with component
- Add integration tests for project card component
- [ ] If there is a current project membership, it renders the project-membership-subcomponent
- [ ] If there is no current project membership, it renders the project-join-modal subcomponent
- [ ] The project-card page object will need to be expanded with two new properties for this
贡献指南
评估
这个 Issue 还没有评估数据。