@kephas/angular
Version:
Provides integration capabilities with Angular.
38 lines • 3.33 kB
JavaScript
import { __decorate } from "tslib";
import { SingletonAppServiceContract, AppService, Priority } from '@kephas/core';
/**
* Gets the application settings.
*
* @export
* @class AppSettings
*/
let AppSettings = class AppSettings {
/**
* Gets the base URL of the application.
*
* @readonly
* @type {string}
* @memberof AppSettings
*/
get baseUrl() {
const baseQuery = document.getElementsByTagName('base');
const baseElement = baseQuery && baseQuery[0];
return (baseElement && baseElement.href) || document.baseURI || '/';
}
/**
* Gets the base API URL of the application.
*
* @readonly
* @type {string}
* @memberof AppSettings
*/
get baseApiUrl() {
return `${this.baseUrl}api/`;
}
};
AppSettings = __decorate([
AppService({ overridePriority: Priority.Low }),
SingletonAppServiceContract()
], AppSettings);
export { AppSettings };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwU2V0dGluZ3MuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvYXBwU2V0dGluZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCwyQkFBMkIsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUNwRCxNQUFNLGNBQWMsQ0FBQztBQUV0Qjs7Ozs7R0FLRztJQUdVLFdBQVcsU0FBWCxXQUFXO0lBRXBCOzs7Ozs7T0FNRztJQUNILElBQUksT0FBTztRQUNQLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4RCxNQUFNLFdBQVcsR0FBRyxTQUFTLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlDLE9BQU8sQ0FBQyxXQUFXLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLFFBQVEsQ0FBQyxPQUFPLElBQUksR0FBRyxDQUFDO0lBQ3hFLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxJQUFJLFVBQVU7UUFDVixPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sTUFBTSxDQUFDO0lBQ2pDLENBQUM7Q0FDSixDQUFBO0FBekJZLFdBQVc7SUFGdkIsVUFBVSxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQzlDLDJCQUEyQixFQUFFO0dBQ2pCLFdBQVcsQ0F5QnZCO1NBekJZLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgU2luZ2xldG9uQXBwU2VydmljZUNvbnRyYWN0LCBBcHBTZXJ2aWNlLCBQcmlvcml0eSwgRXhwYW5kb1xyXG59IGZyb20gJ0BrZXBoYXMvY29yZSc7XHJcblxyXG4vKipcclxuICogR2V0cyB0aGUgYXBwbGljYXRpb24gc2V0dGluZ3MuXHJcbiAqXHJcbiAqIEBleHBvcnRcclxuICogQGNsYXNzIEFwcFNldHRpbmdzXHJcbiAqL1xyXG5AQXBwU2VydmljZSh7IG92ZXJyaWRlUHJpb3JpdHk6IFByaW9yaXR5LkxvdyB9KVxyXG5AU2luZ2xldG9uQXBwU2VydmljZUNvbnRyYWN0KClcclxuZXhwb3J0IGNsYXNzIEFwcFNldHRpbmdzIGltcGxlbWVudHMgRXhwYW5kbyB7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIHRoZSBiYXNlIFVSTCBvZiB0aGUgYXBwbGljYXRpb24uXHJcbiAgICAgKlxyXG4gICAgICogQHJlYWRvbmx5XHJcbiAgICAgKiBAdHlwZSB7c3RyaW5nfVxyXG4gICAgICogQG1lbWJlcm9mIEFwcFNldHRpbmdzXHJcbiAgICAgKi9cclxuICAgIGdldCBiYXNlVXJsKCk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QgYmFzZVF1ZXJ5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2Jhc2UnKTtcclxuICAgICAgICBjb25zdCBiYXNlRWxlbWVudCA9IGJhc2VRdWVyeSAmJiBiYXNlUXVlcnlbMF07XHJcbiAgICAgICAgcmV0dXJuIChiYXNlRWxlbWVudCAmJiBiYXNlRWxlbWVudC5ocmVmKSB8fCBkb2N1bWVudC5iYXNlVVJJIHx8ICcvJztcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEdldHMgdGhlIGJhc2UgQVBJIFVSTCBvZiB0aGUgYXBwbGljYXRpb24uXHJcbiAgICAgKlxyXG4gICAgICogQHJlYWRvbmx5XHJcbiAgICAgKiBAdHlwZSB7c3RyaW5nfVxyXG4gICAgICogQG1lbWJlcm9mIEFwcFNldHRpbmdzXHJcbiAgICAgKi9cclxuICAgIGdldCBiYXNlQXBpVXJsKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIGAke3RoaXMuYmFzZVVybH1hcGkvYDtcclxuICAgIH1cclxufVxyXG4iXX0=