Module Namespacing Support for Packages
- Dominant language
- TypeScript
- Stars
- 510
- Forks
- 178
- Avg merge
- 5h 7m
- Merged PRs (30d)
- 5
Description
### Summary
When installing a package that uses module namespacing (`export * as {moduleName} from './{moduleName}`), Expo's default configuration throws an error when compiling for web and iOS. This is an important tool for structuring TypeScript code, so I'd expect it to work out of the box.
### Managed or bare workflow? If you have `ios/` or `android/` directories in your project, the answer is bare!
bare
### What platform(s) does this occur on?
iOS, Web
### SDK Version (managed workflow only)
4.5.2
### Environment
MacOS, Node v14.15.5.
### Reproducible demo or steps to reproduce from a blank project
https://snack.expo.io/kSlfJiSnR
Steps to reproduce:
- `npm install @dfinity/agent`
- Somewhere in the code - `import { HttpAgent } from "@dfinity/agent";`
Contributor guide
Research direction
Start with the linked Snack reproduction and the reported import from @dfinity/agent, then inspect Expo Snack’s default compilation configuration for web and iOS. The work is done when a bare project using the module-namespaced package compiles successfully on both reported platforms without the configuration error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- node.js, typescript
- Domain
- build-system, mobile-dev, web-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100