From 30c990bb3e76a395bf88a8835086705d11684a6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bart=C5=82omiej=20G=C5=82ownia?= Date: Thu, 24 Mar 2022 15:29:38 +0100 Subject: [PATCH] #128 Add positions library --- libs/positions/.babelrc | 6 +++ libs/positions/.eslintrc.json | 18 ++++++++ libs/positions/README.md | 7 ++++ libs/positions/jest.config.js | 14 +++++++ libs/positions/package.json | 4 ++ libs/positions/project.json | 43 ++++++++++++++++++++ libs/positions/src/index.ts | 1 + libs/positions/src/lib/positions.module.scss | 0 libs/positions/src/lib/positions.spec.tsx | 10 +++++ libs/positions/src/lib/positions.tsx | 14 +++++++ libs/positions/tsconfig.json | 25 ++++++++++++ libs/positions/tsconfig.lib.json | 22 ++++++++++ libs/positions/tsconfig.spec.json | 19 +++++++++ tsconfig.base.json | 1 + workspace.json | 1 + 15 files changed, 185 insertions(+) create mode 100644 libs/positions/.babelrc create mode 100644 libs/positions/.eslintrc.json create mode 100644 libs/positions/README.md create mode 100644 libs/positions/jest.config.js create mode 100644 libs/positions/package.json create mode 100644 libs/positions/project.json create mode 100644 libs/positions/src/index.ts create mode 100644 libs/positions/src/lib/positions.module.scss create mode 100644 libs/positions/src/lib/positions.spec.tsx create mode 100644 libs/positions/src/lib/positions.tsx create mode 100644 libs/positions/tsconfig.json create mode 100644 libs/positions/tsconfig.lib.json create mode 100644 libs/positions/tsconfig.spec.json diff --git a/libs/positions/.babelrc b/libs/positions/.babelrc new file mode 100644 index 000000000..9f6abe49d --- /dev/null +++ b/libs/positions/.babelrc @@ -0,0 +1,6 @@ +{ + "presets": [ + "@nrwl/next/babel" + ], + "plugins": [] +} diff --git a/libs/positions/.eslintrc.json b/libs/positions/.eslintrc.json new file mode 100644 index 000000000..734ddacee --- /dev/null +++ b/libs/positions/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["plugin:@nrwl/nx/react", "../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/libs/positions/README.md b/libs/positions/README.md new file mode 100644 index 000000000..a12e63868 --- /dev/null +++ b/libs/positions/README.md @@ -0,0 +1,7 @@ +# positions + +This library was generated with [Nx](https://nx.dev). + +## Running unit tests + +Run `nx test positions` to execute the unit tests via [Jest](https://jestjs.io). diff --git a/libs/positions/jest.config.js b/libs/positions/jest.config.js new file mode 100644 index 000000000..d6f658598 --- /dev/null +++ b/libs/positions/jest.config.js @@ -0,0 +1,14 @@ +module.exports = { + displayName: 'positions', + preset: '../../jest.preset.js', + globals: { + 'ts-jest': { + tsconfig: '/tsconfig.spec.json', + }, + }, + transform: { + '^.+\\.[tj]sx?$': 'ts-jest', + }, + moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx'], + coverageDirectory: '../../coverage/libs/positions', +}; diff --git a/libs/positions/package.json b/libs/positions/package.json new file mode 100644 index 000000000..cbb7b1ee3 --- /dev/null +++ b/libs/positions/package.json @@ -0,0 +1,4 @@ +{ + "name": "@vegaprotocol/positions", + "version": "0.0.1" +} diff --git a/libs/positions/project.json b/libs/positions/project.json new file mode 100644 index 000000000..4d6252b24 --- /dev/null +++ b/libs/positions/project.json @@ -0,0 +1,43 @@ +{ + "root": "libs/positions", + "sourceRoot": "libs/positions/src", + "projectType": "library", + "tags": [], + "targets": { + "build": { + "executor": "@nrwl/web:rollup", + "outputs": ["{options.outputPath}"], + "options": { + "outputPath": "dist/libs/positions", + "tsConfig": "libs/positions/tsconfig.lib.json", + "project": "libs/positions/package.json", + "entryFile": "libs/positions/src/index.ts", + "external": ["react/jsx-runtime"], + "rollupConfig": "@nrwl/react/plugins/bundle-rollup", + "compiler": "babel", + "assets": [ + { + "glob": "libs/positions/README.md", + "input": ".", + "output": "." + } + ] + } + }, + "lint": { + "executor": "@nrwl/linter:eslint", + "outputs": ["{options.outputFile}"], + "options": { + "lintFilePatterns": ["libs/positions/**/*.{ts,tsx,js,jsx}"] + } + }, + "test": { + "executor": "@nrwl/jest:jest", + "outputs": ["coverage/libs/positions"], + "options": { + "jestConfig": "libs/positions/jest.config.js", + "passWithNoTests": true + } + } + } +} diff --git a/libs/positions/src/index.ts b/libs/positions/src/index.ts new file mode 100644 index 000000000..0ea617847 --- /dev/null +++ b/libs/positions/src/index.ts @@ -0,0 +1 @@ +export * from './lib/positions'; diff --git a/libs/positions/src/lib/positions.module.scss b/libs/positions/src/lib/positions.module.scss new file mode 100644 index 000000000..e69de29bb diff --git a/libs/positions/src/lib/positions.spec.tsx b/libs/positions/src/lib/positions.spec.tsx new file mode 100644 index 000000000..3c2ac0d27 --- /dev/null +++ b/libs/positions/src/lib/positions.spec.tsx @@ -0,0 +1,10 @@ +import { render } from '@testing-library/react'; + +import Positions from './positions'; + +describe('Positions', () => { + it('should render successfully', () => { + const { baseElement } = render(); + expect(baseElement).toBeTruthy(); + }); +}); diff --git a/libs/positions/src/lib/positions.tsx b/libs/positions/src/lib/positions.tsx new file mode 100644 index 000000000..5fd46a0ed --- /dev/null +++ b/libs/positions/src/lib/positions.tsx @@ -0,0 +1,14 @@ +import './positions.module.scss'; + +/* eslint-disable-next-line */ +export interface PositionsProps {} + +export function Positions(props: PositionsProps) { + return ( +
+

