Closed sivangbagri closed 3 weeks ago
This PR implements a new RO-Crate Dataset entity component using LitElement. The component provides a tabbed interface for managing dataset metadata, including basic information, related entities, and structure. It features dynamic form handling with field validation and conditional rendering based on user input.
classDiagram
class ECCClientRoCrateAbout {
- activeTab: number
- AboutFields: Field[]
+ render() void
+ _switchTab(index: number) void
+ _handleDataset(e: CustomEvent) void
}
class Field {
+ key: string
+ label: string
+ type: string
+ fieldOptions: object
+ arrayOptions: object
+ groupOptions: object
+ children: Field[]
}
ECCClientRoCrateAbout --> Field
note for ECCClientRoCrateAbout "This class represents a LitElement component for managing RO-Crate Dataset metadata with a tabbed interface."
Change | Details | Files |
---|---|---|
Implementation of the main Dataset entity component with tabbed interface |
|
packages/ecc-client-elixir-ro-crate/src/components/about/about.ts |
Form field definitions and dynamic form handling |
|
packages/ecc-client-elixir-ro-crate/src/components/about/about.ts |
Component demo and integration setup |
|
packages/ecc-client-elixir-ro-crate/demo/about/index.html packages/ecc-client-elixir-ro-crate/demo/index.html packages/ecc-client-elixir-ro-crate/src/components/about/index.ts |
The latest updates on your projects. Learn more about Vercel for Git ↗︎
Name | Status | Preview | Comments | Updated (UTC) |
---|---|---|---|---|
elixir-cloud-components | ✅ Ready (Inspect) | Visit Preview | 💬 Add feedback | Nov 1, 2024 2:46pm |
Latest commit: 948a721bbb82c964af788f726a017c607a1bd376
Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.
Click here to learn what changesets are, and how to add one.
Click here if you're a maintainer who wants to add a changeset to this PR
Great work @sivangbagri, just a few things:
Is this tool geared toward a specific type of RO-Crates like Workflow Run RO-Crates? or is it more generic with more options for users that want to create something more specifc.
The fields for the entities on the "Related People, Orgs & Works" tab don't correspond to the required fields for those entities, can you please cite the resource you used to get those fields, incase I am missing something.
I think the layout needs to be changed, I think the tabs should correspond to the entity names or at least entities that can be grouped together. For example, the about tab should be the Dataset Entity
tab, we can also have one for the metadata (that can be added in a separate PR).
The type field for the Dataset Entity
should not be modifiable, you can actually get rid of that field and set that field programmatically, as the value MUST be "Dataset".
Hii @salihu Thanks for your review. 1) Currently I am keeping it as simple RO-Crate dataset with basic elements but obviously it can be improved in future to meet any particular requirement. 2) Thats a todo thing actually, they are not the final fields. Will work on that separately. 3) Yeah I will improve that . 👍🏻 4) Yeah we can do that as root entity must be dataset only, I kept it for consistency and user awareness.
@SalihuDickson Kindly checkout the new PR
I'll review the other PR ASAP, however this one is just about ready to merge, if you can just take out the type field, and change the tab name to Dataset Entity
.
Also please resolve conflicts with main.
Hey, Shivang. This looks good so far. I made some changes to the logic handling the conditional license fields. The former logic was pretty convoluted and would break under certain conditions.
then about the type
field. Perhaps removing it completely could cause some confusion and make the user believe there's no type
property. I am going to write an issue requesting support for readonly fields in the form component, we can then use that to signify that there is a type field present but it is uneditable.
Description
Dedicated PR for RO-Crate Dataset entity
Checklist
Comments
Summary by Sourcery
Add a new RO-Crate Dataset entity component to the ecc-client-elixir-ro-crate package, featuring a tabbed interface for managing dataset metadata, related entities, and structure. Include demo HTML files to demonstrate component usage.
New Features:
Enhancements:
Documentation: