@aiao/rxdb 0.0.2 → 0.0.4
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/LICENSE +21 -0
- package/{RxDB.d.ts → dist/RxDB.d.ts} +39 -11
- package/dist/RxDB.d.ts.map +1 -0
- package/{RxDBError.d.ts → dist/RxDBError.d.ts} +2 -0
- package/dist/RxDBError.d.ts.map +1 -0
- package/{entity → dist/entity}/@Entity.d.ts +4 -9
- package/dist/entity/@Entity.d.ts.map +1 -0
- package/{entity → dist/entity}/@TreeEntity.d.ts +5 -4
- package/dist/entity/@TreeEntity.d.ts.map +1 -0
- package/{entity → dist/entity}/EntityBase.d.ts +4 -1
- package/dist/entity/EntityBase.d.ts.map +1 -0
- package/{entity → dist/entity}/EntityManager.d.ts +33 -9
- package/dist/entity/EntityManager.d.ts.map +1 -0
- package/{entity → dist/entity}/EntityStatus.d.ts +26 -19
- package/dist/entity/EntityStatus.d.ts.map +1 -0
- package/dist/entity/TreeEntityBase.d.ts +15 -0
- package/dist/entity/TreeEntityBase.d.ts.map +1 -0
- package/{entity → dist/entity}/entity-metadata-options.interface.d.ts +67 -72
- package/dist/entity/entity-metadata-options.interface.d.ts.map +1 -0
- package/{entity → dist/entity}/entity-metadata.interface.d.ts +5 -14
- package/dist/entity/entity-metadata.interface.d.ts.map +1 -0
- package/{entity → dist/entity}/entity.interface.d.ts +10 -1
- package/dist/entity/entity.interface.d.ts.map +1 -0
- package/{entity → dist/entity}/entity.utils.d.ts +9 -2
- package/dist/entity/entity.utils.d.ts.map +1 -0
- package/{entity → dist/entity}/entity_proxy_helper.d.ts +3 -2
- package/dist/entity/entity_proxy_helper.d.ts.map +1 -0
- package/{entity → dist/entity}/entity_relation_helper.d.ts +4 -3
- package/dist/entity/entity_relation_helper.d.ts.map +1 -0
- package/{entity → dist/entity}/generate_many_to_many_entity.d.ts +5 -4
- package/dist/entity/generate_many_to_many_entity.d.ts.map +1 -0
- package/{entity → dist/entity}/transition-metadata.d.ts +6 -5
- package/dist/entity/transition-metadata.d.ts.map +1 -0
- package/dist/index.d.ts +38 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3386 -0
- package/{repository → dist/repository}/Repository.d.ts +14 -20
- package/dist/repository/Repository.d.ts.map +1 -0
- package/{repository → dist/repository}/RepositoryBase.d.ts +6 -5
- package/dist/repository/RepositoryBase.d.ts.map +1 -0
- package/dist/repository/TreeRepository.d.ts +29 -0
- package/dist/repository/TreeRepository.d.ts.map +1 -0
- package/dist/repository/query-options.interface.d.ts +47 -0
- package/dist/repository/query-options.interface.d.ts.map +1 -0
- package/{repository → dist/repository}/query.interface.d.ts +18 -10
- package/dist/repository/query.interface.d.ts.map +1 -0
- package/dist/repository/query.utils.d.ts +27 -0
- package/dist/repository/query.utils.d.ts.map +1 -0
- package/dist/repository/relation-query.interface.d.ts +63 -0
- package/dist/repository/relation-query.interface.d.ts.map +1 -0
- package/{repository → dist/repository}/repository.interface.d.ts +9 -18
- package/dist/repository/repository.interface.d.ts.map +1 -0
- package/dist/repository/tree-repository.interface.d.ts +66 -0
- package/dist/repository/tree-repository.interface.d.ts.map +1 -0
- package/{rxdb-adapter.d.ts → dist/rxdb-adapter.d.ts} +30 -6
- package/dist/rxdb-adapter.d.ts.map +1 -0
- package/{rxdb-events.d.ts → dist/rxdb-events.d.ts} +9 -82
- package/dist/rxdb-events.d.ts.map +1 -0
- package/{rxdb-plugin.d.ts → dist/rxdb-plugin.d.ts} +2 -1
- package/dist/rxdb-plugin.d.ts.map +1 -0
- package/{rxdb-utils.d.ts → dist/rxdb-utils.d.ts} +15 -3
- package/dist/rxdb-utils.d.ts.map +1 -0
- package/{rxdb.interface.d.ts → dist/rxdb.interface.d.ts} +3 -10
- package/dist/rxdb.interface.d.ts.map +1 -0
- package/{rxdb.private.d.ts → dist/rxdb.private.d.ts} +14 -14
- package/dist/rxdb.private.d.ts.map +1 -0
- package/{schema → dist/schema}/SchemaManager.d.ts +8 -4
- package/dist/schema/SchemaManager.d.ts.map +1 -0
- package/dist/system/VersionManager.d.ts +35 -0
- package/dist/system/VersionManager.d.ts.map +1 -0
- package/dist/system/branch.d.ts +17 -0
- package/dist/system/branch.d.ts.map +1 -0
- package/dist/system/change.d.ts +78 -0
- package/dist/system/change.d.ts.map +1 -0
- package/dist/system/migration.d.ts +27 -0
- package/dist/system/migration.d.ts.map +1 -0
- package/dist/system/types.d.ts +335 -0
- package/dist/system/types.d.ts.map +1 -0
- package/package.json +26 -12
- package/entity/TreeEntityBase.d.ts +0 -7
- package/index.d.ts +0 -26
- package/index.js +0 -1779
- package/repository/TreeRepository.d.ts +0 -28
- package/repository/query-options.interface.d.ts +0 -53
- package/repository/query.utils.d.ts +0 -19
- package/repository/tree-query-options.interface.d.ts +0 -9
- package/repository/tree-repository.interface.d.ts +0 -26
- package/system/change.d.ts +0 -13
- package/system/migration.d.ts +0 -9
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { BehaviorSubject, Observable } from 'rxjs';
|
|
2
|
-
import { SyncOptions } from '../entity/entity-metadata-options.interface';
|
|
3
|
-
import { EntityType } from '../entity/entity.interface';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { CountOptions, FindAllOptions,
|
|
7
|
-
import {
|
|
8
|
-
import { IRepository } from './repository.interface';
|
|
2
|
+
import { SyncOptions } from '../entity/entity-metadata-options.interface.js';
|
|
3
|
+
import { EntityStaticType, EntityType } from '../entity/entity.interface.js';
|
|
4
|
+
import { IRxDBAdapter, RxDBAdapterLocalBase, RxDBAdapterRemoteBase } from '../rxdb-adapter.js';
|
|
5
|
+
import { RxDB } from '../RxDB.js';
|
|
6
|
+
import { CountOptions, FindAllOptions, FindOneOptions, FindOneOrFailOptions, FindOptions } from './query-options.interface.js';
|
|
7
|
+
import { IRepository } from './repository.interface.js';
|
|
9
8
|
/**
|
|
10
9
|
* 实体仓库
|
|
11
10
|
* 根据配置决策实体的具体操作
|
|
@@ -42,48 +41,42 @@ export declare class Repository<T extends EntityType, RT extends IRepository<T>
|
|
|
42
41
|
* @param id
|
|
43
42
|
* @param options
|
|
44
43
|
*/
|
|
45
|
-
get(id:
|
|
44
|
+
get(id: EntityStaticType<T, 'idType'>): Observable<InstanceType<T>>;
|
|
46
45
|
/**
|
|
47
46
|
* 查找一个实体
|
|
48
47
|
* @param where
|
|
49
48
|
* @param options
|
|
50
49
|
*/
|
|
51
|
-
findOne(
|
|
50
|
+
findOne(options: FindOneOptions<T>): Observable<InstanceType<T> | undefined>;
|
|
52
51
|
/**
|
|
53
52
|
* 查找一个实体,查不到就抛出错误
|
|
54
53
|
* @param where
|
|
55
54
|
* @param options
|
|
56
55
|
*/
|
|
57
|
-
findOneOrFail(
|
|
56
|
+
findOneOrFail(options: FindOneOrFailOptions<T>): Observable<InstanceType<T>>;
|
|
58
57
|
/**
|
|
59
58
|
* 查询多个实体
|
|
60
59
|
* @param where
|
|
61
60
|
* @param options
|
|
62
61
|
*/
|
|
63
|
-
find(
|
|
62
|
+
find(options: FindOptions<T>): Observable<InstanceType<T>[]>;
|
|
64
63
|
/**
|
|
65
64
|
* 查询所有实体
|
|
66
65
|
* @param where
|
|
67
66
|
* @param options
|
|
68
67
|
*/
|
|
69
|
-
findAll(
|
|
70
|
-
/**
|
|
71
|
-
* 通过指针查询实体
|
|
72
|
-
* @param where
|
|
73
|
-
* @param options
|
|
74
|
-
*/
|
|
75
|
-
findByCursor(where: RuleGroup<InstanceType<T>>, options?: FindByCursorOptions): Observable<InstanceType<T>[]>;
|
|
68
|
+
findAll(options: FindAllOptions<T>): Observable<InstanceType<T>[]>;
|
|
76
69
|
/**
|
|
77
70
|
* 查询实体数量
|
|
78
71
|
* @param where
|
|
79
72
|
* @param options
|
|
80
73
|
*/
|
|
81
|
-
count(
|
|
74
|
+
count(options: CountOptions<T>): Observable<number>;
|
|
82
75
|
/**
|
|
83
76
|
* 事务保存
|
|
84
77
|
* @param entities 需要保存的实体
|
|
85
78
|
*/
|
|
86
|
-
|
|
79
|
+
saveMany(entities: InstanceType<T>[]): Promise<InstanceType<T>[]>;
|
|
87
80
|
/**
|
|
88
81
|
* 创建实体
|
|
89
82
|
* @param entity
|
|
@@ -106,3 +99,4 @@ export declare class Repository<T extends EntityType, RT extends IRepository<T>
|
|
|
106
99
|
protected _setLocalEntityStatus: (entity: InstanceType<T>) => boolean;
|
|
107
100
|
protected _setLocalEntitiesStatus: (entities: InstanceType<T>[]) => void;
|
|
108
101
|
}
|
|
102
|
+
//# sourceMappingURL=Repository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Repository.d.ts","sourceRoot":"","sources":["../../src/repository/Repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { RxDB } from '../RxDB';
|
|
1
|
+
import { EntityStaticType, EntityType } from '../entity/entity.interface.js';
|
|
2
|
+
import { RxDB } from '../RxDB.js';
|
|
3
3
|
/**
|
|
4
4
|
* 数据仓库
|
|
5
5
|
* 用来协调数据存取
|
|
@@ -13,20 +13,21 @@ export declare abstract class RepositoryBase<T extends EntityType> {
|
|
|
13
13
|
* @param data 实体数据
|
|
14
14
|
*/
|
|
15
15
|
createEntityRef(data: Partial<InstanceType<T>> & {
|
|
16
|
-
id:
|
|
16
|
+
id: EntityStaticType<T, 'idType'>;
|
|
17
17
|
}): any;
|
|
18
18
|
/**
|
|
19
19
|
* 获取实体实例
|
|
20
20
|
* @param id 实体的 ID
|
|
21
21
|
*/
|
|
22
|
-
getEntityRef(id:
|
|
22
|
+
getEntityRef(id: EntityStaticType<T, 'idType'>): InstanceType<T> | undefined;
|
|
23
23
|
/**
|
|
24
24
|
* 获取实体实例
|
|
25
25
|
* @param id 实体的 ID
|
|
26
26
|
*/
|
|
27
|
-
hasEntityRef(id:
|
|
27
|
+
hasEntityRef(id: EntityStaticType<T, 'idType'>): boolean;
|
|
28
28
|
/**
|
|
29
29
|
* 更新实体
|
|
30
30
|
*/
|
|
31
31
|
updateEntity(entity: InstanceType<T>, newValue: Partial<InstanceType<T>>): void;
|
|
32
32
|
}
|
|
33
|
+
//# sourceMappingURL=RepositoryBase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RepositoryBase.d.ts","sourceRoot":"","sources":["../../src/repository/RepositoryBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE7E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAGvC;;;GAGG;AACH,8BAAsB,cAAc,CAAC,CAAC,SAAS,UAAU;IAErD,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI;IAC7B,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;gBADd,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,CAAC;IAGnC;;;OAGG;IACH,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG;QAAE,EAAE,EAAE,gBAAgB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;KAAE;IAItF;;;OAGG;IACH,YAAY,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS;IAI5E;;;OAGG;IACH,YAAY,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,OAAO;IAIxD;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;CAOzE"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { EntityType } from '../entity/entity.interface.js';
|
|
3
|
+
import { Repository } from './Repository.js';
|
|
4
|
+
import { FindTreeOptions, FindTreeRootOptions, ITreeRepository } from './tree-repository.interface.js';
|
|
5
|
+
/**
|
|
6
|
+
* 树结构实体仓库
|
|
7
|
+
* 根据配置决策实体的具体操作
|
|
8
|
+
*/
|
|
9
|
+
export declare class TreeRepository<T extends EntityType, RepositoryType extends ITreeRepository<T> = ITreeRepository<T>> extends Repository<T, RepositoryType> implements ITreeRepository<T> {
|
|
10
|
+
findRoot(options?: FindTreeRootOptions<T>): Observable<InstanceType<T>[]>;
|
|
11
|
+
countRoot(options?: FindTreeRootOptions<T>): Observable<number>;
|
|
12
|
+
/**
|
|
13
|
+
* 查询子孙
|
|
14
|
+
*/
|
|
15
|
+
findDescendants(options: FindTreeOptions<T>): Observable<InstanceType<T>[]>;
|
|
16
|
+
/**
|
|
17
|
+
* 查询子孙数量
|
|
18
|
+
*/
|
|
19
|
+
countDescendants(options: FindTreeOptions<T>): Observable<number>;
|
|
20
|
+
/**
|
|
21
|
+
* 查询祖先
|
|
22
|
+
*/
|
|
23
|
+
findAncestors(options: FindTreeOptions<T>): Observable<InstanceType<T>[]>;
|
|
24
|
+
/**
|
|
25
|
+
* 查询祖先数量
|
|
26
|
+
*/
|
|
27
|
+
countAncestors(options: FindTreeOptions<T>): Observable<number>;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=TreeRepository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TreeRepository.d.ts","sourceRoot":"","sources":["../../src/repository/TreeRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAkB,MAAM,MAAM,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEvG;;;GAGG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,UAAU,EAAE,cAAc,SAAS,eAAe,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAC9G,SAAQ,UAAU,CAAC,CAAC,EAAE,cAAc,CACpC,YAAW,eAAe,CAAC,CAAC,CAAC;IAE7B,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IAOzE,SAAS,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC;IAI/D;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IAO3E;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC;IAIjE;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IAOzE;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC;CAGhE"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { EntityType } from '../entity/entity.interface.js';
|
|
2
|
+
import { RuleGroup } from './query.interface.js';
|
|
3
|
+
/**
|
|
4
|
+
* 排序
|
|
5
|
+
*/
|
|
6
|
+
export interface OrderBy<FieldType extends string = string> {
|
|
7
|
+
field: FieldType;
|
|
8
|
+
sort: 'asc' | 'desc';
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* FindOne 查询选项
|
|
12
|
+
*/
|
|
13
|
+
export interface FindOneOptions<T extends EntityType = any, WhereType = RuleGroup<InstanceType<T>>, OrderByFieldType extends string = string> {
|
|
14
|
+
where: WhereType;
|
|
15
|
+
orderBy?: OrderBy<OrderByFieldType>[];
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* FindOneOrFail 查询选项
|
|
19
|
+
*/
|
|
20
|
+
export interface FindOneOrFailOptions<T extends EntityType = any, WhereType = RuleGroup<InstanceType<T>>, OrderByFieldType extends string = string> {
|
|
21
|
+
where: WhereType;
|
|
22
|
+
orderBy?: OrderBy<OrderByFieldType>[];
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Find 查询选项
|
|
26
|
+
*/
|
|
27
|
+
export interface FindOptions<T extends EntityType = any, WhereType = RuleGroup<InstanceType<T>>, OrderByFieldType extends string = string> {
|
|
28
|
+
where: WhereType;
|
|
29
|
+
orderBy?: OrderBy<OrderByFieldType>[];
|
|
30
|
+
limit?: number;
|
|
31
|
+
offset?: number;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* FindAll 查询选项
|
|
35
|
+
*/
|
|
36
|
+
export interface FindAllOptions<T extends EntityType = any, WhereType = RuleGroup<InstanceType<T>>, OrderByFieldType extends string = string> {
|
|
37
|
+
where: WhereType;
|
|
38
|
+
orderBy?: OrderBy<OrderByFieldType>[];
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Count 查询选项
|
|
42
|
+
*/
|
|
43
|
+
export interface CountOptions<T extends EntityType = any, WhereType = RuleGroup<InstanceType<T>>> {
|
|
44
|
+
where: WhereType;
|
|
45
|
+
groupBy?: string[];
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=query-options.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-options.interface.d.ts","sourceRoot":"","sources":["../../src/repository/query-options.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD;;GAEG;AACH,MAAM,WAAW,OAAO,CAAC,SAAS,SAAS,MAAM,GAAG,MAAM;IACxD,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAC7B,CAAC,SAAS,UAAU,GAAG,GAAG,EAC1B,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EACtC,gBAAgB,SAAS,MAAM,GAAG,MAAM;IAExC,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB,CACnC,CAAC,SAAS,UAAU,GAAG,GAAG,EAC1B,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EACtC,gBAAgB,SAAS,MAAM,GAAG,MAAM;IAExC,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAC1B,CAAC,SAAS,UAAU,GAAG,GAAG,EAC1B,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EACtC,gBAAgB,SAAS,MAAM,GAAG,MAAM;IAExC,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAC7B,CAAC,SAAS,UAAU,GAAG,GAAG,EAC1B,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EACtC,gBAAgB,SAAS,MAAM,GAAG,MAAM;IAExC,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,EAAE,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC9F,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SetNonNullable } from 'type-fest';
|
|
2
|
-
import {
|
|
2
|
+
import { RxDBContext } from '../rxdb.interface.js';
|
|
3
3
|
/**
|
|
4
4
|
* 判断相等
|
|
5
5
|
*/
|
|
@@ -60,10 +60,6 @@ export type BooleanRules<T, K extends keyof T = keyof T, VT = T[K]> = RuleEqualN
|
|
|
60
60
|
* Date
|
|
61
61
|
*/
|
|
62
62
|
export type DateRules<T, K extends keyof T = keyof T, VT = T[K]> = RuleEqualNullable<T, K, VT> | RuleNumberNonNullable<T, K, VT> | RuleIn<T, K, VT> | RuleBetween<T, K, VT>;
|
|
63
|
-
export type OneToOneRules<T, K extends keyof T = keyof T> = RuleEqualNullable<T, K, UUID> | RuleIn<T, K, UUID>;
|
|
64
|
-
export type ManyToOneRules<T, K extends keyof T = keyof T> = RuleEqualNullable<T, K, UUID> | RuleIn<T, K, UUID>;
|
|
65
|
-
export type OneToManyRules<T, K extends keyof T = keyof T> = RuleIn<T, K, UUID>;
|
|
66
|
-
export type ManyToManyRules<T, K extends keyof T = keyof T> = RuleIn<T, K, UUID>;
|
|
67
63
|
/**
|
|
68
64
|
* 查询规则
|
|
69
65
|
*/
|
|
@@ -75,18 +71,30 @@ export interface RuleGroup<T = any, K extends keyof T = keyof T, RT = Rule<T, K,
|
|
|
75
71
|
combinator: 'and' | 'or';
|
|
76
72
|
rules: Array<RuleGroup<T, K, RT> | RT>;
|
|
77
73
|
}
|
|
74
|
+
export interface RuleGroupCustom<T, K, RT> {
|
|
75
|
+
combinator: 'and' | 'or';
|
|
76
|
+
rules: Array<RuleGroupCustom<T, K, RT> | RT>;
|
|
77
|
+
}
|
|
78
78
|
/**
|
|
79
79
|
* 所有操作符
|
|
80
80
|
*/
|
|
81
81
|
export type OperatorName = '=' | '!=' | '<' | '>' | '<=' | '>=' | 'contains' | 'notContain' | 'beginWith' | 'notBeginWith' | 'endWith' | 'notEndWith' | 'null' | 'notNull' | 'in' | 'notIn' | 'between' | 'notBetween';
|
|
82
82
|
/**
|
|
83
|
-
*
|
|
83
|
+
* 查询上下文
|
|
84
84
|
*/
|
|
85
|
-
export type
|
|
85
|
+
export type IQueryContext = RxDBContext;
|
|
86
86
|
/**
|
|
87
|
-
*
|
|
87
|
+
* 操作上下文
|
|
88
88
|
*/
|
|
89
|
-
export interface
|
|
90
|
-
|
|
89
|
+
export interface IMutationContext extends RxDBContext {
|
|
90
|
+
/**
|
|
91
|
+
* 是否返回数据
|
|
92
|
+
*/
|
|
93
|
+
returning?: false;
|
|
94
|
+
/**
|
|
95
|
+
* 自定义更新时间
|
|
96
|
+
*/
|
|
97
|
+
updatedAt?: Date;
|
|
91
98
|
}
|
|
92
99
|
export {};
|
|
100
|
+
//# sourceMappingURL=query.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.interface.d.ts","sourceRoot":"","sources":["../../src/repository/query.interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { EntityType } from '../entity/entity.interface.js';
|
|
2
|
+
import { OrderBy } from './query-options.interface.js';
|
|
3
|
+
import { RuleGroup } from './query.interface.js';
|
|
4
|
+
/**
|
|
5
|
+
* 判断是否是 RuleGroup
|
|
6
|
+
*/
|
|
7
|
+
export declare const isRuleGroup: (value: unknown) => value is RuleGroup<any>;
|
|
8
|
+
/**
|
|
9
|
+
* 判断实体是否匹配规则组
|
|
10
|
+
*/
|
|
11
|
+
export declare const isEntityMatchWhere: <T extends EntityType>(entity: T, ruleGroup: RuleGroup<T>) => boolean;
|
|
12
|
+
/**
|
|
13
|
+
* 判断 entity 是否影响排序后的结果中
|
|
14
|
+
* @param entities 排序后的结果
|
|
15
|
+
* @param entity 需要判断的实体
|
|
16
|
+
* @param orderByArray 排序数组
|
|
17
|
+
* @returns
|
|
18
|
+
*/
|
|
19
|
+
export declare const isEntityEffectOrderBy: <T extends EntityType>(entity: T, result: T[], orderByArray: OrderBy<string>[]) => boolean | undefined;
|
|
20
|
+
/**
|
|
21
|
+
* 计算排序
|
|
22
|
+
* @param result
|
|
23
|
+
* @param orderByArray
|
|
24
|
+
* @returns
|
|
25
|
+
*/
|
|
26
|
+
export declare const calculateOrderBy: <T extends EntityType>(result: T[], orderBy: OrderBy<string>[]) => T[];
|
|
27
|
+
//# sourceMappingURL=query.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.utils.d.ts","sourceRoot":"","sources":["../../src/repository/query.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAQ,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,WAAW,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,SAAS,CAAC,GAAG,CAA2C,CAAC;AAmE/G;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,UAAU,EAAE,QAAQ,CAAC,EAAE,WAAW,SAAS,CAAC,CAAC,CAAC,YACpC,CAAC;AAkCxD;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,GAAI,CAAC,SAAS,UAAU,EACxD,QAAQ,CAAC,EACT,QAAQ,CAAC,EAAE,EACX,cAAc,OAAO,CAAC,MAAM,CAAC,EAAE,wBAgBhC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,OAAO,CAAC,MAAM,CAAC,EAAE,QAQ7F,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { SetNonNullable } from 'type-fest';
|
|
2
|
+
/**
|
|
3
|
+
* 判断相等
|
|
4
|
+
*/
|
|
5
|
+
interface RuleEqualNullable<K, VT> {
|
|
6
|
+
field: K;
|
|
7
|
+
operator: '=' | '!=';
|
|
8
|
+
value: VT;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* 字符串比较
|
|
12
|
+
*/
|
|
13
|
+
interface RuleStringNonNullable<K, VT> {
|
|
14
|
+
field: K;
|
|
15
|
+
operator: '<' | '>' | '<=' | '>=' | 'contains' | 'notContain' | 'beginWith' | 'notBeginWith' | 'endWith' | 'notEndWith';
|
|
16
|
+
value: SetNonNullable<VT>;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* 数值比较
|
|
20
|
+
*/
|
|
21
|
+
interface RuleNumberNonNullable<K, VT> {
|
|
22
|
+
field: K;
|
|
23
|
+
operator: '<' | '>' | '<=' | '>=';
|
|
24
|
+
value: SetNonNullable<VT>;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* in
|
|
28
|
+
*/
|
|
29
|
+
interface RuleIn<K, VT> {
|
|
30
|
+
field: K;
|
|
31
|
+
operator: 'in' | 'notIn';
|
|
32
|
+
value: SetNonNullable<VT>[];
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* between
|
|
36
|
+
*/
|
|
37
|
+
interface RuleBetween<K, VT> {
|
|
38
|
+
field: K;
|
|
39
|
+
operator: 'between' | 'notBetween';
|
|
40
|
+
value: [SetNonNullable<VT>, SetNonNullable<VT>];
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* UUID
|
|
44
|
+
*/
|
|
45
|
+
export type RelationUUIDRules<K, VT> = RuleEqualNullable<K, VT> | RuleIn<K, VT>;
|
|
46
|
+
/**
|
|
47
|
+
* string
|
|
48
|
+
*/
|
|
49
|
+
export type RelationStringRules<K, VT> = RuleEqualNullable<K, VT> | RuleStringNonNullable<K, VT> | RuleIn<K, VT> | RuleBetween<K, VT>;
|
|
50
|
+
/**
|
|
51
|
+
* number
|
|
52
|
+
*/
|
|
53
|
+
export type RelationNumberRules<K, VT> = RuleEqualNullable<K, VT> | RuleNumberNonNullable<K, VT> | RuleIn<K, VT> | RuleBetween<K, VT>;
|
|
54
|
+
/**
|
|
55
|
+
* Boolean
|
|
56
|
+
*/
|
|
57
|
+
export type RelationBooleanRules<K, VT> = RuleEqualNullable<K, VT>;
|
|
58
|
+
/**
|
|
59
|
+
* Date
|
|
60
|
+
*/
|
|
61
|
+
export type RelationDateRules<K, VT> = RuleEqualNullable<K, VT> | RuleNumberNonNullable<K, VT> | RuleIn<K, VT> | RuleBetween<K, VT>;
|
|
62
|
+
export {};
|
|
63
|
+
//# sourceMappingURL=relation-query.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"relation-query.interface.d.ts","sourceRoot":"","sources":["../../src/repository/relation-query.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C;;GAEG;AACH,UAAU,iBAAiB,CAAC,CAAC,EAAE,EAAE;IAC/B,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,EAAE,CAAC;CACX;AAED;;GAEG;AACH,UAAU,qBAAqB,CAAC,CAAC,EAAE,EAAE;IACnC,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,EACJ,GAAG,GACH,GAAG,GACH,IAAI,GACJ,IAAI,GACJ,UAAU,GACV,YAAY,GACZ,WAAW,GACX,cAAc,GACd,SAAS,GACT,YAAY,CAAC;IACjB,KAAK,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;CAC3B;AAED;;GAEG;AACH,UAAU,qBAAqB,CAAC,CAAC,EAAE,EAAE;IACnC,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,EAAE,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC;IAClC,KAAK,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;CAC3B;AAED;;GAEG;AACH,UAAU,MAAM,CAAC,CAAC,EAAE,EAAE;IACpB,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,EAAE,IAAI,GAAG,OAAO,CAAC;IACzB,KAAK,EAAE,cAAc,CAAC,EAAE,CAAC,EAAE,CAAC;CAC7B;AAED;;GAEG;AACH,UAAU,WAAW,CAAC,CAAC,EAAE,EAAE;IACzB,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,EAAE,SAAS,GAAG,YAAY,CAAC;IACnC,KAAK,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC;CACjD;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,EAAE,EAAE,IAAI,iBAAiB,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAEhF;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,EAAE,EAAE,IACjC,iBAAiB,CAAC,CAAC,EAAE,EAAE,CAAC,GACxB,qBAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,GAC5B,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,GACb,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAEvB;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,EAAE,EAAE,IACjC,iBAAiB,CAAC,CAAC,EAAE,EAAE,CAAC,GACxB,qBAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,GAC5B,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,GACb,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAEvB;;GAEG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,EAAE,EAAE,IAAI,iBAAiB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,EAAE,EAAE,IAC/B,iBAAiB,CAAC,CAAC,EAAE,EAAE,CAAC,GACxB,qBAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,GAC5B,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,GACb,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
import { EntityType } from '../entity/entity.interface';
|
|
3
|
-
import { CountOptions, FindAllOptions,
|
|
4
|
-
import { RuleGroup } from './query.interface';
|
|
2
|
+
import { EntityStaticType, EntityType } from '../entity/entity.interface.js';
|
|
3
|
+
import { CountOptions, FindAllOptions, FindOneOptions, FindOneOrFailOptions, FindOptions } from './query-options.interface.js';
|
|
5
4
|
/**
|
|
6
5
|
* 数据仓库管理接口
|
|
7
6
|
*/
|
|
@@ -9,45 +8,36 @@ export interface IRepository<T extends EntityType> {
|
|
|
9
8
|
/**
|
|
10
9
|
* 根据 id 获取实体
|
|
11
10
|
* @param id
|
|
12
|
-
* @param options
|
|
13
11
|
*/
|
|
14
|
-
get(id:
|
|
12
|
+
get(id: EntityStaticType<T, 'idType'>): Observable<InstanceType<T>>;
|
|
15
13
|
/**
|
|
16
14
|
* 查找一个实体
|
|
17
|
-
* @param where
|
|
18
15
|
* @param options
|
|
19
16
|
*/
|
|
20
|
-
findOne(
|
|
17
|
+
findOne(options: FindOneOptions<T>): Observable<InstanceType<T> | undefined>;
|
|
21
18
|
/**
|
|
22
19
|
* 查找一个实体,查不到就抛出错误
|
|
23
|
-
* @param where
|
|
24
20
|
* @param options
|
|
25
21
|
*/
|
|
26
|
-
findOneOrFail(
|
|
22
|
+
findOneOrFail(options: FindOneOrFailOptions<T>): Observable<InstanceType<T>>;
|
|
27
23
|
/**
|
|
28
24
|
* 查询多个实体
|
|
29
25
|
* @param where
|
|
30
26
|
* @param options
|
|
31
27
|
*/
|
|
32
|
-
find(
|
|
28
|
+
find(options: FindOptions<T>): Observable<InstanceType<T>[]>;
|
|
33
29
|
/**
|
|
34
30
|
* 查询所有实体
|
|
35
31
|
* @param where
|
|
36
32
|
* @param options
|
|
37
33
|
*/
|
|
38
|
-
findAll(
|
|
39
|
-
/**
|
|
40
|
-
* 通过指针查询实体
|
|
41
|
-
* @param where
|
|
42
|
-
* @param options
|
|
43
|
-
*/
|
|
44
|
-
findByCursor(where: RuleGroup<InstanceType<T>>, options?: FindByCursorOptions): Observable<InstanceType<T>[]>;
|
|
34
|
+
findAll(options: FindAllOptions<T>): Observable<InstanceType<T>[]>;
|
|
45
35
|
/**
|
|
46
36
|
* 查询实体数量
|
|
47
37
|
* @param where
|
|
48
38
|
* @param options
|
|
49
39
|
*/
|
|
50
|
-
count(
|
|
40
|
+
count(options?: CountOptions<T>): Observable<number>;
|
|
51
41
|
/**
|
|
52
42
|
* 创建实体
|
|
53
43
|
* @param entity
|
|
@@ -82,3 +72,4 @@ export declare enum SyncStatus {
|
|
|
82
72
|
*/
|
|
83
73
|
Never = "Never"
|
|
84
74
|
}
|
|
75
|
+
//# sourceMappingURL=repository.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repository.interface.d.ts","sourceRoot":"","sources":["../../src/repository/repository.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,WAAW,EACZ,MAAM,8BAA8B,CAAC;AAEtC;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,UAAU;IAC/C;;;OAGG;IACH,GAAG,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpE;;;OAGG;IACH,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAE7E;;;OAGG;IACH,aAAa,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7E;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAE7D;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEnE;;;;OAIG;IACH,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAErD;;;OAGG;IACH,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1D;;;;OAIG;IACH,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3F;;;OAGG;IACH,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;CAC3D;AAED;;GAEG;AACH,oBAAY,UAAU;IACpB;;OAEG;IACH,MAAM,WAAW;IAEjB;;OAEG;IACH,OAAO,YAAY;IAEnB;;OAEG;IACH,KAAK,UAAU;CAChB"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { EntityStaticType, EntityType } from '../entity/entity.interface.js';
|
|
3
|
+
import { RuleGroup } from './query.interface.js';
|
|
4
|
+
import { IRepository } from './repository.interface.js';
|
|
5
|
+
/**
|
|
6
|
+
* 树结构查询配置
|
|
7
|
+
*/
|
|
8
|
+
export interface FindTreeOptions<T extends EntityType = any, WhereType = RuleGroup<InstanceType<T>>> {
|
|
9
|
+
/**
|
|
10
|
+
* 查询的根节点
|
|
11
|
+
*/
|
|
12
|
+
entity: InstanceType<T> | EntityStaticType<T, 'idType'>;
|
|
13
|
+
/**
|
|
14
|
+
* 查询条件
|
|
15
|
+
*/
|
|
16
|
+
where?: WhereType;
|
|
17
|
+
/**
|
|
18
|
+
* 查询级别
|
|
19
|
+
* @default 0
|
|
20
|
+
*/
|
|
21
|
+
level?: number;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* 树结构查询配置
|
|
25
|
+
*/
|
|
26
|
+
export interface FindTreeRootOptions<T extends EntityType = any, WhereType = RuleGroup<InstanceType<T>>> {
|
|
27
|
+
/**
|
|
28
|
+
* 查询条件
|
|
29
|
+
*/
|
|
30
|
+
where?: WhereType;
|
|
31
|
+
/**
|
|
32
|
+
* 查询级别
|
|
33
|
+
* @default 0
|
|
34
|
+
*/
|
|
35
|
+
level?: number;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* 树结构仓库接口
|
|
39
|
+
*/
|
|
40
|
+
export interface ITreeRepository<T extends EntityType> extends IRepository<T> {
|
|
41
|
+
/**
|
|
42
|
+
* 查询根节点
|
|
43
|
+
*/
|
|
44
|
+
findRoot(options?: FindTreeRootOptions<T>): Observable<InstanceType<T>[]>;
|
|
45
|
+
/**
|
|
46
|
+
* 查询根节点数量
|
|
47
|
+
*/
|
|
48
|
+
countRoot(options?: FindTreeRootOptions<T>): Observable<number>;
|
|
49
|
+
/**
|
|
50
|
+
* 查询子孙实体
|
|
51
|
+
*/
|
|
52
|
+
findDescendants(options: FindTreeOptions<T>): Observable<InstanceType<T>[]>;
|
|
53
|
+
/**
|
|
54
|
+
* 查询子孙实体数量
|
|
55
|
+
*/
|
|
56
|
+
countDescendants(options: FindTreeOptions<T>): Observable<number>;
|
|
57
|
+
/**
|
|
58
|
+
* 查询祖先节点
|
|
59
|
+
*/
|
|
60
|
+
findAncestors(options: FindTreeOptions<T>): Observable<InstanceType<T>[]>;
|
|
61
|
+
/**
|
|
62
|
+
* 查询祖先节点数量
|
|
63
|
+
*/
|
|
64
|
+
countAncestors(options: FindTreeOptions<T>): Observable<number>;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=tree-repository.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tree-repository.interface.d.ts","sourceRoot":"","sources":["../../src/repository/tree-repository.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,EAAE,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACjG;;OAEG;IACH,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAExD;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,EAAE,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACrG;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,UAAU,CAAE,SAAQ,WAAW,CAAC,CAAC,CAAC;IAC3E;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAE1E;;OAEG;IACH,SAAS,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAEhE;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAE5E;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAElE;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAE1E;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;CACjE"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
import { EntityType } from './entity/entity.interface';
|
|
3
|
-
import { IRepository } from './repository/repository.interface';
|
|
4
|
-
import { RxDB } from './RxDB';
|
|
2
|
+
import { EntityType } from './entity/entity.interface.js';
|
|
3
|
+
import { IRepository } from './repository/repository.interface.js';
|
|
4
|
+
import { RxDB } from './RxDB.js';
|
|
5
5
|
/**
|
|
6
6
|
* 事务回调函数
|
|
7
7
|
*/
|
|
@@ -30,7 +30,12 @@ export interface IRxDBAdapter {
|
|
|
30
30
|
/**
|
|
31
31
|
* 创建 table
|
|
32
32
|
*/
|
|
33
|
-
|
|
33
|
+
createTables(EntityTypes: EntityType[], entities?: InstanceType<any>[]): Promise<boolean>;
|
|
34
|
+
/**
|
|
35
|
+
* 保存多个实体
|
|
36
|
+
* @param entities
|
|
37
|
+
*/
|
|
38
|
+
saveMany<T extends EntityType>(entities: InstanceType<T>[]): Promise<InstanceType<T>[]>;
|
|
34
39
|
/**
|
|
35
40
|
* 判断 table 是否存在
|
|
36
41
|
*/
|
|
@@ -43,17 +48,35 @@ export declare abstract class RxDBAdapterBase {
|
|
|
43
48
|
readonly rxdb: RxDB;
|
|
44
49
|
constructor(rxdb: RxDB);
|
|
45
50
|
}
|
|
51
|
+
export interface RestoreEntityOptions {
|
|
52
|
+
source: string;
|
|
53
|
+
}
|
|
46
54
|
/**
|
|
47
|
-
*
|
|
55
|
+
* 数据库适配器基类(本地)
|
|
48
56
|
*/
|
|
49
57
|
export declare abstract class RxDBAdapterLocalBase extends RxDBAdapterBase {
|
|
50
58
|
/**
|
|
51
59
|
* 执行事务
|
|
52
60
|
*/
|
|
53
61
|
abstract transaction(fun: TransactionFun): Promise<any>;
|
|
62
|
+
/**
|
|
63
|
+
* 创建分支
|
|
64
|
+
*/
|
|
65
|
+
abstract createBranch(branchId: string, fromChangeId?: number): Promise<void>;
|
|
66
|
+
/**
|
|
67
|
+
* 切换分支
|
|
68
|
+
* @param branchId
|
|
69
|
+
*/
|
|
70
|
+
abstract switchBranch(branchId: string): Promise<void>;
|
|
71
|
+
/**
|
|
72
|
+
* 恢复实体
|
|
73
|
+
* @param entity
|
|
74
|
+
* @param options
|
|
75
|
+
*/
|
|
76
|
+
abstract restoreEntity<T extends EntityType>(entity: InstanceType<T>, options: RestoreEntityOptions): Promise<InstanceType<T>>;
|
|
54
77
|
}
|
|
55
78
|
/**
|
|
56
|
-
*
|
|
79
|
+
* 数据库适配器基类(远程)
|
|
57
80
|
*/
|
|
58
81
|
export declare abstract class RxDBAdapterRemoteBase extends RxDBAdapterBase {
|
|
59
82
|
}
|
|
@@ -71,3 +94,4 @@ export type AdapterFactory = (rxDB: RxDB) => Promise<IRxDBAdapter> | IRxDBAdapte
|
|
|
71
94
|
export interface RxDBAdapters {
|
|
72
95
|
[name: string]: IRxDBAdapter;
|
|
73
96
|
}
|
|
97
|
+
//# sourceMappingURL=rxdb-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rxdb-adapter.d.ts","sourceRoot":"","sources":["../src/rxdb-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,OAAO,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC;IAEpC;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAE3B;;OAEG;IACH,aAAa,CAAC,CAAC,SAAS,UAAU,EAAE,EAAE,SAAS,WAAW,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,GAAG,EAAE,CAAC;IAE3F;;OAEG;IACH,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,QAAQ,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE1F;;;OAGG;IACH,QAAQ,CAAC,CAAC,SAAS,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAExF;;OAEG;IACH,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1D;AAED;;GAEG;AACH,8BAAsB,eAAe;aACP,IAAI,EAAE,IAAI;gBAAV,IAAI,EAAE,IAAI;CACvC;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,8BAAsB,oBAAqB,SAAQ,eAAe;IAChE;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC;IAEvD;;OAEG;IACH,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAE7E;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAEtD;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,CAAC,SAAS,UAAU,EACzC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EACvB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;CAC5B;AAED;;GAEG;AACH,8BAAsB,qBAAsB,SAAQ,eAAe;CAAG;AAEtE;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEtD;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;AAElF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAC;CAC9B"}
|