rancher / dashboard

The Rancher UI
https://rancher.com
Apache License 2.0
450 stars 256 forks source link

Remove `store.$plugin` and refactor nuxtClientInit from the state #11386

Open codyrancher opened 2 months ago

codyrancher commented 2 months ago

Description

Refactor logic which currently:

Ideally this whole initialization could be handled within the entry.js file, so nuxtClientInit action can be moved there.

Initial report

Unfortunately the initialization code has circular dependencies between creating the router and creating the store that will need to be untangled before this can be tackled.

https://github.com/rancher/dashboard/pull/11266/files#r1665683957

$plugin is being set by the code at https://github.com/rancher/dashboard/blob/5a00bcc07cd7cf724fa6ca0d1ca7dff57108b23f/shell/store/index.js#L1149

cnotv commented 2 months ago

@codyrancher Can I rephrase the title/description so it matches to remove the whole Nuxt part and move initialization out of the store? We have this very part as a whole to be moved out: https://github.com/rancher/dashboard/blob/master/shell/store/index.js#L1167

cnotv commented 1 month ago

My current work and investigation end up here @codyrancher https://github.com/cnotv/dashboard/tree/feature/11386-nuxt-client-init-removal

I have identified an issue with $plugins (whatever it is) to be not mounted for some reason and being used just for getDynamic().

The whole logic must be taken out from the state management and put together with the state initialization (wherever is the point)