Open
Conversation
Moved validation and session alert markup into a new Blade component (x-form.alerts) for reuse. Updated inputform_person.blade.php to use the new component, reducing code duplication and improving maintainability.
Replaced inline error and success message handling in input forms with the reusable <x-form.alerts /> Blade component for consistency and maintainability across artifact, device, image, institution, location, material, project, and venue forms.
Introduces a Laravel Blade component and its PHP class for rendering form input fields with support for labels, validation, hints, and various input attributes. This improves code reuse and consistency across forms.
Introduces a new Select component for forms, including a PHP class and Blade view. The component supports dynamic options, custom labels, placeholders, validation, and error display for consistent select input rendering.
Introduces a new Textarea Blade component and its PHP class for form inputs. Supports label, value, hint, placeholder, required flag, and row count, improving form consistency and reusability.
Replaced manual input and select fields in material, person, and venue input forms with reusable <x-form.input> and <x-form.select> components. This improves code consistency, maintainability, and leverages shared form logic.
Replaced manual form markup in artifact, image, institution, and project input forms with reusable Blade form components for inputs, selects, and textareas. This improves code maintainability, consistency, and readability across the application's forms.
Introduces a reusable Blade component for card sections with optional title, count badge, and slot content. The component supports custom IDs and accessibility via aria-labelledby.
Introduced a new Blade component 'card.form' for reusable card-styled forms. Refactored the person input form to use this new component, simplifying the markup and improving consistency.
Introduces a reusable Blade component for displaying labeled data rows within card layouts. The component supports custom labels, values, fallback text, and configurable CSS classes for flexible layout.
Replaces manual card and data row markup in show views for artifacts, devices, institutions, locations, materials, and projects with reusable x-card.section and x-card.data-row Blade components. This improves code consistency, readability, and maintainability across resource detail pages.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces a set of reusable Blade components for form elements and card sections, and refactors the artifact and device show views to use these new components. The goal is to standardize the UI, improve code maintainability, and reduce duplication.
Changes & Rationale
Introduction of reusable components:
Form components:
Input,Select, andTextarea, each supporting common attributes, validation, and hint display. [1] [2] [3] [4] [5] [6]form/alertscomponent to display validation errors, session messages, and an optional required fields hint.Card and data display components:
card/sectioncomponent for consistent card-based section layouts, supporting titles, badges, and flexible content.card/data-rowcomponent for rendering definition list rows with labels and values, including fallback values and slot support.card/formcomponent for wrapping forms in a styled card layout.Refactoring of artifact and device show views
artifacts/show.blade.phpanddevices/show.blade.phpto use the newx-card.sectionandx-card.data-rowcomponents, replacing manual card markup and definition lists for a more modular and readable structure. [1] [2] [3] [4] [5] [6]Related Issues
Definition of Done Checklist
Laravel-Specific Changes
Infrastructure & Tooling Changes
Additional Notes