---
title: "DataProvider"
---
# DataProvider

Defined in: [src/modules/file-browser/data-provider.ts:56](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L56)

## Implements

- [`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html)

### Constructor

**new DataProvider**(`parent`, `options`): `DataProvider`

Defined in: [src/modules/file-browser/data-provider.ts:59](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L59)

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `parent` | [`IViewBased`](../interfaces/types.IViewBased.html) |
| `options` | [`IFileBrowserOptions`](../interfaces/types.IFileBrowserOptions.html) |

#### Returns

`DataProvider`

### parent

`readonly` **parent**: [`IViewBased`](../interfaces/types.IViewBased.html)

Defined in: [src/modules/file-browser/data-provider.ts:60](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L60)

***

### options

`readonly` **options**: [`IFileBrowserOptions`](../interfaces/types.IFileBrowserOptions.html)

Defined in: [src/modules/file-browser/data-provider.ts:61](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L61)

#### Get Signature

**get** **o**(): `this`\[`"options"`\]

Defined in: [src/modules/file-browser/data-provider.ts:67](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L67)

Alias for options

##### Returns

`this`\[`"options"`\]

### onProgress()

**onProgress**(`callback`): `void`

Defined in: [src/modules/file-browser/data-provider.ts:129](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L129)

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `callback` | (`percentage`) => `void` |

#### Returns

`void`

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`onProgress`](../interfaces/types.IFileBrowserDataProvider.html#onprogress)

***

### permissions()

**permissions**(`path`, `source`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<[`Nullable`](../modules/types.html#nullable)\<[`IPermissions`](../interfaces/types.IPermissions.html)\>\>

Defined in: [src/modules/file-browser/data-provider.ts:137](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L137)

Load permissions for path and source

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `path` | `string` |
| `source` | `string` |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<[`Nullable`](../modules/types.html#nullable)\<[`IPermissions`](../interfaces/types.IPermissions.html)\>\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`permissions`](../interfaces/types.IFileBrowserDataProvider.html#permissions)

***

### canI()

**canI**(`action`): `boolean`

Defined in: [src/modules/file-browser/data-provider.ts:186](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L186)

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `action` | `string` |

#### Returns

`boolean`

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`canI`](../interfaces/types.IFileBrowserDataProvider.html#cani)

***

### items()

**items**(`path`, `source`, `mods?`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<[`IFileBrowserItem`](../modules/types.html#ifilebrowseritem)[]\>

Defined in: [src/modules/file-browser/data-provider.ts:243](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L243)

Load items list by path and source

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `path` | `string` |
| `source` | `string` |
| `mods` | [`IFileBrowserDataProviderItemsMods`](../interfaces/types.IFileBrowserDataProviderItemsMods.html) |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<[`IFileBrowserItem`](../modules/types.html#ifilebrowseritem)[]\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`items`](../interfaces/types.IFileBrowserDataProvider.html#items)

***

### itemsEx()

**itemsEx**(`path`, `source`, `mods?`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<\{ `items`: [`IFileBrowserItem`](../modules/types.html#ifilebrowseritem)[]; `loadedTotal`: `number`; \}\>

Defined in: [src/modules/file-browser/data-provider.ts:257](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L257)

Load items list by path and source

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `path` | `string` |
| `source` | `string` |
| `mods` | [`IFileBrowserDataProviderItemsMods`](../interfaces/types.IFileBrowserDataProviderItemsMods.html) |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<\{ `items`: [`IFileBrowserItem`](../modules/types.html#ifilebrowseritem)[]; `loadedTotal`: `number`; \}\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`itemsEx`](../interfaces/types.IFileBrowserDataProvider.html#itemsex)

***

### tree()

**tree**(`path`, `source`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<[`ISourcesFiles`](../modules/types.html#isourcesfiles)\>

Defined in: [src/modules/file-browser/data-provider.ts:313](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L313)

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `path` | `string` |
| `source` | `string` |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<[`ISourcesFiles`](../modules/types.html#isourcesfiles)\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`tree`](../interfaces/types.IFileBrowserDataProvider.html#tree)

***

### getPathByUrl()

**getPathByUrl**(`url`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`any`\>

Defined in: [src/modules/file-browser/data-provider.ts:346](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L346)

Get path by url. You can use this method in another modules

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `url` | `string` |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`any`\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`getPathByUrl`](../interfaces/types.IFileBrowserDataProvider.html#getpathbyurl)

***

### createFolder()

**createFolder**(`name`, `path`, `source`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`boolean`\>

Defined in: [src/modules/file-browser/data-provider.ts:366](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L366)

Create a directory on the server

#### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `name` | `string` | Name the new folder |
| `path` | `string` | Relative directory in which you want create a folder |
| `source` | `string` | Server source key |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`boolean`\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`createFolder`](../interfaces/types.IFileBrowserDataProvider.html#createfolder)

***

### move()

**move**(`filepath`, `path`, `source`, `isFile`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`boolean`\>

Defined in: [src/modules/file-browser/data-provider.ts:393](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L393)

Move a file / directory on the server

#### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `filepath` | `string` | The relative path to the file / folder source |
| `path` | `string` | Relative to the directory where you want to move the file / folder |
| `source` | `string` | - |
| `isFile` | `boolean` | - |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`boolean`\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`move`](../interfaces/types.IFileBrowserDataProvider.html#move)

***

### fileRemove()

**fileRemove**(`path`, `file`, `source`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`string`\>

Defined in: [src/modules/file-browser/data-provider.ts:462](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L462)

Deleting a file

#### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `path` | `string` | Relative path |
| `file` | `string` | The filename |
| `source` | `string` | Source |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`string`\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`fileRemove`](../interfaces/types.IFileBrowserDataProvider.html#fileremove)

***

### folderRemove()

**folderRemove**(`path`, `file`, `source`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`string`\>

Defined in: [src/modules/file-browser/data-provider.ts:474](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L474)

Deleting a folder

#### Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `path` | `string` | Relative path |
| `file` | `string` | The filename |
| `source` | `string` | Source |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`string`\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`folderRemove`](../interfaces/types.IFileBrowserDataProvider.html#folderremove)

***

### folderRename()

**folderRename**(`path`, `name`, `newname`, `source`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`string`\>

Defined in: [src/modules/file-browser/data-provider.ts:517](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L517)

Rename folder

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `path` | `string` |
| `name` | `string` |
| `newname` | `string` |
| `source` | `string` |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`string`\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`folderRename`](../interfaces/types.IFileBrowserDataProvider.html#folderrename)

***

### fileRename()

**fileRename**(`path`, `name`, `newname`, `source`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`string`\>

Defined in: [src/modules/file-browser/data-provider.ts:530](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L530)

Rename file

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `path` | `string` |
| `name` | `string` |
| `newname` | `string` |
| `source` | `string` |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`string`\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`fileRename`](../interfaces/types.IFileBrowserDataProvider.html#filerename)

***

### crop()

**crop**(`path`, `source`, `name`, `newname`, `box`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`string` \| `boolean`\>

Defined in: [src/modules/file-browser/data-provider.ts:580](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L580)

Send command to server to crop image

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `path` | `string` |
| `source` | `string` |
| `name` | `string` |
| `newname` | `string` \| `void` |
| `box` | `void` \| [`ImageBox`](../interfaces/types.ImageBox.html) |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`string` \| `boolean`\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`crop`](../interfaces/types.IFileBrowserDataProvider.html#crop)

***

### resize()

**resize**(`path`, `source`, `name`, `newname`, `box`): [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`string` \| `boolean`\>

Defined in: [src/modules/file-browser/data-provider.ts:594](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L594)

Send command to server to resize image

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `path` | `string` |
| `source` | `string` |
| `name` | `string` |
| `newname` | `string` \| `void` |
| `box` | `void` \| [`ImageBox`](../interfaces/types.ImageBox.html) |

#### Returns

[`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`string` \| `boolean`\>

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`resize`](../interfaces/types.IFileBrowserDataProvider.html#resize)

***

### getMessage()

**getMessage**(`resp`): `string`

Defined in: [src/modules/file-browser/data-provider.ts:605](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L605)

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `resp` | [`IFileBrowserAnswer`](../interfaces/types.IFileBrowserAnswer.html) |

#### Returns

`string`

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`getMessage`](../interfaces/types.IFileBrowserDataProvider.html#getmessage)

***

### isSuccess()

**isSuccess**(`resp`): `boolean`

Defined in: [src/modules/file-browser/data-provider.ts:610](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L610)

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `resp` | [`IFileBrowserAnswer`](../interfaces/types.IFileBrowserAnswer.html) |

#### Returns

`boolean`

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`isSuccess`](../interfaces/types.IFileBrowserDataProvider.html#issuccess)

***

### destruct()

**destruct**(): `any`

Defined in: [src/modules/file-browser/data-provider.ts:615](https://github.com/xdan/jodit/blob/main/src/modules/file-browser/data-provider.ts#L615)

#### Returns

`any`

#### Implementation of

[`IFileBrowserDataProvider`](../interfaces/types.IFileBrowserDataProvider.html).[`destruct`](../interfaces/types.IFileBrowserDataProvider.html#destruct)
