package.dist.src.preview-leaderboard-client.js Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of sdk Show documentation
Show all versions of sdk Show documentation
Client SDK for Momento services
The newest version!
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.PreviewLeaderboardClient = void 0;
const sdk_core_1 = require("@gomomento/sdk-core");
const leaderboard_data_client_1 = require("./internal/leaderboard-data-client");
const leaderboard_1 = require("./internal/leaderboard");
const index_1 = require("./index");
/**
* PREVIEW Momento Leaderboard Client
* WARNING: the API for this client is not yet stable and may change without notice.
* Please contact Momento if you would like to try this preview.
*
* Leaderboard methods return a response object unique to each request.
* The response object is resolved to a type-safe object of one of several
* sub-types. See the documentation for each response type for details.
*/
class PreviewLeaderboardClient {
constructor(props) {
var _a, _b;
const configuration = (_a = props.configuration) !== null && _a !== void 0 ? _a : getDefaultLeaderboardConfiguration();
const allProps = {
configuration: configuration,
credentialProvider: (_b = props.credentialProvider) !== null && _b !== void 0 ? _b : (0, sdk_core_1.getDefaultCredentialProvider)(),
};
this.configuration = configuration;
this.logger = configuration.getLoggerFactory().getLogger(this);
this.logger.debug('Creating Momento LeaderboardClient');
this.dataClient = new leaderboard_data_client_1.LeaderboardDataClient(allProps, '0'); // only creating one leaderboard client
// Initialize middlewares that have init methods. These currently start
// background tasks for logging that will execute until they are explicitly
// stopped. This is usually handled by the client's close method, but if
// there is ever a chance that this client constructor may fail after these
// methods are called, it is up to you to catch the exception and call close
// on each of these manually.
this.configuration.getMiddlewares().forEach(m => {
if (m.init) {
m.init();
}
});
}
close() {
this.dataClient.close();
this.configuration.getMiddlewares().forEach(m => {
if (m.close) {
m.close();
}
});
}
/**
* Creates an instance of LeaderboardClient with floating point scores up until 53 bits of precision.
*/
leaderboard(cacheName, leaderboardName) {
return new leaderboard_1.Leaderboard(this.dataClient, cacheName, leaderboardName);
}
}
exports.PreviewLeaderboardClient = PreviewLeaderboardClient;
function getDefaultLeaderboardConfiguration() {
return index_1.LeaderboardConfigurations.Laptop.latest();
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy1sZWFkZXJib2FyZC1jbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJldmlldy1sZWFkZXJib2FyZC1jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsa0RBSzZCO0FBQzdCLGdGQUF5RTtBQUV6RSx3REFBbUQ7QUFFbkQsbUNBQTRFO0FBRzVFOzs7Ozs7OztHQVFHO0FBQ0gsTUFBYSx3QkFBd0I7SUFLbkMsWUFBWSxLQUE2Qjs7UUFDdkMsTUFBTSxhQUFhLEdBQ2pCLE1BQUEsS0FBSyxDQUFDLGFBQWEsbUNBQUksa0NBQWtDLEVBQUUsQ0FBQztRQUM5RCxNQUFNLFFBQVEsR0FBOEI7WUFDMUMsYUFBYSxFQUFFLGFBQWE7WUFDNUIsa0JBQWtCLEVBQ2hCLE1BQUEsS0FBSyxDQUFDLGtCQUFrQixtQ0FBSSxJQUFBLHVDQUE0QixHQUFFO1NBQzdELENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUVuQyxJQUFJLENBQUMsTUFBTSxHQUFHLGFBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSwrQ0FBcUIsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyx1Q0FBdUM7UUFFbkcsdUVBQXVFO1FBQ3ZFLDJFQUEyRTtRQUMzRSx3RUFBd0U7UUFDeEUsMkVBQTJFO1FBQzNFLDRFQUE0RTtRQUM1RSw2QkFBNkI7UUFDN0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDOUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFO2dCQUNWLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUNWO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDOUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUNYLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUNYO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXLENBQUMsU0FBaUIsRUFBRSxlQUF1QjtRQUMzRCxPQUFPLElBQUkseUJBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxlQUFlLENBQUMsQ0FBQztJQUN0RSxDQUFDO0NBQ0Y7QUEvQ0QsNERBK0NDO0FBRUQsU0FBUyxrQ0FBa0M7SUFDekMsT0FBTyxpQ0FBeUIsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7QUFDbkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE1vbWVudG9Mb2dnZXIsXG4gIElMZWFkZXJib2FyZENsaWVudCxcbiAgSUxlYWRlcmJvYXJkLFxuICBnZXREZWZhdWx0Q3JlZGVudGlhbFByb3ZpZGVyLFxufSBmcm9tICdAZ29tb21lbnRvL3Nkay1jb3JlJztcbmltcG9ydCB7TGVhZGVyYm9hcmREYXRhQ2xpZW50fSBmcm9tICcuL2ludGVybmFsL2xlYWRlcmJvYXJkLWRhdGEtY2xpZW50JztcbmltcG9ydCB7TGVhZGVyYm9hcmRDbGllbnRQcm9wc30gZnJvbSAnLi9sZWFkZXJib2FyZC1jbGllbnQtcHJvcHMnO1xuaW1wb3J0IHtMZWFkZXJib2FyZH0gZnJvbSAnLi9pbnRlcm5hbC9sZWFkZXJib2FyZCc7XG5pbXBvcnQge0lMZWFkZXJib2FyZERhdGFDbGllbnR9IGZyb20gJ0Bnb21vbWVudG8vc2RrLWNvcmUvZGlzdC9zcmMvaW50ZXJuYWwvY2xpZW50cy9sZWFkZXJib2FyZC9JTGVhZGVyYm9hcmREYXRhQ2xpZW50JztcbmltcG9ydCB7TGVhZGVyYm9hcmRDb25maWd1cmF0aW9uLCBMZWFkZXJib2FyZENvbmZpZ3VyYXRpb25zfSBmcm9tICcuL2luZGV4JztcbmltcG9ydCB7TGVhZGVyYm9hcmRDbGllbnRBbGxQcm9wc30gZnJvbSAnLi9pbnRlcm5hbC9sZWFkZXJib2FyZC1jbGllbnQtYWxsLXByb3BzJztcblxuLyoqXG4gKiBQUkVWSUVXIE1vbWVudG8gTGVhZGVyYm9hcmQgQ2xpZW50XG4gKiBXQVJOSU5HOiB0aGUgQVBJIGZvciB0aGlzIGNsaWVudCBpcyBub3QgeWV0IHN0YWJsZSBhbmQgbWF5IGNoYW5nZSB3aXRob3V0IG5vdGljZS5cbiAqIFBsZWFzZSBjb250YWN0IE1vbWVudG8gaWYgeW91IHdvdWxkIGxpa2UgdG8gdHJ5IHRoaXMgcHJldmlldy5cbiAqXG4gKiBMZWFkZXJib2FyZCBtZXRob2RzIHJldHVybiBhIHJlc3BvbnNlIG9iamVjdCB1bmlxdWUgdG8gZWFjaCByZXF1ZXN0LlxuICogVGhlIHJlc3BvbnNlIG9iamVjdCBpcyByZXNvbHZlZCB0byBhIHR5cGUtc2FmZSBvYmplY3Qgb2Ygb25lIG9mIHNldmVyYWxcbiAqIHN1Yi10eXBlcy4gU2VlIHRoZSBkb2N1bWVudGF0aW9uIGZvciBlYWNoIHJlc3BvbnNlIHR5cGUgZm9yIGRldGFpbHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBQcmV2aWV3TGVhZGVyYm9hcmRDbGllbnQgaW1wbGVtZW50cyBJTGVhZGVyYm9hcmRDbGllbnQge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbG9nZ2VyOiBNb21lbnRvTG9nZ2VyO1xuICBwcml2YXRlIHJlYWRvbmx5IGRhdGFDbGllbnQ6IElMZWFkZXJib2FyZERhdGFDbGllbnQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29uZmlndXJhdGlvbjogTGVhZGVyYm9hcmRDb25maWd1cmF0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHByb3BzOiBMZWFkZXJib2FyZENsaWVudFByb3BzKSB7XG4gICAgY29uc3QgY29uZmlndXJhdGlvbiA9XG4gICAgICBwcm9wcy5jb25maWd1cmF0aW9uID8/IGdldERlZmF1bHRMZWFkZXJib2FyZENvbmZpZ3VyYXRpb24oKTtcbiAgICBjb25zdCBhbGxQcm9wczogTGVhZGVyYm9hcmRDbGllbnRBbGxQcm9wcyA9IHtcbiAgICAgIGNvbmZpZ3VyYXRpb246IGNvbmZpZ3VyYXRpb24sXG4gICAgICBjcmVkZW50aWFsUHJvdmlkZXI6XG4gICAgICAgIHByb3BzLmNyZWRlbnRpYWxQcm92aWRlciA/PyBnZXREZWZhdWx0Q3JlZGVudGlhbFByb3ZpZGVyKCksXG4gICAgfTtcbiAgICB0aGlzLmNvbmZpZ3VyYXRpb24gPSBjb25maWd1cmF0aW9uO1xuXG4gICAgdGhpcy5sb2dnZXIgPSBjb25maWd1cmF0aW9uLmdldExvZ2dlckZhY3RvcnkoKS5nZXRMb2dnZXIodGhpcyk7XG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ0NyZWF0aW5nIE1vbWVudG8gTGVhZGVyYm9hcmRDbGllbnQnKTtcbiAgICB0aGlzLmRhdGFDbGllbnQgPSBuZXcgTGVhZGVyYm9hcmREYXRhQ2xpZW50KGFsbFByb3BzLCAnMCcpOyAvLyBvbmx5IGNyZWF0aW5nIG9uZSBsZWFkZXJib2FyZCBjbGllbnRcblxuICAgIC8vIEluaXRpYWxpemUgbWlkZGxld2FyZXMgdGhhdCBoYXZlIGluaXQgbWV0aG9kcy4gVGhlc2UgY3VycmVudGx5IHN0YXJ0XG4gICAgLy8gYmFja2dyb3VuZCB0YXNrcyBmb3IgbG9nZ2luZyB0aGF0IHdpbGwgZXhlY3V0ZSB1bnRpbCB0aGV5IGFyZSBleHBsaWNpdGx5XG4gICAgLy8gc3RvcHBlZC4gVGhpcyBpcyB1c3VhbGx5IGhhbmRsZWQgYnkgdGhlIGNsaWVudCdzIGNsb3NlIG1ldGhvZCwgYnV0IGlmXG4gICAgLy8gdGhlcmUgaXMgZXZlciBhIGNoYW5jZSB0aGF0IHRoaXMgY2xpZW50IGNvbnN0cnVjdG9yIG1heSBmYWlsIGFmdGVyIHRoZXNlXG4gICAgLy8gbWV0aG9kcyBhcmUgY2FsbGVkLCBpdCBpcyB1cCB0byB5b3UgdG8gY2F0Y2ggdGhlIGV4Y2VwdGlvbiBhbmQgY2FsbCBjbG9zZVxuICAgIC8vIG9uIGVhY2ggb2YgdGhlc2UgbWFudWFsbHkuXG4gICAgdGhpcy5jb25maWd1cmF0aW9uLmdldE1pZGRsZXdhcmVzKCkuZm9yRWFjaChtID0+IHtcbiAgICAgIGlmIChtLmluaXQpIHtcbiAgICAgICAgbS5pbml0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoKSB7XG4gICAgdGhpcy5kYXRhQ2xpZW50LmNsb3NlKCk7XG4gICAgdGhpcy5jb25maWd1cmF0aW9uLmdldE1pZGRsZXdhcmVzKCkuZm9yRWFjaChtID0+IHtcbiAgICAgIGlmIChtLmNsb3NlKSB7XG4gICAgICAgIG0uY2xvc2UoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIExlYWRlcmJvYXJkQ2xpZW50IHdpdGggZmxvYXRpbmcgcG9pbnQgc2NvcmVzIHVwIHVudGlsIDUzIGJpdHMgb2YgcHJlY2lzaW9uLlxuICAgKi9cbiAgcHVibGljIGxlYWRlcmJvYXJkKGNhY2hlTmFtZTogc3RyaW5nLCBsZWFkZXJib2FyZE5hbWU6IHN0cmluZyk6IElMZWFkZXJib2FyZCB7XG4gICAgcmV0dXJuIG5ldyBMZWFkZXJib2FyZCh0aGlzLmRhdGFDbGllbnQsIGNhY2hlTmFtZSwgbGVhZGVyYm9hcmROYW1lKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXREZWZhdWx0TGVhZGVyYm9hcmRDb25maWd1cmF0aW9uKCk6IExlYWRlcmJvYXJkQ29uZmlndXJhdGlvbiB7XG4gIHJldHVybiBMZWFkZXJib2FyZENvbmZpZ3VyYXRpb25zLkxhcHRvcC5sYXRlc3QoKTtcbn1cbiJdfQ==