-
-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
9 changed files
with
225 additions
and
11 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,159 @@ | ||
<!-- Generated by documentation.js. Update this documentation by updating the source code. --> | ||
|
||
## DataSources | ||
|
||
This module manages data sources within the editor. | ||
You can initialize the module with the editor by passing an instance of `EditorModel`. | ||
|
||
```js | ||
const editor = new EditorModel(); | ||
const dsm = new DataSourceManager(editor); | ||
``` | ||
|
||
Once the editor is instantiated, you can use the following API to manage data sources: | ||
|
||
```js | ||
const dsm = editor.DataSources; | ||
``` | ||
|
||
* [add][1] - Add a new data source. | ||
* [get][2] - Retrieve a data source by its ID. | ||
* [getAll][3] - Retrieve all data sources. | ||
* [remove][4] - Remove a data source by its ID. | ||
* [clear][5] - Remove all data sources. | ||
|
||
Example of adding a data source: | ||
|
||
```js | ||
const ds = dsm.add({ | ||
id: 'my_data_source_id', | ||
records: [ | ||
{ id: 'id1', name: 'value1' }, | ||
{ id: 'id2', name: 'value2' } | ||
] | ||
}); | ||
``` | ||
|
||
### Parameters | ||
|
||
* `em` **EditorModel** Editor model. | ||
|
||
## add | ||
|
||
Add new data source. | ||
|
||
### Parameters | ||
|
||
* `props` **[Object][6]** Data source properties. | ||
* `opts` **AddOptions** (optional, default `{}`) | ||
|
||
### Examples | ||
|
||
```javascript | ||
const ds = dsm.add({ | ||
id: 'my_data_source_id', | ||
records: [ | ||
{ id: 'id1', name: 'value1' }, | ||
{ id: 'id2', name: 'value2' } | ||
] | ||
}); | ||
``` | ||
|
||
Returns **[DataSource]** Added data source. | ||
|
||
## get | ||
|
||
Get data source. | ||
|
||
### Parameters | ||
|
||
* `id` **[String][7]** Data source id. | ||
|
||
### Examples | ||
|
||
```javascript | ||
const ds = dsm.get('my_data_source_id'); | ||
``` | ||
|
||
Returns **[DataSource]** Data source. | ||
|
||
## getValue | ||
|
||
Get value from data sources by key | ||
|
||
### Parameters | ||
|
||
* `key` **[String][7]** Path to value. | ||
* `defValue` **any**  | ||
|
||
Returns **any** const value = dsm.getValue('ds\_id.record\_id.propName', 'defaultValue'); | ||
|
||
## remove | ||
|
||
Remove data source. | ||
|
||
### Parameters | ||
|
||
* `id` **([String][7] | [DataSource])** Id of the data source. | ||
* `opts` **RemoveOptions?**  | ||
|
||
### Examples | ||
|
||
```javascript | ||
const removed = dsm.remove('DS_ID'); | ||
``` | ||
|
||
Returns **[DataSource]** Removed data source. | ||
|
||
## fromPath | ||
|
||
Retrieve a data source, data record, and optional property path based on a string path. | ||
This method parses a string path to identify and retrieve the corresponding data source | ||
and data record. If a property path is included in the input, it will also be returned. | ||
The method is useful for accessing nested data within data sources. | ||
|
||
### Parameters | ||
|
||
* `path` **[String][7]** The string path in the format 'dataSourceId.recordId.property'. | ||
|
||
### Examples | ||
|
||
```javascript | ||
const [dataSource, dataRecord, propPath] = dsm.fromPath('my_data_source_id.record_id.myProp'); | ||
// e.g., [DataSource, DataRecord, 'myProp'] | ||
``` | ||
|
||
Returns **[DataSource?, DataRecord?, [String][7]?]** An array containing the data source, | ||
data record, and optional property path. | ||
|
||
## store | ||
|
||
Store data sources to a JSON object. | ||
|
||
Returns **[Array][8]** Stored data sources. | ||
|
||
## load | ||
|
||
Load data sources from a JSON object. | ||
|
||
### Parameters | ||
|
||
* `data` **[Object][6]** The data object containing data sources. | ||
|
||
Returns **[Object][6]** Loaded data sources. | ||
|
||
[1]: #add | ||
|
||
[2]: #get | ||
|
||
[3]: #getall | ||
|
||
[4]: #remove | ||
|
||
[5]: #clear | ||
|
||
[6]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object | ||
|
||
[7]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String | ||
|
||
[8]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,6 +4,7 @@ | |
"packageManager": "[email protected]", | ||
"scripts": { | ||
"start": "pnpm --filter grapesjs start", | ||
"start:docs": "pnpm --filter @grapesjs/docs docs", | ||
"test": "pnpm -r run test", | ||
"docs": "pnpm --filter @grapesjs/docs docs", | ||
"docs:api": "pnpm --filter @grapesjs/docs docs:api", | ||
|
@@ -20,7 +21,9 @@ | |
"publish:core:rc": "cd packages/core && npm publish --tag rc --access public", | ||
"publish:core:latest": "cd packages/core && npm publish --access public", | ||
"build:core": "pnpm --filter grapesjs build", | ||
"build:cli": "pnpm --filter grapesjs-cli build" | ||
"build:cli": "pnpm --filter grapesjs-cli build", | ||
"build:docs:api": "pnpm --filter @grapesjs/docs docs:api", | ||
"build:docs": "pnpm --filter @grapesjs/docs build" | ||
}, | ||
"devDependencies": { | ||
"@babel/cli": "7.24.8", | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters