@gomomento/sdk-core 1.87.0 → 1.89.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.
Files changed (179) hide show
  1. package/dist/src/clients/ICacheClient.d.ts +2 -2
  2. package/dist/src/clients/ICacheClient.js +1 -1
  3. package/dist/src/clients/IMomentoCache.d.ts +2 -2
  4. package/dist/src/clients/IMomentoCache.js +1 -1
  5. package/dist/src/errors/errors.js +1 -1
  6. package/dist/src/internal/clients/cache/IDataClient.d.ts +2 -2
  7. package/dist/src/internal/clients/cache/IDataClient.js +1 -1
  8. package/dist/src/messages/responses/cache-batch-get.d.ts +18 -51
  9. package/dist/src/messages/responses/cache-batch-get.js +23 -56
  10. package/dist/src/messages/responses/cache-batch-set.d.ts +14 -48
  11. package/dist/src/messages/responses/cache-batch-set.js +12 -42
  12. package/dist/src/messages/responses/cache-delete.d.ts +11 -44
  13. package/dist/src/messages/responses/cache-delete.js +14 -35
  14. package/dist/src/messages/responses/cache-dictionary-fetch.d.ts +5 -5
  15. package/dist/src/messages/responses/cache-dictionary-fetch.js +4 -4
  16. package/dist/src/messages/responses/cache-dictionary-get-field.d.ts +5 -5
  17. package/dist/src/messages/responses/cache-dictionary-get-field.js +4 -4
  18. package/dist/src/messages/responses/cache-dictionary-get-fields.d.ts +5 -5
  19. package/dist/src/messages/responses/cache-dictionary-get-fields.js +4 -4
  20. package/dist/src/messages/responses/cache-dictionary-increment.d.ts +14 -46
  21. package/dist/src/messages/responses/cache-dictionary-increment.js +14 -41
  22. package/dist/src/messages/responses/cache-dictionary-length.d.ts +19 -53
  23. package/dist/src/messages/responses/cache-dictionary-length.js +26 -40
  24. package/dist/src/messages/responses/cache-dictionary-remove-field.d.ts +10 -43
  25. package/dist/src/messages/responses/cache-dictionary-remove-field.js +13 -34
  26. package/dist/src/messages/responses/cache-dictionary-remove-fields.d.ts +10 -43
  27. package/dist/src/messages/responses/cache-dictionary-remove-fields.js +13 -34
  28. package/dist/src/messages/responses/cache-dictionary-set-field.d.ts +10 -43
  29. package/dist/src/messages/responses/cache-dictionary-set-field.js +13 -34
  30. package/dist/src/messages/responses/cache-dictionary-set-fields.d.ts +10 -43
  31. package/dist/src/messages/responses/cache-dictionary-set-fields.js +13 -34
  32. package/dist/src/messages/responses/cache-flush.d.ts +12 -45
  33. package/dist/src/messages/responses/cache-flush.js +15 -36
  34. package/dist/src/messages/responses/cache-get.d.ts +1 -1
  35. package/dist/src/messages/responses/cache-get.js +1 -1
  36. package/dist/src/messages/responses/cache-increment.d.ts +24 -51
  37. package/dist/src/messages/responses/cache-increment.js +27 -49
  38. package/dist/src/messages/responses/cache-item-get-ttl.d.ts +22 -55
  39. package/dist/src/messages/responses/cache-item-get-ttl.js +27 -41
  40. package/dist/src/messages/responses/cache-item-get-type.d.ts +22 -55
  41. package/dist/src/messages/responses/cache-item-get-type.js +27 -41
  42. package/dist/src/messages/responses/cache-key-exists.d.ts +16 -47
  43. package/dist/src/messages/responses/cache-key-exists.js +17 -38
  44. package/dist/src/messages/responses/cache-keys-exist.d.ts +16 -47
  45. package/dist/src/messages/responses/cache-keys-exist.js +16 -37
  46. package/dist/src/messages/responses/cache-list-concatenate-back.d.ts +13 -56
  47. package/dist/src/messages/responses/cache-list-concatenate-back.js +13 -37
  48. package/dist/src/messages/responses/cache-list-concatenate-front.d.ts +13 -46
  49. package/dist/src/messages/responses/cache-list-concatenate-front.js +13 -37
  50. package/dist/src/messages/responses/cache-list-fetch.d.ts +23 -58
  51. package/dist/src/messages/responses/cache-list-fetch.js +26 -49
  52. package/dist/src/messages/responses/cache-list-length.d.ts +27 -66
  53. package/dist/src/messages/responses/cache-list-length.js +32 -42
  54. package/dist/src/messages/responses/cache-list-pop-back.d.ts +22 -57
  55. package/dist/src/messages/responses/cache-list-pop-back.js +25 -48
  56. package/dist/src/messages/responses/cache-list-pop-front.d.ts +22 -57
  57. package/dist/src/messages/responses/cache-list-pop-front.js +25 -48
  58. package/dist/src/messages/responses/cache-list-push-back.d.ts +13 -46
  59. package/dist/src/messages/responses/cache-list-push-back.js +13 -37
  60. package/dist/src/messages/responses/cache-list-push-front.d.ts +13 -46
  61. package/dist/src/messages/responses/cache-list-push-front.js +13 -37
  62. package/dist/src/messages/responses/cache-list-remove-value.d.ts +11 -44
  63. package/dist/src/messages/responses/cache-list-remove-value.js +14 -35
  64. package/dist/src/messages/responses/cache-list-retain.d.ts +11 -44
  65. package/dist/src/messages/responses/cache-list-retain.js +14 -35
  66. package/dist/src/messages/responses/cache-set-add-element.d.ts +10 -43
  67. package/dist/src/messages/responses/cache-set-add-element.js +13 -34
  68. package/dist/src/messages/responses/cache-set-add-elements.d.ts +12 -45
  69. package/dist/src/messages/responses/cache-set-add-elements.js +17 -38
  70. package/dist/src/messages/responses/cache-set-fetch.d.ts +18 -54
  71. package/dist/src/messages/responses/cache-set-fetch.js +23 -46
  72. package/dist/src/messages/responses/cache-set-if-absent-or-equal.d.ts +15 -55
  73. package/dist/src/messages/responses/cache-set-if-absent-or-equal.js +21 -41
  74. package/dist/src/messages/responses/cache-set-if-absent.d.ts +14 -54
  75. package/dist/src/messages/responses/cache-set-if-absent.js +20 -40
  76. package/dist/src/messages/responses/cache-set-if-equal.d.ts +15 -55
  77. package/dist/src/messages/responses/cache-set-if-equal.js +21 -41
  78. package/dist/src/messages/responses/cache-set-if-not-equal.d.ts +15 -55
  79. package/dist/src/messages/responses/cache-set-if-not-equal.js +21 -41
  80. package/dist/src/messages/responses/cache-set-if-not-exists.d.ts +14 -54
  81. package/dist/src/messages/responses/cache-set-if-not-exists.js +20 -40
  82. package/dist/src/messages/responses/cache-set-if-present-and-not-equal.d.ts +15 -55
  83. package/dist/src/messages/responses/cache-set-if-present-and-not-equal.js +21 -41
  84. package/dist/src/messages/responses/cache-set-if-present.d.ts +15 -55
  85. package/dist/src/messages/responses/cache-set-if-present.js +21 -41
  86. package/dist/src/messages/responses/cache-set-remove-element.d.ts +10 -43
  87. package/dist/src/messages/responses/cache-set-remove-element.js +13 -34
  88. package/dist/src/messages/responses/cache-set-remove-elements.d.ts +13 -46
  89. package/dist/src/messages/responses/cache-set-remove-elements.js +13 -34
  90. package/dist/src/messages/responses/cache-set-sample.d.ts +18 -54
  91. package/dist/src/messages/responses/cache-set-sample.js +23 -46
  92. package/dist/src/messages/responses/cache-set.d.ts +4 -4
  93. package/dist/src/messages/responses/cache-set.js +3 -3
  94. package/dist/src/messages/responses/cache-sorted-set-fetch.d.ts +19 -55
  95. package/dist/src/messages/responses/cache-sorted-set-fetch.js +23 -46
  96. package/dist/src/messages/responses/cache-sorted-set-get-rank.d.ts +19 -53
  97. package/dist/src/messages/responses/cache-sorted-set-get-rank.js +22 -39
  98. package/dist/src/messages/responses/cache-sorted-set-get-score.d.ts +28 -66
  99. package/dist/src/messages/responses/cache-sorted-set-get-score.js +32 -60
  100. package/dist/src/messages/responses/cache-sorted-set-get-scores.d.ts +21 -58
  101. package/dist/src/messages/responses/cache-sorted-set-get-scores.js +29 -52
  102. package/dist/src/messages/responses/cache-sorted-set-increment-score.d.ts +14 -46
  103. package/dist/src/messages/responses/cache-sorted-set-increment-score.js +14 -41
  104. package/dist/src/messages/responses/cache-sorted-set-length-by-score.d.ts +18 -53
  105. package/dist/src/messages/responses/cache-sorted-set-length-by-score.js +23 -40
  106. package/dist/src/messages/responses/cache-sorted-set-length.d.ts +19 -53
  107. package/dist/src/messages/responses/cache-sorted-set-length.js +22 -39
  108. package/dist/src/messages/responses/cache-sorted-set-put-element.d.ts +10 -43
  109. package/dist/src/messages/responses/cache-sorted-set-put-element.js +13 -34
  110. package/dist/src/messages/responses/cache-sorted-set-put-elements.d.ts +10 -43
  111. package/dist/src/messages/responses/cache-sorted-set-put-elements.js +13 -34
  112. package/dist/src/messages/responses/cache-sorted-set-remove-element.d.ts +10 -43
  113. package/dist/src/messages/responses/cache-sorted-set-remove-element.js +13 -34
  114. package/dist/src/messages/responses/cache-sorted-set-remove-elements.d.ts +10 -43
  115. package/dist/src/messages/responses/cache-sorted-set-remove-elements.js +13 -34
  116. package/dist/src/messages/responses/cache-ttl-decrease.d.ts +19 -53
  117. package/dist/src/messages/responses/cache-ttl-decrease.js +29 -39
  118. package/dist/src/messages/responses/cache-ttl-increase.d.ts +19 -53
  119. package/dist/src/messages/responses/cache-ttl-increase.js +29 -39
  120. package/dist/src/messages/responses/cache-ttl-update.d.ts +15 -55
  121. package/dist/src/messages/responses/cache-ttl-update.js +21 -41
  122. package/dist/src/messages/responses/create-cache.d.ts +15 -48
  123. package/dist/src/messages/responses/create-cache.js +21 -39
  124. package/dist/src/messages/responses/delete-cache.d.ts +11 -44
  125. package/dist/src/messages/responses/delete-cache.js +14 -35
  126. package/dist/src/messages/responses/enums/auth/generate-api-key.d.ts +4 -0
  127. package/dist/src/messages/responses/enums/auth/generate-api-key.js +9 -0
  128. package/dist/src/messages/responses/enums/auth/generate-disposable-token.d.ts +4 -0
  129. package/dist/src/messages/responses/enums/auth/generate-disposable-token.js +9 -0
  130. package/dist/src/messages/responses/enums/auth/index.d.ts +3 -0
  131. package/dist/src/messages/responses/enums/auth/index.js +10 -0
  132. package/dist/src/messages/responses/enums/auth/refresh-api-key.d.ts +4 -0
  133. package/dist/src/messages/responses/enums/auth/refresh-api-key.js +9 -0
  134. package/dist/src/messages/responses/enums/cache/control/index.d.ts +17 -0
  135. package/dist/src/messages/responses/enums/cache/control/index.js +25 -0
  136. package/dist/src/messages/responses/enums/cache/dictionary/index.d.ts +40 -0
  137. package/dist/src/messages/responses/enums/cache/dictionary/index.js +53 -0
  138. package/dist/src/messages/responses/enums/cache/index.d.ts +6 -0
  139. package/dist/src/messages/responses/enums/cache/index.js +23 -0
  140. package/dist/src/messages/responses/enums/cache/list/index.d.ts +44 -0
  141. package/dist/src/messages/responses/enums/cache/list/index.js +58 -0
  142. package/dist/src/messages/responses/enums/cache/scalar/index.d.ts +95 -0
  143. package/dist/src/messages/responses/enums/cache/scalar/index.js +122 -0
  144. package/dist/src/messages/responses/enums/cache/set/index.d.ts +26 -0
  145. package/dist/src/messages/responses/enums/cache/set/index.js +36 -0
  146. package/dist/src/messages/responses/enums/cache/sorted-set/index.d.ts +50 -0
  147. package/dist/src/messages/responses/enums/cache/sorted-set/index.js +65 -0
  148. package/dist/src/messages/responses/enums/index.d.ts +4 -24
  149. package/dist/src/messages/responses/enums/index.js +19 -31
  150. package/dist/src/messages/responses/enums/leaderboard/index.d.ts +20 -0
  151. package/dist/src/messages/responses/enums/leaderboard/index.js +29 -0
  152. package/dist/src/messages/responses/enums/topics/index.d.ts +8 -0
  153. package/dist/src/messages/responses/enums/topics/index.js +14 -0
  154. package/dist/src/messages/responses/generate-api-key.d.ts +10 -27
  155. package/dist/src/messages/responses/generate-api-key.js +10 -18
  156. package/dist/src/messages/responses/generate-disposable-token.d.ts +10 -27
  157. package/dist/src/messages/responses/generate-disposable-token.js +10 -18
  158. package/dist/src/messages/responses/leaderboard/leaderboard-delete.d.ts +10 -43
  159. package/dist/src/messages/responses/leaderboard/leaderboard-delete.js +13 -34
  160. package/dist/src/messages/responses/leaderboard/leaderboard-fetch.d.ts +12 -45
  161. package/dist/src/messages/responses/leaderboard/leaderboard-fetch.js +11 -35
  162. package/dist/src/messages/responses/leaderboard/leaderboard-length.d.ts +12 -45
  163. package/dist/src/messages/responses/leaderboard/leaderboard-length.js +11 -35
  164. package/dist/src/messages/responses/leaderboard/leaderboard-remove-elements.d.ts +10 -43
  165. package/dist/src/messages/responses/leaderboard/leaderboard-remove-elements.js +13 -34
  166. package/dist/src/messages/responses/leaderboard/leaderboard-upsert.d.ts +11 -44
  167. package/dist/src/messages/responses/leaderboard/leaderboard-upsert.js +14 -35
  168. package/dist/src/messages/responses/list-caches.d.ts +13 -46
  169. package/dist/src/messages/responses/list-caches.js +11 -35
  170. package/dist/src/messages/responses/refresh-api-key.d.ts +10 -27
  171. package/dist/src/messages/responses/refresh-api-key.js +10 -18
  172. package/dist/src/messages/responses/response-base.d.ts +6 -0
  173. package/dist/src/messages/responses/response-base.js +9 -2
  174. package/dist/src/messages/responses/topic-publish.d.ts +10 -43
  175. package/dist/src/messages/responses/topic-publish.js +13 -34
  176. package/dist/src/messages/responses/topic-subscribe.d.ts +10 -37
  177. package/dist/src/messages/responses/topic-subscribe.js +10 -33
  178. package/dist/src/messages/responses/webhook/list-webhooks.d.ts +1 -10
  179. package/package.json +1 -1
