@aiao/rxdb-adapter-sqlite 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.
Files changed (85) hide show
  1. package/LICENSE +21 -0
  2. package/dist/RxDBAdapterSqlite.d.ts +101 -0
  3. package/dist/RxDBAdapterSqlite.d.ts.map +1 -0
  4. package/{SqliteClient.d.ts → dist/SqliteClient.d.ts} +10 -3
  5. package/dist/SqliteClient.d.ts.map +1 -0
  6. package/dist/SqliteRepository.d.ts +27 -0
  7. package/dist/SqliteRepository.d.ts.map +1 -0
  8. package/dist/SqliteRepository.interface.d.ts +94 -0
  9. package/dist/SqliteRepository.interface.d.ts.map +1 -0
  10. package/dist/SqliteRepositoryBase.d.ts +52 -0
  11. package/dist/SqliteRepositoryBase.d.ts.map +1 -0
  12. package/dist/SqliteTreeRepository.d.ts +21 -0
  13. package/dist/SqliteTreeRepository.d.ts.map +1 -0
  14. package/dist/SqliteTreeRepository.interface.d.ts +36 -0
  15. package/dist/SqliteTreeRepository.interface.d.ts.map +1 -0
  16. package/{execute_statement_helper.d.ts → dist/execute_statement_helper.d.ts} +3 -2
  17. package/dist/execute_statement_helper.d.ts.map +1 -0
  18. package/dist/generate_entity_delete_sql.d.ts +10 -0
  19. package/dist/generate_entity_delete_sql.d.ts.map +1 -0
  20. package/dist/generate_entity_find_tree_sql.d.ts +58 -0
  21. package/dist/generate_entity_find_tree_sql.d.ts.map +1 -0
  22. package/dist/generate_entity_insert_sql.d.ts +10 -0
  23. package/dist/generate_entity_insert_sql.d.ts.map +1 -0
  24. package/dist/generate_entity_inserts_sql.d.ts +7 -0
  25. package/dist/generate_entity_inserts_sql.d.ts.map +1 -0
  26. package/dist/generate_entity_soft_delete_sql.d.ts +10 -0
  27. package/dist/generate_entity_soft_delete_sql.d.ts.map +1 -0
  28. package/dist/generate_entity_update_sql.d.ts +10 -0
  29. package/dist/generate_entity_update_sql.d.ts.map +1 -0
  30. package/dist/generate_query_find_sql.d.ts +32 -0
  31. package/dist/generate_query_find_sql.d.ts.map +1 -0
  32. package/{generate_table_create_sql.d.ts → dist/generate_table_create_sql.d.ts} +2 -1
  33. package/dist/generate_table_create_sql.d.ts.map +1 -0
  34. package/dist/generate_table_trigger_sql.d.ts +9 -0
  35. package/dist/generate_table_trigger_sql.d.ts.map +1 -0
  36. package/dist/index.d.ts +6 -0
  37. package/dist/index.d.ts.map +1 -0
  38. package/dist/index.js +1683 -0
  39. package/dist/merge_create_cache.d.ts +6 -0
  40. package/dist/merge_create_cache.d.ts.map +1 -0
  41. package/dist/merge_remove_cache.d.ts +5 -0
  42. package/dist/merge_remove_cache.d.ts.map +1 -0
  43. package/dist/merge_tree_create_cache.d.ts +7 -0
  44. package/dist/merge_tree_create_cache.d.ts.map +1 -0
  45. package/dist/merge_tree_remove_cache.d.ts +7 -0
  46. package/dist/merge_tree_remove_cache.d.ts.map +1 -0
  47. package/dist/merge_tree_update_cache.d.ts +7 -0
  48. package/dist/merge_tree_update_cache.d.ts.map +1 -0
  49. package/dist/merge_update_cache.d.ts +5 -0
  50. package/dist/merge_update_cache.d.ts.map +1 -0
  51. package/dist/need_refresh_helper.d.ts +18 -0
  52. package/dist/need_refresh_helper.d.ts.map +1 -0
  53. package/dist/need_tree_refresh_helper.d.ts +19 -0
  54. package/dist/need_tree_refresh_helper.d.ts.map +1 -0
  55. package/dist/rxdb_adapter_create_branch.d.ts +7 -0
  56. package/dist/rxdb_adapter_create_branch.d.ts.map +1 -0
  57. package/dist/rxdb_adapter_create_tables_sql.d.ts +5 -0
  58. package/dist/rxdb_adapter_create_tables_sql.d.ts.map +1 -0
  59. package/dist/rxdb_adapter_save_many.d.ts +8 -0
  60. package/dist/rxdb_adapter_save_many.d.ts.map +1 -0
  61. package/dist/rxdb_adapter_switch_branch.d.ts +4 -0
  62. package/dist/rxdb_adapter_switch_branch.d.ts.map +1 -0
  63. package/{sqlite-load.utils.d.ts → dist/sqlite-load.utils.d.ts} +3 -2
  64. package/dist/sqlite-load.utils.d.ts.map +1 -0
  65. package/{sqlite.interface.d.ts → dist/sqlite.interface.d.ts} +25 -10
  66. package/dist/sqlite.interface.d.ts.map +1 -0
  67. package/{sqlite.utils.d.ts → dist/sqlite.utils.d.ts} +8 -5
  68. package/dist/sqlite.utils.d.ts.map +1 -0
  69. package/{wa-sqlite.d.ts → dist/wa-sqlite.d.ts} +1 -7
  70. package/dist/wa-sqlite.d.ts.map +1 -0
  71. package/package.json +32 -13
  72. package/RxDBAdapterSqlite.d.ts +0 -66
  73. package/SqliteRepository.d.ts +0 -23
  74. package/SqliteRepositoryBase.d.ts +0 -85
  75. package/SqliteTreeRepository.d.ts +0 -17
  76. package/generate_entity_delete_sql.d.ts +0 -9
  77. package/generate_entity_find_tree_sql.d.ts +0 -41
  78. package/generate_entity_insert_sql.d.ts +0 -9
  79. package/generate_entity_soft_delete_sql.d.ts +0 -9
  80. package/generate_entity_update_sql.d.ts +0 -9
  81. package/generate_query_find_sql.d.ts +0 -30
  82. package/generate_table_trigger_sql.d.ts +0 -8
  83. package/index.d.ts +0 -5
  84. package/index.js +0 -1125
  85. package/types.d.ts +0 -7
