Description
What happened?
Sorry for the somewhat vague title, but I'm not exactly sure what's actually wrong.
I'm trying to add PrimeVue to a project using Bazel + Vue, but it isn't working in the way that I expect. Possibly my understanding / expectations are wrong here, but I'm not very experienced with front-end / JavaScript build systems so 🤷.
Expected behaviour: using PrimeVue with Bazel + rules_js
works
Actual behaviour: PrimeVue itself seems to work, but the built-in styling does not
Steps to reproduce: see https://github.com/swarren12/rules_js-primevue-reproduction
More details
As mentioned, I have a project using Bazel, rules_js
and Vue and, as far as I can tell, it's working correctly; however, when I introduce PrimeVue it doesn't behave as expected.
For some reason, I get some of the PrimeVue behaviour, but not all of it - specifically, it seems that some aspect of the theming isn't playing nicely with the rules_js
build process. Bypassing Bazel completely and running via raw npm
makes things work as expected, which is why I believe that this is a problem with rules_js
rather than Vite or PrimeVue.
Hopefully the reproduction is enough to determine whether this is an actual issue or just user-error 😅
Version
Development (host) and target OS/architectures:
Output of bazel --version
: bazel 8.0.0
Version of the Aspect rules, or other relevant rules from your
WORKSPACE
or MODULE.bazel
file:
bazel_dep(name = "bazel_skylib", version = "1.7.1")
bazel_dep(name = "aspect_rules_js", version = "2.1.3")
Language(s) and/or frameworks involved:
- Vue
- PrimeVue
How to reproduce
https://github.com/swarren12/rules_js-primevue-reproduction
Any other information?
The example reproduction has both a "production" build target as well as a development one; from what I can tell, both are affected (i.e. run //example:example/dev-mode
and build //example
will both exhibit the same problem) but it's easier to reproduce using the development build.