Comments (2)
Would be cool to support named exports too
Source code: https://unpkg.com/[email protected]/lib/index.js
IN example:
var ReactRelayContext = require("./ReactRelayContext");
var ReactRelayFragmentContainer = require("./ReactRelayFragmentContainer");
var ReactRelayPaginationContainer = require("./ReactRelayPaginationContainer");
var ReactRelayQueryRenderer = require("./ReactRelayQueryRenderer");
var ReactRelayRefetchContainer = require("./ReactRelayRefetchContainer");
var RelayRuntime = require("relay-runtime");
module.exports = {
QueryRenderer: ReactRelayQueryRenderer,
MutationTypes: RelayRuntime.MutationTypes,
RangeOperations: RelayRuntime.RangeOperations,
ReactRelayContext: ReactRelayContext,
applyOptimisticMutation: RelayRuntime.applyOptimisticMutation,
commitLocalUpdate: RelayRuntime.commitLocalUpdate,
commitMutation: RelayRuntime.commitMutation,
createFragmentContainer: ReactRelayFragmentContainer.createContainer,
createPaginationContainer: ReactRelayPaginationContainer.createContainer,
createRefetchContainer: ReactRelayRefetchContainer.createContainer,
fetchQuery: RelayRuntime.fetchQuery,
graphql: RelayRuntime.graphql,
requestSubscription: RelayRuntime.requestSubscription
};
OUT actual:
import _relayRuntime from "relay-runtime";
import _ReactRelayRefetchContainer from "./ReactRelayRefetchContainer";
import _ReactRelayQueryRenderer from "./ReactRelayQueryRenderer";
import _ReactRelayPaginationContainer from "./ReactRelayPaginationContainer";
import _ReactRelayFragmentContainer from "./ReactRelayFragmentContainer";
import _ReactRelayContext from "./ReactRelayContext";
var module = {
exports: {}
};
var exports = module.exports;
var ReactRelayContext = _ReactRelayContext;
var ReactRelayFragmentContainer = _ReactRelayFragmentContainer;
var ReactRelayPaginationContainer = _ReactRelayPaginationContainer;
var ReactRelayQueryRenderer = _ReactRelayQueryRenderer;
var ReactRelayRefetchContainer = _ReactRelayRefetchContainer;
var RelayRuntime = _relayRuntime;
module.exports = {
QueryRenderer: ReactRelayQueryRenderer,
MutationTypes: RelayRuntime.MutationTypes,
RangeOperations: RelayRuntime.RangeOperations,
ReactRelayContext: ReactRelayContext,
applyOptimisticMutation: RelayRuntime.applyOptimisticMutation,
commitLocalUpdate: RelayRuntime.commitLocalUpdate,
commitMutation: RelayRuntime.commitMutation,
createFragmentContainer: ReactRelayFragmentContainer.createContainer,
createPaginationContainer: ReactRelayPaginationContainer.createContainer,
createRefetchContainer: ReactRelayRefetchContainer.createContainer,
fetchQuery: RelayRuntime.fetchQuery,
graphql: RelayRuntime.graphql,
requestSubscription: RelayRuntime.requestSubscription
};
export default module.exports;
OUT expected:
import _relayRuntime from "relay-runtime";
import _ReactRelayRefetchContainer from "./ReactRelayRefetchContainer";
import _ReactRelayQueryRenderer from "./ReactRelayQueryRenderer";
import _ReactRelayPaginationContainer from "./ReactRelayPaginationContainer";
import _ReactRelayFragmentContainer from "./ReactRelayFragmentContainer";
import _ReactRelayContext from "./ReactRelayContext";
var module = {
exports: {}
};
var exports = module.exports;
var ReactRelayContext = _ReactRelayContext;
var ReactRelayFragmentContainer = _ReactRelayFragmentContainer;
var ReactRelayPaginationContainer = _ReactRelayPaginationContainer;
var ReactRelayQueryRenderer = _ReactRelayQueryRenderer;
var ReactRelayRefetchContainer = _ReactRelayRefetchContainer;
var RelayRuntime = _relayRuntime;
module.exports = {
QueryRenderer: ReactRelayQueryRenderer,
MutationTypes: RelayRuntime.MutationTypes,
RangeOperations: RelayRuntime.RangeOperations,
ReactRelayContext: ReactRelayContext,
applyOptimisticMutation: RelayRuntime.applyOptimisticMutation,
commitLocalUpdate: RelayRuntime.commitLocalUpdate,
commitMutation: RelayRuntime.commitMutation,
createFragmentContainer: ReactRelayFragmentContainer.createContainer,
createPaginationContainer: ReactRelayPaginationContainer.createContainer,
createRefetchContainer: ReactRelayRefetchContainer.createContainer,
fetchQuery: RelayRuntime.fetchQuery,
graphql: RelayRuntime.graphql,
requestSubscription: RelayRuntime.requestSubscription
};
export const { // <====== NAMED EXPORTS ADDED
QueryRenderer,
MutationTypes,
RangeOperations,
ReactRelayContext,
applyOptimisticMutation,
commitLocalUpdate,
commitMutation,
createFragmentContainer,
createPaginationContainer,
createRefetchContainer,
fetchQuery,
graphql,
requestSubscription,
} = module.exports;
export default module.exports;
Is it possible/doable?
See also rollup-plugin-commonjs and its namedExports
option for inspiration.
from babel-plugin-transform-commonjs.
Any progress so far?
from babel-plugin-transform-commonjs.
Related Issues (13)
- Support top-level return HOT 4
- Duplicate declarations with `exports` re-assignment. HOT 1
- export.default produces invalid javascript HOT 2
- Do not replace exports that aren't in the top level
- IIFE transformed modules are incompatible es module babel plugins HOT 4
- Does this plugin will benefit from proposal top-level-await? HOT 1
- Issue declaring "keyword" at export HOT 3
- Support importsOnly option HOT 1
- Emit export statements only when there are exports HOT 1
- Ability to ignore files that are already ES modules HOT 8
- Unable to load react-dom HOT 2
- Release tags HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from babel-plugin-transform-commonjs.