@gomomento/sdk-core 1.65.3 → 1.66.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.
@@ -41,7 +41,7 @@ export interface IVectorIndexClient extends IVectorIndexControlClient {
41
41
  upsertItemBatch(indexName: string, items: Array<VectorIndexItem>): Promise<VectorUpsertItemBatch.Response>;
42
42
  search(indexName: string, queryVector: Array<number>, options?: SearchOptions): Promise<VectorSearch.Response>;
43
43
  searchAndFetchVectors(indexName: string, queryVector: Array<number>, options?: SearchOptions): Promise<VectorSearchAndFetchVectors.Response>;
44
- deleteItemBatch(indexName: string, filter: Array<string>): Promise<VectorDeleteItemBatch.Response>;
44
+ deleteItemBatch(indexName: string, filter: VectorFilterExpression | Array<string>): Promise<VectorDeleteItemBatch.Response>;
45
45
  getItemBatch(indexName: string, filter: Array<string>): Promise<VectorGetItemBatch.Response>;
46
46
  getItemMetadataBatch(indexName: string, filter: Array<string>, metadataFields?: Array<string>): Promise<VectorGetItemMetadataBatch.Response>;
47
47
  }
@@ -9,4 +9,4 @@ exports.ALL_VECTOR_METADATA = Symbol('ALL_VECTOR_METADATA');
9
9
  * The default number of results to return.
10
10
  */
11
11
  exports.VECTOR_DEFAULT_TOPK = 10;
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVZlY3RvckluZGV4Q2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NsaWVudHMvSVZlY3RvckluZGV4Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWFBOztHQUVHO0FBQ1UsUUFBQSxtQkFBbUIsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQUVqRTs7R0FFRztBQUNVLFFBQUEsbUJBQW1CLEdBQUcsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJVmVjdG9ySW5kZXhDb250cm9sQ2xpZW50fSBmcm9tICcuLi9pbnRlcm5hbC9jbGllbnRzJztcbmltcG9ydCB7XG4gIFZlY3RvckNvdW50SXRlbXMsXG4gIFZlY3RvckRlbGV0ZUl0ZW1CYXRjaCxcbiAgVmVjdG9yR2V0SXRlbUJhdGNoLFxuICBWZWN0b3JHZXRJdGVtTWV0YWRhdGFCYXRjaCxcbiAgVmVjdG9yU2VhcmNoLFxuICBWZWN0b3JTZWFyY2hBbmRGZXRjaFZlY3RvcnMsXG4gIFZlY3RvclVwc2VydEl0ZW1CYXRjaCxcbn0gZnJvbSAnLi4vbWVzc2FnZXMvcmVzcG9uc2VzL3ZlY3Rvcic7XG5pbXBvcnQge1ZlY3RvckluZGV4SXRlbX0gZnJvbSAnLi4vbWVzc2FnZXMvdmVjdG9yLWluZGV4JztcbmltcG9ydCB7VmVjdG9yRmlsdGVyRXhwcmVzc2lvbn0gZnJvbSAnLi4vbWVzc2FnZXMvdmVjdG9yLWluZGV4LWZpbHRlcnMnO1xuXG4vKipcbiAqIEEgc3BlY2lhbCB2YWx1ZSB0byByZXF1ZXN0IGFsbCBtZXRhZGF0YSBmaWVsZHMuXG4gKi9cbmV4cG9ydCBjb25zdCBBTExfVkVDVE9SX01FVEFEQVRBID0gU3ltYm9sKCdBTExfVkVDVE9SX01FVEFEQVRBJyk7XG5cbi8qKlxuICogVGhlIGRlZmF1bHQgbnVtYmVyIG9mIHJlc3VsdHMgdG8gcmV0dXJuLlxuICovXG5leHBvcnQgY29uc3QgVkVDVE9SX0RFRkFVTFRfVE9QSyA9IDEwO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHRoZSBzZWFyY2ggb3BlcmF0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaE9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIG51bWJlciBvZiByZXN1bHRzIHRvIHJldHVybi4gRGVmYXVsdHMgdG8ge0BsaW5rIFZFQ1RPUl9ERUZBVUxUX1RPUEt9LlxuICAgKi9cbiAgdG9wSz86IG51bWJlcjtcbiAgLyoqXG4gICAqIEEgbGlzdCBvZiBtZXRhZGF0YSBmaWVsZHMgdG8gcmV0dXJuIHdpdGggZWFjaCByZXN1bHQsXG4gICAqIG9yIGEgdmFsdWUgaW5kaWNhdGluZyBhbGwgbWV0YWRhdGEgc2hvdWxkIGJlIHJldHVybmVkLiBJZiBub3QgcHJvdmlkZWQsIG5vIG1ldGFkYXRhIGlzIHJldHVybmVkLiBEZWZhdWx0cyB0byBOb25lLlxuICAgKi9cbiAgbWV0YWRhdGFGaWVsZHM/OiBBcnJheTxzdHJpbmc+IHwgdHlwZW9mIEFMTF9WRUNUT1JfTUVUQURBVEE7XG4gIC8qKlxuICAgKiBBIHNjb3JlIHRocmVzaG9sZCB0byBmaWx0ZXIgcmVzdWx0cyBieS4gVGhlIHRocmVzaG9sZCBpcyBleGNsdXNpdmUuIERlZmF1bHRzIHRvIG5vIHRocmVzaG9sZC5cbiAgICogLSBGb3IgY29zaW5lIHNpbWlsYXJpdHkgYW5kIGlubmVyIHByb2R1Y3QsIHNjb3JlcyBsb3dlciB0aGFuIHRoZSB0aHJlc2hvbGRcbiAgICogICBhcmUgZXhjbHVkZWQuXG4gICAqIC0gRm9yIGV1Y2xpZGVhbiBzaW1pbGFyaXR5LCBzY29yZXMgaGlnaGVyIHRoYW4gdGhlIHRocmVzaG9sZFxuICAgKiAgIGFyZSBleGNsdWRlZC5cbiAgICovXG4gIHNjb3JlVGhyZXNob2xkPzogbnVtYmVyO1xuICAvKipcbiAgICogQSBmaWx0ZXIgZXhwcmVzc2lvbiB0byBmaWx0ZXIgcmVzdWx0cyBieS4gRGVmYXVsdHMgdG8gbm8gZmlsdGVyLlxuICAgKi9cbiAgZmlsdGVyPzogVmVjdG9yRmlsdGVyRXhwcmVzc2lvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVmVjdG9ySW5kZXhDbGllbnQgZXh0ZW5kcyBJVmVjdG9ySW5kZXhDb250cm9sQ2xpZW50IHtcbiAgY291bnRJdGVtcyhpbmRleE5hbWU6IHN0cmluZyk6IFByb21pc2U8VmVjdG9yQ291bnRJdGVtcy5SZXNwb25zZT47XG5cbiAgdXBzZXJ0SXRlbUJhdGNoKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIGl0ZW1zOiBBcnJheTxWZWN0b3JJbmRleEl0ZW0+XG4gICk6IFByb21pc2U8VmVjdG9yVXBzZXJ0SXRlbUJhdGNoLlJlc3BvbnNlPjtcblxuICBzZWFyY2goXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgcXVlcnlWZWN0b3I6IEFycmF5PG51bWJlcj4sXG4gICAgb3B0aW9ucz86IFNlYXJjaE9wdGlvbnNcbiAgKTogUHJvbWlzZTxWZWN0b3JTZWFyY2guUmVzcG9uc2U+O1xuXG4gIHNlYXJjaEFuZEZldGNoVmVjdG9ycyhcbiAgICBpbmRleE5hbWU6IHN0cmluZyxcbiAgICBxdWVyeVZlY3RvcjogQXJyYXk8bnVtYmVyPixcbiAgICBvcHRpb25zPzogU2VhcmNoT3B0aW9uc1xuICApOiBQcm9taXNlPFZlY3RvclNlYXJjaEFuZEZldGNoVmVjdG9ycy5SZXNwb25zZT47XG5cbiAgZGVsZXRlSXRlbUJhdGNoKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIGZpbHRlcjogQXJyYXk8c3RyaW5nPlxuICApOiBQcm9taXNlPFZlY3RvckRlbGV0ZUl0ZW1CYXRjaC5SZXNwb25zZT47XG5cbiAgZ2V0SXRlbUJhdGNoKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIGZpbHRlcjogQXJyYXk8c3RyaW5nPlxuICApOiBQcm9taXNlPFZlY3RvckdldEl0ZW1CYXRjaC5SZXNwb25zZT47XG5cbiAgZ2V0SXRlbU1ldGFkYXRhQmF0Y2goXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgZmlsdGVyOiBBcnJheTxzdHJpbmc+LFxuICAgIG1ldGFkYXRhRmllbGRzPzogQXJyYXk8c3RyaW5nPlxuICApOiBQcm9taXNlPFZlY3RvckdldEl0ZW1NZXRhZGF0YUJhdGNoLlJlc3BvbnNlPjtcbn1cbiJdfQ==
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVZlY3RvckluZGV4Q2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NsaWVudHMvSVZlY3RvckluZGV4Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWFBOztHQUVHO0FBQ1UsUUFBQSxtQkFBbUIsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQUVqRTs7R0FFRztBQUNVLFFBQUEsbUJBQW1CLEdBQUcsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJVmVjdG9ySW5kZXhDb250cm9sQ2xpZW50fSBmcm9tICcuLi9pbnRlcm5hbC9jbGllbnRzJztcbmltcG9ydCB7XG4gIFZlY3RvckNvdW50SXRlbXMsXG4gIFZlY3RvckRlbGV0ZUl0ZW1CYXRjaCxcbiAgVmVjdG9yR2V0SXRlbUJhdGNoLFxuICBWZWN0b3JHZXRJdGVtTWV0YWRhdGFCYXRjaCxcbiAgVmVjdG9yU2VhcmNoLFxuICBWZWN0b3JTZWFyY2hBbmRGZXRjaFZlY3RvcnMsXG4gIFZlY3RvclVwc2VydEl0ZW1CYXRjaCxcbn0gZnJvbSAnLi4vbWVzc2FnZXMvcmVzcG9uc2VzL3ZlY3Rvcic7XG5pbXBvcnQge1ZlY3RvckluZGV4SXRlbX0gZnJvbSAnLi4vbWVzc2FnZXMvdmVjdG9yLWluZGV4JztcbmltcG9ydCB7VmVjdG9yRmlsdGVyRXhwcmVzc2lvbn0gZnJvbSAnLi4vbWVzc2FnZXMvdmVjdG9yLWluZGV4LWZpbHRlcnMnO1xuXG4vKipcbiAqIEEgc3BlY2lhbCB2YWx1ZSB0byByZXF1ZXN0IGFsbCBtZXRhZGF0YSBmaWVsZHMuXG4gKi9cbmV4cG9ydCBjb25zdCBBTExfVkVDVE9SX01FVEFEQVRBID0gU3ltYm9sKCdBTExfVkVDVE9SX01FVEFEQVRBJyk7XG5cbi8qKlxuICogVGhlIGRlZmF1bHQgbnVtYmVyIG9mIHJlc3VsdHMgdG8gcmV0dXJuLlxuICovXG5leHBvcnQgY29uc3QgVkVDVE9SX0RFRkFVTFRfVE9QSyA9IDEwO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHRoZSBzZWFyY2ggb3BlcmF0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaE9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIG51bWJlciBvZiByZXN1bHRzIHRvIHJldHVybi4gRGVmYXVsdHMgdG8ge0BsaW5rIFZFQ1RPUl9ERUZBVUxUX1RPUEt9LlxuICAgKi9cbiAgdG9wSz86IG51bWJlcjtcbiAgLyoqXG4gICAqIEEgbGlzdCBvZiBtZXRhZGF0YSBmaWVsZHMgdG8gcmV0dXJuIHdpdGggZWFjaCByZXN1bHQsXG4gICAqIG9yIGEgdmFsdWUgaW5kaWNhdGluZyBhbGwgbWV0YWRhdGEgc2hvdWxkIGJlIHJldHVybmVkLiBJZiBub3QgcHJvdmlkZWQsIG5vIG1ldGFkYXRhIGlzIHJldHVybmVkLiBEZWZhdWx0cyB0byBOb25lLlxuICAgKi9cbiAgbWV0YWRhdGFGaWVsZHM/OiBBcnJheTxzdHJpbmc+IHwgdHlwZW9mIEFMTF9WRUNUT1JfTUVUQURBVEE7XG4gIC8qKlxuICAgKiBBIHNjb3JlIHRocmVzaG9sZCB0byBmaWx0ZXIgcmVzdWx0cyBieS4gVGhlIHRocmVzaG9sZCBpcyBleGNsdXNpdmUuIERlZmF1bHRzIHRvIG5vIHRocmVzaG9sZC5cbiAgICogLSBGb3IgY29zaW5lIHNpbWlsYXJpdHkgYW5kIGlubmVyIHByb2R1Y3QsIHNjb3JlcyBsb3dlciB0aGFuIHRoZSB0aHJlc2hvbGRcbiAgICogICBhcmUgZXhjbHVkZWQuXG4gICAqIC0gRm9yIGV1Y2xpZGVhbiBzaW1pbGFyaXR5LCBzY29yZXMgaGlnaGVyIHRoYW4gdGhlIHRocmVzaG9sZFxuICAgKiAgIGFyZSBleGNsdWRlZC5cbiAgICovXG4gIHNjb3JlVGhyZXNob2xkPzogbnVtYmVyO1xuICAvKipcbiAgICogQSBmaWx0ZXIgZXhwcmVzc2lvbiB0byBmaWx0ZXIgcmVzdWx0cyBieS4gRGVmYXVsdHMgdG8gbm8gZmlsdGVyLlxuICAgKi9cbiAgZmlsdGVyPzogVmVjdG9yRmlsdGVyRXhwcmVzc2lvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVmVjdG9ySW5kZXhDbGllbnQgZXh0ZW5kcyBJVmVjdG9ySW5kZXhDb250cm9sQ2xpZW50IHtcbiAgY291bnRJdGVtcyhpbmRleE5hbWU6IHN0cmluZyk6IFByb21pc2U8VmVjdG9yQ291bnRJdGVtcy5SZXNwb25zZT47XG5cbiAgdXBzZXJ0SXRlbUJhdGNoKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIGl0ZW1zOiBBcnJheTxWZWN0b3JJbmRleEl0ZW0+XG4gICk6IFByb21pc2U8VmVjdG9yVXBzZXJ0SXRlbUJhdGNoLlJlc3BvbnNlPjtcblxuICBzZWFyY2goXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgcXVlcnlWZWN0b3I6IEFycmF5PG51bWJlcj4sXG4gICAgb3B0aW9ucz86IFNlYXJjaE9wdGlvbnNcbiAgKTogUHJvbWlzZTxWZWN0b3JTZWFyY2guUmVzcG9uc2U+O1xuXG4gIHNlYXJjaEFuZEZldGNoVmVjdG9ycyhcbiAgICBpbmRleE5hbWU6IHN0cmluZyxcbiAgICBxdWVyeVZlY3RvcjogQXJyYXk8bnVtYmVyPixcbiAgICBvcHRpb25zPzogU2VhcmNoT3B0aW9uc1xuICApOiBQcm9taXNlPFZlY3RvclNlYXJjaEFuZEZldGNoVmVjdG9ycy5SZXNwb25zZT47XG5cbiAgZGVsZXRlSXRlbUJhdGNoKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIGZpbHRlcjogVmVjdG9yRmlsdGVyRXhwcmVzc2lvbiB8IEFycmF5PHN0cmluZz5cbiAgKTogUHJvbWlzZTxWZWN0b3JEZWxldGVJdGVtQmF0Y2guUmVzcG9uc2U+O1xuXG4gIGdldEl0ZW1CYXRjaChcbiAgICBpbmRleE5hbWU6IHN0cmluZyxcbiAgICBmaWx0ZXI6IEFycmF5PHN0cmluZz5cbiAgKTogUHJvbWlzZTxWZWN0b3JHZXRJdGVtQmF0Y2guUmVzcG9uc2U+O1xuXG4gIGdldEl0ZW1NZXRhZGF0YUJhdGNoKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIGZpbHRlcjogQXJyYXk8c3RyaW5nPixcbiAgICBtZXRhZGF0YUZpZWxkcz86IEFycmF5PHN0cmluZz5cbiAgKTogUHJvbWlzZTxWZWN0b3JHZXRJdGVtTWV0YWRhdGFCYXRjaC5SZXNwb25zZT47XG59XG4iXX0=
@@ -1,4 +1,4 @@
1
- import { CreateVectorIndex, DeleteVectorIndex, ListVectorIndexes, VectorCountItems, VectorDeleteItemBatch, VectorGetItemBatch, VectorGetItemMetadataBatch, VectorSearch, VectorSearchAndFetchVectors, VectorUpsertItemBatch } from '../../..';
1
+ import { CreateVectorIndex, DeleteVectorIndex, ListVectorIndexes, VectorCountItems, VectorDeleteItemBatch, VectorFilterExpression, VectorGetItemBatch, VectorGetItemMetadataBatch, VectorSearch, VectorSearchAndFetchVectors, VectorUpsertItemBatch } from '../../..';
2
2
  import { IVectorIndexClient, SearchOptions } from '../../../clients/IVectorIndexClient';