@@ -0,0 +1,6 @@
1
+ import { EntityType } from '@aiao/rxdb';
2
+ import { CacheQueryParams, CacheQueryTaskHelperResult, QueryTask } from './SqliteRepository.interface.js';
3
+ export declare const recalculate_create: <T extends EntityType>(task: QueryTask<T>, cache: CacheQueryTaskHelperResult<T>, entities: InstanceType<T>[]) => void;
4
+ declare const _default: <T extends EntityType>(task: QueryTask<T>, queryParams: CacheQueryParams, entities: InstanceType<T>[]) => void;
5
+ export default _default;
6
+ //# sourceMappingURL=merge_create_cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge_create_cache.d.ts","sourceRoot":"","sources":["../src/merge_create_cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,UAAU,EAAsB,MAAM,YAAY,CAAC;AAC9E,OAAO,EACL,gBAAgB,EAChB,0BAA0B,EAC1B,SAAS,EAEV,MAAM,iCAAiC,CAAC;AAGzC,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,UAAU,EACrD,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,OAAO,0BAA0B,CAAC,CAAC,CAAC,EACpC,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE,SAiB5B,CAAC;yBAEc,CAAC,SAAS,UAAU,EAClC,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,aAAa,gBAAgB,EAC7B,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE;AAH7B,wBA2BE"}
@@ -0,0 +1,5 @@
1
+ import { EntityType } from '@aiao/rxdb';
2
+ import { CacheQueryParams, QueryTask } from './SqliteRepository.interface.js';
3
+ declare const _default: <T extends EntityType>(task: QueryTask<T>, queryParams: CacheQueryParams, entities: InstanceType<T>[]) => void;
4
+ export default _default;
5
+ //# sourceMappingURL=merge_remove_cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge_remove_cache.d.ts","sourceRoot":"","sources":["../src/merge_remove_cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EACL,gBAAgB,EAEhB,SAAS,EAEV,MAAM,iCAAiC,CAAC;yBAezB,CAAC,SAAS,UAAU,EAClC,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,aAAa,gBAAgB,EAC7B,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE;AAH7B,wBAgCE"}
@@ -0,0 +1,7 @@
1
+ import { EntityType } from '@aiao/rxdb';
2
+ import { QueryTask } from './SqliteRepository.interface.js';
3
+ import { TreeCacheQueryParams } from './SqliteTreeRepository.interface.js';
4
+ export declare const recalculate_create: <T extends EntityType>(task: QueryTask<T>, cache: TreeCacheQueryParams<T>, entities: InstanceType<T>[]) => void;
5
+ declare const _default: <T extends EntityType>(task: QueryTask<T>, queryParams: TreeCacheQueryParams<T>, entities: InstanceType<T>[]) => void;
6
+ export default _default;
7
+ //# sourceMappingURL=merge_tree_create_cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge_tree_create_cache.d.ts","sourceRoot":"","sources":["../src/merge_tree_create_cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EACL,oBAAoB,EAGrB,MAAM,qCAAqC,CAAC;AAE7C,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,UAAU,EACrD,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,OAAO,oBAAoB,CAAC,CAAC,CAAC,EAC9B,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE,SAY5B,CAAC;yBAEc,CAAC,SAAS,UAAU,EAClC,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,aAAa,oBAAoB,CAAC,CAAC,CAAC,EACpC,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE;AAH7B,wBAyBE"}
@@ -0,0 +1,7 @@
1
+ import { EntityType } from '@aiao/rxdb';
2
+ import { QueryTask } from './SqliteRepository.interface.js';
3
+ import { TreeCacheQueryParams } from './SqliteTreeRepository.interface.js';
4
+ export declare const recalculate_create: <T extends EntityType>(task: QueryTask<T>, cache: TreeCacheQueryParams<T>, entities: InstanceType<T>[]) => void;
5
+ declare const _default: <T extends EntityType>(task: QueryTask<T>, queryParams: TreeCacheQueryParams<T>, entities: InstanceType<T>[]) => void;
6
+ export default _default;
7
+ //# sourceMappingURL=merge_tree_remove_cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge_tree_remove_cache.d.ts","sourceRoot":"","sources":["../src/merge_tree_remove_cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EACL,oBAAoB,EAGrB,MAAM,qCAAqC,CAAC;AAG7C,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,UAAU,EACrD,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,OAAO,oBAAoB,CAAC,CAAC,CAAC,EAC9B,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE,SAY5B,CAAC;yBAEc,CAAC,SAAS,UAAU,EAClC,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,aAAa,oBAAoB,CAAC,CAAC,CAAC,EACpC,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE;AAH7B,wBAyBE"}
@@ -0,0 +1,7 @@
1
+ import { EntityType } from '@aiao/rxdb';
2
+ import { QueryTask } from './SqliteRepository.interface.js';
3
+ import { TreeCacheQueryParams } from './SqliteTreeRepository.interface.js';
4
+ export declare const recalculate_create: <T extends EntityType>(task: QueryTask<T>, cache: TreeCacheQueryParams<T>, entities: InstanceType<T>[]) => void;
5
+ declare const _default: <T extends EntityType>(task: QueryTask<T>, queryParams: TreeCacheQueryParams<T>, entities: InstanceType<T>[]) => void;
6
+ export default _default;
7
+ //# sourceMappingURL=merge_tree_update_cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge_tree_update_cache.d.ts","sourceRoot":"","sources":["../src/merge_tree_update_cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EACL,oBAAoB,EAGrB,MAAM,qCAAqC,CAAC;AAG7C,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,UAAU,EACrD,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,OAAO,oBAAoB,CAAC,CAAC,CAAC,EAC9B,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE,SAY5B,CAAC;yBAEc,CAAC,SAAS,UAAU,EAClC,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,aAAa,oBAAoB,CAAC,CAAC,CAAC,EACpC,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE;AAH7B,wBAyBE"}
@@ -0,0 +1,5 @@
1
+ import { EntityType } from '@aiao/rxdb';
2
+ import { CacheQueryParams, QueryTask } from './SqliteRepository.interface.js';
3
+ declare const _default: <T extends EntityType>(task: QueryTask<T>, queryParams: CacheQueryParams, entities: InstanceType<T>[]) => void;
4
+ export default _default;
5
+ //# sourceMappingURL=merge_update_cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge_update_cache.d.ts","sourceRoot":"","sources":["../src/merge_update_cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,UAAU,EAAsB,MAAM,YAAY,CAAC;AAC9E,OAAO,EACL,gBAAgB,EAEhB,SAAS,EAEV,MAAM,iCAAiC,CAAC;yBAyBzB,CAAC,SAAS,UAAU,EAClC,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,aAAa,gBAAgB,EAC7B,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE;AAH7B,wBA0BE"}
@@ -0,0 +1,18 @@
1
+ import { EntityType } from '@aiao/rxdb';
2
+ import { CacheQueryParams, QueryTask, RefreshMatchRules } from './SqliteRepository.interface.js';
3
+ interface NeedRefreshResult {
4
+ refresh: boolean;
5
+ recalculate: boolean;
6
+ }
7
+ /**
8
+ * 计算任务是否需要 sql 刷新 或者 JS 重新计算
9
+ * @param refresh_rules 重新执行 sql 的规则
10
+ * @param recalculate_rules 使用 JS 重新计算规则
11
+ * @param queryParams 查询参数
12
+ * @param task 任务
13
+ * @param entities 结果中的实体
14
+ * @returns
15
+ */
16
+ declare const _default: <T extends EntityType>(refresh_rules: RefreshMatchRules, recalculate_rules: RefreshMatchRules, queryParams: CacheQueryParams, task: QueryTask<T>, entities: InstanceType<T>[]) => NeedRefreshResult;
17
+ export default _default;
18
+ //# sourceMappingURL=need_refresh_helper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"need_refresh_helper.d.ts","sourceRoot":"","sources":["../src/need_refresh_helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA0D,MAAM,YAAY,CAAC;AAEhG,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEjG,UAAU,iBAAiB;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;;GAQG;yBACa,CAAC,SAAS,UAAU,EAClC,eAAe,iBAAiB,EAChC,mBAAmB,iBAAiB,EACpC,aAAa,gBAAgB,EAC7B,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE,KAC1B,iBAAiB;AANpB,wBA6DE"}
@@ -0,0 +1,19 @@
1
+ import { EntityType } from '@aiao/rxdb';
2
+ import { QueryTask, RefreshMatchRules } from './SqliteRepository.interface.js';
3
+ import { TreeCacheQueryParams } from './SqliteTreeRepository.interface.js';
4
+ interface NeedRefreshResult {
5
+ refresh: boolean;
6
+ recalculate: boolean;
7
+ }
8
+ /**
9
+ * 计算任务是否需要 sql 刷新 或者 JS 重新计算
10
+ * @param refresh_rules 重新执行 sql 的规则
11
+ * @param recalculate_rules 使用 JS 重新计算规则
12
+ * @param queryParams 查询参数
13
+ * @param task 任务
14
+ * @param entities 结果中的实体
15
+ * @returns
16
+ */
17
+ declare const _default: <T extends EntityType>(refresh_rules: RefreshMatchRules, recalculate_rules: RefreshMatchRules, queryParams: TreeCacheQueryParams<T>, task: QueryTask<T>, entities: InstanceType<T>[]) => NeedRefreshResult;
18
+ export default _default;
19
+ //# sourceMappingURL=need_tree_refresh_helper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"need_tree_refresh_helper.d.ts","sourceRoot":"","sources":["../src/need_tree_refresh_helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA0D,MAAM,YAAY,CAAC;AAEhG,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E,UAAU,iBAAiB;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;;GAQG;yBACa,CAAC,SAAS,UAAU,EAClC,eAAe,iBAAiB,EAChC,mBAAmB,iBAAiB,EACpC,aAAa,oBAAoB,CAAC,CAAC,CAAC,EACpC,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE,KAC1B,iBAAiB;AANpB,wBA+DE"}
@@ -0,0 +1,7 @@
1
+ import { RxDBAdapterSqlite } from './RxDBAdapterSqlite.js';
2
+ /**
3
+ * 创建分支
4
+ */
5
+ declare const _default: (adapter: RxDBAdapterSqlite, branchId: string, fromChangeId?: number) => Promise<void>;
6
+ export default _default;
7
+ //# sourceMappingURL=rxdb_adapter_create_branch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rxdb_adapter_create_branch.d.ts","sourceRoot":"","sources":["../src/rxdb_adapter_create_branch.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAG3D;;GAEG;yBACmB,SAAS,iBAAiB,EAAE,UAAU,MAAM,EAAE,eAAe,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;AAAzG,wBA6DE"}
@@ -0,0 +1,5 @@
1
+ import { EntityType } from '@aiao/rxdb';
2
+ import { RxDBAdapterSqlite } from './RxDBAdapterSqlite.js';
3
+ declare const _default: <T extends EntityType>(adapter: RxDBAdapterSqlite, EntityTypes: T[], entities?: InstanceType<T>[]) => string;
4
+ export default _default;
5
+ //# sourceMappingURL=rxdb_adapter_create_tables_sql.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rxdb_adapter_create_tables_sql.d.ts","sourceRoot":"","sources":["../src/rxdb_adapter_create_tables_sql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,UAAU,EAAqB,MAAM,YAAY,CAAC;AAI3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;yBAEhD,CAAC,SAAS,UAAU,EAAE,SAAS,iBAAiB,EAAE,aAAa,CAAC,EAAE,EAAE,WAAW,YAAY,CAAC,CAAC,CAAC,EAAE;AAAhH,wBA4BE"}
@@ -0,0 +1,8 @@
1
+ import { EntityType } from '@aiao/rxdb';
2
+ import { RxDBAdapterSqlite } from './RxDBAdapterSqlite.js';
3
+ /**
4
+ * 保存多个实例
5
+ */
6
+ declare const _default: <T extends EntityType>(adapter: RxDBAdapterSqlite, entities: InstanceType<T>[]) => Promise<InstanceType<T>[]>;
7
+ export default _default;
8
+ //# sourceMappingURL=rxdb_adapter_save_many.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rxdb_adapter_save_many.d.ts","sourceRoot":"","sources":["../src/rxdb_adapter_save_many.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,UAAU,EAA+D,MAAM,YAAY,CAAC;AAMxH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAG3D;;GAEG;yBACmB,CAAC,SAAS,UAAU,EACxC,SAAS,iBAAiB,EAC1B,UAAU,YAAY,CAAC,CAAC,CAAC,EAAE,KAC1B,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;AAH7B,wBAsIE"}
@@ -0,0 +1,4 @@
1
+ import { RxDBAdapterSqlite } from './RxDBAdapterSqlite.js';
2
+ declare const _default: (adapter: RxDBAdapterSqlite, branchId: string) => Promise<void>;
3
+ export default _default;
4
+ //# sourceMappingURL=rxdb_adapter_switch_branch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rxdb_adapter_switch_branch.d.ts","sourceRoot":"","sources":["../src/rxdb_adapter_switch_branch.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;yBA0BrC,SAAS,iBAAiB,EAAE,UAAU,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;AAAlF,wBAwEE"}
@@ -1,5 +1,5 @@
1
- import { LoadModuleOptions } from './sqlite.interface';
2
- import { SQLiteAPI } from './wa-sqlite';
1
+ import { LoadModuleOptions } from './sqlite.interface.js';
2
+ import { SQLiteAPI } from './wa-sqlite.js';
3
3
  interface VFSConfig {
4
4
  /**
5
5
  * vfs 的名称
@@ -37,3 +37,4 @@ export declare const checkVFSConfig: (options: LoadModuleOptions) => VFSConfig;
37
37
  export declare const sqliteLoad: (options: LoadModuleOptions) => Promise<SQLiteAPI>;
38
38
  export declare const getSqliteEventName: (dbName: string, eventName: string) => string;
39
39
  export {};
40
+ //# sourceMappingURL=sqlite-load.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-load.utils.d.ts","sourceRoot":"","sources":["../src/sqlite-load.utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAExE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAK3C,UAAU,SAAS;IACjB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,GAAG,CAAC;IAEjB;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;IACd;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,eAAO,MAAM,kBAAkB,EAAE,SAAS,EAoFzC,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,SAAS,iBAAiB,cAQxD,CAAC;AAEF,eAAO,MAAM,UAAU,GAAU,SAAS,iBAAiB,uBA2B1D,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,EAAE,WAAW,MAAM,WAA6C,CAAC"}
@@ -1,15 +1,26 @@
1
- import { IRxDBAdapterOptions, UnixMilliseconds } from '@aiao/rxdb';
2
- import { SQLiteCompatibleType } from './wa-sqlite';
1
+ import { IRxDBAdapterOptions } from '@aiao/rxdb';
2
+ import { SQLiteCompatibleType } from './wa-sqlite.js';
3
3
  export type SupportVFS = 'MemoryVFS' | 'MemoryAsyncVFS' | 'IDBBatchAtomicVFS' | 'OPFSAdaptiveVFS' | 'AccessHandlePoolVFS' | 'OPFSAnyContextVFS' | 'OPFSCoopSyncVFS' | 'OPFSPermutedVFS';
4
4
  export interface SqliteData {
5
5
  columns: string[];
6
6
  rows: SQLiteCompatibleType[][];
7
7
  }
8
8
  export interface SqliteSuccessResult {
9
+ /**
10
+ * 执行的 sql
11
+ */
9
12
  sql: string;
13
+ /**
14
+ * 受影响的行数
15
+ */
10
16
  rowsAffected: number;
11
- runStart: number;
12
- runEnd: number;
17
+ /**
18
+ * 执行时间 (ms)
19
+ */
20
+ elapsed: number;
21
+ /**
22
+ * 执行结果
23
+ */
13
24
  results: SqliteData[];
14
25
  }
