update all the npm after 2 years

This commit is contained in:
fyears 2023-12-17 15:18:23 +08:00
parent 92183e0fb6
commit 44dbec175b
10 changed files with 111 additions and 83 deletions

View File

@ -18,7 +18,7 @@ const DEFAULT_ONEDRIVE_CLIENT_ID = process.env.ONEDRIVE_CLIENT_ID || "";
const DEFAULT_ONEDRIVE_AUTHORITY = process.env.ONEDRIVE_AUTHORITY || ""; const DEFAULT_ONEDRIVE_AUTHORITY = process.env.ONEDRIVE_AUTHORITY || "";
esbuild esbuild
.build({ .context({
banner: { banner: {
js: banner, js: banner,
}, },
@ -33,11 +33,13 @@ esbuild
"fs", "fs",
"tls", "tls",
"net", "net",
"http",
"https",
// ...builtins // ...builtins
], ],
inject: ["./esbuild.injecthelper.mjs"], inject: ["./esbuild.injecthelper.mjs"],
format: "cjs", format: "cjs",
watch: !prod, // watch: !prod, // no longer valid in esbuild 0.17
target: "es2016", target: "es2016",
logLevel: "info", logLevel: "info",
sourcemap: prod ? false : "inline", sourcemap: prod ? false : "inline",
@ -53,4 +55,15 @@ esbuild
"process.env.DEBUG": `undefined`, // ugly fix "process.env.DEBUG": `undefined`, // ugly fix
}, },
}) })
.then((context) => {
if (process.argv.includes("--watch")) {
// Enable watch mode
context.watch();
} else {
// Build once and exit if not in watch mode
context.rebuild().then((result) => {
context.dispose();
});
}
})
.catch(() => process.exit(1)); .catch(() => process.exit(1));

View File

