From fed1fb83d2e5c5e22b618e3ee92d62a66fb4b496 Mon Sep 17 00:00:00 2001 From: sarayourfriend Date: Tue, 9 Mar 2021 14:03:57 -0800 Subject: [PATCH] Dom: Add type-checking to data-transfer (#29682) --- packages/dom/README.md | 2 +- packages/dom/src/data-transfer.js | 4 ++-- packages/dom/tsconfig.json | 8 ++++++++ tsconfig.json | 1 + 4 files changed, 12 insertions(+), 3 deletions(-) create mode 100644 packages/dom/tsconfig.json diff --git a/packages/dom/README.md b/packages/dom/README.md index 7baf10c94d8358..5936c1e659cc42 100644 --- a/packages/dom/README.md +++ b/packages/dom/README.md @@ -84,7 +84,7 @@ _Parameters_ _Returns_ -- `Object[]`: An array containing all files. +- `File[]`: An array containing all files. # **getOffsetParent** diff --git a/packages/dom/src/data-transfer.js b/packages/dom/src/data-transfer.js index 6052326c2c2213..ba756a777c9e65 100644 --- a/packages/dom/src/data-transfer.js +++ b/packages/dom/src/data-transfer.js @@ -3,10 +3,10 @@ * * @param {DataTransfer} dataTransfer DataTransfer object to inspect. * - * @return {Object[]} An array containing all files. + * @return {File[]} An array containing all files. */ export function getFilesFromDataTransfer( dataTransfer ) { - const files = [ ...dataTransfer.files ]; + const files = Array.from( dataTransfer.files ); Array.from( dataTransfer.items ).forEach( ( item ) => { const file = item.getAsFile(); diff --git a/packages/dom/tsconfig.json b/packages/dom/tsconfig.json new file mode 100644 index 00000000000000..8821a076a20e5b --- /dev/null +++ b/packages/dom/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "rootDir": "src", + "declarationDir": "build-types" + }, + "include": [ "src/data-transfer.js" ] +} \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json index 06ef384950a431..09359ae24102a2 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -7,6 +7,7 @@ { "path": "packages/block-editor" }, { "path": "packages/components" }, { "path": "packages/deprecated" }, + { "path": "packages/dom" }, { "path": "packages/element" }, { "path": "packages/dom-ready" }, { "path": "packages/escape-html" },