From 221169db515045f0486b0d23008cf536e9f0045d Mon Sep 17 00:00:00 2001 From: Tom Moor Date: Thu, 14 Aug 2025 08:02:13 -0400 Subject: [PATCH] =?UTF-8?q?fix:=20Remove=20mime-types=20usage=20from=20the?= =?UTF-8?q?=20browser=20=E2=80=93=20fixes=20dev/vite=20warnings=20(#9926)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/.oxlintrc.json | 6 ++++++ package.json | 4 ++-- shared/.oxlintrc.json | 4 ++++ shared/editor/plugins/UploadPlugin.ts | 7 +------ yarn.lock | 10 +++++----- 5 files changed, 18 insertions(+), 13 deletions(-) diff --git a/app/.oxlintrc.json b/app/.oxlintrc.json index a90e9cbd55..937684825c 100644 --- a/app/.oxlintrc.json +++ b/app/.oxlintrc.json @@ -8,6 +8,12 @@ "no-restricted-imports": [ "error", { + "patterns": [ + { + "group": ["mime-types"], + "message": "Do not use the mime-types package in the browser." + } + ], "paths": [ { "name": "reakit/Menu", diff --git a/package.json b/package.json index 470591d846..0854be9352 100644 --- a/package.json +++ b/package.json @@ -171,7 +171,7 @@ "markdown-it-container": "^3.0.0", "markdown-it-emoji": "^3.0.0", "mermaid": "11.9.0", - "mime-types": "^2.1.35", + "mime-types": "^3.0.1", "mobx": "^4.15.4", "mobx-react": "^6.3.1", "mobx-utils": "^4.0.1", @@ -308,7 +308,7 @@ "@types/markdown-it": "^14.1.2", "@types/markdown-it-container": "^2.0.9", "@types/markdown-it-emoji": "^3.0.1", - "@types/mime-types": "^2.1.4", + "@types/mime-types": "^3.0.1", "@types/natural-sort": "^0.0.24", "@types/node": "20.17.30", "@types/node-fetch": "^2.6.9", diff --git a/shared/.oxlintrc.json b/shared/.oxlintrc.json index 092a0b9235..6cfeec44bf 100644 --- a/shared/.oxlintrc.json +++ b/shared/.oxlintrc.json @@ -22,6 +22,10 @@ "allowTypeImports": true, "group": ["@server/*"], "message": "Do not reference server code from shared code." + }, + { + "group": ["mime-types"], + "message": "Do not use the mime-types package in the browser." } ] } diff --git a/shared/editor/plugins/UploadPlugin.ts b/shared/editor/plugins/UploadPlugin.ts index 65a0313847..e0ced10eaa 100644 --- a/shared/editor/plugins/UploadPlugin.ts +++ b/shared/editor/plugins/UploadPlugin.ts @@ -1,4 +1,3 @@ -import { extension } from "mime-types"; import { Node } from "prosemirror-model"; import { Plugin } from "prosemirror-state"; import { getDataTransferFiles, getDataTransferImage } from "../../utils/files"; @@ -76,17 +75,13 @@ export class UploadPlugin extends Plugin { .then((response) => response.blob()) .then((blob) => { const fileName = fileNameFromUrl(imageSrc) ?? "pasted-image"; - const ext = extension(blob.type) ?? "png"; - const name = fileName.endsWith(`.${ext}`) - ? fileName - : `${fileName}.${ext}`; void insertFiles( view, event, result.pos, [ - new File([blob], name, { + new File([blob], fileName, { type: blob.type, }), ], diff --git a/yarn.lock b/yarn.lock index 2036daed43..e6729fb0dc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5103,10 +5103,10 @@ resolved "https://registry.yarnpkg.com/@types/mdurl/-/mdurl-2.0.0.tgz#d43878b5b20222682163ae6f897b20447233bdfd" integrity sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg== -"@types/mime-types@^2.1.4": - version "2.1.4" - resolved "https://registry.yarnpkg.com/@types/mime-types/-/mime-types-2.1.4.tgz#93a1933e24fed4fb9e4adc5963a63efcbb3317a2" - integrity "sha1-k6GTPiT+1PueStxZY6Y+/LszF6I= sha512-lfU4b34HOri+kAY5UheuFMWPDOI+OPceBSHZKp69gEyTL/mmJ4cnU6Y/rlme3UL3GyOn6Y42hyIEw0/q8sWx5w==" +"@types/mime-types@^3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/mime-types/-/mime-types-3.0.1.tgz#7fb74656179257c27cd48aa503eb918811727115" + integrity sha512-xRMsfuQbnRq1Ef+C+RKaENOxXX87Ygl38W1vDfPHRku02TgQr+Qd8iivLtAMcR0KF5/29xlnFihkTlbqFrGOVQ== "@types/mime@^1": version "1.3.2" @@ -11041,7 +11041,7 @@ mime-db@1.52.0: resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.54.0.tgz#cddb3ee4f9c64530dff640236661d42cb6a314f5" integrity sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ== -mime-types@^2.1.12, mime-types@^2.1.35, mime-types@~2.1.24, mime-types@~2.1.34: +mime-types@^2.1.12, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity "sha1-OBqHG2KnNEUGYK497uRIE/cNlZo= sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw=="