3
3
  import { IVectorIndexControlClient, VectorSimilarityMetric } from './IVectorIndexControlClient';
4
4
  import { VectorIndexItem } from '../../../messages/vector-index';
@@ -112,12 +112,13 @@ export declare abstract class AbstractVectorIndexClient implements IVectorIndexC
112
112
  * Deletes any and all items with the given IDs from the index.
113
113
  *
114
114
  * @param {string} indexName - Name of the index to delete the items from.
115
- * @param {Array<string>} filter - The IDs of the items to be deleted from the index.
115
+ * @param {VectorFilterExpression | Array<string>} filter - A filter expression to match the items to be deleted
116
+ * or an array of item IDs to be deleted.
116
117
  * @returns {Promise<VectorDeleteItemBatch.Response>}
117
118
  * {@link VectorDeleteItemBatch.Success} on success.
118
119
  * {@link VectorDeleteItemBatch.Error} on error.
119
120
  */
120
- deleteItemBatch(indexName: string, filter: Array<string>): Promise<VectorDeleteItemBatch.Response>;
121
+ deleteItemBatch(indexName: string, filter: VectorFilterExpression | Array<string>): Promise<VectorDeleteItemBatch.Response>;
121
122
  /**
122
123
  * Gets a batch of items from a vector index by ID.
123
124
  *
@@ -125,7 +125,8 @@ class AbstractVectorIndexClient {
125
125
  * Deletes any and all items with the given IDs from the index.
126
126
  *
127
127
  * @param {string} indexName - Name of the index to delete the items from.
128
- * @param {Array<string>} filter - The IDs of the items to be deleted from the index.
128
+ * @param {VectorFilterExpression | Array<string>} filter - A filter expression to match the items to be deleted
129
+ * or an array of item IDs to be deleted.
129
130
  * @returns {Promise<VectorDeleteItemBatch.Response>}
130
131
  * {@link VectorDeleteItemBatch.Success} on success.
131
132
  * {@link VectorDeleteItemBatch.Error} on error.
@@ -159,4 +160,4 @@ class AbstractVectorIndexClient {
159
160
  }
160
161
  }
161
162
  exports.AbstractVectorIndexClient = AbstractVectorIndexClient;
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RWZWN0b3JJbmRleENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC9jbGllbnRzL3ZlY3Rvci9BYnN0cmFjdFZlY3RvckluZGV4Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQXVCQSxNQUFzQix5QkFBeUI7SUFNN0MsWUFDRSxhQUF3QyxFQUN4QyxVQUFrQztRQUVsQyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BdUJHO0lBQ0ksS0FBSyxDQUFDLFdBQVcsQ0FDdEIsU0FBaUIsRUFDakIsYUFBcUIsRUFDckIsZ0JBQXlDO1FBRXpDLE9BQU8sTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FDekMsU0FBUyxFQUNULGFBQWEsRUFDYixnQkFBZ0IsQ0FDakIsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxLQUFLLENBQUMsV0FBVztRQUN0QixPQUFPLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNJLEtBQUssQ0FBQyxXQUFXLENBQ3RCLFNBQWlCO1FBRWpCLE9BQU8sTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNJLEtBQUssQ0FBQyxVQUFVLENBQ3JCLFNBQWlCO1FBRWpCLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSSxLQUFLLENBQUMsZUFBZSxDQUMxQixTQUFpQixFQUNqQixLQUE2QjtRQUU3QixPQUFPLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7T0FjRztJQUNJLEtBQUssQ0FBQyxNQUFNLENBQ2pCLFNBQWlCLEVBQ2pCLFdBQTBCLEVBQzFCLE9BQXVCO1FBRXZCLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7O09BZUc7SUFDSSxLQUFLLENBQUMscUJBQXFCLENBQ2hDLFNBQWlCLEVBQ2pCLFdBQXFCLEVBQ3JCLE9BQW1DO1FBRW5DLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLHFCQUFxQixDQUNoRCxTQUFTLEVBQ1QsV0FBVyxFQUNYLE9BQU8sQ0FDUixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLEtBQUssQ0FBQyxlQUFlLENBQzFCLFNBQWlCLEVBQ2pCLE1BQXFCO1FBRXJCLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0ksS0FBSyxDQUFDLFlBQVksQ0FDdkIsU0FBaUIsRUFDakIsTUFBZ0I7UUFFaEIsT0FBTyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSSxLQUFLLENBQUMsb0JBQW9CLENBQy9CLFNBQWlCLEVBQ2pCLE1BQWdCO1FBRWhCLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN2RSxDQUFDO0NBQ0Y7QUFsTkQsOERBa05DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ3JlYXRlVmVjdG9ySW5kZXgsXG4gIERlbGV0ZVZlY3RvckluZGV4LFxuICBMaXN0VmVjdG9ySW5kZXhlcyxcbiAgVmVjdG9yQ291bnRJdGVtcyxcbiAgVmVjdG9yRGVsZXRlSXRlbUJhdGNoLFxuICBWZWN0b3JHZXRJdGVtQmF0Y2gsXG4gIFZlY3RvckdldEl0ZW1NZXRhZGF0YUJhdGNoLFxuICBWZWN0b3JTZWFyY2gsXG4gIFZlY3RvclNlYXJjaEFuZEZldGNoVmVjdG9ycyxcbiAgVmVjdG9yVXBzZXJ0SXRlbUJhdGNoLFxufSBmcm9tICcuLi8uLi8uLic7XG5pbXBvcnQge1xuICBJVmVjdG9ySW5kZXhDbGllbnQsXG4gIFNlYXJjaE9wdGlvbnMsXG59IGZyb20gJy4uLy4uLy4uL2NsaWVudHMvSVZlY3RvckluZGV4Q2xpZW50JztcbmltcG9ydCB7XG4gIElWZWN0b3JJbmRleENvbnRyb2xDbGllbnQsXG4gIFZlY3RvclNpbWlsYXJpdHlNZXRyaWMsXG59IGZyb20gJy4vSVZlY3RvckluZGV4Q29udHJvbENsaWVudCc7XG5pbXBvcnQge1ZlY3RvckluZGV4SXRlbX0gZnJvbSAnLi4vLi4vLi4vbWVzc2FnZXMvdmVjdG9yLWluZGV4JztcbmltcG9ydCB7SVZlY3RvckluZGV4RGF0YUNsaWVudH0gZnJvbSAnLi9JVmVjdG9ySW5kZXhEYXRhQ2xpZW50JztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0VmVjdG9ySW5kZXhDbGllbnRcbiAgaW1wbGVtZW50cyBJVmVjdG9ySW5kZXhDbGllbnQsIElWZWN0b3JJbmRleERhdGFDbGllbnRcbntcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbnRyb2xDbGllbnQ6IElWZWN0b3JJbmRleENvbnRyb2xDbGllbnQ7XG4gIHByb3RlY3RlZCByZWFkb25seSBkYXRhQ2xpZW50OiBJVmVjdG9ySW5kZXhEYXRhQ2xpZW50O1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBjb250cm9sQ2xpZW50OiBJVmVjdG9ySW5kZXhDb250cm9sQ2xpZW50LFxuICAgIGRhdGFDbGllbnQ6IElWZWN0b3JJbmRleERhdGFDbGllbnRcbiAgKSB7XG4gICAgdGhpcy5jb250cm9sQ2xpZW50ID0gY29udHJvbENsaWVudDtcbiAgICB0aGlzLmRhdGFDbGllbnQgPSBkYXRhQ2xpZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSB2ZWN0b3IgaW5kZXggaWYgaXQgZG9lcyBub3QgZXhpc3QuXG4gICAqXG4gICAqIFJlbWFyayBvbiB0aGUgY2hvaWNlIG9mIHNpbWlsYXJpdHkgbWV0cmljOlxuICAgKiAtIENvc2luZSBzaW1pbGFyaXR5IGlzIGFwcHJvcHJpYXRlIGZvciBtb3N0IGVtYmVkZGluZyBtb2RlbHMgYXMgdGhleSB0ZW5kIHRvIGJlIG9wdGltaXplZFxuICAgKiAgICAgZm9yIHRoaXMgbWV0cmljLlxuICAgKiAtIElmIHRoZSB2ZWN0b3JzIGFyZSB1bml0IG5vcm1hbGl6ZWQsIGNvc2luZSBzaW1pbGFyaXR5IGlzIGVxdWl2YWxlbnQgdG8gaW5uZXIgcHJvZHVjdC5cbiAgICogICAgIElmIHlvdXIgdmVjdG9ycyBhcmUgYWxyZWFkeSB1bml0IG5vcm1hbGl6ZWQsIHlvdSBjYW4gdXNlIGlubmVyIHByb2R1Y3QgdG8gaW1wcm92ZVxuICAgKiAgICAgcGVyZm9ybWFuY2UuXG4gICAqIC0gRXVjbGlkZWFuIHNpbWlsYXJpdHksIHRoZSBzdW0gb2Ygc3F1YXJlZCBkaWZmZXJlbmNlcywgaXMgYXBwcm9wcmlhdGUgZm9yIGRhdGFzZXRzIHdoZXJlXG4gICAqICAgICB0aGlzIG1ldHJpYyBpcyBtZWFuaW5nZnVsLiBGb3IgZXhhbXBsZSwgaWYgdGhlIHZlY3RvcnMgcmVwcmVzZW50IGltYWdlcywgYW5kIHRoZVxuICAgKiAgICAgZW1iZWRkaW5nIG1vZGVsIGlzIHRyYWluZWQgdG8gb3B0aW1pemUgdGhlIGV1Y2xpZGVhbiBkaXN0YW5jZSBiZXR3ZWVuIGltYWdlcywgdGhlblxuICAgKiAgICAgZXVjbGlkZWFuIHNpbWlsYXJpdHkgaXMgYXBwcm9wcmlhdGUuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBpbmRleE5hbWUgLSBUaGUgdmVjdG9yIGluZGV4IHRvIGJlIGNyZWF0ZWQuXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBudW1EaW1lbnNpb25zIC0gTnVtYmVyIG9mIGRpbWVuc2lvbnMgcGVyIHZlY3Rvci5cbiAgICogQHBhcmFtIHtWZWN0b3JTaW1pbGFyaXR5TWV0cmljfSBzaW1pbGFyaXR5TWV0cmljIC0gVGhlIG1ldHJpYyB1c2VkIHRvXG4gICAqIHF1YW50aWZ5IHRoZSBkaXN0YW5jZSBiZXR3ZWVuIHZlY3RvcnMuIENhbiBiZSBjb3NpbmUgc2ltaWxhcml0eSxcbiAgICogaW5uZXIgcHJvZHVjdCwgb3IgZXVjbGlkZWFuIHNpbWlsYXJpdHkuIERlZmF1bHRzIHRvIGNvc2luZSBzaW1pbGFyaXR5LlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxDcmVhdGVWZWN0b3JJbmRleC5SZXNwb25zZT59IC1cbiAgICoge0BsaW5rIENyZWF0ZVZlY3RvckluZGV4LlN1Y2Nlc3N9IG9uIHN1Y2Nlc3MuXG4gICAqIHtAbGluayBDcmVhdGVWZWN0b3JJbmRleC5BbHJlYWR5RXhpc3RzfSBpZiB0aGUgY2FjaGUgYWxyZWFkeSBleGlzdHMuXG4gICAqIHtAbGluayBDcmVhdGVWZWN0b3JJbmRleC5FcnJvcn0gb24gZmFpbHVyZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjcmVhdGVJbmRleChcbiAgICBpbmRleE5hbWU6IHN0cmluZyxcbiAgICBudW1EaW1lbnNpb25zOiBudW1iZXIsXG4gICAgc2ltaWxhcml0eU1ldHJpYz86IFZlY3RvclNpbWlsYXJpdHlNZXRyaWNcbiAgKTogUHJvbWlzZTxDcmVhdGVWZWN0b3JJbmRleC5SZXNwb25zZT4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmNvbnRyb2xDbGllbnQuY3JlYXRlSW5kZXgoXG4gICAgICBpbmRleE5hbWUsXG4gICAgICBudW1EaW1lbnNpb25zLFxuICAgICAgc2ltaWxhcml0eU1ldHJpY1xuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogTGlzdHMgYWxsIHZlY3RvciBpbmRleGVzLlxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxMaXN0VmVjdG9ySW5kZXhlcy5SZXNwb25zZT59IC1cbiAgICoge0BsaW5rIExpc3RWZWN0b3JJbmRleGVzLlN1Y2Nlc3N9IGNvbnRhaW5pbmcgdGhlIGxpc3Qgb24gc3VjY2Vzcy5cbiAgICoge0BsaW5rIExpc3RWZWN0b3JJbmRleGVzLkVycm9yfSBvbiBlcnJvci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBsaXN0SW5kZXhlcygpOiBQcm9taXNlPExpc3RWZWN0b3JJbmRleGVzLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuY29udHJvbENsaWVudC5saXN0SW5kZXhlcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlbGV0ZXMgYSB2ZWN0b3IgaW5kZXggYW5kIGFsbCB0aGUgaXRlbXMgc3RvcmVkIGluIGl0LlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gaW5kZXhOYW1lIC0gVGhlIG5hbWUgb2YgdGhlIHZlY3RvciBpbmRleCB0byBkZWxldGUuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPERlbGV0ZVZlY3RvckluZGV4LlJlc3BvbnNlPn0gLVxuICAgKiB7QGxpbmsgRGVsZXRlVmVjdG9ySW5kZXguU3VjY2Vzc30gb24gc3VjY2Vzcy5cbiAgICoge0BsaW5rIERlbGV0ZVZlY3RvckluZGV4LkVycm9yfSBvbiBlcnJvci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBkZWxldGVJbmRleChcbiAgICBpbmRleE5hbWU6IHN0cmluZ1xuICApOiBQcm9taXNlPERlbGV0ZVZlY3RvckluZGV4LlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuY29udHJvbENsaWVudC5kZWxldGVJbmRleChpbmRleE5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvdW50cyB0aGUgbnVtYmVyIG9mIGl0ZW1zIGluIGEgdmVjdG9yIGluZGV4LlxuICAgKlxuICAgKiBOb3RlIHRoYXQgaWYgdGhlIGluZGV4IGRvZXMgbm90IGV4aXN0LCBhbiBlcnJvciB3aXRoXG4gICAqIHtAbGluayBNb21lbnRvRXJyb3JDb2RlfSBgTk9UX0ZPVU5EYCBlcnJvciB3aWxsIGJlIHJldHVybmVkLlxuICAgKlxuICAgKiBAcGFyYW0gaW5kZXhOYW1lIC0gTmFtZSBvZiB0aGUgaW5kZXggdG8gY291bnQgdGhlIGl0ZW1zIGluLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxWZWN0b3JDb3VudEl0ZW1zLlJlc3BvbnNlPn0gLVxuICAgKiB7QGxpbmsgVmVjdG9yQ291bnRJdGVtcy5TdWNjZXNzfSBvbiBzdWNjZXNzLlxuICAgKiB7QGxpbmsgVmVjdG9yQ291bnRJdGVtcy5FcnJvcn0gb24gZXJyb3IuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY291bnRJdGVtcyhcbiAgICBpbmRleE5hbWU6IHN0cmluZ1xuICApOiBQcm9taXNlPFZlY3RvckNvdW50SXRlbXMuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5kYXRhQ2xpZW50LmNvdW50SXRlbXMoaW5kZXhOYW1lKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcHNlcnRzIGEgYmF0Y2ggb2YgaXRlbXMgaW50byBhIHZlY3RvciBpbmRleC5cbiAgICpcbiAgICogSWYgYW4gaXRlbSB3aXRoIHRoZSBzYW1lIElEIGFscmVhZHkgZXhpc3RzIGluIHRoZSBpbmRleCwgaXQgd2lsbCBiZSByZXBsYWNlZC5cbiAgICogT3RoZXJ3aXNlLCBpdCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBpbmRleC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGluZGV4TmFtZSAtIE5hbWUgb2YgdGhlIGluZGV4IHRvIHVwc2VydCB0aGUgaXRlbXMgaW50by5cbiAgICogQHBhcmFtIHtBcnJheTxWZWN0b3JJbmRleEl0ZW0+fSBpdGVtcyAtIFRoZSBpdGVtcyB0byBiZSB1cHNlcnRlZCBpbnRvIHRoZSBpbmRleC5cbiAgICogQHJldHVybnMge1Byb21pc2U8VmVjdG9yVXBzZXJ0SXRlbUJhdGNoLlJlc3BvbnNlPn0gLVxuICAgKiB7QGxpbmsgVmVjdG9yVXBzZXJ0SXRlbUJhdGNoLlN1Y2Nlc3N9IG9uIHN1Y2Nlc3MuXG4gICAqIHtAbGluayBWZWN0b3JVcHNlcnRJdGVtQmF0Y2guRXJyb3J9IG9uIGVycm9yLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIHVwc2VydEl0ZW1CYXRjaChcbiAgICBpbmRleE5hbWU6IHN0cmluZyxcbiAgICBpdGVtczogQXJyYXk8VmVjdG9ySW5kZXhJdGVtPlxuICApOiBQcm9taXNlPFZlY3RvclVwc2VydEl0ZW1CYXRjaC5SZXNwb25zZT4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmRhdGFDbGllbnQudXBzZXJ0SXRlbUJhdGNoKGluZGV4TmFtZSwgaXRlbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlYXJjaGVzIGZvciB0aGUgbW9zdCBzaW1pbGFyIHZlY3RvcnMgdG8gdGhlIHF1ZXJ5IHZlY3RvciBpbiB0aGUgaW5kZXguXG4gICAqXG4gICAqIFJhbmtzIHRoZSB2ZWN0b3JzIGFjY29yZGluZyB0byB0aGUgc2ltaWxhcml0eSBtZXRyaWMgc3BlY2lmaWVkIHdoZW4gdGhlXG4gICAqIGluZGV4IHdhcyBjcmVhdGVkLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gaW5kZXhOYW1lIC0gTmFtZSBvZiB0aGUgaW5kZXggdG8gc2VhcmNoIGluLlxuICAgKiBAcGFyYW0ge0FycmF5PG51bWJlcj59IHF1ZXJ5VmVjdG9yIC0gVGhlIHZlY3RvciB0byBzZWFyY2ggZm9yLlxuICAgKiBAcGFyYW0ge1NlYXJjaE9wdGlvbnN9IG9wdGlvbnMgLSBPcHRpb25hbCBzZWFyY2ggYXJndW1lbnRzLCBpbmNsdWRpbmdcbiAgICogdGhlIG51bWJlciBvZiByZXN1bHRzIHRvIHJldHVybiwgbWV0YWRhdGEgZmllbGRzIHRvIHJldHVybiwgYW5kIGEgc2NvcmVcbiAgICogdGhyZXNob2xkIHRvIGZpbHRlciByZXN1bHRzIGJ5LlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxWZWN0b3JTZWFyY2guUmVzcG9uc2U+fSAtXG4gICAqIHtAbGluayBWZWN0b3JTZWFyY2guU3VjY2Vzc30gb24gc3VjY2Vzcy5cbiAgICoge0BsaW5rIFZlY3RvclNlYXJjaC5FcnJvcn0gb24gZXJyb3IuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgc2VhcmNoKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIHF1ZXJ5VmVjdG9yOiBBcnJheTxudW1iZXI+LFxuICAgIG9wdGlvbnM/OiBTZWFyY2hPcHRpb25zXG4gICk6IFByb21pc2U8VmVjdG9yU2VhcmNoLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuZGF0YUNsaWVudC5zZWFyY2goaW5kZXhOYW1lLCBxdWVyeVZlY3Rvciwgb3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogU2VhcmNoZXMgZm9yIHRoZSBtb3N0IHNpbWlsYXIgdmVjdG9ycyB0byB0aGUgcXVlcnkgdmVjdG9yIGluIHRoZSBpbmRleC5cbiAgICpcbiAgICogUmFua3MgdGhlIHZlY3RvcnMgYWNjb3JkaW5nIHRvIHRoZSBzaW1pbGFyaXR5IG1ldHJpYyBzcGVjaWZpZWQgd2hlbiB0aGVcbiAgICogaW5kZXggd2FzIGNyZWF0ZWQuXG4gICAqIEFsc28gcmV0dXJucyB0aGUgdmVjdG9ycyBhc3NvY2lhdGVkIHdpdGggZWFjaCByZXN1bHQuXG4gICAqXG4gICAqIEBwYXJhbSBpbmRleE5hbWUgLSBOYW1lIG9mIHRoZSBpbmRleCB0byBzZWFyY2ggaW4uXG4gICAqIEBwYXJhbSBxdWVyeVZlY3RvciAtIFRoZSB2ZWN0b3IgdG8gc2VhcmNoIGZvci5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25hbCBzZWFyY2ggYXJndW1lbnRzLCBpbmNsdWRpbmdcbiAgICogdGhlIG51bWJlciBvZiByZXN1bHRzIHRvIHJldHVybiwgbWV0YWRhdGEgZmllbGRzIHRvIHJldHVybiwgYW5kIGEgc2NvcmVcbiAgICogdGhyZXNob2xkIHRvIGZpbHRlciByZXN1bHRzIGJ5LlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxWZWN0b3JTZWFyY2hBbmRGZXRjaFZlY3RvcnMuUmVzcG9uc2U+fSAtXG4gICAqIHtAbGluayBWZWN0b3JTZWFyY2hBbmRGZXRjaFZlY3RvcnMuU3VjY2Vzc30gb24gc3VjY2Vzcy5cbiAgICoge0BsaW5rIFZlY3RvclNlYXJjaEFuZEZldGNoVmVjdG9ycy5FcnJvcn0gb24gZXJyb3IuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgc2VhcmNoQW5kRmV0Y2hWZWN0b3JzKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIHF1ZXJ5VmVjdG9yOiBudW1iZXJbXSxcbiAgICBvcHRpb25zPzogU2VhcmNoT3B0aW9ucyB8IHVuZGVmaW5lZFxuICApOiBQcm9taXNlPFZlY3RvclNlYXJjaEFuZEZldGNoVmVjdG9ycy5SZXNwb25zZT4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmRhdGFDbGllbnQuc2VhcmNoQW5kRmV0Y2hWZWN0b3JzKFxuICAgICAgaW5kZXhOYW1lLFxuICAgICAgcXVlcnlWZWN0b3IsXG4gICAgICBvcHRpb25zXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGVzIGEgYmF0Y2ggb2YgaXRlbXMgZnJvbSBhIHZlY3RvciBpbmRleC5cbiAgICogRGVsZXRlcyBhbnkgYW5kIGFsbCBpdGVtcyB3aXRoIHRoZSBnaXZlbiBJRHMgZnJvbSB0aGUgaW5kZXguXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBpbmRleE5hbWUgLSBOYW1lIG9mIHRoZSBpbmRleCB0byBkZWxldGUgdGhlIGl0ZW1zIGZyb20uXG4gICAqIEBwYXJhbSB7QXJyYXk8c3RyaW5nPn0gZmlsdGVyIC0gVGhlIElEcyBvZiB0aGUgaXRlbXMgdG8gYmUgZGVsZXRlZCBmcm9tIHRoZSBpbmRleC5cbiAgICogQHJldHVybnMge1Byb21pc2U8VmVjdG9yRGVsZXRlSXRlbUJhdGNoLlJlc3BvbnNlPn1cbiAgICoge0BsaW5rIFZlY3RvckRlbGV0ZUl0ZW1CYXRjaC5TdWNjZXNzfSBvbiBzdWNjZXNzLlxuICAgKiB7QGxpbmsgVmVjdG9yRGVsZXRlSXRlbUJhdGNoLkVycm9yfSBvbiBlcnJvci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBkZWxldGVJdGVtQmF0Y2goXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgZmlsdGVyOiBBcnJheTxzdHJpbmc+XG4gICk6IFByb21pc2U8VmVjdG9yRGVsZXRlSXRlbUJhdGNoLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuZGF0YUNsaWVudC5kZWxldGVJdGVtQmF0Y2goaW5kZXhOYW1lLCBmaWx0ZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYSBiYXRjaCBvZiBpdGVtcyBmcm9tIGEgdmVjdG9yIGluZGV4IGJ5IElELlxuICAgKlxuICAgKiBAcGFyYW0gaW5kZXhOYW1lIC0gTmFtZSBvZiB0aGUgaW5kZXggdG8gZ2V0IHRoZSBpdGVtcyBmcm9tLlxuICAgKiBAcGFyYW0gZmlsdGVyIC0gVGhlIElEcyBvZiB0aGUgaXRlbXMgdG8gYmUgcmV0cmlldmVkIGZyb20gdGhlIGluZGV4LlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxWZWN0b3JHZXRJdGVtQmF0Y2guUmVzcG9uc2U+fVxuICAgKiB7QGxpbmsgVmVjdG9yR2V0SXRlbUJhdGNoLlN1Y2Nlc3N9IG9uIHN1Y2Nlc3MsIHdpdGggdGhlIGZvdW5kIGl0ZW1zLlxuICAgKiB7QGxpbmsgVmVjdG9yR2V0SXRlbUJhdGNoLkVycm9yfSBvbiBlcnJvci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRJdGVtQmF0Y2goXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgZmlsdGVyOiBzdHJpbmdbXVxuICApOiBQcm9taXNlPFZlY3RvckdldEl0ZW1CYXRjaC5SZXNwb25zZT4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmRhdGFDbGllbnQuZ2V0SXRlbUJhdGNoKGluZGV4TmFtZSwgZmlsdGVyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIG1ldGFkYXRhIGZvciBhIGJhdGNoIG9mIGl0ZW1zIGZyb20gYSB2ZWN0b3IgaW5kZXggYnkgSUQuXG4gICAqXG4gICAqIEBwYXJhbSBpbmRleE5hbWUgLSBOYW1lIG9mIHRoZSBpbmRleCB0byBnZXQgdGhlIGl0ZW1zIGZyb20uXG4gICAqIEBwYXJhbSBmaWx0ZXIgLSBUaGUgSURzIG9mIHRoZSBpdGVtcyB0byBiZSByZXRyaWV2ZWQgZnJvbSB0aGUgaW5kZXguXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPFZlY3RvckdldEl0ZW1NZXRhZGF0YUJhdGNoLlJlc3BvbnNlPn1cbiAgICoge0BsaW5rIFZlY3RvckdldEl0ZW1NZXRhZGF0YUJhdGNoLlN1Y2Nlc3N9IG9uIHN1Y2Nlc3MsIHdpdGggdGhlIGZvdW5kIGl0ZW0gbWV0YWRhdGEuXG4gICAqIHtAbGluayBWZWN0b3JHZXRJdGVtTWV0YWRhdGFCYXRjaC5FcnJvcn0gb24gZXJyb3IuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0SXRlbU1ldGFkYXRhQmF0Y2goXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgZmlsdGVyOiBzdHJpbmdbXVxuICApOiBQcm9taXNlPFZlY3RvckdldEl0ZW1NZXRhZGF0YUJhdGNoLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuZGF0YUNsaWVudC5nZXRJdGVtTWV0YWRhdGFCYXRjaChpbmRleE5hbWUsIGZpbHRlcik7XG4gIH1cbn1cbiJdfQ==
163
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RWZWN0b3JJbmRleENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC9jbGllbnRzL3ZlY3Rvci9BYnN0cmFjdFZlY3RvckluZGV4Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQXdCQSxNQUFzQix5QkFBeUI7SUFNN0MsWUFDRSxhQUF3QyxFQUN4QyxVQUFrQztRQUVsQyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BdUJHO0lBQ0ksS0FBSyxDQUFDLFdBQVcsQ0FDdEIsU0FBaUIsRUFDakIsYUFBcUIsRUFDckIsZ0JBQXlDO1FBRXpDLE9BQU8sTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FDekMsU0FBUyxFQUNULGFBQWEsRUFDYixnQkFBZ0IsQ0FDakIsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxLQUFLLENBQUMsV0FBVztRQUN0QixPQUFPLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNJLEtBQUssQ0FBQyxXQUFXLENBQ3RCLFNBQWlCO1FBRWpCLE9BQU8sTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNJLEtBQUssQ0FBQyxVQUFVLENBQ3JCLFNBQWlCO1FBRWpCLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSSxLQUFLLENBQUMsZUFBZSxDQUMxQixTQUFpQixFQUNqQixLQUE2QjtRQUU3QixPQUFPLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7T0FjRztJQUNJLEtBQUssQ0FBQyxNQUFNLENBQ2pCLFNBQWlCLEVBQ2pCLFdBQTBCLEVBQzFCLE9BQXVCO1FBRXZCLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7O09BZUc7SUFDSSxLQUFLLENBQUMscUJBQXFCLENBQ2hDLFNBQWlCLEVBQ2pCLFdBQXFCLEVBQ3JCLE9BQW1DO1FBRW5DLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLHFCQUFxQixDQUNoRCxTQUFTLEVBQ1QsV0FBVyxFQUNYLE9BQU8sQ0FDUixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7Ozs7O09BVUc7SUFDSSxLQUFLLENBQUMsZUFBZSxDQUMxQixTQUFpQixFQUNqQixNQUE4QztRQUU5QyxPQUFPLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLEtBQUssQ0FBQyxZQUFZLENBQ3ZCLFNBQWlCLEVBQ2pCLE1BQWdCO1FBRWhCLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0ksS0FBSyxDQUFDLG9CQUFvQixDQUMvQixTQUFpQixFQUNqQixNQUFnQjtRQUVoQixPQUFPLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdkUsQ0FBQztDQUNGO0FBbk5ELDhEQW1OQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENyZWF0ZVZlY3RvckluZGV4LFxuICBEZWxldGVWZWN0b3JJbmRleCxcbiAgTGlzdFZlY3RvckluZGV4ZXMsXG4gIFZlY3RvckNvdW50SXRlbXMsXG4gIFZlY3RvckRlbGV0ZUl0ZW1CYXRjaCxcbiAgVmVjdG9yRmlsdGVyRXhwcmVzc2lvbixcbiAgVmVjdG9yR2V0SXRlbUJhdGNoLFxuICBWZWN0b3JHZXRJdGVtTWV0YWRhdGFCYXRjaCxcbiAgVmVjdG9yU2VhcmNoLFxuICBWZWN0b3JTZWFyY2hBbmRGZXRjaFZlY3RvcnMsXG4gIFZlY3RvclVwc2VydEl0ZW1CYXRjaCxcbn0gZnJvbSAnLi4vLi4vLi4nO1xuaW1wb3J0IHtcbiAgSVZlY3RvckluZGV4Q2xpZW50LFxuICBTZWFyY2hPcHRpb25zLFxufSBmcm9tICcuLi8uLi8uLi9jbGllbnRzL0lWZWN0b3JJbmRleENsaWVudCc7XG5pbXBvcnQge1xuICBJVmVjdG9ySW5kZXhDb250cm9sQ2xpZW50LFxuICBWZWN0b3JTaW1pbGFyaXR5TWV0cmljLFxufSBmcm9tICcuL0lWZWN0b3JJbmRleENvbnRyb2xDbGllbnQnO1xuaW1wb3J0IHtWZWN0b3JJbmRleEl0ZW19IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzL3ZlY3Rvci1pbmRleCc7XG5pbXBvcnQge0lWZWN0b3JJbmRleERhdGFDbGllbnR9IGZyb20gJy4vSVZlY3RvckluZGV4RGF0YUNsaWVudCc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFZlY3RvckluZGV4Q2xpZW50XG4gIGltcGxlbWVudHMgSVZlY3RvckluZGV4Q2xpZW50LCBJVmVjdG9ySW5kZXhEYXRhQ2xpZW50XG57XG4gIHByb3RlY3RlZCByZWFkb25seSBjb250cm9sQ2xpZW50OiBJVmVjdG9ySW5kZXhDb250cm9sQ2xpZW50O1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGF0YUNsaWVudDogSVZlY3RvckluZGV4RGF0YUNsaWVudDtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgY29udHJvbENsaWVudDogSVZlY3RvckluZGV4Q29udHJvbENsaWVudCxcbiAgICBkYXRhQ2xpZW50OiBJVmVjdG9ySW5kZXhEYXRhQ2xpZW50XG4gICkge1xuICAgIHRoaXMuY29udHJvbENsaWVudCA9IGNvbnRyb2xDbGllbnQ7XG4gICAgdGhpcy5kYXRhQ2xpZW50ID0gZGF0YUNsaWVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgdmVjdG9yIGluZGV4IGlmIGl0IGRvZXMgbm90IGV4aXN0LlxuICAgKlxuICAgKiBSZW1hcmsgb24gdGhlIGNob2ljZSBvZiBzaW1pbGFyaXR5IG1ldHJpYzpcbiAgICogLSBDb3NpbmUgc2ltaWxhcml0eSBpcyBhcHByb3ByaWF0ZSBmb3IgbW9zdCBlbWJlZGRpbmcgbW9kZWxzIGFzIHRoZXkgdGVuZCB0byBiZSBvcHRpbWl6ZWRcbiAgICogICAgIGZvciB0aGlzIG1ldHJpYy5cbiAgICogLSBJZiB0aGUgdmVjdG9ycyBhcmUgdW5pdCBub3JtYWxpemVkLCBjb3NpbmUgc2ltaWxhcml0eSBpcyBlcXVpdmFsZW50IHRvIGlubmVyIHByb2R1Y3QuXG4gICAqICAgICBJZiB5b3VyIHZlY3RvcnMgYXJlIGFscmVhZHkgdW5pdCBub3JtYWxpemVkLCB5b3UgY2FuIHVzZSBpbm5lciBwcm9kdWN0IHRvIGltcHJvdmVcbiAgICogICAgIHBlcmZvcm1hbmNlLlxuICAgKiAtIEV1Y2xpZGVhbiBzaW1pbGFyaXR5LCB0aGUgc3VtIG9mIHNxdWFyZWQgZGlmZmVyZW5jZXMsIGlzIGFwcHJvcHJpYXRlIGZvciBkYXRhc2V0cyB3aGVyZVxuICAgKiAgICAgdGhpcyBtZXRyaWMgaXMgbWVhbmluZ2Z1bC4gRm9yIGV4YW1wbGUsIGlmIHRoZSB2ZWN0b3JzIHJlcHJlc2VudCBpbWFnZXMsIGFuZCB0aGVcbiAgICogICAgIGVtYmVkZGluZyBtb2RlbCBpcyB0cmFpbmVkIHRvIG9wdGltaXplIHRoZSBldWNsaWRlYW4gZGlzdGFuY2UgYmV0d2VlbiBpbWFnZXMsIHRoZW5cbiAgICogICAgIGV1Y2xpZGVhbiBzaW1pbGFyaXR5IGlzIGFwcHJvcHJpYXRlLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gaW5kZXhOYW1lIC0gVGhlIHZlY3RvciBpbmRleCB0byBiZSBjcmVhdGVkLlxuICAgKiBAcGFyYW0ge251bWJlcn0gbnVtRGltZW5zaW9ucyAtIE51bWJlciBvZiBkaW1lbnNpb25zIHBlciB2ZWN0b3IuXG4gICAqIEBwYXJhbSB7VmVjdG9yU2ltaWxhcml0eU1ldHJpY30gc2ltaWxhcml0eU1ldHJpYyAtIFRoZSBtZXRyaWMgdXNlZCB0b1xuICAgKiBxdWFudGlmeSB0aGUgZGlzdGFuY2UgYmV0d2VlbiB2ZWN0b3JzLiBDYW4gYmUgY29zaW5lIHNpbWlsYXJpdHksXG4gICAqIGlubmVyIHByb2R1Y3QsIG9yIGV1Y2xpZGVhbiBzaW1pbGFyaXR5LiBEZWZhdWx0cyB0byBjb3NpbmUgc2ltaWxhcml0eS5cbiAgICogQHJldHVybnMge1Byb21pc2U8Q3JlYXRlVmVjdG9ySW5kZXguUmVzcG9uc2U+fSAtXG4gICAqIHtAbGluayBDcmVhdGVWZWN0b3JJbmRleC5TdWNjZXNzfSBvbiBzdWNjZXNzLlxuICAgKiB7QGxpbmsgQ3JlYXRlVmVjdG9ySW5kZXguQWxyZWFkeUV4aXN0c30gaWYgdGhlIGNhY2hlIGFscmVhZHkgZXhpc3RzLlxuICAgKiB7QGxpbmsgQ3JlYXRlVmVjdG9ySW5kZXguRXJyb3J9IG9uIGZhaWx1cmUuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY3JlYXRlSW5kZXgoXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgbnVtRGltZW5zaW9uczogbnVtYmVyLFxuICAgIHNpbWlsYXJpdHlNZXRyaWM/OiBWZWN0b3JTaW1pbGFyaXR5TWV0cmljXG4gICk6IFByb21pc2U8Q3JlYXRlVmVjdG9ySW5kZXguUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5jb250cm9sQ2xpZW50LmNyZWF0ZUluZGV4KFxuICAgICAgaW5kZXhOYW1lLFxuICAgICAgbnVtRGltZW5zaW9ucyxcbiAgICAgIHNpbWlsYXJpdHlNZXRyaWNcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RzIGFsbCB2ZWN0b3IgaW5kZXhlcy5cbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8TGlzdFZlY3RvckluZGV4ZXMuUmVzcG9uc2U+fSAtXG4gICAqIHtAbGluayBMaXN0VmVjdG9ySW5kZXhlcy5TdWNjZXNzfSBjb250YWluaW5nIHRoZSBsaXN0IG9uIHN1Y2Nlc3MuXG4gICAqIHtAbGluayBMaXN0VmVjdG9ySW5kZXhlcy5FcnJvcn0gb24gZXJyb3IuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgbGlzdEluZGV4ZXMoKTogUHJvbWlzZTxMaXN0VmVjdG9ySW5kZXhlcy5SZXNwb25zZT4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmNvbnRyb2xDbGllbnQubGlzdEluZGV4ZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGVzIGEgdmVjdG9yIGluZGV4IGFuZCBhbGwgdGhlIGl0ZW1zIHN0b3JlZCBpbiBpdC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGluZGV4TmFtZSAtIFRoZSBuYW1lIG9mIHRoZSB2ZWN0b3IgaW5kZXggdG8gZGVsZXRlLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxEZWxldGVWZWN0b3JJbmRleC5SZXNwb25zZT59IC1cbiAgICoge0BsaW5rIERlbGV0ZVZlY3RvckluZGV4LlN1Y2Nlc3N9IG9uIHN1Y2Nlc3MuXG4gICAqIHtAbGluayBEZWxldGVWZWN0b3JJbmRleC5FcnJvcn0gb24gZXJyb3IuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZGVsZXRlSW5kZXgoXG4gICAgaW5kZXhOYW1lOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxEZWxldGVWZWN0b3JJbmRleC5SZXNwb25zZT4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmNvbnRyb2xDbGllbnQuZGVsZXRlSW5kZXgoaW5kZXhOYW1lKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb3VudHMgdGhlIG51bWJlciBvZiBpdGVtcyBpbiBhIHZlY3RvciBpbmRleC5cbiAgICpcbiAgICogTm90ZSB0aGF0IGlmIHRoZSBpbmRleCBkb2VzIG5vdCBleGlzdCwgYW4gZXJyb3Igd2l0aFxuICAgKiB7QGxpbmsgTW9tZW50b0Vycm9yQ29kZX0gYE5PVF9GT1VORGAgZXJyb3Igd2lsbCBiZSByZXR1cm5lZC5cbiAgICpcbiAgICogQHBhcmFtIGluZGV4TmFtZSAtIE5hbWUgb2YgdGhlIGluZGV4IHRvIGNvdW50IHRoZSBpdGVtcyBpbi5cbiAgICogQHJldHVybnMge1Byb21pc2U8VmVjdG9yQ291bnRJdGVtcy5SZXNwb25zZT59IC1cbiAgICoge0BsaW5rIFZlY3RvckNvdW50SXRlbXMuU3VjY2Vzc30gb24gc3VjY2Vzcy5cbiAgICoge0BsaW5rIFZlY3RvckNvdW50SXRlbXMuRXJyb3J9IG9uIGVycm9yLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNvdW50SXRlbXMoXG4gICAgaW5kZXhOYW1lOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxWZWN0b3JDb3VudEl0ZW1zLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuZGF0YUNsaWVudC5jb3VudEl0ZW1zKGluZGV4TmFtZSk7XG4gIH1cblxuICAvKipcbiAgICogVXBzZXJ0cyBhIGJhdGNoIG9mIGl0ZW1zIGludG8gYSB2ZWN0b3IgaW5kZXguXG4gICAqXG4gICAqIElmIGFuIGl0ZW0gd2l0aCB0aGUgc2FtZSBJRCBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgaW5kZXgsIGl0IHdpbGwgYmUgcmVwbGFjZWQuXG4gICAqIE90aGVyd2lzZSwgaXQgd2lsbCBiZSBhZGRlZCB0byB0aGUgaW5kZXguXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBpbmRleE5hbWUgLSBOYW1lIG9mIHRoZSBpbmRleCB0byB1cHNlcnQgdGhlIGl0ZW1zIGludG8uXG4gICAqIEBwYXJhbSB7QXJyYXk8VmVjdG9ySW5kZXhJdGVtPn0gaXRlbXMgLSBUaGUgaXRlbXMgdG8gYmUgdXBzZXJ0ZWQgaW50byB0aGUgaW5kZXguXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPFZlY3RvclVwc2VydEl0ZW1CYXRjaC5SZXNwb25zZT59IC1cbiAgICoge0BsaW5rIFZlY3RvclVwc2VydEl0ZW1CYXRjaC5TdWNjZXNzfSBvbiBzdWNjZXNzLlxuICAgKiB7QGxpbmsgVmVjdG9yVXBzZXJ0SXRlbUJhdGNoLkVycm9yfSBvbiBlcnJvci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyB1cHNlcnRJdGVtQmF0Y2goXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgaXRlbXM6IEFycmF5PFZlY3RvckluZGV4SXRlbT5cbiAgKTogUHJvbWlzZTxWZWN0b3JVcHNlcnRJdGVtQmF0Y2guUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5kYXRhQ2xpZW50LnVwc2VydEl0ZW1CYXRjaChpbmRleE5hbWUsIGl0ZW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZWFyY2hlcyBmb3IgdGhlIG1vc3Qgc2ltaWxhciB2ZWN0b3JzIHRvIHRoZSBxdWVyeSB2ZWN0b3IgaW4gdGhlIGluZGV4LlxuICAgKlxuICAgKiBSYW5rcyB0aGUgdmVjdG9ycyBhY2NvcmRpbmcgdG8gdGhlIHNpbWlsYXJpdHkgbWV0cmljIHNwZWNpZmllZCB3aGVuIHRoZVxuICAgKiBpbmRleCB3YXMgY3JlYXRlZC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGluZGV4TmFtZSAtIE5hbWUgb2YgdGhlIGluZGV4IHRvIHNlYXJjaCBpbi5cbiAgICogQHBhcmFtIHtBcnJheTxudW1iZXI+fSBxdWVyeVZlY3RvciAtIFRoZSB2ZWN0b3IgdG8gc2VhcmNoIGZvci5cbiAgICogQHBhcmFtIHtTZWFyY2hPcHRpb25zfSBvcHRpb25zIC0gT3B0aW9uYWwgc2VhcmNoIGFyZ3VtZW50cywgaW5jbHVkaW5nXG4gICAqIHRoZSBudW1iZXIgb2YgcmVzdWx0cyB0byByZXR1cm4sIG1ldGFkYXRhIGZpZWxkcyB0byByZXR1cm4sIGFuZCBhIHNjb3JlXG4gICAqIHRocmVzaG9sZCB0byBmaWx0ZXIgcmVzdWx0cyBieS5cbiAgICogQHJldHVybnMge1Byb21pc2U8VmVjdG9yU2VhcmNoLlJlc3BvbnNlPn0gLVxuICAgKiB7QGxpbmsgVmVjdG9yU2VhcmNoLlN1Y2Nlc3N9IG9uIHN1Y2Nlc3MuXG4gICAqIHtAbGluayBWZWN0b3JTZWFyY2guRXJyb3J9IG9uIGVycm9yLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIHNlYXJjaChcbiAgICBpbmRleE5hbWU6IHN0cmluZyxcbiAgICBxdWVyeVZlY3RvcjogQXJyYXk8bnVtYmVyPixcbiAgICBvcHRpb25zPzogU2VhcmNoT3B0aW9uc1xuICApOiBQcm9taXNlPFZlY3RvclNlYXJjaC5SZXNwb25zZT4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmRhdGFDbGllbnQuc2VhcmNoKGluZGV4TmFtZSwgcXVlcnlWZWN0b3IsIG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlYXJjaGVzIGZvciB0aGUgbW9zdCBzaW1pbGFyIHZlY3RvcnMgdG8gdGhlIHF1ZXJ5IHZlY3RvciBpbiB0aGUgaW5kZXguXG4gICAqXG4gICAqIFJhbmtzIHRoZSB2ZWN0b3JzIGFjY29yZGluZyB0byB0aGUgc2ltaWxhcml0eSBtZXRyaWMgc3BlY2lmaWVkIHdoZW4gdGhlXG4gICAqIGluZGV4IHdhcyBjcmVhdGVkLlxuICAgKiBBbHNvIHJldHVybnMgdGhlIHZlY3RvcnMgYXNzb2NpYXRlZCB3aXRoIGVhY2ggcmVzdWx0LlxuICAgKlxuICAgKiBAcGFyYW0gaW5kZXhOYW1lIC0gTmFtZSBvZiB0aGUgaW5kZXggdG8gc2VhcmNoIGluLlxuICAgKiBAcGFyYW0gcXVlcnlWZWN0b3IgLSBUaGUgdmVjdG9yIHRvIHNlYXJjaCBmb3IuXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9uYWwgc2VhcmNoIGFyZ3VtZW50cywgaW5jbHVkaW5nXG4gICAqIHRoZSBudW1iZXIgb2YgcmVzdWx0cyB0byByZXR1cm4sIG1ldGFkYXRhIGZpZWxkcyB0byByZXR1cm4sIGFuZCBhIHNjb3JlXG4gICAqIHRocmVzaG9sZCB0byBmaWx0ZXIgcmVzdWx0cyBieS5cbiAgICogQHJldHVybnMge1Byb21pc2U8VmVjdG9yU2VhcmNoQW5kRmV0Y2hWZWN0b3JzLlJlc3BvbnNlPn0gLVxuICAgKiB7QGxpbmsgVmVjdG9yU2VhcmNoQW5kRmV0Y2hWZWN0b3JzLlN1Y2Nlc3N9IG9uIHN1Y2Nlc3MuXG4gICAqIHtAbGluayBWZWN0b3JTZWFyY2hBbmRGZXRjaFZlY3RvcnMuRXJyb3J9IG9uIGVycm9yLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIHNlYXJjaEFuZEZldGNoVmVjdG9ycyhcbiAgICBpbmRleE5hbWU6IHN0cmluZyxcbiAgICBxdWVyeVZlY3RvcjogbnVtYmVyW10sXG4gICAgb3B0aW9ucz86IFNlYXJjaE9wdGlvbnMgfCB1bmRlZmluZWRcbiAgKTogUHJvbWlzZTxWZWN0b3JTZWFyY2hBbmRGZXRjaFZlY3RvcnMuUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5kYXRhQ2xpZW50LnNlYXJjaEFuZEZldGNoVmVjdG9ycyhcbiAgICAgIGluZGV4TmFtZSxcbiAgICAgIHF1ZXJ5VmVjdG9yLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlcyBhIGJhdGNoIG9mIGl0ZW1zIGZyb20gYSB2ZWN0b3IgaW5kZXguXG4gICAqIERlbGV0ZXMgYW55IGFuZCBhbGwgaXRlbXMgd2l0aCB0aGUgZ2l2ZW4gSURzIGZyb20gdGhlIGluZGV4LlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gaW5kZXhOYW1lIC0gTmFtZSBvZiB0aGUgaW5kZXggdG8gZGVsZXRlIHRoZSBpdGVtcyBmcm9tLlxuICAgKiBAcGFyYW0ge1ZlY3RvckZpbHRlckV4cHJlc3Npb24gfCBBcnJheTxzdHJpbmc+fSBmaWx0ZXIgLSBBIGZpbHRlciBleHByZXNzaW9uIHRvIG1hdGNoIHRoZSBpdGVtcyB0byBiZSBkZWxldGVkXG4gICAqIG9yIGFuIGFycmF5IG9mIGl0ZW0gSURzIHRvIGJlIGRlbGV0ZWQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPFZlY3RvckRlbGV0ZUl0ZW1CYXRjaC5SZXNwb25zZT59XG4gICAqIHtAbGluayBWZWN0b3JEZWxldGVJdGVtQmF0Y2guU3VjY2Vzc30gb24gc3VjY2Vzcy5cbiAgICoge0BsaW5rIFZlY3RvckRlbGV0ZUl0ZW1CYXRjaC5FcnJvcn0gb24gZXJyb3IuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZGVsZXRlSXRlbUJhdGNoKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIGZpbHRlcjogVmVjdG9yRmlsdGVyRXhwcmVzc2lvbiB8IEFycmF5PHN0cmluZz5cbiAgKTogUHJvbWlzZTxWZWN0b3JEZWxldGVJdGVtQmF0Y2guUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5kYXRhQ2xpZW50LmRlbGV0ZUl0ZW1CYXRjaChpbmRleE5hbWUsIGZpbHRlcik7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBhIGJhdGNoIG9mIGl0ZW1zIGZyb20gYSB2ZWN0b3IgaW5kZXggYnkgSUQuXG4gICAqXG4gICAqIEBwYXJhbSBpbmRleE5hbWUgLSBOYW1lIG9mIHRoZSBpbmRleCB0byBnZXQgdGhlIGl0ZW1zIGZyb20uXG4gICAqIEBwYXJhbSBmaWx0ZXIgLSBUaGUgSURzIG9mIHRoZSBpdGVtcyB0byBiZSByZXRyaWV2ZWQgZnJvbSB0aGUgaW5kZXguXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPFZlY3RvckdldEl0ZW1CYXRjaC5SZXNwb25zZT59XG4gICAqIHtAbGluayBWZWN0b3JHZXRJdGVtQmF0Y2guU3VjY2Vzc30gb24gc3VjY2Vzcywgd2l0aCB0aGUgZm91bmQgaXRlbXMuXG4gICAqIHtAbGluayBWZWN0b3JHZXRJdGVtQmF0Y2guRXJyb3J9IG9uIGVycm9yLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEl0ZW1CYXRjaChcbiAgICBpbmRleE5hbWU6IHN0cmluZyxcbiAgICBmaWx0ZXI6IHN0cmluZ1tdXG4gICk6IFByb21pc2U8VmVjdG9yR2V0SXRlbUJhdGNoLlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuZGF0YUNsaWVudC5nZXRJdGVtQmF0Y2goaW5kZXhOYW1lLCBmaWx0ZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgbWV0YWRhdGEgZm9yIGEgYmF0Y2ggb2YgaXRlbXMgZnJvbSBhIHZlY3RvciBpbmRleCBieSBJRC5cbiAgICpcbiAgICogQHBhcmFtIGluZGV4TmFtZSAtIE5hbWUgb2YgdGhlIGluZGV4IHRvIGdldCB0aGUgaXRlbXMgZnJvbS5cbiAgICogQHBhcmFtIGZpbHRlciAtIFRoZSBJRHMgb2YgdGhlIGl0ZW1zIHRvIGJlIHJldHJpZXZlZCBmcm9tIHRoZSBpbmRleC5cbiAgICogQHJldHVybnMge1Byb21pc2U8VmVjdG9yR2V0SXRlbU1ldGFkYXRhQmF0Y2guUmVzcG9uc2U+fVxuICAgKiB7QGxpbmsgVmVjdG9yR2V0SXRlbU1ldGFkYXRhQmF0Y2guU3VjY2Vzc30gb24gc3VjY2Vzcywgd2l0aCB0aGUgZm91bmQgaXRlbSBtZXRhZGF0YS5cbiAgICoge0BsaW5rIFZlY3RvckdldEl0ZW1NZXRhZGF0YUJhdGNoLkVycm9yfSBvbiBlcnJvci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRJdGVtTWV0YWRhdGFCYXRjaChcbiAgICBpbmRleE5hbWU6IHN0cmluZyxcbiAgICBmaWx0ZXI6IHN0cmluZ1tdXG4gICk6IFByb21pc2U8VmVjdG9yR2V0SXRlbU1ldGFkYXRhQmF0Y2guUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5kYXRhQ2xpZW50LmdldEl0ZW1NZXRhZGF0YUJhdGNoKGluZGV4TmFtZSwgZmlsdGVyKTtcbiAgfVxufVxuIl19
@@ -1,12 +1,13 @@
1
1
  import { VectorCountItems, VectorDeleteItemBatch, VectorGetItemBatch, VectorGetItemMetadataBatch, VectorSearch, VectorSearchAndFetchVectors, VectorUpsertItemBatch } from '../../../messages/responses/vector';
2
2
  import { VectorIndexItem } from '../../../messages/vector-index';
3
3
  import { SearchOptions } from '../../../clients/IVectorIndexClient';
4
+ import { VectorFilterExpression } from '../../../messages/vector-index-filters';
4
5
  export interface IVectorIndexDataClient {
5
6
  countItems(indexName: string): Promise<VectorCountItems.Response>;
6
7
  upsertItemBatch(indexName: string, items: Array<VectorIndexItem>): Promise<VectorUpsertItemBatch.Response>;
7
8
  search(indexName: string, queryVector: Array<number>, options?: SearchOptions): Promise<VectorSearch.Response>;
8
9
  searchAndFetchVectors(indexName: string, queryVector: Array<number>, options?: SearchOptions): Promise<VectorSearchAndFetchVectors.Response>;
9
- deleteItemBatch(indexName: string, filter: Array<string>): Promise<VectorDeleteItemBatch.Response>;
10
+ deleteItemBatch(indexName: string, filter: VectorFilterExpression | Array<string>): Promise<VectorDeleteItemBatch.Response>;
10
11
  getItemBatch(indexName: string, filter: Array<string>): Promise<VectorGetItemBatch.Response>;
11
12
  getItemMetadataBatch(indexName: string, filter: Array<string>): Promise<VectorGetItemMetadataBatch.Response>;
12
13
  }
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVZlY3RvckluZGV4RGF0YUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC9jbGllbnRzL3ZlY3Rvci9JVmVjdG9ySW5kZXhEYXRhQ2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBWZWN0b3JDb3VudEl0ZW1zLFxuICBWZWN0b3JEZWxldGVJdGVtQmF0Y2gsXG4gIFZlY3RvckdldEl0ZW1CYXRjaCxcbiAgVmVjdG9yR2V0SXRlbU1ldGFkYXRhQmF0Y2gsXG4gIFZlY3RvclNlYXJjaCxcbiAgVmVjdG9yU2VhcmNoQW5kRmV0Y2hWZWN0b3JzLFxuICBWZWN0b3JVcHNlcnRJdGVtQmF0Y2gsXG59IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzL3Jlc3BvbnNlcy92ZWN0b3InO1xuaW1wb3J0IHtWZWN0b3JJbmRleEl0ZW19IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzL3ZlY3Rvci1pbmRleCc7XG5pbXBvcnQge1NlYXJjaE9wdGlvbnN9IGZyb20gJy4uLy4uLy4uL2NsaWVudHMvSVZlY3RvckluZGV4Q2xpZW50JztcblxuZXhwb3J0IGludGVyZmFjZSBJVmVjdG9ySW5kZXhEYXRhQ2xpZW50IHtcbiAgY291bnRJdGVtcyhpbmRleE5hbWU6IHN0cmluZyk6IFByb21pc2U8VmVjdG9yQ291bnRJdGVtcy5SZXNwb25zZT47XG5cbiAgdXBzZXJ0SXRlbUJhdGNoKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIGl0ZW1zOiBBcnJheTxWZWN0b3JJbmRleEl0ZW0+XG4gICk6IFByb21pc2U8VmVjdG9yVXBzZXJ0SXRlbUJhdGNoLlJlc3BvbnNlPjtcblxuICBzZWFyY2goXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgcXVlcnlWZWN0b3I6IEFycmF5PG51bWJlcj4sXG4gICAgb3B0aW9ucz86IFNlYXJjaE9wdGlvbnNcbiAgKTogUHJvbWlzZTxWZWN0b3JTZWFyY2guUmVzcG9uc2U+O1xuXG4gIHNlYXJjaEFuZEZldGNoVmVjdG9ycyhcbiAgICBpbmRleE5hbWU6IHN0cmluZyxcbiAgICBxdWVyeVZlY3RvcjogQXJyYXk8bnVtYmVyPixcbiAgICBvcHRpb25zPzogU2VhcmNoT3B0aW9uc1xuICApOiBQcm9taXNlPFZlY3RvclNlYXJjaEFuZEZldGNoVmVjdG9ycy5SZXNwb25zZT47XG5cbiAgZGVsZXRlSXRlbUJhdGNoKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIGZpbHRlcjogQXJyYXk8c3RyaW5nPlxuICApOiBQcm9taXNlPFZlY3RvckRlbGV0ZUl0ZW1CYXRjaC5SZXNwb25zZT47XG5cbiAgZ2V0SXRlbUJhdGNoKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIGZpbHRlcjogQXJyYXk8c3RyaW5nPlxuICApOiBQcm9taXNlPFZlY3RvckdldEl0ZW1CYXRjaC5SZXNwb25zZT47XG5cbiAgZ2V0SXRlbU1ldGFkYXRhQmF0Y2goXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgZmlsdGVyOiBBcnJheTxzdHJpbmc+XG4gICk6IFByb21pc2U8VmVjdG9yR2V0SXRlbU1ldGFkYXRhQmF0Y2guUmVzcG9uc2U+O1xufVxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSVZlY3RvckluZGV4RGF0YUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC9jbGllbnRzL3ZlY3Rvci9JVmVjdG9ySW5kZXhEYXRhQ2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBWZWN0b3JDb3VudEl0ZW1zLFxuICBWZWN0b3JEZWxldGVJdGVtQmF0Y2gsXG4gIFZlY3RvckdldEl0ZW1CYXRjaCxcbiAgVmVjdG9yR2V0SXRlbU1ldGFkYXRhQmF0Y2gsXG4gIFZlY3RvclNlYXJjaCxcbiAgVmVjdG9yU2VhcmNoQW5kRmV0Y2hWZWN0b3JzLFxuICBWZWN0b3JVcHNlcnRJdGVtQmF0Y2gsXG59IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzL3Jlc3BvbnNlcy92ZWN0b3InO1xuaW1wb3J0IHtWZWN0b3JJbmRleEl0ZW19IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzL3ZlY3Rvci1pbmRleCc7XG5pbXBvcnQge1NlYXJjaE9wdGlvbnN9IGZyb20gJy4uLy4uLy4uL2NsaWVudHMvSVZlY3RvckluZGV4Q2xpZW50JztcbmltcG9ydCB7VmVjdG9yRmlsdGVyRXhwcmVzc2lvbn0gZnJvbSAnLi4vLi4vLi4vbWVzc2FnZXMvdmVjdG9yLWluZGV4LWZpbHRlcnMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElWZWN0b3JJbmRleERhdGFDbGllbnQge1xuICBjb3VudEl0ZW1zKGluZGV4TmFtZTogc3RyaW5nKTogUHJvbWlzZTxWZWN0b3JDb3VudEl0ZW1zLlJlc3BvbnNlPjtcblxuICB1cHNlcnRJdGVtQmF0Y2goXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgaXRlbXM6IEFycmF5PFZlY3RvckluZGV4SXRlbT5cbiAgKTogUHJvbWlzZTxWZWN0b3JVcHNlcnRJdGVtQmF0Y2guUmVzcG9uc2U+O1xuXG4gIHNlYXJjaChcbiAgICBpbmRleE5hbWU6IHN0cmluZyxcbiAgICBxdWVyeVZlY3RvcjogQXJyYXk8bnVtYmVyPixcbiAgICBvcHRpb25zPzogU2VhcmNoT3B0aW9uc1xuICApOiBQcm9taXNlPFZlY3RvclNlYXJjaC5SZXNwb25zZT47XG5cbiAgc2VhcmNoQW5kRmV0Y2hWZWN0b3JzKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIHF1ZXJ5VmVjdG9yOiBBcnJheTxudW1iZXI+LFxuICAgIG9wdGlvbnM/OiBTZWFyY2hPcHRpb25zXG4gICk6IFByb21pc2U8VmVjdG9yU2VhcmNoQW5kRmV0Y2hWZWN0b3JzLlJlc3BvbnNlPjtcblxuICBkZWxldGVJdGVtQmF0Y2goXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgZmlsdGVyOiBWZWN0b3JGaWx0ZXJFeHByZXNzaW9uIHwgQXJyYXk8c3RyaW5nPlxuICApOiBQcm9taXNlPFZlY3RvckRlbGV0ZUl0ZW1CYXRjaC5SZXNwb25zZT47XG5cbiAgZ2V0SXRlbUJhdGNoKFxuICAgIGluZGV4TmFtZTogc3RyaW5nLFxuICAgIGZpbHRlcjogQXJyYXk8c3RyaW5nPlxuICApOiBQcm9taXNlPFZlY3RvckdldEl0ZW1CYXRjaC5SZXNwb25zZT47XG5cbiAgZ2V0SXRlbU1ldGFkYXRhQmF0Y2goXG4gICAgaW5kZXhOYW1lOiBzdHJpbmcsXG4gICAgZmlsdGVyOiBBcnJheTxzdHJpbmc+XG4gICk6IFByb21pc2U8VmVjdG9yR2V0SXRlbU1ldGFkYXRhQmF0Y2guUmVzcG9uc2U+O1xufVxuIl19
@@ -16,6 +16,7 @@ export declare function validateIndexName(name: string): void;
16
16
  export declare function validateNumDimensions(numDimensions: number): void;
17
17
  export declare function validateTopK(topK: number): void;
18
18
  export declare function validateTtlMinutes(ttlMinutes: number): void;
19
+ export declare function validateTtlSeconds(ttl: number): void;
19
20
  export declare function validateValidForSeconds(validForSeconds: number): void;
20
21
  export declare function validateTimeout(timeout: number): void;
21
22
  export declare function validateDisposableTokenExpiry(expiresIn: ExpiresIn): void;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateLeaderboardNumberOfElements = exports.validateLeaderboardCount = exports.validateLeaderboardOffset = exports.validateLeaderboardRanks = exports.validateLeaderboardName = exports.isBase64 = exports.validateDisposableTokenTokenID = exports.validateDisposableTokenExpiry = exports.validateTimeout = exports.validateValidForSeconds = exports.validateTtlMinutes = exports.validateTopK = exports.validateNumDimensions = exports.validateIndexName = exports.validateWebhookName = exports.validateTopicName = exports.validateListSliceStartEnd = exports.validateListName = exports.validateDictionaryName = exports.validateSortedSetCount = exports.validateSortedSetOffset = exports.validateSortedSetScores = exports.validateSortedSetRanks = exports.validateSortedSetName = exports.validateSetName = exports.validateCacheKeyOrPrefix = exports.validateCacheName = void 0;
3
+ exports.validateLeaderboardNumberOfElements = exports.validateLeaderboardCount = exports.validateLeaderboardOffset = exports.validateLeaderboardRanks = exports.validateLeaderboardName = exports.isBase64 = exports.validateDisposableTokenTokenID = exports.validateDisposableTokenExpiry = exports.validateTimeout = exports.validateValidForSeconds = exports.validateTtlSeconds = exports.validateTtlMinutes = exports.validateTopK = exports.validateNumDimensions = exports.validateIndexName = exports.validateWebhookName = exports.validateTopicName = exports.validateListSliceStartEnd = exports.validateListName = exports.validateDictionaryName = exports.validateSortedSetCount = exports.validateSortedSetOffset = exports.validateSortedSetScores = exports.validateSortedSetRanks = exports.validateSortedSetName = exports.validateSetName = exports.validateCacheKeyOrPrefix = exports.validateCacheName = void 0;
4
4
  const errors_1 = require("../../errors");
5
5
  const string_1 = require("./string");
6
6
  function validateCacheName(name) {
@@ -115,11 +115,19 @@ function validateTopK(topK) {
115
115
  }
116
116
  exports.validateTopK = validateTopK;
117
117
  function validateTtlMinutes(ttlMinutes) {
118
- if (ttlMinutes < 0) {
119
- throw new errors_1.InvalidArgumentError('ttlMinutes must be positive');
118
+ if (ttlMinutes < 0 || !Number.isSafeInteger(ttlMinutes)) {
119
+ throw new errors_1.InvalidArgumentError('ttlMinutes must be a positive integer');
120
120
  }
121
121
  }
122
122
  exports.validateTtlMinutes = validateTtlMinutes;
123
+ // Currently accepting ttl in seconds, but if someone requests support for millis,
124
+ // the validator will need to check for Number.isSafeInteger(ttl * 1000).
125
+ function validateTtlSeconds(ttl) {
126
+ if (ttl < 0 || !Number.isSafeInteger(ttl)) {
127
+ throw new errors_1.InvalidArgumentError(`ttl must be a positive integer, received ${ttl}`);
128
+ }
129
+ }
130
+ exports.validateTtlSeconds = validateTtlSeconds;
123
131
  function validateValidForSeconds(validForSeconds) {
124
132
  if (validForSeconds < 0) {
125
133
  throw new errors_1.InvalidArgumentError('validForSeconds must be positive');
@@ -196,4 +204,4 @@ function validateLeaderboardNumberOfElements(numElements) {
196
204
  }
197
205
  }
198
206
  exports.validateLeaderboardNumberOfElements = validateLeaderboardNumberOfElements;
199
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC91dGlscy92YWxpZGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlDQUFrRDtBQUVsRCxxQ0FBMEQ7QUFFMUQsU0FBZ0IsaUJBQWlCLENBQUMsSUFBWTtJQUM1QyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNqQixNQUFNLElBQUksNkJBQW9CLENBQUMsOEJBQThCLENBQUMsQ0FBQztLQUNoRTtBQUNILENBQUM7QUFKRCw4Q0FJQztBQUVELFNBQWdCLHdCQUF3QixDQUFDLElBQVk7SUFDbkQsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDakIsTUFBTSxJQUFJLDZCQUFvQixDQUFDLDJDQUEyQyxDQUFDLENBQUM7S0FDN0U7QUFDSCxDQUFDO0FBSkQsNERBSUM7QUFFRCxTQUFnQixlQUFlLENBQUMsSUFBWTtJQUMxQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNqQixNQUFNLElBQUksNkJBQW9CLENBQUMsNEJBQTRCLENBQUMsQ0FBQztLQUM5RDtBQUNILENBQUM7QUFKRCwwQ0FJQztBQUVELFNBQWdCLHFCQUFxQixDQUFDLElBQVk7SUFDaEQsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDakIsTUFBTSxJQUFJLDZCQUFvQixDQUFDLG1DQUFtQyxDQUFDLENBQUM7S0FDckU7QUFDSCxDQUFDO0FBSkQsc0RBSUM7QUFFRCxTQUFnQixzQkFBc0IsQ0FBQyxVQUFrQixFQUFFLFFBQWlCO0lBQzFFLElBQUksUUFBUSxLQUFLLFNBQVMsRUFBRTtRQUMxQixPQUFPO0tBQ1I7SUFDRCxJQUFJLFVBQVUsR0FBRyxDQUFDLElBQUksUUFBUSxHQUFHLENBQUMsSUFBSSxVQUFVLEdBQUcsUUFBUSxFQUFFO1FBQzNELE1BQU0sSUFBSSw2QkFBb0IsQ0FBQyx1Q0FBdUMsQ0FB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QUU7UUFDYixNQUFNLElBQUksNkJBQW9CLENBQUMsdUNBQXVDLENBQUMsQ0FBQztLQUN6RTtBQUNILENBQUM7QUFKRCw0REFJQztBQUVELFNBQWdCLG1DQUFtQyxDQUFDLFdBQW1CO0lBQ3JFLElBQUksV0FBVyxHQUFHLENBQUMsRUFBRTtRQUNuQixNQUFNLElBQUksNkJBQW9CLENBQUMsbUNBQW1DLENBQUMsQ0FBQztLQUNyRTtBQUNILENBQUM7QUFKRCxrRkFJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW52YWxpZEFyZ3VtZW50RXJyb3J9IGZyb20gJy4uLy4uL2Vycm9ycyc7XG5pbXBvcnQge0V4cGlyZXNJbn0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHtkZWNvZGVGcm9tQmFzZTY0LCBlbmNvZGVUb0Jhc2U2NH0gZnJvbSAnLi9zdHJpbmcnO1xuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVDYWNoZU5hbWUobmFtZTogc3RyaW5nKSB7XG4gIGlmIChpc0VtcHR5KG5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdjYWNoZSBuYW1lIG11c3Qgbm90IGJlIGVtcHR5Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlQ2FjaGVLZXlPclByZWZpeChuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2NhY2hlIGtleSBvciBrZXkgcHJlZml4IG11c3Qgbm90IGJlIGVtcHR5Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlU2V0TmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3NldCBuYW1lIG11c3Qgbm90IGJlIGVtcHR5Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlU29ydGVkU2V0TmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3NvcnRlZCBzZXQgbmFtZSBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVNvcnRlZFNldFJhbmtzKHN0YXJ0X3Jhbms6IG51bWJlciwgZW5kX3Jhbms/OiBudW1iZXIpIHtcbiAgaWYgKGVuZF9yYW5rID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgaWYgKHN0YXJ0X3JhbmsgPiAwICYmIGVuZF9yYW5rID4gMCAmJiBzdGFydF9yYW5rID4gZW5kX3JhbmspIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3N0YXJ0IHJhbmsgbXVzdCBiZSBsZXNzIHRoYW4gZW5kIHJhbmsnKTtcbiAgfVxuICBpZiAoc3RhcnRfcmFuayA8IDAgJiYgZW5kX3JhbmsgPCAwICYmIHN0YXJ0X3JhbmsgPj0gZW5kX3JhbmspIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoXG4gICAgICAnbmVnYXRpdmUgc3RhcnQgcmFuayBtdXN0IGJlIGxlc3MgdGhhbiBuZWdhdGl2ZSBlbmQgcmFuaydcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVNvcnRlZFNldFNjb3JlcyhtaW5TY29yZT86IG51bWJlciwgbWF4U2NvcmU/OiBudW1iZXIpIHtcbiAgaWYgKG1pblNjb3JlID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgaWYgKG1heFNjb3JlID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgaWYgKG1pblNjb3JlID4gbWF4U2NvcmUpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoXG4gICAgICAnbWluU2NvcmUgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gbWF4U2NvcmUnXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVTb3J0ZWRTZXRPZmZzZXQob2Zmc2V0OiBudW1iZXIpIHtcbiAgaWYgKG9mZnNldCA8IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ29mZnNldCBtdXN0IGJlIG5vbi1uZWdhdGl2ZSAoPj0gMCknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVTb3J0ZWRTZXRDb3VudChjb3VudDogbnVtYmVyKSB7XG4gIGlmIChjb3VudCA8IDEpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2NvdW50IG11c3QgYmUgc3RyaWN0bHkgcG9zaXRpdmUgKD4gMCknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVEaWN0aW9uYXJ5TmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2RpY3Rpb25hcnkgbmFtZSBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUxpc3ROYW1lKG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbGlzdCBuYW1lIG11c3Qgbm90IGJlIGVtcHR5Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlTGlzdFNsaWNlU3RhcnRFbmQoXG4gIHN0YXJ0SW5kZXg/OiBudW1iZXIsXG4gIGVuZEluZGV4PzogbnVtYmVyXG4pIHtcbiAgaWYgKHN0YXJ0SW5kZXggPT09IHVuZGVmaW5lZCB8fCBlbmRJbmRleCA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gIC8vIGNhbid0IHZhbGlkYXRlIGJvdW5kcyBmb3Igc3RhcnQgYW5kIGluZGV4IG9mIGVpdGhlciBvciBhcmUgbmVnYXRpdmUgd2l0aG91dCBsaXN0IGxlbmd0aFxuICBpZiAoc3RhcnRJbmRleCA+IDAgfHwgZW5kSW5kZXggPCAwKSByZXR1cm47XG4gIGlmIChlbmRJbmRleCA8PSBzdGFydEluZGV4KSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKFxuICAgICAgJ2VuZEluZGV4IChleGNsdXNpdmUpIG11c3QgYmUgbGFyZ2VyIHRoYW4gc3RhcnRJbmRleCAoaW5jbHVzaXZlKSdcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVRvcGljTmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3RvcGljIG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVXZWJob29rTmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3dlYmhvb2sgbmFtZSBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUluZGV4TmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2luZGV4IG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVOdW1EaW1lbnNpb25zKG51bURpbWVuc2lvbnM6IG51bWJlcikge1xuICBpZiAobnVtRGltZW5zaW9ucyA8PSAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdudW1EaW1lbnNpb25zIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8nKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVUb3BLKHRvcEs6IG51bWJlcikge1xuICBpZiAodG9wSyA8PSAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd0b3BLIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8nKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVUdGxNaW51dGVzKHR0bE1pbnV0ZXM6IG51bWJlcikge1xuICBpZiAodHRsTWludXRlcyA8IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3R0bE1pbnV0ZXMgbXVzdCBiZSBwb3NpdGl2ZScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVZhbGlkRm9yU2Vjb25kcyh2YWxpZEZvclNlY29uZHM6IG51bWJlcikge1xuICBpZiAodmFsaWRGb3JTZWNvbmRzIDwgMCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigndmFsaWRGb3JTZWNvbmRzIG11c3QgYmUgcG9zaXRpdmUnKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVUaW1lb3V0KHRpbWVvdXQ6IG51bWJlcikge1xuICBpZiAodGltZW91dCA8IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3RpbWVvdXQgbXVzdCBiZSBwb3NpdGl2ZScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZURpc3Bvc2FibGVUb2tlbkV4cGlyeShleHBpcmVzSW46IEV4cGlyZXNJbikge1xuICBpZiAoIWV4cGlyZXNJbi5kb2VzRXhwaXJlKCkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2Rpc3Bvc2FibGUgdG9rZW5zIG11c3QgaGF2ZSBhbiBleHBpcnknKTtcbiAgfVxuICBpZiAoZXhwaXJlc0luLnNlY29uZHMoKSA8IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2Rpc3Bvc2FibGUgdG9rZW4gZXhwaXJ5IG11c3QgYmUgcG9zaXRpdmUnKTtcbiAgfVxuICBpZiAoZXhwaXJlc0luLnNlY29uZHMoKSA+IDYwICogNjApIHtcbiAgICAvLyA2MCBzZWNvbmRzICogNjAgbWludXRlc1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihcbiAgICAgICdkaXNwb3NhYmxlIHRva2VucyBtdXN0IGV4cGlyZSB3aXRoaW4gMSBob3VyJ1xuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlRGlzcG9zYWJsZVRva2VuVG9rZW5JRCh0b2tlbklkOiBzdHJpbmcpIHtcbiAgaWYgKHRva2VuSWQubGVuZ3RoID4gNjQpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoXG4gICAgICAnVG9rZW5JRCBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byA2NCBjaGFyYWN0ZXJzLidcbiAgICApO1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzRW1wdHkoc3RyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuICFzdHIudHJpbSgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNCYXNlNjQoc3RyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gZW5jb2RlVG9CYXNlNjQoZGVjb2RlRnJvbUJhc2U2NChzdHIpKSA9PT0gc3RyO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUxlYWRlcmJvYXJkTmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2xlYWRlcmJvYXJkIG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVMZWFkZXJib2FyZFJhbmtzKHN0YXJ0X3Jhbms6IG51bWJlciwgZW5kX3Jhbms6IG51bWJlcikge1xuICBpZiAoc3RhcnRfcmFuayA+IDAgJiYgZW5kX3JhbmsgPiAwICYmIHN0YXJ0X3JhbmsgPj0gZW5kX3JhbmspIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3N0YXJ0IHJhbmsgbXVzdCBiZSBsZXNzIHRoYW4gZW5kIHJhbmsnKTtcbiAgfVxuICBpZiAoc3RhcnRfcmFuayA8IDAgfHwgZW5kX3JhbmsgPCAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdyYW5rcyBtdXN0IGJlIHBvc2l0aXZlJyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlTGVhZGVyYm9hcmRPZmZzZXQob2Zmc2V0OiBudW1iZXIpIHtcbiAgaWYgKG9mZnNldCA8IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ29mZnNldCBtdXN0IGJlIG5vbi1uZWdhdGl2ZSAoPj0gMCknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVMZWFkZXJib2FyZENvdW50KGNvdW50OiBudW1iZXIpIHtcbiAgaWYgKGNvdW50IDwgMSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignY291bnQgbXVzdCBiZSBzdHJpY3RseSBwb3NpdGl2ZSAoPiAwKScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUxlYWRlcmJvYXJkTnVtYmVyT2ZFbGVtZW50cyhudW1FbGVtZW50czogbnVtYmVyKSB7XG4gIGlmIChudW1FbGVtZW50cyA8IDEpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ211c3QgcHJvdmlkZSBhdCBsZWFzdCBvbmUgZWxlbWVudCcpO1xuICB9XG59XG4iXX0=
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC91dGlscy92YWxpZGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlDQUFrRDtBQUVsRCxxQ0FBMEQ7QUFFMUQsU0FBZ0IsaUJBQWlCLENBQUMsSUFBWTtJQUM1QyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNqQixNQUFNLElBQUksNkJBQW9CLENBQUMsOEJBQThCLENBQUMsQ0FBQztLQUNoRTtBQUNILENBQUM7QUFKRCw4Q0FJQztBQUVELFNBQWdCLHdCQUF3QixDQUFDLElBQVk7SUFDbkQsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDakIsTUFBTSxJQUFJLDZCQUFvQixDQUFDLDJDQUEyQyxDQUFDLENBQUM7S0FDN0U7QUFDSCxDQUFDO0FBSkQsNERBSUM7QUFFRCxTQUFnQixlQUFlLENBQUMsSUFBWTtJQUMxQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNqQixNQUFNLElBQUksNkJBQW9CLENBQUMsNEJBQTRCLENBQUMsQ0FBQztLQUM5RDtBQUNILENBQUM7QUFKRCwwQ0FJQztBQUVELFNBQWdCLHFCQUFxQixDQUFDLElBQVk7SUFDaEQsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDakIsTUFBTSxJQUFJLDZCQUFvQixDQUFDLG1DQUFtQyxDQUFDLENBQUM7S0FDckU7QUFDSCxDQUFDO0FBSkQsc0RBSUM7QUFFRCxTQUFnQixzQkFBc0IsQ0FBQyxVQUFrQixFQUFFLFFBQWlCO0lBQzFFLElBQUksUUFBUSxLQUFLLFNBQVMsRUFBRTtRQUMxQixPQUFPO0tBQ1I7SUFDRCxJQUFJLFVBQVUsR0FBRyxDQUFDLElBQUksUUFBUSxHQUFHLENBQUMsSUFBSSxVQUFVLEdBQUcsUUFBUSxFQUFFO1FBQzNELE1BQU0sSUFBSSw2QkFBb0IsQ0FBQyx1Q0FBdUMsQ0FB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LElBQUksNkJBQW9CLENBQUMsd0JBQXdCLENBQUMsQ0FBQztLQUMxRDtBQUNILENBQUM7QUFQRCw0REFPQztBQUVELFNBQWdCLHlCQUF5QixDQUFDLE1BQWM7SUFDdEQsSUFBSSxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ2QsTUFBTSxJQUFJLDZCQUFvQixDQUFDLG9DQUFvQyxDQUFDLENBQUM7S0FDdEU7QUFDSCxDQUFDO0FBSkQsOERBSUM7QUFFRCxTQUFnQix3QkFBd0IsQ0FBQyxLQUFhO0lBQ3BELElBQUksS0FBSyxHQUFHLENBQUMsRUFBRTtRQUNiLE1BQU0sSUFBSSw2QkFBb0IsQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO0tBQ3pFO0FBQ0gsQ0FBQztBQUpELDREQUlDO0FBRUQsU0FBZ0IsbUNBQW1DLENBQUMsV0FBbUI7SUFDckUsSUFBSSxXQUFXLEdBQUcsQ0FBQyxFQUFFO1FBQ25CLE1BQU0sSUFBSSw2QkFBb0IsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO0tBQ3JFO0FBQ0gsQ0FBQztBQUpELGtGQUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbnZhbGlkQXJndW1lbnRFcnJvcn0gZnJvbSAnLi4vLi4vZXJyb3JzJztcbmltcG9ydCB7RXhwaXJlc0lufSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQge2RlY29kZUZyb21CYXNlNjQsIGVuY29kZVRvQmFzZTY0fSBmcm9tICcuL3N0cmluZyc7XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUNhY2hlTmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2NhY2hlIG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVDYWNoZUtleU9yUHJlZml4KG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignY2FjaGUga2V5IG9yIGtleSBwcmVmaXggbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVTZXROYW1lKG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignc2V0IG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVTb3J0ZWRTZXROYW1lKG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignc29ydGVkIHNldCBuYW1lIG11c3Qgbm90IGJlIGVtcHR5Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlU29ydGVkU2V0UmFua3Moc3RhcnRfcmFuazogbnVtYmVyLCBlbmRfcmFuaz86IG51bWJlcikge1xuICBpZiAoZW5kX3JhbmsgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybjtcbiAgfVxuICBpZiAoc3RhcnRfcmFuayA+IDAgJiYgZW5kX3JhbmsgPiAwICYmIHN0YXJ0X3JhbmsgPiBlbmRfcmFuaykge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignc3RhcnQgcmFuayBtdXN0IGJlIGxlc3MgdGhhbiBlbmQgcmFuaycpO1xuICB9XG4gIGlmIChzdGFydF9yYW5rIDwgMCAmJiBlbmRfcmFuayA8IDAgJiYgc3RhcnRfcmFuayA+PSBlbmRfcmFuaykge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihcbiAgICAgICduZWdhdGl2ZSBzdGFydCByYW5rIG11c3QgYmUgbGVzcyB0aGFuIG5lZ2F0aXZlIGVuZCByYW5rJ1xuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlU29ydGVkU2V0U2NvcmVzKG1pblNjb3JlPzogbnVtYmVyLCBtYXhTY29yZT86IG51bWJlcikge1xuICBpZiAobWluU2NvcmUgPT09IHVuZGVmaW5lZCkgcmV0dXJuO1xuICBpZiAobWF4U2NvcmUgPT09IHVuZGVmaW5lZCkgcmV0dXJuO1xuICBpZiAobWluU2NvcmUgPiBtYXhTY29yZSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihcbiAgICAgICdtaW5TY29yZSBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byBtYXhTY29yZSdcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVNvcnRlZFNldE9mZnNldChvZmZzZXQ6IG51bWJlcikge1xuICBpZiAob2Zmc2V0IDwgMCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignb2Zmc2V0IG11c3QgYmUgbm9uLW5lZ2F0aXZlICg+PSAwKScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVNvcnRlZFNldENvdW50KGNvdW50OiBudW1iZXIpIHtcbiAgaWYgKGNvdW50IDwgMSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignY291bnQgbXVzdCBiZSBzdHJpY3RseSBwb3NpdGl2ZSAoPiAwKScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZURpY3Rpb25hcnlOYW1lKG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignZGljdGlvbmFyeSBuYW1lIG11c3Qgbm90IGJlIGVtcHR5Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlTGlzdE5hbWUobmFtZTogc3RyaW5nKSB7XG4gIGlmIChpc0VtcHR5KG5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdsaXN0IG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVMaXN0U2xpY2VTdGFydEVuZChcbiAgc3RhcnRJbmRleD86IG51bWJlcixcbiAgZW5kSW5kZXg/OiBudW1iZXJcbikge1xuICBpZiAoc3RhcnRJbmRleCA9PT0gdW5kZWZpbmVkIHx8IGVuZEluZGV4ID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgLy8gY2FuJ3QgdmFsaWRhdGUgYm91bmRzIGZvciBzdGFydCBhbmQgaW5kZXggb2YgZWl0aGVyIG9yIGFyZSBuZWdhdGl2ZSB3aXRob3V0IGxpc3QgbGVuZ3RoXG4gIGlmIChzdGFydEluZGV4ID4gMCB8fCBlbmRJbmRleCA8IDApIHJldHVybjtcbiAgaWYgKGVuZEluZGV4IDw9IHN0YXJ0SW5kZXgpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoXG4gICAgICAnZW5kSW5kZXggKGV4Y2x1c2l2ZSkgbXVzdCBiZSBsYXJnZXIgdGhhbiBzdGFydEluZGV4IChpbmNsdXNpdmUpJ1xuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlVG9waWNOYW1lKG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigndG9waWMgbmFtZSBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVdlYmhvb2tOYW1lKG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignd2ViaG9vayBuYW1lIG11c3Qgbm90IGJlIGVtcHR5Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlSW5kZXhOYW1lKG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW5kZXggbmFtZSBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZU51bURpbWVuc2lvbnMobnVtRGltZW5zaW9uczogbnVtYmVyKSB7XG4gIGlmIChudW1EaW1lbnNpb25zIDw9IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ251bURpbWVuc2lvbnMgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVybycpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVRvcEsodG9wSzogbnVtYmVyKSB7XG4gIGlmICh0b3BLIDw9IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3RvcEsgbXVzdCBiZSBncmVhdGVyIHRoYW4gemVybycpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVR0bE1pbnV0ZXModHRsTWludXRlczogbnVtYmVyKSB7XG4gIGlmICh0dGxNaW51dGVzIDwgMCB8fCAhTnVtYmVyLmlzU2FmZUludGVnZXIodHRsTWludXRlcykpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3R0bE1pbnV0ZXMgbXVzdCBiZSBhIHBvc2l0aXZlIGludGVnZXInKTtcbiAgfVxufVxuXG4vLyBDdXJyZW50bHkgYWNjZXB0aW5nIHR0bCBpbiBzZWNvbmRzLCBidXQgaWYgc29tZW9uZSByZXF1ZXN0cyBzdXBwb3J0IGZvciBtaWxsaXMsXG4vLyB0aGUgdmFsaWRhdG9yIHdpbGwgbmVlZCB0byBjaGVjayBmb3IgTnVtYmVyLmlzU2FmZUludGVnZXIodHRsICogMTAwMCkuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVUdGxTZWNvbmRzKHR0bDogbnVtYmVyKSB7XG4gIGlmICh0dGwgPCAwIHx8ICFOdW1iZXIuaXNTYWZlSW50ZWdlcih0dGwpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKFxuICAgICAgYHR0bCBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlciwgcmVjZWl2ZWQgJHt0dGx9YFxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlVmFsaWRGb3JTZWNvbmRzKHZhbGlkRm9yU2Vjb25kczogbnVtYmVyKSB7XG4gIGlmICh2YWxpZEZvclNlY29uZHMgPCAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd2YWxpZEZvclNlY29uZHMgbXVzdCBiZSBwb3NpdGl2ZScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVRpbWVvdXQodGltZW91dDogbnVtYmVyKSB7XG4gIGlmICh0aW1lb3V0IDwgMCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigndGltZW91dCBtdXN0IGJlIHBvc2l0aXZlJyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlRGlzcG9zYWJsZVRva2VuRXhwaXJ5KGV4cGlyZXNJbjogRXhwaXJlc0luKSB7XG4gIGlmICghZXhwaXJlc0luLmRvZXNFeHBpcmUoKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignZGlzcG9zYWJsZSB0b2tlbnMgbXVzdCBoYXZlIGFuIGV4cGlyeScpO1xuICB9XG4gIGlmIChleHBpcmVzSW4uc2Vjb25kcygpIDwgMCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignZGlzcG9zYWJsZSB0b2tlbiBleHBpcnkgbXVzdCBiZSBwb3NpdGl2ZScpO1xuICB9XG4gIGlmIChleHBpcmVzSW4uc2Vjb25kcygpID4gNjAgKiA2MCkge1xuICAgIC8vIDYwIHNlY29uZHMgKiA2MCBtaW51dGVzXG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKFxuICAgICAgJ2Rpc3Bvc2FibGUgdG9rZW5zIG11c3QgZXhwaXJlIHdpdGhpbiAxIGhvdXInXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVEaXNwb3NhYmxlVG9rZW5Ub2tlbklEKHRva2VuSWQ6IHN0cmluZykge1xuICBpZiAodG9rZW5JZC5sZW5ndGggPiA2NCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihcbiAgICAgICdUb2tlbklEIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDY0IGNoYXJhY3RlcnMuJ1xuICAgICk7XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNFbXB0eShzdHI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gIXN0ci50cmltKCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Jhc2U2NChzdHI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIHJldHVybiBlbmNvZGVUb0Jhc2U2NChkZWNvZGVGcm9tQmFzZTY0KHN0cikpID09PSBzdHI7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlTGVhZGVyYm9hcmROYW1lKG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbGVhZGVyYm9hcmQgbmFtZSBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUxlYWRlcmJvYXJkUmFua3Moc3RhcnRfcmFuazogbnVtYmVyLCBlbmRfcmFuazogbnVtYmVyKSB7XG4gIGlmIChzdGFydF9yYW5rID4gMCAmJiBlbmRfcmFuayA+IDAgJiYgc3RhcnRfcmFuayA+PSBlbmRfcmFuaykge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignc3RhcnQgcmFuayBtdXN0IGJlIGxlc3MgdGhhbiBlbmQgcmFuaycpO1xuICB9XG4gIGlmIChzdGFydF9yYW5rIDwgMCB8fCBlbmRfcmFuayA8IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3JhbmtzIG11c3QgYmUgcG9zaXRpdmUnKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVMZWFkZXJib2FyZE9mZnNldChvZmZzZXQ6IG51bWJlcikge1xuICBpZiAob2Zmc2V0IDwgMCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignb2Zmc2V0IG11c3QgYmUgbm9uLW5lZ2F0aXZlICg+PSAwKScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUxlYWRlcmJvYXJkQ291bnQoY291bnQ6IG51bWJlcikge1xuICBpZiAoY291bnQgPCAxKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdjb3VudCBtdXN0IGJlIHN0cmljdGx5IHBvc2l0aXZlICg+IDApJyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlTGVhZGVyYm9hcmROdW1iZXJPZkVsZW1lbnRzKG51bUVsZW1lbnRzOiBudW1iZXIpIHtcbiAgaWYgKG51bUVsZW1lbnRzIDwgMSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbXVzdCBwcm92aWRlIGF0IGxlYXN0IG9uZSBlbGVtZW50Jyk7XG4gIH1cbn1cbiJdfQ==
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CollectionTtl = void 0;
4
+ const utils_1 = require("../internal/utils");
4
5
  /** Represents the desired behavior for managing the TTL on collection
5
6
  * objects (dictionaries, lists, sets) in your cache.
6
7
  *
@@ -26,6 +27,9 @@ class CollectionTtl {
26
27
  * @param {boolean} [refreshTtl=true]
27
28
  */
