* fix(fe2): unfollow on camera move * WIP new state hydration function * WIP sync state * minor cleanup * fix coloring not being tracked * fix for post thread close camera pos restore * supporting duplicate users * preventing guest commenting + state reset fixes * fixed guests not receiving viewer comment updates * post-thread creation opens new thread * removing gap between 'X is typing' and bubble appearing * reset filters will also reset colors now * fixed thread full context * camera reset fix * thread reset fix * fixed router concurrency issues * followed user avatar fix * TONS OF DEBUGGING FOR ROUTER QUEUING * removing queued routing debugging stuff + disabling spotlight cancelation * WIP async URL updates * missing authLogger fixed * fix for broken projection * fix for bubbles positions not updating correctly * queued routing cleanup * fixed spotlight mode disabling unnecessarily * added back stoplight stop on ctrl * undid spotlight debugging
ui-components
Speckle UI component library built with Vue 3 and relying on the Speckle Tailwind theme.
Setup
- Make sure you have
@speckle/tailwind-themeinstalled and set up with Tailwind - Install
@speckle/ui-components - In your tailwind config import
tailwindContentEntryfrom@speckle/ui-components/tailwind-configureand invoke it in thecontentsfield to ensure PurgeCSS is configured correctly. It requires the CJSrequireobject as its only parameter. If it isn't available (in an ESM environment), you can use node'screateRequire(). - Import
@speckle/ui-components/style.cssin your app. Ifexportsmap isn't supported you can also import from@speckle/ui-components/dist/style.css
Usage in Nuxt v3
It's suggested that you also install the @speckle/ui-components-nuxt Nuxt module. It will ensure that all of the Vue components can be auto-imported like components in nuxt's ./components directory. No need to import them manually anymore and you'll also get proper TS typing in your Vue templates out of the box!
Additionally you should add the following to your build.transpile array in your nuxt config:
// nuxt.config.js
export default {
build: {
transpile: [
'@headlessui/vue',
/^@heroicons\/vue/,
'@vueuse/core',
'@vueuse/shared',
'@speckle/ui-components'
]
}
}
This will ensure that some dependencies are transpiled properly so that they work correctly both during SSR & CSR.
Troubleshooting
Form validation doesn't work
It appears that in some scenarios Nuxt/Vite gets confused and bundles 'vee-validate' twice. To fix this add 'vee-validate' to vite.resolve.dedupe in your nuxt/vite config.
Build
Run yarn build
Development
Develop & test your components in Storybook - yarn storybook
Optionally you can also run yarn dev to run the Vite dev server which runs App.vue and in some special scenarios you might want to debug components there.
Troubleshooting
Styles don't work
Re-start storybook, it could be that you introduced a new tailwind class that was previously purged out