dochub-sdk 0.1.163 → 0.1.165

Sign up to get free protection for your applications and to get access to all the features.
@@ -6,6 +6,16 @@ import type { IDocHubEditableComponent, IDocHubPresentationProfile, IDocHubPrese
6
6
  import ajv from 'ajv';
7
7
  import ajv_localize from 'ajv-i18n/localize/ru';
8
8
 
9
+ /**
10
+ * Тип в источнике данных
11
+ */
12
+ export enum DocumentSourceType {
13
+ data = 'data', // Объект данных не требующий обработки
14
+ jsonata = 'jsonata', // JSONata запрос
15
+ dataFile = 'data-file', // Ссылка на файл с данными
16
+ jsonataFile = 'jsonata-file' // Ссылка на файл с запросом jsonata
17
+ };
18
+
9
19
  @Component
10
20
  export class DocHubDocumentProto extends Vue implements IDocHubEditableComponent {
11
21
  onRefresher: any = null; // Таймер отложенного выполнения обновления
@@ -81,6 +91,14 @@ export class DocHubDocumentProto extends Vue implements IDocHubEditableComponent
81
91
  */
82
92
  getSchemaData(): any {}
83
93
 
94
+ /**
95
+ * Определяет тип данных
96
+ * @param source
97
+ */
98
+ getSourceType(source: any) {
99
+
100
+ }
101
+
84
102
  /**
85
103
  * Для переопределения
86
104
  */
package/index.ts CHANGED
@@ -19,6 +19,8 @@ export * from './interfaces/ui';
19
19
  export * from './interfaces/tools';
20
20
  export * from './interfaces/lang';
21
21
 
22
+ export * from './interfaces/datasets';
23
+
22
24
  export * from './schemas/basetypes';
23
25
  export * from './schemas/dochub-yaml';
24
26
 
@@ -1,5 +1,6 @@
1
- import { AxiosResponse } from "axios";
2
- import { IProtocolResponseOptions } from "./protocols";
1
+ import { AxiosResponse } from 'axios';
2
+ import { IProtocolResponseOptions } from './protocols';
3
+ import { IDocHubDataSetProfile } from './datasets';
3
4
 
4
5
  export enum DataLakeChange {
5
6
  update = 'update', // Обновление данных по указанному пути
@@ -194,12 +195,18 @@ export type DocHubDataLakeRequest = string;
194
195
  export interface IDataLakePullFileOptions extends IProtocolResponseOptions {
195
196
  }
196
197
 
197
-
198
198
  /**
199
199
  * Обработчик событий изменения файла
200
200
  */
201
201
  export type DocHubDataLakeFileFollower = () => void;
202
202
 
203
+ /**
204
+ * Дополнительные параметры разрешения профиля набора данных
205
+ */
206
+ export interface IDataSetResolveOptions {
207
+ baseURI?: string; // Базовый URI от которого будут разрешаться все относительные пути на файлы
208
+ params?: IDocHubPullDataParams; // Передаваемые параметры
209
+ }
203
210
 
204
211
  // Интерфейс доступа к DataLake
205
212
  export interface IDocHubDataLake {
@@ -288,6 +295,14 @@ export interface IDocHubDataLake {
288
295
  */
289
296
  pullData(expression: DocHubDataLakeRequest, params?: IDocHubPullDataParams, context?: any): Promise<any>;
290
297
 
298
+ /**
299
+ * Реализует профиль набора данных (выполняет профиль)
300
+ * @param profile - Профиль набора данных
301
+ * @param options - Параметры реализации профиля
302
+ * @returns - Результат реализации профиля (результат выполненных запросов)
303
+ */
304
+ resolveDataSetProfile(profile: IDocHubDataSetProfile, options?: IDataSetResolveOptions): Promise<any>;
305
+
291
306
  /**
292
307
  * Сохраняет файла в DataLake
293
308
  * @param uri - URI файла во внутреннем формате DocHub
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Идентификатор источника данных
3
+ */
4
+ export type DocHubDataSetID = string;
5
+ /**
6
+ * Данные не требующие обработку
7
+ */
8
+ export type DocHubDataSetData = object;
9
+ /**
10
+ * JSONata запрос
11
+ */
12
+ export type DocHubJSONataQuery = `(${string})` | `jsonata(${string})`;
13
+ /**
14
+ * Ссылка на JSONata файл
15
+ */
16
+ export type DocHubJSONataFile = `${string}.jsonata`;
17
+ /**
18
+ * Ссылка на файл данных
19
+ */
20
+ export type DocHubDataFileFile = string;
21
+ /**
22
+ * Тип поля source описывающий возможные источники данных
23
+ */
24
+ export type DocHubDataSetProfileSource = DocHubDataSetID | DocHubJSONataQuery | DocHubJSONataFile | DocHubDataFileFile | DocHubDataSetData;
25
+ /**
26
+ * Набор источников для поля origin
27
+ */
28
+ export interface DocHubDataSetProfileOriginSet {
29
+ [key: string]: DocHubDataSetProfileSource
30
+ }
31
+ /**
32
+ * Тип поля origin для источника данных
33
+ */
34
+ export type DocHubDataSetProfileOrigin = DocHubDataSetProfileSource | DocHubDataSetProfileOriginSet;
35
+
36
+ /**
37
+ * Интерфейс стандартизирующий источник данных
38
+ */
39
+ export interface IDocHubDataSetProfile {
40
+ origin?: DocHubDataSetProfileOrigin;
41
+ source: DocHubDataSetProfileSource;
42
+ }
43
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dochub-sdk",
3
- "version": "0.1.163",
3
+ "version": "0.1.165",
4
4
  "description": "The DocHub System Development Kit.",
5
5
  "private": false,
6
6
  "main": "index.ts",