From 9cc406a8cb2f9dbbb9f5e4c3fea34ad262f91371 Mon Sep 17 00:00:00 2001 From: Chris Trevino Date: Fri, 7 Jun 2019 14:26:22 -0700 Subject: [PATCH 1/8] refactor: remove cjs builds --- packages/dnd-core/package.json | 11 ++- packages/dnd-core/tsconfig.cjs.json | 8 -- .../tsconfig.json} | 4 +- .../documentation/src/components/layout.tsx | 2 +- .../documentation/src/util/renderHtmlAst.ts | 4 +- packages/documentation/tsconfig.json | 3 +- packages/examples-decorators/package.json | 9 +-- .../examples-decorators/tsconfig.cjs.json | 10 --- .../examples-decorators/tsconfig.docs.json | 2 +- .../tsconfig.json} | 4 +- packages/examples-hooks/package.json | 9 +-- packages/examples-hooks/tsconfig.cjs.json | 10 --- packages/examples-hooks/tsconfig.docs.json | 2 +- .../tsconfig.json} | 4 +- packages/react-dnd-decorators/package.json | 11 ++- .../react-dnd-decorators/src/DragLayer.tsx | 2 +- .../react-dnd-decorators/src/DragSource.ts | 4 +- .../react-dnd-decorators/src/DropTarget.ts | 2 +- .../src/createSourceFactory.ts | 2 +- .../src/createTargetFactory.ts | 2 +- .../src/decorateHandler.tsx | 2 +- .../src/utils/disposables/Disposable.ts | 2 +- .../react-dnd-decorators/tsconfig.cjs.json | 8 -- .../{tsconfig.esm.json => tsconfig.json} | 4 +- packages/react-dnd-html5-backend/package.json | 73 +++++++++---------- .../react-dnd-html5-backend/tsconfig.esm.json | 8 -- .../{tsconfig.cjs.json => tsconfig.json} | 4 +- packages/react-dnd-test-backend/package.json | 10 +-- .../react-dnd-test-backend/tsconfig.esm.json | 8 -- .../tsconfig.json} | 4 +- packages/react-dnd-test-utils/package.json | 8 +- .../react-dnd-test-utils/tsconfig.esm.json | 8 -- .../tsconfig.json} | 4 +- packages/react-dnd/package.json | 11 ++- packages/react-dnd/tsconfig.cjs.json | 8 -- .../{tsconfig.esm.json => tsconfig.json} | 4 +- tsconfig.cjs.base.json | 8 -- tsconfig.esm.base.json | 14 ---- tsconfig.json | 13 +++- 39 files changed, 109 insertions(+), 197 deletions(-) delete mode 100644 packages/dnd-core/tsconfig.cjs.json rename packages/{react-dnd-test-utils/tsconfig.cjs.json => dnd-core/tsconfig.json} (53%) delete mode 100644 packages/examples-decorators/tsconfig.cjs.json rename packages/{examples-hooks/tsconfig.esm.json => examples-decorators/tsconfig.json} (63%) delete mode 100644 packages/examples-hooks/tsconfig.cjs.json rename packages/{examples-decorators/tsconfig.esm.json => examples-hooks/tsconfig.json} (63%) delete mode 100644 packages/react-dnd-decorators/tsconfig.cjs.json rename packages/react-dnd-decorators/{tsconfig.esm.json => tsconfig.json} (53%) delete mode 100644 packages/react-dnd-html5-backend/tsconfig.esm.json rename packages/react-dnd-html5-backend/{tsconfig.cjs.json => tsconfig.json} (54%) delete mode 100644 packages/react-dnd-test-backend/tsconfig.esm.json rename packages/{dnd-core/tsconfig.esm.json => react-dnd-test-backend/tsconfig.json} (53%) delete mode 100644 packages/react-dnd-test-utils/tsconfig.esm.json rename packages/{react-dnd-test-backend/tsconfig.cjs.json => react-dnd-test-utils/tsconfig.json} (53%) delete mode 100644 packages/react-dnd/tsconfig.cjs.json rename packages/react-dnd/{tsconfig.esm.json => tsconfig.json} (59%) delete mode 100644 tsconfig.cjs.base.json delete mode 100644 tsconfig.esm.base.json diff --git a/packages/dnd-core/package.json b/packages/dnd-core/package.json index 0ad213a0e5..e0b2f93122 100644 --- a/packages/dnd-core/package.json +++ b/packages/dnd-core/package.json @@ -3,14 +3,13 @@ "version": "7.6.0", "description": "Drag and drop sans the GUI", "license": "MIT", - "main": "./lib/esm/index.js", - "module": "./lib/esm/index.js", - "types": "./lib/esm/index.d.ts", + "main": "./lib/index.js", + "module": "./lib/index.js", + "types": "./lib/index.d.ts", "scripts": { - "build:esm": "tsc -b tsconfig.esm.json", - "build": "run-p build:*", + "build": "tsc -b tsconfig.json", "clean": "rimraf lib", - "start": "tsc -b tsconfig.esm.json -w --preserveWatchOutput", + "start": "tsc -b tsconfig.json -w --preserveWatchOutput", "test": "run-s clean build" }, "repository": { diff --git a/packages/dnd-core/tsconfig.cjs.json b/packages/dnd-core/tsconfig.cjs.json deleted file mode 100644 index 407effa645..0000000000 --- a/packages/dnd-core/tsconfig.cjs.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "../../tsconfig.cjs.base.json", - "compilerOptions": { - "outDir": "./lib/cjs", - "baseUrl": "./src" - }, - "include": ["src/index.ts"] -} diff --git a/packages/react-dnd-test-utils/tsconfig.cjs.json b/packages/dnd-core/tsconfig.json similarity index 53% rename from packages/react-dnd-test-utils/tsconfig.cjs.json rename to packages/dnd-core/tsconfig.json index f195f81b8d..d91fcc9c66 100644 --- a/packages/react-dnd-test-utils/tsconfig.cjs.json +++ b/packages/dnd-core/tsconfig.json @@ -1,7 +1,7 @@ { - "extends": "../../tsconfig.cjs.base.json", + "extends": "../../tsconfig.json", "compilerOptions": { - "outDir": "./lib/cjs", + "outDir": "./lib", "baseUrl": "./src" }, "include": ["src/index.ts"] diff --git a/packages/documentation/src/components/layout.tsx b/packages/documentation/src/components/layout.tsx index 03768f68ab..530d01993c 100644 --- a/packages/documentation/src/components/layout.tsx +++ b/packages/documentation/src/components/layout.tsx @@ -4,7 +4,7 @@ import * as React from 'react' import Helmet from 'react-helmet' import styled from 'styled-components' import HTML5Backend from 'react-dnd-html5-backend' -import { isDebugMode } from 'react-dnd-examples-hooks/lib/esm/index' +import { isDebugMode } from 'react-dnd-examples-hooks/lib/index' import { DndProvider } from 'react-dnd' import PageBody from './pagebody' import Sidebar from './sidebar' diff --git a/packages/documentation/src/util/renderHtmlAst.ts b/packages/documentation/src/util/renderHtmlAst.ts index aa40ef5a38..05b18c1800 100644 --- a/packages/documentation/src/util/renderHtmlAst.ts +++ b/packages/documentation/src/util/renderHtmlAst.ts @@ -1,7 +1,7 @@ declare var require: any import { createElement } from 'react' -import { componentIndex as decoratorComponentIndex } from 'react-dnd-examples-decorators/lib/esm/index' -import { componentIndex as hookComponentIndex } from 'react-dnd-examples-hooks/lib/esm/index' +import { componentIndex as decoratorComponentIndex } from 'react-dnd-examples-decorators/lib/index' +import { componentIndex as hookComponentIndex } from 'react-dnd-examples-hooks/lib/index' import { parse } from 'query-string' import processImages from './processImagesInMarkdownAst' import exampleTabs from '../components/exampleTabs' diff --git a/packages/documentation/tsconfig.json b/packages/documentation/tsconfig.json index 0ea5b61700..57c6c56669 100644 --- a/packages/documentation/tsconfig.json +++ b/packages/documentation/tsconfig.json @@ -1,10 +1,11 @@ { - "extends": "../../tsconfig.esm.base.json", + "extends": "../../tsconfig.json", "compilerOptions": { "outDir": "./lib", "baseUrl": "./", "allowSyntheticDefaultImports": true, "esModuleInterop": true, + "declaration": false, "allowJs": true }, "include": ["./src/index.ts"] diff --git a/packages/examples-decorators/package.json b/packages/examples-decorators/package.json index ca6629e243..1be8b67bf3 100644 --- a/packages/examples-decorators/package.json +++ b/packages/examples-decorators/package.json @@ -3,8 +3,8 @@ "version": "7.6.0", "private": true, "description": "Drag and Drop for React", - "main": "lib/cjs/index.js", - "types": "lib/cjs/index.d.ts", + "main": "lib/index.js", + "types": "lib/index.d.ts", "repository": { "type": "git", "url": "https://github.com/react-dnd/react-dnd.git" @@ -12,12 +12,11 @@ "license": "MIT", "scripts": { "clean": "rimraf lib", - "build:cjs": "tsc -b tsconfig.cjs.json", - "build:esm": "tsc -b tsconfig.esm.json", + "build:ts": "tsc -b tsconfig.json", "build:docs": "tsc -b tsconfig.docs.json", "build": "run-p build:*", "test": "run-s clean build", - "start": "tsc -b tsconfig.cjs.json -w --preserveWatchOutput" + "start": "tsc -b tsconfig.json -w --preserveWatchOutput" }, "dependencies": { "@types/faker": "^4.1.5", diff --git a/packages/examples-decorators/tsconfig.cjs.json b/packages/examples-decorators/tsconfig.cjs.json deleted file mode 100644 index b529304c59..0000000000 --- a/packages/examples-decorators/tsconfig.cjs.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.cjs.base.json", - "compilerOptions": { - "allowSyntheticDefaultImports": true, - "esModuleInterop": true, - "outDir": "./lib/cjs", - "baseUrl": "./" - }, - "include": ["./src/index.ts"] -} diff --git a/packages/examples-decorators/tsconfig.docs.json b/packages/examples-decorators/tsconfig.docs.json index 739c072bfb..0f67e8a6d7 100644 --- a/packages/examples-decorators/tsconfig.docs.json +++ b/packages/examples-decorators/tsconfig.docs.json @@ -1,5 +1,5 @@ { - "extends": "./tsconfig.esm.json", + "extends": "./tsconfig.json", "compilerOptions": { "allowSyntheticDefaultImports": true, "jsx": "preserve", diff --git a/packages/examples-hooks/tsconfig.esm.json b/packages/examples-decorators/tsconfig.json similarity index 63% rename from packages/examples-hooks/tsconfig.esm.json rename to packages/examples-decorators/tsconfig.json index 4fb3529765..a4f964ae19 100644 --- a/packages/examples-hooks/tsconfig.esm.json +++ b/packages/examples-decorators/tsconfig.json @@ -1,8 +1,8 @@ { - "extends": "../../tsconfig.esm.base.json", + "extends": "../../tsconfig.json", "compilerOptions": { "allowSyntheticDefaultImports": true, - "outDir": "./lib/esm", + "outDir": "./lib", "baseUrl": "./" }, "include": ["./src/index.ts"] diff --git a/packages/examples-hooks/package.json b/packages/examples-hooks/package.json index 2b26ca6272..1aca49e78b 100644 --- a/packages/examples-hooks/package.json +++ b/packages/examples-hooks/package.json @@ -3,8 +3,8 @@ "version": "7.6.0", "private": true, "description": "Drag and Drop for React", - "main": "lib/cjs/index.js", - "types": "lib/cjs/index.d.ts", + "main": "lib/index.js", + "types": "lib/index.d.ts", "repository": { "type": "git", "url": "https://github.com/react-dnd/react-dnd.git" @@ -12,12 +12,11 @@ "license": "MIT", "scripts": { "clean": "rimraf lib", - "build:cjs": "tsc -b tsconfig.cjs.json", - "build:esm": "tsc -b tsconfig.esm.json", + "build:ts": "tsc -b tsconfig.json", "build:docs": "tsc -b tsconfig.docs.json", "build": "run-p build:*", "test": "run-s clean build", - "start": "tsc -b tsconfig.cjs.json -w --preserveWatchOutput" + "start": "tsc -b tsconfig.json -w --preserveWatchOutput" }, "dependencies": { "@types/faker": "^4.1.5", diff --git a/packages/examples-hooks/tsconfig.cjs.json b/packages/examples-hooks/tsconfig.cjs.json deleted file mode 100644 index b529304c59..0000000000 --- a/packages/examples-hooks/tsconfig.cjs.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.cjs.base.json", - "compilerOptions": { - "allowSyntheticDefaultImports": true, - "esModuleInterop": true, - "outDir": "./lib/cjs", - "baseUrl": "./" - }, - "include": ["./src/index.ts"] -} diff --git a/packages/examples-hooks/tsconfig.docs.json b/packages/examples-hooks/tsconfig.docs.json index 739c072bfb..0f67e8a6d7 100644 --- a/packages/examples-hooks/tsconfig.docs.json +++ b/packages/examples-hooks/tsconfig.docs.json @@ -1,5 +1,5 @@ { - "extends": "./tsconfig.esm.json", + "extends": "./tsconfig.json", "compilerOptions": { "allowSyntheticDefaultImports": true, "jsx": "preserve", diff --git a/packages/examples-decorators/tsconfig.esm.json b/packages/examples-hooks/tsconfig.json similarity index 63% rename from packages/examples-decorators/tsconfig.esm.json rename to packages/examples-hooks/tsconfig.json index 4fb3529765..a4f964ae19 100644 --- a/packages/examples-decorators/tsconfig.esm.json +++ b/packages/examples-hooks/tsconfig.json @@ -1,8 +1,8 @@ { - "extends": "../../tsconfig.esm.base.json", + "extends": "../../tsconfig.json", "compilerOptions": { "allowSyntheticDefaultImports": true, - "outDir": "./lib/esm", + "outDir": "./lib", "baseUrl": "./" }, "include": ["./src/index.ts"] diff --git a/packages/react-dnd-decorators/package.json b/packages/react-dnd-decorators/package.json index cc3092cd2d..12b05574fe 100644 --- a/packages/react-dnd-decorators/package.json +++ b/packages/react-dnd-decorators/package.json @@ -2,9 +2,9 @@ "name": "react-dnd-decorators", "version": "7.6.0", "description": "Drag and Drop for React (Decorator API)", - "main": "lib/cjs/index.js", - "module": "lib/esm/index.js", - "types": "lib/cjs/index.d.ts", + "main": "lib/index.js", + "module": "lib/index.js", + "types": "lib/index.d.ts", "repository": { "type": "git", "url": "https://github.com/react-dnd/react-dnd.git" @@ -14,12 +14,11 @@ "clean": "rimraf lib dist", "bundle:unmin": "webpack --mode development --output-filename=ReactDnD.js", "bundle:min": "webpack --mode production --output-filename=ReactDnD.min.js", - "transpile:cjs": "tsc -b tsconfig.cjs.json", - "transpile:esm": "tsc -b tsconfig.esm.json", + "transpile:esm": "tsc -b tsconfig.json", "transpile": "run-p transpile:*", "build": "run-p bundle:* transpile", "test": "run-s clean build", - "start": "tsc -b tsconfig.cjs.json -w --preserveWatchOutput" + "start": "tsc -b tsconfig.json -w --preserveWatchOutput" }, "dependencies": { "@types/hoist-non-react-statics": "^3.3.1", diff --git a/packages/react-dnd-decorators/src/DragLayer.tsx b/packages/react-dnd-decorators/src/DragLayer.tsx index 4b67d47bf6..2710ef0c93 100644 --- a/packages/react-dnd-decorators/src/DragLayer.tsx +++ b/packages/react-dnd-decorators/src/DragLayer.tsx @@ -3,7 +3,7 @@ import * as React from 'react' import checkDecoratorArguments from './utils/checkDecoratorArguments' import { DragDropManager, Unsubscribe } from 'dnd-core' import { DndContext, DndOptions } from 'react-dnd' -import { isPlainObject } from 'react-dnd/lib/esm/internals' +import { isPlainObject } from 'react-dnd/lib/internals' import { DragLayerCollector, DndComponentEnhancer } from './interfaces' import { isRefable } from './utils/isRefable' diff --git a/packages/react-dnd-decorators/src/DragSource.ts b/packages/react-dnd-decorators/src/DragSource.ts index 685d770247..8a168fdfdf 100644 --- a/packages/react-dnd-decorators/src/DragSource.ts +++ b/packages/react-dnd-decorators/src/DragSource.ts @@ -2,7 +2,7 @@ declare var require: any import * as React from 'react' import { SourceType, DragDropManager } from 'dnd-core' import { DndOptions } from 'react-dnd' -import { isPlainObject } from 'react-dnd/lib/esm/internals' +import { isPlainObject } from 'react-dnd/lib/internals' import { DndComponentEnhancer, DragSourceSpec, @@ -15,7 +15,7 @@ import { DragSourceMonitorImpl, SourceConnector, isValidType, -} from 'react-dnd/lib/esm/internals' +} from 'react-dnd/lib/internals' import createSourceFactory from './createSourceFactory' const invariant = require('invariant') diff --git a/packages/react-dnd-decorators/src/DropTarget.ts b/packages/react-dnd-decorators/src/DropTarget.ts index 1080b00bb9..45a9e3bb69 100644 --- a/packages/react-dnd-decorators/src/DropTarget.ts +++ b/packages/react-dnd-decorators/src/DropTarget.ts @@ -8,7 +8,7 @@ import { TargetConnector, DropTargetMonitorImpl, isPlainObject, -} from 'react-dnd/lib/esm/internals' +} from 'react-dnd/lib/internals' import { DropTargetSpec, DropTargetCollector, diff --git a/packages/react-dnd-decorators/src/createSourceFactory.ts b/packages/react-dnd-decorators/src/createSourceFactory.ts index 4d39586640..644a15b844 100644 --- a/packages/react-dnd-decorators/src/createSourceFactory.ts +++ b/packages/react-dnd-decorators/src/createSourceFactory.ts @@ -3,7 +3,7 @@ declare var process: any import * as React from 'react' import { DragSource, DragDropMonitor } from 'dnd-core' import { DragSourceMonitor } from 'react-dnd' -import { isPlainObject } from 'react-dnd/lib/esm/internals' +import { isPlainObject } from 'react-dnd/lib/internals' import { DragSourceSpec } from './interfaces' import { getDecoratedComponent } from './utils/getDecoratedComponent' diff --git a/packages/react-dnd-decorators/src/createTargetFactory.ts b/packages/react-dnd-decorators/src/createTargetFactory.ts index 55a83b0853..f3713adf9f 100644 --- a/packages/react-dnd-decorators/src/createTargetFactory.ts +++ b/packages/react-dnd-decorators/src/createTargetFactory.ts @@ -4,7 +4,7 @@ declare var process: any import * as React from 'react' import { DropTarget } from 'dnd-core' import { DropTargetMonitor } from 'react-dnd' -import { isPlainObject } from 'react-dnd/lib/esm/internals' +import { isPlainObject } from 'react-dnd/lib/internals' import { DropTargetSpec } from './interfaces' import { getDecoratedComponent } from './utils/getDecoratedComponent' diff --git a/packages/react-dnd-decorators/src/decorateHandler.tsx b/packages/react-dnd-decorators/src/decorateHandler.tsx index 50aa2f975c..b8db472b72 100644 --- a/packages/react-dnd-decorators/src/decorateHandler.tsx +++ b/packages/react-dnd-decorators/src/decorateHandler.tsx @@ -4,7 +4,7 @@ declare var process: any import * as React from 'react' import { DragDropManager, Identifier } from 'dnd-core' import { DndContext } from 'react-dnd' -import { Connector, isPlainObject } from 'react-dnd/lib/esm/internals' +import { Connector, isPlainObject } from 'react-dnd/lib/internals' import { DndComponent } from './interfaces' import { Disposable, diff --git a/packages/react-dnd-decorators/src/utils/disposables/Disposable.ts b/packages/react-dnd-decorators/src/utils/disposables/Disposable.ts index 5d6cd87895..b325af23a8 100644 --- a/packages/react-dnd-decorators/src/utils/disposables/Disposable.ts +++ b/packages/react-dnd-decorators/src/utils/disposables/Disposable.ts @@ -1,4 +1,4 @@ -import { isFunction, noop } from 'react-dnd/lib/esm/internals' +import { isFunction, noop } from 'react-dnd/lib/internals' /** * Provides a set of static methods for creating Disposables. diff --git a/packages/react-dnd-decorators/tsconfig.cjs.json b/packages/react-dnd-decorators/tsconfig.cjs.json deleted file mode 100644 index 364af46ac3..0000000000 --- a/packages/react-dnd-decorators/tsconfig.cjs.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "../../tsconfig.cjs.base.json", - "compilerOptions": { - "outDir": "./lib/cjs", - "baseUrl": "./", - }, - "include": ["./src/index.ts"] -} diff --git a/packages/react-dnd-decorators/tsconfig.esm.json b/packages/react-dnd-decorators/tsconfig.json similarity index 53% rename from packages/react-dnd-decorators/tsconfig.esm.json rename to packages/react-dnd-decorators/tsconfig.json index 3d77cfa240..50ce71513b 100644 --- a/packages/react-dnd-decorators/tsconfig.esm.json +++ b/packages/react-dnd-decorators/tsconfig.json @@ -1,7 +1,7 @@ { - "extends": "../../tsconfig.esm.base.json", + "extends": "../../tsconfig.json", "compilerOptions": { - "outDir": "./lib/esm", + "outDir": "./lib", "baseUrl": "./" }, "include": ["./src/index.ts"] diff --git a/packages/react-dnd-html5-backend/package.json b/packages/react-dnd-html5-backend/package.json index 9ce1cc02ff..33ecc2a49c 100644 --- a/packages/react-dnd-html5-backend/package.json +++ b/packages/react-dnd-html5-backend/package.json @@ -1,39 +1,38 @@ { - "name": "react-dnd-html5-backend", - "version": "7.6.0", - "description": "HTML5 backend for React DnD", - "main": "lib/cjs/index.js", - "module": "lib/esm/index.js", - "types": "lib/cjs/index.d.ts", - "license": "MIT", - "repository": { - "type": "git", - "url": "https://github.com/react-dnd/react-dnd.git" - }, - "scripts": { - "clean": "rimraf lib dist", - "transpile:cjs": "tsc -b tsconfig.cjs.json", - "transpile:esm": "tsc -b tsconfig.esm.json", - "transpile": "run-p transpile:*", - "bundle:unmin": "webpack --mode development --output-filename=ReactDnDHTML5Backend.js", - "bundle:min": "webpack --mode production --output-filename=ReactDnDHTML5Backend.min.js", - "build": "run-p bundle:* transpile", - "test": "run-s clean build", - "start": "tsc -b tsconfig.esm.json -w --preserveWatchOutput" - }, - "dependencies": { - "dnd-core": "^7.6.0" - }, - "devDependencies": { - "@types/react": "^16.8.19", - "npm-run-all": "^4.1.5", - "react": "^16.8.6", - "react-dnd-test-backend": "^7.6.0", - "react-dom": "^16.8.6", - "rimraf": "^2.6.3", - "ts-loader": "^6.0.2", - "typescript": "^3.5.1", - "webpack": "^4.32.2", - "webpack-cli": "^3.3.2" - } + "name": "react-dnd-html5-backend", + "version": "7.6.0", + "description": "HTML5 backend for React DnD", + "main": "lib/index.js", + "module": "lib/index.js", + "types": "lib/index.d.ts", + "license": "MIT", + "repository": { + "type": "git", + "url": "https://github.com/react-dnd/react-dnd.git" + }, + "scripts": { + "clean": "rimraf lib dist", + "transpile:esm": "tsc -b tsconfig.json", + "transpile": "run-p transpile:*", + "bundle:unmin": "webpack --mode development --output-filename=ReactDnDHTML5Backend.js", + "bundle:min": "webpack --mode production --output-filename=ReactDnDHTML5Backend.min.js", + "build": "run-p bundle:* transpile", + "test": "run-s clean build", + "start": "tsc -b tsconfig.json -w --preserveWatchOutput" + }, + "dependencies": { + "dnd-core": "^7.6.0" + }, + "devDependencies": { + "@types/react": "^16.8.19", + "npm-run-all": "^4.1.5", + "react": "^16.8.6", + "react-dnd-test-backend": "^7.6.0", + "react-dom": "^16.8.6", + "rimraf": "^2.6.3", + "ts-loader": "^6.0.2", + "typescript": "^3.5.1", + "webpack": "^4.32.2", + "webpack-cli": "^3.3.2" + } } diff --git a/packages/react-dnd-html5-backend/tsconfig.esm.json b/packages/react-dnd-html5-backend/tsconfig.esm.json deleted file mode 100644 index f7ef3a9316..0000000000 --- a/packages/react-dnd-html5-backend/tsconfig.esm.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "../../tsconfig.esm.base.json", - "compilerOptions": { - "outDir": "./lib/esm", - "baseUrl": "./src" - }, - "include": ["./src/index.ts"] -} diff --git a/packages/react-dnd-html5-backend/tsconfig.cjs.json b/packages/react-dnd-html5-backend/tsconfig.json similarity index 54% rename from packages/react-dnd-html5-backend/tsconfig.cjs.json rename to packages/react-dnd-html5-backend/tsconfig.json index 6980c32240..d655744ac2 100644 --- a/packages/react-dnd-html5-backend/tsconfig.cjs.json +++ b/packages/react-dnd-html5-backend/tsconfig.json @@ -1,7 +1,7 @@ { - "extends": "../../tsconfig.cjs.base.json", + "extends": "../../tsconfig.json", "compilerOptions": { - "outDir": "./lib/cjs", + "outDir": "./lib", "baseUrl": "./src" }, "include": ["./src/index.ts"] diff --git a/packages/react-dnd-test-backend/package.json b/packages/react-dnd-test-backend/package.json index cf282bba9b..e905e5eea7 100644 --- a/packages/react-dnd-test-backend/package.json +++ b/packages/react-dnd-test-backend/package.json @@ -2,9 +2,9 @@ "name": "react-dnd-test-backend", "version": "7.6.0", "description": "A mock backend for testing React DnD apps", - "main": "lib/cjs/index.js", - "module": "lib/esm/index.js", - "types": "lib/cjs/index.d.ts", + "main": "lib/index.js", + "module": "lib/index.js", + "types": "lib/index.d.ts", "license": "MIT", "repository": { "type": "git", @@ -12,9 +12,7 @@ }, "scripts": { "clean": "rimraf lib", - "build:cjs": "tsc -b tsconfig.cjs.json", - "build:esm": "tsc -b tsconfig.esm.json", - "build": "run-p build:*", + "build": "tsc -b tsconfig.json", "test": "run-s clean build", "prepublish": "npm run test" }, diff --git a/packages/react-dnd-test-backend/tsconfig.esm.json b/packages/react-dnd-test-backend/tsconfig.esm.json deleted file mode 100644 index b724ca1fb1..0000000000 --- a/packages/react-dnd-test-backend/tsconfig.esm.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "../../tsconfig.esm.base.json", - "compilerOptions": { - "outDir": "./lib/esm", - "baseUrl": "./src" - }, - "include": ["src/index.ts"] -} diff --git a/packages/dnd-core/tsconfig.esm.json b/packages/react-dnd-test-backend/tsconfig.json similarity index 53% rename from packages/dnd-core/tsconfig.esm.json rename to packages/react-dnd-test-backend/tsconfig.json index b724ca1fb1..d91fcc9c66 100644 --- a/packages/dnd-core/tsconfig.esm.json +++ b/packages/react-dnd-test-backend/tsconfig.json @@ -1,7 +1,7 @@ { - "extends": "../../tsconfig.esm.base.json", + "extends": "../../tsconfig.json", "compilerOptions": { - "outDir": "./lib/esm", + "outDir": "./lib", "baseUrl": "./src" }, "include": ["src/index.ts"] diff --git a/packages/react-dnd-test-utils/package.json b/packages/react-dnd-test-utils/package.json index c6fc7804b3..a748f9a62d 100644 --- a/packages/react-dnd-test-utils/package.json +++ b/packages/react-dnd-test-utils/package.json @@ -2,13 +2,11 @@ "name": "react-dnd-test-utils", "version": "7.6.0", "license": "MIT", - "main": "lib/cjs/index.js", - "module": "lib/esm/index.js", + "main": "lib/index.js", + "module": "lib/index.js", "scripts": { "clean": "rimraf lib", - "build:cjs": "tsc -b tsconfig.cjs.json", - "build:esm": "tsc -b tsconfig.esm.json", - "build": "run-p build:*", + "build": "tsc -b tsconfig.json", "test": "run-s clean build" }, "devDependencies": { diff --git a/packages/react-dnd-test-utils/tsconfig.esm.json b/packages/react-dnd-test-utils/tsconfig.esm.json deleted file mode 100644 index b724ca1fb1..0000000000 --- a/packages/react-dnd-test-utils/tsconfig.esm.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "../../tsconfig.esm.base.json", - "compilerOptions": { - "outDir": "./lib/esm", - "baseUrl": "./src" - }, - "include": ["src/index.ts"] -} diff --git a/packages/react-dnd-test-backend/tsconfig.cjs.json b/packages/react-dnd-test-utils/tsconfig.json similarity index 53% rename from packages/react-dnd-test-backend/tsconfig.cjs.json rename to packages/react-dnd-test-utils/tsconfig.json index f195f81b8d..d91fcc9c66 100644 --- a/packages/react-dnd-test-backend/tsconfig.cjs.json +++ b/packages/react-dnd-test-utils/tsconfig.json @@ -1,7 +1,7 @@ { - "extends": "../../tsconfig.cjs.base.json", + "extends": "../../tsconfig.json", "compilerOptions": { - "outDir": "./lib/cjs", + "outDir": "./lib", "baseUrl": "./src" }, "include": ["src/index.ts"] diff --git a/packages/react-dnd/package.json b/packages/react-dnd/package.json index 634bf6c412..a4f336e104 100644 --- a/packages/react-dnd/package.json +++ b/packages/react-dnd/package.json @@ -2,9 +2,9 @@ "name": "react-dnd", "version": "7.6.0", "description": "Drag and Drop for React", - "main": "lib/cjs/index.js", - "module": "lib/esm/index.js", - "types": "lib/cjs/index.d.ts", + "main": "lib/index.js", + "module": "lib/index.js", + "types": "lib/index.d.ts", "repository": { "type": "git", "url": "https://github.com/react-dnd/react-dnd.git" @@ -14,12 +14,11 @@ "clean": "rimraf lib dist", "bundle:unmin": "webpack --mode development --output-filename=ReactDnD.js", "bundle:min": "webpack --mode production --output-filename=ReactDnD.min.js", - "transpile:cjs": "tsc -b tsconfig.cjs.json", - "transpile:esm": "tsc -b tsconfig.esm.json", + "transpile:esm": "tsc -b tsconfig.json", "transpile": "run-p transpile:*", "build": "run-p bundle:* transpile", "test": "run-s clean build", - "start": "tsc -b tsconfig.cjs.json -w --preserveWatchOutput" + "start": "tsc -b tsconfig.json -w --preserveWatchOutput" }, "dependencies": { "@types/hoist-non-react-statics": "^3.3.1", diff --git a/packages/react-dnd/tsconfig.cjs.json b/packages/react-dnd/tsconfig.cjs.json deleted file mode 100644 index 84482b0285..0000000000 --- a/packages/react-dnd/tsconfig.cjs.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "../../tsconfig.cjs.base.json", - "compilerOptions": { - "outDir": "./lib/cjs", - "baseUrl": "./" - }, - "include": ["./src/index.ts", "./src/internals.ts"] -} diff --git a/packages/react-dnd/tsconfig.esm.json b/packages/react-dnd/tsconfig.json similarity index 59% rename from packages/react-dnd/tsconfig.esm.json rename to packages/react-dnd/tsconfig.json index 690554c6dc..02cced6f76 100644 --- a/packages/react-dnd/tsconfig.esm.json +++ b/packages/react-dnd/tsconfig.json @@ -1,7 +1,7 @@ { - "extends": "../../tsconfig.esm.base.json", + "extends": "../../tsconfig.json", "compilerOptions": { - "outDir": "./lib/esm", + "outDir": "./lib", "baseUrl": "./" }, "include": ["./src/index.ts", "./src/internals.ts"] diff --git a/tsconfig.cjs.base.json b/tsconfig.cjs.base.json deleted file mode 100644 index cca1be2cab..0000000000 --- a/tsconfig.cjs.base.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.esm.base.json", - "compilerOptions": { - "target": "es5", - "module": "commonjs", - "moduleResolution": "node" - } -} diff --git a/tsconfig.esm.base.json b/tsconfig.esm.base.json deleted file mode 100644 index 84b9ff5063..0000000000 --- a/tsconfig.esm.base.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "compilerOptions": { - "incremental": true, - "target": "es2015", - "module": "esnext", - "moduleResolution": "node", - "lib": ["esnext", "dom"], - "strict": true, - "experimentalDecorators": true, - "noUnusedLocals": true, - "jsx": "react", - "declaration": true - } -} diff --git a/tsconfig.json b/tsconfig.json index 92b51498d6..0c2330c4a8 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,6 +1,17 @@ { - "extends": "./tsconfig.cjs.base.json", + "extends": "./tsconfig.json", "compilerOptions": { + "incremental": true, + "target": "es2015", + "module": "esnext", + "moduleResolution": "node", + "lib": ["esnext", "dom"], + "strict": true, + "experimentalDecorators": true, + "noUnusedLocals": true, + "jsx": "react", + "declaration": true, + "noEmit": true, "baseUrl": ".", "allowSyntheticDefaultImports": true, From 3184d22b40e211038727926d86552cd70c06df69 Mon Sep 17 00:00:00 2001 From: Chris Trevino Date: Fri, 7 Jun 2019 14:32:04 -0700 Subject: [PATCH 2/8] fix: update tsconfigs --- packages/dnd-core/tsconfig.json | 4 ++-- packages/documentation/tsconfig.json | 2 +- packages/examples-decorators/tsconfig.json | 2 +- packages/examples-hooks/tsconfig.json | 2 +- packages/react-dnd-decorators/tsconfig.json | 2 +- packages/react-dnd-html5-backend/tsconfig.json | 2 +- packages/react-dnd-test-backend/tsconfig.json | 2 +- packages/react-dnd-test-utils/tsconfig.json | 2 +- packages/react-dnd/tsconfig.json | 2 +- tsconfig.base.json | 14 ++++++++++++++ tsconfig.json | 13 +------------ 11 files changed, 25 insertions(+), 22 deletions(-) create mode 100644 tsconfig.base.json diff --git a/packages/dnd-core/tsconfig.json b/packages/dnd-core/tsconfig.json index d91fcc9c66..91614ec1d4 100644 --- a/packages/dnd-core/tsconfig.json +++ b/packages/dnd-core/tsconfig.json @@ -1,7 +1,7 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { - "outDir": "./lib", + "outDir": "lib", "baseUrl": "./src" }, "include": ["src/index.ts"] diff --git a/packages/documentation/tsconfig.json b/packages/documentation/tsconfig.json index 57c6c56669..e371b207bf 100644 --- a/packages/documentation/tsconfig.json +++ b/packages/documentation/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "outDir": "./lib", "baseUrl": "./", diff --git a/packages/examples-decorators/tsconfig.json b/packages/examples-decorators/tsconfig.json index a4f964ae19..affb9ae912 100644 --- a/packages/examples-decorators/tsconfig.json +++ b/packages/examples-decorators/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "allowSyntheticDefaultImports": true, "outDir": "./lib", diff --git a/packages/examples-hooks/tsconfig.json b/packages/examples-hooks/tsconfig.json index a4f964ae19..affb9ae912 100644 --- a/packages/examples-hooks/tsconfig.json +++ b/packages/examples-hooks/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "allowSyntheticDefaultImports": true, "outDir": "./lib", diff --git a/packages/react-dnd-decorators/tsconfig.json b/packages/react-dnd-decorators/tsconfig.json index 50ce71513b..8b69c98065 100644 --- a/packages/react-dnd-decorators/tsconfig.json +++ b/packages/react-dnd-decorators/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "outDir": "./lib", "baseUrl": "./" diff --git a/packages/react-dnd-html5-backend/tsconfig.json b/packages/react-dnd-html5-backend/tsconfig.json index d655744ac2..7ab4bba54f 100644 --- a/packages/react-dnd-html5-backend/tsconfig.json +++ b/packages/react-dnd-html5-backend/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "outDir": "./lib", "baseUrl": "./src" diff --git a/packages/react-dnd-test-backend/tsconfig.json b/packages/react-dnd-test-backend/tsconfig.json index d91fcc9c66..4a3bc5caff 100644 --- a/packages/react-dnd-test-backend/tsconfig.json +++ b/packages/react-dnd-test-backend/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "outDir": "./lib", "baseUrl": "./src" diff --git a/packages/react-dnd-test-utils/tsconfig.json b/packages/react-dnd-test-utils/tsconfig.json index d91fcc9c66..4a3bc5caff 100644 --- a/packages/react-dnd-test-utils/tsconfig.json +++ b/packages/react-dnd-test-utils/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "outDir": "./lib", "baseUrl": "./src" diff --git a/packages/react-dnd/tsconfig.json b/packages/react-dnd/tsconfig.json index 02cced6f76..94fbce4f74 100644 --- a/packages/react-dnd/tsconfig.json +++ b/packages/react-dnd/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "outDir": "./lib", "baseUrl": "./" diff --git a/tsconfig.base.json b/tsconfig.base.json new file mode 100644 index 0000000000..8aa4af19a4 --- /dev/null +++ b/tsconfig.base.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "incremental": true, + "target": "esnext", + "module": "esnext", + "moduleResolution": "node", + "lib": ["esnext", "dom"], + "strict": true, + "experimentalDecorators": true, + "noUnusedLocals": true, + "jsx": "react", + "declaration": true + } +} diff --git a/tsconfig.json b/tsconfig.json index 0c2330c4a8..2e7b8b15a5 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,17 +1,6 @@ { - "extends": "./tsconfig.json", + "extends": "./tsconfig.base.json", "compilerOptions": { - "incremental": true, - "target": "es2015", - "module": "esnext", - "moduleResolution": "node", - "lib": ["esnext", "dom"], - "strict": true, - "experimentalDecorators": true, - "noUnusedLocals": true, - "jsx": "react", - "declaration": true, - "noEmit": true, "baseUrl": ".", "allowSyntheticDefaultImports": true, From 9ff60d68224a5356898b2e8632cf5d24edcdc0ee Mon Sep 17 00:00:00 2001 From: Chris Trevino Date: Fri, 7 Jun 2019 14:49:20 -0700 Subject: [PATCH 3/8] refactor: replace require() form with imports. use @ts-ignore if types are unavailable --- packages/dnd-core/src/DragDropMonitorImpl.ts | 5 ++--- packages/dnd-core/src/HandlerRegistryImpl.ts | 8 ++++---- packages/dnd-core/src/actions/dragDrop/beginDrag.ts | 5 ++--- packages/dnd-core/src/actions/dragDrop/drop.ts | 4 ++-- packages/dnd-core/src/actions/dragDrop/endDrag.ts | 6 ++---- packages/dnd-core/src/actions/dragDrop/hover.ts | 6 ++---- packages/dnd-core/src/contracts.ts | 5 ++--- packages/documentation/src/components/layout.tsx | 2 +- packages/documentation/src/util/renderHtmlAst.ts | 8 +++++--- .../src/01-dustbin/single-target-in-iframe/index.tsx | 9 ++------- .../src/01-dustbin/stress-test/index.tsx | 4 ++-- .../src/02-drag-around/custom-drag-layer/Container.tsx | 4 ++-- .../src/01-dustbin/single-target-in-iframe/index.tsx | 9 ++------- .../src/01-dustbin/stress-test/index.tsx | 4 ++-- packages/react-dnd-decorators/src/DragDropContext.tsx | 7 ++++--- packages/react-dnd-decorators/src/DragLayer.tsx | 10 ++++++---- packages/react-dnd-decorators/src/DragSource.ts | 4 ++-- packages/react-dnd-decorators/src/DropTarget.ts | 4 ++-- .../react-dnd-decorators/src/createSourceFactory.ts | 5 ++--- .../react-dnd-decorators/src/createTargetFactory.ts | 4 ++-- packages/react-dnd-decorators/src/decorateHandler.tsx | 10 ++++++---- packages/react-dnd/src/DragSourceMonitorImpl.ts | 5 ++--- packages/react-dnd/src/DropTargetMonitorImpl.ts | 4 ++-- packages/react-dnd/src/SourceConnector.ts | 4 ++-- packages/react-dnd/src/TargetConnector.ts | 4 ++-- packages/react-dnd/src/hooks/internal/drag.ts | 4 ++-- packages/react-dnd/src/hooks/internal/useCollector.ts | 4 ++-- .../react-dnd/src/hooks/internal/useDragDropManager.ts | 4 ++-- packages/react-dnd/src/hooks/useDrag.ts | 4 ++-- packages/react-dnd/src/hooks/useDrop.ts | 4 ++-- packages/react-dnd/src/utils/cloneWithRef.ts | 4 ++-- 31 files changed, 76 insertions(+), 88 deletions(-) diff --git a/packages/dnd-core/src/DragDropMonitorImpl.ts b/packages/dnd-core/src/DragDropMonitorImpl.ts index b0f3fb0d15..3faabff8cd 100644 --- a/packages/dnd-core/src/DragDropMonitorImpl.ts +++ b/packages/dnd-core/src/DragDropMonitorImpl.ts @@ -1,5 +1,3 @@ -declare var require: any - import { Store } from 'redux' import matchesType from './utils/matchesType' import { @@ -16,7 +14,8 @@ import { HandlerRegistry, Identifier, } from './interfaces' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' export default class DragDropMonitorImpl implements DragDropMonitor { constructor(private store: Store, public registry: HandlerRegistry) {} diff --git a/packages/dnd-core/src/HandlerRegistryImpl.ts b/packages/dnd-core/src/HandlerRegistryImpl.ts index 4d305d712e..ceaf69ec94 100644 --- a/packages/dnd-core/src/HandlerRegistryImpl.ts +++ b/packages/dnd-core/src/HandlerRegistryImpl.ts @@ -1,5 +1,3 @@ -declare var require: any - import { Store } from 'redux' import { addSource, @@ -23,8 +21,10 @@ import { validateTargetContract, validateType, } from './contracts' -const invariant = require('invariant') -const asap = require('asap') +// @ts-ignore +import invariant from 'invariant' +// @ts-ignore +import asap from 'asap' function getNextHandlerId(role: HandlerRole): string { const id = getNextUniqueId().toString() diff --git a/packages/dnd-core/src/actions/dragDrop/beginDrag.ts b/packages/dnd-core/src/actions/dragDrop/beginDrag.ts index 2803671228..e217ed7c06 100644 --- a/packages/dnd-core/src/actions/dragDrop/beginDrag.ts +++ b/packages/dnd-core/src/actions/dragDrop/beginDrag.ts @@ -1,5 +1,3 @@ -declare var require: any - import { Action, DragDropManager, @@ -11,7 +9,8 @@ import { } from '../../interfaces' import { setClientOffset } from './local/setClientOffset' import { isObject } from '../../utils/discount_lodash' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' import { BEGIN_DRAG, INIT_COORDS } from './types' diff --git a/packages/dnd-core/src/actions/dragDrop/drop.ts b/packages/dnd-core/src/actions/dragDrop/drop.ts index dd79cb8901..c964af56d3 100644 --- a/packages/dnd-core/src/actions/dragDrop/drop.ts +++ b/packages/dnd-core/src/actions/dragDrop/drop.ts @@ -8,8 +8,8 @@ import { } from '../../interfaces' import { DROP } from './types' import { isObject } from '../../utils/discount_lodash' -declare var require: any -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' export default function createDrop(manager: DragDropManager) { return function drop(options = {}): void { diff --git a/packages/dnd-core/src/actions/dragDrop/endDrag.ts b/packages/dnd-core/src/actions/dragDrop/endDrag.ts index 03e9a0212c..d61a9a1709 100644 --- a/packages/dnd-core/src/actions/dragDrop/endDrag.ts +++ b/packages/dnd-core/src/actions/dragDrop/endDrag.ts @@ -1,13 +1,11 @@ -declare var require: any - import { DragDropManager, SentinelAction, DragDropMonitor, } from '../../interfaces' import { END_DRAG } from './types' - -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' export default function createEndDrag( manager: DragDropManager, diff --git a/packages/dnd-core/src/actions/dragDrop/hover.ts b/packages/dnd-core/src/actions/dragDrop/hover.ts index 233987564c..adf41372d2 100644 --- a/packages/dnd-core/src/actions/dragDrop/hover.ts +++ b/packages/dnd-core/src/actions/dragDrop/hover.ts @@ -1,5 +1,3 @@ -declare var require: any - import { Action, DragDropManager, @@ -10,8 +8,8 @@ import { } from '../../interfaces' import matchesType from '../../utils/matchesType' import { HOVER } from './types' - -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' export default function createHover( manager: DragDropManager, diff --git a/packages/dnd-core/src/contracts.ts b/packages/dnd-core/src/contracts.ts index 50bc744b3b..478261ddc1 100644 --- a/packages/dnd-core/src/contracts.ts +++ b/packages/dnd-core/src/contracts.ts @@ -1,7 +1,6 @@ -declare var require: any - import { DragSource, DropTarget, Identifier } from './interfaces' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' export function validateSourceContract(source: DragSource) { invariant( diff --git a/packages/documentation/src/components/layout.tsx b/packages/documentation/src/components/layout.tsx index 530d01993c..6031c7fc3a 100644 --- a/packages/documentation/src/components/layout.tsx +++ b/packages/documentation/src/components/layout.tsx @@ -13,7 +13,7 @@ import { APIPages, ExamplePages } from '../constants' import Header from './header' import './layout.css' import { isLegacyMode } from '../util/renderHtmlAst' -require('prismjs/themes/prism.css') +import 'prismjs/themes/prism.css' const favicon = require('../favicon.png') export interface LayoutProps { diff --git a/packages/documentation/src/util/renderHtmlAst.ts b/packages/documentation/src/util/renderHtmlAst.ts index 05b18c1800..2f11012bf2 100644 --- a/packages/documentation/src/util/renderHtmlAst.ts +++ b/packages/documentation/src/util/renderHtmlAst.ts @@ -1,12 +1,14 @@ -declare var require: any import { createElement } from 'react' import { componentIndex as decoratorComponentIndex } from 'react-dnd-examples-decorators/lib/index' import { componentIndex as hookComponentIndex } from 'react-dnd-examples-hooks/lib/index' import { parse } from 'query-string' import processImages from './processImagesInMarkdownAst' import exampleTabs from '../components/exampleTabs' -const log = require('debug')('site:renderHtmlAst') -const rehypeReact = require('rehype-react') +import debug from 'debug' +// @ts-ignore +import rehypeReact from 'rehype-react' + +const log = debug('site:renderHtmlAst') export function isLegacyMode() { if (typeof window !== 'undefined') { diff --git a/packages/examples-decorators/src/01-dustbin/single-target-in-iframe/index.tsx b/packages/examples-decorators/src/01-dustbin/single-target-in-iframe/index.tsx index 0f05e77263..dd9616b399 100644 --- a/packages/examples-decorators/src/01-dustbin/single-target-in-iframe/index.tsx +++ b/packages/examples-decorators/src/01-dustbin/single-target-in-iframe/index.tsx @@ -1,15 +1,10 @@ -declare var require: any - import React from 'react' import { DndProvider } from 'react-dnd' import HTML5Backend from 'react-dnd-html5-backend' import Dustbin from './Dustbin' import Box from './Box' - -const { - default: Frame, - FrameContextConsumer, -} = require('react-frame-component') +// @ts-ignore +import Frame, { FrameContextConsumer } from 'react-frame-component' const FrameBindingContext: React.FC = ({ children }) => ( diff --git a/packages/examples-decorators/src/01-dustbin/stress-test/index.tsx b/packages/examples-decorators/src/01-dustbin/stress-test/index.tsx index dcd947d5ee..5a9532bb1c 100644 --- a/packages/examples-decorators/src/01-dustbin/stress-test/index.tsx +++ b/packages/examples-decorators/src/01-dustbin/stress-test/index.tsx @@ -1,11 +1,11 @@ -declare var require: any import React, { useState, useEffect, useCallback } from 'react' import { NativeTypes } from 'react-dnd-html5-backend' import Dustbin from './Dustbin' import Box from './Box' import ItemTypes from './ItemTypes' import update from 'immutability-helper' -const shuffle = require('lodash/shuffle') +// @ts-ignore +import shuffle from 'lodash/shuffle' export interface SourceBox { name: string diff --git a/packages/examples-decorators/src/02-drag-around/custom-drag-layer/Container.tsx b/packages/examples-decorators/src/02-drag-around/custom-drag-layer/Container.tsx index 550c0f86af..f8e87372f0 100644 --- a/packages/examples-decorators/src/02-drag-around/custom-drag-layer/Container.tsx +++ b/packages/examples-decorators/src/02-drag-around/custom-drag-layer/Container.tsx @@ -1,11 +1,11 @@ -declare var require: any import React from 'react' import { ConnectDropTarget, DropTargetMonitor } from 'react-dnd' import { DropTarget, DropTargetConnector } from 'react-dnd-decorators' import ItemTypes from './ItemTypes' import DraggableBox from './DraggableBox' import snapToGrid from './snapToGrid' -const update = require('immutability-helper') +// @ts-ignore +import update from 'immutability-helper' const styles: React.CSSProperties = { width: 300, diff --git a/packages/examples-hooks/src/01-dustbin/single-target-in-iframe/index.tsx b/packages/examples-hooks/src/01-dustbin/single-target-in-iframe/index.tsx index 5c50dc111e..bbf03e6917 100644 --- a/packages/examples-hooks/src/01-dustbin/single-target-in-iframe/index.tsx +++ b/packages/examples-hooks/src/01-dustbin/single-target-in-iframe/index.tsx @@ -1,15 +1,10 @@ -declare var require: any - import React from 'react' import { DndProvider } from 'react-dnd' import HTML5Backend from 'react-dnd-html5-backend' import Dustbin from './Dustbin' import Box from './Box' - -const { - default: Frame, - FrameContextConsumer, -} = require('react-frame-component') +// @ts-ignore +import Frame, { FrameContextConsumer } from 'react-frame-component' const FrameBindingContext: React.FC = ({ children }) => ( diff --git a/packages/examples-hooks/src/01-dustbin/stress-test/index.tsx b/packages/examples-hooks/src/01-dustbin/stress-test/index.tsx index dcd947d5ee..5a9532bb1c 100644 --- a/packages/examples-hooks/src/01-dustbin/stress-test/index.tsx +++ b/packages/examples-hooks/src/01-dustbin/stress-test/index.tsx @@ -1,11 +1,11 @@ -declare var require: any import React, { useState, useEffect, useCallback } from 'react' import { NativeTypes } from 'react-dnd-html5-backend' import Dustbin from './Dustbin' import Box from './Box' import ItemTypes from './ItemTypes' import update from 'immutability-helper' -const shuffle = require('lodash/shuffle') +// @ts-ignore +import shuffle from 'lodash/shuffle' export interface SourceBox { name: string diff --git a/packages/react-dnd-decorators/src/DragDropContext.tsx b/packages/react-dnd-decorators/src/DragDropContext.tsx index 314ad4abe3..ab933a2dbf 100644 --- a/packages/react-dnd-decorators/src/DragDropContext.tsx +++ b/packages/react-dnd-decorators/src/DragDropContext.tsx @@ -1,12 +1,13 @@ -declare var require: any import * as React from 'react' import { DndContext, createDndContext } from 'react-dnd' import { BackendFactory } from 'dnd-core' import checkDecoratorArguments from './utils/checkDecoratorArguments' import { ContextComponent } from './interfaces' import { isRefable } from './utils/isRefable' -const invariant = require('invariant') -const hoistStatics = require('hoist-non-react-statics') +// @ts-ignore +import invariant from 'invariant' +// @ts-ignore +import hoistStatics from 'hoist-non-react-statics' /** * Wrap the root component of your application with DragDropContext decorator to set up React DnD. diff --git a/packages/react-dnd-decorators/src/DragLayer.tsx b/packages/react-dnd-decorators/src/DragLayer.tsx index 2710ef0c93..fca84139f8 100644 --- a/packages/react-dnd-decorators/src/DragLayer.tsx +++ b/packages/react-dnd-decorators/src/DragLayer.tsx @@ -1,4 +1,3 @@ -declare var require: any import * as React from 'react' import checkDecoratorArguments from './utils/checkDecoratorArguments' import { DragDropManager, Unsubscribe } from 'dnd-core' @@ -7,9 +6,12 @@ import { isPlainObject } from 'react-dnd/lib/internals' import { DragLayerCollector, DndComponentEnhancer } from './interfaces' import { isRefable } from './utils/isRefable' -const hoistStatics = require('hoist-non-react-statics') -const invariant = require('invariant') -const shallowEqual = require('shallowequal') +// @ts-ignore +import hoistStatics from 'hoist-non-react-statics' +// @ts-ignore +import invariant from 'invariant' +// @ts-ignore +import shallowEqual from 'shallowequal' export function DragLayer( collect: DragLayerCollector, diff --git a/packages/react-dnd-decorators/src/DragSource.ts b/packages/react-dnd-decorators/src/DragSource.ts index 8a168fdfdf..acfe639e05 100644 --- a/packages/react-dnd-decorators/src/DragSource.ts +++ b/packages/react-dnd-decorators/src/DragSource.ts @@ -1,4 +1,3 @@ -declare var require: any import * as React from 'react' import { SourceType, DragDropManager } from 'dnd-core' import { DndOptions } from 'react-dnd' @@ -17,7 +16,8 @@ import { isValidType, } from 'react-dnd/lib/internals' import createSourceFactory from './createSourceFactory' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' /** * Decorates a component as a dragsource diff --git a/packages/react-dnd-decorators/src/DropTarget.ts b/packages/react-dnd-decorators/src/DropTarget.ts index 45a9e3bb69..c85ec7cc85 100644 --- a/packages/react-dnd-decorators/src/DropTarget.ts +++ b/packages/react-dnd-decorators/src/DropTarget.ts @@ -1,4 +1,3 @@ -declare var require: any import * as React from 'react' import { TargetType, DragDropManager } from 'dnd-core' import { DndOptions } from 'react-dnd' @@ -18,7 +17,8 @@ import { import checkDecoratorArguments from './utils/checkDecoratorArguments' import decorateHandler from './decorateHandler' import createTargetFactory from './createTargetFactory' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' export function DropTarget( type: TargetType | ((props: RequiredProps) => TargetType), diff --git a/packages/react-dnd-decorators/src/createSourceFactory.ts b/packages/react-dnd-decorators/src/createSourceFactory.ts index 644a15b844..57b142d779 100644 --- a/packages/react-dnd-decorators/src/createSourceFactory.ts +++ b/packages/react-dnd-decorators/src/createSourceFactory.ts @@ -1,4 +1,3 @@ -declare var require: any declare var process: any import * as React from 'react' import { DragSource, DragDropMonitor } from 'dnd-core' @@ -6,8 +5,8 @@ import { DragSourceMonitor } from 'react-dnd' import { isPlainObject } from 'react-dnd/lib/internals' import { DragSourceSpec } from './interfaces' import { getDecoratedComponent } from './utils/getDecoratedComponent' - -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' const ALLOWED_SPEC_METHODS = ['canDrag', 'beginDrag', 'isDragging', 'endDrag'] const REQUIRED_SPEC_METHODS = ['beginDrag'] diff --git a/packages/react-dnd-decorators/src/createTargetFactory.ts b/packages/react-dnd-decorators/src/createTargetFactory.ts index f3713adf9f..5d216b087d 100644 --- a/packages/react-dnd-decorators/src/createTargetFactory.ts +++ b/packages/react-dnd-decorators/src/createTargetFactory.ts @@ -1,4 +1,3 @@ -declare var require: any declare var process: any import * as React from 'react' @@ -8,7 +7,8 @@ import { isPlainObject } from 'react-dnd/lib/internals' import { DropTargetSpec } from './interfaces' import { getDecoratedComponent } from './utils/getDecoratedComponent' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' const ALLOWED_SPEC_METHODS = ['canDrop', 'hover', 'drop'] diff --git a/packages/react-dnd-decorators/src/decorateHandler.tsx b/packages/react-dnd-decorators/src/decorateHandler.tsx index b8db472b72..23d0799a1a 100644 --- a/packages/react-dnd-decorators/src/decorateHandler.tsx +++ b/packages/react-dnd-decorators/src/decorateHandler.tsx @@ -1,4 +1,3 @@ -declare var require: any declare var process: any import * as React from 'react' @@ -12,9 +11,12 @@ import { SerialDisposable, } from './utils/disposables' import { isRefable } from './utils/isRefable' -const invariant = require('invariant') -const hoistStatics = require('hoist-non-react-statics') -const shallowEqual = require('shallowequal') +// @ts-ignore +import invariant from 'invariant' +// @ts-ignore +import hoistStatics from 'hoist-non-react-statics' +// @ts-ignore +import shallowEqual from 'shallowequal' export interface DecorateHandlerArgs { DecoratedComponent: any diff --git a/packages/react-dnd/src/DragSourceMonitorImpl.ts b/packages/react-dnd/src/DragSourceMonitorImpl.ts index 9ae54e7fa6..bf852d3b87 100644 --- a/packages/react-dnd/src/DragSourceMonitorImpl.ts +++ b/packages/react-dnd/src/DragSourceMonitorImpl.ts @@ -1,5 +1,3 @@ -declare var require: any - import { DragDropManager, DragDropMonitor, @@ -8,7 +6,8 @@ import { Identifier, } from 'dnd-core' import { DragSourceMonitor } from './interfaces' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' let isCallingCanDrag = false let isCallingIsDragging = false diff --git a/packages/react-dnd/src/DropTargetMonitorImpl.ts b/packages/react-dnd/src/DropTargetMonitorImpl.ts index 6c9b80d69e..c0b16d0ea1 100644 --- a/packages/react-dnd/src/DropTargetMonitorImpl.ts +++ b/packages/react-dnd/src/DropTargetMonitorImpl.ts @@ -1,4 +1,3 @@ -declare var require: any import { DragDropManager, DragDropMonitor, @@ -7,7 +6,8 @@ import { Identifier, } from 'dnd-core' import { DropTargetMonitor } from './interfaces' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' let isCallingCanDrop = false diff --git a/packages/react-dnd/src/SourceConnector.ts b/packages/react-dnd/src/SourceConnector.ts index d1980b8dfc..86c74d9df4 100644 --- a/packages/react-dnd/src/SourceConnector.ts +++ b/packages/react-dnd/src/SourceConnector.ts @@ -1,10 +1,10 @@ -declare var require: any import * as React from 'react' import wrapConnectorHooks from './wrapConnectorHooks' import { Backend, Unsubscribe, Identifier } from 'dnd-core' import { isRef } from './utils/isRef' import { DragSourceOptions, DragPreviewOptions } from './interfaces' -const shallowEqual = require('shallowequal') +// @ts-ignore +import shallowEqual from 'shallowequal' export interface Connector { hooks: any diff --git a/packages/react-dnd/src/TargetConnector.ts b/packages/react-dnd/src/TargetConnector.ts index da5bb3679e..c03fea6c91 100644 --- a/packages/react-dnd/src/TargetConnector.ts +++ b/packages/react-dnd/src/TargetConnector.ts @@ -1,9 +1,9 @@ -declare var require: any import * as React from 'react' import wrapConnectorHooks from './wrapConnectorHooks' import { Backend, Unsubscribe, Identifier } from 'dnd-core' import { isRef } from './utils/isRef' -const shallowEqual = require('shallowequal') +// @ts-ignore +import shallowEqual from 'shallowequal' import { Connector } from './SourceConnector' diff --git a/packages/react-dnd/src/hooks/internal/drag.ts b/packages/react-dnd/src/hooks/internal/drag.ts index 5a98e016b5..52aea4abfe 100644 --- a/packages/react-dnd/src/hooks/internal/drag.ts +++ b/packages/react-dnd/src/hooks/internal/drag.ts @@ -1,4 +1,3 @@ -declare var require: any import { useEffect, useMemo, MutableRefObject } from 'react' import { DragSourceHookSpec, @@ -10,7 +9,8 @@ import { registerSource } from '../../registration' import { useDragDropManager } from './useDragDropManager' import { DragSourceMonitorImpl } from '../../DragSourceMonitorImpl' import { SourceConnector } from '../../SourceConnector' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' export function useDragSourceMonitor(): [DragSourceMonitor, SourceConnector] { const manager = useDragDropManager() diff --git a/packages/react-dnd/src/hooks/internal/useCollector.ts b/packages/react-dnd/src/hooks/internal/useCollector.ts index 0948f50c63..b2713be75a 100644 --- a/packages/react-dnd/src/hooks/internal/useCollector.ts +++ b/packages/react-dnd/src/hooks/internal/useCollector.ts @@ -1,5 +1,5 @@ -declare var require: any -const shallowEqual = require('shallowequal') +// @ts-ignore +import shallowEqual from 'shallowequal' import { useState, useCallback } from 'react' /** diff --git a/packages/react-dnd/src/hooks/internal/useDragDropManager.ts b/packages/react-dnd/src/hooks/internal/useDragDropManager.ts index 18858ebe9b..90581bcc8c 100644 --- a/packages/react-dnd/src/hooks/internal/useDragDropManager.ts +++ b/packages/react-dnd/src/hooks/internal/useDragDropManager.ts @@ -1,8 +1,8 @@ -declare var require: any import { useContext } from 'react' import { DragDropManager } from 'dnd-core' import { DndContext } from '../../DndContext' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' /** * A hook to retrieve the DragDropManager from Context diff --git a/packages/react-dnd/src/hooks/useDrag.ts b/packages/react-dnd/src/hooks/useDrag.ts index aeb6d7875a..a38ff9a885 100644 --- a/packages/react-dnd/src/hooks/useDrag.ts +++ b/packages/react-dnd/src/hooks/useDrag.ts @@ -1,4 +1,3 @@ -declare var require: any import { DragSourceHookSpec, DragObjectWithType, @@ -8,7 +7,8 @@ import { import { useMonitorOutput } from './internal/useMonitorOutput' import { useDragSourceMonitor, useDragHandler } from './internal/drag' import { useEffect, useRef, useMemo } from 'react' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' /** * useDragSource hook diff --git a/packages/react-dnd/src/hooks/useDrop.ts b/packages/react-dnd/src/hooks/useDrop.ts index e28975064d..93e6498992 100644 --- a/packages/react-dnd/src/hooks/useDrop.ts +++ b/packages/react-dnd/src/hooks/useDrop.ts @@ -1,4 +1,3 @@ -declare var require: any import { DropTargetHookSpec, ConnectDropTarget, @@ -7,7 +6,8 @@ import { import { useMonitorOutput } from './internal/useMonitorOutput' import { useDropHandler, useDropTargetMonitor } from './internal/drop' import { useEffect, useRef, useMemo } from 'react' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' /** * useDropTarget Hook diff --git a/packages/react-dnd/src/utils/cloneWithRef.ts b/packages/react-dnd/src/utils/cloneWithRef.ts index 256acc35a7..ee83b450f5 100644 --- a/packages/react-dnd/src/utils/cloneWithRef.ts +++ b/packages/react-dnd/src/utils/cloneWithRef.ts @@ -1,6 +1,6 @@ -declare var require: any import { cloneElement } from 'react' -const invariant = require('invariant') +// @ts-ignore +import invariant from 'invariant' function setRef(ref: any, node: any) { if (typeof ref === 'function') { From 974a5deb0e0dad7346a2696eb3328967157ccf52 Mon Sep 17 00:00:00 2001 From: Chris Trevino Date: Fri, 7 Jun 2019 14:56:09 -0700 Subject: [PATCH 4/8] refactor: remove umd builds --- packages/react-dnd-decorators/package.json | 10 +--- .../react-dnd-decorators/webpack.config.js | 49 ------------------- packages/react-dnd-html5-backend/package.json | 8 +-- packages/react-dnd/package.json | 12 ++--- packages/react-dnd/webpack.config.js | 49 ------------------- 5 files changed, 7 insertions(+), 121 deletions(-) delete mode 100644 packages/react-dnd-decorators/webpack.config.js delete mode 100644 packages/react-dnd/webpack.config.js diff --git a/packages/react-dnd-decorators/package.json b/packages/react-dnd-decorators/package.json index 12b05574fe..1dc6ffff0b 100644 --- a/packages/react-dnd-decorators/package.json +++ b/packages/react-dnd-decorators/package.json @@ -11,12 +11,8 @@ }, "license": "MIT", "scripts": { - "clean": "rimraf lib dist", - "bundle:unmin": "webpack --mode development --output-filename=ReactDnD.js", - "bundle:min": "webpack --mode production --output-filename=ReactDnD.min.js", - "transpile:esm": "tsc -b tsconfig.json", - "transpile": "run-p transpile:*", - "build": "run-p bundle:* transpile", + "clean": "rimraf lib", + "build": "tsc -b tsconfig.json", "test": "run-s clean build", "start": "tsc -b tsconfig.json -w --preserveWatchOutput" }, @@ -39,8 +35,6 @@ "rimraf": "^2.6.3", "ts-loader": "^6.0.2", "typescript": "^3.5.1", - "webpack": "^4.32.2", - "webpack-cli": "^3.3.2", "react-dnd": "^7.6.0" }, "peerDependencies": { diff --git a/packages/react-dnd-decorators/webpack.config.js b/packages/react-dnd-decorators/webpack.config.js deleted file mode 100644 index 1d9ec28c77..0000000000 --- a/packages/react-dnd-decorators/webpack.config.js +++ /dev/null @@ -1,49 +0,0 @@ -const webpack = require('webpack') -const path = require('path') - -module.exports = { - entry: './src/index', - mode: 'none', - resolve: { - extensions: ['.ts', '.tsx', '.js'], - modules: [ - path.join(__dirname, 'node_modules'), - path.join(__dirname, '..', 'dnd-core', 'node_modules'), - path.join(__dirname, '..', '..', 'node_modules'), - ], - }, - module: { - rules: [ - { test: /\.js$/, use: 'babel-loader', exclude: /node_modules/ }, - { - test: /\.ts(x|)$/, - exclude: /node_modules/, - use: { - loader: 'ts-loader', - options: { transpileOnly: true }, - }, - }, - ], - }, - externals: [ - { - react: { - root: 'React', - commonjs2: 'react', - commonjs: 'react', - amd: 'react', - }, - }, - ], - output: { - libraryTarget: 'umd', - library: 'ReactDnD', - }, - plugins: [ - new webpack.DefinePlugin({ - 'process.env': { - NODE_ENV: JSON.stringify('production'), - }, - }), - ], -} diff --git a/packages/react-dnd-html5-backend/package.json b/packages/react-dnd-html5-backend/package.json index 33ecc2a49c..45f1da52cb 100644 --- a/packages/react-dnd-html5-backend/package.json +++ b/packages/react-dnd-html5-backend/package.json @@ -11,12 +11,8 @@ "url": "https://github.com/react-dnd/react-dnd.git" }, "scripts": { - "clean": "rimraf lib dist", - "transpile:esm": "tsc -b tsconfig.json", - "transpile": "run-p transpile:*", - "bundle:unmin": "webpack --mode development --output-filename=ReactDnDHTML5Backend.js", - "bundle:min": "webpack --mode production --output-filename=ReactDnDHTML5Backend.min.js", - "build": "run-p bundle:* transpile", + "clean": "rimraf lib", + "build": "tsc -b tsconfig.json", "test": "run-s clean build", "start": "tsc -b tsconfig.json -w --preserveWatchOutput" }, diff --git a/packages/react-dnd/package.json b/packages/react-dnd/package.json index a4f336e104..3ad23dd707 100644 --- a/packages/react-dnd/package.json +++ b/packages/react-dnd/package.json @@ -11,12 +11,8 @@ }, "license": "MIT", "scripts": { - "clean": "rimraf lib dist", - "bundle:unmin": "webpack --mode development --output-filename=ReactDnD.js", - "bundle:min": "webpack --mode production --output-filename=ReactDnD.min.js", - "transpile:esm": "tsc -b tsconfig.json", - "transpile": "run-p transpile:*", - "build": "run-p bundle:* transpile", + "clean": "rimraf lib", + "build": "tsc -b tsconfig.json", "test": "run-s clean build", "start": "tsc -b tsconfig.json -w --preserveWatchOutput" }, @@ -38,9 +34,7 @@ "react-dom": "^16.8.6", "rimraf": "^2.6.3", "ts-loader": "^6.0.2", - "typescript": "^3.5.1", - "webpack": "^4.32.2", - "webpack-cli": "^3.3.2" + "typescript": "^3.5.1" }, "peerDependencies": { "react": ">= 16.8", diff --git a/packages/react-dnd/webpack.config.js b/packages/react-dnd/webpack.config.js deleted file mode 100644 index 1d9ec28c77..0000000000 --- a/packages/react-dnd/webpack.config.js +++ /dev/null @@ -1,49 +0,0 @@ -const webpack = require('webpack') -const path = require('path') - -module.exports = { - entry: './src/index', - mode: 'none', - resolve: { - extensions: ['.ts', '.tsx', '.js'], - modules: [ - path.join(__dirname, 'node_modules'), - path.join(__dirname, '..', 'dnd-core', 'node_modules'), - path.join(__dirname, '..', '..', 'node_modules'), - ], - }, - module: { - rules: [ - { test: /\.js$/, use: 'babel-loader', exclude: /node_modules/ }, - { - test: /\.ts(x|)$/, - exclude: /node_modules/, - use: { - loader: 'ts-loader', - options: { transpileOnly: true }, - }, - }, - ], - }, - externals: [ - { - react: { - root: 'React', - commonjs2: 'react', - commonjs: 'react', - amd: 'react', - }, - }, - ], - output: { - libraryTarget: 'umd', - library: 'ReactDnD', - }, - plugins: [ - new webpack.DefinePlugin({ - 'process.env': { - NODE_ENV: JSON.stringify('production'), - }, - }), - ], -} From 2c70f4f13bac72c527cd24cb9faae90a28ea6610 Mon Sep 17 00:00:00 2001 From: Chris Trevino Date: Fri, 7 Jun 2019 15:07:28 -0700 Subject: [PATCH 5/8] refactor: remove webpack deps from react-dnd-html5-backend --- packages/react-dnd-html5-backend/package.json | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/packages/react-dnd-html5-backend/package.json b/packages/react-dnd-html5-backend/package.json index 45f1da52cb..38937c3a11 100644 --- a/packages/react-dnd-html5-backend/package.json +++ b/packages/react-dnd-html5-backend/package.json @@ -27,8 +27,6 @@ "react-dom": "^16.8.6", "rimraf": "^2.6.3", "ts-loader": "^6.0.2", - "typescript": "^3.5.1", - "webpack": "^4.32.2", - "webpack-cli": "^3.3.2" + "typescript": "^3.5.1" } } From 77cb9fae36cbed7096f756a463e67e7d3e3ee6b4 Mon Sep 17 00:00:00 2001 From: Chris Trevino Date: Fri, 7 Jun 2019 15:20:27 -0700 Subject: [PATCH 6/8] refactor: update how internals are shared between react-dnd and react-dnd-decorators --- .../react-dnd-decorators/src/DragLayer.tsx | 2 +- .../react-dnd-decorators/src/DragSource.ts | 15 ++--- .../react-dnd-decorators/src/DropTarget.ts | 12 ++-- .../src/__tests__/DragDropContext.spec.tsx | 26 +++++++++ .../src/__tests__/DragLayer.spec.tsx | 17 ++++++ .../src/__tests__/DragSource.spec.tsx | 58 +++++++++++++++++++ .../src/__tests__/DropTarget.spec.tsx | 45 ++++++++++++++ .../src/createSourceFactory.ts | 2 +- .../src/createTargetFactory.ts | 3 +- .../src/decorateHandler.tsx | 5 +- .../src/utils/disposables/Disposable.ts | 2 +- .../react-dnd/src/__tests__/DndProvider.tsx | 26 +++++++++ packages/react-dnd/src/index.ts | 18 ++++++ packages/react-dnd/tsconfig.json | 2 +- 14 files changed, 213 insertions(+), 20 deletions(-) create mode 100644 packages/react-dnd-decorators/src/__tests__/DragDropContext.spec.tsx create mode 100644 packages/react-dnd-decorators/src/__tests__/DragLayer.spec.tsx create mode 100644 packages/react-dnd-decorators/src/__tests__/DragSource.spec.tsx create mode 100644 packages/react-dnd-decorators/src/__tests__/DropTarget.spec.tsx create mode 100644 packages/react-dnd/src/__tests__/DndProvider.tsx diff --git a/packages/react-dnd-decorators/src/DragLayer.tsx b/packages/react-dnd-decorators/src/DragLayer.tsx index fca84139f8..45ca8e653c 100644 --- a/packages/react-dnd-decorators/src/DragLayer.tsx +++ b/packages/react-dnd-decorators/src/DragLayer.tsx @@ -2,7 +2,7 @@ import * as React from 'react' import checkDecoratorArguments from './utils/checkDecoratorArguments' import { DragDropManager, Unsubscribe } from 'dnd-core' import { DndContext, DndOptions } from 'react-dnd' -import { isPlainObject } from 'react-dnd/lib/internals' +import { __isPlainObject as isPlainObject } from 'react-dnd' import { DragLayerCollector, DndComponentEnhancer } from './interfaces' import { isRefable } from './utils/isRefable' diff --git a/packages/react-dnd-decorators/src/DragSource.ts b/packages/react-dnd-decorators/src/DragSource.ts index acfe639e05..2053e7964d 100644 --- a/packages/react-dnd-decorators/src/DragSource.ts +++ b/packages/react-dnd-decorators/src/DragSource.ts @@ -1,7 +1,13 @@ import * as React from 'react' import { SourceType, DragDropManager } from 'dnd-core' import { DndOptions } from 'react-dnd' -import { isPlainObject } from 'react-dnd/lib/internals' +import { + __isPlainObject as isPlainObject, + __registerSource as registerSource, + __DragSourceMonitorImpl as DragSourceMonitorImpl, + __SourceConnector as SourceConnector, + __isValidType as isValidType, +} from 'react-dnd' import { DndComponentEnhancer, DragSourceSpec, @@ -9,12 +15,7 @@ import { } from './interfaces' import checkDecoratorArguments from './utils/checkDecoratorArguments' import decorateHandler from './decorateHandler' -import { - registerSource, - DragSourceMonitorImpl, - SourceConnector, - isValidType, -} from 'react-dnd/lib/internals' + import createSourceFactory from './createSourceFactory' // @ts-ignore import invariant from 'invariant' diff --git a/packages/react-dnd-decorators/src/DropTarget.ts b/packages/react-dnd-decorators/src/DropTarget.ts index c85ec7cc85..9bc7a41c2b 100644 --- a/packages/react-dnd-decorators/src/DropTarget.ts +++ b/packages/react-dnd-decorators/src/DropTarget.ts @@ -2,12 +2,12 @@ import * as React from 'react' import { TargetType, DragDropManager } from 'dnd-core' import { DndOptions } from 'react-dnd' import { - registerTarget, - isValidType, - TargetConnector, - DropTargetMonitorImpl, - isPlainObject, -} from 'react-dnd/lib/internals' + __registerTarget as registerTarget, + __isValidType as isValidType, + __TargetConnector as TargetConnector, + __DropTargetMonitorImpl as DropTargetMonitorImpl, + __isPlainObject as isPlainObject, +} from 'react-dnd' import { DropTargetSpec, DropTargetCollector, diff --git a/packages/react-dnd-decorators/src/__tests__/DragDropContext.spec.tsx b/packages/react-dnd-decorators/src/__tests__/DragDropContext.spec.tsx new file mode 100644 index 0000000000..ee24268c0d --- /dev/null +++ b/packages/react-dnd-decorators/src/__tests__/DragDropContext.spec.tsx @@ -0,0 +1,26 @@ +import * as React from 'react' +import { DragDropContext } from '../index' +import TestBackend from 'react-dnd-test-backend' + +describe('DragDropContext', () => { + it('can apply to a class via decorator-fashion', () => { + @DragDropContext(TestBackend) + class Context extends React.Component {} + + expect(Context).toBeDefined() + }) + + it('can apply via composition', () => { + class ContextClass extends React.Component {} + const Context = DragDropContext(TestBackend)(ContextClass) + + expect(Context).toBeDefined() + }) + + it('can apply to an SFC', () => { + const ContextComponent: React.FC<{}> = () => null + const Context = DragDropContext(TestBackend)(ContextComponent) + + expect(Context).toBeDefined() + }) +}) diff --git a/packages/react-dnd-decorators/src/__tests__/DragLayer.spec.tsx b/packages/react-dnd-decorators/src/__tests__/DragLayer.spec.tsx new file mode 100644 index 0000000000..15fa3b100d --- /dev/null +++ b/packages/react-dnd-decorators/src/__tests__/DragLayer.spec.tsx @@ -0,0 +1,17 @@ +import * as React from 'react' +import { DragLayer } from '../index' + +describe('DragLayer', () => { + it('can apply via composition', () => { + class ContextClass extends React.Component {} + const DecoratedClass = DragLayer(() => ({}))(ContextClass) + expect(DecoratedClass).toBeDefined() + }) + + it('can apply to a function component', () => { + const Component: React.FC<{}> = () => null + const DecoratedComponent = DragLayer(() => ({}))(Component) + + expect(DecoratedComponent).toBeDefined() + }) +}) diff --git a/packages/react-dnd-decorators/src/__tests__/DragSource.spec.tsx b/packages/react-dnd-decorators/src/__tests__/DragSource.spec.tsx new file mode 100644 index 0000000000..b31e0719b3 --- /dev/null +++ b/packages/react-dnd-decorators/src/__tests__/DragSource.spec.tsx @@ -0,0 +1,58 @@ +import * as React from 'react' +import * as TestUtils from 'react-dom/test-utils' +import { DragSource } from '../index' + +describe('DragSource', () => { + it('can apply via composition', () => { + class ContextClass extends React.Component {} + const DecoratedClass = DragSource( + 'abc', + { beginDrag: () => null }, + () => ({}), + )(ContextClass) + expect(DecoratedClass).toBeDefined() + }) + + it('can apply to an SFC', () => { + const Component: React.FC<{}> = () => null + const DecoratedComponent = DragSource( + 'abc', + { beginDrag: () => null }, + () => ({}), + )(Component) + + expect(DecoratedComponent).toBeDefined() + }) + + it('can apply to a ref-forwarded component', () => { + interface RFProps { + children?: React.ReactNode + } + + const RefForwarded: React.RefForwardingComponent< + HTMLDivElement, + RFProps + > = () => null + + const DecoratedComponent = DragSource( + 'test_id', + { beginDrag: () => null }, + () => ({}), + )(RefForwarded) + + expect(DecoratedComponent).toBeDefined() + }) + + it('throws an error if rendered outside a DragDropContext', () => { + const Component: React.FC<{}> = () => null + const DecoratedComponent = DragSource( + 'abc', + { beginDrag: () => null }, + () => ({}), + )(Component) + + expect(() => { + TestUtils.renderIntoDocument() + }).toThrow(/Could not find the drag and drop manager in the context/) + }) +}) diff --git a/packages/react-dnd-decorators/src/__tests__/DropTarget.spec.tsx b/packages/react-dnd-decorators/src/__tests__/DropTarget.spec.tsx new file mode 100644 index 0000000000..60e7d06314 --- /dev/null +++ b/packages/react-dnd-decorators/src/__tests__/DropTarget.spec.tsx @@ -0,0 +1,45 @@ +import * as React from 'react' +import * as TestUtils from 'react-dom/test-utils' +import { DropTarget } from '../index' + +describe('DropTarget', () => { + it('can apply via composition', () => { + class ContextClass extends React.Component {} + const DecoratedClass = DropTarget( + 'abc', + { + drop: () => ({}), + }, + () => ({}), + )(ContextClass) + expect(DecoratedClass).toBeDefined() + }) + + it('can apply to an function component', () => { + const Component: React.FC<{}> = () => null + const DecoratedComponent = DropTarget( + 'abc', + { + drop: () => ({}), + }, + () => ({}), + )(Component) + + expect(DecoratedComponent).toBeDefined() + }) + + it('throws an error if rendered outside a DragDropContext', () => { + const Component: React.FC<{}> = () => null + const DecoratedComponent = DropTarget( + 'abc', + { + drop: () => ({}), + }, + () => ({}), + )(Component) + + expect(() => { + TestUtils.renderIntoDocument() + }).toThrow(/Could not find the drag and drop manager in the context/) + }) +}) diff --git a/packages/react-dnd-decorators/src/createSourceFactory.ts b/packages/react-dnd-decorators/src/createSourceFactory.ts index 57b142d779..1872300499 100644 --- a/packages/react-dnd-decorators/src/createSourceFactory.ts +++ b/packages/react-dnd-decorators/src/createSourceFactory.ts @@ -2,7 +2,7 @@ declare var process: any import * as React from 'react' import { DragSource, DragDropMonitor } from 'dnd-core' import { DragSourceMonitor } from 'react-dnd' -import { isPlainObject } from 'react-dnd/lib/internals' +import { __isPlainObject as isPlainObject } from 'react-dnd' import { DragSourceSpec } from './interfaces' import { getDecoratedComponent } from './utils/getDecoratedComponent' // @ts-ignore diff --git a/packages/react-dnd-decorators/src/createTargetFactory.ts b/packages/react-dnd-decorators/src/createTargetFactory.ts index 5d216b087d..fedd3ea29f 100644 --- a/packages/react-dnd-decorators/src/createTargetFactory.ts +++ b/packages/react-dnd-decorators/src/createTargetFactory.ts @@ -3,13 +3,12 @@ declare var process: any import * as React from 'react' import { DropTarget } from 'dnd-core' import { DropTargetMonitor } from 'react-dnd' -import { isPlainObject } from 'react-dnd/lib/internals' +import { __isPlainObject as isPlainObject } from 'react-dnd' import { DropTargetSpec } from './interfaces' import { getDecoratedComponent } from './utils/getDecoratedComponent' // @ts-ignore import invariant from 'invariant' - const ALLOWED_SPEC_METHODS = ['canDrop', 'hover', 'drop'] export interface Target extends DropTarget { diff --git a/packages/react-dnd-decorators/src/decorateHandler.tsx b/packages/react-dnd-decorators/src/decorateHandler.tsx index 23d0799a1a..a3ca0c7632 100644 --- a/packages/react-dnd-decorators/src/decorateHandler.tsx +++ b/packages/react-dnd-decorators/src/decorateHandler.tsx @@ -3,7 +3,10 @@ declare var process: any import * as React from 'react' import { DragDropManager, Identifier } from 'dnd-core' import { DndContext } from 'react-dnd' -import { Connector, isPlainObject } from 'react-dnd/lib/internals' +import { + __Connector as Connector, + __isPlainObject as isPlainObject, +} from 'react-dnd' import { DndComponent } from './interfaces' import { Disposable, diff --git a/packages/react-dnd-decorators/src/utils/disposables/Disposable.ts b/packages/react-dnd-decorators/src/utils/disposables/Disposable.ts index b325af23a8..d81116109d 100644 --- a/packages/react-dnd-decorators/src/utils/disposables/Disposable.ts +++ b/packages/react-dnd-decorators/src/utils/disposables/Disposable.ts @@ -1,4 +1,4 @@ -import { isFunction, noop } from 'react-dnd/lib/internals' +import { __isFunction as isFunction, __noop as noop } from 'react-dnd' /** * Provides a set of static methods for creating Disposables. diff --git a/packages/react-dnd/src/__tests__/DndProvider.tsx b/packages/react-dnd/src/__tests__/DndProvider.tsx new file mode 100644 index 0000000000..62eda48dd6 --- /dev/null +++ b/packages/react-dnd/src/__tests__/DndProvider.tsx @@ -0,0 +1,26 @@ +import { createDragDropManager } from 'dnd-core' +import * as React from 'react' +import * as TestUtils from 'react-dom/test-utils' +import { DndContext } from '../DndContext' +import TestBackend from 'react-dnd-test-backend' + +describe('DragDropContextProvider', () => { + it('reuses DragDropManager provided to it', () => { + let capturedManager + const manager = createDragDropManager(TestBackend, {}) + + const ManagerCapture = () => ( + + + {({ dragDropManager }) => { + capturedManager = dragDropManager + return null + }} + + + ) + + TestUtils.renderIntoDocument() + expect(capturedManager).toBe(manager) + }) +}) diff --git a/packages/react-dnd/src/index.ts b/packages/react-dnd/src/index.ts index 12482d6222..648d629ad6 100644 --- a/packages/react-dnd/src/index.ts +++ b/packages/react-dnd/src/index.ts @@ -3,3 +3,21 @@ export { DndProvider } from './DndProvider' export { DragPreviewImage } from './DragPreviewImage' export * from './interfaces' export { useDrag, useDragLayer, useDrop } from './hooks' + +// Internal, non-supported APIs +export { + Connector as __Connector, + DragSourceMonitorImpl as __DragSourceMonitorImpl, + DropTargetMonitorImpl as __DropTargetMonitorImpl, + SourceConnector as __SourceConnector, + TargetConnector as __TargetConnector, + registerSource as __registerSource, + registerTarget as __registerTarget, + cloneWithRef as __cloneWithRef, + Ref as __Ref, + isValidType as __isValidType, + isFunction as __isFunction, + isPlainObject as __isPlainObject, + isRef as __isRef, + noop as __noop, +} from './internals' diff --git a/packages/react-dnd/tsconfig.json b/packages/react-dnd/tsconfig.json index 94fbce4f74..8b69c98065 100644 --- a/packages/react-dnd/tsconfig.json +++ b/packages/react-dnd/tsconfig.json @@ -4,5 +4,5 @@ "outDir": "./lib", "baseUrl": "./" }, - "include": ["./src/index.ts", "./src/internals.ts"] + "include": ["./src/index.ts"] } From 82eae85d40e81aeadf8e70bca7197df4ebfcd350 Mon Sep 17 00:00:00 2001 From: Chris Trevino Date: Fri, 7 Jun 2019 16:05:48 -0700 Subject: [PATCH 7/8] fix: correct tests --- package.json | 1 + .../01-dustbin/multiple-targets/Dustbin.tsx | 1 + .../multiple-target-integration.spec.tsx | 2 +- .../single-target/__tests__/Box.spec.tsx | 2 +- .../single-target-integration.spec.tsx | 2 +- .../src/__tests__/ConnectorFunctions.spec.tsx | 2 +- packages/react-dnd/package.json | 2 + .../src/__tests__/DragDropContext.spec.tsx | 53 ---- .../src/__tests__/DragLayer.spec.tsx | 17 -- .../src/__tests__/DragSource.spec.tsx | 58 ----- .../src/__tests__/DropTarget.spec.tsx | 45 ---- .../src/__tests__/SourceConnector.spec.tsx | 2 +- .../src/__tests__/TargetConnector.spec.tsx | 2 +- yarn.lock | 241 +----------------- 14 files changed, 14 insertions(+), 416 deletions(-) rename packages/{react-dnd => react-dnd-decorators}/src/__tests__/ConnectorFunctions.spec.tsx (95%) delete mode 100644 packages/react-dnd/src/__tests__/DragDropContext.spec.tsx delete mode 100644 packages/react-dnd/src/__tests__/DragLayer.spec.tsx delete mode 100644 packages/react-dnd/src/__tests__/DragSource.spec.tsx delete mode 100644 packages/react-dnd/src/__tests__/DropTarget.spec.tsx diff --git a/package.json b/package.json index fabe2bbe28..dd2e67b1f1 100644 --- a/package.json +++ b/package.json @@ -96,6 +96,7 @@ ], "moduleNameMapper": { "^react-dnd$": "/packages/react-dnd/src", + "^react-dnd-decorators$": "/packages/react-dnd-decorators/src", "^react-dnd-html5-backend$": "//packages/react-dnd-html5-backend/src", "^react-dnd-test-backend$": "//packages/react-dnd-test-backend/src", "^react-dnd-test-utils$": "//packages/react-dnd-test-utils/src", diff --git a/packages/examples-decorators/src/01-dustbin/multiple-targets/Dustbin.tsx b/packages/examples-decorators/src/01-dustbin/multiple-targets/Dustbin.tsx index b14ed401aa..9c9945e5c7 100644 --- a/packages/examples-decorators/src/01-dustbin/multiple-targets/Dustbin.tsx +++ b/packages/examples-decorators/src/01-dustbin/multiple-targets/Dustbin.tsx @@ -1,6 +1,7 @@ import React from 'react' import { ConnectDropTarget, DropTargetMonitor } from 'react-dnd' import { DropTarget } from 'react-dnd-decorators' + const style: React.CSSProperties = { height: '12rem', width: '12rem', diff --git a/packages/examples-decorators/src/01-dustbin/multiple-targets/__tests__/multiple-target-integration.spec.tsx b/packages/examples-decorators/src/01-dustbin/multiple-targets/__tests__/multiple-target-integration.spec.tsx index 0e5c23b5c1..e4cf2a9a53 100644 --- a/packages/examples-decorators/src/01-dustbin/multiple-targets/__tests__/multiple-target-integration.spec.tsx +++ b/packages/examples-decorators/src/01-dustbin/multiple-targets/__tests__/multiple-target-integration.spec.tsx @@ -9,7 +9,7 @@ import { } from 'react-dnd-test-utils' import { mount } from 'enzyme' import { TestBackend } from 'react-dnd-test-backend' -import { DndComponent as DndC } from 'react-dnd' +import { DndComponent as DndC } from 'react-dnd-decorators' describe('Dustbin: Multiple Targets', () => { it('behaves as expected', () => { diff --git a/packages/examples-decorators/src/01-dustbin/single-target/__tests__/Box.spec.tsx b/packages/examples-decorators/src/01-dustbin/single-target/__tests__/Box.spec.tsx index f2356de613..761488cb38 100644 --- a/packages/examples-decorators/src/01-dustbin/single-target/__tests__/Box.spec.tsx +++ b/packages/examples-decorators/src/01-dustbin/single-target/__tests__/Box.spec.tsx @@ -3,7 +3,7 @@ import Box from '../Box' import { wrapInTestContext } from 'react-dnd-test-utils' import { mount } from 'enzyme' import { TestBackend } from 'react-dnd-test-backend' -import { ContextComponent } from 'react-dnd' +import { ContextComponent } from 'react-dnd-decorators' describe('Box', () => { // TODO: test utils are acting wonking with function components. diff --git a/packages/examples-decorators/src/01-dustbin/single-target/__tests__/single-target-integration.spec.tsx b/packages/examples-decorators/src/01-dustbin/single-target/__tests__/single-target-integration.spec.tsx index 01ed74251e..2c6268efbd 100644 --- a/packages/examples-decorators/src/01-dustbin/single-target/__tests__/single-target-integration.spec.tsx +++ b/packages/examples-decorators/src/01-dustbin/single-target/__tests__/single-target-integration.spec.tsx @@ -9,7 +9,7 @@ import { } from 'react-dnd-test-utils' import { mount } from 'enzyme' import { TestBackend } from 'react-dnd-test-backend' -import { DndComponent } from 'react-dnd' +import { DndComponent } from 'react-dnd-decorators' describe('Integration: Dustbin Single Target', () => { it('can simulate a full drag and drop interaction', () => { diff --git a/packages/react-dnd/src/__tests__/ConnectorFunctions.spec.tsx b/packages/react-dnd-decorators/src/__tests__/ConnectorFunctions.spec.tsx similarity index 95% rename from packages/react-dnd/src/__tests__/ConnectorFunctions.spec.tsx rename to packages/react-dnd-decorators/src/__tests__/ConnectorFunctions.spec.tsx index fc4fa5d4c3..cdf721a472 100644 --- a/packages/react-dnd/src/__tests__/ConnectorFunctions.spec.tsx +++ b/packages/react-dnd-decorators/src/__tests__/ConnectorFunctions.spec.tsx @@ -1,7 +1,7 @@ import * as React from 'react' import * as TestUtils from 'react-dom/test-utils' import { wrapInTestContext } from 'react-dnd-test-utils' -import DropTarget from '../DropTarget' +import { DropTarget } from '../DropTarget' describe('Connectors', () => { it('transmit expected arguments to components', () => { diff --git a/packages/react-dnd/package.json b/packages/react-dnd/package.json index 3ad23dd707..b867796430 100644 --- a/packages/react-dnd/package.json +++ b/packages/react-dnd/package.json @@ -26,8 +26,10 @@ "devDependencies": { "@babel/cli": "^7.4.4", "@babel/core": "^7.4.5", + "@babel/preset-env": "^7.4.5", "@types/react": "^16.8.19", "@types/react-dom": "^16.8.4", + "babel-jest": "^24.8.0", "babel-loader": "^8.0.6", "npm-run-all": "^4.1.5", "react": "^16.8.6", diff --git a/packages/react-dnd/src/__tests__/DragDropContext.spec.tsx b/packages/react-dnd/src/__tests__/DragDropContext.spec.tsx deleted file mode 100644 index 4cb76e4f80..0000000000 --- a/packages/react-dnd/src/__tests__/DragDropContext.spec.tsx +++ /dev/null @@ -1,53 +0,0 @@ -import { createDragDropManager } from 'dnd-core' -import * as React from 'react' -import * as TestUtils from 'react-dom/test-utils' -import { - DragDropContext, - DragDropContextProvider, - DragDropContextConsumer, -} from '../index' -import TestBackend from 'react-dnd-test-backend' - -describe('DragDropContext', () => { - it('can apply to a class via decorator-fashion', () => { - @DragDropContext(TestBackend) - class Context extends React.Component {} - - expect(Context).toBeDefined() - }) - - it('can apply via composition', () => { - class ContextClass extends React.Component {} - const Context = DragDropContext(TestBackend)(ContextClass) - - expect(Context).toBeDefined() - }) - - it('can apply to an SFC', () => { - const ContextComponent: React.FC<{}> = () => null - const Context = DragDropContext(TestBackend)(ContextComponent) - - expect(Context).toBeDefined() - }) -}) - -describe('DragDropContextProvider', () => { - it('reuses DragDropManager provided to it', () => { - let capturedManager - const manager = createDragDropManager(TestBackend, {}) - - const ManagerCapture = () => ( - - - {({ dragDropManager }) => { - capturedManager = dragDropManager - return null - }} - - - ) - - TestUtils.renderIntoDocument() - expect(capturedManager).toBe(manager) - }) -}) diff --git a/packages/react-dnd/src/__tests__/DragLayer.spec.tsx b/packages/react-dnd/src/__tests__/DragLayer.spec.tsx deleted file mode 100644 index 15fa3b100d..0000000000 --- a/packages/react-dnd/src/__tests__/DragLayer.spec.tsx +++ /dev/null @@ -1,17 +0,0 @@ -import * as React from 'react' -import { DragLayer } from '../index' - -describe('DragLayer', () => { - it('can apply via composition', () => { - class ContextClass extends React.Component {} - const DecoratedClass = DragLayer(() => ({}))(ContextClass) - expect(DecoratedClass).toBeDefined() - }) - - it('can apply to a function component', () => { - const Component: React.FC<{}> = () => null - const DecoratedComponent = DragLayer(() => ({}))(Component) - - expect(DecoratedComponent).toBeDefined() - }) -}) diff --git a/packages/react-dnd/src/__tests__/DragSource.spec.tsx b/packages/react-dnd/src/__tests__/DragSource.spec.tsx deleted file mode 100644 index b31e0719b3..0000000000 --- a/packages/react-dnd/src/__tests__/DragSource.spec.tsx +++ /dev/null @@ -1,58 +0,0 @@ -import * as React from 'react' -import * as TestUtils from 'react-dom/test-utils' -import { DragSource } from '../index' - -describe('DragSource', () => { - it('can apply via composition', () => { - class ContextClass extends React.Component {} - const DecoratedClass = DragSource( - 'abc', - { beginDrag: () => null }, - () => ({}), - )(ContextClass) - expect(DecoratedClass).toBeDefined() - }) - - it('can apply to an SFC', () => { - const Component: React.FC<{}> = () => null - const DecoratedComponent = DragSource( - 'abc', - { beginDrag: () => null }, - () => ({}), - )(Component) - - expect(DecoratedComponent).toBeDefined() - }) - - it('can apply to a ref-forwarded component', () => { - interface RFProps { - children?: React.ReactNode - } - - const RefForwarded: React.RefForwardingComponent< - HTMLDivElement, - RFProps - > = () => null - - const DecoratedComponent = DragSource( - 'test_id', - { beginDrag: () => null }, - () => ({}), - )(RefForwarded) - - expect(DecoratedComponent).toBeDefined() - }) - - it('throws an error if rendered outside a DragDropContext', () => { - const Component: React.FC<{}> = () => null - const DecoratedComponent = DragSource( - 'abc', - { beginDrag: () => null }, - () => ({}), - )(Component) - - expect(() => { - TestUtils.renderIntoDocument() - }).toThrow(/Could not find the drag and drop manager in the context/) - }) -}) diff --git a/packages/react-dnd/src/__tests__/DropTarget.spec.tsx b/packages/react-dnd/src/__tests__/DropTarget.spec.tsx deleted file mode 100644 index 60e7d06314..0000000000 --- a/packages/react-dnd/src/__tests__/DropTarget.spec.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import * as React from 'react' -import * as TestUtils from 'react-dom/test-utils' -import { DropTarget } from '../index' - -describe('DropTarget', () => { - it('can apply via composition', () => { - class ContextClass extends React.Component {} - const DecoratedClass = DropTarget( - 'abc', - { - drop: () => ({}), - }, - () => ({}), - )(ContextClass) - expect(DecoratedClass).toBeDefined() - }) - - it('can apply to an function component', () => { - const Component: React.FC<{}> = () => null - const DecoratedComponent = DropTarget( - 'abc', - { - drop: () => ({}), - }, - () => ({}), - )(Component) - - expect(DecoratedComponent).toBeDefined() - }) - - it('throws an error if rendered outside a DragDropContext', () => { - const Component: React.FC<{}> = () => null - const DecoratedComponent = DropTarget( - 'abc', - { - drop: () => ({}), - }, - () => ({}), - )(Component) - - expect(() => { - TestUtils.renderIntoDocument() - }).toThrow(/Could not find the drag and drop manager in the context/) - }) -}) diff --git a/packages/react-dnd/src/__tests__/SourceConnector.spec.tsx b/packages/react-dnd/src/__tests__/SourceConnector.spec.tsx index 8e1ab28a0e..60ae2f3c98 100644 --- a/packages/react-dnd/src/__tests__/SourceConnector.spec.tsx +++ b/packages/react-dnd/src/__tests__/SourceConnector.spec.tsx @@ -1,4 +1,4 @@ -import SourceConnector from '../SourceConnector' +import { SourceConnector } from '../SourceConnector' import { Backend } from 'dnd-core' describe('SourceConnector', () => { diff --git a/packages/react-dnd/src/__tests__/TargetConnector.spec.tsx b/packages/react-dnd/src/__tests__/TargetConnector.spec.tsx index 502f7b5b81..7a8c6b455d 100644 --- a/packages/react-dnd/src/__tests__/TargetConnector.spec.tsx +++ b/packages/react-dnd/src/__tests__/TargetConnector.spec.tsx @@ -1,4 +1,4 @@ -import TargetConnector from '../TargetConnector' +import { TargetConnector } from '../TargetConnector' describe('TargetConnector', () => { it('unsubscribes drop target when clearing handler id', () => { diff --git a/yarn.lock b/yarn.lock index 706198daec..2a0d0cae32 100644 --- a/yarn.lock +++ b/yarn.lock @@ -677,7 +677,7 @@ core-js "^2.6.5" regenerator-runtime "^0.13.2" -"@babel/preset-env@^7.4.1": +"@babel/preset-env@^7.4.1", "@babel/preset-env@^7.4.5": version "7.4.5" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.4.5.tgz#2fad7f62983d5af563b5f3139242755884998a58" integrity sha512-f2yNVXM+FsR5V8UwcFeIHzHWgnhXg3NpRmy0ADvALpnhB0SLbCvrCRr4BLOUYbQNLS+Z0Yer46x9dJXpXewI7w== @@ -2184,45 +2184,21 @@ "@webassemblyjs/helper-wasm-bytecode" "1.7.11" "@webassemblyjs/wast-parser" "1.7.11" -"@webassemblyjs/ast@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.8.5.tgz#51b1c5fe6576a34953bf4b253df9f0d490d9e359" - integrity sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ== - dependencies: - "@webassemblyjs/helper-module-context" "1.8.5" - "@webassemblyjs/helper-wasm-bytecode" "1.8.5" - "@webassemblyjs/wast-parser" "1.8.5" - "@webassemblyjs/floating-point-hex-parser@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.11.tgz#a69f0af6502eb9a3c045555b1a6129d3d3f2e313" integrity sha512-zY8dSNyYcgzNRNT666/zOoAyImshm3ycKdoLsyDw/Bwo6+/uktb7p4xyApuef1dwEBo/U/SYQzbGBvV+nru2Xg== -"@webassemblyjs/floating-point-hex-parser@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz#1ba926a2923613edce496fd5b02e8ce8a5f49721" - integrity sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ== - "@webassemblyjs/helper-api-error@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.11.tgz#c7b6bb8105f84039511a2b39ce494f193818a32a" integrity sha512-7r1qXLmiglC+wPNkGuXCvkmalyEstKVwcueZRP2GNC2PAvxbLYwLLPr14rcdJaE4UtHxQKfFkuDFuv91ipqvXg== -"@webassemblyjs/helper-api-error@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz#c49dad22f645227c5edb610bdb9697f1aab721f7" - integrity sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA== - "@webassemblyjs/helper-buffer@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.11.tgz#3122d48dcc6c9456ed982debe16c8f37101df39b" integrity sha512-MynuervdylPPh3ix+mKZloTcL06P8tenNH3sx6s0qE8SLR6DdwnfgA7Hc9NSYeob2jrW5Vql6GVlsQzKQCa13w== -"@webassemblyjs/helper-buffer@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz#fea93e429863dd5e4338555f42292385a653f204" - integrity sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q== - "@webassemblyjs/helper-code-frame@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.11.tgz#cf8f106e746662a0da29bdef635fcd3d1248364b" @@ -2230,46 +2206,21 @@ dependencies: "@webassemblyjs/wast-printer" "1.7.11" -"@webassemblyjs/helper-code-frame@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz#9a740ff48e3faa3022b1dff54423df9aa293c25e" - integrity sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ== - dependencies: - "@webassemblyjs/wast-printer" "1.8.5" - "@webassemblyjs/helper-fsm@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.11.tgz#df38882a624080d03f7503f93e3f17ac5ac01181" integrity sha512-nsAQWNP1+8Z6tkzdYlXT0kxfa2Z1tRTARd8wYnc/e3Zv3VydVVnaeePgqUzFrpkGUyhUUxOl5ML7f1NuT+gC0A== -"@webassemblyjs/helper-fsm@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz#ba0b7d3b3f7e4733da6059c9332275d860702452" - integrity sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow== - "@webassemblyjs/helper-module-context@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.11.tgz#d874d722e51e62ac202476935d649c802fa0e209" integrity sha512-JxfD5DX8Ygq4PvXDucq0M+sbUFA7BJAv/GGl9ITovqE+idGX+J3QSzJYz+LwQmL7fC3Rs+utvWoJxDb6pmC0qg== -"@webassemblyjs/helper-module-context@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz#def4b9927b0101dc8cbbd8d1edb5b7b9c82eb245" - integrity sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g== - dependencies: - "@webassemblyjs/ast" "1.8.5" - mamacro "^0.0.3" - "@webassemblyjs/helper-wasm-bytecode@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.11.tgz#dd9a1e817f1c2eb105b4cf1013093cb9f3c9cb06" integrity sha512-cMXeVS9rhoXsI9LLL4tJxBgVD/KMOKXuFqYb5oCJ/opScWpkCMEz9EJtkonaNcnLv2R3K5jIeS4TRj/drde1JQ== -"@webassemblyjs/helper-wasm-bytecode@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz#537a750eddf5c1e932f3744206551c91c1b93e61" - integrity sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ== - "@webassemblyjs/helper-wasm-section@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.11.tgz#9c9ac41ecf9fbcfffc96f6d2675e2de33811e68a" @@ -2280,16 +2231,6 @@ "@webassemblyjs/helper-wasm-bytecode" "1.7.11" "@webassemblyjs/wasm-gen" "1.7.11" -"@webassemblyjs/helper-wasm-section@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz#74ca6a6bcbe19e50a3b6b462847e69503e6bfcbf" - integrity sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/helper-buffer" "1.8.5" - "@webassemblyjs/helper-wasm-bytecode" "1.8.5" - "@webassemblyjs/wasm-gen" "1.8.5" - "@webassemblyjs/ieee754@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.7.11.tgz#c95839eb63757a31880aaec7b6512d4191ac640b" @@ -2297,13 +2238,6 @@ dependencies: "@xtuc/ieee754" "^1.2.0" -"@webassemblyjs/ieee754@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz#712329dbef240f36bf57bd2f7b8fb9bf4154421e" - integrity sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g== - dependencies: - "@xtuc/ieee754" "^1.2.0" - "@webassemblyjs/leb128@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.7.11.tgz#d7267a1ee9c4594fd3f7e37298818ec65687db63" @@ -2311,23 +2245,11 @@ dependencies: "@xtuc/long" "4.2.1" -"@webassemblyjs/leb128@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.8.5.tgz#044edeb34ea679f3e04cd4fd9824d5e35767ae10" - integrity sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A== - dependencies: - "@xtuc/long" "4.2.2" - "@webassemblyjs/utf8@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.7.11.tgz#06d7218ea9fdc94a6793aa92208160db3d26ee82" integrity sha512-C6GFkc7aErQIAH+BMrIdVSmW+6HSe20wg57HEC1uqJP8E/xpMjXqQUxkQw07MhNDSDcGpxI9G5JSNOQCqJk4sA== -"@webassemblyjs/utf8@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.8.5.tgz#a8bf3b5d8ffe986c7c1e373ccbdc2a0915f0cedc" - integrity sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw== - "@webassemblyjs/wasm-edit@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.11.tgz#8c74ca474d4f951d01dbae9bd70814ee22a82005" @@ -2342,20 +2264,6 @@ "@webassemblyjs/wasm-parser" "1.7.11" "@webassemblyjs/wast-printer" "1.7.11" -"@webassemblyjs/wasm-edit@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz#962da12aa5acc1c131c81c4232991c82ce56e01a" - integrity sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/helper-buffer" "1.8.5" - "@webassemblyjs/helper-wasm-bytecode" "1.8.5" - "@webassemblyjs/helper-wasm-section" "1.8.5" - "@webassemblyjs/wasm-gen" "1.8.5" - "@webassemblyjs/wasm-opt" "1.8.5" - "@webassemblyjs/wasm-parser" "1.8.5" - "@webassemblyjs/wast-printer" "1.8.5" - "@webassemblyjs/wasm-gen@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.11.tgz#9bbba942f22375686a6fb759afcd7ac9c45da1a8" @@ -2367,17 +2275,6 @@ "@webassemblyjs/leb128" "1.7.11" "@webassemblyjs/utf8" "1.7.11" -"@webassemblyjs/wasm-gen@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz#54840766c2c1002eb64ed1abe720aded714f98bc" - integrity sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/helper-wasm-bytecode" "1.8.5" - "@webassemblyjs/ieee754" "1.8.5" - "@webassemblyjs/leb128" "1.8.5" - "@webassemblyjs/utf8" "1.8.5" - "@webassemblyjs/wasm-opt@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.11.tgz#b331e8e7cef8f8e2f007d42c3a36a0580a7d6ca7" @@ -2388,16 +2285,6 @@ "@webassemblyjs/wasm-gen" "1.7.11" "@webassemblyjs/wasm-parser" "1.7.11" -"@webassemblyjs/wasm-opt@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz#b24d9f6ba50394af1349f510afa8ffcb8a63d264" - integrity sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/helper-buffer" "1.8.5" - "@webassemblyjs/wasm-gen" "1.8.5" - "@webassemblyjs/wasm-parser" "1.8.5" - "@webassemblyjs/wasm-parser@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.11.tgz#6e3d20fa6a3519f6b084ef9391ad58211efb0a1a" @@ -2410,18 +2297,6 @@ "@webassemblyjs/leb128" "1.7.11" "@webassemblyjs/utf8" "1.7.11" -"@webassemblyjs/wasm-parser@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz#21576f0ec88b91427357b8536383668ef7c66b8d" - integrity sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/helper-api-error" "1.8.5" - "@webassemblyjs/helper-wasm-bytecode" "1.8.5" - "@webassemblyjs/ieee754" "1.8.5" - "@webassemblyjs/leb128" "1.8.5" - "@webassemblyjs/utf8" "1.8.5" - "@webassemblyjs/wast-parser@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.7.11.tgz#25bd117562ca8c002720ff8116ef9072d9ca869c" @@ -2434,18 +2309,6 @@ "@webassemblyjs/helper-fsm" "1.7.11" "@xtuc/long" "4.2.1" -"@webassemblyjs/wast-parser@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz#e10eecd542d0e7bd394f6827c49f3df6d4eefb8c" - integrity sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/floating-point-hex-parser" "1.8.5" - "@webassemblyjs/helper-api-error" "1.8.5" - "@webassemblyjs/helper-code-frame" "1.8.5" - "@webassemblyjs/helper-fsm" "1.8.5" - "@xtuc/long" "4.2.2" - "@webassemblyjs/wast-printer@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.7.11.tgz#c4245b6de242cb50a2cc950174fdbf65c78d7813" @@ -2455,15 +2318,6 @@ "@webassemblyjs/wast-parser" "1.7.11" "@xtuc/long" "4.2.1" -"@webassemblyjs/wast-printer@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz#114bbc481fd10ca0e23b3560fa812748b0bae5bc" - integrity sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/wast-parser" "1.8.5" - "@xtuc/long" "4.2.2" - "@xtuc/ieee754@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" @@ -2474,11 +2328,6 @@ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.1.tgz#5c85d662f76fa1d34575766c5dcd6615abcd30d8" integrity sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g== -"@xtuc/long@4.2.2": - version "4.2.2" - resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" - integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== - JSONStream@^1.0.4, JSONStream@^1.3.4, JSONStream@^1.3.5: version "1.3.5" resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" @@ -2512,11 +2361,6 @@ acorn-dynamic-import@^3.0.0: dependencies: acorn "^5.0.0" -acorn-dynamic-import@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz#482210140582a36b83c3e342e1cfebcaa9240948" - integrity sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw== - acorn-globals@^4.1.0: version "4.3.2" resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.2.tgz#4e2c2313a597fd589720395f6354b41cd5ec8006" @@ -2540,7 +2384,7 @@ acorn@^5.0.0, acorn@^5.5.3, acorn@^5.6.2: resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279" integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== -acorn@^6.0.1, acorn@^6.0.5, acorn@^6.0.7: +acorn@^6.0.1, acorn@^6.0.7: version "6.1.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.1.1.tgz#7d25ae05bb8ad1f9b699108e1094ecd7884adc1f" integrity sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA== @@ -5336,11 +5180,6 @@ detab@^2.0.0: dependencies: repeat-string "^1.5.4" -detect-file@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" - integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc= - detect-indent@^5.0.0, detect-indent@~5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" @@ -6728,16 +6567,6 @@ find-versions@^3.0.0: array-uniq "^2.1.0" semver-regex "^2.0.0" -findup-sync@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc" - integrity sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw= - dependencies: - detect-file "^1.0.0" - is-glob "^3.1.0" - micromatch "^3.0.4" - resolve-dir "^1.0.1" - flat-cache@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" @@ -8627,11 +8456,6 @@ internal-ip@^4.3.0: default-gateway "^4.2.0" ipaddr.js "^1.9.0" -interpret@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz#d5061a6224be58e8083985f5014d844359576296" - integrity sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw== - into-stream@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/into-stream/-/into-stream-3.1.0.tgz#96fb0a936c12babd6ff1752a17d05616abd094c6" @@ -10647,11 +10471,6 @@ makeerror@1.0.x: dependencies: tmpl "1.0.x" -mamacro@^0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/mamacro/-/mamacro-0.0.3.tgz#ad2c9576197c9f1abf308d0787865bd975a3f3e4" - integrity sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA== - map-age-cleaner@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" @@ -10900,7 +10719,7 @@ methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= -micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8: +micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8: version "3.1.10" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== @@ -14142,7 +13961,7 @@ resolve-cwd@^2.0.0: dependencies: resolve-from "^3.0.0" -resolve-dir@^1.0.0, resolve-dir@^1.0.1: +resolve-dir@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M= @@ -16380,11 +16199,6 @@ v8-compile-cache@^1.1.0: resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-1.1.2.tgz#8d32e4f16974654657e676e0e467a348e89b0dc4" integrity sha512-ejdrifsIydN1XDH7EuR2hn8ZrkRKUYF7tUcBjBy/lhrCvs2K+zRlbW9UHc0IQ9RsYFZJFqJrieoIHfkCa0DBRA== -v8-compile-cache@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz#00f7494d2ae2b688cfe2899df6ed2c54bef91dbe" - integrity sha512-CNmdbwQMBjwr9Gsmohvm0pbL954tJrNzf6gWL3K+QMQf00PF7ERGrEiLgjuU3mKreLC2MeGhUsNV9ybTbLgd3w== - valid-url@^1.0.9: version "1.0.9" resolved "https://registry.yarnpkg.com/valid-url/-/valid-url-1.0.9.tgz#1c14479b40f1397a75782f115e4086447433a200" @@ -16507,23 +16321,6 @@ webidl-conversions@^4.0.2: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== -webpack-cli@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.2.tgz#aed2437b0db0a7faa2ad28484e166a5360014a91" - integrity sha512-FLkobnaJJ+03j5eplxlI0TUxhGCOdfewspIGuvDVtpOlrAuKMFC57K42Ukxqs1tn8947/PM6tP95gQc0DCzRYA== - dependencies: - chalk "^2.4.1" - cross-spawn "^6.0.5" - enhanced-resolve "^4.1.0" - findup-sync "^2.0.0" - global-modules "^1.0.0" - import-local "^2.0.0" - interpret "^1.1.0" - loader-utils "^1.1.0" - supports-color "^5.5.0" - v8-compile-cache "^2.0.2" - yargs "^12.0.5" - webpack-dev-middleware@^3.0.1, webpack-dev-middleware@^3.7.0: version "3.7.0" resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.0.tgz#ef751d25f4e9a5c8a35da600c5fda3582b5c6cff" @@ -16608,36 +16405,6 @@ webpack-stats-plugin@^0.1.5: resolved "https://registry.yarnpkg.com/webpack-stats-plugin/-/webpack-stats-plugin-0.1.5.tgz#29e5f12ebfd53158d31d656a113ac1f7b86179d9" integrity sha1-KeXxLr/VMVjTHWVqETrB97hhedk= -webpack@^4.32.2: - version "4.32.2" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.32.2.tgz#3639375364a617e84b914ddb2c770aed511e5bc8" - integrity sha512-F+H2Aa1TprTQrpodRAWUMJn7A8MgDx82yQiNvYMaj3d1nv3HetKU0oqEulL9huj8enirKi8KvEXQ3QtuHF89Zg== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/helper-module-context" "1.8.5" - "@webassemblyjs/wasm-edit" "1.8.5" - "@webassemblyjs/wasm-parser" "1.8.5" - acorn "^6.0.5" - acorn-dynamic-import "^4.0.0" - ajv "^6.1.0" - ajv-keywords "^3.1.0" - chrome-trace-event "^1.0.0" - enhanced-resolve "^4.1.0" - eslint-scope "^4.0.0" - json-parse-better-errors "^1.0.2" - loader-runner "^2.3.0" - loader-utils "^1.1.0" - memory-fs "~0.4.1" - micromatch "^3.1.8" - mkdirp "~0.5.0" - neo-async "^2.5.0" - node-libs-browser "^2.0.0" - schema-utils "^1.0.0" - tapable "^1.1.0" - terser-webpack-plugin "^1.1.0" - watchpack "^1.5.0" - webpack-sources "^1.3.0" - webpack@~4.28.4: version "4.28.4" resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.28.4.tgz#1ddae6c89887d7efb752adf0c3cd32b9b07eacd0" From 76e3eaedd5406ed16b955e596df73b66acd4e26c Mon Sep 17 00:00:00 2001 From: Chris Trevino Date: Fri, 7 Jun 2019 16:08:05 -0700 Subject: [PATCH 8/8] fix: jest typings issues --- packages/react-dnd-decorators/src/DragDropContext.tsx | 4 ++-- packages/react-dnd-decorators/src/DragLayer.tsx | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/react-dnd-decorators/src/DragDropContext.tsx b/packages/react-dnd-decorators/src/DragDropContext.tsx index ab933a2dbf..4c44a268b2 100644 --- a/packages/react-dnd-decorators/src/DragDropContext.tsx +++ b/packages/react-dnd-decorators/src/DragDropContext.tsx @@ -65,9 +65,9 @@ export function DragDropContext( } } - return hoistStatics( + return (hoistStatics( DragDropContextContainer, DecoratedComponent, - ) as TargetClass & DragDropContextContainer + ) as any) as TargetClass & DragDropContextContainer } } diff --git a/packages/react-dnd-decorators/src/DragLayer.tsx b/packages/react-dnd-decorators/src/DragLayer.tsx index 45ca8e653c..617eb46d80 100644 --- a/packages/react-dnd-decorators/src/DragLayer.tsx +++ b/packages/react-dnd-decorators/src/DragLayer.tsx @@ -148,6 +148,6 @@ export function DragLayer( } } - return hoistStatics(DragLayerContainer, DecoratedComponent) + return hoistStatics(DragLayerContainer, DecoratedComponent) as any } as any) as DndComponentEnhancer }