Appearance
Mixins ​
All mixins live in mixins/. They provide shared behavior for pages and components (upload, search, file selection, workspace, subscription, etc.).
| File | Path | Purpose |
|---|---|---|
| upload-common | mixins/upload-common.js | Common upload logic shared across admin and external uploads |
| uploadQueue | mixins/uploadQueue.js | Upload queue management |
| external-uploads | mixins/external-uploads.js | External upload flow helpers |
| search-common-functions | mixins/search-common-functions.js | Shared search helpers (Typesense, filters, etc.) |
| common-functions | mixins/common-functions.js | General helpers (e.g. analytics dispatch, sorting, error handling) |
| imageStyle | mixins/imageStyle.js | Image styling / aspect ratio / display helpers |
| view-mode-cache | mixins/view-mode-cache.js | Persist and restore view mode (grid/list) |
| shiftSelection | mixins/shiftSelection.js | Shift+click range selection behavior |
| subscription-functions | mixins/subscription-functions.js | Subscription and billing helpers |
| routeParams | mixins/routeParams.js | Read and sync route params (workspace_id, instance_id, etc.) |
| versionFileType | mixins/versionFileType.js | File type handling for versions |
| zipShot | mixins/zipShot.js | Zip preview / handling |
| damShareUrl | mixins/damShareUrl.js | DAM share URL generation and handling |
| fileType | mixins/fileType.js | File type detection and display |
| currentWorkspace | mixins/currentWorkspace.js | Current workspace id from auth or route |
| branding | mixins/branding.js | Applies workspace branding (logo, favicon, brand name) to the app shell; falls back to Collage defaults; also sets a blank favicon placeholder to suppress browser default |
| amplitude-analytics | mixins/amplitude-analytics.js | Provides $trackAmplitude helper; normalises event properties (truncates strings, strips deep nesting, converts ID fields to integers) before sending to Amplitude |
| column-visibility-cache | mixins/column-visibility-cache.js | Persists and restores visible column selections per view type via $auth.$storage |
| sort-preference-cache | mixins/sort-preference-cache.js | Persists and restores sort field/direction per view type via $auth.$storage |
| thumbnail-size-cache | mixins/thumbnail-size-cache.js | Persists and restores thumbnail size preference (xsmall–xlarge) per view type via $auth.$storage |
| draggable-bar | mixins/draggable-bar.js | Makes the bulk action bar draggable; persists last position in localStorage (bulkActionBarPosition) |
| marqueeSelection | mixins/marqueeSelection.js | Rubber-band (marquee) multi-select on list views; gates drag behind a pixel threshold to avoid interfering with normal clicks; auto-scrolls near the list edge |