@aws-amplify/datastore-storage-adapter 1.2.13 → 1.2.14-unstable.1

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 (77) hide show
  1. package/ExpoSQLiteAdapter/index.js +7 -0
  2. package/SQLiteAdapter/index.js +7 -0
  3. package/dist/aws-amplify-datastore-sqlite-adapter-expo.js +2502 -0
  4. package/dist/aws-amplify-datastore-sqlite-adapter-expo.js.map +1 -0
  5. package/dist/aws-amplify-datastore-sqlite-adapter-expo.min.js +2 -0
  6. package/dist/aws-amplify-datastore-sqlite-adapter-expo.min.js.map +1 -0
  7. package/dist/aws-amplify-datastore-storage-adapter.js +1179 -1151
  8. package/dist/aws-amplify-datastore-storage-adapter.js.map +1 -1
  9. package/dist/aws-amplify-datastore-storage-adapter.min.js +1 -1
  10. package/dist/aws-amplify-datastore-storage-adapter.min.js.map +1 -1
  11. package/lib/ExpoSQLiteAdapter/ExpoSQLiteAdapter.d.ts +3 -0
  12. package/lib/ExpoSQLiteAdapter/ExpoSQLiteAdapter.js +10 -0
  13. package/lib/ExpoSQLiteAdapter/ExpoSQLiteAdapter.js.map +1 -0
  14. package/lib/ExpoSQLiteAdapter/ExpoSQLiteDatabase.d.ts +17 -0
  15. package/lib/ExpoSQLiteAdapter/ExpoSQLiteDatabase.js +362 -0
  16. package/lib/ExpoSQLiteAdapter/ExpoSQLiteDatabase.js.map +1 -0
  17. package/lib/SQLiteAdapter/SQLiteAdapter.d.ts +3 -23
  18. package/lib/SQLiteAdapter/SQLiteAdapter.js +3 -582
  19. package/lib/SQLiteAdapter/SQLiteAdapter.js.map +1 -1
  20. package/lib/SQLiteAdapter/SQLiteDatabase.d.ts +8 -8
  21. package/lib/SQLiteAdapter/SQLiteDatabase.js +46 -42
  22. package/lib/SQLiteAdapter/SQLiteDatabase.js.map +1 -1
  23. package/lib/common/CommonSQLiteAdapter.d.ts +23 -0
  24. package/lib/common/CommonSQLiteAdapter.js +579 -0
  25. package/lib/common/CommonSQLiteAdapter.js.map +1 -0
  26. package/lib/{SQLiteAdapter → common}/SQLiteUtils.d.ts +3 -2
  27. package/lib/{SQLiteAdapter → common}/SQLiteUtils.js +26 -2
  28. package/lib/common/SQLiteUtils.js.map +1 -0
  29. package/lib/common/constants.d.ts +1 -0
  30. package/lib/common/constants.js +4 -0
  31. package/lib/common/constants.js.map +1 -0
  32. package/lib/common/types.d.ts +13 -0
  33. package/lib/common/types.js +3 -0
  34. package/lib/common/types.js.map +1 -0
  35. package/lib-esm/ExpoSQLiteAdapter/ExpoSQLiteAdapter.d.ts +3 -0
  36. package/lib-esm/ExpoSQLiteAdapter/ExpoSQLiteAdapter.js +5 -0
  37. package/lib-esm/ExpoSQLiteAdapter/ExpoSQLiteAdapter.js.map +1 -0
  38. package/lib-esm/ExpoSQLiteAdapter/ExpoSQLiteDatabase.d.ts +17 -0
  39. package/lib-esm/ExpoSQLiteAdapter/ExpoSQLiteDatabase.js +360 -0
  40. package/lib-esm/ExpoSQLiteAdapter/ExpoSQLiteDatabase.js.map +1 -0
  41. package/lib-esm/SQLiteAdapter/SQLiteAdapter.d.ts +3 -23
  42. package/lib-esm/SQLiteAdapter/SQLiteAdapter.js +3 -582
  43. package/lib-esm/SQLiteAdapter/SQLiteAdapter.js.map +1 -1
  44. package/lib-esm/SQLiteAdapter/SQLiteDatabase.d.ts +8 -8
  45. package/lib-esm/SQLiteAdapter/SQLiteDatabase.js +46 -42
  46. package/lib-esm/SQLiteAdapter/SQLiteDatabase.js.map +1 -1
  47. package/lib-esm/common/CommonSQLiteAdapter.d.ts +23 -0
  48. package/lib-esm/common/CommonSQLiteAdapter.js +577 -0
  49. package/lib-esm/common/CommonSQLiteAdapter.js.map +1 -0
  50. package/lib-esm/{SQLiteAdapter → common}/SQLiteUtils.d.ts +3 -2
  51. package/lib-esm/{SQLiteAdapter → common}/SQLiteUtils.js +24 -1
  52. package/lib-esm/common/SQLiteUtils.js.map +1 -0
  53. package/lib-esm/common/constants.d.ts +1 -0
  54. package/lib-esm/common/constants.js +2 -0
  55. package/lib-esm/common/constants.js.map +1 -0
  56. package/lib-esm/common/types.d.ts +13 -0
  57. package/lib-esm/common/types.js +1 -0
  58. package/lib-esm/common/types.js.map +1 -0
  59. package/package.json +7 -4
  60. package/src/ExpoSQLiteAdapter/ExpoSQLiteAdapter.ts +8 -0
  61. package/src/ExpoSQLiteAdapter/ExpoSQLiteDatabase.ts +282 -0
  62. package/src/SQLiteAdapter/SQLiteAdapter.ts +5 -475
  63. package/src/SQLiteAdapter/SQLiteDatabase.ts +49 -53
  64. package/src/common/CommonSQLiteAdapter.ts +478 -0
  65. package/src/{SQLiteAdapter → common}/SQLiteUtils.ts +32 -3
  66. package/src/common/constants.ts +1 -0
  67. package/src/common/types.ts +29 -0
  68. package/webpack.config.dev.js +2 -0
  69. package/lib/SQLiteAdapter/SQLiteUtils.js.map +0 -1
  70. package/lib/SQLiteAdapter/types.d.ts +0 -2
  71. package/lib/SQLiteAdapter/types.js +0 -28
  72. package/lib/SQLiteAdapter/types.js.map +0 -1
  73. package/lib-esm/SQLiteAdapter/SQLiteUtils.js.map +0 -1
  74. package/lib-esm/SQLiteAdapter/types.d.ts +0 -2
  75. package/lib-esm/SQLiteAdapter/types.js +0 -25
  76. package/lib-esm/SQLiteAdapter/types.js.map +0 -1
  77. package/src/SQLiteAdapter/types.ts +0 -31
