├── .eslintplugin.js ├── .eslintrc.js ├── .flowconfig ├── .github └── workflows │ ├── ci.yml │ └── publish.yml ├── .gitignore ├── .npmignore ├── .prettierrc.js ├── .vscode ├── launch.json └── settings.json ├── LICENSE ├── README.md ├── babel-plugin └── package.json ├── babel.config.js ├── eslint-plugin └── package.json ├── examples ├── .babelrc.js ├── .eslintrc.js ├── flow │ ├── components │ │ ├── __tests__ │ │ │ └── input.test.js │ │ ├── input.js │ │ ├── label.js │ │ └── section.js │ ├── examples.js │ ├── index.html │ └── index.js ├── global │ ├── __tests__ │ │ └── index.test.ts │ └── index.ts └── typescript │ ├── components │ ├── __tests__ │ │ └── input.test.tsx │ ├── input.tsx │ ├── label.tsx │ └── section.tsx │ ├── examples.tsx │ ├── index.html │ └── index.tsx ├── jest.config.js ├── package.json ├── src ├── babel │ ├── __tests__ │ │ ├── performance.js │ │ └── unit.test.js │ ├── constants.js │ ├── index.js │ ├── processor-di.js │ ├── processor-hoc.js │ ├── processor-inj.js │ └── utils.js ├── eslint │ ├── index.js │ ├── rules │ │ ├── __tests__ │ │ │ ├── no-duplicate.test.js │ │ │ ├── no-extraneous.test.js │ │ │ ├── no-restricted-injectable.test.js │ │ │ ├── order.test.js │ │ │ ├── sort-dependencies.test.js │ │ │ └── utils.js │ │ ├── no-duplicate.js │ │ ├── no-extraneous.js │ │ ├── no-restricted-injectable.js │ │ ├── order.js │ │ └── sort-dependencies.js │ └── utils.js ├── index.js ├── index.js.flow └── react │ ├── __tests__ │ ├── common.js │ ├── consumer.test.js │ ├── global.test.js │ ├── integration-rtl.test.js │ ├── integration-rtr.test.js │ ├── provider.test.js │ ├── stats.test.js │ ├── types.flow.js │ └── utils.test.js │ ├── constants.js │ ├── consumer.js │ ├── context.js │ ├── global.js │ ├── injectable.js │ ├── provider.js │ ├── stats.js │ └── utils.js ├── tsconfig.json ├── types ├── index.d.ts ├── test.tsx └── tsconfig.json └── webpack.config.js /.eslintplugin.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/.eslintplugin.js -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/.eslintrc.js -------------------------------------------------------------------------------- /.flowconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/.flowconfig -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/.github/workflows/publish.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | /lib 3 | /coverage 4 | yarn.lock 5 | 6 | # misc 7 | .vscode 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/.npmignore -------------------------------------------------------------------------------- /.prettierrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/.prettierrc.js -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/README.md -------------------------------------------------------------------------------- /babel-plugin/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/babel-plugin/package.json -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/babel.config.js -------------------------------------------------------------------------------- /eslint-plugin/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/eslint-plugin/package.json -------------------------------------------------------------------------------- /examples/.babelrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/.babelrc.js -------------------------------------------------------------------------------- /examples/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/.eslintrc.js -------------------------------------------------------------------------------- /examples/flow/components/__tests__/input.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/flow/components/__tests__/input.test.js -------------------------------------------------------------------------------- /examples/flow/components/input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/flow/components/input.js -------------------------------------------------------------------------------- /examples/flow/components/label.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/flow/components/label.js -------------------------------------------------------------------------------- /examples/flow/components/section.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/flow/components/section.js -------------------------------------------------------------------------------- /examples/flow/examples.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/flow/examples.js -------------------------------------------------------------------------------- /examples/flow/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/flow/index.html -------------------------------------------------------------------------------- /examples/flow/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/flow/index.js -------------------------------------------------------------------------------- /examples/global/__tests__/index.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/global/__tests__/index.test.ts -------------------------------------------------------------------------------- /examples/global/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/global/index.ts -------------------------------------------------------------------------------- /examples/typescript/components/__tests__/input.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/typescript/components/__tests__/input.test.tsx -------------------------------------------------------------------------------- /examples/typescript/components/input.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/typescript/components/input.tsx -------------------------------------------------------------------------------- /examples/typescript/components/label.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/typescript/components/label.tsx -------------------------------------------------------------------------------- /examples/typescript/components/section.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/typescript/components/section.tsx -------------------------------------------------------------------------------- /examples/typescript/examples.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/typescript/examples.tsx -------------------------------------------------------------------------------- /examples/typescript/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/typescript/index.html -------------------------------------------------------------------------------- /examples/typescript/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/examples/typescript/index.tsx -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/jest.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/package.json -------------------------------------------------------------------------------- /src/babel/__tests__/performance.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/babel/__tests__/performance.js -------------------------------------------------------------------------------- /src/babel/__tests__/unit.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/babel/__tests__/unit.test.js -------------------------------------------------------------------------------- /src/babel/constants.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/babel/constants.js -------------------------------------------------------------------------------- /src/babel/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/babel/index.js -------------------------------------------------------------------------------- /src/babel/processor-di.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/babel/processor-di.js -------------------------------------------------------------------------------- /src/babel/processor-hoc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/babel/processor-hoc.js -------------------------------------------------------------------------------- /src/babel/processor-inj.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/babel/processor-inj.js -------------------------------------------------------------------------------- /src/babel/utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/babel/utils.js -------------------------------------------------------------------------------- /src/eslint/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/index.js -------------------------------------------------------------------------------- /src/eslint/rules/__tests__/no-duplicate.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/rules/__tests__/no-duplicate.test.js -------------------------------------------------------------------------------- /src/eslint/rules/__tests__/no-extraneous.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/rules/__tests__/no-extraneous.test.js -------------------------------------------------------------------------------- /src/eslint/rules/__tests__/no-restricted-injectable.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/rules/__tests__/no-restricted-injectable.test.js -------------------------------------------------------------------------------- /src/eslint/rules/__tests__/order.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/rules/__tests__/order.test.js -------------------------------------------------------------------------------- /src/eslint/rules/__tests__/sort-dependencies.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/rules/__tests__/sort-dependencies.test.js -------------------------------------------------------------------------------- /src/eslint/rules/__tests__/utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/rules/__tests__/utils.js -------------------------------------------------------------------------------- /src/eslint/rules/no-duplicate.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/rules/no-duplicate.js -------------------------------------------------------------------------------- /src/eslint/rules/no-extraneous.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/rules/no-extraneous.js -------------------------------------------------------------------------------- /src/eslint/rules/no-restricted-injectable.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/rules/no-restricted-injectable.js -------------------------------------------------------------------------------- /src/eslint/rules/order.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/rules/order.js -------------------------------------------------------------------------------- /src/eslint/rules/sort-dependencies.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/rules/sort-dependencies.js -------------------------------------------------------------------------------- /src/eslint/utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/eslint/utils.js -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/index.js -------------------------------------------------------------------------------- /src/index.js.flow: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/index.js.flow -------------------------------------------------------------------------------- /src/react/__tests__/common.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/__tests__/common.js -------------------------------------------------------------------------------- /src/react/__tests__/consumer.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/__tests__/consumer.test.js -------------------------------------------------------------------------------- /src/react/__tests__/global.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/__tests__/global.test.js -------------------------------------------------------------------------------- /src/react/__tests__/integration-rtl.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/__tests__/integration-rtl.test.js -------------------------------------------------------------------------------- /src/react/__tests__/integration-rtr.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/__tests__/integration-rtr.test.js -------------------------------------------------------------------------------- /src/react/__tests__/provider.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/__tests__/provider.test.js -------------------------------------------------------------------------------- /src/react/__tests__/stats.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/__tests__/stats.test.js -------------------------------------------------------------------------------- /src/react/__tests__/types.flow.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/__tests__/types.flow.js -------------------------------------------------------------------------------- /src/react/__tests__/utils.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/__tests__/utils.test.js -------------------------------------------------------------------------------- /src/react/constants.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/constants.js -------------------------------------------------------------------------------- /src/react/consumer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/consumer.js -------------------------------------------------------------------------------- /src/react/context.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/context.js -------------------------------------------------------------------------------- /src/react/global.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/global.js -------------------------------------------------------------------------------- /src/react/injectable.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/injectable.js -------------------------------------------------------------------------------- /src/react/provider.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/provider.js -------------------------------------------------------------------------------- /src/react/stats.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/stats.js -------------------------------------------------------------------------------- /src/react/utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/src/react/utils.js -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/tsconfig.json -------------------------------------------------------------------------------- /types/index.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/types/index.d.ts -------------------------------------------------------------------------------- /types/test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/types/test.tsx -------------------------------------------------------------------------------- /types/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/types/tsconfig.json -------------------------------------------------------------------------------- /webpack.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/albertogasparin/react-magnetic-di/HEAD/webpack.config.js --------------------------------------------------------------------------------