-
Notifications
You must be signed in to change notification settings - Fork 2
Webpackified the export iframe! #114
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request migrates the export iframe from a standalone HTML/JS approach to a webpack-based build system, modernizing the codebase and improving modularity. The changes align the export iframe with the existing webpack-based architecture used by other iframes in the project (import and export-and-sign).
Changes:
- Introduced webpack build configuration with Babel transpilation, CSS extraction, and code splitting
- Added support for Bitcoin WIF and Sui Bech32 key encoding formats to shared turnkey-core module
- Restructured export iframe code into modular ES6 imports with separate CSS and HTML templates
- Updated build pipeline in Dockerfile to compile export iframe alongside other webpack-based modules
Reviewed changes
Copilot reviewed 13 out of 30 changed files in this pull request and generated 10 comments.
Show a summary per file
| File | Description |
|---|---|
| shared/turnkey-core.js | Added base58CheckEncode function and new key encoding formats (BITCOIN_MAINNET_WIF, BITCOIN_TESTNET_WIF, SUI_BECH32) to support additional blockchain ecosystems |
| nginx.conf | Updated export iframe routing configuration to serve webpack-built assets |
| export/webpack.config.js | New webpack configuration with Babel, CSS extraction, CSP settings, and code splitting |
| export/src/turnkey-core.js | New module that wraps and re-exports shared functions with export-specific utilities |
| export/src/styles.css | Extracted CSS styles from inline HTML to separate stylesheet |
| export/src/index.template.html | Clean HTML template without embedded JavaScript |
| export/src/index.js | New entry point with modularized event handlers and HPKE decryption logic |
| export/package.json | Added webpack toolchain dependencies and updated build scripts |
| export/noble-ed25519.js | Removed vendored library in favor of npm package |
| export/index.test.js | Updated test setup to work with new modular structure |
| export/index.template.html | Removed monolithic HTML file with embedded scripts |
| Dockerfile | Added export module build step to multi-stage build process |
| dist/* | Generated webpack build artifacts |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| server { | ||
| listen 8081; | ||
| root /usr/share/nginx; | ||
| root /usr/share/nginx/templated/export; |
Copilot
AI
Feb 6, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The nginx configuration sets the root to /usr/share/nginx/templated/export, but the Dockerfile copies the built export files to /usr/share/nginx/export (line 41). This path mismatch will cause nginx to fail serving the export iframe. Either change the Dockerfile to copy to /usr/share/nginx/templated/export or update this nginx root directive to /usr/share/nginx/export.
| root /usr/share/nginx/templated/export; | |
| root /usr/share/nginx/export; |
ed8c91c to
0ada54c
Compare
0ada54c to
b6402c6
Compare
No description provided.