@gomomento/sdk-core 1.12.8

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 (184) hide show
  1. package/dist/src/auth/credential-provider.d.ts +83 -0
  2. package/dist/src/auth/credential-provider.js +82 -0
  3. package/dist/src/auth/index.d.ts +1 -0
  4. package/dist/src/auth/index.js +18 -0
  5. package/dist/src/config/logging/default-momento-logger.d.ts +24 -0
  6. package/dist/src/config/logging/default-momento-logger.js +69 -0
  7. package/dist/src/config/logging/index.d.ts +3 -0
  8. package/dist/src/config/logging/index.js +20 -0
  9. package/dist/src/config/logging/momento-logger.d.ts +10 -0
  10. package/dist/src/config/logging/momento-logger.js +3 -0
  11. package/dist/src/config/logging/noop-momento-logger.d.ts +11 -0
  12. package/dist/src/config/logging/noop-momento-logger.js +34 -0
  13. package/dist/src/config/transport/grpc-configuration.d.ts +41 -0
  14. package/dist/src/config/transport/grpc-configuration.js +3 -0
  15. package/dist/src/config/transport/index.d.ts +2 -0
  16. package/dist/src/config/transport/index.js +19 -0
  17. package/dist/src/config/transport/transport-strategy.d.ts +77 -0
  18. package/dist/src/config/transport/transport-strategy.js +60 -0
  19. package/dist/src/errors/error-utils.d.ts +2 -0
  20. package/dist/src/errors/error-utils.js +12 -0
  21. package/dist/src/errors/errors.d.ts +140 -0
  22. package/dist/src/errors/errors.js +229 -0
  23. package/dist/src/errors/index.d.ts +2 -0
  24. package/dist/src/errors/index.js +19 -0
  25. package/dist/src/index.d.ts +57 -0
  26. package/dist/src/index.js +137 -0
  27. package/dist/src/internal/clients/auth/AbstractAuthClient.d.ts +10 -0
  28. package/dist/src/internal/clients/auth/AbstractAuthClient.js +13 -0
  29. package/dist/src/internal/clients/auth/IAuthClient.d.ts +4 -0
  30. package/dist/src/internal/clients/auth/IAuthClient.js +3 -0
  31. package/dist/src/internal/clients/auth/index.d.ts +2 -0
  32. package/dist/src/internal/clients/auth/index.js +19 -0
  33. package/dist/src/internal/clients/cache/AbstractCacheClient.d.ts +638 -0
  34. package/dist/src/internal/clients/cache/AbstractCacheClient.js +870 -0
  35. package/dist/src/internal/clients/cache/ICacheClient.d.ts +45 -0
  36. package/dist/src/internal/clients/cache/ICacheClient.js +3 -0
  37. package/dist/src/internal/clients/cache/IControlClient.d.ts +7 -0
  38. package/dist/src/internal/clients/cache/IControlClient.js +3 -0
  39. package/dist/src/internal/clients/cache/IDataClient.d.ts +29 -0
  40. package/dist/src/internal/clients/cache/IDataClient.js +3 -0
  41. package/dist/src/internal/clients/cache/index.d.ts +4 -0
  42. package/dist/src/internal/clients/cache/index.js +21 -0
  43. package/dist/src/internal/clients/index.d.ts +3 -0
  44. package/dist/src/internal/clients/index.js +20 -0
  45. package/dist/src/internal/clients/ping/AbstractPingClient.d.ts +25 -0
  46. package/dist/src/internal/clients/ping/AbstractPingClient.js +29 -0
  47. package/dist/src/internal/clients/ping/IPingClient.d.ts +3 -0
  48. package/dist/src/internal/clients/ping/IPingClient.js +3 -0
  49. package/dist/src/internal/clients/ping/index.d.ts +2 -0
  50. package/dist/src/internal/clients/ping/index.js +19 -0
  51. package/dist/src/internal/subscription-state.d.ts +15 -0
  52. package/dist/src/internal/subscription-state.js +38 -0
  53. package/dist/src/internal/utils/auth.d.ts +25 -0
  54. package/dist/src/internal/utils/auth.js +50 -0
  55. package/dist/src/internal/utils/collections.d.ts +1 -0
  56. package/dist/src/internal/utils/collections.js +8 -0
  57. package/dist/src/internal/utils/display.d.ts +2 -0
  58. package/dist/src/internal/utils/display.js +30 -0
  59. package/dist/src/internal/utils/index.d.ts +7 -0
  60. package/dist/src/internal/utils/index.js +24 -0
  61. package/dist/src/internal/utils/object.d.ts +1 -0
  62. package/dist/src/internal/utils/object.js +8 -0
  63. package/dist/src/internal/utils/sleep.d.ts +1 -0
  64. package/dist/src/internal/utils/sleep.js +6 -0
  65. package/dist/src/internal/utils/string.d.ts +2 -0
  66. package/dist/src/internal/utils/string.js +17 -0
  67. package/dist/src/internal/utils/validators.d.ts +13 -0
  68. package/dist/src/internal/utils/validators.js +105 -0
  69. package/dist/src/internal/vendor/printf/README.md +31 -0
  70. package/dist/src/internal/vendor/printf/printf.d.ts +9 -0
  71. package/dist/src/internal/vendor/printf/printf.js +478 -0
  72. package/dist/src/messages/cache-info.d.ts +5 -0
  73. package/dist/src/messages/cache-info.js +13 -0
  74. package/dist/src/messages/responses/cache-delete.d.ts +61 -0
  75. package/dist/src/messages/responses/cache-delete.js +54 -0
  76. package/dist/src/messages/responses/cache-dictionary-fetch.d.ts +120 -0
  77. package/dist/src/messages/responses/cache-dictionary-fetch.js +162 -0
  78. package/dist/src/messages/responses/cache-dictionary-get-field.d.ts +123 -0
  79. package/dist/src/messages/responses/cache-dictionary-get-field.js +143 -0
  80. package/dist/src/messages/responses/cache-dictionary-get-fields.d.ts +122 -0
  81. package/dist/src/messages/responses/cache-dictionary-get-fields.js +173 -0
  82. package/dist/src/messages/responses/cache-dictionary-increment.d.ts +69 -0
  83. package/dist/src/messages/responses/cache-dictionary-increment.js +68 -0
  84. package/dist/src/messages/responses/cache-dictionary-remove-field.d.ts +61 -0
  85. package/dist/src/messages/responses/cache-dictionary-remove-field.js +54 -0
  86. package/dist/src/messages/responses/cache-dictionary-remove-fields.d.ts +61 -0
  87. package/dist/src/messages/responses/cache-dictionary-remove-fields.js +54 -0
  88. package/dist/src/messages/responses/cache-dictionary-set-field.d.ts +61 -0
  89. package/dist/src/messages/responses/cache-dictionary-set-field.js +54 -0
  90. package/dist/src/messages/responses/cache-dictionary-set-fields.d.ts +61 -0
  91. package/dist/src/messages/responses/cache-dictionary-set-fields.js +54 -0
  92. package/dist/src/messages/responses/cache-flush.d.ts +61 -0
  93. package/dist/src/messages/responses/cache-flush.js +54 -0
  94. package/dist/src/messages/responses/cache-get.d.ts +86 -0
  95. package/dist/src/messages/responses/cache-get.js +88 -0
  96. package/dist/src/messages/responses/cache-increment.d.ts +69 -0
  97. package/dist/src/messages/responses/cache-increment.js +68 -0
  98. package/dist/src/messages/responses/cache-list-concatenate-back.d.ts +69 -0
  99. package/dist/src/messages/responses/cache-list-concatenate-back.js +68 -0
  100. package/dist/src/messages/responses/cache-list-concatenate-front.d.ts +69 -0
  101. package/dist/src/messages/responses/cache-list-concatenate-front.js +68 -0
  102. package/dist/src/messages/responses/cache-list-fetch.d.ts +92 -0
  103. package/dist/src/messages/responses/cache-list-fetch.js +96 -0
  104. package/dist/src/messages/responses/cache-list-length.d.ts +84 -0
  105. package/dist/src/messages/responses/cache-list-length.js +78 -0
  106. package/dist/src/messages/responses/cache-list-pop-back.d.ts +86 -0
  107. package/dist/src/messages/responses/cache-list-pop-back.js +88 -0
  108. package/dist/src/messages/responses/cache-list-pop-front.d.ts +86 -0
  109. package/dist/src/messages/responses/cache-list-pop-front.js +88 -0
  110. package/dist/src/messages/responses/cache-list-push-back.d.ts +69 -0
  111. package/dist/src/messages/responses/cache-list-push-back.js +68 -0
  112. package/dist/src/messages/responses/cache-list-push-front.d.ts +69 -0
  113. package/dist/src/messages/responses/cache-list-push-front.js +68 -0
  114. package/dist/src/messages/responses/cache-list-remove-value.d.ts +61 -0
  115. package/dist/src/messages/responses/cache-list-remove-value.js +54 -0
  116. package/dist/src/messages/responses/cache-list-retain.d.ts +61 -0
  117. package/dist/src/messages/responses/cache-list-retain.js +54 -0
  118. package/dist/src/messages/responses/cache-set-add-element.d.ts +71 -0
  119. package/dist/src/messages/responses/cache-set-add-element.js +54 -0
  120. package/dist/src/messages/responses/cache-set-add-elements.d.ts +65 -0
  121. package/dist/src/messages/responses/cache-set-add-elements.js +61 -0
  122. package/dist/src/messages/responses/cache-set-fetch.d.ts +111 -0
  123. package/dist/src/messages/responses/cache-set-fetch.js +121 -0
  124. package/dist/src/messages/responses/cache-set-if-not-exists.d.ts +74 -0
  125. package/dist/src/messages/responses/cache-set-if-not-exists.js +63 -0
  126. package/dist/src/messages/responses/cache-set-remove-element.d.ts +61 -0
  127. package/dist/src/messages/responses/cache-set-remove-element.js +54 -0
  128. package/dist/src/messages/responses/cache-set-remove-elements.d.ts +65 -0
  129. package/dist/src/messages/responses/cache-set-remove-elements.js +61 -0
  130. package/dist/src/messages/responses/cache-set.d.ts +61 -0
  131. package/dist/src/messages/responses/cache-set.js +54 -0
  132. package/dist/src/messages/responses/cache-sorted-set-fetch.d.ts +107 -0
  133. package/dist/src/messages/responses/cache-sorted-set-fetch.js +124 -0
  134. package/dist/src/messages/responses/cache-sorted-set-get-rank.d.ts +81 -0
  135. package/dist/src/messages/responses/cache-sorted-set-get-rank.js +78 -0
  136. package/dist/src/messages/responses/cache-sorted-set-get-score.d.ts +118 -0
  137. package/dist/src/messages/responses/cache-sorted-set-get-score.js +131 -0
  138. package/dist/src/messages/responses/cache-sorted-set-get-scores.d.ts +109 -0
  139. package/dist/src/messages/responses/cache-sorted-set-get-scores.js +148 -0
  140. package/dist/src/messages/responses/cache-sorted-set-increment-score.d.ts +69 -0
  141. package/dist/src/messages/responses/cache-sorted-set-increment-score.js +68 -0
  142. package/dist/src/messages/responses/cache-sorted-set-put-element.d.ts +61 -0
  143. package/dist/src/messages/responses/cache-sorted-set-put-element.js +54 -0
  144. package/dist/src/messages/responses/cache-sorted-set-put-elements.d.ts +61 -0
  145. package/dist/src/messages/responses/cache-sorted-set-put-elements.js +54 -0
  146. package/dist/src/messages/responses/cache-sorted-set-remove-element.d.ts +61 -0
  147. package/dist/src/messages/responses/cache-sorted-set-remove-element.js +54 -0
  148. package/dist/src/messages/responses/cache-sorted-set-remove-elements.d.ts +61 -0
  149. package/dist/src/messages/responses/cache-sorted-set-remove-elements.js +54 -0
  150. package/dist/src/messages/responses/create-cache.d.ts +77 -0
  151. package/dist/src/messages/responses/create-cache.js +61 -0
  152. package/dist/src/messages/responses/create-signing-key.d.ts +71 -0
  153. package/dist/src/messages/responses/create-signing-key.js +76 -0
  154. package/dist/src/messages/responses/delete-cache.d.ts +61 -0
  155. package/dist/src/messages/responses/delete-cache.js +54 -0
  156. package/dist/src/messages/responses/generate-api-token.d.ts +50 -0
  157. package/dist/src/messages/responses/generate-api-token.js +52 -0
  158. package/dist/src/messages/responses/grpc-response-types.d.ts +41 -0
  159. package/dist/src/messages/responses/grpc-response-types.js +53 -0
  160. package/dist/src/messages/responses/list-caches.d.ts +70 -0
  161. package/dist/src/messages/responses/list-caches.js +69 -0
  162. package/dist/src/messages/responses/list-signing-keys.d.ts +68 -0
  163. package/dist/src/messages/responses/list-signing-keys.js +68 -0
  164. package/dist/src/messages/responses/response-base.d.ts +43 -0
  165. package/dist/src/messages/responses/response-base.js +50 -0
  166. package/dist/src/messages/responses/revoke-signing-key.d.ts +61 -0
  167. package/dist/src/messages/responses/revoke-signing-key.js +54 -0
  168. package/dist/src/messages/responses/topic-item.d.ts +27 -0
  169. package/dist/src/messages/responses/topic-item.js +43 -0
  170. package/dist/src/messages/responses/topic-publish.d.ts +61 -0
  171. package/dist/src/messages/responses/topic-publish.js +54 -0
  172. package/dist/src/messages/responses/topic-subscribe.d.ts +69 -0
  173. package/dist/src/messages/responses/topic-subscribe.js +72 -0
  174. package/dist/src/messages/signing-key.d.ts +9 -0
  175. package/dist/src/messages/signing-key.js +21 -0
  176. package/dist/src/utils/cache-call-options.d.ts +99 -0
  177. package/dist/src/utils/cache-call-options.js +9 -0
  178. package/dist/src/utils/collection-ttl.d.ts +78 -0
  179. package/dist/src/utils/collection-ttl.js +102 -0
  180. package/dist/src/utils/index.d.ts +3 -0
  181. package/dist/src/utils/index.js +20 -0
  182. package/dist/src/utils/topic-call-options.d.ts +19 -0
  183. package/dist/src/utils/topic-call-options.js +3 -0
  184. package/package.json +53 -0
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CollectionTtl = void 0;
4
+ /** Represents the desired behavior for managing the TTL on collection
5
+ * objects (dictionaries, lists, sets) in your cache.
6
+ *
7
+ * For cache operations that modify a collection, there are a few things
8
+ * to consider. The first time the collection is created, we need to
9
+ * set a TTL on it. For subsequent operations that modify the collection
10
+ * you may choose to update the TTL in order to prolong the life of the
11
+ * cached collection object, or you may choose to leave the TTL unmodified
12
+ * in order to ensure that the collection expires at the original TTL.
13
+ *
14
+ * The default behavior is to refresh the TTL (to prolong the life of the
15
+ * collection) each time it is written. This behavior can be modified
16
+ * by calling CollectionTtl.withNoRefreshTtlOnUpdates().
17
+ *
18
+ * A null TTL means to use the client's TTL.
19
+ */
20
+ class CollectionTtl {
21
+ /**
22
+ * If refreshTtl is true, the client must update the collection's TTL
23
+ * when it modifies a collection.
24
+ * A null ttl means to use the client's TTL.
25
+ * @param {number | null} [ttlSeconds=null]
26
+ * @param {boolean} [refreshTtl=true]
27
+ */
28
+ constructor(ttlSeconds = null, refreshTtl = true) {
29
+ this._refreshTtl = refreshTtl;
30
+ this._ttlSeconds = ttlSeconds;
31
+ }
32
+ /** Time-to-live, in seconds.
33
+ * @returns {number | null}
34
+ */
35
+ ttlSeconds() {
36
+ return this._ttlSeconds;
37
+ }
38
+ /** Time-to-live, in milliseconds.
39
+ * @returns {number | null}
40
+ */
41
+ ttlMilliseconds() {
42
+ return this._ttlSeconds === null ? null : this._ttlSeconds * 1000;
43
+ }
44
+ /** Whether or not to refresh a collection's TTL when it's modified.
45
+ * @returns {boolean}
46
+ */
47
+ refreshTtl() {
48
+ return this._refreshTtl;
49
+ }
50
+ /** The default way to handle TTLs for collections. The client's default TTL
51
+ * will be used, and the TTL for the collection will be refreshed any
52
+ * time the collection is modified.
53
+ * @constructor
54
+ * @returns {CollectionTtl}
55
+ */
56
+ static fromCacheTtl() {
57
+ return new CollectionTtl(null, true);
58
+ }
59
+ /** Constructs a CollectionTtl with the specified TTL. The TTL
60
+ * for the collection will be refreshed any time the collection is
61
+ * modified.
62
+ * @constructor
63
+ * @param {number} [ttlSeconds]
64
+ * @returns {CollectionTtl}
65
+ */
66
+ static of(ttlSeconds) {
67
+ return new CollectionTtl(ttlSeconds, true);
68
+ }
69
+ /** Constructs a CollectionTtl with the specified TTL.
70
+ * Will only refresh if the TTL is provided.
71
+ * @constructor
72
+ * @param {number | null} [ttlSeconds=null]
73
+ * @returns {CollectionTtl}
74
+ */
75
+ static refreshTtlIfProvided(ttlSeconds = null) {
76
+ return new CollectionTtl(ttlSeconds, ttlSeconds !== null);
77
+ }
78
+ /** Copies the CollectionTtl, but it will refresh the TTL when
79
+ * the collection is modified.
80
+ * @returns {CollectionTtl}
81
+ */
82
+ withRefreshTtlOnUpdates() {
83
+ return new CollectionTtl(this._ttlSeconds, true);
84
+ }
85
+ /** Copies the CollectionTTL, but the TTL will not be refreshed
86
+ * when the collection is modified. Use this if you want to ensure
87
+ * that your collection expires at the originally specified time, even
88
+ * if you make modifications to the value of the collection.
89
+ * @returns {CollectionTtl}
90
+ */
91
+ withNoRefreshTtlOnUpdates() {
92
+ return new CollectionTtl(this._ttlSeconds, false);
93
+ }
94
+ /** A string represenation of the CollectionTtl for debugging purposes.
95
+ * @return {CollectionTtl}
96
+ */
97
+ toString() {
98
+ return `ttl: ${this._ttlSeconds || 'null'}, refreshTtl: ${this._refreshTtl ? 'true' : 'false'}`;
99
+ }
100
+ }
101
+ exports.CollectionTtl = CollectionTtl;
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi10dGwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvY29sbGVjdGlvbi10dGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsTUFBYSxhQUFhO0lBSXhCOzs7Ozs7T0FNRztJQUNILFlBQVksYUFBNEIsSUFBSSxFQUFFLFVBQVUsR0FBRyxJQUFJO1FBQzdELElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksZUFBZTtRQUNwQixPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO0lBQ3BFLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLFlBQVk7UUFDeEIsT0FBTyxJQUFJLGFBQWEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxFQUFFLENBQUMsVUFBa0I7UUFDakMsT0FBTyxJQUFJLGFBQWEsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLG9CQUFvQixDQUNoQyxhQUE0QixJQUFJO1FBRWhDLE9BQU8sSUFBSSxhQUFhLENBQUMsVUFBVSxFQUFFLFVBQVUsS0FBSyxJQUFJLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksdUJBQXVCO1FBQzVCLE9BQU8sSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSx5QkFBeUI7UUFDOUIsT0FBTyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7T0FFRztJQUNJLFFBQVE7UUFDYixPQUFPLFFBQVEsSUFBSSxDQUFDLFdBQVcsSUFBSSxNQUFNLGlCQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQzlCLEVBQUUsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQWhHRCxzQ0FnR0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogUmVwcmVzZW50cyB0aGUgZGVzaXJlZCBiZWhhdmlvciBmb3IgbWFuYWdpbmcgdGhlIFRUTCBvbiBjb2xsZWN0aW9uXG4gKiAgb2JqZWN0cyAoZGljdGlvbmFyaWVzLCBsaXN0cywgc2V0cykgaW4geW91ciBjYWNoZS5cbiAqXG4gKiAgRm9yIGNhY2hlIG9wZXJhdGlvbnMgdGhhdCBtb2RpZnkgYSBjb2xsZWN0aW9uLCB0aGVyZSBhcmUgYSBmZXcgdGhpbmdzXG4gKiAgdG8gY29uc2lkZXIuICBUaGUgZmlyc3QgdGltZSB0aGUgY29sbGVjdGlvbiBpcyBjcmVhdGVkLCB3ZSBuZWVkIHRvXG4gKiAgc2V0IGEgVFRMIG9uIGl0LiAgRm9yIHN1YnNlcXVlbnQgb3BlcmF0aW9ucyB0aGF0IG1vZGlmeSB0aGUgY29sbGVjdGlvblxuICogIHlvdSBtYXkgY2hvb3NlIHRvIHVwZGF0ZSB0aGUgVFRMIGluIG9yZGVyIHRvIHByb2xvbmcgdGhlIGxpZmUgb2YgdGhlXG4gKiAgY2FjaGVkIGNvbGxlY3Rpb24gb2JqZWN0LCBvciB5b3UgbWF5IGNob29zZSB0byBsZWF2ZSB0aGUgVFRMIHVubW9kaWZpZWRcbiAqICBpbiBvcmRlciB0byBlbnN1cmUgdGhhdCB0aGUgY29sbGVjdGlvbiBleHBpcmVzIGF0IHRoZSBvcmlnaW5hbCBUVEwuXG4gKlxuICogIFRoZSBkZWZhdWx0IGJlaGF2aW9yIGlzIHRvIHJlZnJlc2ggdGhlIFRUTCAodG8gcHJvbG9uZyB0aGUgbGlmZSBvZiB0aGVcbiAqICBjb2xsZWN0aW9uKSBlYWNoIHRpbWUgaXQgaXMgd3JpdHRlbi4gIFRoaXMgYmVoYXZpb3IgY2FuIGJlIG1vZGlmaWVkXG4gKiAgYnkgY2FsbGluZyBDb2xsZWN0aW9uVHRsLndpdGhOb1JlZnJlc2hUdGxPblVwZGF0ZXMoKS5cbiAqXG4gKiAgQSBudWxsIFRUTCBtZWFucyB0byB1c2UgdGhlIGNsaWVudCdzIFRUTC5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbGxlY3Rpb25UdGwge1xuICBwcml2YXRlIHJlYWRvbmx5IF90dGxTZWNvbmRzOiBudW1iZXIgfCBudWxsO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yZWZyZXNoVHRsOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJZiByZWZyZXNoVHRsIGlzIHRydWUsIHRoZSBjbGllbnQgbXVzdCB1cGRhdGUgdGhlIGNvbGxlY3Rpb24ncyBUVExcbiAgICogd2hlbiBpdCBtb2RpZmllcyBhIGNvbGxlY3Rpb24uXG4gICAqIEEgbnVsbCB0dGwgbWVhbnMgdG8gdXNlIHRoZSBjbGllbnQncyBUVEwuXG4gICAqIEBwYXJhbSB7bnVtYmVyIHwgbnVsbH0gW3R0bFNlY29uZHM9bnVsbF1cbiAgICogQHBhcmFtIHtib29sZWFufSBbcmVmcmVzaFR0bD10cnVlXVxuICAgKi9cbiAgY29uc3RydWN0b3IodHRsU2Vjb25kczogbnVtYmVyIHwgbnVsbCA9IG51bGwsIHJlZnJlc2hUdGwgPSB0cnVlKSB7XG4gICAgdGhpcy5fcmVmcmVzaFR0bCA9IHJlZnJlc2hUdGw7XG4gICAgdGhpcy5fdHRsU2Vjb25kcyA9IHR0bFNlY29uZHM7XG4gIH1cblxuICAvKiogVGltZS10by1saXZlLCBpbiBzZWNvbmRzLlxuICAgKiBAcmV0dXJucyB7bnVtYmVyIHwgbnVsbH1cbiAgICovXG4gIHB1YmxpYyB0dGxTZWNvbmRzKCk6IG51bWJlciB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl90dGxTZWNvbmRzO1xuICB9XG5cbiAgLyoqIFRpbWUtdG8tbGl2ZSwgaW4gbWlsbGlzZWNvbmRzLlxuICAgKiBAcmV0dXJucyB7bnVtYmVyIHwgbnVsbH1cbiAgICovXG4gIHB1YmxpYyB0dGxNaWxsaXNlY29uZHMoKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX3R0bFNlY29uZHMgPT09IG51bGwgPyBudWxsIDogdGhpcy5fdHRsU2Vjb25kcyAqIDEwMDA7XG4gIH1cblxuICAvKiogV2hldGhlciBvciBub3QgdG8gcmVmcmVzaCBhIGNvbGxlY3Rpb24ncyBUVEwgd2hlbiBpdCdzIG1vZGlmaWVkLlxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAgICovXG4gIHB1YmxpYyByZWZyZXNoVHRsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yZWZyZXNoVHRsO1xuICB9XG5cbiAgLyoqIFRoZSBkZWZhdWx0IHdheSB0byBoYW5kbGUgVFRMcyBmb3IgY29sbGVjdGlvbnMuIFRoZSBjbGllbnQncyBkZWZhdWx0IFRUTFxuICAgKiAgd2lsbCBiZSB1c2VkLCBhbmQgdGhlIFRUTCBmb3IgdGhlIGNvbGxlY3Rpb24gd2lsbCBiZSByZWZyZXNoZWQgYW55XG4gICAqICB0aW1lIHRoZSBjb2xsZWN0aW9uIGlzIG1vZGlmaWVkLlxuICAgKiBAY29uc3RydWN0b3JcbiAgICogQHJldHVybnMge0NvbGxlY3Rpb25UdGx9XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21DYWNoZVR0bCgpOiBDb2xsZWN0aW9uVHRsIHtcbiAgICByZXR1cm4gbmV3IENvbGxlY3Rpb25UdGwobnVsbCwgdHJ1ZSk7XG4gIH1cblxuICAvKiogQ29uc3RydWN0cyBhIENvbGxlY3Rpb25UdGwgd2l0aCB0aGUgc3BlY2lmaWVkIFRUTC4gVGhlIFRUTFxuICAgKiAgZm9yIHRoZSBjb2xsZWN0aW9uIHdpbGwgYmUgcmVmcmVzaGVkIGFueSB0aW1lIHRoZSBjb2xsZWN0aW9uIGlzXG4gICAqICBtb2RpZmllZC5cbiAgICogQGNvbnN0cnVjdG9yXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBbdHRsU2Vjb25kc11cbiAgICogQHJldHVybnMge0NvbGxlY3Rpb25UdGx9XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIG9mKHR0bFNlY29uZHM6IG51bWJlcik6IENvbGxlY3Rpb25UdGwge1xuICAgIHJldHVybiBuZXcgQ29sbGVjdGlvblR0bCh0dGxTZWNvbmRzLCB0cnVlKTtcbiAgfVxuXG4gIC8qKiBDb25zdHJ1Y3RzIGEgQ29sbGVjdGlvblR0bCB3aXRoIHRoZSBzcGVjaWZpZWQgVFRMLlxuICAgKiAgV2lsbCBvbmx5IHJlZnJlc2ggaWYgdGhlIFRUTCBpcyBwcm92aWRlZC5cbiAgICogQGNvbnN0cnVjdG9yXG4gICAqIEBwYXJhbSB7bnVtYmVyIHwgbnVsbH0gW3R0bFNlY29uZHM9bnVsbF1cbiAgICogQHJldHVybnMge0NvbGxlY3Rpb25UdGx9XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlZnJlc2hUdGxJZlByb3ZpZGVkKFxuICAgIHR0bFNlY29uZHM6IG51bWJlciB8IG51bGwgPSBudWxsXG4gICk6IENvbGxlY3Rpb25UdGwge1xuICAgIHJldHVybiBuZXcgQ29sbGVjdGlvblR0bCh0dGxTZWNvbmRzLCB0dGxTZWNvbmRzICE9PSBudWxsKTtcbiAgfVxuXG4gIC8qKiBDb3BpZXMgdGhlIENvbGxlY3Rpb25UdGwsIGJ1dCBpdCB3aWxsIHJlZnJlc2ggdGhlIFRUTCB3aGVuXG4gICAqICB0aGUgY29sbGVjdGlvbiBpcyBtb2RpZmllZC5cbiAgICogQHJldHVybnMge0NvbGxlY3Rpb25UdGx9XG4gICAqL1xuICBwdWJsaWMgd2l0aFJlZnJlc2hUdGxPblVwZGF0ZXMoKTogQ29sbGVjdGlvblR0bCB7XG4gICAgcmV0dXJuIG5ldyBDb2xsZWN0aW9uVHRsKHRoaXMuX3R0bFNlY29uZHMsIHRydWUpO1xuICB9XG5cbiAgLyoqIENvcGllcyB0aGUgQ29sbGVjdGlvblRUTCwgYnV0IHRoZSBUVEwgd2lsbCBub3QgYmUgcmVmcmVzaGVkXG4gICAqICB3aGVuIHRoZSBjb2xsZWN0aW9uIGlzIG1vZGlmaWVkLiBVc2UgdGhpcyBpZiB5b3Ugd2FudCB0byBlbnN1cmVcbiAgICogIHRoYXQgeW91ciBjb2xsZWN0aW9uIGV4cGlyZXMgYXQgdGhlIG9yaWdpbmFsbHkgc3BlY2lmaWVkIHRpbWUsIGV2ZW5cbiAgICogIGlmIHlvdSBtYWtlIG1vZGlmaWNhdGlvbnMgdG8gdGhlIHZhbHVlIG9mIHRoZSBjb2xsZWN0aW9uLlxuICAgKiBAcmV0dXJucyB7Q29sbGVjdGlvblR0bH1cbiAgICovXG4gIHB1YmxpYyB3aXRoTm9SZWZyZXNoVHRsT25VcGRhdGVzKCk6IENvbGxlY3Rpb25UdGwge1xuICAgIHJldHVybiBuZXcgQ29sbGVjdGlvblR0bCh0aGlzLl90dGxTZWNvbmRzLCBmYWxzZSk7XG4gIH1cblxuICAvKiogQSBzdHJpbmcgcmVwcmVzZW5hdGlvbiBvZiB0aGUgQ29sbGVjdGlvblR0bCBmb3IgZGVidWdnaW5nIHB1cnBvc2VzLlxuICAgKiBAcmV0dXJuIHtDb2xsZWN0aW9uVHRsfVxuICAgKi9cbiAgcHVibGljIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGB0dGw6ICR7dGhpcy5fdHRsU2Vjb25kcyB8fCAnbnVsbCd9LCByZWZyZXNoVHRsOiAke1xuICAgICAgdGhpcy5fcmVmcmVzaFR0bCA/ICd0cnVlJyA6ICdmYWxzZSdcbiAgICB9YDtcbiAgfVxufVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './cache-call-options';
2
+ export * from './collection-ttl';
3
+ export * from './topic-call-options';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./cache-call-options"), exports);
18
+ __exportStar(require("./collection-ttl"), exports);
19
+ __exportStar(require("./topic-call-options"), exports);
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVEQUFxQztBQUNyQyxtREFBaUM7QUFDakMsdURBQXFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jYWNoZS1jYWxsLW9wdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb2xsZWN0aW9uLXR0bCc7XG5leHBvcnQgKiBmcm9tICcuL3RvcGljLWNhbGwtb3B0aW9ucyc7XG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { TopicItem, TopicSubscribe } from '..';
2
+ /**
3
+ * Options for the subscribe call.
4
+ */
5
+ export interface SubscribeCallOptions {
6
+ /**
7
+ * The callback to invoke when data is received from the topic subscription.
8
+ *
9
+ * @param item The data received from the topic subscription.
10
+ */
11
+ onItem?: (item: TopicItem) => void;
12
+ /**
13
+ * The callback to invoke when an error is received from the topic subscription.
14
+ *
15
+ * @param error The error received from the topic subscription.
16
+ * @param subscription The subscription that received the error.
17
+ */
18
+ onError?: (error: TopicSubscribe.Error, subscription: TopicSubscribe.Subscription) => void;
19
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9waWMtY2FsbC1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL3RvcGljLWNhbGwtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUb3BpY0l0ZW0sIFRvcGljU3Vic2NyaWJlfSBmcm9tICcuLic7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgdGhlIHN1YnNjcmliZSBjYWxsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN1YnNjcmliZUNhbGxPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBjYWxsYmFjayB0byBpbnZva2Ugd2hlbiBkYXRhIGlzIHJlY2VpdmVkIGZyb20gdGhlIHRvcGljIHN1YnNjcmlwdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIGl0ZW0gVGhlIGRhdGEgcmVjZWl2ZWQgZnJvbSB0aGUgdG9waWMgc3Vic2NyaXB0aW9uLlxuICAgKi9cbiAgb25JdGVtPzogKGl0ZW06IFRvcGljSXRlbSkgPT4gdm9pZDtcblxuICAvKipcbiAgICogVGhlIGNhbGxiYWNrIHRvIGludm9rZSB3aGVuIGFuIGVycm9yIGlzIHJlY2VpdmVkIGZyb20gdGhlIHRvcGljIHN1YnNjcmlwdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIGVycm9yIFRoZSBlcnJvciByZWNlaXZlZCBmcm9tIHRoZSB0b3BpYyBzdWJzY3JpcHRpb24uXG4gICAqIEBwYXJhbSBzdWJzY3JpcHRpb24gVGhlIHN1YnNjcmlwdGlvbiB0aGF0IHJlY2VpdmVkIHRoZSBlcnJvci5cbiAgICovXG4gIG9uRXJyb3I/OiAoXG4gICAgZXJyb3I6IFRvcGljU3Vic2NyaWJlLkVycm9yLFxuICAgIHN1YnNjcmlwdGlvbjogVG9waWNTdWJzY3JpYmUuU3Vic2NyaXB0aW9uXG4gICkgPT4gdm9pZDtcbn1cbiJdfQ==
package/package.json ADDED
@@ -0,0 +1,53 @@
1
+ {
2
+ "name": "@gomomento/sdk-core",
3
+ "version": "1.12.8",
4
+ "description": "Common code for Momento JS SDKs",
5
+ "main": "dist/src/index.js",
6
+ "files": [
7
+ "dist/src",
8
+ "dist/package.json"
9
+ ],
10
+ "types": "dist/src/index.d.ts",
11
+ "repository": {
12
+ "type": "git",
13
+ "url": "https://github.com/momentohq/client-sdk-nodejs"
14
+ },
15
+ "scripts": {
16
+ "prebuild": "eslint . --ext .ts",
17
+ "test": "jest",
18
+ "unit-test": "jest unit",
19
+ "integration-test": "jest integration --passWithNoTests",
20
+ "lint": "eslint . --ext .ts",
21
+ "format": "eslint . --ext .ts --fix",
22
+ "watch": "tsc -w",
23
+ "build": "rm -rf dist && tsc && mkdir -p dist/src/internal/vendor && cp -r src/internal/vendor/printf dist/src/internal/vendor/printf"
24
+ },
25
+ "author": "",
26
+ "license": "Apache-2.0",
27
+ "devDependencies": {
28
+ "@types/google-protobuf": "^3.15.5",
29
+ "@types/jest": "^27.0.2",
30
+ "@types/node": "14.18.3",
31
+ "@typescript-eslint/eslint-plugin": "^5.0.0",
32
+ "@typescript-eslint/parser": "^5.0.0",
33
+ "eslint": "^7.32.0",
34
+ "eslint-config-prettier": "^8.3.0",
35
+ "eslint-config-standard": "^16.0.3",
36
+ "eslint-plugin-import": "^2.25.1",
37
+ "eslint-plugin-node": "^11.1.0",
38
+ "eslint-plugin-prettier": "^4.0.0",
39
+ "eslint-plugin-promise": "^5.1.0",
40
+ "jest": "^29",
41
+ "jest-extended": "^3.2.3",
42
+ "prettier": "^2.4.1",
43
+ "ts-jest": "^29",
44
+ "ts-node": "^10.3.0",
45
+ "typescript": "^4.4.3"
46
+ },
47
+ "dependencies": {
48
+ "jwt-decode": "3.1.2"
49
+ },
50
+ "engines": {
51
+ "node": ">= 14"
52
+ }
53
+ }