@ -3,11 +3,11 @@
"version": "0.3.25", "version": "0.3.25",
"description": "This is yet another sync plugin for Obsidian app.", "description": "This is yet another sync plugin for Obsidian app.",
"scripts": { "scripts": {
"dev2": "node esbuild.config.mjs", "dev2": "node esbuild.config.mjs --watch",
"build2": "tsc -noEmit -skipLibCheck && node esbuild.config.mjs production", "build2": "tsc -noEmit -skipLibCheck && node esbuild.config.mjs production",
"build": "webpack --mode production", "build": "webpack --mode production",
"dev": "webpack --mode development --watch", "dev": "webpack --mode development --watch",
"format": "npx prettier --write .", "format": "npx prettier --trailing-comma es5 --write .",
"clean": "npx rimraf main.js", "clean": "npx rimraf main.js",
"test": "cross-env TS_NODE_COMPILER_OPTIONS={\\\"module\\\":\\\"commonjs\\\"} mocha -r ts-node/register 'tests/**/*.ts'" "test": "cross-env TS_NODE_COMPILER_OPTIONS={\\\"module\\\":\\\"commonjs\\\"} mocha -r ts-node/register 'tests/**/*.ts'"
}, },
@ -23,73 +23,74 @@
"author": "", "author": "",
"license": "Apache-2.0", "license": "Apache-2.0",
"devDependencies": { "devDependencies": {
"@microsoft/microsoft-graph-types": "^2.19.0", "@microsoft/microsoft-graph-types": "^2.40.0",
"@types/chai": "^4.3.1", "@types/chai": "^4.3.11",
"@types/chai-as-promised": "^7.1.5", "@types/chai-as-promised": "^7.1.8",
"@types/jsdom": "^16.2.14", "@types/jsdom": "^21.1.6",
"@types/lodash": "^4.14.182", "@types/lodash": "^4.14.202",
"@types/mime-types": "^2.1.1", "@types/mime-types": "^2.1.4",
"@types/mocha": "^9.1.1", "@types/mocha": "^10.0.6",
"@types/mustache": "^4.1.2", "@types/mustache": "^4.2.5",
"@types/node": "^17.0.30", "@types/node": "^20.10.4",
"@types/qrcode": "^1.4.2", "@types/qrcode": "^1.5.5",
"builtin-modules": "^3.2.0", "builtin-modules": "^3.3.0",
"chai": "^4.3.6", "chai": "^4.3.10",
"chai-as-promised": "^7.1.1", "chai-as-promised": "^7.1.1",
"cross-env": "^7.0.3", "cross-env": "^7.0.3",
"dotenv": "^16.0.0", "dotenv": "^16.3.1",
"esbuild": "^0.14.38", "esbuild": "^0.19.9",
"jsdom": "^19.0.0", "jsdom": "^23.0.1",
"mocha": "^9.2.2", "mocha": "^10.2.0",
"prettier": "^2.6.2", "npm-check-updates": "^16.14.12",
"ts-loader": "^9.2.9", "obsidian": "^1.4.11",
"ts-node": "^10.7.0", "prettier": "^3.1.1",
"tslib": "^2.4.0", "ts-loader": "^9.5.1",
"typescript": "^4.6.4", "ts-node": "^10.9.2",
"tslib": "^2.6.2",
"typescript": "^5.3.3",
"webdav-server": "^2.6.2", "webdav-server": "^2.6.2",
"webpack": "^5.72.0", "webpack": "^5.89.0",
"webpack-cli": "^4.9.2" "webpack-cli": "^5.1.4"
}, },
"dependencies": { "dependencies": {
"@aws-sdk/client-s3": "^3.81.0", "@aws-sdk/client-s3": "^3.474.0",
"@aws-sdk/fetch-http-handler": "^3.78.0", "@aws-sdk/lib-storage": "^3.474.0",
"@aws-sdk/lib-storage": "^3.81.0", "@aws-sdk/signature-v4-crt": "^3.474.0",
"@aws-sdk/protocol-http": "^3.78.0", "@aws-sdk/types": "^3.468.0",
"@aws-sdk/querystring-builder": "^3.78.0", "@azure/msal-node": "^2.6.0",
"@aws-sdk/signature-v4-crt": "^3.78.0",
"@aws-sdk/types": "^3.78.0",
"@azure/msal-node": "^1.8.0",
"@fyears/tsqueue": "^1.0.1", "@fyears/tsqueue": "^1.0.1",
"@microsoft/microsoft-graph-client": "^3.0.2", "@microsoft/microsoft-graph-client": "^3.0.7",
"acorn": "^8.7.1", "@smithy/fetch-http-handler": "^2.3.1",
"aggregate-error": "^4.0.0", "@smithy/protocol-http": "^3.0.11",
"assert": "^2.0.0", "@smithy/querystring-builder": "^2.0.15",
"aws-crt": "^1.12.1", "acorn": "^8.11.2",
"aggregate-error": "^5.0.0",
"assert": "^2.1.0",
"aws-crt": "^1.20.0",
"buffer": "^6.0.3", "buffer": "^6.0.3",
"crypto-browserify": "^3.12.0", "crypto-browserify": "^3.12.0",
"delay": "^5.0.0", "delay": "^6.0.0",
"dropbox": "^10.28.0", "dropbox": "^10.34.0",
"emoji-regex": "^10.1.0", "emoji-regex": "^10.3.0",
"http-status-codes": "^2.2.0", "http-status-codes": "^2.3.0",
"localforage": "^1.10.0", "localforage": "^1.10.0",
"lodash": "^4.17.21", "lodash": "^4.17.21",
"loglevel": "^1.8.0", "loglevel": "^1.8.1",
"lucide": "^0.35.0", "lucide": "^0.298.0",
"mime-types": "^2.1.35", "mime-types": "^2.1.35",
"mustache": "^4.2.0", "mustache": "^4.2.0",
"nanoid": "^3.3.3", "nanoid": "^5.0.4",
"obsidian": "^0.14.6", "p-queue": "^8.0.1",
"p-queue": "^7.2.0",
"path-browserify": "^1.0.1", "path-browserify": "^1.0.1",
"process": "^0.11.10", "process": "^0.11.10",
"qrcode": "^1.5.0", "qrcode": "^1.5.3",
"rfc4648": "^1.5.1", "rfc4648": "^1.5.3",
"rimraf": "^3.0.2", "rimraf": "^5.0.5",
"stream-browserify": "^3.0.0", "stream-browserify": "^3.0.0",
"url": "^0.11.0", "url": "^0.11.3",
"util": "^0.12.4", "util": "^0.12.5",
"webdav": "^4.9.0", "webdav": "^5.3.1",
"webdav-fs": "^4.0.1", "webdav-fs": "^4.0.1",
"xregexp": "^5.1.0" "xregexp": "^5.1.1"
} }
} }

View File

@ -5,7 +5,7 @@ import { LANGS } from "./langs";
export type LangType = keyof typeof LANGS; export type LangType = keyof typeof LANGS;
export type LangTypeAndAuto = LangType | "auto"; export type LangTypeAndAuto = LangType | "auto";
export type TransItemType = keyof typeof LANGS["en"]; export type TransItemType = keyof (typeof LANGS)["en"];
export class I18n { export class I18n {
lang: LangTypeAndAuto; lang: LangTypeAndAuto;
@ -31,7 +31,7 @@ export class I18n {
} }
const res: string = const res: string =
(LANGS[realLang] as typeof LANGS["en"])[key] || LANGS["en"][key] || key; (LANGS[realLang] as (typeof LANGS)["en"])[key] || LANGS["en"][key] || key;
return res; return res;
} }

