mirror of
https://github.com/modrinth/code.git
synced 2026-08-31 03:55:59 +00:00
* refactor: migrate to common eslint+prettier configs
* fix: prettier frontend
* feat: config changes
* fix: lint issues
* fix: lint
* fix: type imports
* fix: cyclical import issue
* fix: lockfile
* fix: missing dep
* fix: switch to tabs
* fix: continue switch to tabs
* fix: rustfmt parity
* fix: moderation lint issue
* fix: lint issues
* fix: ui intl
* fix: lint issues
* Revert "fix: rustfmt parity"
This reverts commit cb99d2376c.
* feat: revert last rs
38 lines
967 B
JavaScript
38 lines
967 B
JavaScript
import { defineStore } from 'pinia'
|
|
|
|
export const useBreadcrumbs = defineStore('breadcrumbsStore', {
|
|
state: () => ({
|
|
names: new Map(),
|
|
context: null,
|
|
rootContext: null,
|
|
}),
|
|
actions: {
|
|
getName(route) {
|
|
return this.names.get(route) ?? ''
|
|
},
|
|
setName(route, title) {
|
|
this.names.set(route, title)
|
|
},
|
|
// resets breadcrumbs to only included ones as to not have stale breadcrumbs
|
|
resetToNames(breadcrumbs) {
|
|
if (!breadcrumbs) return
|
|
// names is an array of every breadcrumb.name that starts with a ?
|
|
const names = breadcrumbs
|
|
.filter((breadcrumb) => breadcrumb.name.charAt(0) === '?')
|
|
.map((breadcrumb) => breadcrumb.name.slice(1))
|
|
// remove all names that are not in the names array
|
|
for (const [route] of this.names) {
|
|
if (!names.includes(route)) {
|
|
this.names.delete(route)
|
|
}
|
|
}
|
|
},
|
|
setContext(context) {
|
|
this.context = context
|
|
},
|
|
setRootContext(context) {
|
|
this.rootContext = context
|
|
},
|
|
},
|
|
})
|