Skip to content

Mixins ​

All mixins live in mixins/. They provide shared behavior for pages and components (upload, search, file selection, workspace, subscription, etc.).

FilePathPurpose
upload-commonmixins/upload-common.jsCommon upload logic shared across admin and external uploads
uploadQueuemixins/uploadQueue.jsUpload queue management
external-uploadsmixins/external-uploads.jsExternal upload flow helpers
search-common-functionsmixins/search-common-functions.jsShared search helpers (Typesense, filters, etc.)
common-functionsmixins/common-functions.jsGeneral helpers (e.g. analytics dispatch, sorting, error handling)
imageStylemixins/imageStyle.jsImage styling / aspect ratio / display helpers
view-mode-cachemixins/view-mode-cache.jsPersist and restore view mode (grid/list)
shiftSelectionmixins/shiftSelection.jsShift+click range selection behavior
subscription-functionsmixins/subscription-functions.jsSubscription and billing helpers
routeParamsmixins/routeParams.jsRead and sync route params (workspace_id, instance_id, etc.)
versionFileTypemixins/versionFileType.jsFile type handling for versions
zipShotmixins/zipShot.jsZip preview / handling
damShareUrlmixins/damShareUrl.jsDAM share URL generation and handling
fileTypemixins/fileType.jsFile type detection and display
currentWorkspacemixins/currentWorkspace.jsCurrent workspace id from auth or route
brandingmixins/branding.jsApplies 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-analyticsmixins/amplitude-analytics.jsProvides $trackAmplitude helper; normalises event properties (truncates strings, strips deep nesting, converts ID fields to integers) before sending to Amplitude
column-visibility-cachemixins/column-visibility-cache.jsPersists and restores visible column selections per view type via $auth.$storage
sort-preference-cachemixins/sort-preference-cache.jsPersists and restores sort field/direction per view type via $auth.$storage
thumbnail-size-cachemixins/thumbnail-size-cache.jsPersists and restores thumbnail size preference (xsmall–xlarge) per view type via $auth.$storage
draggable-barmixins/draggable-bar.jsMakes the bulk action bar draggable; persists last position in localStorage (bulkActionBarPosition)
marqueeSelectionmixins/marqueeSelection.jsRubber-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