UNPKG

@helgoland/core

Version:

65 lines (64 loc) 4.6 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; /** @type {?} */ var INTERNAL_ID_SEPERATOR = '__'; /** * @record */ export function InternalDatasetId() { } /** @type {?} */ InternalDatasetId.prototype.id; /** @type {?} */ InternalDatasetId.prototype.url; /** * Service to generate or resolve internal dataset IDs */ var InternalIdHandler = /** @class */ (function () { function InternalIdHandler() { } /** * Generates an internal id for the given dataset. * @param {?} dataset The dataset for which the internal id will be generated and saved. * @return {?} */ InternalIdHandler.prototype.generateInternalId = /** * Generates an internal id for the given dataset. * @param {?} dataset The dataset for which the internal id will be generated and saved. * @return {?} */ function (dataset) { dataset.internalId = dataset.url + INTERNAL_ID_SEPERATOR + dataset.id; }; /** * Resolves the internal ID to the url and the API specific dataset id. * @param {?} internalId The internal id as string * @return {?} Construct of url and API id */ InternalIdHandler.prototype.resolveInternalId = /** * Resolves the internal ID to the url and the API specific dataset id. * @param {?} internalId The internal id as string * @return {?} Construct of url and API id */ function (internalId) { /** @type {?} */ var split = internalId.split(INTERNAL_ID_SEPERATOR); if (split.length !== 2) { console.error('InternalID ' + internalId + ' is not resolvable'); } else { return { url: split[0], id: split[1] }; } }; InternalIdHandler.decorators = [ { type: Injectable }, ]; return InternalIdHandler; }()); export { InternalIdHandler }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtaWQtaGFuZGxlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhlbGdvbGFuZC9jb3JlLyIsInNvdXJjZXMiOlsibGliL2RhdGFzZXQtYXBpL2ludGVybmFsLWlkLWhhbmRsZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFJM0MsSUFBTSxxQkFBcUIsR0FBRyxJQUFJLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBaUIxQiw4Q0FBa0I7Ozs7O2NBQUMsT0FBaUI7UUFDekMsT0FBTyxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsR0FBRyxHQUFHLHFCQUFxQixHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUM7Ozs7Ozs7SUFRakUsNkNBQWlCOzs7OztjQUFDLFVBQWtCOztRQUN6QyxJQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDdEQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZCLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLFVBQVUsR0FBRyxvQkFBb0IsQ0FBQyxDQUFDO1NBQ2xFO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDTixNQUFNLENBQUM7Z0JBQ0wsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ2IsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDYixDQUFDO1NBQ0g7OztnQkF6QkosVUFBVTs7NEJBZFg7O1NBZWEsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBJRGF0YXNldCB9IGZyb20gJy4uL21vZGVsL2RhdGFzZXQtYXBpL2RhdGFzZXQnO1xuXG5jb25zdCBJTlRFUk5BTF9JRF9TRVBFUkFUT1IgPSAnX18nO1xuXG5leHBvcnQgaW50ZXJmYWNlIEludGVybmFsRGF0YXNldElkIHtcbiAgaWQ6IHN0cmluZztcbiAgdXJsOiBzdHJpbmc7XG59XG5cbi8qKlxuICogU2VydmljZSB0byBnZW5lcmF0ZSBvciByZXNvbHZlIGludGVybmFsIGRhdGFzZXQgSURzXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBJbnRlcm5hbElkSGFuZGxlciB7XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhbiBpbnRlcm5hbCBpZCBmb3IgdGhlIGdpdmVuIGRhdGFzZXQuXG4gICAqIEBwYXJhbSBkYXRhc2V0IFRoZSBkYXRhc2V0IGZvciB3aGljaCB0aGUgaW50ZXJuYWwgaWQgd2lsbCBiZSBnZW5lcmF0ZWQgYW5kIHNhdmVkLlxuICAgKi9cbiAgcHVibGljIGdlbmVyYXRlSW50ZXJuYWxJZChkYXRhc2V0OiBJRGF0YXNldCkge1xuICAgIGRhdGFzZXQuaW50ZXJuYWxJZCA9IGRhdGFzZXQudXJsICsgSU5URVJOQUxfSURfU0VQRVJBVE9SICsgZGF0YXNldC5pZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNvbHZlcyB0aGUgaW50ZXJuYWwgSUQgdG8gdGhlIHVybCBhbmQgdGhlIEFQSSBzcGVjaWZpYyBkYXRhc2V0IGlkLlxuICAgKiBAcGFyYW0gaW50ZXJuYWxJZCBUaGUgaW50ZXJuYWwgaWQgYXMgc3RyaW5nXG4gICAqIEByZXR1cm5zIENvbnN0cnVjdCBvZiB1cmwgYW5kIEFQSSBpZFxuICAgKi9cbiAgcHVibGljIHJlc29sdmVJbnRlcm5hbElkKGludGVybmFsSWQ6IHN0cmluZyk6IEludGVybmFsRGF0YXNldElkIHtcbiAgICBjb25zdCBzcGxpdCA9IGludGVybmFsSWQuc3BsaXQoSU5URVJOQUxfSURfU0VQRVJBVE9SKTtcbiAgICBpZiAoc3BsaXQubGVuZ3RoICE9PSAyKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdJbnRlcm5hbElEICcgKyBpbnRlcm5hbElkICsgJyBpcyBub3QgcmVzb2x2YWJsZScpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB1cmw6IHNwbGl0WzBdLFxuICAgICAgICBpZDogc3BsaXRbMV1cbiAgICAgIH07XG4gICAgfVxuICB9XG59XG4iXX0=