@@ -0,0 +1,478 @@
1
+ import { ConsoleLogger as Logger } from '@aws-amplify/core';
2
+ import {
3
+ generateSchemaStatements,
4
+ queryByIdStatement,
5
+ modelUpdateStatement,
6
+ modelInsertStatement,
7
+ queryAllStatement,
8
+ queryOneStatement,
9
+ deleteByIdStatement,
10
+ deleteByPredicateStatement,
11
+ } from '../common/SQLiteUtils';
12
+
13
+ import {
14
+ StorageAdapter,
15
+ ModelInstanceCreator,
16
+ ModelPredicateCreator,
17
+ ModelSortPredicateCreator,
18
+ InternalSchema,
19
+ isPredicateObj,
20
+ ModelInstanceMetadata,
21
+ ModelPredicate,
22
+ NamespaceResolver,
23
+ OpType,
24
+ PaginationInput,
25
+ PersistentModel,
26
+ PersistentModelConstructor,
27
+ PredicateObject,
28
+ PredicatesGroup,
29
+ QueryOne,
30
+ utils,
31
+ } from '@aws-amplify/datastore';
32
+ import { CommonSQLiteDatabase, ParameterizedStatement } from './types';
33
+
34
+ const { traverseModel, validatePredicate, isModelConstructor } = utils;
35
+
36
+ const logger = new Logger('DataStore');
37
+
38
+ export class CommonSQLiteAdapter implements StorageAdapter {
39
+ private schema: InternalSchema;
40
+ private namespaceResolver: NamespaceResolver;
41
+ private modelInstanceCreator: ModelInstanceCreator;
42
+ private getModelConstructorByModelName: (
43
+ namsespaceName: string,
44
+ modelName: string
45
+ ) => PersistentModelConstructor<any>;
46
+ private db: CommonSQLiteDatabase;
47
+ private initPromise: Promise<void>;
48
+ private resolve: (value?: any) => void;
49
+ private reject: (value?: any) => void;
50
+
51
+ constructor(db: CommonSQLiteDatabase) {
52
+ this.db = db;
53
+ }
54
+
55
+ public async setUp(
56
+ theSchema: InternalSchema,
57
+ namespaceResolver: NamespaceResolver,
58
+ modelInstanceCreator: ModelInstanceCreator,
59
+ getModelConstructorByModelName: (
60
+ namsespaceName: string,
61
+ modelName: string
62
+ ) => PersistentModelConstructor<any>
63
+ ) {
64
+ if (!this.initPromise) {
65
+ this.initPromise = new Promise((res, rej) => {
66
+ this.resolve = res;
67
+ this.reject = rej;
68
+ });
69
+ } else {
70
+ await this.initPromise;
71
+ return;
72
+ }
73
+ this.schema = theSchema;
74
+ this.namespaceResolver = namespaceResolver;
75
+ this.modelInstanceCreator = modelInstanceCreator;
76
+ this.getModelConstructorByModelName = getModelConstructorByModelName;
77
+
78
+ try {
79
+ await this.db.init();
80
+ const statements = generateSchemaStatements(this.schema);
81
+ await this.db.createSchema(statements);
82
+
83
+ this.resolve();
84
+ } catch (error) {
85
+ this.reject(error);
86
+ }
87
+ }
88
+
89
+ async clear(): Promise<void> {
90
+ await this.db.clear();
91
+
92
+ this.initPromise = undefined;
93
+ }
94
+
95
+ async save<T extends PersistentModel>(
96
+ model: T,
97
+ condition?: ModelPredicate<T>
98
+ ): Promise<[T, OpType.INSERT | OpType.UPDATE][]> {
99
+ const modelConstructor = Object.getPrototypeOf(model)
100
+ .constructor as PersistentModelConstructor<T>;
101
+ const { name: tableName } = modelConstructor;
102
+ const connectedModels = traverseModel(
103
+ modelConstructor.name,
104
+ model,
105
+ this.schema.namespaces[this.namespaceResolver(modelConstructor)],
106
+ this.modelInstanceCreator,
107
+ this.getModelConstructorByModelName
108
+ );
109
+ const connectionStoreNames = Object.values(connectedModels).map(
110
+ ({ modelName, item, instance }) => {
111
+ return { modelName, item, instance };
112
+ }
113
+ );
114
+
115
+ const [queryStatement, params] = queryByIdStatement(model.id, tableName);
116
+
117
+ const fromDB = await this.db.get(queryStatement, params);
118
+
119
+ if (condition && fromDB) {
120
+ const predicates = ModelPredicateCreator.getPredicates(condition);
121
+ const { predicates: predicateObjs, type } = predicates;
122
+
123
+ const isValid = validatePredicate(fromDB, type, predicateObjs);
124
+
125
+ if (!isValid) {
126
+ const msg = 'Conditional update failed';
127
+ logger.error(msg, { model: fromDB, condition: predicateObjs });
128
+
129
+ throw new Error(msg);
130
+ }
131
+ }
132
+
133
+ const result: [T, OpType.INSERT | OpType.UPDATE][] = [];
134
+ const saveStatements = new Set<ParameterizedStatement>();
135
+
136
+ for await (const resItem of connectionStoreNames) {
137
+ const { modelName, item, instance } = resItem;
138
+ const { id } = item;
139
+
140
+ const [queryStatement, params] = queryByIdStatement(id, modelName);
141
+ const fromDB = await this.db.get(queryStatement, params);
142
+
143
+ const opType: OpType =
144
+ fromDB === undefined ? OpType.INSERT : OpType.UPDATE;
145
+
146
+ const saveStatement = fromDB
147
+ ? modelUpdateStatement(instance, modelName)
148
+ : modelInsertStatement(instance, modelName);
149
+
150
+ saveStatements.add(saveStatement);
151
+
152
+ result.push([instance, opType]);
153
+ }
154
+
155
+ await this.db.batchSave(saveStatements);
156
+
157
+ return result;
158
+ }
159
+
160
+ private async load<T>(
161
+ namespaceName: string,
162
+ srcModelName: string,
163
+ records: T[]
164
+ ): Promise<T[]> {
165
+ const namespace = this.schema.namespaces[namespaceName];
166
+ const relations = namespace.relationships[srcModelName].relationTypes;
167
+ const connectionTableNames = relations.map(({ modelName }) => modelName);
168
+
169
+ const modelConstructor = this.getModelConstructorByModelName(
170
+ namespaceName,
171
+ srcModelName
172
+ );
173
+
174
+ if (connectionTableNames.length === 0) {
175
+ return records.map(record =>
176
+ this.modelInstanceCreator(modelConstructor, record)
177
+ );
178
+ }
179
+
180
+ for await (const relation of relations) {
181
+ const {
182
+ fieldName,
183
+ modelName: tableName,
184
+ targetName,
185
+ relationType,
186
+ } = relation;
187
+
188
+ const modelConstructor = this.getModelConstructorByModelName(
189
+ namespaceName,
190
+ tableName
191
+ );
192
+
193
+ // TODO: use SQL JOIN instead
194
+ switch (relationType) {
195
+ case 'HAS_ONE':
196
+ for await (const recordItem of records) {
197
+ const getByfield = recordItem[targetName] ? targetName : fieldName;
198
+ if (!recordItem[getByfield]) break;
199
+
200
+ const [queryStatement, params] = queryByIdStatement(
201
+ recordItem[getByfield],
202
+ tableName
203
+ );
204
+
205
+ const connectionRecord = await this.db.get(queryStatement, params);
206
+
207
+ recordItem[fieldName] =
208
+ connectionRecord &&
209
+ this.modelInstanceCreator(modelConstructor, connectionRecord);
210
+ }
211
+
212
+ break;
213
+ case 'BELONGS_TO':
214
+ for await (const recordItem of records) {
215
+ if (recordItem[targetName]) {
216
+ const [queryStatement, params] = queryByIdStatement(
217
+ recordItem[targetName],
218
+ tableName
219
+ );
220
+ const connectionRecord = await this.db.get(
221
+ queryStatement,
222
+ params
223
+ );
224
+
225
+ recordItem[fieldName] =
226
+ connectionRecord &&
227
+ this.modelInstanceCreator(modelConstructor, connectionRecord);
228
+ delete recordItem[targetName];
229
+ }
230
+ }
231
+
232
+ break;
233
+ case 'HAS_MANY':
234
+ // TODO: Lazy loading
235
+ break;
236
+ default:
237
+ const _: never = relationType as never;
238
+ throw new Error(`invalid relation type ${relationType}`);
239
+ break;
240
+ }
241
+ }
242
+
243
+ return records.map(record =>
244
+ this.modelInstanceCreator(modelConstructor, record)
245
+ );
246
+ }
247
+
248
+ async query<T extends PersistentModel>(
249
+ modelConstructor: PersistentModelConstructor<T>,
250
+ predicate?: ModelPredicate<T>,
251
+ pagination?: PaginationInput<T>
252
+ ): Promise<T[]> {
253
+ const { name: tableName } = modelConstructor;
254
+ const namespaceName = this.namespaceResolver(modelConstructor);
255
+
256
+ const predicates =
257
+ predicate && ModelPredicateCreator.getPredicates(predicate);
258
+ const sortPredicates =
259
+ pagination &&
260
+ pagination.sort &&
261
+ ModelSortPredicateCreator.getPredicates(pagination.sort);
262
+ const limit = pagination && pagination.limit;
263
+ const page = limit && pagination.page;
264
+
265
+ const queryById = predicates && this.idFromPredicate(predicates);
266
+
267
+ const records: T[] = <T[]>await (async () => {
268
+ if (queryById) {
269
+ const record = await this.getById(tableName, queryById);
270
+ return record ? [record] : [];
271
+ }
272
+
273
+ const [queryStatement, params] = queryAllStatement(
274
+ tableName,
275
+ predicates,
276
+ sortPredicates,
277
+ limit,
278
+ page
279
+ );
280
+
281
+ return await this.db.getAll(queryStatement, params);
282
+ })();
283
+
284
+ return await this.load(namespaceName, modelConstructor.name, records);
285
+ }
286
+
287
+ private async getById<T extends PersistentModel>(
288
+ tableName: string,
289
+ id: string
290
+ ): Promise<T> {
291
+ const [queryStatement, params] = queryByIdStatement(id, tableName);
292
+ const record = await this.db.get<T>(queryStatement, params);
293
+
294
+ return record;
295
+ }
296
+
297
+ private idFromPredicate<T extends PersistentModel>(
298
+ predicates: PredicatesGroup<T>
299
+ ) {
300
+ const { predicates: predicateObjs } = predicates;
301
+ const idPredicate =
302
+ predicateObjs.length === 1 &&
303
+ (predicateObjs.find(
304
+ p => isPredicateObj(p) && p.field === 'id' && p.operator === 'eq'
305
+ ) as PredicateObject<T>);
306
+
307
+ return idPredicate && idPredicate.operand;
308
+ }
309
+
310
+ async queryOne<T extends PersistentModel>(
311
+ modelConstructor: PersistentModelConstructor<T>,
312
+ firstOrLast: QueryOne = QueryOne.FIRST
313
+ ): Promise<T | undefined> {
314
+ const { name: tableName } = modelConstructor;
315
+ const [queryStatement, params] = queryOneStatement(firstOrLast, tableName);
316
+
317
+ const result = await this.db.get<T>(queryStatement, params);
318
+
319
+ const modelInstance =
320
+ result && this.modelInstanceCreator(modelConstructor, result);
321
+
322
+ return modelInstance;
323
+ }
324
+
325
+ // Currently does not cascade
326
+ // TODO: use FKs in relations and have `ON DELETE CASCADE` set
327
+ // For Has Many and Has One relations to have SQL handle cascades automatically
328
+ async delete<T extends PersistentModel>(
329
+ modelOrModelConstructor: T | PersistentModelConstructor<T>,
330
+ condition?: ModelPredicate<T>
331
+ ): Promise<[T[], T[]]> {
332
+ if (isModelConstructor(modelOrModelConstructor)) {
333
+ const modelConstructor = modelOrModelConstructor;
334
+ const namespaceName = this.namespaceResolver(modelConstructor);
335
+ const { name: tableName } = modelConstructor;
336
+
337
+ const predicates =
338
+ condition && ModelPredicateCreator.getPredicates(condition);
339
+
340
+ const queryStatement = queryAllStatement(tableName, predicates);
341
+ const deleteStatement = deleteByPredicateStatement(tableName, predicates);
342
+
343
+ const models = await this.db.selectAndDelete(
344
+ queryStatement,
345
+ deleteStatement
346
+ );
347
+
348
+ const modelInstances = await this.load(
349
+ namespaceName,
350
+ modelConstructor.name,
351
+ models
352
+ );
353
+
354
+ return [modelInstances, modelInstances];
355
+ } else {
356
+ const model = modelOrModelConstructor as T;
357
+ const modelConstructor = Object.getPrototypeOf(model)
358
+ .constructor as PersistentModelConstructor<T>;
359
+ const { name: tableName } = modelConstructor;
360
+
361
+ if (condition) {
362
+ const [queryStatement, params] = queryByIdStatement(
363
+ model.id,
364
+ tableName
365
+ );
366
+
367
+ const fromDB = await this.db.get(queryStatement, params);
368
+
369
+ if (fromDB === undefined) {
370
+ const msg = 'Model instance not found in storage';
371
+ logger.warn(msg, { model });
372
+
373
+ return [[model], []];
374
+ }
375
+
376
+ const predicates = ModelPredicateCreator.getPredicates(condition);
377
+ const { predicates: predicateObjs, type } = predicates;
378
+
379
+ const isValid = validatePredicate(fromDB, type, predicateObjs);
380
+
381
+ if (!isValid) {
382
+ const msg = 'Conditional update failed';
383
+ logger.error(msg, { model: fromDB, condition: predicateObjs });
384
+
385
+ throw new Error(msg);
386
+ }
387
+
388
+ const [deleteStatement, deleteParams] = deleteByIdStatement(
389
+ model.id,
390
+ tableName
391
+ );
392
+ await this.db.save(deleteStatement, deleteParams);
393
+
394
+ return [[model], [model]];
395
+ } else {
396
+ const [deleteStatement, params] = deleteByIdStatement(
397
+ model.id,
398
+ tableName
399
+ );
400
+ await this.db.save(deleteStatement, params);
401
+
402
+ return [[model], [model]];
403
+ }
404
+ }
405
+ }
406
+
407
+ async batchSave<T extends PersistentModel>(
408
+ modelConstructor: PersistentModelConstructor<any>,
409
+ items: ModelInstanceMetadata[]
410
+ ): Promise<[T, OpType][]> {
411
+ const { name: tableName } = modelConstructor;
412
+ const result: [T, OpType][] = [];
413
+
414
+ const itemsToSave: T[] = [];
415
+ // To determine whether an item should result in an insert or update operation
416
+ // We first need to query the local DB on the item id
417
+ const queryStatements = new Set<ParameterizedStatement>();
418
+ // Deletes don't need to be queried first, because if the item doesn't exist,
419
+ // the delete operation will be a no-op
420
+ const deleteStatements = new Set<ParameterizedStatement>();
421
+ const saveStatements = new Set<ParameterizedStatement>();
422
+
423
+ for (const item of items) {
424
+ const connectedModels = traverseModel(
425
+ modelConstructor.name,
426
+ this.modelInstanceCreator(modelConstructor, item),
427
+ this.schema.namespaces[this.namespaceResolver(modelConstructor)],
428
+ this.modelInstanceCreator,
429
+ this.getModelConstructorByModelName
430
+ );
431
+
432
+ const { id, _deleted } = item;
433
+
434
+ const { instance } = connectedModels.find(
435
+ ({ instance }) => instance.id === id
436
+ );
437
+
438
+ if (_deleted) {
439
+ // create the delete statements right away
440
+ const deleteStatement = deleteByIdStatement(instance.id, tableName);
441
+ deleteStatements.add(deleteStatement);
442
+ result.push([<T>(<unknown>item), OpType.DELETE]);
443
+ } else {
444
+ // query statements for the saves at first
445
+ const queryStatement = queryByIdStatement(id, tableName);
446
+ queryStatements.add(queryStatement);
447
+ // combination of insert and update items
448
+ itemsToSave.push(instance);
449
+ }
450
+ }
451
+
452
+ // returns the query results for each of the save items
453
+ const queryResponses = await this.db.batchQuery(queryStatements);
454
+
455
+ queryResponses.forEach((response, idx) => {
456
+ if (response === undefined) {
457
+ const insertStatement = modelInsertStatement(
458
+ itemsToSave[idx],
459
+ tableName
460
+ );
461
+ saveStatements.add(insertStatement);
462
+ result.push([<T>(<unknown>itemsToSave[idx]), OpType.INSERT]);
463
+ } else {
464
+ const updateStatement = modelUpdateStatement(
465
+ itemsToSave[idx],
466
+ tableName
467
+ );
468
+ saveStatements.add(updateStatement);
469
+ result.push([<T>(<unknown>itemsToSave[idx]), OpType.UPDATE]);
470
+ }
471
+ });
472
+
473
+ // perform all of the insert/update/delete operations in a single transaction
474
+ await this.db.batchSave(saveStatements, deleteStatements);
475
+
476
+ return result;
477
+ }
478
+ }
@@ -16,14 +16,13 @@ import {
16
16
  ModelAttributeAuth,
17
17
  ModelAuthRule,
18
18
  utils,
19
+ GraphQLScalarType,
19
20
  } from '@aws-amplify/datastore';
