ngx-stimulsoft
Version:
Angular reporter for stimulsoftJS
56 lines • 8.75 kB
JavaScript
import { Inject, Injectable } from '@angular/core';
import { Source, SourceType } from 'ngx-source';
import { config, initialStimulsoftConfig } from './config';
import { StimulsoftSourceName } from './stimulsoft-source-name.model';
import * as i0 from "@angular/core";
export class StimulsoftService {
stimulsoftConfig;
designerCssUrl;
viewerCssUrl;
designerJsUrl;
reportsJsUrl;
viewerJsUrl;
options;
fonts;
baseUrl;
localizationPath;
constructor(stimulsoftConfig) {
this.stimulsoftConfig = stimulsoftConfig;
const { designerCssUrl, viewerCssUrl, designerJsUrl, reportsJsUrl, viewerJsUrl, options, fonts, baseUrl, localizationPath } = stimulsoftConfig;
this.designerCssUrl = designerCssUrl;
this.viewerCssUrl = viewerCssUrl;
this.designerJsUrl = designerJsUrl || initialStimulsoftConfig.designerJsUrl;
this.reportsJsUrl = reportsJsUrl || initialStimulsoftConfig.reportsJsUrl;
this.viewerJsUrl = viewerJsUrl || initialStimulsoftConfig.viewerJsUrl;
this.localizationPath = localizationPath;
this.options = options;
this.fonts = fonts;
this.baseUrl = baseUrl;
}
get stimulsoftSourceStore() {
const { STYLE, SCRIPT } = SourceType;
const sources = [
[StimulsoftSourceName.DESIGNER_SCRIPT, this.designerJsUrl, SCRIPT],
[StimulsoftSourceName.REPORTER_SCRIPT, this.reportsJsUrl, SCRIPT],
[StimulsoftSourceName.VIEWER_SCRIPT, this.viewerJsUrl, SCRIPT],
];
if (this.designerCssUrl) {
sources.push([StimulsoftSourceName.DESIGNER_STYLE, this.designerCssUrl, STYLE]);
}
if (this.viewerCssUrl) {
sources.push([StimulsoftSourceName.VIEWER_STYLE, this.viewerCssUrl, STYLE]);
}
return sources
.map(([name, url, type]) => (Array.isArray(url) ? url : [url]).map(u => new Source(name, u, type)))
.reduce((resources, item) => [...resources, ...item], []);
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StimulsoftService, deps: [{ token: config }], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StimulsoftService });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StimulsoftService, decorators: [{
type: Injectable
}], ctorParameters: () => [{ type: undefined, decorators: [{
type: Inject,
args: [config]
}] }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RpbXVsc29mdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N0aW11bHNvZnQvc3RpbXVsc29mdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBVyxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxNQUFNLEVBQUUsdUJBQXVCLEVBQWtDLE1BQU0sVUFBVSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQUd0RSxNQUFNLE9BQU8saUJBQWlCO0lBV2dCO0lBVjVCLGNBQWMsQ0FBZTtJQUM3QixZQUFZLENBQWU7SUFDM0IsYUFBYSxDQUFjO0lBQzNCLFlBQVksQ0FBYztJQUMxQixXQUFXLENBQWM7SUFDekIsT0FBTyxDQUErQjtJQUN0QyxLQUFLLENBQTZCO0lBQ2xDLE9BQU8sQ0FBcUI7SUFDNUIsZ0JBQWdCLENBQXFCO0lBRXJELFlBQTRDLGdCQUFtQztRQUFuQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW1CO1FBQzdFLE1BQU0sRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLEdBQ3pILGdCQUFnQixDQUFDO1FBRW5CLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxJQUFJLHVCQUF1QixDQUFDLGFBQWEsQ0FBQztRQUM1RSxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksSUFBSSx1QkFBdUIsQ0FBQyxZQUFZLENBQUM7UUFDekUsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLElBQUksdUJBQXVCLENBQUMsV0FBVyxDQUFDO1FBQ3RFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBVyxxQkFBcUI7UUFDOUIsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxVQUFVLENBQUM7UUFDckMsTUFBTSxPQUFPLEdBQTJEO1lBQ3RFLENBQUMsb0JBQW9CLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDO1lBQ2xFLENBQUMsb0JBQW9CLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDO1lBQ2pFLENBQUMsb0JBQW9CLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDO1NBQy9ELENBQUM7UUFDRixJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN4QixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsb0JBQW9CLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNsRixDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLG9CQUFvQixDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDOUUsQ0FBQztRQUNELE9BQU8sT0FBTzthQUNYLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDbEcsTUFBTSxDQUFDLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLFNBQVMsRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLEVBQWUsQ0FBQyxDQUFDO0lBQzNFLENBQUM7d0dBMUNVLGlCQUFpQixrQkFXUixNQUFNOzRHQVhmLGlCQUFpQjs7NEZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVTs7MEJBWUksTUFBTTsyQkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJU291cmNlLCBTb3VyY2UsIFNvdXJjZVR5cGUgfSBmcm9tICduZ3gtc291cmNlJztcbmltcG9ydCB7IGNvbmZpZywgaW5pdGlhbFN0aW11bHNvZnRDb25maWcsIElTdGltdWxzb2Z0Q29uZmlnLCBSZXNvdXJjZVVybCB9IGZyb20gJy4vY29uZmlnJztcbmltcG9ydCB7IFN0aW11bHNvZnRTb3VyY2VOYW1lIH0gZnJvbSAnLi9zdGltdWxzb2Z0LXNvdXJjZS1uYW1lLm1vZGVsJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFN0aW11bHNvZnRTZXJ2aWNlIHtcbiAgcHVibGljIHJlYWRvbmx5IGRlc2lnbmVyQ3NzVXJsPzogUmVzb3VyY2VVcmw7XG4gIHB1YmxpYyByZWFkb25seSB2aWV3ZXJDc3NVcmw/OiBSZXNvdXJjZVVybDtcbiAgcHVibGljIHJlYWRvbmx5IGRlc2lnbmVySnNVcmw6IFJlc291cmNlVXJsO1xuICBwdWJsaWMgcmVhZG9ubHkgcmVwb3J0c0pzVXJsOiBSZXNvdXJjZVVybDtcbiAgcHVibGljIHJlYWRvbmx5IHZpZXdlckpzVXJsOiBSZXNvdXJjZVVybDtcbiAgcHVibGljIHJlYWRvbmx5IG9wdGlvbnM6IElTdGltdWxzb2Z0Q29uZmlnWydvcHRpb25zJ107XG4gIHB1YmxpYyByZWFkb25seSBmb250czogSVN0aW11bHNvZnRDb25maWdbJ2ZvbnRzJ107XG4gIHB1YmxpYyByZWFkb25seSBiYXNlVXJsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyByZWFkb25seSBsb2NhbGl6YXRpb25QYXRoOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChjb25maWcpIHB1YmxpYyByZWFkb25seSBzdGltdWxzb2Z0Q29uZmlnOiBJU3RpbXVsc29mdENvbmZpZykge1xuICAgIGNvbnN0IHsgZGVzaWduZXJDc3NVcmwsIHZpZXdlckNzc1VybCwgZGVzaWduZXJKc1VybCwgcmVwb3J0c0pzVXJsLCB2aWV3ZXJKc1VybCwgb3B0aW9ucywgZm9udHMsIGJhc2VVcmwsIGxvY2FsaXphdGlvblBhdGggfSA9XG4gICAgICBzdGltdWxzb2Z0Q29uZmlnO1xuXG4gICAgdGhpcy5kZXNpZ25lckNzc1VybCA9IGRlc2lnbmVyQ3NzVXJsO1xuICAgIHRoaXMudmlld2VyQ3NzVXJsID0gdmlld2VyQ3NzVXJsO1xuICAgIHRoaXMuZGVzaWduZXJKc1VybCA9IGRlc2lnbmVySnNVcmwgfHwgaW5pdGlhbFN0aW11bHNvZnRDb25maWcuZGVzaWduZXJKc1VybDtcbiAgICB0aGlzLnJlcG9ydHNKc1VybCA9IHJlcG9ydHNKc1VybCB8fCBpbml0aWFsU3RpbXVsc29mdENvbmZpZy5yZXBvcnRzSnNVcmw7XG4gICAgdGhpcy52aWV3ZXJKc1VybCA9IHZpZXdlckpzVXJsIHx8IGluaXRpYWxTdGltdWxzb2Z0Q29uZmlnLnZpZXdlckpzVXJsO1xuICAgIHRoaXMubG9jYWxpemF0aW9uUGF0aCA9IGxvY2FsaXphdGlvblBhdGg7XG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgICB0aGlzLmZvbnRzID0gZm9udHM7XG4gICAgdGhpcy5iYXNlVXJsID0gYmFzZVVybDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc3RpbXVsc29mdFNvdXJjZVN0b3JlKCk6IElTb3VyY2VbXSB7XG4gICAgY29uc3QgeyBTVFlMRSwgU0NSSVBUIH0gPSBTb3VyY2VUeXBlO1xuICAgIGNvbnN0IHNvdXJjZXM6IEFycmF5PFtTdGltdWxzb2Z0U291cmNlTmFtZSwgUmVzb3VyY2VVcmwsIFNvdXJjZVR5cGVdPiA9IFtcbiAgICAgIFtTdGltdWxzb2Z0U291cmNlTmFtZS5ERVNJR05FUl9TQ1JJUFQsIHRoaXMuZGVzaWduZXJKc1VybCwgU0NSSVBUXSxcbiAgICAgIFtTdGltdWxzb2Z0U291cmNlTmFtZS5SRVBPUlRFUl9TQ1JJUFQsIHRoaXMucmVwb3J0c0pzVXJsLCBTQ1JJUFRdLFxuICAgICAgW1N0aW11bHNvZnRTb3VyY2VOYW1lLlZJRVdFUl9TQ1JJUFQsIHRoaXMudmlld2VySnNVcmwsIFNDUklQVF0sXG4gICAgXTtcbiAgICBpZiAodGhpcy5kZXNpZ25lckNzc1VybCkge1xuICAgICAgc291cmNlcy5wdXNoKFtTdGltdWxzb2Z0U291cmNlTmFtZS5ERVNJR05FUl9TVFlMRSwgdGhpcy5kZXNpZ25lckNzc1VybCwgU1RZTEVdKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudmlld2VyQ3NzVXJsKSB7XG4gICAgICBzb3VyY2VzLnB1c2goW1N0aW11bHNvZnRTb3VyY2VOYW1lLlZJRVdFUl9TVFlMRSwgdGhpcy52aWV3ZXJDc3NVcmwsIFNUWUxFXSk7XG4gICAgfVxuICAgIHJldHVybiBzb3VyY2VzXG4gICAgICAubWFwKChbbmFtZSwgdXJsLCB0eXBlXSkgPT4gKEFycmF5LmlzQXJyYXkodXJsKSA/IHVybCA6IFt1cmxdKS5tYXAodSA9PiBuZXcgU291cmNlKG5hbWUsIHUsIHR5cGUpKSlcbiAgICAgIC5yZWR1Y2UoKHJlc291cmNlcywgaXRlbSkgPT4gWy4uLnJlc291cmNlcywgLi4uaXRlbV0sIFtdIGFzIElTb3VyY2VbXSk7XG4gIH1cbn1cbiJdfQ==