Welcome to Positions!

+
+ ); +} + +export default Positions; diff --git a/libs/positions/tsconfig.json b/libs/positions/tsconfig.json new file mode 100644 index 000000000..4c089585e --- /dev/null +++ b/libs/positions/tsconfig.json @@ -0,0 +1,25 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "jsx": "react-jsx", + "allowJs": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitOverride": true, + "noPropertyAccessFromIndexSignature": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + } + ] +} diff --git a/libs/positions/tsconfig.lib.json b/libs/positions/tsconfig.lib.json new file mode 100644 index 000000000..de828a9a8 --- /dev/null +++ b/libs/positions/tsconfig.lib.json @@ -0,0 +1,22 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "types": ["node"] + }, + "files": [ + "../../node_modules/@nrwl/react/typings/cssmodule.d.ts", + "../../node_modules/@nrwl/next/typings/image.d.ts" + ], + "exclude": [ + "**/*.spec.ts", + "**/*.test.ts", + "**/*.spec.tsx", + "**/*.test.tsx", + "**/*.spec.js", + "**/*.test.js", + "**/*.spec.jsx", + "**/*.test.jsx" + ], + "include": ["**/*.js", "**/*.jsx", "**/*.ts", "**/*.tsx"] +} diff --git a/libs/positions/tsconfig.spec.json b/libs/positions/tsconfig.spec.json new file mode 100644 index 000000000..67f149c4c --- /dev/null +++ b/libs/positions/tsconfig.spec.json @@ -0,0 +1,19 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": [ + "**/*.test.ts", + "**/*.spec.ts", + "**/*.test.tsx", + "**/*.spec.tsx", + "**/*.test.js", + "**/*.spec.js", + "**/*.test.jsx", + "**/*.spec.jsx", + "**/*.d.ts" + ] +} diff --git a/tsconfig.base.json b/tsconfig.base.json index 9ca955a42..90f9d8d30 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -20,6 +20,7 @@ "@vegaprotocol/market-list": ["libs/market-list/src/index.ts"], "@vegaprotocol/network-stats": ["libs/network-stats/src/index.ts"], "@vegaprotocol/order-list": ["libs/order-list/src/index.ts"], + "@vegaprotocol/positions": ["libs/positions/src/index.ts"], "@vegaprotocol/react-helpers": ["libs/react-helpers/src/index.ts"], "@vegaprotocol/tailwindcss-config": [ "libs/tailwindcss-config/src/index.js" diff --git a/workspace.json b/workspace.json index 271efd4cf..3410110b8 100644 --- a/workspace.json +++ b/workspace.json @@ -8,6 +8,7 @@ "market-list": "libs/market-list", "network-stats": "libs/network-stats", "order-list": "libs/order-list", + "positions": "libs/positions", "react-helpers": "libs/react-helpers", "stats": "apps/stats", "stats-e2e": "apps/stats-e2e",