@aws-amplify/datastore 3.12.6-next.20 → 3.12.6-next.32

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 (144) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/lib/authModeStrategies/multiAuthStrategy.js +13 -2
  3. package/lib/authModeStrategies/multiAuthStrategy.js.map +1 -1
  4. package/lib/datastore/datastore.js +648 -344
  5. package/lib/datastore/datastore.js.map +1 -1
  6. package/lib/predicates/index.js +12 -2
  7. package/lib/predicates/index.js.map +1 -1
  8. package/lib/storage/adapter/AsyncStorageAdapter.js +354 -203
  9. package/lib/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  10. package/lib/storage/adapter/AsyncStorageDatabase.js +65 -28
  11. package/lib/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  12. package/lib/storage/adapter/IndexedDBAdapter.js +444 -271
  13. package/lib/storage/adapter/IndexedDBAdapter.js.map +1 -1
  14. package/lib/storage/storage.js +93 -28
  15. package/lib/storage/storage.js.map +1 -1
  16. package/lib/sync/datastoreConnectivity.js +9 -0
  17. package/lib/sync/datastoreConnectivity.js.map +1 -1
  18. package/lib/sync/index.js +522 -397
  19. package/lib/sync/index.js.map +1 -1
  20. package/lib/sync/merger.js +13 -6
  21. package/lib/sync/merger.js.map +1 -1
  22. package/lib/sync/outbox.js +77 -71
  23. package/lib/sync/outbox.js.map +1 -1
  24. package/lib/sync/processors/mutation.js +269 -209
  25. package/lib/sync/processors/mutation.js.map +1 -1
  26. package/lib/sync/processors/subscription.js +213 -178
  27. package/lib/sync/processors/subscription.js.map +1 -1
  28. package/lib/sync/processors/sync.js +126 -121
  29. package/lib/sync/processors/sync.js.map +1 -1
  30. package/lib/sync/utils.js +43 -8
  31. package/lib/sync/utils.js.map +1 -1
  32. package/lib/types.js +10 -1
  33. package/lib/types.js.map +1 -1
  34. package/lib/util.js +419 -166
  35. package/lib/util.js.map +1 -1
  36. package/lib-esm/authModeStrategies/multiAuthStrategy.d.ts +11 -0
  37. package/lib-esm/authModeStrategies/multiAuthStrategy.js +12 -1
  38. package/lib-esm/authModeStrategies/multiAuthStrategy.js.map +1 -1
  39. package/lib-esm/datastore/datastore.d.ts +107 -17
  40. package/lib-esm/datastore/datastore.js +648 -344
  41. package/lib-esm/datastore/datastore.js.map +1 -1
  42. package/lib-esm/index.d.ts +3 -19
  43. package/lib-esm/predicates/index.d.ts +3 -2
  44. package/lib-esm/predicates/index.js +13 -3
  45. package/lib-esm/predicates/index.js.map +1 -1
  46. package/lib-esm/storage/adapter/AsyncStorageAdapter.d.ts +4 -3
  47. package/lib-esm/storage/adapter/AsyncStorageAdapter.js +355 -204
  48. package/lib-esm/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  49. package/lib-esm/storage/adapter/AsyncStorageDatabase.d.ts +14 -4
  50. package/lib-esm/storage/adapter/AsyncStorageDatabase.js +66 -29
  51. package/lib-esm/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  52. package/lib-esm/storage/adapter/IndexedDBAdapter.d.ts +26 -4
  53. package/lib-esm/storage/adapter/IndexedDBAdapter.js +445 -272
  54. package/lib-esm/storage/adapter/IndexedDBAdapter.js.map +1 -1
  55. package/lib-esm/storage/adapter/index.d.ts +1 -1
  56. package/lib-esm/storage/storage.d.ts +1 -1
  57. package/lib-esm/storage/storage.js +93 -28
  58. package/lib-esm/storage/storage.js.map +1 -1
  59. package/lib-esm/sync/datastoreConnectivity.d.ts +1 -0
  60. package/lib-esm/sync/datastoreConnectivity.js +10 -1
  61. package/lib-esm/sync/datastoreConnectivity.js.map +1 -1
  62. package/lib-esm/sync/index.d.ts +31 -5
  63. package/lib-esm/sync/index.js +524 -399
  64. package/lib-esm/sync/index.js.map +1 -1
  65. package/lib-esm/sync/merger.d.ts +9 -3
  66. package/lib-esm/sync/merger.js +13 -6
  67. package/lib-esm/sync/merger.js.map +1 -1
  68. package/lib-esm/sync/outbox.d.ts +2 -2
  69. package/lib-esm/sync/outbox.js +78 -72
  70. package/lib-esm/sync/outbox.js.map +1 -1
  71. package/lib-esm/sync/processors/mutation.d.ts +2 -0
  72. package/lib-esm/sync/processors/mutation.js +270 -210
  73. package/lib-esm/sync/processors/mutation.js.map +1 -1
  74. package/lib-esm/sync/processors/subscription.d.ts +2 -0
  75. package/lib-esm/sync/processors/subscription.js +213 -178
  76. package/lib-esm/sync/processors/subscription.js.map +1 -1
  77. package/lib-esm/sync/processors/sync.d.ts +2 -1
  78. package/lib-esm/sync/processors/sync.js +126 -121
  79. package/lib-esm/sync/processors/sync.js.map +1 -1
  80. package/lib-esm/sync/utils.d.ts +3 -2
  81. package/lib-esm/sync/utils.js +45 -11
  82. package/lib-esm/sync/utils.js.map +1 -1
  83. package/lib-esm/types.d.ts +65 -26
  84. package/lib-esm/types.js +9 -2
  85. package/lib-esm/types.js.map +1 -1
  86. package/lib-esm/util.d.ts +67 -24
  87. package/lib-esm/util.js +419 -166
  88. package/lib-esm/util.js.map +1 -1
  89. package/package.json +13 -7
  90. package/src/authModeStrategies/multiAuthStrategy.ts +12 -1
  91. package/src/datastore/datastore.ts +798 -397
  92. package/src/predicates/index.ts +32 -10
  93. package/src/storage/adapter/AsyncStorageAdapter.ts +309 -93
  94. package/src/storage/adapter/AsyncStorageDatabase.ts +74 -26
  95. package/src/storage/adapter/IndexedDBAdapter.ts +358 -134
  96. package/src/storage/adapter/index.ts +1 -1
  97. package/src/storage/storage.ts +69 -22
  98. package/src/sync/datastoreConnectivity.ts +6 -0
  99. package/src/sync/index.ts +521 -412
  100. package/src/sync/merger.ts +20 -4
  101. package/src/sync/outbox.ts +22 -9
  102. package/src/sync/processors/mutation.ts +188 -150
  103. package/src/sync/processors/subscription.ts +289 -253
  104. package/src/sync/processors/sync.ts +151 -138
  105. package/src/sync/utils.ts +67 -12
  106. package/src/types.ts +182 -30
  107. package/src/util.ts +505 -176
  108. package/build.js +0 -5
  109. package/dist/aws-amplify-datastore.js +0 -83311
  110. package/dist/aws-amplify-datastore.js.map +0 -1
  111. package/dist/aws-amplify-datastore.min.js +0 -168
  112. package/dist/aws-amplify-datastore.min.js.map +0 -1
  113. package/index.js +0 -7
  114. package/lib/authModeStrategies/defaultAuthStrategy.d.ts +0 -2
  115. package/lib/authModeStrategies/index.d.ts +0 -2
  116. package/lib/authModeStrategies/multiAuthStrategy.d.ts +0 -2
  117. package/lib/datastore/datastore.d.ts +0 -66
  118. package/lib/index.d.ts +0 -31
  119. package/lib/predicates/index.d.ts +0 -15
  120. package/lib/predicates/sort.d.ts +0 -8
  121. package/lib/ssr/index.d.ts +0 -3
  122. package/lib/storage/adapter/AsyncStorageAdapter.d.ts +0 -40
  123. package/lib/storage/adapter/AsyncStorageDatabase.d.ts +0 -29
  124. package/lib/storage/adapter/InMemoryStore.d.ts +0 -11
  125. package/lib/storage/adapter/InMemoryStore.native.d.ts +0 -1
  126. package/lib/storage/adapter/IndexedDBAdapter.d.ts +0 -37
  127. package/lib/storage/adapter/getDefaultAdapter/index.d.ts +0 -3
  128. package/lib/storage/adapter/getDefaultAdapter/index.native.d.ts +0 -3
  129. package/lib/storage/adapter/index.d.ts +0 -9
  130. package/lib/storage/storage.d.ts +0 -49
  131. package/lib/sync/datastoreConnectivity.d.ts +0 -15
  132. package/lib/sync/datastoreReachability/index.d.ts +0 -3
  133. package/lib/sync/datastoreReachability/index.native.d.ts +0 -3
  134. package/lib/sync/index.d.ts +0 -63
  135. package/lib/sync/merger.d.ts +0 -11
  136. package/lib/sync/outbox.d.ts +0 -27
  137. package/lib/sync/processors/errorMaps.d.ts +0 -17
  138. package/lib/sync/processors/mutation.d.ts +0 -56
  139. package/lib/sync/processors/subscription.d.ts +0 -31
  140. package/lib/sync/processors/sync.d.ts +0 -27
  141. package/lib/sync/utils.d.ts +0 -41
  142. package/lib/types.d.ts +0 -462
  143. package/lib/util.d.ts +0 -113
  144. package/webpack.config.dev.js +0 -6