@@ -1,41 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Error = exports.Miss = exports.Hit = exports.Response = void 0;
3
+ exports.Error = exports.Miss = exports.Hit = void 0;
4
4
  const response_base_1 = require("./response-base");
5
+ const enums_1 = require("./enums");
5
6
  const TEXT_DECODER = new TextDecoder();
6
7
  /**
7
- * Parent response type for a sorted set fetch request. The
8
- * response object is resolved to a type-safe object of one of
9
- * the following subtypes:
10
- *
11
- * - {Hit}
12
- * - {Miss}
13
- * - {Error}
14
- *
15
- * `instanceof` type guards can be used to operate on the appropriate subtype.
16
- * @example
17
- * For example:
18
- * ```
19
- * if (response instanceof CacheSortedSetFetch.Error) {
20
- * // Handle error as appropriate. The compiler will smart-cast `response` to type
21
- * // `CacheSortedSetFetch.Error` in this block, so you will have access to the properties
22
- * // of the Error class; e.g. `response.errorCode()`.
23
- * }
24
- * ```
8
+ * Indicates that the requested data was successfully retrieved from the cache. Provides
9
+ * `value*` accessors to retrieve the data in the appropriate format.
25
10
  */
26
- class Response extends response_base_1.ResponseBase {
27
- value() {
28
- if (this instanceof Hit) {
29
- return this.value();
30
- }
31
- return undefined;
32
- }
33
- }
34
- exports.Response = Response;
35
- class _Hit extends Response {
11
+ class Hit extends response_base_1.ResponseBase {
36
12
  constructor(elements) {
37
13
  super();
38
14
  this._displayListSizeLimit = 5;
15
+ this.type = enums_1.CacheSortedSetFetchResponse.Hit;
39
16
  this.elements = elements;
40
17
  }
41
18
  /**
@@ -102,27 +79,20 @@ class _Hit extends Response {
102
79
  return `${super.toString()}: valueArrayStringElements: ${this.truncateValueStrings()}`;
103
80
  }
104
81
  }
105
- /**
106
- * Indicates that the requested data was successfully retrieved from the cache. Provides
107
- * `value*` accessors to retrieve the data in the appropriate format.
108
- */
109
- class Hit extends (0, response_base_1.ResponseHit)(_Hit) {
110
- }
111
82
  exports.Hit = Hit;
112
- class _Miss extends Response {
113
- }
114
83
  /**
115
84
  * Indicates that the requested data was not available in the cache.
116
85
  */
117
- class Miss extends (0, response_base_1.ResponseMiss)(_Miss) {
118
- }
119
- exports.Miss = Miss;
120
- class _Error extends Response {
121
- constructor(_innerException) {
122
- super();
123
- this._innerException = _innerException;
86
+ class Miss extends response_base_1.BaseResponseMiss {
87
+ constructor() {
88
+ super(...arguments);
89
+ this.type = enums_1.CacheSortedSetFetchResponse.Miss;
90
+ }
91
+ value() {
92
+ return undefined;
124
93
  }
125
94
  }
95
+ exports.Miss = Miss;
126
96
  /**
127
97
  * Indicates that an error occurred during the dictionary fetch request.
128
98
  *
@@ -133,7 +103,14 @@ class _Error extends Response {
133
103
  * - `message()` - a human-readable description of the error
134
104
  * - `innerException()` - the original error that caused the failure; can be re-thrown.
135
105
  */
136
- class Error extends (0, response_base_1.ResponseError)(_Error) {
106
+ class Error extends response_base_1.BaseResponseError {
107
+ constructor(error) {
108
+ super(error);
109
+ this.type = enums_1.CacheSortedSetFetchResponse.Error;
110
+ }
111
+ value() {
112
+ return undefined;
113
+ }
137
114
  }
138
115
  exports.Error = Error;
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtc29ydGVkLXNldC1mZXRjaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1mZXRjaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFLeUI7QUFJekIsTUFBTSxZQUFZLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztBQUV2Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQUNILE1BQXNCLFFBQVMsU0FBUSw0QkFBWTtJQUMxQyxLQUFLO1FBQ1YsSUFBSSxJQUFJLFlBQVksR0FBRyxFQUFFO1lBQ3ZCLE9BQVEsSUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQzlCO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztDQUNGO0FBUEQsNEJBT0M7QUFFRCxNQUFNLElBQUssU0FBUSxRQUFRO0lBSXpCLFlBQVksUUFBNkI7UUFDdkMsS0FBSyxFQUFFLENBQUM7UUFITywwQkFBcUIsR0FBRyxDQUFDLENBQUM7UUFJekMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSx1QkFBdUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM5QixPQUFPO2dCQUNMLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztnQkFDakIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO2FBQ2xCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksd0JBQXdCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDOUIsT0FBTztnQkFDTCxLQUFLLEVBQUUsWUFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO2dCQUN0QyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7YUFDbEIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksVUFBVTtRQUNmLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksS0FBSztRQUNWLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztRQUV0RCxNQUFNLFFBQVEsR0FBYSxFQUFFLENBQUM7UUFDOUIsSUFBSSxhQUFhLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtZQUN0RCxhQUFhLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUM5QixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssS0FBSyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN0RCxDQUFDLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxNQUFNLFdBQVcsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztZQUN2RSxXQUFXLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUM1QixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssS0FBSyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN0RCxDQUFDLENBQUMsQ0FBQztTQUNKO1FBQ0QsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFZSxRQUFRO1FBQ3RCLE9BQU8sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFFLCtCQUErQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxDQUFDO0lBQ3pGLENBQUM7Q0FDRjtBQUVEOzs7R0FHRztBQUNILE1BQWEsR0FBSSxTQUFRLElBQUEsMkJBQVcsRUFBQyxJQUFJLENBQUM7Q0FBRztBQUE3QyxrQkFBNkM7QUFFN0MsTUFBTSxLQUFNLFNBQVEsUUFBUTtDQUFHO0FBRS9COztHQUVHO0FBQ0gsTUFBYSxJQUFLLFNBQVEsSUFBQSw0QkFBWSxFQUFDLEtBQUssQ0FBQztDQUFHO0FBQWhELG9CQUFnRDtBQUVoRCxNQUFNLE1BQU8sU0FBUSxRQUFRO0lBQzNCLFlBQXNCLGVBQXlCO1FBQzdDLEtBQUssRUFBRSxDQUFDO1FBRFksb0JBQWUsR0FBZixlQUFlLENBQVU7SUFFL0MsQ0FBQztDQUNGO0FBRUQ7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBYSxLQUFNLFNBQVEsSUFBQSw2QkFBYSxFQUFDLE1BQU0sQ0FBQztDQUFHO0FBQW5ELHNCQUFtRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFJlc3BvbnNlQmFzZSxcbiAgUmVzcG9uc2VIaXQsXG4gIFJlc3BvbnNlTWlzcyxcbiAgUmVzcG9uc2VFcnJvcixcbn0gZnJvbSAnLi9yZXNwb25zZS1iYXNlJztcbmltcG9ydCB7U2RrRXJyb3J9IGZyb20gJy4uLy4uL2Vycm9ycyc7XG5pbXBvcnQge19Tb3J0ZWRTZXRFbGVtZW50fSBmcm9tICcuL2dycGMtcmVzcG9uc2UtdHlwZXMnO1xuXG5jb25zdCBURVhUX0RFQ09ERVIgPSBuZXcgVGV4dERlY29kZXIoKTtcblxuLyoqXG4gKiBQYXJlbnQgcmVzcG9uc2UgdHlwZSBmb3IgYSBzb3J0ZWQgc2V0IGZldGNoIHJlcXVlc3QuICBUaGVcbiAqIHJlc3BvbnNlIG9iamVjdCBpcyByZXNvbHZlZCB0byBhIHR5cGUtc2FmZSBvYmplY3Qgb2Ygb25lIG9mXG4gKiB0aGUgZm9sbG93aW5nIHN1YnR5cGVzOlxuICpcbiAqIC0ge0hpdH1cbiAqIC0ge01pc3N9XG4gKiAtIHtFcnJvcn1cbiAqXG4gKiBgaW5zdGFuY2VvZmAgdHlwZSBndWFyZHMgY2FuIGJlIHVzZWQgdG8gb3BlcmF0ZSBvbiB0aGUgYXBwcm9wcmlhdGUgc3VidHlwZS5cbiAqIEBleGFtcGxlXG4gKiBGb3IgZXhhbXBsZTpcbiAqIGBgYFxuICogaWYgKHJlc3BvbnNlIGluc3RhbmNlb2YgQ2FjaGVTb3J0ZWRTZXRGZXRjaC5FcnJvcikge1xuICogICAvLyBIYW5kbGUgZXJyb3IgYXMgYXBwcm9wcmlhdGUuICBUaGUgY29tcGlsZXIgd2lsbCBzbWFydC1jYXN0IGByZXNwb25zZWAgdG8gdHlwZVxuICogICAvLyBgQ2FjaGVTb3J0ZWRTZXRGZXRjaC5FcnJvcmAgaW4gdGhpcyBibG9jaywgc28geW91IHdpbGwgaGF2ZSBhY2Nlc3MgdG8gdGhlIHByb3BlcnRpZXNcbiAqICAgLy8gb2YgdGhlIEVycm9yIGNsYXNzOyBlLmcuIGByZXNwb25zZS5lcnJvckNvZGUoKWAuXG4gKiB9XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2VCYXNlIHtcbiAgcHVibGljIHZhbHVlKCk6IHt2YWx1ZTogc3RyaW5nOyBzY29yZTogbnVtYmVyfVtdIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcyBpbnN0YW5jZW9mIEhpdCkge1xuICAgICAgcmV0dXJuICh0aGlzIGFzIEhpdCkudmFsdWUoKTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG5jbGFzcyBfSGl0IGV4dGVuZHMgUmVzcG9uc2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRzOiBfU29ydGVkU2V0RWxlbWVudFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kaXNwbGF5TGlzdFNpemVMaW1pdCA9IDU7XG5cbiAgY29uc3RydWN0b3IoZWxlbWVudHM6IF9Tb3J0ZWRTZXRFbGVtZW50W10pIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZWxlbWVudHMgPSBlbGVtZW50cztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBlbGVtZW50cyBhcyBhbiBhcnJheSBvZiBvYmplY3RzLCBlYWNoIGNvbnRhaW5pbmcgYSBgdmFsdWVgIGFuZCBgc2NvcmVgIGZpZWxkLlxuICAgKiBUaGUgdmFsdWUgaXMgYSBieXRlIGFycmF5LCBhbmQgdGhlIHNjb3JlIGlzIGEgbnVtYmVyLlxuICAgKiBAcmV0dXJucyB7e3ZhbHVlOiBVaW50OEFycmF5OyBzY29yZTogbnVtYmVyfVtdfVxuICAgKi9cbiAgcHVibGljIHZhbHVlQXJyYXlVaW50OEVsZW1lbnRzKCk6IHt2YWx1ZTogVWludDhBcnJheTsgc2NvcmU6IG51bWJlcn1bXSB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudHMubWFwKGl0ZW0gPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdmFsdWU6IGl0ZW0udmFsdWUsXG4gICAgICAgIHNjb3JlOiBpdGVtLnNjb3JlLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBlbGVtZW50cyBhcyBhbiBhcnJheSBvZiBvYmplY3RzLCBlYWNoIGNvbnRhaW5pbmcgYSBgdmFsdWVgIGFuZCBgc2NvcmVgIGZpZWxkLlxuICAgKiBUaGUgdmFsdWUgaXMgYSB1dGYtOCBzdHJpbmcsIGRlY29kZWQgZnJvbSB0aGUgdW5kZXJseWluZyBieXRlIGFycmF5LCBhbmQgdGhlIHNjb3JlIGlzIGEgbnVtYmVyLlxuICAgKiBAcmV0dXJucyB7e3ZhbHVlOiBzdHJpbmc7IHNjb3JlOiBudW1iZXJ9W119XG4gICAqL1xuICBwdWJsaWMgdmFsdWVBcnJheVN0cmluZ0VsZW1lbnRzKCk6IHt2YWx1ZTogc3RyaW5nOyBzY29yZTogbnVtYmVyfVtdIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50cy5tYXAoaXRlbSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB2YWx1ZTogVEVYVF9ERUNPREVSLmRlY29kZShpdGVtLnZhbHVlKSxcbiAgICAgICAgc2NvcmU6IGl0ZW0uc2NvcmUsXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGVsZW1lbnRzIGFzIGFuIGFycmF5IG9mIG9iamVjdHMsIGVhY2ggY29udGFpbmluZyBhIGB2YWx1ZWAgYW5kIGBzY29yZWAgZmllbGQuXG4gICAqIFRoZSB2YWx1ZSBpcyBhIHV0Zi04IHN0cmluZywgZGVjb2RlZCBmcm9tIHRoZSB1bmRlcmx5aW5nIGJ5dGUgYXJyYXksIGFuZCB0aGUgc2NvcmUgaXMgYSBudW1iZXIuXG4gICAqIFRoaXMgaXMgYSBjb252ZW5pZW5jZSBhbGlhcyBmb3Ige3ZhbHVlQXJyYXlTdHJpbmdOdW1iZXJ9LlxuICAgKiBAcmV0dXJucyB7dmFsdWU6IHN0cmluZzsgc2NvcmU6IG51bWJlcn1bXVxuICAgKi9cbiAgcHVibGljIHZhbHVlQXJyYXkoKToge3ZhbHVlOiBzdHJpbmc7IHNjb3JlOiBudW1iZXJ9W10ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQXJyYXlTdHJpbmdFbGVtZW50cygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGVsZW1lbnRzIGFzIGFuIGFycmF5IG9mIG9iamVjdHMsIGVhY2ggY29udGFpbmluZyBhIGB2YWx1ZWAgYW5kIGBzY29yZWAgZmllbGQuXG4gICAqIFRoZSB2YWx1ZSBpcyBhIHV0Zi04IHN0cmluZywgZGVjb2RlZCBmcm9tIHRoZSB1bmRlcmx5aW5nIGJ5dGUgYXJyYXksIGFuZCB0aGUgc2NvcmUgaXMgYSBudW1iZXIuXG4gICAqIFRoaXMgaXMgYSBjb252ZW5pZW5jZSBhbGlhcyBmb3Ige3ZhbHVlQXJyYXlTdHJpbmdOdW1iZXJ9LlxuICAgKiBAcmV0dXJucyB7dmFsdWU6IHN0cmluZzsgc2NvcmU6IG51bWJlcn1bXVxuICAgKi9cbiAgcHVibGljIHZhbHVlKCk6IHt2YWx1ZTogc3RyaW5nOyBzY29yZTogbnVtYmVyfVtdIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUFycmF5U3RyaW5nRWxlbWVudHMoKTtcbiAgfVxuXG4gIHByaXZhdGUgdHJ1bmNhdGVWYWx1ZVN0cmluZ3MoKTogc3RyaW5nIHtcbiAgICBjb25zdCBrZXlWYWx1ZUFycmF5ID0gdGhpcy52YWx1ZUFycmF5U3RyaW5nRWxlbWVudHMoKTtcblxuICAgIGNvbnN0IGVsZW1lbnRzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmIChrZXlWYWx1ZUFycmF5Lmxlbmd0aCA8PSB0aGlzLl9kaXNwbGF5TGlzdFNpemVMaW1pdCkge1xuICAgICAga2V5VmFsdWVBcnJheS5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgICAgICBlbGVtZW50cy5wdXNoKGAke2VsZW1lbnQudmFsdWV9OiAke2VsZW1lbnQuc2NvcmV9YCk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgc2xpY2VkQXJyYXkgPSBrZXlWYWx1ZUFycmF5LnNsaWNlKDAsIHRoaXMuX2Rpc3BsYXlMaXN0U2l6ZUxpbWl0KTtcbiAgICAgIHNsaWNlZEFycmF5LmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICAgIGVsZW1lbnRzLnB1c2goYCR7ZWxlbWVudC52YWx1ZX06ICR7ZWxlbWVudC5zY29yZX1gKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gZWxlbWVudHMuam9pbignLCAnKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHtzdXBlci50b1N0cmluZygpfTogdmFsdWVBcnJheVN0cmluZ0VsZW1lbnRzOiAke3RoaXMudHJ1bmNhdGVWYWx1ZVN0cmluZ3MoKX1gO1xuICB9XG59XG5cbi8qKlxuICogSW5kaWNhdGVzIHRoYXQgdGhlIHJlcXVlc3RlZCBkYXRhIHdhcyBzdWNjZXNzZnVsbHkgcmV0cmlldmVkIGZyb20gdGhlIGNhY2hlLiAgUHJvdmlkZXNcbiAqIGB2YWx1ZSpgIGFjY2Vzc29ycyB0byByZXRyaWV2ZSB0aGUgZGF0YSBpbiB0aGUgYXBwcm9wcmlhdGUgZm9ybWF0LlxuICovXG5leHBvcnQgY2xhc3MgSGl0IGV4dGVuZHMgUmVzcG9uc2VIaXQoX0hpdCkge31cblxuY2xhc3MgX01pc3MgZXh0ZW5kcyBSZXNwb25zZSB7fVxuXG4vKipcbiAqIEluZGljYXRlcyB0aGF0IHRoZSByZXF1ZXN0ZWQgZGF0YSB3YXMgbm90IGF2YWlsYWJsZSBpbiB0aGUgY2FjaGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBNaXNzIGV4dGVuZHMgUmVzcG9uc2VNaXNzKF9NaXNzKSB7fVxuXG5jbGFzcyBfRXJyb3IgZXh0ZW5kcyBSZXNwb25zZSB7XG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfaW5uZXJFeGNlcHRpb246IFNka0Vycm9yKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxufVxuXG4vKipcbiAqIEluZGljYXRlcyB0aGF0IGFuIGVycm9yIG9jY3VycmVkIGR1cmluZyB0aGUgZGljdGlvbmFyeSBmZXRjaCByZXF1ZXN0LlxuICpcbiAqIFRoaXMgcmVzcG9uc2Ugb2JqZWN0IGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgZmllbGRzIHRoYXQgeW91IGNhbiB1c2UgdG8gZGV0ZXJtaW5lXG4gKiBob3cgeW91IHdvdWxkIGxpa2UgdG8gaGFuZGxlIHRoZSBlcnJvcjpcbiAqXG4gKiAtIGBlcnJvckNvZGUoKWAgLSBhIHVuaXF1ZSBNb21lbnRvIGVycm9yIGNvZGUgaW5kaWNhdGluZyB0aGUgdHlwZSBvZiBlcnJvciB0aGF0IG9jY3VycmVkLlxuICogLSBgbWVzc2FnZSgpYCAtIGEgaHVtYW4tcmVhZGFibGUgZGVzY3JpcHRpb24gb2YgdGhlIGVycm9yXG4gKiAtIGBpbm5lckV4Y2VwdGlvbigpYCAtIHRoZSBvcmlnaW5hbCBlcnJvciB0aGF0IGNhdXNlZCB0aGUgZmFpbHVyZTsgY2FuIGJlIHJlLXRocm93bi5cbiAqL1xuZXhwb3J0IGNsYXNzIEVycm9yIGV4dGVuZHMgUmVzcG9uc2VFcnJvcihfRXJyb3IpIHt9XG4iXX0=
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtc29ydGVkLXNldC1mZXRjaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1mZXRjaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFJeUI7QUFFekIsbUNBQW9EO0FBR3BELE1BQU0sWUFBWSxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7QUFPdkM7OztHQUdHO0FBQ0gsTUFBYSxHQUFJLFNBQVEsNEJBQVk7SUFNbkMsWUFBWSxRQUE2QjtRQUN2QyxLQUFLLEVBQUUsQ0FBQztRQUxPLDBCQUFxQixHQUFHLENBQUMsQ0FBQztRQUNsQyxTQUFJLEdBQ1gsbUNBQTJCLENBQUMsR0FBRyxDQUFDO1FBSWhDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksdUJBQXVCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDOUIsT0FBTztnQkFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7Z0JBQ2pCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSzthQUNsQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLHdCQUF3QjtRQUM3QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzlCLE9BQU87Z0JBQ0wsS0FBSyxFQUFFLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztnQkFDdEMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO2FBQ2xCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEtBQUs7UUFDVixPQUFPLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7UUFFdEQsTUFBTSxRQUFRLEdBQWEsRUFBRSxDQUFDO1FBQzlCLElBQUksYUFBYSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUU7WUFDdEQsYUFBYSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDOUIsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDdEQsQ0FBQyxDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDdkUsV0FBVyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDNUIsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDdEQsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUNELE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRWUsUUFBUTtRQUN0QixPQUFPLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSwrQkFBK0IsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsQ0FBQztJQUN6RixDQUFDO0NBQ0Y7QUEvRUQsa0JBK0VDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLElBQUssU0FBUSxnQ0FBZ0I7SUFBMUM7O1FBQ1csU0FBSSxHQUNYLG1DQUEyQixDQUFDLElBQUksQ0FBQztJQUtyQyxDQUFDO0lBSFEsS0FBSztRQUNWLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7Q0FDRjtBQVBELG9CQU9DO0FBRUQ7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBYSxLQUFNLFNBQVEsaUNBQWlCO0lBSTFDLFlBQVksS0FBZTtRQUN6QixLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFKTixTQUFJLEdBQ1gsbUNBQTJCLENBQUMsS0FBSyxDQUFDO0lBSXBDLENBQUM7SUFFTSxLQUFLO1FBQ1YsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztDQUNGO0FBWEQsc0JBV0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBSZXNwb25zZUJhc2UsXG4gIEJhc2VSZXNwb25zZU1pc3MsXG4gIEJhc2VSZXNwb25zZUVycm9yLFxufSBmcm9tICcuL3Jlc3BvbnNlLWJhc2UnO1xuaW1wb3J0IHtfU29ydGVkU2V0RWxlbWVudH0gZnJvbSAnLi9ncnBjLXJlc3BvbnNlLXR5cGVzJztcbmltcG9ydCB7Q2FjaGVTb3J0ZWRTZXRGZXRjaFJlc3BvbnNlfSBmcm9tICcuL2VudW1zJztcbmltcG9ydCB7U2RrRXJyb3J9IGZyb20gJy4uLy4uL2Vycm9ycyc7XG5cbmNvbnN0IFRFWFRfREVDT0RFUiA9IG5ldyBUZXh0RGVjb2RlcigpO1xuXG5pbnRlcmZhY2UgSVJlc3BvbnNlIHtcbiAgdmFsdWUoKToge3ZhbHVlOiBzdHJpbmc7IHNjb3JlOiBudW1iZXJ9W10gfCB1bmRlZmluZWQ7XG4gIHJlYWRvbmx5IHR5cGU6IENhY2hlU29ydGVkU2V0RmV0Y2hSZXNwb25zZTtcbn1cblxuLyoqXG4gKiBJbmRpY2F0ZXMgdGhhdCB0aGUgcmVxdWVzdGVkIGRhdGEgd2FzIHN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQgZnJvbSB0aGUgY2FjaGUuICBQcm92aWRlc1xuICogYHZhbHVlKmAgYWNjZXNzb3JzIHRvIHJldHJpZXZlIHRoZSBkYXRhIGluIHRoZSBhcHByb3ByaWF0ZSBmb3JtYXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBIaXQgZXh0ZW5kcyBSZXNwb25zZUJhc2UgaW1wbGVtZW50cyBJUmVzcG9uc2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRzOiBfU29ydGVkU2V0RWxlbWVudFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kaXNwbGF5TGlzdFNpemVMaW1pdCA9IDU7XG4gIHJlYWRvbmx5IHR5cGU6IENhY2hlU29ydGVkU2V0RmV0Y2hSZXNwb25zZS5IaXQgPVxuICAgIENhY2hlU29ydGVkU2V0RmV0Y2hSZXNwb25zZS5IaXQ7XG5cbiAgY29uc3RydWN0b3IoZWxlbWVudHM6IF9Tb3J0ZWRTZXRFbGVtZW50W10pIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZWxlbWVudHMgPSBlbGVtZW50cztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBlbGVtZW50cyBhcyBhbiBhcnJheSBvZiBvYmplY3RzLCBlYWNoIGNvbnRhaW5pbmcgYSBgdmFsdWVgIGFuZCBgc2NvcmVgIGZpZWxkLlxuICAgKiBUaGUgdmFsdWUgaXMgYSBieXRlIGFycmF5LCBhbmQgdGhlIHNjb3JlIGlzIGEgbnVtYmVyLlxuICAgKiBAcmV0dXJucyB7e3ZhbHVlOiBVaW50OEFycmF5OyBzY29yZTogbnVtYmVyfVtdfVxuICAgKi9cbiAgcHVibGljIHZhbHVlQXJyYXlVaW50OEVsZW1lbnRzKCk6IHt2YWx1ZTogVWludDhBcnJheTsgc2NvcmU6IG51bWJlcn1bXSB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudHMubWFwKGl0ZW0gPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdmFsdWU6IGl0ZW0udmFsdWUsXG4gICAgICAgIHNjb3JlOiBpdGVtLnNjb3JlLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBlbGVtZW50cyBhcyBhbiBhcnJheSBvZiBvYmplY3RzLCBlYWNoIGNvbnRhaW5pbmcgYSBgdmFsdWVgIGFuZCBgc2NvcmVgIGZpZWxkLlxuICAgKiBUaGUgdmFsdWUgaXMgYSB1dGYtOCBzdHJpbmcsIGRlY29kZWQgZnJvbSB0aGUgdW5kZXJseWluZyBieXRlIGFycmF5LCBhbmQgdGhlIHNjb3JlIGlzIGEgbnVtYmVyLlxuICAgKiBAcmV0dXJucyB7e3ZhbHVlOiBzdHJpbmc7IHNjb3JlOiBudW1iZXJ9W119XG4gICAqL1xuICBwdWJsaWMgdmFsdWVBcnJheVN0cmluZ0VsZW1lbnRzKCk6IHt2YWx1ZTogc3RyaW5nOyBzY29yZTogbnVtYmVyfVtdIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50cy5tYXAoaXRlbSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB2YWx1ZTogVEVYVF9ERUNPREVSLmRlY29kZShpdGVtLnZhbHVlKSxcbiAgICAgICAgc2NvcmU6IGl0ZW0uc2NvcmUsXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGVsZW1lbnRzIGFzIGFuIGFycmF5IG9mIG9iamVjdHMsIGVhY2ggY29udGFpbmluZyBhIGB2YWx1ZWAgYW5kIGBzY29yZWAgZmllbGQuXG4gICAqIFRoZSB2YWx1ZSBpcyBhIHV0Zi04IHN0cmluZywgZGVjb2RlZCBmcm9tIHRoZSB1bmRlcmx5aW5nIGJ5dGUgYXJyYXksIGFuZCB0aGUgc2NvcmUgaXMgYSBudW1iZXIuXG4gICAqIFRoaXMgaXMgYSBjb252ZW5pZW5jZSBhbGlhcyBmb3Ige3ZhbHVlQXJyYXlTdHJpbmdOdW1iZXJ9LlxuICAgKiBAcmV0dXJucyB7dmFsdWU6IHN0cmluZzsgc2NvcmU6IG51bWJlcn1bXVxuICAgKi9cbiAgcHVibGljIHZhbHVlQXJyYXkoKToge3ZhbHVlOiBzdHJpbmc7IHNjb3JlOiBudW1iZXJ9W10ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQXJyYXlTdHJpbmdFbGVtZW50cygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGVsZW1lbnRzIGFzIGFuIGFycmF5IG9mIG9iamVjdHMsIGVhY2ggY29udGFpbmluZyBhIGB2YWx1ZWAgYW5kIGBzY29yZWAgZmllbGQuXG4gICAqIFRoZSB2YWx1ZSBpcyBhIHV0Zi04IHN0cmluZywgZGVjb2RlZCBmcm9tIHRoZSB1bmRlcmx5aW5nIGJ5dGUgYXJyYXksIGFuZCB0aGUgc2NvcmUgaXMgYSBudW1iZXIuXG4gICAqIFRoaXMgaXMgYSBjb252ZW5pZW5jZSBhbGlhcyBmb3Ige3ZhbHVlQXJyYXlTdHJpbmdOdW1iZXJ9LlxuICAgKiBAcmV0dXJucyB7dmFsdWU6IHN0cmluZzsgc2NvcmU6IG51bWJlcn1bXVxuICAgKi9cbiAgcHVibGljIHZhbHVlKCk6IHt2YWx1ZTogc3RyaW5nOyBzY29yZTogbnVtYmVyfVtdIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUFycmF5U3RyaW5nRWxlbWVudHMoKTtcbiAgfVxuXG4gIHByaXZhdGUgdHJ1bmNhdGVWYWx1ZVN0cmluZ3MoKTogc3RyaW5nIHtcbiAgICBjb25zdCBrZXlWYWx1ZUFycmF5ID0gdGhpcy52YWx1ZUFycmF5U3RyaW5nRWxlbWVudHMoKTtcblxuICAgIGNvbnN0IGVsZW1lbnRzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmIChrZXlWYWx1ZUFycmF5Lmxlbmd0aCA8PSB0aGlzLl9kaXNwbGF5TGlzdFNpemVMaW1pdCkge1xuICAgICAga2V5VmFsdWVBcnJheS5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgICAgICBlbGVtZW50cy5wdXNoKGAke2VsZW1lbnQudmFsdWV9OiAke2VsZW1lbnQuc2NvcmV9YCk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgc2xpY2VkQXJyYXkgPSBrZXlWYWx1ZUFycmF5LnNsaWNlKDAsIHRoaXMuX2Rpc3BsYXlMaXN0U2l6ZUxpbWl0KTtcbiAgICAgIHNsaWNlZEFycmF5LmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICAgIGVsZW1lbnRzLnB1c2goYCR7ZWxlbWVudC52YWx1ZX06ICR7ZWxlbWVudC5zY29yZX1gKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gZWxlbWVudHMuam9pbignLCAnKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHtzdXBlci50b1N0cmluZygpfTogdmFsdWVBcnJheVN0cmluZ0VsZW1lbnRzOiAke3RoaXMudHJ1bmNhdGVWYWx1ZVN0cmluZ3MoKX1gO1xuICB9XG59XG5cbi8qKlxuICogSW5kaWNhdGVzIHRoYXQgdGhlIHJlcXVlc3RlZCBkYXRhIHdhcyBub3QgYXZhaWxhYmxlIGluIHRoZSBjYWNoZS5cbiAqL1xuZXhwb3J0IGNsYXNzIE1pc3MgZXh0ZW5kcyBCYXNlUmVzcG9uc2VNaXNzIGltcGxlbWVudHMgSVJlc3BvbnNlIHtcbiAgcmVhZG9ubHkgdHlwZTogQ2FjaGVTb3J0ZWRTZXRGZXRjaFJlc3BvbnNlLk1pc3MgPVxuICAgIENhY2hlU29ydGVkU2V0RmV0Y2hSZXNwb25zZS5NaXNzO1xuXG4gIHB1YmxpYyB2YWx1ZSgpOiB1bmRlZmluZWQge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cblxuLyoqXG4gKiBJbmRpY2F0ZXMgdGhhdCBhbiBlcnJvciBvY2N1cnJlZCBkdXJpbmcgdGhlIGRpY3Rpb25hcnkgZmV0Y2ggcmVxdWVzdC5cbiAqXG4gKiBUaGlzIHJlc3BvbnNlIG9iamVjdCBpbmNsdWRlcyB0aGUgZm9sbG93aW5nIGZpZWxkcyB0aGF0IHlvdSBjYW4gdXNlIHRvIGRldGVybWluZVxuICogaG93IHlvdSB3b3VsZCBsaWtlIHRvIGhhbmRsZSB0aGUgZXJyb3I6XG4gKlxuICogLSBgZXJyb3JDb2RlKClgIC0gYSB1bmlxdWUgTW9tZW50byBlcnJvciBjb2RlIGluZGljYXRpbmcgdGhlIHR5cGUgb2YgZXJyb3IgdGhhdCBvY2N1cnJlZC5cbiAqIC0gYG1lc3NhZ2UoKWAgLSBhIGh1bWFuLXJlYWRhYmxlIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvclxuICogLSBgaW5uZXJFeGNlcHRpb24oKWAgLSB0aGUgb3JpZ2luYWwgZXJyb3IgdGhhdCBjYXVzZWQgdGhlIGZhaWx1cmU7IGNhbiBiZSByZS10aHJvd24uXG4gKi9cbmV4cG9ydCBjbGFzcyBFcnJvciBleHRlbmRzIEJhc2VSZXNwb25zZUVycm9yIGltcGxlbWVudHMgSVJlc3BvbnNlIHtcbiAgcmVhZG9ubHkgdHlwZTogQ2FjaGVTb3J0ZWRTZXRGZXRjaFJlc3BvbnNlLkVycm9yID1cbiAgICBDYWNoZVNvcnRlZFNldEZldGNoUmVzcG9uc2UuRXJyb3I7XG5cbiAgY29uc3RydWN0b3IoZXJyb3I6IFNka0Vycm9yKSB7XG4gICAgc3VwZXIoZXJyb3IpO1xuICB9XG5cbiAgcHVibGljIHZhbHVlKCk6IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBSZXNwb25zZSA9IEhpdCB8IE1pc3MgfCBFcnJvcjtcbiJdfQ==
@@ -1,29 +1,17 @@
1
- import { ResponseBase } from './response-base';
1
+ import { ResponseBase, BaseResponseError, BaseResponseMiss } from './response-base';
2
+ import { CacheSortedSetGetRankResponse } from './enums';
2
3
  import { SdkError } from '../../errors';
4
+ interface IResponse {
5
+ rank(): number | undefined;
6
+ readonly type: CacheSortedSetGetRankResponse;
7
+ }
3
8
  /**
4
- * Parent response type for a sorted set GetRank request. The
5
- * response object is resolved to a type-safe object of one of
6
- * the following subtypes:
7
- *
8
- * - {Hit}
9
- * - {Miss}
10
- * - {Error}
11
- *
12
- * `instanceof` type guards can be used to operate on the appropriate subtype.
13
- * @example
14
- * For example:
15
- * ```
16
- * if (response instanceof CacheSortedSetGetRank.Error) {
17
- * // Handle error as appropriate. The compiler will smart-cast `response` to type
18
- * // `CacheSortedSetGetRank.Error` in this block, so you will have access to the properties
19
- * // of the Error class; e.g. `response.errorCode()`.
20
- * }
21
- * ```
9
+ * Indicates that the requested data was successfully retrieved from the cache. Provides
10
+ * `rank()` accessor to retrieve rank.
22
11
  */
23
- export declare abstract class Response extends ResponseBase {
24
- }
25
- declare class _Hit extends Response {
12
+ export declare class Hit extends ResponseBase implements IResponse {
26
13
  private readonly _rank;
14
+ readonly type: CacheSortedSetGetRankResponse.Hit;
27
15
  constructor(rank: number);
28
16
  /**
29
17
  * Returns the rank of the element in the sorted set. Ranks start at 0.
@@ -32,40 +20,14 @@ declare class _Hit extends Response {
32
20
  rank(): number;
33
21
  toString(): string;
34
22
  }
35
- declare const Hit_base: {
36
- new (...args: any[]): {};
37
- } & typeof _Hit;
38
- /**
39
- * Indicates that the requested data was successfully retrieved from the cache. Provides
40
- * `rank()` accessor to retrieve rank.
41
- */
42
- export declare class Hit extends Hit_base {
43
- }
44
- declare class _Miss extends Response {
45
- }
46
- declare const Miss_base: {
47
- new (...args: any[]): {
48
- readonly is_miss: boolean;
49
- };
50
- } & typeof _Miss;
51
23
  /**
52
24
  * Indicates that the requested data was not available in the cache.
53
25
  */
54
- export declare class Miss extends Miss_base {
55
- }
56
- declare class _Error extends Response {
57
- protected _innerException: SdkError;
58
- constructor(_innerException: SdkError);
26
+ export declare class Miss extends BaseResponseMiss implements IResponse {
27
+ readonly type: CacheSortedSetGetRankResponse.Miss;
28
+ constructor();
29
+ rank(): undefined;
59
30
  }
60
- declare const Error_base: {
61
- new (...args: any[]): {
62
- _innerException: SdkError;
63
- message(): string;
64
- innerException(): SdkError;
65
- errorCode(): import("../../errors").MomentoErrorCode;
66
- toString(): string;
67
- };
68
- } & typeof _Error;
69
31
  /**
70
32
  * Indicates that an error occurred during the sorted set get rank request.
71
33
  *
@@ -76,6 +38,10 @@ declare const Error_base: {
76
38
  * - `message()` - a human-readable description of the error
77
39
  * - `innerException()` - the original error that caused the failure; can be re-thrown.
78
40
  */
79
- export declare class Error extends Error_base {
41
+ export declare class Error extends BaseResponseError implements IResponse {
42
+ readonly type: CacheSortedSetGetRankResponse.Error;
43
+ constructor(error: SdkError);
44
+ rank(): undefined;
80
45
  }
46
+ export type Response = Hit | Miss | Error;
81
47
  export {};
@@ -1,33 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Error = exports.Miss = exports.Hit = exports.Response = void 0;
3
+ exports.Error = exports.Miss = exports.Hit = void 0;
4
4
  const response_base_1 = require("./response-base");
5
+ const enums_1 = require("./enums");
5
6
  /**
6
- * Parent response type for a sorted set GetRank request. The
7
- * response object is resolved to a type-safe object of one of
8
- * the following subtypes:
9
- *
10
- * - {Hit}
11
- * - {Miss}
12
- * - {Error}
13
- *
14
- * `instanceof` type guards can be used to operate on the appropriate subtype.
15
- * @example
16
- * For example:
17
- * ```
18
- * if (response instanceof CacheSortedSetGetRank.Error) {
19
- * // Handle error as appropriate. The compiler will smart-cast `response` to type
20
- * // `CacheSortedSetGetRank.Error` in this block, so you will have access to the properties
21
- * // of the Error class; e.g. `response.errorCode()`.
22
- * }
23
- * ```
7
+ * Indicates that the requested data was successfully retrieved from the cache. Provides
8
+ * `rank()` accessor to retrieve rank.
24
9
  */
25
- class Response extends response_base_1.ResponseBase {
26
- }
27
- exports.Response = Response;
28
- class _Hit extends Response {
10
+ class Hit extends response_base_1.ResponseBase {
29
11
  constructor(rank) {
30
12
  super();
13
+ this.type = enums_1.CacheSortedSetGetRankResponse.Hit;
31
14
  this._rank = rank;
32
15
  }
33
16
  /**
@@ -41,27 +24,20 @@ class _Hit extends Response {
41
24
  return `${super.toString()}: rank: ${this.rank()}`;
42
25
  }
43
26
  }
44
- /**
45
- * Indicates that the requested data was successfully retrieved from the cache. Provides
46
- * `rank()` accessor to retrieve rank.
47
- */
48
- class Hit extends (0, response_base_1.ResponseHit)(_Hit) {
49
- }
50
27
  exports.Hit = Hit;
51
- class _Miss extends Response {
52
- }
53
28
  /**
54
29
  * Indicates that the requested data was not available in the cache.
55
30
  */
56
- class Miss extends (0, response_base_1.ResponseMiss)(_Miss) {
57
- }
58
- exports.Miss = Miss;
59
- class _Error extends Response {
60
- constructor(_innerException) {
31
+ class Miss extends response_base_1.BaseResponseMiss {
32
+ constructor() {
61
33
  super();
62
- this._innerException = _innerException;
34
+ this.type = enums_1.CacheSortedSetGetRankResponse.Miss;
35
+ }
36
+ rank() {
37
+ return undefined;
63
38
  }
64
39
  }
40
+ exports.Miss = Miss;
65
41
  /**
66
42
  * Indicates that an error occurred during the sorted set get rank request.
67
43
  *
@@ -72,7 +48,14 @@ class _Error extends Response {
72
48
  * - `message()` - a human-readable description of the error
73
49
  * - `innerException()` - the original error that caused the failure; can be re-thrown.
74
50
  */
75
- class Error extends (0, response_base_1.ResponseError)(_Error) {
51
+ class Error extends response_base_1.BaseResponseError {
52
+ constructor(error) {
53
+ super(error);
54
+ this.type = enums_1.CacheSortedSetGetRankResponse.Error;
55
+ }
56
+ rank() {
57
+ return undefined;
58
+ }
76
59
  }
77
60
  exports.Error = Error;
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtc29ydGVkLXNldC1nZXQtcmFuay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1nZXQtcmFuay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFLeUI7QUFHekI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFDSCxNQUFzQixRQUFTLFNBQVEsNEJBQVk7Q0FBRztBQUF0RCw0QkFBc0Q7QUFFdEQsTUFBTSxJQUFLLFNBQVEsUUFBUTtJQUd6QixZQUFZLElBQVk7UUFDdEIsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUNwQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksSUFBSTtRQUNULE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRWUsUUFBUTtRQUN0QixPQUFPLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxXQUFXLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO0lBQ3JELENBQUM7Q0FDRjtBQUVEOzs7R0FHRztBQUNILE1BQWEsR0FBSSxTQUFRLElBQUEsMkJBQVcsRUFBQyxJQUFJLENBQUM7Q0FBRztBQUE3QyxrQkFBNkM7QUFFN0MsTUFBTSxLQUFNLFNBQVEsUUFBUTtDQUFHO0FBRS9COztHQUVHO0FBQ0gsTUFBYSxJQUFLLFNBQVEsSUFBQSw0QkFBWSxFQUFDLEtBQUssQ0FBQztDQUFHO0FBQWhELG9CQUFnRDtBQUVoRCxNQUFNLE1BQU8sU0FBUSxRQUFRO0lBQzNCLFlBQXNCLGVBQXlCO1FBQzdDLEtBQUssRUFBRSxDQUFDO1FBRFksb0JBQWUsR0FBZixlQUFlLENBQVU7SUFFL0MsQ0FBQztDQUNGO0FBRUQ7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBYSxLQUFNLFNBQVEsSUFBQSw2QkFBYSxFQUFDLE1BQU0sQ0FBQztDQUFHO0FBQW5ELHNCQUFtRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFJlc3BvbnNlQmFzZSxcbiAgUmVzcG9uc2VIaXQsXG4gIFJlc3BvbnNlTWlzcyxcbiAgUmVzcG9uc2VFcnJvcixcbn0gZnJvbSAnLi9yZXNwb25zZS1iYXNlJztcbmltcG9ydCB7U2RrRXJyb3J9IGZyb20gJy4uLy4uL2Vycm9ycyc7XG5cbi8qKlxuICogUGFyZW50IHJlc3BvbnNlIHR5cGUgZm9yIGEgc29ydGVkIHNldCBHZXRSYW5rIHJlcXVlc3QuICBUaGVcbiAqIHJlc3BvbnNlIG9iamVjdCBpcyByZXNvbHZlZCB0byBhIHR5cGUtc2FmZSBvYmplY3Qgb2Ygb25lIG9mXG4gKiB0aGUgZm9sbG93aW5nIHN1YnR5cGVzOlxuICpcbiAqIC0ge0hpdH1cbiAqIC0ge01pc3N9XG4gKiAtIHtFcnJvcn1cbiAqXG4gKiBgaW5zdGFuY2VvZmAgdHlwZSBndWFyZHMgY2FuIGJlIHVzZWQgdG8gb3BlcmF0ZSBvbiB0aGUgYXBwcm9wcmlhdGUgc3VidHlwZS5cbiAqIEBleGFtcGxlXG4gKiBGb3IgZXhhbXBsZTpcbiAqIGBgYFxuICogaWYgKHJlc3BvbnNlIGluc3RhbmNlb2YgQ2FjaGVTb3J0ZWRTZXRHZXRSYW5rLkVycm9yKSB7XG4gKiAgIC8vIEhhbmRsZSBlcnJvciBhcyBhcHByb3ByaWF0ZS4gIFRoZSBjb21waWxlciB3aWxsIHNtYXJ0LWNhc3QgYHJlc3BvbnNlYCB0byB0eXBlXG4gKiAgIC8vIGBDYWNoZVNvcnRlZFNldEdldFJhbmsuRXJyb3JgIGluIHRoaXMgYmxvY2ssIHNvIHlvdSB3aWxsIGhhdmUgYWNjZXNzIHRvIHRoZSBwcm9wZXJ0aWVzXG4gKiAgIC8vIG9mIHRoZSBFcnJvciBjbGFzczsgZS5nLiBgcmVzcG9uc2UuZXJyb3JDb2RlKClgLlxuICogfVxuICogYGBgXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZXNwb25zZSBleHRlbmRzIFJlc3BvbnNlQmFzZSB7fVxuXG5jbGFzcyBfSGl0IGV4dGVuZHMgUmVzcG9uc2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF9yYW5rOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IocmFuazogbnVtYmVyKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLl9yYW5rID0gcmFuaztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSByYW5rIG9mIHRoZSBlbGVtZW50IGluIHRoZSBzb3J0ZWQgc2V0LiAgUmFua3Mgc3RhcnQgYXQgMC5cbiAgICogQHJldHVybnMge251bWJlcn1cbiAgICovXG4gIHB1YmxpYyByYW5rKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3Jhbms7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgdG9TdHJpbmcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7c3VwZXIudG9TdHJpbmcoKX06IHJhbms6ICR7dGhpcy5yYW5rKCl9YDtcbiAgfVxufVxuXG4vKipcbiAqIEluZGljYXRlcyB0aGF0IHRoZSByZXF1ZXN0ZWQgZGF0YSB3YXMgc3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCBmcm9tIHRoZSBjYWNoZS4gIFByb3ZpZGVzXG4gKiBgcmFuaygpYCBhY2Nlc3NvciB0byByZXRyaWV2ZSByYW5rLlxuICovXG5leHBvcnQgY2xhc3MgSGl0IGV4dGVuZHMgUmVzcG9uc2VIaXQoX0hpdCkge31cblxuY2xhc3MgX01pc3MgZXh0ZW5kcyBSZXNwb25zZSB7fVxuXG4vKipcbiAqIEluZGljYXRlcyB0aGF0IHRoZSByZXF1ZXN0ZWQgZGF0YSB3YXMgbm90IGF2YWlsYWJsZSBpbiB0aGUgY2FjaGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBNaXNzIGV4dGVuZHMgUmVzcG9uc2VNaXNzKF9NaXNzKSB7fVxuXG5jbGFzcyBfRXJyb3IgZXh0ZW5kcyBSZXNwb25zZSB7XG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfaW5uZXJFeGNlcHRpb246IFNka0Vycm9yKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxufVxuXG4vKipcbiAqIEluZGljYXRlcyB0aGF0IGFuIGVycm9yIG9jY3VycmVkIGR1cmluZyB0aGUgc29ydGVkIHNldCBnZXQgcmFuayByZXF1ZXN0LlxuICpcbiAqIFRoaXMgcmVzcG9uc2Ugb2JqZWN0IGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgZmllbGRzIHRoYXQgeW91IGNhbiB1c2UgdG8gZGV0ZXJtaW5lXG4gKiBob3cgeW91IHdvdWxkIGxpa2UgdG8gaGFuZGxlIHRoZSBlcnJvcjpcbiAqXG4gKiAtIGBlcnJvckNvZGUoKWAgLSBhIHVuaXF1ZSBNb21lbnRvIGVycm9yIGNvZGUgaW5kaWNhdGluZyB0aGUgdHlwZSBvZiBlcnJvciB0aGF0IG9jY3VycmVkLlxuICogLSBgbWVzc2FnZSgpYCAtIGEgaHVtYW4tcmVhZGFibGUgZGVzY3JpcHRpb24gb2YgdGhlIGVycm9yXG4gKiAtIGBpbm5lckV4Y2VwdGlvbigpYCAtIHRoZSBvcmlnaW5hbCBlcnJvciB0aGF0IGNhdXNlZCB0aGUgZmFpbHVyZTsgY2FuIGJlIHJlLXRocm93bi5cbiAqL1xuZXhwb3J0IGNsYXNzIEVycm9yIGV4dGVuZHMgUmVzcG9uc2VFcnJvcihfRXJyb3IpIHt9XG4iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtc29ydGVkLXNldC1nZXQtcmFuay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1nZXQtcmFuay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFJeUI7QUFDekIsbUNBQXNEO0FBUXREOzs7R0FHRztBQUNILE1BQWEsR0FBSSxTQUFRLDRCQUFZO0lBS25DLFlBQVksSUFBWTtRQUN0QixLQUFLLEVBQUUsQ0FBQztRQUpELFNBQUksR0FDWCxxQ0FBNkIsQ0FBQyxHQUFHLENBQUM7UUFJbEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDcEIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLElBQUk7UUFDVCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVlLFFBQVE7UUFDdEIsT0FBTyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsV0FBVyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztJQUNyRCxDQUFDO0NBQ0Y7QUFyQkQsa0JBcUJDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLElBQUssU0FBUSxnQ0FBZ0I7SUFJeEM7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUpELFNBQUksR0FDWCxxQ0FBNkIsQ0FBQyxJQUFJLENBQUM7SUFJckMsQ0FBQztJQUVNLElBQUk7UUFDVCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0NBQ0Y7QUFYRCxvQkFXQztBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILE1BQWEsS0FBTSxTQUFRLGlDQUFpQjtJQUkxQyxZQUFZLEtBQWU7UUFDekIsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBSk4sU0FBSSxHQUNYLHFDQUE2QixDQUFDLEtBQUssQ0FBQztJQUl0QyxDQUFDO0lBRU0sSUFBSTtRQUNULE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7Q0FDRjtBQVhELHNCQVdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgUmVzcG9uc2VCYXNlLFxuICBCYXNlUmVzcG9uc2VFcnJvcixcbiAgQmFzZVJlc3BvbnNlTWlzcyxcbn0gZnJvbSAnLi9yZXNwb25zZS1iYXNlJztcbmltcG9ydCB7Q2FjaGVTb3J0ZWRTZXRHZXRSYW5rUmVzcG9uc2V9IGZyb20gJy4vZW51bXMnO1xuaW1wb3J0IHtTZGtFcnJvcn0gZnJvbSAnLi4vLi4vZXJyb3JzJztcblxuaW50ZXJmYWNlIElSZXNwb25zZSB7XG4gIHJhbmsoKTogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICByZWFkb25seSB0eXBlOiBDYWNoZVNvcnRlZFNldEdldFJhbmtSZXNwb25zZTtcbn1cblxuLyoqXG4gKiBJbmRpY2F0ZXMgdGhhdCB0aGUgcmVxdWVzdGVkIGRhdGEgd2FzIHN1Y2Nlc3NmdWxseSByZXRyaWV2ZWQgZnJvbSB0aGUgY2FjaGUuICBQcm92aWRlc1xuICogYHJhbmsoKWAgYWNjZXNzb3IgdG8gcmV0cmlldmUgcmFuay5cbiAqL1xuZXhwb3J0IGNsYXNzIEhpdCBleHRlbmRzIFJlc3BvbnNlQmFzZSBpbXBsZW1lbnRzIElSZXNwb25zZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3Jhbms6IG51bWJlcjtcbiAgcmVhZG9ubHkgdHlwZTogQ2FjaGVTb3J0ZWRTZXRHZXRSYW5rUmVzcG9uc2UuSGl0ID1cbiAgICBDYWNoZVNvcnRlZFNldEdldFJhbmtSZXNwb25zZS5IaXQ7XG5cbiAgY29uc3RydWN0b3IocmFuazogbnVtYmVyKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLl9yYW5rID0gcmFuaztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSByYW5rIG9mIHRoZSBlbGVtZW50IGluIHRoZSBzb3J0ZWQgc2V0LiAgUmFua3Mgc3RhcnQgYXQgMC5cbiAgICogQHJldHVybnMge251bWJlcn1cbiAgICovXG4gIHB1YmxpYyByYW5rKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3Jhbms7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgdG9TdHJpbmcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7c3VwZXIudG9TdHJpbmcoKX06IHJhbms6ICR7dGhpcy5yYW5rKCl9YDtcbiAgfVxufVxuXG4vKipcbiAqIEluZGljYXRlcyB0aGF0IHRoZSByZXF1ZXN0ZWQgZGF0YSB3YXMgbm90IGF2YWlsYWJsZSBpbiB0aGUgY2FjaGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBNaXNzIGV4dGVuZHMgQmFzZVJlc3BvbnNlTWlzcyBpbXBsZW1lbnRzIElSZXNwb25zZSB7XG4gIHJlYWRvbmx5IHR5cGU6IENhY2hlU29ydGVkU2V0R2V0UmFua1Jlc3BvbnNlLk1pc3MgPVxuICAgIENhY2hlU29ydGVkU2V0R2V0UmFua1Jlc3BvbnNlLk1pc3M7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyByYW5rKCk6IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG4vKipcbiAqIEluZGljYXRlcyB0aGF0IGFuIGVycm9yIG9jY3VycmVkIGR1cmluZyB0aGUgc29ydGVkIHNldCBnZXQgcmFuayByZXF1ZXN0LlxuICpcbiAqIFRoaXMgcmVzcG9uc2Ugb2JqZWN0IGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgZmllbGRzIHRoYXQgeW91IGNhbiB1c2UgdG8gZGV0ZXJtaW5lXG4gKiBob3cgeW91IHdvdWxkIGxpa2UgdG8gaGFuZGxlIHRoZSBlcnJvcjpcbiAqXG4gKiAtIGBlcnJvckNvZGUoKWAgLSBhIHVuaXF1ZSBNb21lbnRvIGVycm9yIGNvZGUgaW5kaWNhdGluZyB0aGUgdHlwZSBvZiBlcnJvciB0aGF0IG9jY3VycmVkLlxuICogLSBgbWVzc2FnZSgpYCAtIGEgaHVtYW4tcmVhZGFibGUgZGVzY3JpcHRpb24gb2YgdGhlIGVycm9yXG4gKiAtIGBpbm5lckV4Y2VwdGlvbigpYCAtIHRoZSBvcmlnaW5hbCBlcnJvciB0aGF0IGNhdXNlZCB0aGUgZmFpbHVyZTsgY2FuIGJlIHJlLXRocm93bi5cbiAqL1xuZXhwb3J0IGNsYXNzIEVycm9yIGV4dGVuZHMgQmFzZVJlc3BvbnNlRXJyb3IgaW1wbGVtZW50cyBJUmVzcG9uc2Uge1xuICByZWFkb25seSB0eXBlOiBDYWNoZVNvcnRlZFNldEdldFJhbmtSZXNwb25zZS5FcnJvciA9XG4gICAgQ2FjaGVTb3J0ZWRTZXRHZXRSYW5rUmVzcG9uc2UuRXJyb3I7XG5cbiAgY29uc3RydWN0b3IoZXJyb3I6IFNka0Vycm9yKSB7XG4gICAgc3VwZXIoZXJyb3IpO1xuICB9XG5cbiAgcHVibGljIHJhbmsoKTogdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59XG5cbmV4cG9ydCB0eXBlIFJlc3BvbnNlID0gSGl0IHwgTWlzcyB8IEVycm9yO1xuIl19
@@ -1,31 +1,18 @@
1
- import { ResponseBase } from './response-base';
1
+ import { ResponseBase, BaseResponseMiss, BaseResponseError } from './response-base';
2
2
  import { SdkError } from '../../errors';
3
- /**
4
- * Parent response type for a sorted set get score request. The
5
- * response object is resolved to a type-safe object of one of
6
- * the following subtypes:
7
- *
8
- * - {Hit}
9
- * - {Miss}
10
- * - {Error}
11
- *
12
- * `instanceof` type guards can be used to operate on the appropriate subtype.
13
- * @example
14
- * For example:
15
- * ```
16
- * if (response instanceof CacheSortedSetGetScore.Error) {
17
- * // Handle error as appropriate. The compiler will smart-cast `response` to type
18
- * // `CacheSortedSetGetScore.Error` in this block, so you will have access to the properties
19
- * // of the Error class; e.g. `response.errorCode()`.
20
- * }
21
- * ```
22
- */
23
- export declare abstract class Response extends ResponseBase {
3
+ import { CacheSortedSetGetScoreResponse } from './enums';
4
+ interface IResponse {
24
5
  score(): number | undefined;
6
+ readonly type: CacheSortedSetGetScoreResponse;
25
7
  }
26
- declare class _Hit extends Response {
8
+ /**
9
+ * Indicates that the requested data was successfully retrieved from the cache. Provides
10
+ * `score()` accessor to retrieve score.
11
+ */
12
+ export declare class Hit extends ResponseBase implements IResponse {
27
13
  private readonly _value;
28
14
  private readonly _score;
15
+ readonly type: CacheSortedSetGetScoreResponse.Hit;
29
16
  constructor(score: number, value: Uint8Array);
30
17
  /**
31
18
  * Returns the value of the element in the sorted set as a Uint8Array.
@@ -33,30 +20,23 @@ declare class _Hit extends Response {
33
20
  */
34
21
  valueUint8Array(): Uint8Array;
35
22
  /**
36
- * Returns the score of the element in the sorted set as a string.
23
+ * Returns the value of the element in the sorted set as a string.
37
24
  * @returns {string}
38
25
  */
39
26
  valueString(): string;
40
27
  /**
41
- *
42
- *
28
+ * Returns the score of the element in the sorted set.
43
29
  * @return {*} {number}
44
- * @memberof _Hit
45
30
  */
46
31
  score(): number;
47
32
  toString(): string;
48
33
  }
49
- declare const Hit_base: {
50
- new (...args: any[]): {};
51
- } & typeof _Hit;
52
34
  /**
53
- * Indicates that the requested data was successfully retrieved from the cache. Provides
54
- * `score()` accessor to retrieve score.
35
+ * Indicates that the requested data was not available in the cache.
55
36
  */
56
- export declare class Hit extends Hit_base {
57
- }
58
- declare class _Miss extends Response {
37
+ export declare class Miss extends BaseResponseMiss implements IResponse {
59
38
  private readonly _value;
39
+ readonly type: CacheSortedSetGetScoreResponse.Miss;
60
40
  constructor(value: Uint8Array);
61
41
  /**
62
42
  * Returns the value of the element in the sorted set as a Uint8Array.
@@ -68,21 +48,22 @@ declare class _Miss extends Response {
68
48
  * @returns {string}
69
49
  */
70
50
  valueString(): string;
51
+ score(): undefined;
71
52
  toString(): string;
72
53
  }
73
- declare const Miss_base: {
74
- new (...args: any[]): {
75
- readonly is_miss: boolean;
76
- };
77
- } & typeof _Miss;
78
54
  /**
79
- * Indicates that the requested data was not available in the cache.
55
+ * Indicates that an error occurred during the sorted set get score request.
56
+ *
57
+ * This response object includes the following fields that you can use to determine
58
+ * how you would like to handle the error:
59
+ *
60
+ * - `errorCode()` - a unique Momento error code indicating the type of error that occurred.
61
+ * - `message()` - a human-readable description of the error
62
+ * - `innerException()` - the original error that caused the failure; can be re-thrown.
80
63
  */
81
- export declare class Miss extends Miss_base {
82
- }
83
- declare class _Error extends Response {
84
- protected _innerException: SdkError;
64
+ export declare class Error extends BaseResponseError implements IResponse {
85
65
  private readonly _value;
66
+ readonly type: CacheSortedSetGetScoreResponse.Error;
86
67
  constructor(_innerException: SdkError, value: Uint8Array);
87
68
  /**
88
69
  * Returns the value of the element in the sorted set as a Uint8Array.
@@ -94,26 +75,7 @@ declare class _Error extends Response {
94
75
  * @returns {string}
95
76
  */
96
77
  valueString(): string;
78
+ score(): undefined;
97
79
  }
98
- declare const Error_base: {
99
- new (...args: any[]): {
100
- _innerException: SdkError;
101
- message(): string;
102
- innerException(): SdkError;
103
- errorCode(): import("../../errors").MomentoErrorCode;
104
- toString(): string;
105
- };
106
- } & typeof _Error;
107
- /**
108
- * Indicates that an error occurred during the sorted set get score request.
109
- *
110
- * This response object includes the following fields that you can use to determine
111
- * how you would like to handle the error:
112
- *
113
- * - `errorCode()` - a unique Momento error code indicating the type of error that occurred.
114
- * - `message()` - a human-readable description of the error
115
- * - `innerException()` - the original error that caused the failure; can be re-thrown.
116
- */
117
- export declare class Error extends Error_base {
118
- }
80
+ export type Response = Hit | Miss | Error;
119
81
  export {};
@@ -1,39 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Error = exports.Miss = exports.Hit = exports.Response = void 0;
3
+ exports.Error = exports.Miss = exports.Hit = void 0;
4
4
  const response_base_1 = require("./response-base");
5
+ const enums_1 = require("./enums");
5
6
  /**
6
- * Parent response type for a sorted set get score request. The
7
- * response object is resolved to a type-safe object of one of
8
- * the following subtypes:
9
- *
10
- * - {Hit}
11
- * - {Miss}
12
- * - {Error}
13
- *
14
- * `instanceof` type guards can be used to operate on the appropriate subtype.
15
- * @example
16
- * For example:
17
- * ```
18
- * if (response instanceof CacheSortedSetGetScore.Error) {
19
- * // Handle error as appropriate. The compiler will smart-cast `response` to type
20
- * // `CacheSortedSetGetScore.Error` in this block, so you will have access to the properties
21
- * // of the Error class; e.g. `response.errorCode()`.
22
- * }
23
- * ```
7
+ * Indicates that the requested data was successfully retrieved from the cache. Provides
8
+ * `score()` accessor to retrieve score.
24
9
  */
25
- class Response extends response_base_1.ResponseBase {
26
- score() {
27
- if (this instanceof Hit) {
28
- return this.score();
29
- }
30
- return undefined;
31
- }
32
- }
33
- exports.Response = Response;
34
- class _Hit extends Response {
10
+ class Hit extends response_base_1.ResponseBase {
35
11
  constructor(score, value) {
36
12
  super();
13
+ this.type = enums_1.CacheSortedSetGetScoreResponse.Hit;
37
14
  this._value = value;
38
15
  this._score = score;
39
16
  }
@@ -45,35 +22,31 @@ class _Hit extends Response {
45
22
  return this._value;
46
23
  }
47
24
  /**
48
- * Returns the score of the element in the sorted set as a string.
25
+ * Returns the value of the element in the sorted set as a string.
49
26
  * @returns {string}
50
27
  */
51
28
  valueString() {
52
29
  return new TextDecoder().decode(this._value);
53
30
  }
54
31
  /**
55
- *
56
- *
32
+ * Returns the score of the element in the sorted set.
57
33
  * @return {*} {number}
58
- * @memberof _Hit
59
34
  */
60
35
  score() {
61
36
  return this._score;
62
37
  }
63
38
  toString() {
64
- return `${super.toString()}: value: ${this.valueString()}, score: ${this.score()}`;
39
+ return `${super.toString()}: value: ${this.valueString()}`;
65
40
  }
66
41
  }
42
+ exports.Hit = Hit;
67
43
  /**
68
- * Indicates that the requested data was successfully retrieved from the cache. Provides
69
- * `score()` accessor to retrieve score.
44
+ * Indicates that the requested data was not available in the cache.
70
45
  */
71
- class Hit extends (0, response_base_1.ResponseHit)(_Hit) {
72
- }
73
- exports.Hit = Hit;
74
- class _Miss extends Response {
46
+ class Miss extends response_base_1.BaseResponseMiss {
75
47
  constructor(value) {
76
48
  super();
49
+ this.type = enums_1.CacheSortedSetGetScoreResponse.Miss;
77
50
  this._value = value;
78
51
  }
79
52
  /**
@@ -90,20 +63,28 @@ class _Miss extends Response {
90
63
  valueString() {
91
64
  return new TextDecoder().decode(this._value);
92
65
  }
66
+ score() {
67
+ return undefined;
68
+ }
93
69
  toString() {
94
70
  return `${super.toString()}: value: ${this.valueString()}`;
95
71
  }
96
72
  }
73
+ exports.Miss = Miss;
97
74
  /**
98
- * Indicates that the requested data was not available in the cache.
75
+ * Indicates that an error occurred during the sorted set get score request.
76
+ *
77
+ * This response object includes the following fields that you can use to determine
78
+ * how you would like to handle the error:
79
+ *
80
+ * - `errorCode()` - a unique Momento error code indicating the type of error that occurred.
81
+ * - `message()` - a human-readable description of the error
82
+ * - `innerException()` - the original error that caused the failure; can be re-thrown.
99
83
  */
100
- class Miss extends (0, response_base_1.ResponseMiss)(_Miss) {
101
- }
102
- exports.Miss = Miss;
103
- class _Error extends Response {
84
+ class Error extends response_base_1.BaseResponseError {
104
85
  constructor(_innerException, value) {
105
- super();
106
- this._innerException = _innerException;
86
+ super(_innerException);
87
+ this.type = enums_1.CacheSortedSetGetScoreResponse.Error;
107
88
  this._value = value;
108
89
  }
109
90
  /**
@@ -120,18 +101,9 @@ class _Error extends Response {
120
101
  valueString() {
121
102
  return new TextDecoder().decode(this._value);
122
103
  }
123
- }
124
- /**
125
- * Indicates that an error occurred during the sorted set get score request.
126
- *
127
- * This response object includes the following fields that you can use to determine
128
- * how you would like to handle the error:
129
- *
130
- * - `errorCode()` - a unique Momento error code indicating the type of error that occurred.
131
- * - `message()` - a human-readable description of the error
132
- * - `innerException()` - the original error that caused the failure; can be re-thrown.
133
- */
134
- class Error extends (0, response_base_1.ResponseError)(_Error) {
104
+ score() {
105
+ return undefined;
106
+ }
135
107
  }
136
108
  exports.Error = Error;
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtc29ydGVkLXNldC1nZXQtc2NvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNvcnRlZC1zZXQtZ2V0LXNjb3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUt5QjtBQUd6Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQUNILE1BQXNCLFFBQVMsU0FBUSw0QkFBWTtJQUMxQyxLQUFLO1FBQ1YsSUFBSSxJQUFJLFlBQVksR0FBRyxFQUFFO1lBQ3ZCLE9BQVEsSUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQzlCO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztDQUNGO0FBUEQsNEJBT0M7QUFFRCxNQUFNLElBQUssU0FBUSxRQUFRO0lBSXpCLFlBQVksS0FBYSxFQUFFLEtBQWlCO1FBQzFDLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGVBQWU7UUFDcEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxXQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEtBQUs7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVlLFFBQVE7UUFDdEIsT0FBTyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsWUFBWSxJQUFJLENBQUMsV0FBVyxFQUFFLFlBQVksSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7SUFDckYsQ0FBQztDQUNGO0FBRUQ7OztHQUdHO0FBQ0gsTUFBYSxHQUFJLFNBQVEsSUFBQSwyQkFBVyxFQUFDLElBQUksQ0FBQztDQUFHO0FBQTdDLGtCQUE2QztBQUU3QyxNQUFNLEtBQU0sU0FBUSxRQUFRO0lBRzFCLFlBQVksS0FBaUI7UUFDM0IsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksZUFBZTtRQUNwQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFdBQVc7UUFDaEIsT0FBTyxJQUFJLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVlLFFBQVE7UUFDdEIsT0FBTyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsWUFBWSxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztJQUM3RCxDQUFDO0NBQ0Y7QUFFRDs7R0FFRztBQUNILE1BQWEsSUFBSyxTQUFRLElBQUEsNEJBQVksRUFBQyxLQUFLLENBQUM7Q0FBRztBQUFoRCxvQkFBZ0Q7QUFFaEQsTUFBTSxNQUFPLFNBQVEsUUFBUTtJQUczQixZQUFzQixlQUF5QixFQUFFLEtBQWlCO1FBQ2hFLEtBQUssRUFBRSxDQUFDO1FBRFksb0JBQWUsR0FBZixlQUFlLENBQVU7UUFFN0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGVBQWU7UUFDcEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxXQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9DLENBQUM7Q0FDRjtBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILE1BQWEsS0FBTSxTQUFRLElBQUEsNkJBQWEsRUFBQyxNQUFNLENBQUM7Q0FBRztBQUFuRCxzQkFBbUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBSZXNwb25zZUJhc2UsXG4gIFJlc3BvbnNlSGl0LFxuICBSZXNwb25zZU1pc3MsXG4gIFJlc3BvbnNlRXJyb3IsXG59IGZyb20gJy4vcmVzcG9uc2UtYmFzZSc7XG5pbXBvcnQge1Nka0Vycm9yfSBmcm9tICcuLi8uLi9lcnJvcnMnO1xuXG4vKipcbiAqIFBhcmVudCByZXNwb25zZSB0eXBlIGZvciBhIHNvcnRlZCBzZXQgZ2V0IHNjb3JlIHJlcXVlc3QuICBUaGVcbiAqIHJlc3BvbnNlIG9iamVjdCBpcyByZXNvbHZlZCB0byBhIHR5cGUtc2FmZSBvYmplY3Qgb2Ygb25lIG9mXG4gKiB0aGUgZm9sbG93aW5nIHN1YnR5cGVzOlxuICpcbiAqIC0ge0hpdH1cbiAqIC0ge01pc3N9XG4gKiAtIHtFcnJvcn1cbiAqXG4gKiBgaW5zdGFuY2VvZmAgdHlwZSBndWFyZHMgY2FuIGJlIHVzZWQgdG8gb3BlcmF0ZSBvbiB0aGUgYXBwcm9wcmlhdGUgc3VidHlwZS5cbiAqIEBleGFtcGxlXG4gKiBGb3IgZXhhbXBsZTpcbiAqIGBgYFxuICogaWYgKHJlc3BvbnNlIGluc3RhbmNlb2YgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZS5FcnJvcikge1xuICogICAvLyBIYW5kbGUgZXJyb3IgYXMgYXBwcm9wcmlhdGUuICBUaGUgY29tcGlsZXIgd2lsbCBzbWFydC1jYXN0IGByZXNwb25zZWAgdG8gdHlwZVxuICogICAvLyBgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZS5FcnJvcmAgaW4gdGhpcyBibG9jaywgc28geW91IHdpbGwgaGF2ZSBhY2Nlc3MgdG8gdGhlIHByb3BlcnRpZXNcbiAqICAgLy8gb2YgdGhlIEVycm9yIGNsYXNzOyBlLmcuIGByZXNwb25zZS5lcnJvckNvZGUoKWAuXG4gKiB9XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJlc3BvbnNlIGV4dGVuZHMgUmVzcG9uc2VCYXNlIHtcbiAgcHVibGljIHNjb3JlKCk6IG51bWJlciB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKHRoaXMgaW5zdGFuY2VvZiBIaXQpIHtcbiAgICAgIHJldHVybiAodGhpcyBhcyBIaXQpLnNjb3JlKCk7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cblxuY2xhc3MgX0hpdCBleHRlbmRzIFJlc3BvbnNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfdmFsdWU6IFVpbnQ4QXJyYXk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3Njb3JlOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3Ioc2NvcmU6IG51bWJlciwgdmFsdWU6IFVpbnQ4QXJyYXkpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5fc2NvcmUgPSBzY29yZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgZWxlbWVudCBpbiB0aGUgc29ydGVkIHNldCBhcyBhIFVpbnQ4QXJyYXkuXG4gICAqIEByZXR1cm5zIHtudW1iZXJ9XG4gICAqL1xuICBwdWJsaWMgdmFsdWVVaW50OEFycmF5KCk6IFVpbnQ4QXJyYXkge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBzY29yZSBvZiB0aGUgZWxlbWVudCBpbiB0aGUgc29ydGVkIHNldCBhcyBhIHN0cmluZy5cbiAgICogQHJldHVybnMge3N0cmluZ31cbiAgICovXG4gIHB1YmxpYyB2YWx1ZVN0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiBuZXcgVGV4dERlY29kZXIoKS5kZWNvZGUodGhpcy5fdmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqXG4gICAqIEByZXR1cm4geyp9ICB7bnVtYmVyfVxuICAgKiBAbWVtYmVyb2YgX0hpdFxuICAgKi9cbiAgcHVibGljIHNjb3JlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3Njb3JlO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3N1cGVyLnRvU3RyaW5nKCl9OiB2YWx1ZTogJHt0aGlzLnZhbHVlU3RyaW5nKCl9LCBzY29yZTogJHt0aGlzLnNjb3JlKCl9YDtcbiAgfVxufVxuXG4vKipcbiAqIEluZGljYXRlcyB0aGF0IHRoZSByZXF1ZXN0ZWQgZGF0YSB3YXMgc3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCBmcm9tIHRoZSBjYWNoZS4gIFByb3ZpZGVzXG4gKiBgc2NvcmUoKWAgYWNjZXNzb3IgdG8gcmV0cmlldmUgc2NvcmUuXG4gKi9cbmV4cG9ydCBjbGFzcyBIaXQgZXh0ZW5kcyBSZXNwb25zZUhpdChfSGl0KSB7fVxuXG5jbGFzcyBfTWlzcyBleHRlbmRzIFJlc3BvbnNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfdmFsdWU6IFVpbnQ4QXJyYXk7XG5cbiAgY29uc3RydWN0b3IodmFsdWU6IFVpbnQ4QXJyYXkpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlIGVsZW1lbnQgaW4gdGhlIHNvcnRlZCBzZXQgYXMgYSBVaW50OEFycmF5LlxuICAgKiBAcmV0dXJucyB7bnVtYmVyfVxuICAgKi9cbiAgcHVibGljIHZhbHVlVWludDhBcnJheSgpOiBVaW50OEFycmF5IHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgc2NvcmUgb2YgdGhlIGVsZW1lbnQgaW4gdGhlIHNvcnRlZCBzZXQgYXMgYSBzdHJpbmcuXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICBwdWJsaWMgdmFsdWVTdHJpbmcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gbmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKHRoaXMuX3ZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHtzdXBlci50b1N0cmluZygpfTogdmFsdWU6ICR7dGhpcy52YWx1ZVN0cmluZygpfWA7XG4gIH1cbn1cblxuLyoqXG4gKiBJbmRpY2F0ZXMgdGhhdCB0aGUgcmVxdWVzdGVkIGRhdGEgd2FzIG5vdCBhdmFpbGFibGUgaW4gdGhlIGNhY2hlLlxuICovXG5leHBvcnQgY2xhc3MgTWlzcyBleHRlbmRzIFJlc3BvbnNlTWlzcyhfTWlzcykge31cblxuY2xhc3MgX0Vycm9yIGV4dGVuZHMgUmVzcG9uc2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF92YWx1ZTogVWludDhBcnJheTtcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX2lubmVyRXhjZXB0aW9uOiBTZGtFcnJvciwgdmFsdWU6IFVpbnQ4QXJyYXkpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlIGVsZW1lbnQgaW4gdGhlIHNvcnRlZCBzZXQgYXMgYSBVaW50OEFycmF5LlxuICAgKiBAcmV0dXJucyB7bnVtYmVyfVxuICAgKi9cbiAgcHVibGljIHZhbHVlVWludDhBcnJheSgpOiBVaW50OEFycmF5IHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgc2NvcmUgb2YgdGhlIGVsZW1lbnQgaW4gdGhlIHNvcnRlZCBzZXQgYXMgYSBzdHJpbmcuXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICBwdWJsaWMgdmFsdWVTdHJpbmcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gbmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKHRoaXMuX3ZhbHVlKTtcbiAgfVxufVxuXG4vKipcbiAqIEluZGljYXRlcyB0aGF0IGFuIGVycm9yIG9jY3VycmVkIGR1cmluZyB0aGUgc29ydGVkIHNldCBnZXQgc2NvcmUgcmVxdWVzdC5cbiAqXG4gKiBUaGlzIHJlc3BvbnNlIG9iamVjdCBpbmNsdWRlcyB0aGUgZm9sbG93aW5nIGZpZWxkcyB0aGF0IHlvdSBjYW4gdXNlIHRvIGRldGVybWluZVxuICogaG93IHlvdSB3b3VsZCBsaWtlIHRvIGhhbmRsZSB0aGUgZXJyb3I6XG4gKlxuICogLSBgZXJyb3JDb2RlKClgIC0gYSB1bmlxdWUgTW9tZW50byBlcnJvciBjb2RlIGluZGljYXRpbmcgdGhlIHR5cGUgb2YgZXJyb3IgdGhhdCBvY2N1cnJlZC5cbiAqIC0gYG1lc3NhZ2UoKWAgLSBhIGh1bWFuLXJlYWRhYmxlIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvclxuICogLSBgaW5uZXJFeGNlcHRpb24oKWAgLSB0aGUgb3JpZ2luYWwgZXJyb3IgdGhhdCBjYXVzZWQgdGhlIGZhaWx1cmU7IGNhbiBiZSByZS10aHJvd24uXG4gKi9cbmV4cG9ydCBjbGFzcyBFcnJvciBleHRlbmRzIFJlc3BvbnNlRXJyb3IoX0Vycm9yKSB7fVxuIl19
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtc29ydGVkLXNldC1nZXQtc2NvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNvcnRlZC1zZXQtZ2V0LXNjb3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUl5QjtBQUV6QixtQ0FBdUQ7QUFPdkQ7OztHQUdHO0FBQ0gsTUFBYSxHQUFJLFNBQVEsNEJBQVk7SUFNbkMsWUFBWSxLQUFhLEVBQUUsS0FBaUI7UUFDMUMsS0FBSyxFQUFFLENBQUM7UUFKRCxTQUFJLEdBQ1gsc0NBQThCLENBQUMsR0FBRyxDQUFDO1FBSW5DLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxlQUFlO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksV0FBVztRQUNoQixPQUFPLElBQUksV0FBVyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksS0FBSztRQUNWLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRWUsUUFBUTtRQUN0QixPQUFPLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxZQUFZLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO0lBQzdELENBQUM7Q0FDRjtBQXZDRCxrQkF1Q0M7QUFFRDs7R0FFRztBQUNILE1BQWEsSUFBSyxTQUFRLGdDQUFnQjtJQUt4QyxZQUFZLEtBQWlCO1FBQzNCLEtBQUssRUFBRSxDQUFDO1FBSkQsU0FBSSxHQUNYLHNDQUE4QixDQUFDLElBQUksQ0FBQztRQUlwQyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksZUFBZTtRQUNwQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFdBQVc7UUFDaEIsT0FBTyxJQUFJLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVNLEtBQUs7UUFDVixPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRWUsUUFBUTtRQUN0QixPQUFPLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxZQUFZLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO0lBQzdELENBQUM7Q0FDRjtBQWpDRCxvQkFpQ0M7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFhLEtBQU0sU0FBUSxpQ0FBaUI7SUFLMUMsWUFBWSxlQUF5QixFQUFFLEtBQWlCO1FBQ3RELEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUpoQixTQUFJLEdBQ1gsc0NBQThCLENBQUMsS0FBSyxDQUFDO1FBSXJDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxlQUFlO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksV0FBVztRQUNoQixPQUFPLElBQUksV0FBVyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRU0sS0FBSztRQUNWLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7Q0FDRjtBQTdCRCxzQkE2QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBSZXNwb25zZUJhc2UsXG4gIEJhc2VSZXNwb25zZU1pc3MsXG4gIEJhc2VSZXNwb25zZUVycm9yLFxufSBmcm9tICcuL3Jlc3BvbnNlLWJhc2UnO1xuaW1wb3J0IHtTZGtFcnJvcn0gZnJvbSAnLi4vLi4vZXJyb3JzJztcbmltcG9ydCB7Q2FjaGVTb3J0ZWRTZXRHZXRTY29yZVJlc3BvbnNlfSBmcm9tICcuL2VudW1zJztcblxuaW50ZXJmYWNlIElSZXNwb25zZSB7XG4gIHNjb3JlKCk6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgcmVhZG9ubHkgdHlwZTogQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZVJlc3BvbnNlO1xufVxuXG4vKipcbiAqIEluZGljYXRlcyB0aGF0IHRoZSByZXF1ZXN0ZWQgZGF0YSB3YXMgc3VjY2Vzc2Z1bGx5IHJldHJpZXZlZCBmcm9tIHRoZSBjYWNoZS4gIFByb3ZpZGVzXG4gKiBgc2NvcmUoKWAgYWNjZXNzb3IgdG8gcmV0cmlldmUgc2NvcmUuXG4gKi9cbmV4cG9ydCBjbGFzcyBIaXQgZXh0ZW5kcyBSZXNwb25zZUJhc2UgaW1wbGVtZW50cyBJUmVzcG9uc2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF92YWx1ZTogVWludDhBcnJheTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc2NvcmU6IG51bWJlcjtcbiAgcmVhZG9ubHkgdHlwZTogQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZVJlc3BvbnNlLkhpdCA9XG4gICAgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZVJlc3BvbnNlLkhpdDtcblxuICBjb25zdHJ1Y3RvcihzY29yZTogbnVtYmVyLCB2YWx1ZTogVWludDhBcnJheSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLl9zY29yZSA9IHNjb3JlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSBlbGVtZW50IGluIHRoZSBzb3J0ZWQgc2V0IGFzIGEgVWludDhBcnJheS5cbiAgICogQHJldHVybnMge251bWJlcn1cbiAgICovXG4gIHB1YmxpYyB2YWx1ZVVpbnQ4QXJyYXkoKTogVWludDhBcnJheSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSBlbGVtZW50IGluIHRoZSBzb3J0ZWQgc2V0IGFzIGEgc3RyaW5nLlxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxuICAgKi9cbiAgcHVibGljIHZhbHVlU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIG5ldyBUZXh0RGVjb2RlcigpLmRlY29kZSh0aGlzLl92YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgc2NvcmUgb2YgdGhlIGVsZW1lbnQgaW4gdGhlIHNvcnRlZCBzZXQuXG4gICAqIEByZXR1cm4geyp9ICB7bnVtYmVyfVxuICAgKi9cbiAgcHVibGljIHNjb3JlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3Njb3JlO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3N1cGVyLnRvU3RyaW5nKCl9OiB2YWx1ZTogJHt0aGlzLnZhbHVlU3RyaW5nKCl9YDtcbiAgfVxufVxuXG4vKipcbiAqIEluZGljYXRlcyB0aGF0IHRoZSByZXF1ZXN0ZWQgZGF0YSB3YXMgbm90IGF2YWlsYWJsZSBpbiB0aGUgY2FjaGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBNaXNzIGV4dGVuZHMgQmFzZVJlc3BvbnNlTWlzcyBpbXBsZW1lbnRzIElSZXNwb25zZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3ZhbHVlOiBVaW50OEFycmF5O1xuICByZWFkb25seSB0eXBlOiBDYWNoZVNvcnRlZFNldEdldFNjb3JlUmVzcG9uc2UuTWlzcyA9XG4gICAgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZVJlc3BvbnNlLk1pc3M7XG5cbiAgY29uc3RydWN0b3IodmFsdWU6IFVpbnQ4QXJyYXkpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlIGVsZW1lbnQgaW4gdGhlIHNvcnRlZCBzZXQgYXMgYSBVaW50OEFycmF5LlxuICAgKiBAcmV0dXJucyB7bnVtYmVyfVxuICAgKi9cbiAgcHVibGljIHZhbHVlVWludDhBcnJheSgpOiBVaW50OEFycmF5IHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgc2NvcmUgb2YgdGhlIGVsZW1lbnQgaW4gdGhlIHNvcnRlZCBzZXQgYXMgYSBzdHJpbmcuXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICBwdWJsaWMgdmFsdWVTdHJpbmcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gbmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKHRoaXMuX3ZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBzY29yZSgpOiB1bmRlZmluZWQge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgdG9TdHJpbmcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7c3VwZXIudG9TdHJpbmcoKX06IHZhbHVlOiAke3RoaXMudmFsdWVTdHJpbmcoKX1gO1xuICB9XG59XG5cbi8qKlxuICogSW5kaWNhdGVzIHRoYXQgYW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIHRoZSBzb3J0ZWQgc2V0IGdldCBzY29yZSByZXF1ZXN0LlxuICpcbiAqIFRoaXMgcmVzcG9uc2Ugb2JqZWN0IGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgZmllbGRzIHRoYXQgeW91IGNhbiB1c2UgdG8gZGV0ZXJtaW5lXG4gKiBob3cgeW91IHdvdWxkIGxpa2UgdG8gaGFuZGxlIHRoZSBlcnJvcjpcbiAqXG4gKiAtIGBlcnJvckNvZGUoKWAgLSBhIHVuaXF1ZSBNb21lbnRvIGVycm9yIGNvZGUgaW5kaWNhdGluZyB0aGUgdHlwZSBvZiBlcnJvciB0aGF0IG9jY3VycmVkLlxuICogLSBgbWVzc2FnZSgpYCAtIGEgaHVtYW4tcmVhZGFibGUgZGVzY3JpcHRpb24gb2YgdGhlIGVycm9yXG4gKiAtIGBpbm5lckV4Y2VwdGlvbigpYCAtIHRoZSBvcmlnaW5hbCBlcnJvciB0aGF0IGNhdXNlZCB0aGUgZmFpbHVyZTsgY2FuIGJlIHJlLXRocm93bi5cbiAqL1xuZXhwb3J0IGNsYXNzIEVycm9yIGV4dGVuZHMgQmFzZVJlc3BvbnNlRXJyb3IgaW1wbGVtZW50cyBJUmVzcG9uc2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF92YWx1ZTogVWludDhBcnJheTtcbiAgcmVhZG9ubHkgdHlwZTogQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZVJlc3BvbnNlLkVycm9yID1cbiAgICBDYWNoZVNvcnRlZFNldEdldFNjb3JlUmVzcG9uc2UuRXJyb3I7XG5cbiAgY29uc3RydWN0b3IoX2lubmVyRXhjZXB0aW9uOiBTZGtFcnJvciwgdmFsdWU6IFVpbnQ4QXJyYXkpIHtcbiAgICBzdXBlcihfaW5uZXJFeGNlcHRpb24pO1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlIGVsZW1lbnQgaW4gdGhlIHNvcnRlZCBzZXQgYXMgYSBVaW50OEFycmF5LlxuICAgKiBAcmV0dXJucyB7bnVtYmVyfVxuICAgKi9cbiAgcHVibGljIHZhbHVlVWludDhBcnJheSgpOiBVaW50OEFycmF5IHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgc2NvcmUgb2YgdGhlIGVsZW1lbnQgaW4gdGhlIHNvcnRlZCBzZXQgYXMgYSBzdHJpbmcuXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICBwdWJsaWMgdmFsdWVTdHJpbmcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gbmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKHRoaXMuX3ZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBzY29yZSgpOiB1bmRlZmluZWQge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgUmVzcG9uc2UgPSBIaXQgfCBNaXNzIHwgRXJyb3I7XG4iXX0=