@grapecity/spread-sheets-angular
Version:
SpreadJS angular support
1 lines • 46.9 kB
Source Map (JSON)
{"version":3,"file":"grapecity-spread-sheets-angular.mjs","sources":["../../src/column.component.ts","../../src/worksheet.component.ts","../../src/spreadSheets.component.ts","../../src/spreadSheets.module.ts","../../grapecity-spread-sheets-angular.ts"],"sourcesContent":["/*import_begin*/\r\nimport { Component, Input, OnChanges, SimpleChanges } from '@angular/core';\r\nimport * as GC from '@grapecity/spread-sheets';\r\n/*import_end*/\r\n\r\n/*code_begin*/\r\n@Component({\r\n selector: 'gc-column',\r\n template: `\r\n <ng-content></ng-content>\r\n `,\r\n})\r\nexport class ColumnComponent implements OnChanges {\r\n private changes: any = {};\r\n private sheet?: GC.Spread.Sheets.Worksheet;\r\n private index?: number;\r\n\r\n // indicate all inputs\r\n @Input() public width?: number | string;\r\n @Input() public dataField?: string;\r\n @Input() public headerText?: string;\r\n @Input() public visible?: boolean;\r\n @Input() public resizable?: boolean;\r\n @Input() public autoFit?: boolean;\r\n @Input() public style?: GC.Spread.Sheets.Style;\r\n @Input() public cellType?: GC.Spread.Sheets.CellTypes.Base;\r\n @Input() public headerStyle?: GC.Spread.Sheets.Style;\r\n @Input() public formatter: any;\r\n\r\n public onAttached(sheet: GC.Spread.Sheets.Worksheet, index: number): void {\r\n this.sheet = sheet;\r\n this.index = index;\r\n this.onColumnChanged();\r\n }\r\n\r\n private onColumnChanged() {\r\n if (this.sheet) {\r\n const sheet = this.sheet;\r\n sheet.suspendPaint();\r\n sheet.suspendEvent();\r\n const changes = this.changes;\r\n for (const changeName in changes) {\r\n let newValue = changes[changeName].currentValue;\r\n if (newValue === null || newValue === void 0) {\r\n continue;\r\n }\r\n switch (changeName) {\r\n case 'width':\r\n newValue = parseInt(newValue, 10);\r\n sheet.setColumnWidth(this.index as number, newValue);\r\n break;\r\n case 'visible':\r\n sheet.setColumnVisible(this.index as number, newValue);\r\n break;\r\n case 'resizable':\r\n sheet.setColumnResizable(this.index as number, newValue);\r\n break;\r\n case 'autoFit':\r\n if (newValue) {\r\n sheet.autoFitColumn(this.index as number);\r\n }\r\n break;\r\n case 'style':\r\n sheet.setStyle(-1, this.index as number, newValue);\r\n break;\r\n case 'headerStyle':\r\n sheet.setStyle(-1, this.index as number, newValue, GC['default'].Spread.Sheets.SheetArea.colHeader);\r\n break;\r\n case 'cellType':\r\n sheet.setCellType(-1, this.index as number, newValue);\r\n break;\r\n case 'formatter':\r\n sheet.setFormatter(-1, this.index as number, newValue, GC['default'].Spread.Sheets.SheetArea.viewport);\r\n break;\r\n }\r\n }\r\n sheet.resumeEvent();\r\n sheet.resumePaint();\r\n }\r\n }\r\n\r\n public ngOnChanges(changes: SimpleChanges) {\r\n this.changes = {};\r\n const changesCache = this.changes;\r\n for (const changeName in changes) {\r\n changesCache[changeName] = changes[changeName];\r\n }\r\n this.onColumnChanged();\r\n }\r\n}\r\n/*code_end*/\r\n","/*import_begin*/\r\nimport {\r\n AfterViewInit,\r\n Component,\r\n ContentChildren,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n QueryList, SimpleChanges,\r\n} from '@angular/core';\r\n/*import_end*/\r\nimport { ColumnComponent } from './column.component';\r\nimport * as GC from '@grapecity/spread-sheets';\r\n/*code_begin*/\r\n@Component({\r\n selector: 'gc-worksheet',\r\n template: `\r\n <ng-content></ng-content>\r\n `,\r\n})\r\nexport class WorksheetComponent implements OnChanges, AfterViewInit {\r\n private sheet: GC.Spread.Sheets.Worksheet;\r\n @ContentChildren(ColumnComponent)\r\n public columns?: QueryList<ColumnComponent>;\r\n\r\n // indicate all inputs\r\n @Input() public rowCount?: number;\r\n @Input() public colCount?: number;\r\n @Input() public dataSource: any;\r\n @Input() public name?: string;\r\n @Input() public frozenColumnCount?: number;\r\n @Input() public frozenRowCount?: number;\r\n @Input() public frozenTrailingRowCount?: number;\r\n @Input() public frozenTrailingColumnCount?: number;\r\n @Input() public allowCellOverflow?: boolean;\r\n @Input() public frozenlineColor?: string;\r\n @Input() public sheetTabColor?: string;\r\n @Input() public selectionPolicy?: number;\r\n @Input() public selectionUnit?: number;\r\n @Input() public zoom?: number;\r\n @Input() public currentTheme?: string;\r\n @Input() public clipBoardOptions?: number;\r\n @Input() public rowHeaderVisible?: boolean;\r\n @Input() public colHeaderVisible?: boolean;\r\n @Input() public rowHeaderAutoText?: number;\r\n @Input() public colHeaderAutoText?: number;\r\n @Input() public rowHeaderAutoTextIndex?: number;\r\n @Input() public colHeaderAutoTextIndex?: number;\r\n @Input() public isProtected?: boolean;\r\n @Input() public showRowOutline?: boolean;\r\n @Input() public showColumnOutline?: boolean;\r\n @Input() public selectionBackColor?: string;\r\n @Input() public selectionBorderColor?: string;\r\n @Input() public defaultStyle?: GC.Spread.Sheets.Style;\r\n @Input() public rowOutlineInfo?: any[];\r\n @Input() public columnOutlineInfo?: any[];\r\n @Input() public autoGenerateColumns?: boolean;\r\n\r\n constructor() {\r\n this.sheet = new GC[\"default\"].Spread.Sheets.Worksheet('');\r\n }\r\n\r\n public onAttached(): void {\r\n const sheet = this.sheet;\r\n const columns = (this.columns as QueryList<ColumnComponent>);\r\n sheet.suspendPaint();\r\n sheet.suspendEvent();\r\n if (this.dataSource) {\r\n sheet.setDataSource(this.dataSource);\r\n columns.forEach((columnComponent: ColumnComponent, index: number) => {\r\n if (columnComponent.dataField) {\r\n sheet.bindColumn(index, {\r\n name: columnComponent.dataField,\r\n displayName: columnComponent.headerText,\r\n });\r\n }\r\n });\r\n }\r\n if (columns.length > 0) {\r\n sheet.setColumnCount(columns.length);\r\n columns.forEach((columnComponent: ColumnComponent, index: number) => {\r\n columnComponent.onAttached(this.sheet, index);\r\n });\r\n }\r\n sheet.resumeEvent();\r\n sheet.resumePaint();\r\n }\r\n public getSheet() {\r\n return this.sheet;\r\n }\r\n\r\n public ngOnChanges(changes: SimpleChanges) {\r\n const sheet = this.sheet;\r\n sheet.suspendPaint();\r\n sheet.suspendEvent();\r\n for (const changeName in changes) {\r\n const newValue = changes[changeName].currentValue;\r\n if (newValue === null || newValue === void 0) {\r\n continue;\r\n }\r\n switch (changeName) {\r\n case 'rowCount':\r\n sheet.setRowCount(newValue);\r\n break;\r\n case 'colCount':\r\n sheet.setColumnCount(newValue);\r\n break;\r\n case 'name':\r\n sheet.name(newValue);\r\n break;\r\n case 'frozenColumnCount':\r\n sheet.frozenColumnCount(newValue);\r\n break;\r\n case 'frozenRowCount':\r\n sheet.frozenRowCount(newValue);\r\n break;\r\n case 'frozenTrailingRowCount':\r\n sheet.frozenTrailingRowCount(newValue);\r\n break;\r\n case 'frozenTrailingColumnCount':\r\n sheet.frozenTrailingColumnCount(newValue);\r\n break;\r\n case 'selectionPolicy':\r\n sheet.selectionPolicy(newValue);\r\n break;\r\n case 'selectionUnit':\r\n sheet.selectionUnit(newValue);\r\n break;\r\n case 'zoom':\r\n sheet.zoom(newValue);\r\n break;\r\n case 'currentTheme':\r\n sheet.currentTheme(newValue);\r\n break;\r\n case 'defaultStyle':\r\n sheet.setDefaultStyle(newValue);\r\n break;\r\n case 'rowOutlineInfo':\r\n newValue.forEach((item: any) => {\r\n sheet.rowOutlines.group(item.index, item.count);\r\n });\r\n sheet.repaint();\r\n break;\r\n case 'columnOutlineInfo':\r\n newValue.forEach((item: any) => {\r\n sheet.columnOutlines.group(item.index, item.count);\r\n });\r\n sheet.repaint();\r\n break;\r\n case 'showRowOutline':\r\n sheet.showRowOutline(newValue);\r\n break;\r\n case 'showColumnOutline':\r\n sheet.showColumnOutline(newValue);\r\n break;\r\n case 'dataSource':\r\n sheet.setDataSource(newValue);\r\n break;\r\n case 'autoGenerateColumns':\r\n sheet[changeName] = newValue;\r\n default:\r\n (sheet.options as any)[changeName] = newValue;\r\n }\r\n }\r\n sheet.resumeEvent();\r\n sheet.resumePaint();\r\n }\r\n\r\n public ngAfterViewInit() {\r\n (this.columns as QueryList<ColumnComponent>).changes.subscribe(() => { this.onAttached(); });\r\n }\r\n\r\n public ngOnDestroy() {\r\n const sheet = this.sheet;\r\n const spread = sheet ? sheet.getParent() : null;\r\n if (spread) {\r\n const sheetIndex = spread.getSheetIndex(sheet.name());\r\n if (sheetIndex !== void 0) {\r\n spread.removeSheet(sheetIndex);\r\n }\r\n }\r\n }\r\n}\r\n/*code_end*/\r\n","/*import_begin*/\r\nimport {\r\n AfterViewInit,\r\n Component,\r\n ContentChildren,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n Output,\r\n QueryList, SimpleChanges,\r\n} from '@angular/core';\r\n/*import_end*/\r\n\r\nimport { WorksheetComponent } from './worksheet.component';\r\nimport * as GC from '@grapecity/spread-sheets';\r\n/*code_begin*/\r\n@Component({\r\n selector: 'gc-spread-sheets',\r\n template: `\r\n <div [ngStyle]=\"style\" [ngClass]=\"hostClass\">\r\n <ng-content></ng-content>\r\n </div>\r\n `,\r\n})\r\nexport class SpreadSheetsComponent implements OnChanges, AfterViewInit, OnDestroy {\r\n private spread?: GC.Spread.Sheets.Workbook;\r\n private spreadOptions?: any[];\r\n\r\n public style = {\r\n width: '800px',\r\n height: '600px',\r\n };\r\n\r\n // indicate all options\r\n @Input() public allowUserResize?: boolean;\r\n @Input() public allowUserZoom?: boolean;\r\n @Input() public allowUserEditFormula?: boolean;\r\n @Input() public allowUserDragFill?: boolean;\r\n @Input() public allowUserDragDrop?: boolean;\r\n @Input() public allowUserDragMerge?: boolean;\r\n @Input() public allowUndo?: boolean;\r\n @Input() public allowSheetReorder?: boolean;\r\n @Input() public allowContextMenu?: boolean;\r\n @Input() public allowUserDeselect?: boolean;\r\n @Input() public allowCopyPasteExcelStyle?: boolean;\r\n @Input() public allowExtendPasteRange?: boolean;\r\n @Input() public cutCopyIndicatorVisible?: boolean;\r\n @Input() public cutCopyIndicatorBorderColor?: string;\r\n @Input() public copyPasteHeaderOptions?: number;\r\n @Input() public defaultDragFillType?: number;\r\n @Input() public enableFormulaTextbox?: boolean;\r\n @Input() public highlightInvalidData?: boolean;\r\n @Input() public newTabVisible?: boolean;\r\n @Input() public tabStripVisible?: boolean;\r\n @Input() public tabEditable?: boolean;\r\n @Input() public tabStripRatio?: number;\r\n @Input() public tabNavigationVisible?: boolean;\r\n @Input() public autoFitType?: number;\r\n @Input() public referenceStyle?: number;\r\n @Input() public backColor?: string;\r\n @Input() public grayAreaBackColor?: string;\r\n @Input() public resizeZeroIndicator?: number;\r\n @Input() public showVerticalScrollbar?: boolean;\r\n @Input() public showHorizontalScrollbar?: boolean;\r\n @Input() public scrollbarMaxAlign?: boolean;\r\n @Input() public scrollIgnoreHidden?: boolean;\r\n @Input() public hostStyle?: any; // used for get styles form parent host DIV\r\n @Input() public hostClass?: string;\r\n @Input() public hideSelection?: boolean;\r\n @Input() public name?: string;\r\n @Input() public backgroundImage?: string;\r\n @Input() public backgroundImageLayout?: number;\r\n @Input() public showScrollTip?: number;\r\n @Input() public showResizeTip?: number;\r\n @Input() public showDragDropTip?: boolean;\r\n @Input() public showDragFillTip?: boolean;\r\n @Input() public showDragFillSmartTag?: boolean;\r\n @Input() public scrollbarShowMax?: boolean;\r\n @Input() public useTouchLayout?: boolean;\r\n\r\n // outputs events\r\n @Output() public workbookInitialized = new EventEmitter<any>();\r\n @Output() public validationError = new EventEmitter<any>();\r\n @Output() public cellClick = new EventEmitter<any>();\r\n @Output() public cellDoubleClick = new EventEmitter<any>();\r\n @Output() public enterCell = new EventEmitter<any>();\r\n @Output() public leaveCell = new EventEmitter<any>();\r\n @Output() public valueChanged = new EventEmitter<any>();\r\n @Output() public topRowChanged = new EventEmitter<any>();\r\n @Output() public leftColumnChanged = new EventEmitter<any>();\r\n @Output() public invalidOperation = new EventEmitter<any>();\r\n @Output() public rangeFiltering = new EventEmitter<any>();\r\n @Output() public rangeFiltered = new EventEmitter<any>();\r\n @Output() public tableFiltering = new EventEmitter<any>();\r\n @Output() public tableFiltered = new EventEmitter<any>();\r\n @Output() public rangeSorting = new EventEmitter<any>();\r\n @Output() public rangeSorted = new EventEmitter<any>();\r\n @Output() public clipboardChanging = new EventEmitter<any>();\r\n @Output() public clipboardChanged = new EventEmitter<any>();\r\n @Output() public clipboardPasting = new EventEmitter<any>();\r\n @Output() public clipboardPasted = new EventEmitter<any>();\r\n @Output() public columnWidthChanging = new EventEmitter<any>();\r\n @Output() public columnWidthChanged = new EventEmitter<any>();\r\n @Output() public rowHeightChanging = new EventEmitter<any>();\r\n @Output() public rowHeightChanged = new EventEmitter<any>();\r\n @Output() public dragDropBlock = new EventEmitter<any>();\r\n @Output() public dragDropBlockCompleted = new EventEmitter<any>();\r\n @Output() public dragFillBlock = new EventEmitter<any>();\r\n @Output() public dragFillBlockCompleted = new EventEmitter<any>();\r\n @Output() public editStarting = new EventEmitter<any>();\r\n @Output() public editChange = new EventEmitter<any>();\r\n @Output() public editEnding = new EventEmitter<any>();\r\n @Output() public editEnd = new EventEmitter<any>();\r\n @Output() public editEnded = new EventEmitter<any>();\r\n @Output() public rangeGroupStateChanging = new EventEmitter<any>();\r\n @Output() public rangeGroupStateChanged = new EventEmitter<any>();\r\n @Output() public selectionChanging = new EventEmitter<any>();\r\n @Output() public selectionChanged = new EventEmitter<any>();\r\n @Output() public sheetTabClick = new EventEmitter<any>();\r\n @Output() public sheetTabDoubleClick = new EventEmitter<any>();\r\n @Output() public sheetNameChanging = new EventEmitter<any>();\r\n @Output() public sheetNameChanged = new EventEmitter<any>();\r\n @Output() public userZooming = new EventEmitter<any>();\r\n @Output() public userFormulaEntered = new EventEmitter<any>();\r\n @Output() public cellChanged = new EventEmitter<any>();\r\n @Output() public columnChanged = new EventEmitter<any>();\r\n @Output() public rowChanged = new EventEmitter<any>();\r\n @Output() public activeSheetChanging = new EventEmitter<any>();\r\n @Output() public activeSheetChanged = new EventEmitter<any>();\r\n @Output() public sparklineChanged = new EventEmitter<any>();\r\n @Output() public rangeChanged = new EventEmitter<any>();\r\n @Output() public buttonClicked = new EventEmitter<any>();\r\n @Output() public editorStatusChanged = new EventEmitter<any>();\r\n @Output() public floatingObjectChanged = new EventEmitter<any>();\r\n @Output() public floatingObjectSelectionChanged = new EventEmitter<any>();\r\n @Output() public pictureChanged = new EventEmitter<any>();\r\n @Output() public floatingObjectRemoving = new EventEmitter<any>();\r\n @Output() public floatingObjectRemoved = new EventEmitter<any>();\r\n @Output() public pictureSelectionChanged = new EventEmitter<any>();\r\n @Output() public floatingObjectLoaded = new EventEmitter<any>();\r\n @Output() public touchToolStripOpening = new EventEmitter<any>();\r\n @Output() public commentChanged = new EventEmitter<any>();\r\n @Output() public commentRemoving = new EventEmitter<any>();\r\n @Output() public commentRemoved = new EventEmitter<any>();\r\n @Output() public slicerChanged = new EventEmitter<any>();\r\n\r\n @ContentChildren(WorksheetComponent)\r\n public sheets?: QueryList<WorksheetComponent>;\r\n\r\n constructor(private elRef: ElementRef) {\r\n }\r\n\r\n public ngAfterViewInit() {\r\n const elRef = this.elRef;\r\n const dom = elRef.nativeElement as HTMLElement;\r\n const hostElement = dom.querySelector('div');\r\n this.spread = new GC[\"default\"].Spread.Sheets.Workbook(hostElement, { sheetCount: 0 });\r\n this.setSpreadOptions();\r\n this.initSheets();\r\n (this.sheets as QueryList<WorksheetComponent>).changes.subscribe((changes) => {\r\n this.onSheetsChanged(changes);\r\n }); // may change sheets using bingidng.\r\n this.bindCustomEvent(this.spread as GC.Spread.Sheets.Workbook);\r\n this.workbookInitialized.emit({ spread: this.spread });\r\n }\r\n\r\n private onSheetsChanged(sheetComponents: QueryList<WorksheetComponent>) {\r\n const spread = (this.spread as GC.Spread.Sheets.Workbook);\r\n spread.suspendPaint();\r\n if (sheetComponents) {\r\n sheetComponents.forEach((sheetComponent: WorksheetComponent, index: number) => {\r\n const sheet = sheetComponent.getSheet();\r\n if (sheet && !sheet.getParent()) {\r\n spread.addSheet(index, sheetComponent.getSheet());\r\n sheetComponent.onAttached();\r\n }\r\n });\r\n }\r\n spread.resumePaint();\r\n }\r\n\r\n private initSheets() {\r\n const sheets = this.sheets as QueryList<WorksheetComponent>;\r\n const spread = this.spread as GC.Spread.Sheets.Workbook;\r\n spread.clearSheets();\r\n sheets.forEach((sheetComponent, index) => {\r\n spread.addSheet(index, sheetComponent.getSheet());\r\n sheetComponent.onAttached();\r\n });\r\n // when there is no sheet, add default sheet to spread\r\n if (sheets.length === 0) {\r\n spread.addSheet(0, new GC[\"default\"].Spread.Sheets.Worksheet(''));\r\n }\r\n }\r\n\r\n private bindCustomEvent(spread: GC.Spread.Sheets.Workbook) {\r\n const customEventNameSpace = '.ng';\r\n const events = ['ValidationError', 'CellClick', 'CellDoubleClick', 'EnterCell',\r\n 'LeaveCell', 'ValueChanged', 'TopRowChanged', 'LeftColumnChanged',\r\n 'InvalidOperation', 'RangeFiltering', 'RangeFiltered', 'TableFiltering',\r\n 'TableFiltered', 'RangeSorting', 'RangeSorted', 'ClipboardChanging',\r\n 'ClipboardChanged', 'ClipboardPasting', 'ClipboardPasted', 'ColumnWidthChanging',\r\n 'ColumnWidthChanged', 'RowHeightChanging', 'RowHeightChanged', 'DragDropBlock',\r\n 'DragDropBlockCompleted', 'DragFillBlock', 'DragFillBlockCompleted', 'EditStarting',\r\n 'EditChange', 'EditEnding', 'EditEnd', 'EditEnded', 'RangeGroupStateChanging',\r\n 'RangeGroupStateChanged', 'SelectionChanging', 'SelectionChanged', 'SheetTabClick',\r\n 'SheetTabDoubleClick', 'SheetNameChanging', 'SheetNameChanged',\r\n 'UserZooming', 'UserFormulaEntered', 'CellChanged', 'ColumnChanged',\r\n 'RowChanged', 'ActiveSheetChanging', 'ActiveSheetChanged',\r\n 'SparklineChanged',\r\n 'RangeChanged', 'ButtonClicked', 'EditorStatusChanged',\r\n 'FloatingObjectChanged', 'FloatingObjectSelectionChanged', 'PictureChanged',\r\n 'FloatingObjectRemoving', 'FloatingObjectRemoved', 'PictureSelectionChanged',\r\n 'FloatingObjectLoaded', 'TouchToolStripOpening', 'CommentChanged', 'CommentRemoving', 'CommentRemoved', 'SlicerChanged'];\r\n events.forEach((event) => {\r\n spread.bind(event + customEventNameSpace, (event: any, data: any) => {\r\n const eventType = event.type;\r\n const camelCaseEvent = eventType[0].toLowerCase() + eventType.substr(1);\r\n (this as any)[camelCaseEvent].emit(data);\r\n });\r\n });\r\n }\r\n\r\n public setSpreadOptions() {\r\n const spread = this.spread as GC.Spread.Sheets.Workbook;\r\n if (!this.spread) {\r\n return;\r\n }\r\n spread.suspendEvent();\r\n spread.suspendPaint();\r\n const options = this.spreadOptions;\r\n options && options.forEach((option) => {\r\n if (option.name === 'name') {\r\n spread.name = option.value;\r\n } else {\r\n (spread.options as any)[option.name] = option.value;\r\n }\r\n });\r\n spread.resumePaint();\r\n spread.resumeEvent();\r\n }\r\n\r\n public ngOnChanges(changes: SimpleChanges) {\r\n const options = [];\r\n for (const changeName in changes) {\r\n const newValue = changes[changeName].currentValue;\r\n if (newValue !== null && newValue !== void 0) {\r\n switch (changeName) {\r\n case 'hostStyle':\r\n this.style = newValue;\r\n break;\r\n case 'hostClass':\r\n break;\r\n default:\r\n options.push({ name: changeName, value: newValue });\r\n }\r\n }\r\n }\r\n this.spreadOptions = options;\r\n this.setSpreadOptions();\r\n }\r\n\r\n public ngOnDestroy() {\r\n (this.spread as GC.Spread.Sheets.Workbook).destroy();\r\n }\r\n}\r\n/*code_end*/\r\n","/*import_begin*/\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { ColumnComponent } from './column.component';\r\n/*import_end*/\r\nimport { SpreadSheetsComponent } from './spreadSheets.component';\r\nimport { WorksheetComponent } from './worksheet.component';\r\n\r\n/*code_begin*/\r\n@NgModule({\r\n imports: [CommonModule],\r\n declarations: [SpreadSheetsComponent, WorksheetComponent, ColumnComponent],\r\n exports: [SpreadSheetsComponent, WorksheetComponent, ColumnComponent],\r\n})\r\nexport class SpreadSheetsModule {\r\n}\r\n/*code_end*/\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}