View File

@ -312,9 +312,8 @@ export const clearDeleteRenameHistoryOfKeyAndVault = async (
vaultRandomID: string vaultRandomID: string
) => { ) => {
const fullKey = `${vaultRandomID}\t${key}`; const fullKey = `${vaultRandomID}\t${key}`;
const item: FileFolderHistoryRecord | null = await db.fileHistoryTbl.getItem( const item: FileFolderHistoryRecord | null =
fullKey await db.fileHistoryTbl.getItem(fullKey);
);
if ( if (
item !== null && item !== null &&
(item.actionType === "delete" || item.actionType === "rename") (item.actionType === "delete" || item.actionType === "rename")

View File

@ -976,9 +976,8 @@ export default class RemotelySavePlugin extends Plugin {
const pluginConfigDir = const pluginConfigDir =
this.manifest.dir || this.manifest.dir ||
`${this.app.vault.configDir}/plugins/${this.manifest.dir}`; `${this.app.vault.configDir}/plugins/${this.manifest.dir}`;
const pluginConfigDirExists = await this.app.vault.adapter.exists( const pluginConfigDirExists =
pluginConfigDir await this.app.vault.adapter.exists(pluginConfigDir);
);
if (!pluginConfigDirExists) { if (!pluginConfigDirExists) {
// what happened? // what happened?
return; return;

View File

@ -4,14 +4,20 @@
import { TAbstractFile, TFolder, TFile, Vault } from "obsidian"; import { TAbstractFile, TFolder, TFile, Vault } from "obsidian";
import * as origLog from "loglevel"; import * as origLog from "loglevel";
import type { LogLevelNumbers, Logger, LogLevel, LogLevelDesc } from "loglevel"; import type {
LogLevelNumbers,
Logger,
LogLevel,
LogLevelDesc,
LogLevelNames,
} from "loglevel";
const log2 = origLog.getLogger("rs-default"); const log2 = origLog.getLogger("rs-default");
const originalFactory = log2.methodFactory; const originalFactory = log2.methodFactory;
export const applyLogWriterInplace = function (writer: (...msg: any[]) => any) { export const applyLogWriterInplace = function (writer: (...msg: any[]) => any) {
log2.methodFactory = function ( log2.methodFactory = function (
methodName: string, methodName: LogLevelNames,
logLevel: LogLevelNumbers, logLevel: LogLevelNumbers,
loggerName: string | symbol loggerName: string | symbol
) { ) {

View File

@ -1,4 +1,4 @@
import delay from "delay"; import { rangeDelay } from "delay";
import { Dropbox, DropboxAuth } from "dropbox"; import { Dropbox, DropboxAuth } from "dropbox";
import type { files, DropboxResponseError, DropboxResponse } from "dropbox"; import type { files, DropboxResponseError, DropboxResponse } from "dropbox";
import { Vault } from "obsidian"; import { Vault } from "obsidian";
@ -340,7 +340,7 @@ async function retryReq<T>(
2 2
)}` )}`
); );
await delay.range(secMin * 1000, secMax * 1000); await rangeDelay(secMin * 1000, secMax * 1000);
} }
} }
} }

View File

@ -11,14 +11,14 @@ import {
S3Client, S3Client,
} from "@aws-sdk/client-s3"; } from "@aws-sdk/client-s3";
import { Upload } from "@aws-sdk/lib-storage"; import { Upload } from "@aws-sdk/lib-storage";
import { HttpHandler, HttpRequest, HttpResponse } from "@aws-sdk/protocol-http"; import { HttpHandler, HttpRequest, HttpResponse } from "@smithy/protocol-http";
import { import {
FetchHttpHandler, FetchHttpHandler,
FetchHttpHandlerOptions, FetchHttpHandlerOptions,
} from "@aws-sdk/fetch-http-handler"; } from "@smithy/fetch-http-handler";
// @ts-ignore // @ts-ignore
import { requestTimeout } from "@aws-sdk/fetch-http-handler/dist-es/request-timeout"; import { requestTimeout } from "@smithy/fetch-http-handler/dist-es/request-timeout";
import { buildQueryString } from "@aws-sdk/querystring-builder"; import { buildQueryString } from "@smithy/querystring-builder";
import { HeaderBag, HttpHandlerOptions, Provider } from "@aws-sdk/types"; import { HeaderBag, HttpHandlerOptions, Provider } from "@aws-sdk/types";
import { Buffer } from "buffer"; import { Buffer } from "buffer";
import * as mime from "mime-types"; import * as mime from "mime-types";

