@aiao/rxdb-adapter-http 0.0.26 → 0.0.28
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/README.md +2 -2
- package/dist/RxDBAdapterHttp.d.ts +1 -1
- package/dist/RxDBAdapterHttp.d.ts.map +1 -1
- package/dist/errors.d.ts +7 -4
- package/dist/errors.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/metadata.d.ts +2 -2
- package/package.json +7 -7
- package/src/RxDBAdapterHttp.ts +3 -3
- package/src/errors.ts +7 -4
- package/src/metadata.ts +7 -7
package/README.md
CHANGED
|
@@ -261,8 +261,8 @@ new RxDBAdapterHttp(db, { baseUrl, handlers, conditionalRequests: true });
|
|
|
261
261
|
|
|
262
262
|
## 文档
|
|
263
263
|
|
|
264
|
-
- [HTTP 适配器完整文档](https://rxdb.
|
|
265
|
-
- [适配器总览](https://rxdb.
|
|
264
|
+
- [HTTP 适配器完整文档](https://rxdb.aiao.io/docs/adapters/http)
|
|
265
|
+
- [适配器总览](https://rxdb.aiao.io/docs/adapters)
|
|
266
266
|
|
|
267
267
|
## License
|
|
268
268
|
|
|
@@ -241,7 +241,7 @@ export declare class RxDBAdapterHttp extends RxDBAdapterRemoteBase implements IR
|
|
|
241
241
|
latestChangeId: number;
|
|
242
242
|
}>;
|
|
243
243
|
/** @throws HttpChangelogUnsupportedError 总是 */
|
|
244
|
-
mergeChanges(): Promise<RemoteMergeResult
|
|
244
|
+
mergeChanges(): Promise<RemoteMergeResult>;
|
|
245
245
|
}
|
|
246
246
|
declare module '@aiao/rxdb' {
|
|
247
247
|
interface RxDBAdapters {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RxDBAdapterHttp.d.ts","sourceRoot":"","sources":["../src/RxDBAdapterHttp.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"RxDBAdapterHttp.d.ts","sourceRoot":"","sources":["../src/RxDBAdapterHttp.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -5,9 +5,12 @@
|
|
|
5
5
|
* @remarks
|
|
6
6
|
* **判别位是类名,不是 `code`**(US-212「新错误的判别口径」)。仓库里并存三套口径:
|
|
7
7
|
* 主流按 `name` 判别(core 5 个错误类、supabase 全部错误类),supabase 附带 UPPER_SNAKE
|
|
8
|
-
* 的 `code` 作辅助,而 `
|
|
9
|
-
*
|
|
10
|
-
*
|
|
8
|
+
* 的 `code` 作辅助,而 snake_case `code` 作主判别位的只有 epic-006 那一组——九个常量登记在
|
|
9
|
+
* `@aiao/rxdb-plugin-working-tree` 的 `commit/commit-error-codes.ts`(**不在** `@aiao/rxdb` 里,
|
|
10
|
+
* 那两个目录随插件搬走了)。core 的 `RxDBMixedVersionedCacheTransactionError.code`
|
|
11
|
+
* (`mixed_versioned_cache_transaction`)是同一口径,但它早于码表存在,至今写的是裸字面量。
|
|
12
|
+
* 那组码保护着一条跨故事契约,**成员只能在该模块里增加**;本包照抄它的形态
|
|
13
|
+
* 只会多出一套没人登记的码。因此本包一律:**类名主判别 + UPPER_SNAKE `code` 辅助**。
|
|
11
14
|
*
|
|
12
15
|
* **传输失败不在这里。** 连不上远端时抛的是 core 的 `NetworkOfflineError`,不是本文件的
|
|
13
16
|
* 任何一个类——`isNetworkError` 的第 1 条判据是 `instanceof NetworkOfflineError`,包进
|
|
@@ -118,7 +121,7 @@ export declare class HttpPaginationError extends HttpAdapterError {
|
|
|
118
121
|
* @remarks
|
|
119
122
|
* 覆盖两类:缺 `id` / `updatedAt` 字段,以及 `updatedAt` 不是合法 ISO 8601 时间串。
|
|
120
123
|
* 后者**不能靠类型检查拦住**——不规范的字符串照样是 `string`,`diffMetadata` 照常运行,
|
|
121
|
-
*
|
|
124
|
+
* 错的只是结论(解析不出时间点就无法判断新旧,缓存卡死或无谓重拉)。
|
|
122
125
|
*/
|
|
123
126
|
export declare class HttpInvalidMetadataError extends HttpAdapterError {
|
|
124
127
|
readonly entityName: string;
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -795,7 +795,7 @@ var d = class e extends Error {
|
|
|
795
795
|
}
|
|
796
796
|
#l(e, t) {
|
|
797
797
|
if (o(e)) return !1;
|
|
798
|
-
let n = this.rxdb.
|
|
798
|
+
let n = this.rxdb.entitySync;
|
|
799
799
|
return a(t, n) === "querycache" && i(t, n)?.remote?.adapter === "http";
|
|
800
800
|
}
|
|
801
801
|
#u(e) {
|
|
@@ -839,7 +839,7 @@ var d = class e extends Error {
|
|
|
839
839
|
for (let t of e.values()) this.#m(t, e);
|
|
840
840
|
}
|
|
841
841
|
#m(e, t) {
|
|
842
|
-
if (i(e, this.rxdb.
|
|
842
|
+
if (i(e, this.rxdb.entitySync)?.remote?.adapter !== "http") return;
|
|
843
843
|
let n = Re(e, t);
|
|
844
844
|
if (n) throw new m(e.name, n.name, n.type);
|
|
845
845
|
}
|
package/dist/metadata.d.ts
CHANGED
|
@@ -3,8 +3,8 @@ import { QueryCacheEntityMetadata } from '@aiao/rxdb';
|
|
|
3
3
|
* 校验并规范化 handler 解析出的 metadata 行。
|
|
4
4
|
*
|
|
5
5
|
* @remarks
|
|
6
|
-
*
|
|
7
|
-
*
|
|
6
|
+
* **不得直接透传远端的串**,哪怕它合法:合法与规范是两件事,时区偏移、缺毫秒、
|
|
7
|
+
* `+00:00` 代替 `Z`、多于 3 位小数秒都合法,但 wire 形式统一为与 `toISOString()` 同形。
|
|
8
8
|
*
|
|
9
9
|
* @param entityName - 实体名,出错时写进错误便于定位
|
|
10
10
|
* @param rows - handler `parse` 出来的行,尚未校验
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aiao/rxdb-adapter-http",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.28",
|
|
4
4
|
"description": "HTTP remote adapter for RxDB QueryCache: JSON RuleGroup over your own REST API.",
|
|
5
|
-
"homepage": "https://rxdb.
|
|
5
|
+
"homepage": "https://rxdb.aiao.io/docs/adapters/http",
|
|
6
6
|
"bugs": {
|
|
7
7
|
"url": "https://github.com/aiao-io/rxdb/issues"
|
|
8
8
|
},
|
|
@@ -53,12 +53,12 @@
|
|
|
53
53
|
},
|
|
54
54
|
"peerDependencies": {
|
|
55
55
|
"rxjs": "^7.8.2",
|
|
56
|
-
"@aiao/rxdb": "0.0.
|
|
56
|
+
"@aiao/rxdb": "^0.0.28"
|
|
57
57
|
},
|
|
58
58
|
"devDependencies": {
|
|
59
|
-
"@aiao/rxdb-
|
|
60
|
-
"@aiao/rxdb-plugin-
|
|
61
|
-
"@aiao/rxdb-plugin-sync": "0.0.
|
|
62
|
-
"@aiao/rxdb-
|
|
59
|
+
"@aiao/rxdb-test": "0.0.28",
|
|
60
|
+
"@aiao/rxdb-plugin-history": "0.0.28",
|
|
61
|
+
"@aiao/rxdb-plugin-sync": "0.0.28",
|
|
62
|
+
"@aiao/rxdb-plugin-querycache": "0.0.28"
|
|
63
63
|
}
|
|
64
64
|
}
|
package/src/RxDBAdapterHttp.ts
CHANGED
|
@@ -484,7 +484,7 @@ export class RxDBAdapterHttp extends RxDBAdapterRemoteBase implements IRxDBAdapt
|
|
|
484
484
|
}
|
|
485
485
|
|
|
486
486
|
/** @throws HttpChangelogUnsupportedError 总是 */
|
|
487
|
-
async mergeChanges(): Promise<RemoteMergeResult
|
|
487
|
+
async mergeChanges(): Promise<RemoteMergeResult> {
|
|
488
488
|
throw new HttpChangelogUnsupportedError('mergeChanges');
|
|
489
489
|
}
|
|
490
490
|
|
|
@@ -594,7 +594,7 @@ export class RxDBAdapterHttp extends RxDBAdapterRemoteBase implements IRxDBAdapt
|
|
|
594
594
|
if (isSystemEntity(EntityClass)) {
|
|
595
595
|
return false;
|
|
596
596
|
}
|
|
597
|
-
const globalSync = this.rxdb.
|
|
597
|
+
const globalSync = this.rxdb.entitySync;
|
|
598
598
|
return (
|
|
599
599
|
getSyncType(metadata, globalSync) === 'querycache' &&
|
|
600
600
|
getSyncConfig(metadata, globalSync)?.remote?.adapter === ADAPTER_NAME
|
|
@@ -703,7 +703,7 @@ export class RxDBAdapterHttp extends RxDBAdapterRemoteBase implements IRxDBAdapt
|
|
|
703
703
|
}
|
|
704
704
|
|
|
705
705
|
#assertEntitySupported(metadata: EntityMetadata, byName: Map<string, EntityMetadata>): void {
|
|
706
|
-
const sync = getSyncConfig(metadata, this.rxdb.
|
|
706
|
+
const sync = getSyncConfig(metadata, this.rxdb.entitySync);
|
|
707
707
|
// bigint 只有在**要过 HTTP 线**时才是问题:本地实体带 bigint 与本包无关
|
|
708
708
|
if (sync?.remote?.adapter !== ADAPTER_NAME) {
|
|
709
709
|
return;
|
package/src/errors.ts
CHANGED
|
@@ -5,9 +5,12 @@
|
|
|
5
5
|
* @remarks
|
|
6
6
|
* **判别位是类名,不是 `code`**(US-212「新错误的判别口径」)。仓库里并存三套口径:
|
|
7
7
|
* 主流按 `name` 判别(core 5 个错误类、supabase 全部错误类),supabase 附带 UPPER_SNAKE
|
|
8
|
-
* 的 `code` 作辅助,而 `
|
|
9
|
-
*
|
|
10
|
-
*
|
|
8
|
+
* 的 `code` 作辅助,而 snake_case `code` 作主判别位的只有 epic-006 那一组——九个常量登记在
|
|
9
|
+
* `@aiao/rxdb-plugin-working-tree` 的 `commit/commit-error-codes.ts`(**不在** `@aiao/rxdb` 里,
|
|
10
|
+
* 那两个目录随插件搬走了)。core 的 `RxDBMixedVersionedCacheTransactionError.code`
|
|
11
|
+
* (`mixed_versioned_cache_transaction`)是同一口径,但它早于码表存在,至今写的是裸字面量。
|
|
12
|
+
* 那组码保护着一条跨故事契约,**成员只能在该模块里增加**;本包照抄它的形态
|
|
13
|
+
* 只会多出一套没人登记的码。因此本包一律:**类名主判别 + UPPER_SNAKE `code` 辅助**。
|
|
11
14
|
*
|
|
12
15
|
* **传输失败不在这里。** 连不上远端时抛的是 core 的 `NetworkOfflineError`,不是本文件的
|
|
13
16
|
* 任何一个类——`isNetworkError` 的第 1 条判据是 `instanceof NetworkOfflineError`,包进
|
|
@@ -170,7 +173,7 @@ export class HttpPaginationError extends HttpAdapterError {
|
|
|
170
173
|
* @remarks
|
|
171
174
|
* 覆盖两类:缺 `id` / `updatedAt` 字段,以及 `updatedAt` 不是合法 ISO 8601 时间串。
|
|
172
175
|
* 后者**不能靠类型检查拦住**——不规范的字符串照样是 `string`,`diffMetadata` 照常运行,
|
|
173
|
-
*
|
|
176
|
+
* 错的只是结论(解析不出时间点就无法判断新旧,缓存卡死或无谓重拉)。
|
|
174
177
|
*/
|
|
175
178
|
export class HttpInvalidMetadataError extends HttpAdapterError {
|
|
176
179
|
constructor(
|
package/src/metadata.ts
CHANGED
|
@@ -3,13 +3,13 @@
|
|
|
3
3
|
* metadata 的 wire 边界:校验并**规范化** `updatedAt`(US-212 AC#14)。
|
|
4
4
|
*
|
|
5
5
|
* @remarks
|
|
6
|
-
* core 的 `diffMetadata`
|
|
7
|
-
* `toISOString()`
|
|
8
|
-
*
|
|
6
|
+
* core 的 `diffMetadata` 经 `isRemoteNewer` 把两侧 `updatedAt` 解析成时间点再比较,而本地侧恒是
|
|
7
|
+
* `toISOString()` 的形态。所以偏移量与缺毫秒本身不再改变新鲜度结论,但「是合法 ISO 8601」
|
|
8
|
+
* 仍不够:缺时区标识的串按本机时区解析,同一份响应在不同机器上指向不同时刻,
|
|
9
|
+
* 且**全程没有异常**——查询照常返回,错的只是新鲜度判断。
|
|
9
10
|
*
|
|
10
11
|
* 这一层还负责让 metadata 通道**绕开实体解码**:只透出 `id` 与 `updatedAt` 两个字段,
|
|
11
|
-
* 都保持 `string`。一旦 `updatedAt` 变成 `Date
|
|
12
|
-
* 字符串那侧转成 `NaN`,比较恒为 `false` —— 所有行判 fresh,远端更新永远拉不下来。
|
|
12
|
+
* 都保持 `string`。一旦 `updatedAt` 变成 `Date`,就违背了 `QueryCacheEntityMetadata` 的契约。
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
15
|
import type { QueryCacheEntityMetadata } from '@aiao/rxdb';
|
|
@@ -72,8 +72,8 @@ const readId = (entityName: string, row: Record<string, unknown>): string => {
|
|
|
72
72
|
* 校验并规范化 handler 解析出的 metadata 行。
|
|
73
73
|
*
|
|
74
74
|
* @remarks
|
|
75
|
-
*
|
|
76
|
-
*
|
|
75
|
+
* **不得直接透传远端的串**,哪怕它合法:合法与规范是两件事,时区偏移、缺毫秒、
|
|
76
|
+
* `+00:00` 代替 `Z`、多于 3 位小数秒都合法,但 wire 形式统一为与 `toISOString()` 同形。
|
|
77
77
|
*
|
|
78
78
|
* @param entityName - 实体名,出错时写进错误便于定位
|
|
79
79
|
* @param rows - handler `parse` 出来的行,尚未校验
|