package/CHANGELOG.md CHANGED
@@ -3,6 +3,64 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [3.14.2](https://github.com/aws-amplify/amplify-js/compare/@aws-amplify/datastore@3.14.1...@aws-amplify/datastore@3.14.2) (2022-10-26)
7
+
8
+ **Note:** Version bump only for package @aws-amplify/datastore
9
+
10
+
11
+
12
+
13
+
14
+ ## [3.14.1](https://github.com/aws-amplify/amplify-js/compare/@aws-amplify/datastore@3.14.0...@aws-amplify/datastore@3.14.1) (2022-10-25)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * **@aws-amplify/datastore:** introduce "settlement" guarantees to stop() and clear() ([#10450](https://github.com/aws-amplify/amplify-js/issues/10450)) ([16c535b](https://github.com/aws-amplify/amplify-js/commit/16c535beda9386a027c2805f29a359fbeb8bac15)), closes [#10449](https://github.com/aws-amplify/amplify-js/issues/10449)
20
+ * **datastore:** CPK on Safari ([#10527](https://github.com/aws-amplify/amplify-js/issues/10527)) ([7a2f3ec](https://github.com/aws-amplify/amplify-js/commit/7a2f3ecf0fda83f087b1c2ce650f4b5f00214dbe))
21
+
22
+
23
+
24
+
25
+
26
+ # [3.14.0](https://github.com/aws-amplify/amplify-js/compare/@aws-amplify/datastore@3.13.0...@aws-amplify/datastore@3.14.0) (2022-10-14)
27
+
28
+
29
+ ### Bug Fixes
30
+
31
+ * **datastore:** unblock vite build after CPK changes ([#10478](https://github.com/aws-amplify/amplify-js/issues/10478)) ([42ae8de](https://github.com/aws-amplify/amplify-js/commit/42ae8de62f53e7d81363c0dd676967454271259a))
32
+
33
+
34
+ ### Features
35
+
36
+ * **datastore:** allow sync query to complete when non-applicable data present ([#10471](https://github.com/aws-amplify/amplify-js/issues/10471)) ([f8e8ff4](https://github.com/aws-amplify/amplify-js/commit/f8e8ff4c1a59d600b96944e5963dfa56a44af035))
37
+
38
+
39
+
40
+
41
+
42
+ # [3.13.0](https://github.com/aws-amplify/amplify-js/compare/@aws-amplify/datastore@3.12.12...@aws-amplify/datastore@3.13.0) (2022-10-14)
43
+
44
+
45
+ ### Bug Fixes
46
+
47
+ * validate non models when using object literal ([#10417](https://github.com/aws-amplify/amplify-js/issues/10417)) ([b6f6c81](https://github.com/aws-amplify/amplify-js/commit/b6f6c813f80f951f21f986411928c0ddbd1c6b6c))
48
+ * **@aws-amplify/datastore:** introduce "settlement" guarantees to stop() and clear() ([#10055](https://github.com/aws-amplify/amplify-js/issues/10055)) ([c64d7d6](https://github.com/aws-amplify/amplify-js/commit/c64d7d6284bc7b41a5a65b4b47d35ea274aed6b3))
49
+
50
+
51
+ ### Features
52
+
53
+ * **datastore:** custom pk support ([66bfe31](https://github.com/aws-amplify/amplify-js/commit/66bfe312f300fd6ca1bc756ab01690d36f337af9))
54
+
55
+
56
+ ### Reverts
57
+
58
+ * "fix(@aws-amplify/datastore): introduce "settlement" guarantees to stop() and clear()" ([#10449](https://github.com/aws-amplify/amplify-js/issues/10449)) ([d726bcc](https://github.com/aws-amplify/amplify-js/commit/d726bccca9712b8f43bc273052f970f8f931dd8c)), closes [aws-amplify/amplify-js#10055](https://github.com/aws-amplify/amplify-js/issues/10055)
59
+
60
+
61
+
62
+
63
+
6
64
  ## [3.12.12](https://github.com/aws-amplify/amplify-js/compare/@aws-amplify/datastore@3.12.10...@aws-amplify/datastore@3.12.12) (2022-09-30)
7
65
 
8
66
  **Note:** Version bump only for package @aws-amplify/datastore
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  var tslib_1 = require("tslib");
4
- var auth_1 = tslib_1.__importDefault(require("@aws-amplify/auth"));
4
+ var auth_1 = require("@aws-amplify/auth");
5
5
  var api_graphql_1 = require("@aws-amplify/api-graphql");
6
6
  var types_1 = require("../types");
7
7
  function getProviderFromRule(rule) {
@@ -95,6 +95,17 @@ function getAuthRules(_a) {
95
95
  });
96
96
  return Array.from(authModes);
97
97
  }
98
+ /**
99
+ * Returns an array of auth modes to try based on the schema, model, and
100
+ * authenticated user (or lack thereof). Rules are sourced from `getAuthRules`
101
+ * and returned in the order they ought to be attempted.
102
+ *
103
+ * @see sortAuthRulesWithPriority
104
+ * @see getAuthRules
105
+ *
106
+ * @param param0 The `{schema, modelName}` to inspect.
107
+ * @returns A sorted array of auth modes to attempt.
108
+ */
98
109
  exports.multiAuthStrategy = function (amplifyContext) {
99
110
  return function (_a) {
100
111
  var schema = _a.schema, modelName = _a.modelName;
@@ -104,7 +115,7 @@ exports.multiAuthStrategy = function (amplifyContext) {
104
115
  return tslib_1.__generator(this, function (_c) {
105
116
  switch (_c.label) {
106
117
  case 0:
107
- amplifyContext.Auth = amplifyContext.Auth || auth_1.default;
118
+ amplifyContext.Auth = amplifyContext.Auth || auth_1.Auth;
108
119
  _c.label = 1;
109
120
  case 1:
110
121
  _c.trys.push([1, 3, , 4]);
@@ -1 +1 @@
1
- {"version":3,"file":"multiAuthStrategy.js","sourceRoot":"","sources":["../../src/authModeStrategies/multiAuthStrategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multiAuthStrategy.js","sourceRoot":"","sources":["../../src/authModeStrategies/multiAuthStrategy.ts"],"names":[],"mappings":"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"}