Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V1.1.0 #54

Merged
merged 102 commits into from
Jul 18, 2024
Merged

V1.1.0 #54

merged 102 commits into from
Jul 18, 2024

Conversation

robxbob
Copy link
Collaborator

@robxbob robxbob commented Jul 18, 2024

General

  • @tanstack/store -> zustand due to @tanstack/store being in beta still (v0)
  • StoreProviders now do most of the heavy lifting in terms of setting up the internal store
  • hooks for internal store is renamed from use[Component] to use[Component]Store

Models

Conveyor:

  • The features that the Conveyor component provided for the ConveyorAdmin repo has been moved to the ConveyorAdmin component.
  • Conveyor in this repo acts as a global store to add special overriding/customizing capabilities over Model components:
    • inputOptions/valueOptions: Allows for display input overriding based off of field types. This allows for a developer to make quick changes for specific field types such as Model types or any of the Scalar types so that expanding Model components is not needed. Customizing by component expansion over rules this option.
    • Example: Suppose you have 20 ModelIndex's where all String type fields need to have specific padding or margins. Instead of having to expand each table just to add a padding/margin, a developer can wrap the 20 tables with the Conveyor component and specify the inputOptions/valueOptions props to make those changes. Also, Conveyor can be placed within itself to stylize a subset of the 20 tables to have a different style/feature/component.

ModelIndex:

  • When focused on an input in edit mode, the Escape key can be pressed to go back to display mode.
  • onOpenFieldSelect prop removed due to it providing a too fine-grained solution to overriding Model select input fields.
    • Assumes that users want to create options for select when the onOpenSelect event is fired.
    • Feels restrictive in the sense that the special select input provided is expected to be used instead of overriding the actual field through expansion with a custom select input.
    • The Model type field cell as a whole can now be modified by replacing the Model inputOption in the new Conveyor component.

Commons

Slots:

  • slotOrder prop renamed to slotKeys for better distinction
  • Internal slot management changed to be more efficient and clear.

Form:

  • The ModelFormInput, ModelFormValue components from ModelForm have been abstracted away from Conveyor to be used as a common component that can be used outside the scope of Conveyor.
  • All components under Form is just an implementation of react-hook-form to fit the styling/conventions of Conveyor for consistency.
  • Everything related to react-hook-form can be found under Form to make it easier to replace if needed in the future.

robxbob added 30 commits May 24, 2024 03:08
…d once in its lifecycle and useEffect efficiently replaces the store state on prop change
…ore access to react-hook-form's validators; removed scrollable area since devs has no way to customize without expanding, if expanding, might as well put their own custom scroll area; ModelIndexRow now accepts form props
robxbob and others added 28 commits July 3, 2024 17:04
@itechify itechify merged commit a0f905c into main Jul 18, 2024
1 check passed
@itechify itechify deleted the v2 branch July 18, 2024 17:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants