yasithdev opened a new pull request, #144:
URL: https://github.com/apache/airavata-portals/pull/144
## Track C (2/N) — Vite migration: `django-airavata-common-ui` (shared UI)
Migrate the shared UI package's build from Vue CLI 5 / webpack 5 to
**Vite**, staying on **Vue 2.7** (bumped from 2.5 for `@vitejs/plugin-vue2`),
per the agreed Vite-first plan. The Vue 2 → 3 framework migration is a later
coordinated pass; this is permanent build-tooling work.
**Dual build preserved:**
- `vite.config.js` — the **app build** (`app`/`notices` entries → `dist/js`
+ `dist/css`). Includes a small `django-webpack-stats` plugin that emits a
**`webpack-stats.json` compatible with `django-webpack-loader`**, so the Django
`{% render_bundle … 'COMMON' %}` tags and `WEBPACK_LOADER` settings stay
**unchanged** — no Django-side churn across the apps. Extensionless `.vue`
imports resolved via `resolve.extensions`.
- `vite.config.lib.js` — the **CommonUI UMD library** for external custom
apps, externalizing `django-airavata-api` as the `AiravataAPI` global (matching
the old `LIBRARY_MODE`).
**Deps:** swap
`@vue/cli-service`/webpack/`vue-loader`/`vue-template-compiler`/Babel for
`vite` + `@vitejs/plugin-vue2` (keep `sass`; keep eslint for lint). Drop
build-era deps (`core-js`/`terser`/`browserslist`). Delete `vue.config.js`.
Internal apps import the package **source** via the `link:` protocol, so
they're unaffected.
**Verified on Node 26:** clean `yarn install`; `yarn build` (app + lib)
green; and **`django-webpack-loader` on Django 5.2 renders the correct
`<script>`/`<link>` tags from the Vite-emitted `webpack-stats.json`** (also
confirms webpack-loader 0.6 survives Django 5.2 at render time). Depends on
#139 (the Vite api lib it links to).
Next: the 6 app frontends (auth/workspace/admin/groups/dataparsers +
workspace-plugin-api).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]