qwen-code/packages/web-shell/client/components/extensions/ExtensionsManagerPage.module.css
Jabrail 535dfd9a11
feat(web-shell): add PWA installability and Android development shell (#11722)
* feat(web-shell): add installable PWA support

* fix(build): skip incomplete Web Shell assets when bundling

* feat(web-shell): declare browser support matrix and compat fallbacks

* feat(web-shell): make the Web Shell installable as a PWA

Serves /manifest.webmanifest and /sw.js pre-auth, registers the worker
deferred to load, and replaces the earlier service-worker.js draft with
sw.js as a Vite entry (PNG icons included).

* feat(mobile-shell): add Android WebView shell skeleton

WebView shell around the daemon-served Web Shell (no second UI), profile
tuples of URL/token/display name with #token= fragment delivery, native
WebView version check at the Chrome 107 floor, and a foreground-service
skeleton for SSE/notifications.

* chore(web-shell): drop superseded service worker draft files

* test(web-shell): cover service worker routing and lifecycle

* chore(web-shell): align @playwright/test with main lockfile

* chore: register mobile-shell importer in pnpm lockfile

* test(web-shell): parse sidebar stylesheet with postcss for @supports nesting

* chore: register mobile-shell in pnpm rewrite set

* fix(web-shell): address PWA and Android acceptance blockers

* docs(mobile-shell): make remaining native acceptance limits explicit

* fix(web-shell): address fourth PWA review round

* fix(mobile-shell): restore web view on back

---------

Co-authored-by: Shaojin Wen <shaojin.wensj@alibaba-inc.com>
2026-09-17 22:23:58 +00:00

28 lines
713 B
CSS

.extensionGrid {
display: grid;
align-items: start;
gap: 12px;
}
@supports (container-type: inline-size) {
@container panel-body (min-width: 600px) {
.extensionGrid[data-column-count='2'],
.extensionGrid[data-column-count='3'],
.extensionGrid[data-column-count='4'] {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@container panel-body (min-width: 900px) {
.extensionGrid[data-column-count='3'],
.extensionGrid[data-column-count='4'] {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
}
@container panel-body (min-width: 1200px) {
.extensionGrid[data-column-count='4'] {
grid-template-columns: repeat(4, minmax(0, 1fr));
}
}
}