Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
f806027542 | |||
ac68467806 | |||
b0152e1fe4 |
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@push.rocks/smartwebdav",
|
||||
"version": "1.1.1",
|
||||
"version": "1.1.2",
|
||||
"private": false,
|
||||
"description": "A TypeScript library for easy interaction with WebDAV servers, including file and directory management.",
|
||||
"main": "dist_ts/index.js",
|
||||
@ -29,12 +29,12 @@
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://code.foss.global/push.rocks/smartwebdav.git"
|
||||
"url": "https://code.foss.global/push.rocks/smartwebdav.git"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://code.foss.global/push.rocks/smartwebdav/issues"
|
||||
},
|
||||
"homepage": "https://code.foss.global/push.rocks/smartwebdav#readme",
|
||||
"homepage": "https://code.foss.global/push.rocks/smartwebdav",
|
||||
"browserslist": [
|
||||
"last 1 chrome versions"
|
||||
],
|
||||
@ -62,4 +62,4 @@
|
||||
"authentication",
|
||||
"secure file transfer"
|
||||
]
|
||||
}
|
||||
}
|
@ -3,6 +3,6 @@
|
||||
*/
|
||||
export const commitinfo = {
|
||||
name: '@push.rocks/smartwebdav',
|
||||
version: '1.1.1',
|
||||
version: '1.1.2',
|
||||
description: 'A TypeScript library for easy interaction with WebDAV servers, including file and directory management.'
|
||||
}
|
||||
|
@ -1,3 +1,4 @@
|
||||
import type { isFile } from '@push.rocks/smartpath/dist_ts/smartpath.check.js';
|
||||
import * as plugins from './plugins.js';
|
||||
|
||||
export interface IWebdavClientOptions {
|
||||
@ -113,9 +114,11 @@ export class WebdavClient {
|
||||
}
|
||||
|
||||
public async deleteFile(pathArg: string, checkNotDirectory = true) {
|
||||
const stat = (await this.wdClient.stat(pathArg)) as plugins.webdav.FileStat;
|
||||
if (checkNotDirectory && stat.type === 'directory') {
|
||||
throw new Error(`Cannot delete a directory using deleteFile method. Use deleteDirectory instead.`);
|
||||
if (!(await this.wdClient.exists(pathArg))) {
|
||||
throw new Error(`Path does not exist`);
|
||||
}
|
||||
if (checkNotDirectory && (await this.isDirecory(pathArg))) {
|
||||
throw new Error(`Path is a directory, not a file`);
|
||||
}
|
||||
await this.wdClient.deleteFile(pathArg);
|
||||
}
|
||||
@ -123,4 +126,14 @@ export class WebdavClient {
|
||||
public async deleteDirectory(pathArg: string) {
|
||||
await this.deleteFile(pathArg, false);
|
||||
}
|
||||
|
||||
public async isFile(pathArg: string) {
|
||||
const stat = (await this.wdClient.stat(pathArg)) as plugins.webdav.FileStat;
|
||||
return stat.type === 'file';
|
||||
}
|
||||
|
||||
public async isDirecory(pathArg: string) {
|
||||
const stat = (await this.wdClient.stat(pathArg)) as plugins.webdav.FileStat;
|
||||
return stat.type === 'directory';
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user