* feat: add legacy image fit preference and adjustable image display in card component
* feat: add blurred bg image when object contain
* fix: add alt text for image and improve objectContain
* feat: implement example of data table
* feat: load item data into table
* chore: begin switching dialogs
* feat: implement old dialog for controlling headers and page size
* feat: get table into relatively usable state
* feat: enhance dropdown actions for multi-selection and CSV download
* feat: enhance table cell and dropdown button styles for better usability
* feat: json download for table
* feat: add expanded row component for item details in data table
* chore: add translation support
* feat: restore table on home page
* fix: oops need ids
* feat: move card view to use tanstack to allow for pagination
* feat: switch the items search to use ItemViewSelectable
* fix: update pagination handling and improve button click logic
* feat: improve selectable table
* feat: add indeterminate to checkbox
* feat: overhaul maintenance dialog to use new system and add maintenance options to table
* feat: add label ids and location id to item patch api
* feat: change location and labels in table view
* feat: add quick actions preference and enable toggle in table settings
* fix: lint
* fix: remove sized 1 pages
* fix: attempt to fix type error
* fix: various issues
* fix: remove
* fix: refactor item fetching logic to use useAsyncData for improved reactivity and improve use confirm
* fix: sort backend issues
* fix: enhance CSV export functionality by escaping fields to prevent formula injection
* fix: put aria sort on th not button
* chore: update api types
* feat: begin upgrading deps, still very buggy
* feat: progress
* feat: sort all type issues
* fix: sort type issues
* fix: import sonner styles
* fix: nuxt is the enemy
* fix: try sorting issue with workflows
* fix: update vitest config for dynamic import of path and defineConfig
* fix: add missing import
* fix: add time out to try and fix issues
* fix: add ui:ci:preview task for frontend build in CI mode
* fix: i was silly
* feat: add go:ci:with-frontend task for CI mode and remove ui:ci:preview from e2e workflow
* fix: update baseURL in Playwright config for local testing to use port 7745
* fix: update E2E_BASE_URL and remove wait for timeout in login test for smoother execution
* fix: change Content-Disposition to inline for proper document display in attachments
* feat: overhaul how dialog system works, add delete to image dialog and add button to open image dialog on edit page
* chore: remove unneeded console log
* fix: ensure cleanup of dialog callbacks on unmount in BarcodeModal, CreateModal, and ImageDialog components
* feat: improved duplicate
* feat: enhance item duplication process with transaction handling and error logging for attachments and fields
* feat: add error logging during transaction rollback in item duplication process for better debugging
* feat: don't try and rollback is the commit succeeded
* feat: add customizable duplication options for items, including prefix and field copying settings in API and UI
* fix: simplify duplication checks for custom fields, attachments, and maintenance entries in ItemsRepository duplication method
* refactor: import DuplicateSettings type from composables and sort import issues
* Fix label name length
The labels name were shortened to the max length of 20 characters and not taking advantage of extra space. And it was difficult to distinguish between labels with the same prefix.
* run task ui:fix
* fix label selector when creating an item
* feat: sort styles for line wrapping
---------
Co-authored-by: Tonya <tonya@tokia.dev>
- fix many missing translations
- properly reset QR scanner when reopening
- add error message on BarcodeModal when no item is found
- fix icon size in item CreateModal
- remove useless closeDialog
* fix(frontend/location): preserve parent in "Create and Add another" modal flow
* fix: normalize line endings
* fix: preserve parent location state when modal closed
* prevent current location and descendants from being selected as parent
* prevent an item from showing up in the parent items drop-down for itself
* pass location object to filter function to allow for more flexible filtering
* align exclude prop and fix type comparison, change item filter to array of ItemsObjects to allow for descendant filtering in future
* fix linting prop reference
* feat: Display number of items in Location/Label page
When viewing a Location or Label page, the number of items directly
associated with that Location or Label is now displayed in the section
header.
* style: adjust the style on the item count
---------
Co-authored-by: Tonya <tonya@tokia.dev>
* feat: custom coloured labels
* chore: lint
* feat: add ColorSelector component for improved color selection in labels and integrate it into CreateModal and Selector components
* style: lint
* fix: update ColorSelector and Selector components to use empty string instead of null for default color values for types
The usage of `parseFloat` was breaking the sorting of ID and date
columns in the table.
This is because `parseFloat("000-123")` returns `0` instead of `123` or
`NaN`, and `parseFloat("2025-01-02T03:04:05.678Z")` returns `2025`.
Replacing `parseFloat` with `Number` fixes the issue, as now the values
received for Asset ID and date columns will correctly return `NaN`, and
end up being sorted as strings.
* chore: added `rel="noopener noreferrer"` to external links for improved security on homepage
* fix: reused variable name
* feat: make the item table use a link instead of a click event
* fix: pagination now shows correct page if loading page that isnt 1
* fix: make save button sticky again on item edit page
* fix: adjust sticky header positioning based on whether legacy header is enabled
* fix: navigate to homepage on unauthorized request in useUserApi function
* fix: enhance link handling in DetailsSection
* fix: improve markdown rendering, don't add big breaks between lines, make the gap smaller and dont have a trailing newline
* fix: use secondary colour as switch secondary colour so its more visible against bg
* fix: call refresh methods on location and label stores during component mount for better data consistency
* fix: loading indicators
* fix: convert detail.text to string for correct URL handling in DetailsSection component
* fix: use replace instead of splice to remove newline at end of markdown
* fix: use css vars for header height
* add missing translations and translate page titles
* fix: actually use the declared localized variables
* lint and prettier fixes
* add missing translations for toasts and confirms
* use components for shift/enter keys, add pluralization for photos, and fix primary photo conditional
* remove prop defaults since we're computing these anyways