28
29
  constructor(ttlSeconds = null, refreshTtl = true) {
30
+ if (ttlSeconds !== null) {
31
+ (0, utils_1.validateTtlSeconds)(ttlSeconds);
32
+ }
29
33
  this._refreshTtl = refreshTtl;
30
34
  this._ttlSeconds = ttlSeconds;
31
35
  }
@@ -99,4 +103,4 @@ class CollectionTtl {
99
103
  }
100
104
  }
101
105
  exports.CollectionTtl = CollectionTtl;
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi10dGwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvY29sbGVjdGlvbi10dGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsTUFBYSxhQUFhO0lBSXhCOzs7Ozs7T0FNRztJQUNILFlBQVksYUFBNEIsSUFBSSxFQUFFLFVBQVUsR0FBRyxJQUFJO1FBQzdELElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksZUFBZTtRQUNwQixPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO0lBQ3BFLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLFlBQVk7UUFDeEIsT0FBTyxJQUFJLGFBQWEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxFQUFFLENBQUMsVUFBa0I7UUFDakMsT0FBTyxJQUFJLGFBQWEsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLG9CQUFvQixDQUNoQyxhQUE0QixJQUFJO1FBRWhDLE9BQU8sSUFBSSxhQUFhLENBQUMsVUFBVSxFQUFFLFVBQVUsS0FBSyxJQUFJLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksdUJBQXVCO1FBQzVCLE9BQU8sSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSx5QkFBeUI7UUFDOUIsT0FBTyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7T0FFRztJQUNJLFFBQVE7UUFDYixPQUFPLFFBQVEsSUFBSSxDQUFDLFdBQVcsSUFBSSxNQUFNLGlCQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQzlCLEVBQUUsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQWhHRCxzQ0FnR0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogUmVwcmVzZW50cyB0aGUgZGVzaXJlZCBiZWhhdmlvciBmb3IgbWFuYWdpbmcgdGhlIFRUTCBvbiBjb2xsZWN0aW9uXG4gKiAgb2JqZWN0cyAoZGljdGlvbmFyaWVzLCBsaXN0cywgc2V0cykgaW4geW91ciBjYWNoZS5cbiAqXG4gKiAgRm9yIGNhY2hlIG9wZXJhdGlvbnMgdGhhdCBtb2RpZnkgYSBjb2xsZWN0aW9uLCB0aGVyZSBhcmUgYSBmZXcgdGhpbmdzXG4gKiAgdG8gY29uc2lkZXIuICBUaGUgZmlyc3QgdGltZSB0aGUgY29sbGVjdGlvbiBpcyBjcmVhdGVkLCB3ZSBuZWVkIHRvXG4gKiAgc2V0IGEgVFRMIG9uIGl0LiAgRm9yIHN1YnNlcXVlbnQgb3BlcmF0aW9ucyB0aGF0IG1vZGlmeSB0aGUgY29sbGVjdGlvblxuICogIHlvdSBtYXkgY2hvb3NlIHRvIHVwZGF0ZSB0aGUgVFRMIGluIG9yZGVyIHRvIHByb2xvbmcgdGhlIGxpZmUgb2YgdGhlXG4gKiAgY2FjaGVkIGNvbGxlY3Rpb24gb2JqZWN0LCBvciB5b3UgbWF5IGNob29zZSB0byBsZWF2ZSB0aGUgVFRMIHVubW9kaWZpZWRcbiAqICBpbiBvcmRlciB0byBlbnN1cmUgdGhhdCB0aGUgY29sbGVjdGlvbiBleHBpcmVzIGF0IHRoZSBvcmlnaW5hbCBUVEwuXG4gKlxuICogIFRoZSBkZWZhdWx0IGJlaGF2aW9yIGlzIHRvIHJlZnJlc2ggdGhlIFRUTCAodG8gcHJvbG9uZyB0aGUgbGlmZSBvZiB0aGVcbiAqICBjb2xsZWN0aW9uKSBlYWNoIHRpbWUgaXQgaXMgd3JpdHRlbi4gIFRoaXMgYmVoYXZpb3IgY2FuIGJlIG1vZGlmaWVkXG4gKiAgYnkgY2FsbGluZyBDb2xsZWN0aW9uVHRsLndpdGhOb1JlZnJlc2hUdGxPblVwZGF0ZXMoKS5cbiAqXG4gKiAgQSBudWxsIFRUTCBtZWFucyB0byB1c2UgdGhlIGNsaWVudCdzIFRUTC5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbGxlY3Rpb25UdGwge1xuICBwcml2YXRlIHJlYWRvbmx5IF90dGxTZWNvbmRzOiBudW1iZXIgfCBudWxsO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yZWZyZXNoVHRsOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJZiByZWZyZXNoVHRsIGlzIHRydWUsIHRoZSBjbGllbnQgbXVzdCB1cGRhdGUgdGhlIGNvbGxlY3Rpb24ncyBUVExcbiAgICogd2hlbiBpdCBtb2RpZmllcyBhIGNvbGxlY3Rpb24uXG4gICAqIEEgbnVsbCB0dGwgbWVhbnMgdG8gdXNlIHRoZSBjbGllbnQncyBUVEwuXG4gICAqIEBwYXJhbSB7bnVtYmVyIHwgbnVsbH0gW3R0bFNlY29uZHM9bnVsbF1cbiAgICogQHBhcmFtIHtib29sZWFufSBbcmVmcmVzaFR0bD10cnVlXVxuICAgKi9cbiAgY29uc3RydWN0b3IodHRsU2Vjb25kczogbnVtYmVyIHwgbnVsbCA9IG51bGwsIHJlZnJlc2hUdGwgPSB0cnVlKSB7XG4gICAgdGhpcy5fcmVmcmVzaFR0bCA9IHJlZnJlc2hUdGw7XG4gICAgdGhpcy5fdHRsU2Vjb25kcyA9IHR0bFNlY29uZHM7XG4gIH1cblxuICAvKiogVGltZS10by1saXZlLCBpbiBzZWNvbmRzLlxuICAgKiBAcmV0dXJucyB7bnVtYmVyIHwgbnVsbH1cbiAgICovXG4gIHB1YmxpYyB0dGxTZWNvbmRzKCk6IG51bWJlciB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl90dGxTZWNvbmRzO1xuICB9XG5cbiAgLyoqIFRpbWUtdG8tbGl2ZSwgaW4gbWlsbGlzZWNvbmRzLlxuICAgKiBAcmV0dXJucyB7bnVtYmVyIHwgbnVsbH1cbiAgICovXG4gIHB1YmxpYyB0dGxNaWxsaXNlY29uZHMoKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX3R0bFNlY29uZHMgPT09IG51bGwgPyBudWxsIDogdGhpcy5fdHRsU2Vjb25kcyAqIDEwMDA7XG4gIH1cblxuICAvKiogV2hldGhlciBvciBub3QgdG8gcmVmcmVzaCBhIGNvbGxlY3Rpb24ncyBUVEwgd2hlbiBpdCdzIG1vZGlmaWVkLlxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAgICovXG4gIHB1YmxpYyByZWZyZXNoVHRsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yZWZyZXNoVHRsO1xuICB9XG5cbiAgLyoqIFRoZSBkZWZhdWx0IHdheSB0byBoYW5kbGUgVFRMcyBmb3IgY29sbGVjdGlvbnMuIFRoZSBjbGllbnQncyBkZWZhdWx0IFRUTFxuICAgKiAgd2lsbCBiZSB1c2VkLCBhbmQgdGhlIFRUTCBmb3IgdGhlIGNvbGxlY3Rpb24gd2lsbCBiZSByZWZyZXNoZWQgYW55XG4gICAqICB0aW1lIHRoZSBjb2xsZWN0aW9uIGlzIG1vZGlmaWVkLlxuICAgKiBAY29uc3RydWN0b3JcbiAgICogQHJldHVybnMge0NvbGxlY3Rpb25UdGx9XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21DYWNoZVR0bCgpOiBDb2xsZWN0aW9uVHRsIHtcbiAgICByZXR1cm4gbmV3IENvbGxlY3Rpb25UdGwobnVsbCwgdHJ1ZSk7XG4gIH1cblxuICAvKiogQ29uc3RydWN0cyBhIENvbGxlY3Rpb25UdGwgd2l0aCB0aGUgc3BlY2lmaWVkIFRUTC4gVGhlIFRUTFxuICAgKiAgZm9yIHRoZSBjb2xsZWN0aW9uIHdpbGwgYmUgcmVmcmVzaGVkIGFueSB0aW1lIHRoZSBjb2xsZWN0aW9uIGlzXG4gICAqICBtb2RpZmllZC5cbiAgICogQGNvbnN0cnVjdG9yXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBbdHRsU2Vjb25kc11cbiAgICogQHJldHVybnMge0NvbGxlY3Rpb25UdGx9XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIG9mKHR0bFNlY29uZHM6IG51bWJlcik6IENvbGxlY3Rpb25UdGwge1xuICAgIHJldHVybiBuZXcgQ29sbGVjdGlvblR0bCh0dGxTZWNvbmRzLCB0cnVlKTtcbiAgfVxuXG4gIC8qKiBDb25zdHJ1Y3RzIGEgQ29sbGVjdGlvblR0bCB3aXRoIHRoZSBzcGVjaWZpZWQgVFRMLlxuICAgKiAgV2lsbCBvbmx5IHJlZnJlc2ggaWYgdGhlIFRUTCBpcyBwcm92aWRlZC5cbiAgICogQGNvbnN0cnVjdG9yXG4gICAqIEBwYXJhbSB7bnVtYmVyIHwgbnVsbH0gW3R0bFNlY29uZHM9bnVsbF1cbiAgICogQHJldHVybnMge0NvbGxlY3Rpb25UdGx9XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlZnJlc2hUdGxJZlByb3ZpZGVkKFxuICAgIHR0bFNlY29uZHM6IG51bWJlciB8IG51bGwgPSBudWxsXG4gICk6IENvbGxlY3Rpb25UdGwge1xuICAgIHJldHVybiBuZXcgQ29sbGVjdGlvblR0bCh0dGxTZWNvbmRzLCB0dGxTZWNvbmRzICE9PSBudWxsKTtcbiAgfVxuXG4gIC8qKiBDb3BpZXMgdGhlIENvbGxlY3Rpb25UdGwsIGJ1dCBpdCB3aWxsIHJlZnJlc2ggdGhlIFRUTCB3aGVuXG4gICAqICB0aGUgY29sbGVjdGlvbiBpcyBtb2RpZmllZC5cbiAgICogQHJldHVybnMge0NvbGxlY3Rpb25UdGx9XG4gICAqL1xuICBwdWJsaWMgd2l0aFJlZnJlc2hUdGxPblVwZGF0ZXMoKTogQ29sbGVjdGlvblR0bCB7XG4gICAgcmV0dXJuIG5ldyBDb2xsZWN0aW9uVHRsKHRoaXMuX3R0bFNlY29uZHMsIHRydWUpO1xuICB9XG5cbiAgLyoqIENvcGllcyB0aGUgQ29sbGVjdGlvblRUTCwgYnV0IHRoZSBUVEwgd2lsbCBub3QgYmUgcmVmcmVzaGVkXG4gICAqICB3aGVuIHRoZSBjb2xsZWN0aW9uIGlzIG1vZGlmaWVkLiBVc2UgdGhpcyBpZiB5b3Ugd2FudCB0byBlbnN1cmVcbiAgICogIHRoYXQgeW91ciBjb2xsZWN0aW9uIGV4cGlyZXMgYXQgdGhlIG9yaWdpbmFsbHkgc3BlY2lmaWVkIHRpbWUsIGV2ZW5cbiAgICogIGlmIHlvdSBtYWtlIG1vZGlmaWNhdGlvbnMgdG8gdGhlIHZhbHVlIG9mIHRoZSBjb2xsZWN0aW9uLlxuICAgKiBAcmV0dXJucyB7Q29sbGVjdGlvblR0bH1cbiAgICovXG4gIHB1YmxpYyB3aXRoTm9SZWZyZXNoVHRsT25VcGRhdGVzKCk6IENvbGxlY3Rpb25UdGwge1xuICAgIHJldHVybiBuZXcgQ29sbGVjdGlvblR0bCh0aGlzLl90dGxTZWNvbmRzLCBmYWxzZSk7XG4gIH1cblxuICAvKiogQSBzdHJpbmcgcmVwcmVzZW5hdGlvbiBvZiB0aGUgQ29sbGVjdGlvblR0bCBmb3IgZGVidWdnaW5nIHB1cnBvc2VzLlxuICAgKiBAcmV0dXJuIHtDb2xsZWN0aW9uVHRsfVxuICAgKi9cbiAgcHVibGljIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGB0dGw6ICR7dGhpcy5fdHRsU2Vjb25kcyB8fCAnbnVsbCd9LCByZWZyZXNoVHRsOiAke1xuICAgICAgdGhpcy5fcmVmcmVzaFR0bCA/ICd0cnVlJyA6ICdmYWxzZSdcbiAgICB9YDtcbiAgfVxufVxuIl19
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi10dGwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvY29sbGVjdGlvbi10dGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQXFEO0FBRXJEOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILE1BQWEsYUFBYTtJQUl4Qjs7Ozs7O09BTUc7SUFDSCxZQUFZLGFBQTRCLElBQUksRUFBRSxVQUFVLEdBQUcsSUFBSTtRQUM3RCxJQUFJLFVBQVUsS0FBSyxJQUFJLEVBQUU7WUFDdkIsSUFBQSwwQkFBa0IsRUFBQyxVQUFVLENBQUMsQ0FBQztTQUNoQztRQUNELElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksZUFBZTtRQUNwQixPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO0lBQ3BFLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLFlBQVk7UUFDeEIsT0FBTyxJQUFJLGFBQWEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxFQUFFLENBQUMsVUFBa0I7UUFDakMsT0FBTyxJQUFJLGFBQWEsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLG9CQUFvQixDQUNoQyxhQUE0QixJQUFJO1FBRWhDLE9BQU8sSUFBSSxhQUFhLENBQUMsVUFBVSxFQUFFLFVBQVUsS0FBSyxJQUFJLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksdUJBQXVCO1FBQzVCLE9BQU8sSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSx5QkFBeUI7UUFDOUIsT0FBTyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7T0FFRztJQUNJLFFBQVE7UUFDYixPQUFPLFFBQVEsSUFBSSxDQUFDLFdBQVcsSUFBSSxNQUFNLGlCQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQzlCLEVBQUUsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQW5HRCxzQ0FtR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3ZhbGlkYXRlVHRsU2Vjb25kc30gZnJvbSAnLi4vaW50ZXJuYWwvdXRpbHMnO1xuXG4vKiogUmVwcmVzZW50cyB0aGUgZGVzaXJlZCBiZWhhdmlvciBmb3IgbWFuYWdpbmcgdGhlIFRUTCBvbiBjb2xsZWN0aW9uXG4gKiAgb2JqZWN0cyAoZGljdGlvbmFyaWVzLCBsaXN0cywgc2V0cykgaW4geW91ciBjYWNoZS5cbiAqXG4gKiAgRm9yIGNhY2hlIG9wZXJhdGlvbnMgdGhhdCBtb2RpZnkgYSBjb2xsZWN0aW9uLCB0aGVyZSBhcmUgYSBmZXcgdGhpbmdzXG4gKiAgdG8gY29uc2lkZXIuICBUaGUgZmlyc3QgdGltZSB0aGUgY29sbGVjdGlvbiBpcyBjcmVhdGVkLCB3ZSBuZWVkIHRvXG4gKiAgc2V0IGEgVFRMIG9uIGl0LiAgRm9yIHN1YnNlcXVlbnQgb3BlcmF0aW9ucyB0aGF0IG1vZGlmeSB0aGUgY29sbGVjdGlvblxuICogIHlvdSBtYXkgY2hvb3NlIHRvIHVwZGF0ZSB0aGUgVFRMIGluIG9yZGVyIHRvIHByb2xvbmcgdGhlIGxpZmUgb2YgdGhlXG4gKiAgY2FjaGVkIGNvbGxlY3Rpb24gb2JqZWN0LCBvciB5b3UgbWF5IGNob29zZSB0byBsZWF2ZSB0aGUgVFRMIHVubW9kaWZpZWRcbiAqICBpbiBvcmRlciB0byBlbnN1cmUgdGhhdCB0aGUgY29sbGVjdGlvbiBleHBpcmVzIGF0IHRoZSBvcmlnaW5hbCBUVEwuXG4gKlxuICogIFRoZSBkZWZhdWx0IGJlaGF2aW9yIGlzIHRvIHJlZnJlc2ggdGhlIFRUTCAodG8gcHJvbG9uZyB0aGUgbGlmZSBvZiB0aGVcbiAqICBjb2xsZWN0aW9uKSBlYWNoIHRpbWUgaXQgaXMgd3JpdHRlbi4gIFRoaXMgYmVoYXZpb3IgY2FuIGJlIG1vZGlmaWVkXG4gKiAgYnkgY2FsbGluZyBDb2xsZWN0aW9uVHRsLndpdGhOb1JlZnJlc2hUdGxPblVwZGF0ZXMoKS5cbiAqXG4gKiAgQSBudWxsIFRUTCBtZWFucyB0byB1c2UgdGhlIGNsaWVudCdzIFRUTC5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbGxlY3Rpb25UdGwge1xuICBwcml2YXRlIHJlYWRvbmx5IF90dGxTZWNvbmRzOiBudW1iZXIgfCBudWxsO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yZWZyZXNoVHRsOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJZiByZWZyZXNoVHRsIGlzIHRydWUsIHRoZSBjbGllbnQgbXVzdCB1cGRhdGUgdGhlIGNvbGxlY3Rpb24ncyBUVExcbiAgICogd2hlbiBpdCBtb2RpZmllcyBhIGNvbGxlY3Rpb24uXG4gICAqIEEgbnVsbCB0dGwgbWVhbnMgdG8gdXNlIHRoZSBjbGllbnQncyBUVEwuXG4gICAqIEBwYXJhbSB7bnVtYmVyIHwgbnVsbH0gW3R0bFNlY29uZHM9bnVsbF1cbiAgICogQHBhcmFtIHtib29sZWFufSBbcmVmcmVzaFR0bD10cnVlXVxuICAgKi9cbiAgY29uc3RydWN0b3IodHRsU2Vjb25kczogbnVtYmVyIHwgbnVsbCA9IG51bGwsIHJlZnJlc2hUdGwgPSB0cnVlKSB7XG4gICAgaWYgKHR0bFNlY29uZHMgIT09IG51bGwpIHtcbiAgICAgIHZhbGlkYXRlVHRsU2Vjb25kcyh0dGxTZWNvbmRzKTtcbiAgICB9XG4gICAgdGhpcy5fcmVmcmVzaFR0bCA9IHJlZnJlc2hUdGw7XG4gICAgdGhpcy5fdHRsU2Vjb25kcyA9IHR0bFNlY29uZHM7XG4gIH1cblxuICAvKiogVGltZS10by1saXZlLCBpbiBzZWNvbmRzLlxuICAgKiBAcmV0dXJucyB7bnVtYmVyIHwgbnVsbH1cbiAgICovXG4gIHB1YmxpYyB0dGxTZWNvbmRzKCk6IG51bWJlciB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl90dGxTZWNvbmRzO1xuICB9XG5cbiAgLyoqIFRpbWUtdG8tbGl2ZSwgaW4gbWlsbGlzZWNvbmRzLlxuICAgKiBAcmV0dXJucyB7bnVtYmVyIHwgbnVsbH1cbiAgICovXG4gIHB1YmxpYyB0dGxNaWxsaXNlY29uZHMoKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX3R0bFNlY29uZHMgPT09IG51bGwgPyBudWxsIDogdGhpcy5fdHRsU2Vjb25kcyAqIDEwMDA7XG4gIH1cblxuICAvKiogV2hldGhlciBvciBub3QgdG8gcmVmcmVzaCBhIGNvbGxlY3Rpb24ncyBUVEwgd2hlbiBpdCdzIG1vZGlmaWVkLlxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAgICovXG4gIHB1YmxpYyByZWZyZXNoVHRsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yZWZyZXNoVHRsO1xuICB9XG5cbiAgLyoqIFRoZSBkZWZhdWx0IHdheSB0byBoYW5kbGUgVFRMcyBmb3IgY29sbGVjdGlvbnMuIFRoZSBjbGllbnQncyBkZWZhdWx0IFRUTFxuICAgKiAgd2lsbCBiZSB1c2VkLCBhbmQgdGhlIFRUTCBmb3IgdGhlIGNvbGxlY3Rpb24gd2lsbCBiZSByZWZyZXNoZWQgYW55XG4gICAqICB0aW1lIHRoZSBjb2xsZWN0aW9uIGlzIG1vZGlmaWVkLlxuICAgKiBAY29uc3RydWN0b3JcbiAgICogQHJldHVybnMge0NvbGxlY3Rpb25UdGx9XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21DYWNoZVR0bCgpOiBDb2xsZWN0aW9uVHRsIHtcbiAgICByZXR1cm4gbmV3IENvbGxlY3Rpb25UdGwobnVsbCwgdHJ1ZSk7XG4gIH1cblxuICAvKiogQ29uc3RydWN0cyBhIENvbGxlY3Rpb25UdGwgd2l0aCB0aGUgc3BlY2lmaWVkIFRUTC4gVGhlIFRUTFxuICAgKiAgZm9yIHRoZSBjb2xsZWN0aW9uIHdpbGwgYmUgcmVmcmVzaGVkIGFueSB0aW1lIHRoZSBjb2xsZWN0aW9uIGlzXG4gICAqICBtb2RpZmllZC5cbiAgICogQGNvbnN0cnVjdG9yXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBbdHRsU2Vjb25kc11cbiAgICogQHJldHVybnMge0NvbGxlY3Rpb25UdGx9XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIG9mKHR0bFNlY29uZHM6IG51bWJlcik6IENvbGxlY3Rpb25UdGwge1xuICAgIHJldHVybiBuZXcgQ29sbGVjdGlvblR0bCh0dGxTZWNvbmRzLCB0cnVlKTtcbiAgfVxuXG4gIC8qKiBDb25zdHJ1Y3RzIGEgQ29sbGVjdGlvblR0bCB3aXRoIHRoZSBzcGVjaWZpZWQgVFRMLlxuICAgKiAgV2lsbCBvbmx5IHJlZnJlc2ggaWYgdGhlIFRUTCBpcyBwcm92aWRlZC5cbiAgICogQGNvbnN0cnVjdG9yXG4gICAqIEBwYXJhbSB7bnVtYmVyIHwgbnVsbH0gW3R0bFNlY29uZHM9bnVsbF1cbiAgICogQHJldHVybnMge0NvbGxlY3Rpb25UdGx9XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlZnJlc2hUdGxJZlByb3ZpZGVkKFxuICAgIHR0bFNlY29uZHM6IG51bWJlciB8IG51bGwgPSBudWxsXG4gICk6IENvbGxlY3Rpb25UdGwge1xuICAgIHJldHVybiBuZXcgQ29sbGVjdGlvblR0bCh0dGxTZWNvbmRzLCB0dGxTZWNvbmRzICE9PSBudWxsKTtcbiAgfVxuXG4gIC8qKiBDb3BpZXMgdGhlIENvbGxlY3Rpb25UdGwsIGJ1dCBpdCB3aWxsIHJlZnJlc2ggdGhlIFRUTCB3aGVuXG4gICAqICB0aGUgY29sbGVjdGlvbiBpcyBtb2RpZmllZC5cbiAgICogQHJldHVybnMge0NvbGxlY3Rpb25UdGx9XG4gICAqL1xuICBwdWJsaWMgd2l0aFJlZnJlc2hUdGxPblVwZGF0ZXMoKTogQ29sbGVjdGlvblR0bCB7XG4gICAgcmV0dXJuIG5ldyBDb2xsZWN0aW9uVHRsKHRoaXMuX3R0bFNlY29uZHMsIHRydWUpO1xuICB9XG5cbiAgLyoqIENvcGllcyB0aGUgQ29sbGVjdGlvblRUTCwgYnV0IHRoZSBUVEwgd2lsbCBub3QgYmUgcmVmcmVzaGVkXG4gICAqICB3aGVuIHRoZSBjb2xsZWN0aW9uIGlzIG1vZGlmaWVkLiBVc2UgdGhpcyBpZiB5b3Ugd2FudCB0byBlbnN1cmVcbiAgICogIHRoYXQgeW91ciBjb2xsZWN0aW9uIGV4cGlyZXMgYXQgdGhlIG9yaWdpbmFsbHkgc3BlY2lmaWVkIHRpbWUsIGV2ZW5cbiAgICogIGlmIHlvdSBtYWtlIG1vZGlmaWNhdGlvbnMgdG8gdGhlIHZhbHVlIG9mIHRoZSBjb2xsZWN0aW9uLlxuICAgKiBAcmV0dXJucyB7Q29sbGVjdGlvblR0bH1cbiAgICovXG4gIHB1YmxpYyB3aXRoTm9SZWZyZXNoVHRsT25VcGRhdGVzKCk6IENvbGxlY3Rpb25UdGwge1xuICAgIHJldHVybiBuZXcgQ29sbGVjdGlvblR0bCh0aGlzLl90dGxTZWNvbmRzLCBmYWxzZSk7XG4gIH1cblxuICAvKiogQSBzdHJpbmcgcmVwcmVzZW5hdGlvbiBvZiB0aGUgQ29sbGVjdGlvblR0bCBmb3IgZGVidWdnaW5nIHB1cnBvc2VzLlxuICAgKiBAcmV0dXJuIHtDb2xsZWN0aW9uVHRsfVxuICAgKi9cbiAgcHVibGljIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGB0dGw6ICR7dGhpcy5fdHRsU2Vjb25kcyB8fCAnbnVsbCd9LCByZWZyZXNoVHRsOiAke1xuICAgICAgdGhpcy5fcmVmcmVzaFR0bCA/ICd0cnVlJyA6ICdmYWxzZSdcbiAgICB9YDtcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gomomento/sdk-core",
3
- "version": "1.65.3",
3
+ "version": "1.66.0",
4
4
  "description": "Common code for Momento JS SDKs",
5
5
  "main": "dist/src/index.js",
6
6
  "files": [