20
21
 
21
- import { getSQLiteType } from './types';
22
+ import { ParameterizedStatement } from './types';
22
23
 
23
24
  const { USER, isNonModelConstructor, isModelConstructor } = utils;
24
25
 
25
- export type ParameterizedStatement = [string, any[]];
26
-
27
26
  const keysFromModel = model =>
28
27
  Object.keys(model)
29
28
  .map(k => `"${k}"`)
@@ -72,6 +71,36 @@ function prepareValueForDML(value: unknown): any {
72
71
  return `${value}`;
73
72
  }
74
73
 
74
+ export function getSQLiteType(
75
+ scalar: keyof Omit<
76
+ typeof GraphQLScalarType,
77
+ 'getJSType' | 'getValidationFunction' | 'getSQLiteType'
78
+ >
79
+ ): 'TEXT' | 'INTEGER' | 'REAL' | 'BLOB' {
80
+ switch (scalar) {
81
+ case 'Boolean':
82
+ case 'Int':
83
+ case 'AWSTimestamp':
84
+ return 'INTEGER';
85
+ case 'ID':
86
+ case 'String':
87
+ case 'AWSDate':
88
+ case 'AWSTime':
89
+ case 'AWSDateTime':
90
+ case 'AWSEmail':
91
+ case 'AWSJSON':
92
+ case 'AWSURL':
93
+ case 'AWSPhone':
94
+ case 'AWSIPAddress':
95
+ return 'TEXT';
96
+ case 'Float':
97
+ return 'REAL';
98
+ default:
99
+ const _: never = scalar as never;
100
+ throw new Error(`unknown type ${scalar as string}`);
101
+ }
102
+ }
103
+
75
104
  export function generateSchemaStatements(schema: InternalSchema): string[] {
76
105
  return Object.keys(schema.namespaces).flatMap(namespaceName => {
77
106
  const namespace = schema.namespaces[namespaceName];
@@ -0,0 +1 @@
1
+ export const DB_NAME = 'AmplifyDatastore';
@@ -0,0 +1,29 @@
1
+ import { PersistentModel } from '@aws-amplify/datastore';
2
+
3
+ export interface CommonSQLiteDatabase {
4
+ init(): Promise<void>;
5
+ createSchema(statements: string[]): Promise<void>;
6
+ clear(): Promise<void>;
7
+ get<T extends PersistentModel>(
8
+ statement: string,
9
+ params: (string | number)[]
10
+ ): Promise<T>;
11
+ getAll<T extends PersistentModel>(
12
+ statement: string,
13
+ params: (string | number)[]
14
+ ): Promise<T[]>;
15
+ save(statement: string, params: (string | number)[]): Promise<void>;
16
+ batchQuery<T = any>(
17
+ queryParameterizedStatement: Set<ParameterizedStatement>
18
+ ): Promise<T[]>;
19
+ batchSave(
20
+ saveParameterizedStatements: Set<ParameterizedStatement>,
21
+ deleteParameterizedStatements?: Set<ParameterizedStatement>
22
+ ): Promise<void>;
23
+ selectAndDelete<T = any>(
24
+ queryParameterizedStatement: ParameterizedStatement,
25
+ deleteParameterizedStatement: ParameterizedStatement
26
+ ): Promise<T[]>;
27
+ }
28
+
29
+ export type ParameterizedStatement = [string, any[]];
@@ -2,5 +2,7 @@ var config = require('./webpack.config.js');
2
2
 
3
3
  var entry = {
4
4
  'aws-amplify-datastore-storage-adapter': './lib-esm/index.js',
5
+ 'aws-amplify-datastore-sqlite-adapter-expo':
6
+ './lib-esm/ExpoSQLiteAdapter/ExpoSQLiteAdapter.js',
5
7
  };
6
8
  module.exports = Object.assign(config, { entry, mode: 'development' });
@@ -1 +0,0 @@
1
- {"version":3,"file":"SQLiteUtils.js","sourceRoot":"","sources":["../../src/SQLiteAdapter/SQLiteUtils.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import { GraphQLScalarType } from '@aws-amplify/datastore';
2
- export declare function getSQLiteType(scalar: keyof Omit<typeof GraphQLScalarType, 'getJSType' | 'getValidationFunction' | 'getSQLiteType'>): 'TEXT' | 'INTEGER' | 'REAL' | 'BLOB';
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function getSQLiteType(scalar) {
4
- switch (scalar) {
5
- case 'Boolean':
6
- case 'Int':
7
- case 'AWSTimestamp':
8
- return 'INTEGER';
9
- case 'ID':
10
- case 'String':
11
- case 'AWSDate':
12
- case 'AWSTime':
13
- case 'AWSDateTime':
14
- case 'AWSEmail':
15
- case 'AWSJSON':
16
- case 'AWSURL':
17
- case 'AWSPhone':
18
- case 'AWSIPAddress':
19
- return 'TEXT';
20
- case 'Float':
21
- return 'REAL';
22
- default:
23
- var _ = scalar;
24
- throw new Error("unknown type " + scalar);
25
- }
26
- }
27
- exports.getSQLiteType = getSQLiteType;
28
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/SQLiteAdapter/types.ts"],"names":[],"mappings":";;AAEA,SAAgB,aAAa,CAC5B,MAGC;IAED,QAAQ,MAAM,EAAE;QACf,KAAK,SAAS,CAAC;QACf,KAAK,KAAK,CAAC;QACX,KAAK,cAAc;YAClB,OAAO,SAAS,CAAC;QAClB,KAAK,IAAI,CAAC;QACV,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS,CAAC;QACf,KAAK,SAAS,CAAC;QACf,KAAK,aAAa,CAAC;QACnB,KAAK,UAAU,CAAC;QAChB,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ,CAAC;QACd,KAAK,UAAU,CAAC;QAChB,KAAK,cAAc;YAClB,OAAO,MAAM,CAAC;QACf,KAAK,OAAO;YACX,OAAO,MAAM,CAAC;QACf;YACC,IAAM,CAAC,GAAU,MAAe,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,kBAAgB,MAAkB,CAAC,CAAC;KACrD;AACF,CAAC;AA5BD,sCA4BC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"SQLiteUtils.js","sourceRoot":"","sources":["../../src/SQLiteAdapter/SQLiteUtils.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import { GraphQLScalarType } from '@aws-amplify/datastore';
2
- export declare function getSQLiteType(scalar: keyof Omit<typeof GraphQLScalarType, 'getJSType' | 'getValidationFunction' | 'getSQLiteType'>): 'TEXT' | 'INTEGER' | 'REAL' | 'BLOB';
@@ -1,25 +0,0 @@
1
- export function getSQLiteType(scalar) {
2
- switch (scalar) {
3
- case 'Boolean':
4
- case 'Int':
5
- case 'AWSTimestamp':
6
- return 'INTEGER';
7
- case 'ID':
8
- case 'String':
9
- case 'AWSDate':
10
- case 'AWSTime':
11
- case 'AWSDateTime':
12
- case 'AWSEmail':
13
- case 'AWSJSON':
14
- case 'AWSURL':
15
- case 'AWSPhone':
16
- case 'AWSIPAddress':
17
- return 'TEXT';
18
- case 'Float':
19
- return 'REAL';
20
- default:
21
- var _ = scalar;
22
- throw new Error("unknown type " + scalar);
23
- }
24
- }
25
- //# sourceMappingURL=types.js.map