dochub-sdk 0.1.83 → 0.1.85
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/interfaces/constructors.ts +4 -7
- package/interfaces/datalake.ts +13 -1
- package/interfaces/editors.ts +37 -7
- package/interfaces/objects.ts +10 -0
- package/package.json +1 -1
@@ -1,3 +1,5 @@
|
|
1
|
+
import { DocHubEditorContext } from './editors';
|
2
|
+
|
1
3
|
// Компонент конструктора
|
2
4
|
export interface IDocHubConstructorComponent {
|
3
5
|
}
|
@@ -15,11 +17,6 @@ export interface IDocHubConstructorMeta {
|
|
15
17
|
img?: string; // Картинка для пользователя
|
16
18
|
}
|
17
19
|
|
18
|
-
// Параметры передаваемые в конструктор для его первичной инициализации
|
19
|
-
export interface IDocHubConstructorParams {
|
20
|
-
[key: string]: any;
|
21
|
-
}
|
22
|
-
|
23
20
|
// Интерфейс конструкторов
|
24
21
|
export interface IDocHubConstructors {
|
25
22
|
// Регистрирует конструктор
|
@@ -35,7 +32,7 @@ export interface IDocHubConstructors {
|
|
35
32
|
get(uid: string):Promise<IDocHubConstructorItem>;
|
36
33
|
// Вызывает магазин выбора конструкторов по указанному шаблону идентификаторов
|
37
34
|
// pattern - шаблон идентификаторов по которому отбираются конструкторы
|
38
|
-
//
|
39
|
-
showStore(pattern?: RegExp,
|
35
|
+
// context - Контекст который должен учесть конструктор, если он не определен, контекст будет создан автоматически
|
36
|
+
showStore(pattern?: RegExp, context?: DocHubEditorContext);
|
40
37
|
}
|
41
38
|
|
package/interfaces/datalake.ts
CHANGED
@@ -53,6 +53,17 @@ export interface IDocHubFileEditorItem {
|
|
53
53
|
title: string;
|
54
54
|
}
|
55
55
|
|
56
|
+
/**
|
57
|
+
* Описывает контекст открытого на редактирования файла
|
58
|
+
*/
|
59
|
+
export interface IDocHubFileEditorContext {
|
60
|
+
uri?: string; // URI файла открытого на редактирование.
|
61
|
+
// Если не определено берется из параметра openFileEditor
|
62
|
+
contentType: string; // Тип контента файла.
|
63
|
+
// Если не определено берется из данных полученных о файле в процессе открытия.
|
64
|
+
[key: string]: any; // Произвольные ключи и значения
|
65
|
+
}
|
66
|
+
|
56
67
|
// Интерфейс доступа к DataLake
|
57
68
|
export interface IDocHubDataLake {
|
58
69
|
/**
|
@@ -129,9 +140,10 @@ export interface IDocHubDataLake {
|
|
129
140
|
* Запрос на открытие файла на пользовательское редактирование. Не обязательно будет выполнен.
|
130
141
|
* Если редактор уже открыт, активирует его.
|
131
142
|
* @param uri - URI файла
|
143
|
+
* @param context - Контекст редактирования файла. Необходим для связных редакторов и конструкторов.
|
132
144
|
* @returns - Компонент редактора, если открытие оказалось успешным
|
133
145
|
*/
|
134
|
-
openFileEditor(uri: string): Promise<IDocHubFileEditorComponent>;
|
146
|
+
openFileEditor(uri: string, context?: IDocHubFileEditorContext): Promise<IDocHubFileEditorComponent>;
|
135
147
|
|
136
148
|
/**
|
137
149
|
* Запрос на завершение пользовательского редактирования файла. Не обязательно будет выполнен.
|
package/interfaces/editors.ts
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
import { IDocHubFileEditorContext } from './datalake';
|
2
|
+
import { IDocHubObjectEditorContext } from './objects';
|
3
|
+
|
1
4
|
/**
|
2
5
|
* Режим функционирования
|
3
6
|
*/
|
@@ -15,18 +18,45 @@ export enum EditorEvents {
|
|
15
18
|
* События режимов
|
16
19
|
*/
|
17
20
|
modeChanged = '$mode-changed', // Режим портала изменился
|
21
|
+
/**
|
22
|
+
* События контекста редактора
|
23
|
+
*/
|
24
|
+
contextUpdated = '$edit-context-updated', // Контекст претерпел изменения
|
18
25
|
/**
|
19
26
|
* События редактора
|
20
27
|
*/
|
21
|
-
close = '$close',
|
22
|
-
save = '$save',
|
23
|
-
create = '$create',
|
24
|
-
delete = '$delete'
|
28
|
+
close = '$close', // Требует закрыть редактор
|
29
|
+
save = '$save', // Требует произвести сохранение
|
30
|
+
create = '$create', // Требует создать новый объект
|
31
|
+
delete = '$delete' // Требует удалить объект
|
25
32
|
};
|
26
33
|
|
34
|
+
|
35
|
+
/**
|
36
|
+
* Тип редактора
|
37
|
+
*/
|
38
|
+
export enum DocHubEditorType {
|
39
|
+
file = 'file',
|
40
|
+
object = 'object'
|
41
|
+
}
|
42
|
+
|
27
43
|
/**
|
28
|
-
*
|
44
|
+
* Контекст редактора
|
29
45
|
*/
|
30
|
-
export
|
31
|
-
|
46
|
+
export type DocHubEditorFileContext = {
|
47
|
+
type: DocHubEditorType.file,
|
48
|
+
meta: IDocHubFileEditorContext
|
32
49
|
}
|
50
|
+
|
51
|
+
/**
|
52
|
+
* Контекст редактора объекта
|
53
|
+
*/
|
54
|
+
export type DocHubEditorObjectContext = {
|
55
|
+
type: DocHubEditorType.object,
|
56
|
+
meta: IDocHubObjectEditorContext
|
57
|
+
}
|
58
|
+
|
59
|
+
/**
|
60
|
+
* Универсальный контекст редактора
|
61
|
+
*/
|
62
|
+
export type DocHubEditorContext = DocHubEditorFileContext | DocHubEditorObjectContext;
|
package/interfaces/objects.ts
CHANGED
@@ -27,6 +27,16 @@ export interface IDocHubObjectEditorItem {
|
|
27
27
|
title: string;
|
28
28
|
}
|
29
29
|
|
30
|
+
/**
|
31
|
+
* Описывает контекст редактируемого объекта
|
32
|
+
*/
|
33
|
+
export interface IDocHubObjectEditorContext {
|
34
|
+
path?: string; // Путь к объекту в Data Lake
|
35
|
+
// Если не определено берется из параметра openObjectEditor
|
36
|
+
[key: string]: any; // Произвольные ключи и значения
|
37
|
+
}
|
38
|
+
|
39
|
+
|
30
40
|
// Интерфейс доступа к задекларированным объектам в DataLake
|
31
41
|
export interface IDocHubObjects {
|
32
42
|
/**
|