feat(division): update division list components and add mock api
- Replace patient API endpoint with division mock endpoint
- Simplify table columns and headers for division list
- Add mock API endpoint for division list with tree/flat format
feat(select-tree): add collapsible tree select component with lazy loading
Implement a tree select component with collapsible sections and lazy loading of child items. Includes:
- Collapsible component wrappers for Vue
- Command component wrappers for combobox functionality
- Tree select item component with loading states
- Example implementation in dev page
todo:
- scroll on overflow
- long text truncate possibly with tooltip
- more than > 5 depth of child
- mutate the children lazy
- integration backend for search based text and return keys
feat(select-tree): add command-item component for tree selection
adjust hover bg-accent (remove state on-highlighted at styling) to avoid conflict on global component
refactor(select-tree): extract TreeItem interface to shared type file
Move TreeItem interface to a dedicated type file for better code organization and reusability. Update components to import the interface and add styling improvements to the tree-select component.
adjust text size for tree to sm
refactor(select-tree): rename tree-select-item to leaf and improve component
- Rename component to better reflect its purpose as a leaf node
- Improve UI with better spacing and hover states
- Simplify toggle logic using v-model
- Add checkmark icon for selected items
checkpoint
wip
- Update device and material pages to use Content prefixed components instead of Flow
- Add new content components for device and material list/entry functionality
- Maintain same functionality while improving component naming consistency
Add new content components for unit, division, and installation with list views, entry forms, and validation schemas. Replace Flow*List components with Content*List components in org-src pages. Includes pagination, search functionality, and CRUD operations for each entity type.
- Remove duplicate schema.query.ts files from unit, division, and installation components
- Create new usePaginatedList composable to centralize pagination logic
- Update list.vue components to use the new composable
- Maintain same functionality while reducing code duplication
- Add schema validation and default query params for unit management
- Create list view with pagination, search, and delete functionality
- Implement form entry with validation for creating/editing units
- Replace placeholder content with functional unit list component
- Remove unused unit add page and update page titles
- Consolidate pagination info display logic in pagination component
- Remove duplicate computed properties from list components
- Improve pagination layout with better spacing and responsiveness
- Add skeleton loading support to data tables
feat(form): add accessibility improvements to form components
- Add labelFor prop to Label component for better form element association
- Enhance Combobox with ARIA attributes for better screen reader support
- Update form fields with proper IDs and label associations
feat(pagination): adjust button width based on page number length
Add dynamic button sizing for pagination items to accommodate different digit lengths (1-99, 100-999, 1000+). This improves visual consistency when displaying varying page numbers.
feat(modal): add reusable dialog component and refactor division form
- Create new Dialog.vue component with configurable size and outside click prevention
- Replace inline dialog implementation in division list with new Dialog component
- Fix formatting in entry-form.vue
feat(data-table): add click handling for action cells
Implement handleActionCellClick function to manage click events on action cells, triggering dropdown buttons when clicked outside interactive elements. Add cursor-pointer class and click handler to action cells for better UX.
refactor(custom-ui): centralize action event strings in types
Replace hardcoded action event strings with constants from types.ts to improve maintainability and reduce potential typos
feat(confirmation): add reusable confirmation modal components
- Implement base confirmation.vue component with customizable props
- Create record-specific record-confirmation.vue for data operations
- Add comprehensive README.md documentation for usage
- Integrate confirmation flow in division list component
refactor(components): move dialog component to base directory and update imports
The dialog component was moved from custom-ui/modal to base/modal to better reflect its shared usage across the application. All import paths referencing the old location have been updated accordingly.
refactor(select): reorganize imports and adjust conditional formatting
- Reorder imports in Select.vue for better organization
- Adjust logical operator formatting in SelectContent.vue for consistency
- Move form logic from list component to dedicated entry-form component
- Implement proper form submission and cancellation handlers
- Add type safety with DivisionFormData interface
- Improve form validation using vee-validate
- Refresh data after successful form submission