MV3 WebExtension that turns the active tab's URL into a scannable QR code via a toolbar popup. The popup runs locally — no network requests. Build pipeline: `bun build` bundles popup.js + the vendored kazuhikoarase/qrcode-generator (MIT, pinned to 83b7e8f) into a single ~23 KB minified ESM file under dist/. web-ext operates on dist/, so the packaged zip contains only what actually ships (~28 KB). Scripts: - bun run build — bundle + copy assets into dist/ - bun run lint — build + web-ext lint (0 errors / 0 warnings) - bun run package — build + produce a signable .zip - bun run start — build + launch Firefox with the extension loaded Tracks dogcat epic firefox-share-as-qr-35mw and its 5 child tasks (scaffold, vendor lib, popup UI, icons, README). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
30 lines
1.2 KiB
XML
30 lines
1.2 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" role="img" aria-label="Share as QR">
|
|
<rect width="32" height="32" rx="6" fill="#1f2937"/>
|
|
<g fill="#f9fafb">
|
|
<!-- Top-left finder -->
|
|
<path d="M5 5h8v8H5zM7 7v4h4V7z"/>
|
|
<rect x="8" y="8" width="2" height="2"/>
|
|
<!-- Top-right finder -->
|
|
<path d="M19 5h8v8h-8zM21 7v4h4V7z"/>
|
|
<rect x="22" y="8" width="2" height="2"/>
|
|
<!-- Bottom-left finder -->
|
|
<path d="M5 19h8v8H5zM7 21v4h4v-4z"/>
|
|
<rect x="8" y="22" width="2" height="2"/>
|
|
<!-- Data dots -->
|
|
<rect x="15" y="6" width="2" height="2"/>
|
|
<rect x="15" y="10" width="2" height="2"/>
|
|
<rect x="6" y="15" width="2" height="2"/>
|
|
<rect x="10" y="15" width="2" height="2"/>
|
|
<rect x="14" y="15" width="2" height="2"/>
|
|
<rect x="18" y="15" width="2" height="2"/>
|
|
<rect x="22" y="15" width="2" height="2"/>
|
|
<rect x="26" y="15" width="2" height="2"/>
|
|
<rect x="15" y="20" width="2" height="2"/>
|
|
<rect x="19" y="19" width="2" height="2"/>
|
|
<rect x="23" y="19" width="2" height="2"/>
|
|
<rect x="19" y="23" width="2" height="2"/>
|
|
<rect x="25" y="23" width="2" height="2"/>
|
|
<rect x="15" y="25" width="2" height="2"/>
|
|
<rect x="23" y="25" width="2" height="2"/>
|
|
</g>
|
|
</svg>
|