@aws-amplify/datastore 5.0.3 → 5.0.4-unstable.136f85f.0
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/package.json
CHANGED
|
@@ -1,135 +1,135 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
2
|
+
"name": "@aws-amplify/datastore",
|
|
3
|
+
"version": "5.0.4-unstable.136f85f.0+136f85f",
|
|
4
|
+
"description": "AppSyncLocal support for aws-amplify",
|
|
5
|
+
"main": "./dist/cjs/index.js",
|
|
6
|
+
"module": "./dist/esm/index.mjs",
|
|
7
|
+
"typings": "./dist/esm/index.d.ts",
|
|
8
|
+
"react-native": "./src/index.ts",
|
|
9
|
+
"publishConfig": {
|
|
10
|
+
"access": "public"
|
|
11
|
+
},
|
|
12
|
+
"sideEffects": [
|
|
13
|
+
"./dist/cjs/datastore/datastore.js",
|
|
14
|
+
"./dist/esm/datastore/datastore.mjs"
|
|
15
|
+
],
|
|
16
|
+
"scripts": {
|
|
17
|
+
"test": "npm run lint && jest -w 1 --coverage",
|
|
18
|
+
"test:size": "size-limit",
|
|
19
|
+
"build-with-test": "npm test && npm run build",
|
|
20
|
+
"build:umd": "webpack && webpack --config ./webpack.config.dev.js",
|
|
21
|
+
"build:esm-cjs": "rollup -c rollup.config.mjs",
|
|
22
|
+
"build:cjs:watch": "rimraf dist/cjs && tsc -m commonjs --outDir dist/cjs --watch",
|
|
23
|
+
"build:esm:watch": "rimraf dist/esm && tsc -m esnext --outDir dist/esm --watch",
|
|
24
|
+
"build": "npm run clean && npm run build:esm-cjs && npm run build:umd",
|
|
25
|
+
"clean": "npm run clean:size && rimraf dist lib lib-esm",
|
|
26
|
+
"clean:size": "rimraf dual-publish-tmp tmp*",
|
|
27
|
+
"format": "echo \"Not implemented\" && npm run ts-coverage",
|
|
28
|
+
"lint": "tslint '{__tests__,src}/**/*.ts' && npm run ts-coverage",
|
|
29
|
+
"ts-coverage": "typescript-coverage-report -p ./tsconfig.json -t 92.05"
|
|
30
|
+
},
|
|
31
|
+
"repository": {
|
|
32
|
+
"type": "git",
|
|
33
|
+
"url": "https://github.com/aws-amplify/amplify-js.git"
|
|
34
|
+
},
|
|
35
|
+
"author": "Amazon Web Services",
|
|
36
|
+
"license": "Apache-2.0",
|
|
37
|
+
"bugs": {
|
|
38
|
+
"url": "https://github.com/aws/aws-amplify/issues"
|
|
39
|
+
},
|
|
40
|
+
"homepage": "https://aws-amplify.github.io/",
|
|
41
|
+
"files": [
|
|
42
|
+
"dist/cjs",
|
|
43
|
+
"dist/esm",
|
|
44
|
+
"src"
|
|
45
|
+
],
|
|
46
|
+
"dependencies": {
|
|
47
|
+
"@aws-amplify/api": "6.0.4-unstable.136f85f.0+136f85f",
|
|
48
|
+
"buffer": "4.9.2",
|
|
49
|
+
"idb": "5.0.6",
|
|
50
|
+
"immer": "9.0.6",
|
|
51
|
+
"rxjs": "^7.8.1",
|
|
52
|
+
"ulid": "^2.3.0"
|
|
53
|
+
},
|
|
54
|
+
"peerDependencies": {
|
|
55
|
+
"@aws-amplify/core": "6.0.4-unstable.136f85f.0+136f85f"
|
|
56
|
+
},
|
|
57
|
+
"devDependencies": {
|
|
58
|
+
"@aws-amplify/core": "6.0.4-unstable.136f85f.0+136f85f",
|
|
59
|
+
"@aws-amplify/react-native": "1.0.4-unstable.136f85f.0+136f85f",
|
|
60
|
+
"@rollup/plugin-typescript": "11.1.5",
|
|
61
|
+
"@types/uuid-validate": "^0.0.1",
|
|
62
|
+
"dexie": "3.2.2",
|
|
63
|
+
"dexie-export-import": "1.0.3",
|
|
64
|
+
"fake-indexeddb": "3.0.0",
|
|
65
|
+
"graphql": "15.8.0",
|
|
66
|
+
"rollup": "3.29.4",
|
|
67
|
+
"typescript": "5.0.2"
|
|
68
|
+
},
|
|
69
|
+
"size-limit": [
|
|
70
|
+
{
|
|
71
|
+
"name": "DataStore (top-level class)",
|
|
72
|
+
"path": "./dist/esm/index.mjs",
|
|
73
|
+
"import": "{ Amplify, DataStore }",
|
|
74
|
+
"limit": "65.25 kB"
|
|
75
|
+
}
|
|
76
|
+
],
|
|
77
|
+
"jest": {
|
|
78
|
+
"globals": {
|
|
79
|
+
"ts-jest": {
|
|
80
|
+
"diagnostics": true,
|
|
81
|
+
"tsConfig": {
|
|
82
|
+
"lib": [
|
|
83
|
+
"es5",
|
|
84
|
+
"es2015",
|
|
85
|
+
"dom",
|
|
86
|
+
"esnext.asynciterable",
|
|
87
|
+
"es2019"
|
|
88
|
+
],
|
|
89
|
+
"target": "es5",
|
|
90
|
+
"allowJs": true,
|
|
91
|
+
"esModuleInterop": true,
|
|
92
|
+
"strictNullChecks": false,
|
|
93
|
+
"types": [
|
|
94
|
+
"@types/jest"
|
|
95
|
+
]
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
"transform": {
|
|
100
|
+
"^.+\\.(js|jsx|ts|tsx)$": "ts-jest"
|
|
101
|
+
},
|
|
102
|
+
"testRegex": "(/__tests__/.*|\\.(test|spec))\\.(tsx?|jsx?)$",
|
|
103
|
+
"testPathIgnorePatterns": [
|
|
104
|
+
"__tests__/model.ts",
|
|
105
|
+
"__tests__/schema.ts",
|
|
106
|
+
"__tests__/helpers/",
|
|
107
|
+
"__tests__/commonAdapterTests.ts"
|
|
108
|
+
],
|
|
109
|
+
"moduleFileExtensions": [
|
|
110
|
+
"ts",
|
|
111
|
+
"tsx",
|
|
112
|
+
"js",
|
|
113
|
+
"json",
|
|
114
|
+
"jsx"
|
|
115
|
+
],
|
|
116
|
+
"testEnvironment": "jsdom",
|
|
117
|
+
"testURL": "http://localhost/",
|
|
118
|
+
"coverageThreshold": {
|
|
119
|
+
"global": {
|
|
120
|
+
"branches": 0,
|
|
121
|
+
"functions": 0,
|
|
122
|
+
"lines": 0,
|
|
123
|
+
"statements": 0
|
|
124
|
+
}
|
|
125
|
+
},
|
|
126
|
+
"coveragePathIgnorePatterns": [
|
|
127
|
+
"/node_modules/",
|
|
128
|
+
"dist"
|
|
129
|
+
],
|
|
130
|
+
"setupFilesAfterEnv": [
|
|
131
|
+
"<rootDir>/jest.setup.js"
|
|
132
|
+
]
|
|
133
|
+
},
|
|
134
|
+
"gitHead": "136f85f9ab52d7738bbe8d792eec7f904af081cc"
|
|
135
135
|
}
|
|
@@ -835,8 +835,8 @@ const createModelClass = <T extends PersistentModel>(
|
|
|
835
835
|
const id = isInternalModel
|
|
836
836
|
? _id
|
|
837
837
|
: modelDefinition.syncable
|
|
838
|
-
|
|
839
|
-
|
|
838
|
+
? amplifyUuid()
|
|
839
|
+
: ulid();
|
|
840
840
|
|
|
841
841
|
(<ModelWithIDIdentifier>(<unknown>draft)).id = id;
|
|
842
842
|
} else if (isIdOptionallyManaged(modelDefinition)) {
|
|
@@ -1740,7 +1740,7 @@ class DataStore {
|
|
|
1740
1740
|
const initPatchesTuple = initPatches.has(model)
|
|
1741
1741
|
? ([initPatches.get(model)!, {}] as [
|
|
1742
1742
|
Patch[],
|
|
1743
|
-
Readonly<Record<string, any
|
|
1743
|
+
Readonly<Record<string, any>>,
|
|
1744
1744
|
])
|
|
1745
1745
|
: undefined;
|
|
1746
1746
|
|
|
@@ -170,9 +170,8 @@ class AsyncStorageDatabase {
|
|
|
170
170
|
}
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
-
const existingRecordsMap: [string, string][] =
|
|
174
|
-
allItemsKeys
|
|
175
|
-
);
|
|
173
|
+
const existingRecordsMap: [string, string][] =
|
|
174
|
+
await this.storage.multiGet(allItemsKeys);
|
|
176
175
|
const existingRecordsKeys = existingRecordsMap
|
|
177
176
|
.filter(([, v]) => !!v)
|
|
178
177
|
.reduce((set, [k]) => set.add(k), new Set<string>());
|
package/src/sync/index.ts
CHANGED
|
@@ -598,9 +598,8 @@ export class SyncEngine {
|
|
|
598
598
|
* merged individually. Otherwise, we can merge them in batches.
|
|
599
599
|
*/
|
|
600
600
|
await this.storage.runExclusive(async storage => {
|
|
601
|
-
const idsInOutbox =
|
|
602
|
-
storage
|
|
603
|
-
);
|
|
601
|
+
const idsInOutbox =
|
|
602
|
+
await this.outbox.getModelIds(storage);
|
|
604
603
|
|
|
605
604
|
const oneByOne: ModelInstanceMetadata[] = [];
|
|
606
605
|
const page = items.filter(item => {
|
|
@@ -247,7 +247,7 @@ class SubscriptionProcessor {
|
|
|
247
247
|
|
|
248
248
|
start(): [
|
|
249
249
|
Observable<CONTROL_MSG>,
|
|
250
|
-
Observable<[TransformerMutationType, SchemaModel, PersistentModel]
|
|
250
|
+
Observable<[TransformerMutationType, SchemaModel, PersistentModel]>,
|
|
251
251
|
] {
|
|
252
252
|
this.runningProcesses =
|
|
253
253
|
this.runningProcesses || new BackgroundProcessManager();
|
package/src/sync/utils.ts
CHANGED
package/src/types.ts
CHANGED
|
@@ -454,34 +454,34 @@ export type Identifier<T> =
|
|
|
454
454
|
|
|
455
455
|
export type IdentifierFields<
|
|
456
456
|
T extends PersistentModel,
|
|
457
|
-
M extends PersistentModelMetaData<T> = never
|
|
457
|
+
M extends PersistentModelMetaData<T> = never,
|
|
458
458
|
> = (MetadataOrDefault<T, M>['identifier'] extends
|
|
459
459
|
| ManagedIdentifier<any, any>
|
|
460
460
|
| OptionallyManagedIdentifier<any, any>
|
|
461
461
|
? MetadataOrDefault<T, M>['identifier']['field']
|
|
462
462
|
: MetadataOrDefault<T, M>['identifier'] extends CompositeIdentifier<
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
463
|
+
T,
|
|
464
|
+
infer B
|
|
465
|
+
>
|
|
466
|
+
? B[number] // B[number]
|
|
467
|
+
: MetadataOrDefault<T, M>['identifier']['field']) &
|
|
468
468
|
string;
|
|
469
469
|
|
|
470
470
|
export type IdentifierFieldsForInit<
|
|
471
471
|
T extends PersistentModel,
|
|
472
|
-
M extends PersistentModelMetaData<T
|
|
472
|
+
M extends PersistentModelMetaData<T>,
|
|
473
473
|
> = MetadataOrDefault<T, M>['identifier'] extends
|
|
474
474
|
| DefaultPersistentModelMetaData
|
|
475
475
|
| ManagedIdentifier<T, any>
|
|
476
476
|
? never
|
|
477
477
|
: MetadataOrDefault<T, M>['identifier'] extends OptionallyManagedIdentifier<
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
478
|
+
T,
|
|
479
|
+
any
|
|
480
|
+
>
|
|
481
|
+
? IdentifierFields<T, M>
|
|
482
|
+
: MetadataOrDefault<T, M>['identifier'] extends CompositeIdentifier<T, any>
|
|
483
|
+
? IdentifierFields<T, M>
|
|
484
|
+
: never;
|
|
485
485
|
|
|
486
486
|
// Instance of model
|
|
487
487
|
export declare const __modelMeta__: unique symbol;
|
|
@@ -500,18 +500,18 @@ export type SettableFieldType<T> = T extends Promise<infer InnerPromiseType>
|
|
|
500
500
|
? InnerPromiseType | null
|
|
501
501
|
: InnerPromiseType
|
|
502
502
|
: T extends AsyncCollection<infer InnerCollectionType>
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
503
|
+
? InnerCollectionType[] | undefined
|
|
504
|
+
: undefined extends T
|
|
505
|
+
? T | null
|
|
506
|
+
: T;
|
|
507
507
|
|
|
508
508
|
export type PredicateFieldType<T> = NonNullable<
|
|
509
509
|
Scalar<
|
|
510
510
|
T extends Promise<infer InnerPromiseType>
|
|
511
511
|
? InnerPromiseType
|
|
512
512
|
: T extends AsyncCollection<infer InnerCollectionType>
|
|
513
|
-
|
|
514
|
-
|
|
513
|
+
? InnerCollectionType
|
|
514
|
+
: T
|
|
515
515
|
>
|
|
516
516
|
>;
|
|
517
517
|
|
|
@@ -545,7 +545,7 @@ export type DefaultPersistentModelMetaData = {
|
|
|
545
545
|
|
|
546
546
|
export type MetadataOrDefault<
|
|
547
547
|
T extends PersistentModel,
|
|
548
|
-
_ extends PersistentModelMetaData<T> = never
|
|
548
|
+
_ extends PersistentModelMetaData<T> = never,
|
|
549
549
|
> = T extends {
|
|
550
550
|
[__modelMeta__]: PersistentModelMetaData<T>;
|
|
551
551
|
}
|
|
@@ -556,7 +556,7 @@ export type PersistentModel = Readonly<Record<string, any>>;
|
|
|
556
556
|
|
|
557
557
|
export type MetadataReadOnlyFields<
|
|
558
558
|
T extends PersistentModel,
|
|
559
|
-
M extends PersistentModelMetaData<T
|
|
559
|
+
M extends PersistentModelMetaData<T>,
|
|
560
560
|
> = Extract<
|
|
561
561
|
MetadataOrDefault<T, M>['readOnlyFields'] | M['readOnlyFields'],
|
|
562
562
|
keyof T
|
|
@@ -569,7 +569,7 @@ export type MetadataReadOnlyFields<
|
|
|
569
569
|
// This type makes optional some identifiers in the constructor init object (e.g. OptionallyManagedIdentifier)
|
|
570
570
|
export type ModelInitBase<
|
|
571
571
|
T extends PersistentModel,
|
|
572
|
-
M extends PersistentModelMetaData<T> = {}
|
|
572
|
+
M extends PersistentModelMetaData<T> = {},
|
|
573
573
|
> = Omit<
|
|
574
574
|
T,
|
|
575
575
|
typeof __modelMeta__ | IdentifierFields<T, M> | MetadataReadOnlyFields<T, M>
|
|
@@ -583,7 +583,7 @@ export type ModelInitBase<
|
|
|
583
583
|
|
|
584
584
|
export type ModelInit<
|
|
585
585
|
T extends PersistentModel,
|
|
586
|
-
M extends PersistentModelMetaData<T> = {}
|
|
586
|
+
M extends PersistentModelMetaData<T> = {},
|
|
587
587
|
> = {
|
|
588
588
|
[P in keyof OmitOptionalRelatives<ModelInitBase<T, M>>]: SettableFieldType<
|
|
589
589
|
ModelInitBase<T, M>[P]
|
|
@@ -598,17 +598,17 @@ type DeepWritable<T> = {
|
|
|
598
598
|
-readonly [P in keyof T]: T[P] extends TypeName<T[P]>
|
|
599
599
|
? T[P]
|
|
600
600
|
: T[P] extends Promise<infer InnerPromiseType>
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
601
|
+
? undefined extends InnerPromiseType
|
|
602
|
+
? InnerPromiseType | null
|
|
603
|
+
: InnerPromiseType
|
|
604
|
+
: T[P] extends AsyncCollection<infer InnerCollectionType>
|
|
605
|
+
? InnerCollectionType[] | undefined | null
|
|
606
|
+
: DeepWritable<T[P]>;
|
|
607
607
|
};
|
|
608
608
|
|
|
609
609
|
export type MutableModel<
|
|
610
610
|
T extends PersistentModel,
|
|
611
|
-
M extends PersistentModelMetaData<T> = {}
|
|
611
|
+
M extends PersistentModelMetaData<T> = {},
|
|
612
612
|
// This provides Intellisense with ALL of the properties, regardless of read-only
|
|
613
613
|
// but will throw a linting error if trying to overwrite a read-only property
|
|
614
614
|
> = DeepWritable<
|
|
@@ -624,7 +624,7 @@ export type ModelInstanceMetadata = {
|
|
|
624
624
|
|
|
625
625
|
export type IdentifierFieldValue<
|
|
626
626
|
T extends PersistentModel,
|
|
627
|
-
M extends PersistentModelMetaData<T
|
|
627
|
+
M extends PersistentModelMetaData<T>,
|
|
628
628
|
> = MetadataOrDefault<T, M>['identifier'] extends CompositeIdentifier<T, any>
|
|
629
629
|
? MetadataOrDefault<T, M>['identifier']['fields'] extends [any]
|
|
630
630
|
? T[MetadataOrDefault<T, M>['identifier']['fields'][0]]
|
|
@@ -633,7 +633,7 @@ export type IdentifierFieldValue<
|
|
|
633
633
|
|
|
634
634
|
export type IdentifierFieldOrIdentifierObject<
|
|
635
635
|
T extends PersistentModel,
|
|
636
|
-
M extends PersistentModelMetaData<T
|
|
636
|
+
M extends PersistentModelMetaData<T>,
|
|
637
637
|
> = Pick<T, IdentifierFields<T, M>> | IdentifierFieldValue<T, M>;
|
|
638
638
|
|
|
639
639
|
export function isIdentifierObject<T extends PersistentModel>(
|
|
@@ -678,7 +678,7 @@ export type DataStoreSnapshot<T extends PersistentModel> = {
|
|
|
678
678
|
|
|
679
679
|
export type PredicateExpression<
|
|
680
680
|
M extends PersistentModel,
|
|
681
|
-
FT
|
|
681
|
+
FT,
|
|
682
682
|
> = TypeName<FT> extends keyof MapTypeToOperands<FT>
|
|
683
683
|
? (
|
|
684
684
|
operator: keyof MapTypeToOperands<FT>[TypeName<FT>],
|
|
@@ -726,16 +726,16 @@ type MapTypeToOperands<T> = {
|
|
|
726
726
|
type TypeName<T> = T extends string
|
|
727
727
|
? 'string'
|
|
728
728
|
: T extends number
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
729
|
+
? 'number'
|
|
730
|
+
: T extends boolean
|
|
731
|
+
? 'boolean'
|
|
732
|
+
: T extends string[]
|
|
733
|
+
? 'string[]'
|
|
734
|
+
: T extends number[]
|
|
735
|
+
? 'number[]'
|
|
736
|
+
: T extends boolean[]
|
|
737
|
+
? 'boolean[]'
|
|
738
|
+
: never;
|
|
739
739
|
|
|
740
740
|
export type PredicateGroups<T extends PersistentModel> = {
|
|
741
741
|
and: (
|
|
@@ -843,7 +843,7 @@ export type SortPredicate<T extends PersistentModel> = {
|
|
|
843
843
|
|
|
844
844
|
export type SortPredicateExpression<
|
|
845
845
|
M extends PersistentModel,
|
|
846
|
-
FT
|
|
846
|
+
FT,
|
|
847
847
|
> = TypeName<FT> extends keyof MapTypeToOperands<FT>
|
|
848
848
|
? (sortDirection: keyof typeof SortDirection) => SortPredicate<M>
|
|
849
849
|
: never;
|
|
@@ -1028,7 +1028,7 @@ type ConditionProducer<T extends PersistentModel, A extends Option<T>> = (
|
|
|
1028
1028
|
|
|
1029
1029
|
export async function syncExpression<
|
|
1030
1030
|
T extends PersistentModel,
|
|
1031
|
-
A extends Option<T
|
|
1031
|
+
A extends Option<T>,
|
|
1032
1032
|
>(
|
|
1033
1033
|
modelConstructor: PersistentModelConstructor<T>,
|
|
1034
1034
|
conditionProducer: ConditionProducer<T, A>
|
|
@@ -1149,7 +1149,7 @@ export type RecursiveModelPredicateExtender<RT extends PersistentModel> = (
|
|
|
1149
1149
|
) => PredicateInternalsKey;
|
|
1150
1150
|
|
|
1151
1151
|
export type RecursiveModelPredicateAggregateExtender<
|
|
1152
|
-
RT extends PersistentModel
|
|
1152
|
+
RT extends PersistentModel,
|
|
1153
1153
|
> = (lambda: RecursiveModelPredicate<RT>) => PredicateInternalsKey[];
|
|
1154
1154
|
|
|
1155
1155
|
export type RecursiveModelPredicateOperator<RT extends PersistentModel> = (
|
|
@@ -1201,7 +1201,7 @@ export type ModelPredicateAggregateExtender<RT extends PersistentModel> = (
|
|
|
1201
1201
|
|
|
1202
1202
|
export type ValuePredicate<
|
|
1203
1203
|
RT extends PersistentModel,
|
|
1204
|
-
MT extends MatchableTypes
|
|
1204
|
+
MT extends MatchableTypes,
|
|
1205
1205
|
> = {
|
|
1206
1206
|
[K in AllFieldOperators]: K extends 'between'
|
|
1207
1207
|
? (
|