View File

@ -17,8 +17,8 @@ import type {
RequestOptionsWithState, RequestOptionsWithState,
Response, Response,
ResponseDataDetailed, ResponseDataDetailed,
} from "webdav/web"; } from "webdav";
import { getPatcher } from "webdav/web"; import { getPatcher } from "webdav";
if (VALID_REQURL) { if (VALID_REQURL) {
getPatcher().patch( getPatcher().patch(
"request", "request",
@ -38,28 +38,28 @@ if (VALID_REQURL) {
}); });
let r2: Response | ResponseDataDetailed<any> = undefined; let r2: Response | ResponseDataDetailed<any> = undefined;
if (options.responseType === undefined) { if ((options as any).responseType === undefined) {
r2 = { r2 = {
data: undefined, data: undefined,
status: r.status, status: r.status,
statusText: getReasonPhrase(r.status), statusText: getReasonPhrase(r.status),
headers: r.headers, headers: r.headers,
}; };
} else if (options.responseType === "json") { } else if ((options as any).responseType === "json") {
r2 = { r2 = {
data: r.json, data: r.json,
status: r.status, status: r.status,
statusText: getReasonPhrase(r.status), statusText: getReasonPhrase(r.status),
headers: r.headers, headers: r.headers,
}; };
} else if (options.responseType === "text") { } else if ((options as any).responseType === "text") {
r2 = { r2 = {
data: r.text, data: r.text,
status: r.status, status: r.status,
statusText: getReasonPhrase(r.status), statusText: getReasonPhrase(r.status),
headers: r.headers, headers: r.headers,
}; };
} else if (options.responseType === "arraybuffer") { } else if ((options as any).responseType === "arraybuffer") {
r2 = { r2 = {
data: r.arrayBuffer, data: r.arrayBuffer,
status: r.status, status: r.status,
@ -68,7 +68,9 @@ if (VALID_REQURL) {
}; };
} else { } else {
throw Error( throw Error(
`do not know how to deal with responseType = ${options.responseType}` `do not know how to deal with responseType = ${
(options as any).responseType
}`
); );
} }
return r2; return r2;
@ -108,8 +110,8 @@ if (VALID_REQURL) {
// // console.log("using fetch"); // // console.log("using fetch");
// return r; // return r;
// }); // });
import { AuthType, BufferLike, createClient } from "webdav/web"; import { AuthType, BufferLike, createClient } from "webdav";
export type { WebDAVClient } from "webdav/web"; export type { WebDAVClient } from "webdav";
export const DEFAULT_WEBDAV_CONFIG = { export const DEFAULT_WEBDAV_CONFIG = {
address: "", address: "",
@ -234,7 +236,7 @@ export class WrappedWebdavClient {
Depth: "infinity", Depth: "infinity",
}, },
responseType: "text", responseType: "text",
}); } as any);
if (res.status === 403) { if (res.status === 403) {
throw Error("not support Infinity, get 403"); throw Error("not support Infinity, get 403");
} else { } else {
@ -255,7 +257,7 @@ export class WrappedWebdavClient {
Depth: "1", Depth: "1",
}, },
responseType: "text", responseType: "text",
} } as any
); );
testPassed = true; testPassed = true;
this.webdavConfig.depth = "auto_1"; this.webdavConfig.depth = "auto_1";

View File

@ -41,6 +41,12 @@ module.exports = {
test: /\.svg?$/, test: /\.svg?$/,
type: "asset/source", type: "asset/source",
}, },
{
test: /\.m?js$/,
resolve: {
fullySpecified: false, // process/browser returns some errors before
},
},
], ],
}, },
resolve: { resolve: {
@ -55,7 +61,9 @@ module.exports = {
// crypto: false, // crypto: false,
// domain: require.resolve("domain-browser"), // domain: require.resolve("domain-browser"),
// events: require.resolve("events"), // events: require.resolve("events"),
http: false,
// http: require.resolve("stream-http"), // http: require.resolve("stream-http"),
https: false,
// https: require.resolve("https-browserify"), // https: require.resolve("https-browserify"),
net: false, net: false,
// os: require.resolve("os-browserify/browser"), // os: require.resolve("os-browserify/browser"),