15
26
  export type SqliteResult = SqliteSuccessResult;
@@ -34,13 +45,17 @@ export interface SqliteOptions extends IRxDBAdapterOptions {
34
45
  * wasm 路径
35
46
  */
36
47
  wasmPath?: string;
48
+ /**
49
+ * wasm 路径
50
+ */
51
+ locateFile?: (name: string) => string;
37
52
  /**
38
53
  * @see https://www.sqlite.org/pragma.html#pragma_cache_size
39
54
  * @default 51200
40
55
  */
41
56
  cacheSizeKb?: number;
42
57
  }
43
- export type LoadModuleOptions = Pick<SqliteOptions, 'vfs' | 'async' | 'wasmPath' | 'worker' | 'cacheSizeKb'>;
58
+ export type LoadModuleOptions = Pick<SqliteOptions, 'vfs' | 'async' | 'wasmPath' | 'worker' | 'locateFile' | 'cacheSizeKb'>;
44
59
  export declare enum SQliteChangeType {
45
60
  SQLITE_DELETE = 9,
46
61
  SQLITE_INSERT = 18,
@@ -48,10 +63,10 @@ export declare enum SQliteChangeType {
48
63
  }
49
64
  export interface SqliteChangeEvent {
50
65
  type: SQliteChangeType;
51
- dbName: string | null;
52
- tableName: string | null;
53
- rowid: bigint;
54
- recordAt: UnixMilliseconds;
55
- timeStamp: DOMHighResTimeStamp;
66
+ dbName: string;
67
+ tableName: string;
68
+ rowIds: bigint[];
69
+ recordAt: Date;
56
70
  }
57
71
  export declare const ADAPTER_NAME: "sqlite";
72
+ //# sourceMappingURL=sqlite.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite.interface.d.ts","sourceRoot":"","sources":["../src/sqlite.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE3D,MAAM,MAAM,UAAU,GAClB,WAAW,GACX,gBAAgB,GAChB,mBAAmB,GACnB,iBAAiB,GACjB,qBAAqB,GACrB,mBAAmB,GACnB,iBAAiB,GACjB,iBAAiB,CAAC;AAEtB,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,oBAAoB,EAAE,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,MAAM,MAAM,YAAY,GAAG,mBAAmB,CAAC;AAG/C,MAAM,WAAW,aAAc,SAAQ,mBAAmB;IACxD;;OAEG;IACH,GAAG,EAAE,UAAU,CAAC;IAEhB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAEtC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,aAAa,EACb,KAAK,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,YAAY,GAAG,aAAa,CACvE,CAAC;AAEF,oBAAY,gBAAgB;IAC1B,aAAa,IAAI;IACjB,aAAa,KAAK;IAClB,aAAa,KAAK;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,gBAAgB,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,IAAI,CAAC;CAChB;AAED,eAAO,MAAM,YAAY,EAAG,QAAiB,CAAC"}
@@ -1,6 +1,6 @@
1
- import { EntityMetadata, EntityPropertyMetadata, EntityRelationMetadata, RuleGroup, RxDBError, RxDBScalar } from '@aiao/rxdb';
2
- import { SqliteResult } from './sqlite.interface';
3
- import { SQLiteCompatibleType } from './wa-sqlite';
1
+ import { EntityMetadata, EntityPropertyMetadata, EntityRelationMetadata, RuleGroup, RxDBScalar } from '@aiao/rxdb';
2
+ import { SqliteResult } from './sqlite.interface.js';
3
+ import { SQLiteCompatibleType } from './wa-sqlite.js';
4
4
  /**
5
5
  * 检查 sqlite 表是否存在
6
6
  * @param tableName
@@ -60,7 +60,8 @@ export declare const getTableNameByMetadata: (metadata: EntityMetadata) => strin
60
60
  * @returns
61
61
  */
62
62
  export declare const getTableColumnIndexName: (metadata: EntityMetadata, property: EntityPropertyMetadata | EntityRelationMetadata) => string;
63
- export declare class RxdbAdapterSqliteError extends RxDBError {
63
+ export declare class RxdbAdapterSqliteError extends Error {
64
+ constructor(message: string);
64
65
  }
65
66
  /**
66
67
  * 格式化实体数据,转换为 sqlite 类型
@@ -89,13 +90,14 @@ export declare const normalizeEntity: (metadata: EntityMetadata, entity: any) =>
89
90
  * @returns
90
91
  */
91
92
  export declare const withoutSoftDelete: <RG extends RuleGroup<any, any, any>>(where: RG) => RG;
93
+ export declare const get_sql_value: (value: any) => any;
92
94
  /**
93
95
  * 展示 sql 合并后的结果
94
96
  * @param sql
95
97
  * @param params
96
98
  * @returns
97
99
  */
98
- export declare const showSQL: (sql: string, params: any[]) => string;
100
+ export declare const get_sql_with_params: (sql: string, params?: any[]) => string;
99
101
  /**
100
102
  * 获取实体对象数据
101
103
  * @param metadata
@@ -105,3 +107,4 @@ export declare const showSQL: (sql: string, params: any[]) => string;
105
107
  */
106
108
  export declare const getEntityObjectFromResult: (metadata: EntityMetadata, columns: string[], row: SQLiteCompatibleType[]) => any;
107
109
  export {};
110
+ //# sourceMappingURL=sqlite.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite.utils.d.ts","sourceRoot":"","sources":["../src/sqlite.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EAEtB,SAAS,EAET,UAAU,EACX,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,WAAW,MAAM,WACgC,CAAC;AAEpF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,YAAY,YACiC,CAAC;AAEvF;;GAEG;AACH,eAAO,MAAM,KAAK,EAAG,QAAiB,CAAC;AAEvC;;;GAGG;AACH,KAAK,cAAc,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,0BAA0B,GAAI,UAAU,sBAAsB,KAAG,cAc7E,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,GAAI,OAAO,UAAU,EAAE,UAAU,sBAAsB,kCAW3F,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,GAAI,OAAO,UAAU,GAAG,GAAG,EAAE,UAAU,sBAAsB,QAcjG,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,EAAE,WAAW,MAAM,WAA2B,CAAC;AAExF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GAAI,UAAU,cAAc,WAAoD,CAAC;AAEpH;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAClC,UAAU,cAAc,EACxB,UAAU,sBAAsB,GAAG,sBAAsB,WACf,CAAC;AAE7C,qBAAa,sBAAuB,SAAQ,KAAK;gBACnC,OAAO,EAAE,MAAM;CAK5B;AAED;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,GAAI,UAAU,cAAc,EAAE,QAAQ,GAAG,QAY9E,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAAI,UAAU,cAAc,EAAE,QAAQ,GAAG,QAC0B,CAAC;AAEtG;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,UAAU,cAAc,EAAE,QAAQ,GAAG,QACS,CAAC;AAE/E;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAkB,EAAE,SAAS,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,KAAG,EAYhG,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,OAAO,GAAG,QAQvC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAkB,KAAK,MAAM,EAAE,SAAQ,GAAG,EAAO,WAMhF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,GAAI,UAAU,cAAc,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,oBAAoB,EAAE,QAcjH,CAAC"}
@@ -160,13 +160,6 @@ export interface SQLiteAPI {
160
160
  * @returns `SQLITE_OK` (throws exception on error)
161
161
  */
162
162
  clear_bindings(stmt: number): number;
163
- /**
164
- * Get the last insert id
165
- * @see https://www.sqlite.org/c3ref/changes.html
166
- * @param db database pointer
167
- * @returns last insert id
168
- */
169
- last_insert_id(db: number): number;
170
163
  /**
171
164
  * Close database connection
172
165
  * @see https://www.sqlite.org/c3ref/close.html
@@ -609,3 +602,4 @@ export interface SQLiteAPI {
609
602
  vfs_register(vfs: any, makeDefault?: boolean): number;
610
603
  }
611
604
  export {};
605
+ //# sourceMappingURL=wa-sqlite.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wa-sqlite.d.ts","sourceRoot":"","sources":["../src/wa-sqlite.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,20 +1,39 @@
1
1
  {
2
2
  "name": "@aiao/rxdb-adapter-sqlite",
3
- "version": "0.0.2",
3
+ "version": "0.0.4",
4
4
  "type": "module",
5
- "main": "./index.js",
6
- "dependencies": {
7
- "@aiao/rxdb": "0.0.2",
8
- "@aiao/utils": "0.0.2",
9
- "rxjs": "~7.8.0",
10
- "@journeyapps/wa-sqlite": "^1.2.4",
11
- "comlink": "^4.4.2"
5
+ "main": "./dist/index.js",
6
+ "module": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ "./package.json": "./package.json",
10
+ ".": {
11
+ "@aiao/source": "./src/index.ts",
12
+ "types": "./dist/index.d.ts",
13
+ "import": "./dist/index.js",
14
+ "default": "./dist/index.js"
15
+ }
16
+ },
17
+ "files": [
18
+ "dist",
19
+ "!**/*.tsbuildinfo"
20
+ ],
21
+ "nx": {
22
+ "name": "rxdb-adapter-sqlite",
23
+ "tags": [
24
+ "js-lib"
25
+ ]
12
26
  },
13
- ".": {
14
- "import": "./index.js",
15
- "types": "./index.d.ts"
27
+ "dependencies": {
28
+ "rxjs": "^7.8.2",
29
+ "comlink": "^4.4.2",
30
+ "wa-sqlite": "rhashimoto/wa-sqlite.git#v1.0.9",
31
+ "object-hash": "^3.0.0",
32
+ "@aiao/rxdb": "0.0.4",
33
+ "@aiao/utils": "0.0.4"
16
34
  },
17
- "publishConfig": {
18
- "access": "public"
35
+ "devDependencies": {
36
+ "ms": "^2.1.3",
37
+ "@aiao/rxdb-test": "0.0.4"
19
38
  }
20
39
  }
@@ -1,66 +0,0 @@
1
- import { EntityType, IRepository, IRxDBAdapter, RxDB, RxDBAdapterLocalBase, TransactionFun } from '@aiao/rxdb';
2
- import { Observable } from 'rxjs';
3
- import { ADAPTER_NAME, SqliteOptions, SqliteResult } from './sqlite.interface';
4
- import { SQLiteCompatibleType } from './wa-sqlite';
5
- /**
6
- * SQLite Adapter
7
- */
8
- export declare class RxDBAdapterSqlite extends RxDBAdapterLocalBase implements IRxDBAdapter {
9
- #private;
10
- readonly options: SqliteOptions;
11
- name: string;
12
- /**
13
- * 数据库版本
14
- */
15
- version$: Observable<string>;
16
- constructor(rxdb: RxDB, options: SqliteOptions);
17
- /**
18
- * 连接 wab sqlite
19
- */
20
- connect(): Observable<this>;
21
- /**
22
- * 断开连接
23
- */
24
- disconnect(): Promise<void>;
25
- /**
26
- * 获取版本
27
- */
28
- version(): Promise<string>;
29
- /**
30
- * 获取实体仓库
31
- * @param entity 实体类
32
- */
33
- getRepository<T extends EntityType, RT extends IRepository<T>>(entity: T): RT;
34
- /**
35
- * 判断表是否存在
36
- * @param EntityType
37
- */
38
- isTableExisted<T extends EntityType>(EntityType: T): Promise<boolean>;
39
- /**
40
- * 判断表是否存在
41
- * @param EntityType
42
- */
43
- isTableExisted$<T extends EntityType>(EntityType: T): Observable<boolean>;
44
- /**
45
- * 创建 table
46
- * @param EntityType
47
- */
48
- createTable<T extends EntityType>(EntityType: T): Promise<boolean>;
49
- /**
50
- * 执行 sql
51
- * @param sql
52
- * @param bindings
53
- */
54
- execute(sql: string, bindings?: SQLiteCompatibleType[]): Observable<SqliteResult>;
55
- /**
56
- * 处理事务
57
- * @param callback
58
- */
59
- transaction<T extends TransactionFun>(callback: T): ReturnType<T>;
60
- transaction$<T extends TransactionFun>(callback: T): Observable<Awaited<ReturnType<T>>>;
61
- }
62
- declare module '@aiao/rxdb' {
63
- interface RxDBAdapters {
64
- [ADAPTER_NAME]: RxDBAdapterSqlite;
65
- }
66
- }
@@ -1,23 +0,0 @@
1
- import { CountOptions, EntityType, FindAllOptions, FindByCursorOptions, FindOneOptions, FindOneOrFailOptions, FindOptions, GetOptions, IRepository, MutationType, RuleGroup, UUID } from '@aiao/rxdb';
2
- import { Observable } from 'rxjs';
3
- import { SqliteRepositoryBase } from './SqliteRepositoryBase';
4
- /**
5
- * 操作 entity 仓库
6
- */
7
- export declare class SqliteRepository<T extends EntityType> extends SqliteRepositoryBase<T> implements IRepository<T> {
8
- #private;
9
- get(id: UUID, options?: GetOptions): Observable<InstanceType<T>>;
10
- findOne(where: RuleGroup<InstanceType<T>>, options?: FindOneOptions): Observable<InstanceType<T> | undefined>;
11
- findOneOrFail(where: RuleGroup<InstanceType<T>>, options?: FindOneOrFailOptions): Observable<InstanceType<T>>;
12
- find(where: RuleGroup<InstanceType<T>>, options?: FindOptions): Observable<InstanceType<T>[]>;
13
- findAll(where: RuleGroup<InstanceType<T>>, options?: FindAllOptions): Observable<InstanceType<T>[]>;
14
- findByCursor(where: RuleGroup<InstanceType<T>>, options?: FindByCursorOptions): Observable<InstanceType<T>[]>;
15
- count(where: RuleGroup<InstanceType<T>>, options?: CountOptions): Observable<number>;
16
- create(entity: InstanceType<T>): Promise<InstanceType<T>>;
17
- update(entity: InstanceType<T>, patch: Partial<InstanceType<T>>): Promise<InstanceType<T>>;
18
- remove(entity: InstanceType<T>): Promise<InstanceType<T>>;
19
- /**
20
- * 根据 type 计算主动更新缓存策略
21
- */
22
- merge_cache(type: MutationType, entities: InstanceType<T>[]): void;
23
- }
@@ -1,85 +0,0 @@
1
- import { EntityMetadata, EntityType, MutationType, RepositoryBase, UUID } from '@aiao/rxdb';
2
- import { Observable, Subject } from 'rxjs';
3
- import { SqlResult } from './generate_query_find_sql';
4
- import { RxDBAdapterSqlite } from './RxDBAdapterSqlite';
5
- import { SqliteSuccessResult } from './sqlite.interface';
6
- import { ISqliteClient } from './SqliteClient';
7
- /**
8
- * 查询任务
9
- */
10
- export interface QueryTask {
11
- /**
12
- * 查询语句
13
- */
14
- sql: string;
15
- /**
16
- * 查询参数
17
- */
18
- params: any[];
19
- /**
20
- * 观察者数量
21
- */
22
- observerCount: number;
23
- /**
24
- * 用于强制刷新查询语句
25
- */
26
- refresh$: Observable<number>;
27
- /**
28
- * 查询结果
29
- */
30
- result$: Observable<SqliteSuccessResult>;
31
- /**
32
- * 查询结果的实体 id
33
- */
34
- resultEntityIds?: UUID[];
35
- resultEntities?: InstanceType<any>[];
36
- /**
37
- * 查询被销毁
38
- */
39
- destroy$: Observable<void>;
40
- /**
41
- * 强制刷新
42
- */
43
- refresh: () => void;
44
- /**
45
- * 更新数据
46
- */
47
- next: (value: SqliteSuccessResult) => void;
48
- /**
49
- * 抛出错误
50
- */
51
- error: (value: Error) => void;
52
- }
53
- /**
54
- * 操作 entity 仓库
55
- */
56
- export declare class SqliteRepositoryBase<T extends EntityType> extends RepositoryBase<T> {
57
- #private;
58
- protected adapter: RxDBAdapterSqlite;
59
- protected client$: Observable<ISqliteClient>;
60
- protected metadata: EntityMetadata;
61
- protected need_run_task: Subject<void>;
62
- protected run_task$: Observable<void>;
63
- protected cache_query_task_map: Map<string, QueryTask>;
64
- protected cache_query_tasks: QueryTask[];
65
- protected transaction_entities: {
66
- type: MutationType;
67
- entities: InstanceType<T>[];
68
- }[];
69
- protected transaction_pending: boolean;
70
- constructor(adapter: RxDBAdapterSqlite, client$: Observable<ISqliteClient>, EntityType: T);
71
- /**
72
- * 根据 type 计算主动更新缓存策略
73
- */
74
- protected merge_cache(type: MutationType, entities: InstanceType<T>[]): void;
75
- /**
76
- * 添加缓存
77
- * @param sqliteSuccessResult
78
- * @param forcedUpdate 强制刷新,在数据有的情况下也会更新数据,在修改数据的情况下需要
79
- */
80
- protected add_query_cache(sqliteSuccessResult: SqliteSuccessResult, forcedUpdate?: boolean): InstanceType<T>[];
81
- /**
82
- * 创建查询任务
83
- */
84
- protected create_query_task(sqlResult: SqlResult): QueryTask;
85
- }
@@ -1,17 +0,0 @@
1
- import { EntityType, FindTreeOptions, ITreeRepository, MutationType, RuleGroup } from '@aiao/rxdb';
2
- import { Observable } from 'rxjs';
3
- import { SqliteRepository } from './SqliteRepository';
4
- /**
5
- * tree entity 仓库
6
- */
7
- export declare class SqliteTreeRepository<T extends EntityType> extends SqliteRepository<T> implements ITreeRepository<T> {
8
- #private;
9
- findDescendants(entity: InstanceType<T>, where: RuleGroup<T>, options?: FindTreeOptions): Observable<InstanceType<T>[]>;
10
- countDescendants(entity: InstanceType<T>, where: RuleGroup<T>, options?: FindTreeOptions): Observable<number>;
11
- findAncestors(entity: InstanceType<T>, where: RuleGroup<T>, options?: FindTreeOptions): Observable<InstanceType<T>[]>;
12
- countAncestors(entity: InstanceType<T>, where: RuleGroup<T>, options?: FindTreeOptions): Observable<number>;
13
- /**
14
- * 根据 type 计算主动更新缓存策略
15
- */
16
- merge_cache(type: MutationType, entities: InstanceType<T>[]): void;
17
- }
@@ -1,9 +0,0 @@
1
- import { EntityMetadata, IEntity, IQueryContext } from '@aiao/rxdb';
2
- /**
3
- * Entity remove SQL
4
- */
5
- declare const _default: (metadata: EntityMetadata, entity: IEntity, context?: IQueryContext) => {
6
- sql: string;
7
- params: `${string}-${string}-${string}-${string}-${string}`[];
8
- };
9
- export default _default;