UNPKG

@mescius/activereportsjs-angular

Version:

ActiveReportsJS components for Angular

1 lines 39.6 kB
{"version":3,"file":"grapecity-activereports-angular.mjs","sources":["../../../projects/activereports/src/lib/export-injectiontoken.ts","../../../projects/activereports/src/lib/viewer/viewer.component.ts","../../../projects/activereports/src/lib/viewer/viewer.component.html","../../../projects/activereports/src/lib/designer/designer.component.ts","../../../projects/activereports/src/lib/designer/designer.component.html","../../../projects/activereports/src/lib/activereports.module.ts","../../../projects/activereports/src/lib/pdf-export.service.ts","../../../projects/activereports/src/lib/xlsx-export.service.ts","../../../projects/activereports/src/lib/html-export.service.ts","../../../projects/activereports/src/lib/tabular-data-export.service.ts","../../../projects/activereports/src/public-api.ts","../../../projects/activereports/src/grapecity-activereports-angular.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const AR_EXPORTS = new InjectionToken<Export[]>('AR_EXPORTS');\n\nexport abstract class Export {\n\treadonly key: string;\n\tabstract init(): Promise<void>;\n}\n","import {\n\tComponent,\n\tAfterViewInit,\n\tInput,\n\tViewEncapsulation,\n\tSimpleChanges,\n\tOnChanges,\n\tEventEmitter,\n\tOutput,\n\tOnDestroy,\n\tInject,\n\tOptional,\n\tElementRef,\n\tViewChild,\n} from '@angular/core';\n\nimport { ReportViewer as ViewerNs, Core } from '@mescius/activereportsjs';\n\nimport { Export, AR_EXPORTS } from '../export-injectiontoken';\n\nexport type IReport = Core.Rdl.Report | string;\n\n@Component({\n\tselector: 'gc-activereports-viewer',\n\ttemplateUrl: './viewer.component.html',\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class ViewerComponent implements AfterViewInit, OnChanges, OnDestroy {\n\t@ViewChild('viewerRoot', { static: false }) rootElement: ElementRef;\n\n\tprivate _viewer: ViewerNs.Viewer;\n\n\tprivate _initProps: Array<() => void> = [];\n\n\tprivate get supportedExportKeys() {\n\t\treturn (this.supportedExports || []).map((e) => e.key);\n\t}\n\n\tconstructor(@Inject(AR_EXPORTS) @Optional() private readonly supportedExports?: Export[]) {}\n\n\t@Input() width = '100%';\n\t@Input() height = '100%';\n\n\t@Input() language?: string;\n\n\t/** UI theme */\n\t@Input() theme?: ViewerNs.UITheme;\n\n\t/** Initial UI themes settings */\n\t@Input() themeConfig?: ViewerNs.UIThemeConfig;\n\n\t/** Layout of panels bar. Cannot be changed on the fly. */\n\t@Input() panelsLayout?: ViewerNs.PanelsLocation;\n\n\t/** Parameters panel location. */\n\t@Input() parameterPanelLocation?: ViewerNs.ParameterPanelLocation;\n\t/** Parameters panel behaviour. */\n\t@Input() showParametersOnOpen?: ViewerNs.ShowParametersOnOpen;\n\t@Input() memoizeData?: boolean;\n\t@Input() toolbarLayout?: ViewerNs.ToolbarLayout;\n\t@Input() exportsSettings?: Record<string, ViewerNs.ExportSettings>;\n\n\t@Input() availableExports?: string[] = [];\n\t@Input() mouseMode?: ViewerNs.ViewerMouseMode;\n\t@Input() renderMode?: ViewerNs.ViewerRenderMode;\n\t@Input() viewMode?: ViewerNs.ViewerViewMode | ViewerNs.ViewMode;\n\t@Input() zoom?: ViewerNs.ViewerZoomMode;\n\t@Input() fullscreen?: boolean;\n\t@Input() toolbarVisible?: boolean;\n\t@Input() sidebarVisible?: boolean;\n\t@Input() errorHandler?: () => void;\n\n\t@Output() init = new EventEmitter<ViewerComponent>();\n\n\t@Output() reportLoaded = new EventEmitter<ViewerNs.ReportLoadEventArgs>();\n\t@Output() documentLoaded = new EventEmitter<ViewerNs.DocumentLoadEventArgs>();\n\n\tprivate _propSetters: Record<string, (value: any) => void> = {\n\t\tsidebarVisible: (value) => {\n\t\t\tthis._viewer.toggleSidebar(value);\n\t\t},\n\t\ttoolbarVisible: (value) => {\n\t\t\tthis._viewer.toggleToolbar(value);\n\t\t},\n\t\tfullscreen: (value) => {\n\t\t\tthis._viewer.toggleFullScreen(value);\n\t\t},\n\t\tavailableExports: (value) => {\n\t\t\tif (value && value.length > 0) {\n\t\t\t\tconst supportedValues = value.filter((v: string) => this.supportedExportKeys.indexOf(v) >= 0);\n\t\t\t\t// set ['disabled'] to hide export panel if no exports supported\n\t\t\t\tthis._viewer.availableExports = supportedValues.length ? supportedValues : ['disabled'];\n\t\t\t} else {\n\t\t\t\t// set explicit list to avoid side effects of global exports initialization\n\t\t\t\tthis._viewer.availableExports = this.supportedExportKeys.length ? this.supportedExportKeys : ['disabled'];\n\t\t\t}\n\t\t},\n\t\tmouseMode: (value) => {\n\t\t\tthis._viewer.mouseMode = value;\n\t\t},\n\t\ttheme: (value) => {\n\t\t\tthis._viewer.theme = value;\n\t\t},\n\t\trenderMode: (value) => {\n\t\t\tthis._viewer.renderMode = value;\n\t\t},\n\t\tviewMode: (value) => {\n\t\t\tthis._viewer.viewMode = value;\n\t\t},\n\t\tzoom: (value) => {\n\t\t\tthis._viewer.zoom = value;\n\t\t},\n\t\terrorHandler: (value) => {\n\t\t\tthis._viewer.errorHandler = value;\n\t\t},\n\t\tshowParametersOnOpen: (value) => {\n\t\t\tthis._viewer.showParametersOnOpen = value;\n\t\t},\n\t};\n\n\tprivate _disposables: Array<() => void> = [];\n\n\tngOnChanges(changes: SimpleChanges) {\n\t\tfor (const prop of Object.keys(changes)) {\n\t\t\tconst setter = this._propSetters[prop];\n\t\t\tif (!setter) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tconst value = changes[prop].currentValue;\n\t\t\tif (this._viewer) {\n\t\t\t\tsetter(value);\n\t\t\t} else {\n\t\t\t\tthis._initProps.push(() => setter(value));\n\t\t\t}\n\t\t}\n\t}\n\n\tngAfterViewInit() {\n\t\tthis.initViewer().then(() => this.init.emit(this));\n\t}\n\n\tngOnDestroy() {\n\t\twhile (this._disposables.length) {\n\t\t\tthis._disposables.shift()!();\n\t\t}\n\t\tthis._viewer.dispose();\n\t}\n\n\tget ref(): ViewerNs.Viewer {\n\t\treturn this._viewer;\n\t}\n\n\tprivate async initViewer() {\n\t\tfor (const supportedExport of this.supportedExports || []) {\n\t\t\tawait supportedExport.init();\n\t\t}\n\n\t\tthis._viewer = new ViewerNs.Viewer(this.rootElement.nativeElement, {\n\t\t\tlanguage: this.language,\n\t\t\tthemeConfig: this.themeConfig,\n\t\t\tPanelsLayout: this.panelsLayout,\n\t\t\tParameterPanelLocation: this.parameterPanelLocation,\n\t\t\tmemoizeData: this.memoizeData,\n\t\t\tToolbarLayout: this.toolbarLayout,\n\t\t\tExportsSettings: this.exportsSettings,\n\t\t});\n\n\t\tthis._disposables.push(\n\t\t\tthis._viewer.reportLoaded.register((args) => this.reportLoaded.emit(args)),\n\t\t\tthis._viewer.documentLoaded.register((args) => this.documentLoaded.emit(args)),\n\t\t);\n\n\t\tthis._propSetters.availableExports(this.availableExports);\n\n\t\twhile (this._initProps.length) {\n\t\t\tthis._initProps.shift()!();\n\t\t}\n\t}\n\n\t/**\n\t * Opens report from file or as definition (json string)).\n\t *\n\t * @param report The report template. Can be report URI, or report definition, or instance of PageReport class.\n\t * @param settings Additional settings for report (name, parameters).\n\t */\n\topen(report: IReport, settings?: Partial<ViewerNs.ReportSettings>): Promise<ViewerNs.LoadResult> {\n\t\treturn this._viewer.open(report, settings);\n\t}\n\n\t/**\n\t * Exports currently displayed report to specified output format. Returns object which contains\n\t * result data as blob object | string and download function. So you could either use this blob object or download file immediately.\n\t * Please note that you can specify settings in PDF export as plain list\n\t * (like **{title: 'Title', author: 'Author Name', ownerPassword: '1'}** etc...\n\t *\n\t * ```javascript\n\t * var options = {filename:\"Invoice List\"};\n\t * var cancelCallback = function(){\n\t * return false; // continue export. Return true to cancel export process\n\t * }\n\t * viewer.export('pdf', options, {cancel: cancelCallback }).then(result => doSmthWithBlob(result.data));\n\t * //or you can download file\n\t * viewer.export('pdf', options, {cancel: cancelCallback }).then(result => result.download('Invoice List'));\n\t * ```\n\t *\n\t * @param format Export format identifier. One of 'pdf', 'xlsx', 'html', 'tabular-data'.\n\t * @param settings Format specific export settings.\n\t * @param params Additional export customization.\n\t */\n\texport(format: string, settings: Record<string, string | boolean | number>, params?: { cancel?: () => boolean }): Promise<ViewerNs.ExportResult> {\n\t\treturn this._viewer.export(format, settings, params);\n\t}\n\n\t/**\n\t * Resets current viewer document\n\t */\n\tresetDocument(): Promise<void> {\n\t\treturn this._viewer.resetDocument();\n\t}\n\n\t/**\n\t * Prints currently displayed report.\n\t */\n\tprint(): void {\n\t\treturn this._viewer.print();\n\t}\n\n\t/** Gets current page number (1-based). Returns 0 if no document loaded. */\n\tget currentPage(): number {\n\t\treturn this._viewer.currentPage;\n\t}\n\t/** Gets the total number of pages available in report. */\n\tget pageCount(): number {\n\t\treturn this._viewer.pageCount;\n\t}\n\t/** Provides access to the \"history\" API. */\n\tget history(): ViewerNs.HistoryApi {\n\t\treturn this._viewer.history;\n\t}\n\t/** Gets the toolbar API */\n\tget toolbar(): ViewerNs.Toolbar {\n\t\treturn this._viewer.toolbar;\n\t}\n\n\t/** Navigates to the first page. */\n\tgoToFirstPage(): void {\n\t\treturn this._viewer.goToFirstPage();\n\t}\n\n\t/** Navigates to the previous page. */\n\tgoToPrevPage(): void {\n\t\treturn this._viewer.goToPrevPage();\n\t}\n\t/** Navigates to the next page. */\n\tgoToNextPage(): void {\n\t\treturn this._viewer.goToNextPage();\n\t}\n\t/** Navigates to the last page. */\n\tgoToLastPage(): void {\n\t\treturn this._viewer.goToLastPage();\n\t}\n\t/** Navigates to the specified page (starting from 1). */\n\tgoToPage(pageNumber: number): void {\n\t\treturn this._viewer.goToPage(pageNumber);\n\t}\n\t/** Performs backToParent action which will return user to parent report. */\n\tbackToParent(): void {\n\t\treturn this._viewer.backToParent();\n\t}\n\t/** Performs refresh operation in report (re-render report). */\n\trefresh(): void {\n\t\treturn this._viewer.refresh();\n\t}\n\n\t/** Gets **true** if backToParent command is applicable to current document. */\n\tget canBackToParent(): boolean {\n\t\treturn this._viewer.canBackToParent();\n\t}\n\n\t/**\n\t * Performs search operation in currently rendered report. Allows you to create your own custom search pane.\n\t */\n\tsearch(\n\t\toptions: ViewerNs.SearchOptions,\n\t\tresultFn: (result: ViewerNs.SearchResult) => void,\n\t\tprogressFn?: (progress: { pageIndex: number; pageCount: number | null }) => void,\n\t\tcancel?: ViewerNs.CancellationToken,\n\t): Promise<ViewerNs.SearchStatus> {\n\t\treturn this._viewer.search(options, resultFn, progressFn, cancel);\n\t}\n\n\t/**\n\t * Highlights the search result returned by a search method.\n\t */\n\thighlight(result: ViewerNs.SearchResult | null): Promise<void> {\n\t\treturn this._viewer.highlight(result);\n\t}\n}\n","<div #viewerRoot [style.width]=\"width\" [style.height]=\"height\"></div>\n","import { Component, AfterViewInit, ViewChild, ElementRef, Input, Output, EventEmitter, OnDestroy } from '@angular/core';\n\nimport { ReportDesigner as DesignerNS } from '@mescius/activereportsjs';\nimport { DocumentChangedEventArgs } from '@mescius/activereportsjs/reportdesigner';\n\nexport { ColorThemes } from '@mescius/activereportsjs/reportdesigner';\nexport type { ColorTheme } from '@mescius/activereportsjs/reportdesigner';\n\nfunction isReportDef(report?: DesignerNS.Report): report is DesignerNS.ReportDefinition {\n\treturn !!(report && (report as DesignerNS.ReportDefinition).definition);\n}\n\nfunction hasReportChanged(curr: DesignerNS.Report, prev: DesignerNS.Report) {\n\tconst definitionChanged = (isReportDef(curr) && curr.definition) !== (isReportDef(curr) && curr.definition);\n\treturn definitionChanged || (curr && curr.id) !== (prev && prev.id) || (curr && curr.displayName) !== (prev && prev.displayName);\n}\n\n@Component({\n\tselector: 'gc-activereports-designer',\n\ttemplateUrl: './designer.component.html',\n\tstyleUrls: ['./designer.component.css'],\n})\nexport class DesignerComponent implements AfterViewInit, OnDestroy {\n\t@ViewChild('designerRoot', { static: false }) rootElement: ElementRef;\n\n\tprivate _designer?: DesignerNS.Designer;\n\n\tconstructor() {}\n\n\t/** Sets componets width */\n\t@Input() width = '100%';\n\t/** Sets componets height */\n\t@Input() height = '100%';\n\n\t/**\n\t * Called before designer initialization.\n\t * @returns DesignerConfig to initialize designer instance.\n\t */\n\t@Input() onInit?: () => DesignerNS.DesignerConfig;\n\n\tprivate _dataSources?: DesignerNS.DataSourceTemplate[];\n\t/**\n\t * Sets DataSource templates\n\t * @param value List of DataSource templates\n\t */\n\t@Input() set dataSources(value) {\n\t\tthis._dataSources = value;\n\t\tif (this._designer) this._designer.setDataSourceTemplates(this._dataSources || []);\n\t}\n\t/* Gets DataSource templates */\n\tget dataSources() {\n\t\treturn this._dataSources;\n\t}\n\n\t/** Sets external report list. */\n\t@Input() reportList?: DesignerNS.ReportResourceInfo[];\n\t/** Sets external master report list. */\n\t@Input() masterReportList?: DesignerNS.ReportResourceInfo[];\n\t/** Sets external image list. */\n\t@Input() imageList?: DesignerNS.ImageResourceInfo[];\n\t/** Sets theme list. */\n\t@Input() themeList?: DesignerNS.ThemeResourceInfo[];\n\t/** Sets the list of available external stylesheets. */\n\t@Input() stylesheetList?: DesignerNS.StylesheetResourceInfo[];\n\n\tprivate _actionHandlers: DesignerNS.ActionHandlers = {};\n\n\t/**\n\t * Sets handler to be called on open report.\n\t * Handler return Promise with report info or 'undefined' if operation was cancelled.\n\t */\n\t@Input() set onCreate(value: DesignerNS.ActionHandlers['onCreate']) {\n\t\tthis._actionHandlers.onCreate = value;\n\t\tif (this._designer) this._designer.setActionHandlers(this._actionHandlers);\n\t}\n\tget onCreate() {\n\t\treturn this._actionHandlers.onCreate;\n\t}\n\n\t/**\n\t * Sets handler to be called on opening report.\n\t * Handler returns Promise with report info or 'undefined' if operation was cancelled.\n\t */\n\t@Input() set onOpen(value: DesignerNS.ActionHandlers['onOpen']) {\n\t\tthis._actionHandlers.onOpen = value;\n\t\tif (this._designer) this._designer.setActionHandlers(this._actionHandlers);\n\t}\n\tget onOpen() {\n\t\treturn this._actionHandlers.onOpen;\n\t}\n\n\t/**\n\t * Sets handler to be called on request to render current report.\n\t */\n\t@Input() set onRender(value: DesignerNS.ActionHandlers['onRender']) {\n\t\tthis._actionHandlers.onRender = value;\n\t\tif (this._designer) this._designer.setActionHandlers(this._actionHandlers);\n\t}\n\tget onRender() {\n\t\treturn this._actionHandlers.onRender;\n\t}\n\n\t/**\n\t * Sets handler to be called on saving report.\n\t * Handler returns Promise with new report info if report was saved or 'undefined' if operation was cancelled.\n\t */\n\t@Input() set onSave(value: DesignerNS.ActionHandlers['onSave']) {\n\t\tthis._actionHandlers.onSave = value;\n\t\tif (this._designer) this._designer.setActionHandlers(this._actionHandlers);\n\t}\n\tget onSave() {\n\t\treturn this._actionHandlers.onSave;\n\t}\n\n\t/**\n\t * Sets handler to be called on saving report as new.\n\t * Handler returns Promise with new report info if report was saved or 'undefined' if operation was cancelled.\n\t */\n\t@Input() set onSaveAs(value: DesignerNS.ActionHandlers['onSaveAs']) {\n\t\tthis._actionHandlers.onSaveAs = value;\n\t\tif (this._designer) this._designer.setActionHandlers(this._actionHandlers);\n\t}\n\tget onSaveAs() {\n\t\treturn this._actionHandlers.onSaveAs;\n\t}\n\n\t/**\n\t * Sets handler to be called on open custom file menu.\n\t */\n\t@Input() set onOpenFileMenu(value: DesignerNS.ActionHandlers['onOpenFileMenu']) {\n\t\tthis._actionHandlers.onOpenFileMenu = value;\n\t\tif (this._designer) this._designer.setActionHandlers(this._actionHandlers);\n\t}\n\tget onOpenFileMenu() {\n\t\treturn this._actionHandlers.onOpenFileMenu;\n\t}\n\n\tprivate _report: DesignerNS.Report;\n\n\tprivate _disposables: Array<() => void> = [];\n\n\t/**\n\t * Watch report property\n\t */\n\t@Input() set report(value: DesignerNS.Report) {\n\t\tif (hasReportChanged(value, this._report)) {\n\t\t\tthis._report = value;\n\t\t\tif (value) this.setReport(value, 'override');\n\t\t\telse {\n\t\t\t\tif (!this._designer) return;\n\t\t\t\tthis._designer.createReport({ reportType: 'CPL' }, 'override');\n\t\t\t}\n\t\t}\n\t}\n\n\t/** documentChanged event. */\n\t@Output() documentChanged = new EventEmitter<DocumentChangedEventArgs>();\n\n\tngAfterViewInit() {\n\t\tconst config = this.onInit?.();\n\t\tthis._designer = new DesignerNS.Designer(this.rootElement.nativeElement, config);\n\t\tthis._designer.setResourceProvider({\n\t\t\tgetImagesList: async () => this.imageList || [],\n\t\t\tgetReportsList: async () => this.reportList || [],\n\t\t\tgetMasterReportList: async () => this.masterReportList || [],\n\t\t\tgetThemesList: async () => this.themeList || [],\n\t\t\tgetStylesheetList: async () => this.stylesheetList || [],\n\t\t});\n\t\tthis._designer.setActionHandlers(this._actionHandlers);\n\t\tif (this.dataSources) this._designer.setDataSourceTemplates(this._dataSources || []);\n\t\tif (this._report) this.setReport(this._report, 'override');\n\n\t\tthis._disposables.push(this._designer.documentChanged.register((args) => this.documentChanged.emit(args)));\n\t}\n\n\t/**\n\t * Sets report.\n\t * @param report Report info to load.\n\t * @param whenDirty Action to perform in case of 'dirty' report.\n\t * @param isDirtyInitial Initial value for 'dirty' state after load.\n\t */\n\tsetReport(report: DesignerNS.Report, whenDirty?: DesignerNS.WhenDirty, isDirtyInitial?: boolean): Promise<void> {\n\t\tif (!this._designer) return Promise.resolve();\n\n\t\treturn this._designer.setReport(report, whenDirty, isDirtyInitial);\n\t}\n\n\t/** Gets current report. */\n\tgetReport(): Promise<DesignerNS.ReportInfo> {\n\t\tif (!this._designer) return Promise.resolve() as any;\n\n\t\treturn this._designer.getReport();\n\t}\n\n\t/**\n\t * Creates report.\n\t * @param reportInfo Report info to load.\n\t * @param whenDirty Action to perform in case of 'dirty' report.\n\t */\n\tcreateReport(reportInfo: DesignerNS.NewReportInfo, whenDirty?: DesignerNS.WhenDirty): Promise<void> {\n\t\tif (!this._designer) return Promise.resolve();\n\t\treturn this._designer.createReport(reportInfo, whenDirty);\n\t}\n\n\t/**\n\t * Process command.\n\t * @param cmd Command name.\n\t */\n\tprocessCommand(cmd: DesignerNS.DesignerCommand) {\n\t\tif (!this._designer) return Promise.resolve();\n\n\t\treturn this._designer.processCommand(cmd);\n\t}\n\n\t/**\n\t * Returns focus to Designer.\n\t */\n\tfocus() {\n\t\tif (this._designer == null) throw new Error('Designer is not initialized yet');\n\t\tthis._designer.focus();\n\t}\n\n\t/**\n\t * Gets API to manipulate designer.\n\t */\n\tgetEditorAPI(): Promise<DesignerNS.EditorAPI> {\n\t\tif (this._designer == null) throw new Error('Designer is not initialized yet');\n\t\treturn this._designer.getEditorAPI();\n\t}\n\n\t/*\n\t * Access to the menu and sidebar panels\n\t */\n\tgetPanelsAPI(): Promise<DesignerNS.PanelsAPI> {\n\t\tif (this._designer == null) throw new Error('Designer is not initialized yet');\n\t\treturn this._designer.getPanelsAPI();\n\t}\n\n\t/*\n\t * Manipulate notifications panel.\n\t */\n\tgetNotificationsAPI(): Promise<DesignerNS.NotificationsAPI> {\n\t\tif (this._designer == null) throw new Error('Designer is not initialized yet');\n\t\treturn this._designer.getNotificationsAPI();\n\t}\n\n\tngOnDestroy() {\n\t\twhile (this._disposables.length) {\n\t\t\tthis._disposables.shift()!();\n\t\t}\n\t\t// this._designer.dispose();\n\t}\n}\n","<div #designerRoot [style.width]=\"width\" [style.height]=\"height\"></div>\n","import { NgModule } from '@angular/core';\nimport { ViewerComponent } from './viewer/viewer.component';\nimport { DesignerComponent } from './designer/designer.component';\n\n@NgModule({\n\tdeclarations: [ViewerComponent, DesignerComponent],\n\timports: [],\n\texports: [ViewerComponent, DesignerComponent],\n})\nexport class ActiveReportsModule {}\n","import { PdfExport } from '@mescius/activereportsjs';\n\nimport { Injectable } from '@angular/core';\nimport { Export } from './export-injectiontoken';\n\nimport { ViewerComponent } from './viewer/viewer.component';\n\n@Injectable({\n\tprovidedIn: ViewerComponent,\n})\nexport class PdfExportService extends Export {\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\toverride readonly key = 'pdf';\n\tasync init() {\n\t\t// 'exportDocument' must be used to avoid tree-shaking\n\t\tif (typeof PdfExport.exportDocument !== 'function') {\n\t\t\tconsole.error(`Invalid \"${this.key}\" export module.`);\n\t\t}\n\t}\n}\n","import { XlsxExport } from '@mescius/activereportsjs';\n\nimport { Injectable } from '@angular/core';\nimport { Export } from './export-injectiontoken';\nimport { ViewerComponent } from './viewer/viewer.component';\n\n@Injectable({\n\tprovidedIn: ViewerComponent,\n})\nexport class XlsxExportService extends Export {\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\toverride readonly key = 'xlsx';\n\tasync init() {\n\t\t// 'exportDocument' must be used to avoid tree-shaking\n\t\tif (typeof XlsxExport.exportDocument !== 'function') {\n\t\t\tconsole.error(`Invalid \"${this.key}\" export module.`);\n\t\t}\n\t}\n}\n","import { HtmlExport } from '@mescius/activereportsjs';\n\nimport { Injectable } from '@angular/core';\n\nimport { Export } from './export-injectiontoken';\nimport { ViewerComponent } from './viewer/viewer.component';\n\n@Injectable({\n\tprovidedIn: ViewerComponent,\n})\nexport class HtmlExportService extends Export {\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\toverride readonly key = 'html';\n\tasync init() {\n\t\t// 'exportDocument' must be used to avoid tree-shaking\n\t\tif (typeof HtmlExport.exportDocument !== 'function') {\n\t\t\tconsole.error(`Invalid \"${this.key}\" export module.`);\n\t\t}\n\t}\n}\n","import { TabularDataExport } from '@mescius/activereportsjs';\n\nimport { Injectable } from '@angular/core';\nimport { Export } from './export-injectiontoken';\nimport { ViewerComponent } from './viewer/viewer.component';\n\n@Injectable({\n\tprovidedIn: ViewerComponent,\n})\nexport class TabularDataExportService extends Export {\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\toverride readonly key = 'tabular-data';\n\tasync init() {\n\t\t// 'exportDocument' must be used to avoid tree-shaking\n\t\tif (typeof TabularDataExport.exportDocument !== 'function') {\n\t\t\tconsole.error(`Invalid \"${this.key}\" export module.`);\n\t\t}\n\t}\n}\n","/*\n * Public API Surface of activereports\n */\n\nexport * from './lib/viewer/viewer.component';\nexport * from './lib/designer/designer.component';\nexport * from './lib/activereports.module';\nexport * from './lib/pdf-export.service';\nexport * from './lib/xlsx-export.service';\nexport * from './lib/html-export.service';\nexport * from './lib/tabular-data-export.service';\nexport * from './lib/export-injectiontoken';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ViewerNs","DesignerNS"],"mappings":"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"}