@handsontable/angular 9.0.1 → 11.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.txt +19 -22
- package/bundles/handsontable-angular.umd.js +73 -30
- package/bundles/handsontable-angular.umd.js.map +1 -1
- package/bundles/handsontable-angular.umd.min.js +21 -24
- package/bundles/handsontable-angular.umd.min.js.map +1 -1
- package/esm2015/handsontable-angular.js +2 -2
- package/esm2015/lib/hot-column.component.js +1 -1
- package/esm2015/lib/hot-settings-resolver.service.js +2 -2
- package/esm2015/lib/hot-table-registerer.service.js +11 -2
- package/esm2015/lib/hot-table.component.js +38 -6
- package/esm2015/lib/hot-table.module.js +2 -2
- package/esm2015/public_api.js +2 -2
- package/esm5/handsontable-angular.js +2 -2
- package/esm5/lib/hot-column.component.js +1 -1
- package/esm5/lib/hot-settings-resolver.service.js +2 -2
- package/esm5/lib/hot-table-registerer.service.js +11 -2
- package/esm5/lib/hot-table.component.js +42 -6
- package/esm5/lib/hot-table.module.js +2 -2
- package/esm5/public_api.js +2 -2
- package/fesm2015/handsontable-angular.js +48 -7
- package/fesm2015/handsontable-angular.js.map +1 -1
- package/fesm5/handsontable-angular.js +52 -7
- package/fesm5/handsontable-angular.js.map +1 -1
- package/handsontable-angular.metadata.json +1 -1
- package/handsontable-non-commercial-license.pdf +0 -0
- package/lib/hot-column.component.d.ts +1 -1
- package/lib/hot-settings-resolver.service.d.ts +1 -1
- package/lib/hot-table-registerer.service.d.ts +2 -1
- package/lib/hot-table.component.d.ts +6 -2
- package/package.json +1 -1
- package/handsontable-general-terms.pdf +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ng://@handsontable/angular/lib/hot-table-registerer.service.ts","ng://@handsontable/angular/lib/hot-settings-resolver.service.ts","ng://@handsontable/angular/lib/hot-table.component.ts","ng://@handsontable/angular/lib/hot-column.component.ts","ng://@handsontable/angular/lib/hot-table.module.ts"],"names":["instances","Map","HotTableRegisterer","prototype","getInstance","id","get","registerInstance","instance","set","removeInstance","delete","Injectable","AVAILABLE_OPTIONS","Object","keys","Handsontable","DefaultSettings","AVAILABLE_HOOKS","hooks","getRegistered","HotSettingsResolver","mergeSettings","component","isSettingsObject","mergedSettings","concat","forEach","key","option","isHook","indexOf","_this","this","args","_i","arguments","length","_ngZone","run","apply","prepareChanges","changes","result","param","hasOwnProperty","currentValue","HotTableComponent","_hotTableRegisterer","_hotSettingsResolver","columnsComponents","hotId","ngAfterViewInit","options","columns_1","column","push","runOutsideAngular","hotInstance","Core","container","nativeElement","init","ngOnChanges","newOptions","updateHotTable","ngOnDestroy","destroy","newSettings","updateSettings","onAfterColumnsChange","columns_2","columns","onAfterColumnsNumberChange","addColumn","removeColumn","index","splice","Component","selector","template","encapsulation","ViewEncapsulation","None","providers","NgZone","ViewChild","static","Input","HotColumnComponent","parentComponent","firstRun","ngOnInit","HotTableModule","forRoot","ngModule","version","NgModule","declarations","exports"],"mappings":"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","sourcesContent":["import { Injectable } from '@angular/core';\nimport Handsontable from 'handsontable';\n\nconst instances = new Map<string, Handsontable>();\n\n@Injectable()\nexport class HotTableRegisterer {\n public getInstance(id: string): Handsontable {\n return instances.get(id);\n }\n\n public registerInstance(id: string, instance: Handsontable): Map<string, Handsontable> {\n return instances.set(id, instance);\n }\n\n public removeInstance(id: string): boolean {\n return instances.delete(id);\n }\n}\n","import { Injectable, SimpleChanges } from '@angular/core';\nimport Handsontable from 'handsontable';\n\nconst AVAILABLE_OPTIONS: string[] = Object.keys(Handsontable.DefaultSettings);\nconst AVAILABLE_HOOKS: string[] = Handsontable.hooks.getRegistered();\n\n@Injectable()\nexport class HotSettingsResolver {\n mergeSettings(component): object {\n const isSettingsObject = typeof component['settings'] === 'object';\n const mergedSettings: Handsontable.GridSettings = isSettingsObject ? component['settings'] : {};\n const options = AVAILABLE_HOOKS.concat(AVAILABLE_OPTIONS);\n\n options.forEach(key => {\n const isHook = AVAILABLE_HOOKS.indexOf(key) > -1;\n let option;\n\n if (isSettingsObject && isHook) {\n option = component['settings'][key];\n }\n\n if (component[key] !== void 0) {\n option = component[key];\n }\n\n if (option === void 0) {\n return;\n\n } else if (typeof option === 'function' && isHook) {\n mergedSettings[key] = function(...args) {\n return component._ngZone.run(() => {\n return option.apply(this, args);\n });\n };\n\n } else {\n mergedSettings[key] = option;\n }\n });\n\n return mergedSettings;\n }\n\n prepareChanges(changes: SimpleChanges): Handsontable.GridSettings {\n const result: Handsontable.GridSettings = {};\n const parameters: string[] = Object.keys(changes);\n\n parameters.forEach((param) => {\n if (changes.hasOwnProperty(param)) {\n result[param] = changes[param].currentValue;\n }\n });\n\n return result;\n }\n}\n","import {\n AfterViewInit,\n Component,\n Input,\n NgZone,\n OnChanges,\n OnDestroy,\n SimpleChanges,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport Handsontable from 'handsontable';\nimport { HotTableRegisterer } from './hot-table-registerer.service';\nimport { HotSettingsResolver } from './hot-settings-resolver.service';\nimport { HotColumnComponent } from './hot-column.component';\n\n@Component({\n selector: 'hot-table',\n template: '<div #container [id]=\"hotId\"></div>',\n encapsulation: ViewEncapsulation.None,\n providers: [ HotTableRegisterer, HotSettingsResolver ],\n})\nexport class HotTableComponent implements AfterViewInit, OnChanges, OnDestroy {\n @ViewChild('container', { static: false }) public container;\n\n private hotInstance: Handsontable;\n private columnsComponents: HotColumnComponent[] = [];\n // component inputs\n @Input() settings: Handsontable.GridSettings;\n @Input() hotId = '';\n // handsontable options\n @Input() activeHeaderClassName: Handsontable.GridSettings['activeHeaderClassName'];\n @Input() allowEmpty: Handsontable.GridSettings['allowEmpty'];\n @Input() allowHtml: Handsontable.GridSettings['allowHtml'];\n @Input() allowInsertColumn: Handsontable.GridSettings['allowInsertColumn'];\n @Input() allowInsertRow: Handsontable.GridSettings['allowInsertRow'];\n @Input() allowInvalid: Handsontable.GridSettings['allowInvalid'];\n @Input() allowRemoveColumn: Handsontable.GridSettings['allowRemoveColumn'];\n @Input() allowRemoveRow: Handsontable.GridSettings['allowRemoveRow'];\n @Input() autoColumnSize: Handsontable.GridSettings['autoColumnSize'];\n @Input() autoRowSize: Handsontable.GridSettings['autoRowSize'];\n @Input() autoWrapCol: Handsontable.GridSettings['autoWrapCol'];\n @Input() autoWrapRow: Handsontable.GridSettings['autoWrapRow'];\n @Input() bindRowsWithHeaders: Handsontable.GridSettings['bindRowsWithHeaders'];\n @Input() cell: Handsontable.GridSettings['cell'];\n @Input() cells: Handsontable.GridSettings['cells'];\n @Input() checkedTemplate: Handsontable.GridSettings['checkedTemplate'];\n @Input() className: Handsontable.GridSettings['className'];\n @Input() colHeaders: Handsontable.GridSettings['colHeaders'];\n @Input() collapsibleColumns: Handsontable.GridSettings['collapsibleColumns'];\n @Input() columnHeaderHeight: Handsontable.GridSettings['columnHeaderHeight'];\n @Input() columns: Handsontable.GridSettings['columns'];\n @Input() columnSorting: Handsontable.GridSettings['columnSorting'];\n @Input() columnSummary: Handsontable.GridSettings['columnSummary'];\n @Input() colWidths: Handsontable.GridSettings['colWidths'];\n @Input() commentedCellClassName: Handsontable.GridSettings['commentedCellClassName'];\n @Input() comments: Handsontable.GridSettings['comments'];\n @Input() contextMenu: Handsontable.GridSettings['contextMenu'];\n @Input() copyable: Handsontable.GridSettings['copyable'];\n @Input() copyPaste: Handsontable.GridSettings['copyPaste'];\n @Input() correctFormat: Handsontable.GridSettings['correctFormat'];\n @Input() currentColClassName: Handsontable.GridSettings['currentColClassName'];\n @Input() currentHeaderClassName: Handsontable.GridSettings['currentHeaderClassName'];\n @Input() currentRowClassName: Handsontable.GridSettings['currentRowClassName'];\n @Input() customBorders: Handsontable.GridSettings['customBorders'];\n @Input() data: Handsontable.GridSettings['data'];\n @Input() dataSchema: Handsontable.GridSettings['dataSchema'];\n @Input() dateFormat: Handsontable.GridSettings['dateFormat'];\n @Input() defaultDate: Handsontable.GridSettings['defaultDate'];\n @Input() disableVisualSelection: Handsontable.GridSettings['disableVisualSelection'];\n @Input() dragToScroll: Handsontable.GridSettings['dragToScroll'];\n @Input() dropdownMenu: Handsontable.GridSettings['dropdownMenu'];\n @Input() editor: Handsontable.GridSettings['editor'];\n @Input() enterBeginsEditing: Handsontable.GridSettings['enterBeginsEditing'];\n @Input() enterMoves: Handsontable.GridSettings['enterMoves'];\n @Input() fillHandle: Handsontable.GridSettings['fillHandle'];\n @Input() filter: Handsontable.GridSettings['filter'];\n @Input() filteringCaseSensitive: Handsontable.GridSettings['filteringCaseSensitive'];\n @Input() filters: Handsontable.GridSettings['filters'];\n @Input() fixedColumnsLeft: Handsontable.GridSettings['fixedColumnsLeft'];\n @Input() fixedRowsBottom: Handsontable.GridSettings['fixedRowsBottom'];\n @Input() fixedRowsTop: Handsontable.GridSettings['fixedRowsTop'];\n @Input() formulas: Handsontable.GridSettings['formulas'];\n @Input() fragmentSelection: Handsontable.GridSettings['fragmentSelection'];\n @Input() height: Handsontable.GridSettings['height'];\n @Input() hiddenColumns: Handsontable.GridSettings['hiddenColumns'];\n @Input() hiddenRows: Handsontable.GridSettings['hiddenRows'];\n @Input() invalidCellClassName: Handsontable.GridSettings['invalidCellClassName'];\n @Input() label: Handsontable.GridSettings['label'];\n @Input() language: Handsontable.GridSettings['language'];\n @Input() licenseKey: Handsontable.GridSettings['licenseKey'];\n @Input() manualColumnFreeze: Handsontable.GridSettings['manualColumnFreeze'];\n @Input() manualColumnMove: Handsontable.GridSettings['manualColumnMove'];\n @Input() manualColumnResize: Handsontable.GridSettings['manualColumnResize'];\n @Input() manualRowMove: Handsontable.GridSettings['manualRowMove'];\n @Input() manualRowResize: Handsontable.GridSettings['manualRowResize'];\n @Input() maxCols: Handsontable.GridSettings['maxCols'];\n @Input() maxRows: Handsontable.GridSettings['maxRows'];\n @Input() mergeCells: Handsontable.GridSettings['mergeCells'];\n @Input() minCols: Handsontable.GridSettings['minCols'];\n @Input() minRows: Handsontable.GridSettings['minRows'];\n @Input() minSpareCols: Handsontable.GridSettings['minSpareCols'];\n @Input() minSpareRows: Handsontable.GridSettings['minSpareRows'];\n @Input() multiColumnSorting: Handsontable.GridSettings['multiColumnSorting'];\n @Input() nestedHeaders: Handsontable.GridSettings['nestedHeaders'];\n @Input() nestedRows: Handsontable.GridSettings['nestedRows'];\n @Input() noWordWrapClassName: Handsontable.GridSettings['noWordWrapClassName'];\n @Input() numericFormat: Handsontable.GridSettings['numericFormat'];\n @Input() observeDOMVisibility: Handsontable.GridSettings['observeDOMVisibility'];\n @Input() outsideClickDeselects: Handsontable.GridSettings['outsideClickDeselects'];\n @Input() persistentState: Handsontable.GridSettings['persistentState'];\n @Input() placeholder: Handsontable.GridSettings['placeholder'];\n @Input() placeholderCellClassName: Handsontable.GridSettings['placeholderCellClassName'];\n @Input() preventOverflow: Handsontable.GridSettings['preventOverflow'];\n @Input() preventWheel: Handsontable.GridSettings['preventWheel'];\n @Input() readOnly: Handsontable.GridSettings['readOnly'];\n @Input() readOnlyCellClassName: Handsontable.GridSettings['readOnlyCellClassName'];\n @Input() renderAllRows: Handsontable.GridSettings['renderAllRows'];\n @Input() renderer: Handsontable.GridSettings['renderer'];\n @Input() rowHeaders: Handsontable.GridSettings['rowHeaders'];\n @Input() rowHeaderWidth: Handsontable.GridSettings['rowHeaderWidth'];\n @Input() rowHeights: Handsontable.GridSettings['rowHeights'];\n @Input() search: Handsontable.GridSettings['search'];\n @Input() selectionMode: Handsontable.GridSettings['selectionMode'];\n @Input() selectOptions: Handsontable.GridSettings['selectOptions'];\n @Input() skipColumnOnPaste: Handsontable.GridSettings['skipColumnOnPaste'];\n @Input() skipRowOnPaste: any;\n @Input() sortByRelevance: Handsontable.GridSettings['sortByRelevance'];\n @Input() source: Handsontable.GridSettings['source'];\n @Input() startCols: Handsontable.GridSettings['startCols'];\n @Input() startRows: Handsontable.GridSettings['startRows'];\n @Input() stretchH: Handsontable.GridSettings['stretchH'];\n @Input() strict: Handsontable.GridSettings['strict'];\n @Input() tableClassName: Handsontable.GridSettings['tableClassName'];\n @Input() tabMoves: Handsontable.GridSettings['tabMoves'];\n @Input() title: Handsontable.GridSettings['title'];\n @Input() trimDropdown: Handsontable.GridSettings['trimDropdown'];\n @Input() trimRows: Handsontable.GridSettings['nestedRows'];\n @Input() trimWhitespace: Handsontable.GridSettings['trimWhitespace'];\n @Input() type: Handsontable.GridSettings['type'];\n @Input() uncheckedTemplate: Handsontable.GridSettings['uncheckedTemplate'];\n @Input() undo: Handsontable.GridSettings['undo'];\n @Input() validator: Handsontable.GridSettings['validator'];\n @Input() viewportColumnRenderingOffset: Handsontable.GridSettings['viewportColumnRenderingOffset'];\n @Input() viewportRowRenderingOffset: Handsontable.GridSettings['viewportRowRenderingOffset'];\n @Input() visibleRows: Handsontable.GridSettings['visibleRows'];\n @Input() width: Handsontable.GridSettings['width'];\n @Input() wordWrap: Handsontable.GridSettings['wordWrap'];\n\n // handsontable hooks\n @Input() afterAddChild: Handsontable.GridSettings['afterAddChild'];\n @Input() afterAutofill: Handsontable.GridSettings['afterAutofill'];\n @Input() afterBeginEditing: Handsontable.GridSettings['afterBeginEditing'];\n @Input() afterCellMetaReset: Handsontable.GridSettings['afterCellMetaReset'];\n @Input() afterChange: Handsontable.GridSettings['afterChange'];\n @Input() afterChangesObserved: Handsontable.GridSettings['afterChangesObserved'];\n @Input() afterColumnCollapse: Handsontable.GridSettings['afterColumnCollapse'];\n @Input() afterColumnExpand: Handsontable.GridSettings['afterColumnExpand'];\n @Input() afterColumnMove: Handsontable.GridSettings['afterColumnMove'];\n @Input() afterColumnResize: Handsontable.GridSettings['afterColumnResize'];\n @Input() afterColumnSort: Handsontable.GridSettings['afterColumnSort'];\n @Input() afterContextMenuDefaultOptions: Handsontable.GridSettings['afterContextMenuDefaultOptions'];\n @Input() afterContextMenuHide: Handsontable.GridSettings['afterContextMenuHide'];\n @Input() afterContextMenuShow: Handsontable.GridSettings['afterContextMenuShow'];\n @Input() afterCopy: Handsontable.GridSettings['afterCopy'];\n @Input() afterCopyLimit: Handsontable.GridSettings['afterCopyLimit'];\n @Input() afterCreateCol: Handsontable.GridSettings['afterCreateCol'];\n @Input() afterCreateRow: Handsontable.GridSettings['afterCreateRow'];\n @Input() afterCut: Handsontable.GridSettings['afterCut'];\n @Input() afterDeselect: Handsontable.GridSettings['afterDeselect'];\n @Input() afterDestroy: Handsontable.GridSettings['afterDestroy'];\n @Input() afterDetachChild: Handsontable.GridSettings['afterDetachChild'];\n @Input() afterDocumentKeyDown: Handsontable.GridSettings['afterDocumentKeyDown'];\n @Input() afterDrawSelection: Handsontable.GridSettings['afterDrawSelection'];\n @Input() afterDropdownMenuDefaultOptions: Handsontable.GridSettings['afterDropdownMenuDefaultOptions'];\n @Input() afterDropdownMenuHide: Handsontable.GridSettings['afterDropdownMenuHide'];\n @Input() afterDropdownMenuShow: Handsontable.GridSettings['afterDropdownMenuShow'];\n @Input() afterFilter: Handsontable.GridSettings['afterFilter'];\n @Input() afterGetCellMeta: Handsontable.GridSettings['afterGetCellMeta'];\n @Input() afterGetColHeader: Handsontable.GridSettings['afterGetColHeader'];\n @Input() afterGetColumnHeaderRenderers: Handsontable.GridSettings['afterGetColumnHeaderRenderers'];\n @Input() afterGetRowHeader: Handsontable.GridSettings['afterGetRowHeader'];\n @Input() afterGetRowHeaderRenderers: Handsontable.GridSettings['afterGetRowHeaderRenderers'];\n @Input() afterHideColumns: Handsontable.GridSettings['afterHideColumns'];\n @Input() afterHideRows: Handsontable.GridSettings['afterHideRows'];\n @Input() afterInit: Handsontable.GridSettings['afterInit'];\n @Input() afterLanguageChange: Handsontable.GridSettings['afterLanguageChange'];\n @Input() afterListen: Handsontable.GridSettings['afterListen'];\n @Input() afterLoadData: Handsontable.GridSettings['afterLoadData'];\n @Input() afterMergeCells: Handsontable.GridSettings['afterMergeCells'];\n @Input() afterModifyTransformEnd: Handsontable.GridSettings['afterModifyTransformEnd'];\n @Input() afterModifyTransformStart: Handsontable.GridSettings['afterModifyTransformStart'];\n @Input() afterMomentumScroll: Handsontable.GridSettings['afterMomentumScroll'];\n @Input() afterOnCellContextMenu: Handsontable.GridSettings['afterOnCellContextMenu'];\n @Input() afterOnCellCornerDblClick: Handsontable.GridSettings['afterOnCellCornerDblClick'];\n @Input() afterOnCellCornerMouseDown: Handsontable.GridSettings['afterOnCellCornerMouseDown'];\n @Input() afterOnCellMouseDown: Handsontable.GridSettings['afterOnCellMouseDown'];\n @Input() afterOnCellMouseOut: Handsontable.GridSettings['afterOnCellMouseOut'];\n @Input() afterOnCellMouseOver: Handsontable.GridSettings['afterOnCellMouseOver'];\n @Input() afterOnCellMouseUp: Handsontable.GridSettings['afterOnCellMouseUp'];\n @Input() afterPaste: Handsontable.GridSettings['afterPaste'];\n @Input() afterPluginsInitialized: Handsontable.GridSettings['afterPluginsInitialized'];\n @Input() afterRedo: Handsontable.GridSettings['afterRedo'];\n @Input() afterRedoStackChange: Handsontable.GridSettings['afterRedoStackChange'];\n @Input() afterRefreshDimensions: Handsontable.GridSettings['afterRefreshDimensions'];\n @Input() afterRemoveCellMeta: Handsontable.GridSettings['afterRemoveCellMeta'];\n @Input() afterRemoveCol: Handsontable.GridSettings['afterRemoveCol'];\n @Input() afterRemoveRow: Handsontable.GridSettings['afterRemoveRow'];\n @Input() afterRender: Handsontable.GridSettings['afterRender'];\n @Input() afterRenderer: Handsontable.GridSettings['afterRenderer'];\n @Input() afterRowMove: Handsontable.GridSettings['afterRowMove'];\n @Input() afterRowResize: Handsontable.GridSettings['afterRowResize'];\n @Input() afterScrollHorizontally: Handsontable.GridSettings['afterScrollHorizontally'];\n @Input() afterScrollVertically: Handsontable.GridSettings['afterScrollVertically'];\n @Input() afterSelection: Handsontable.GridSettings['afterSelection'];\n @Input() afterSelectionByProp: Handsontable.GridSettings['afterSelectionByProp'];\n @Input() afterSelectionEnd: Handsontable.GridSettings['afterSelectionEnd'];\n @Input() afterSelectionEndByProp: Handsontable.GridSettings['afterSelectionEndByProp'];\n @Input() afterSetCellMeta: Handsontable.GridSettings['afterSetCellMeta'];\n @Input() afterSetDataAtCell: Handsontable.GridSettings['afterSetDataAtCell'];\n @Input() afterSetDataAtRowProp: Handsontable.GridSettings['afterSetDataAtRowProp'];\n @Input() afterSetSourceDataAtCell: Handsontable.GridSettings['afterSetSourceDataAtCell'];\n @Input() afterTrimRow: Handsontable.GridSettings['afterTrimRow'];\n @Input() afterUndo: Handsontable.GridSettings['afterUndo'];\n @Input() afterUndoStackChange: Handsontable.GridSettings['afterUndoStackChange'];\n @Input() afterUnhideColumns: Handsontable.GridSettings['afterUnhideColumns'];\n @Input() afterUnhideRows: Handsontable.GridSettings['afterUnhideRows'];\n @Input() afterUnlisten: Handsontable.GridSettings['afterUnlisten'];\n @Input() afterUnmergeCells: Handsontable.GridSettings['afterUnmergeCells'];\n @Input() afterUntrimRow: Handsontable.GridSettings['afterUntrimRow'];\n @Input() afterUpdateSettings: Handsontable.GridSettings['afterUpdateSettings'];\n @Input() afterValidate: Handsontable.GridSettings['afterValidate'];\n @Input() afterViewportColumnCalculatorOverride: Handsontable.GridSettings['afterViewportColumnCalculatorOverride'];\n @Input() afterViewportRowCalculatorOverride: Handsontable.GridSettings['afterViewportRowCalculatorOverride'];\n @Input() beforeAddChild: Handsontable.GridSettings['beforeAddChild'];\n @Input() beforeAutofill: Handsontable.GridSettings['beforeAutofill'];\n @Input() beforeAutofillInsidePopulate: Handsontable.GridSettings['beforeAutofillInsidePopulate'];\n @Input() beforeCellAlignment: Handsontable.GridSettings['beforeCellAlignment'];\n @Input() beforeChange: Handsontable.GridSettings['beforeChange'];\n @Input() beforeChangeRender: Handsontable.GridSettings['beforeChangeRender'];\n @Input() beforeColumnCollapse: Handsontable.GridSettings['beforeColumnCollapse'];\n @Input() beforeColumnExpand: Handsontable.GridSettings['beforeColumnExpand'];\n @Input() beforeColumnMove: Handsontable.GridSettings['beforeColumnMove'];\n @Input() beforeColumnResize: Handsontable.GridSettings['beforeColumnResize'];\n @Input() beforeColumnSort: Handsontable.GridSettings['beforeColumnSort'];\n @Input() beforeContextMenuSetItems: Handsontable.GridSettings['beforeContextMenuSetItems'];\n @Input() beforeContextMenuShow: Handsontable.GridSettings['beforeContextMenuShow'];\n @Input() beforeCopy: Handsontable.GridSettings['beforeCopy'];\n @Input() beforeCreateCol: Handsontable.GridSettings['beforeCreateCol'];\n @Input() beforeCreateRow: Handsontable.GridSettings['beforeCreateRow'];\n @Input() beforeCut: Handsontable.GridSettings['beforeCut'];\n @Input() beforeDetachChild: Handsontable.GridSettings['beforeDetachChild'];\n @Input() beforeDrawBorders: Handsontable.GridSettings['beforeDrawBorders'];\n @Input() beforeDropdownMenuSetItems: Handsontable.GridSettings['beforeDropdownMenuSetItems'];\n @Input() beforeDropdownMenuShow: Handsontable.GridSettings['beforeDropdownMenuShow'];\n @Input() beforeFilter: Handsontable.GridSettings['beforeFilter'];\n @Input() beforeGetCellMeta: Handsontable.GridSettings['beforeGetCellMeta'];\n @Input() beforeHideColumns: Handsontable.GridSettings['beforeHideColumns'];\n @Input() beforeHideRows: Handsontable.GridSettings['beforeHideRows'];\n @Input() beforeInit: Handsontable.GridSettings['beforeInit'];\n @Input() beforeInitWalkontable: Handsontable.GridSettings['beforeInitWalkontable'];\n @Input() beforeKeyDown: Handsontable.GridSettings['beforeKeyDown'];\n @Input() beforeLanguageChange: Handsontable.GridSettings['beforeLanguageChange'];\n @Input() beforeLoadData: Handsontable.GridSettings['beforeLoadData'];\n @Input() beforeMergeCells: Handsontable.GridSettings['beforeMergeCells'];\n @Input() beforeOnCellContextMenu: Handsontable.GridSettings['beforeOnCellContextMenu'];\n @Input() beforeOnCellMouseDown: Handsontable.GridSettings['beforeOnCellMouseDown'];\n @Input() beforeOnCellMouseOut: Handsontable.GridSettings['beforeOnCellMouseOut'];\n @Input() beforeOnCellMouseOver: Handsontable.GridSettings['beforeOnCellMouseOver'];\n @Input() beforeOnCellMouseUp: Handsontable.GridSettings['beforeOnCellMouseUp'];\n @Input() beforePaste: Handsontable.GridSettings['beforePaste'];\n @Input() beforeRedo: Handsontable.GridSettings['beforeRedo'];\n @Input() beforeRedoStackChange: Handsontable.GridSettings['beforeRedoStackChange'];\n @Input() beforeRefreshDimensions: Handsontable.GridSettings['beforeRefreshDimensions'];\n @Input() beforeRemoveCellClassNames: Handsontable.GridSettings['beforeRemoveCellClassNames'];\n @Input() beforeRemoveCellMeta: Handsontable.GridSettings['beforeRemoveCellMeta'];\n @Input() beforeRemoveCol: Handsontable.GridSettings['beforeRemoveCol'];\n @Input() beforeRemoveRow: Handsontable.GridSettings['beforeRemoveRow'];\n @Input() beforeRender: Handsontable.GridSettings['beforeRender'];\n @Input() beforeRenderer: Handsontable.GridSettings['beforeRenderer'];\n @Input() beforeRowMove: Handsontable.GridSettings['beforeRowMove'];\n @Input() beforeRowResize: Handsontable.GridSettings['beforeRowResize'];\n @Input() beforeSetCellMeta: Handsontable.GridSettings['beforeSetCellMeta'];\n @Input() beforeSetRangeEnd: Handsontable.GridSettings['beforeSetRangeEnd'];\n @Input() beforeSetRangeStart: Handsontable.GridSettings['beforeSetRangeStart'];\n @Input() beforeSetRangeStartOnly: Handsontable.GridSettings['beforeSetRangeStartOnly'];\n @Input() beforeStretchingColumnWidth: Handsontable.GridSettings['beforeStretchingColumnWidth'];\n @Input() beforeTouchScroll: Handsontable.GridSettings['beforeTouchScroll'];\n @Input() beforeTrimRow: Handsontable.GridSettings['beforeTrimRow'];\n @Input() beforeUndo: Handsontable.GridSettings['beforeUndo'];\n @Input() beforeUndoStackChange: Handsontable.GridSettings['beforeUndoStackChange'];\n @Input() beforeUnhideColumns: Handsontable.GridSettings['beforeUnhideColumns'];\n @Input() beforeUnhideRows: Handsontable.GridSettings['beforeUnhideRows'];\n @Input() beforeUnmergeCells: Handsontable.GridSettings['beforeUnmergeCells'];\n @Input() beforeUntrimRow: Handsontable.GridSettings['beforeUntrimRow'];\n @Input() beforeValidate: Handsontable.GridSettings['beforeValidate'];\n @Input() beforeValueRender: Handsontable.GridSettings['beforeValueRender'];\n @Input() construct: Handsontable.GridSettings['construct'];\n @Input() init: Handsontable.GridSettings['init'];\n @Input() modifyAutoColumnSizeSeed: Handsontable.GridSettings['modifyAutoColumnSizeSeed'];\n @Input() modifyAutofillRange: Handsontable.GridSettings['modifyAutofillRange'];\n @Input() modifyColHeader: Handsontable.GridSettings['modifyColHeader'];\n @Input() modifyColumnHeaderHeight: Handsontable.GridSettings['modifyColumnHeaderHeight'];\n @Input() modifyColWidth: Handsontable.GridSettings['modifyColWidth'];\n @Input() modifyCopyableRange: Handsontable.GridSettings['modifyCopyableRange'];\n @Input() modifyData: Handsontable.GridSettings['modifyData'];\n @Input() modifyGetCellCoords: Handsontable.GridSettings['modifyGetCellCoords'];\n @Input() modifyRowData: Handsontable.GridSettings['modifyRowData'];\n @Input() modifyRowHeader: Handsontable.GridSettings['modifyRowHeader'];\n @Input() modifyRowHeaderWidth: Handsontable.GridSettings['modifyRowHeaderWidth'];\n @Input() modifyRowHeight: Handsontable.GridSettings['modifyRowHeight'];\n @Input() modifySourceData: Handsontable.GridSettings['modifySourceData'];\n @Input() modifyTransformEnd: Handsontable.GridSettings['modifyTransformEnd'];\n @Input() modifyTransformStart: Handsontable.GridSettings['modifyTransformStart'];\n @Input() persistentStateLoad: Handsontable.GridSettings['persistentStateLoad'];\n @Input() persistentStateReset: Handsontable.GridSettings['persistentStateReset'];\n @Input() persistentStateSave: Handsontable.GridSettings['persistentStateSave'];\n\n constructor(\n private _ngZone: NgZone,\n private _hotTableRegisterer: HotTableRegisterer,\n private _hotSettingsResolver: HotSettingsResolver,\n ) {}\n\n ngAfterViewInit(): void {\n const options: Handsontable.GridSettings = this._hotSettingsResolver.mergeSettings(this);\n\n if (this.columnsComponents.length > 0) {\n const columns = [];\n\n this.columnsComponents.forEach((column) => {\n columns.push(this._hotSettingsResolver.mergeSettings(column));\n });\n\n options['columns'] = columns;\n }\n\n this._ngZone.runOutsideAngular(() => {\n this.hotInstance = new Handsontable.Core(this.container.nativeElement, options);\n\n if (this.hotId) {\n this._hotTableRegisterer.registerInstance(this.hotId, this.hotInstance);\n }\n // @ts-ignore\n this.hotInstance.init();\n });\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (this.hotInstance === void 0) {\n return;\n }\n\n const newOptions: Handsontable.GridSettings = this._hotSettingsResolver.prepareChanges(changes);\n\n this.updateHotTable(newOptions);\n }\n\n ngOnDestroy(): void {\n this._ngZone.runOutsideAngular(() => {\n this.hotInstance.destroy();\n });\n\n if (this.hotId) {\n this._hotTableRegisterer.removeInstance(this.hotId);\n }\n }\n\n updateHotTable(newSettings: Handsontable.GridSettings ): void {\n if (!this.hotInstance) {\n return;\n }\n\n this._ngZone.runOutsideAngular(() => {\n this.hotInstance.updateSettings(newSettings, false);\n });\n }\n\n onAfterColumnsChange(): void {\n if (this.columnsComponents === void 0) {\n return;\n }\n\n if (this.columnsComponents.length > 0) {\n const columns: Handsontable.ColumnSettings[] = [];\n\n this.columnsComponents.forEach((column) => {\n columns.push(this._hotSettingsResolver.mergeSettings(column));\n });\n\n const newOptions = {\n columns: columns\n };\n\n this.updateHotTable(newOptions);\n }\n }\n\n onAfterColumnsNumberChange(): void {\n const columns: Handsontable.ColumnSettings[] = [];\n\n if (this.columnsComponents.length > 0) {\n this.columnsComponents.forEach((column) => {\n columns.push(this._hotSettingsResolver.mergeSettings(column));\n });\n }\n\n this.updateHotTable({ columns });\n }\n\n addColumn(column: HotColumnComponent): void {\n this.columnsComponents.push(column);\n this.onAfterColumnsNumberChange();\n }\n\n removeColumn(column: HotColumnComponent): void {\n const index: number = this.columnsComponents.indexOf(column);\n\n this.columnsComponents.splice(index, 1);\n this.onAfterColumnsNumberChange();\n }\n\n}\n","import {\n Component,\n OnInit,\n OnChanges,\n OnDestroy,\n Input,\n} from '@angular/core';\nimport { HotTableComponent } from './hot-table.component';\nimport Handsontable from 'handsontable';\n\n@Component({\n selector: 'hot-column',\n template: '',\n})\nexport class HotColumnComponent implements OnInit, OnChanges, OnDestroy {\n private firstRun = true;\n // handsontable column options\n @Input() allowEmpty: Handsontable.ColumnSettings['allowEmpty'];\n @Input() allowHtml: Handsontable.ColumnSettings['allowHtml'];\n @Input() allowInvalid: Handsontable.ColumnSettings['allowInvalid'];\n @Input() checkedTemplate: Handsontable.ColumnSettings['checkedTemplate'];\n @Input() className: Handsontable.ColumnSettings['className'];\n @Input() columnSorting: Handsontable.ColumnSettings['columnSorting'];\n @Input() colWidths: Handsontable.ColumnSettings['colWidths'];\n @Input() commentedCellClassName: Handsontable.ColumnSettings['commentedCellClassName'];\n @Input() copyable: Handsontable.ColumnSettings['copyable'];\n @Input() correctFormat: Handsontable.ColumnSettings['correctFormat'];\n @Input() data: Handsontable.ColumnSettings['data'];\n @Input() dateFormat: Handsontable.ColumnSettings['dateFormat'];\n @Input() defaultDate: Handsontable.ColumnSettings['defaultDate'];\n @Input() editor: Handsontable.ColumnSettings['editor'];\n @Input() filteringCaseSensitive: Handsontable.ColumnSettings['filteringCaseSensitive'];\n @Input() invalidCellClassName: Handsontable.ColumnSettings['invalidCellClassName'];\n @Input() label: Handsontable.ColumnSettings['label'];\n @Input() language: Handsontable.ColumnSettings['language'];\n @Input() noWordWrapClassName: Handsontable.ColumnSettings['noWordWrapClassName'];\n @Input() numericFormat: Handsontable.ColumnSettings['numericFormat'];\n @Input() placeholder: Handsontable.ColumnSettings['placeholder'];\n @Input() placeholderCellClassName: Handsontable.ColumnSettings['placeholderCellClassName'];\n @Input() readOnly: Handsontable.ColumnSettings['readOnly'];\n @Input() readOnlyCellClassName: Handsontable.ColumnSettings['readOnlyCellClassName'];\n @Input() renderer: Handsontable.ColumnSettings['renderer'];\n @Input() selectOptions: Handsontable.ColumnSettings['selectOptions'];\n @Input() skipColumnOnPaste: Handsontable.ColumnSettings['skipColumnOnPaste'];\n @Input() sortByRelevance: Handsontable.ColumnSettings['sortByRelevance'];\n @Input() source: Handsontable.ColumnSettings['source'];\n @Input() strict: Handsontable.ColumnSettings['strict'];\n @Input() title: Handsontable.ColumnSettings['title'];\n @Input() trimDropdown: Handsontable.ColumnSettings['trimDropdown'];\n @Input() type: Handsontable.ColumnSettings['type'];\n @Input() uncheckedTemplate: Handsontable.ColumnSettings['uncheckedTemplate'];\n @Input() validator: Handsontable.ColumnSettings['validator'];\n @Input() visibleRows: Handsontable.ColumnSettings['visibleRows'];\n @Input() width: Handsontable.ColumnSettings['width'];\n @Input() wordWrap: Handsontable.ColumnSettings['wordWrap'];\n\n constructor(private parentComponent: HotTableComponent) {}\n\n ngOnInit(): void {\n this.firstRun = false;\n this.parentComponent.addColumn(this);\n }\n\n ngOnChanges(): void {\n if (this.firstRun) {\n return;\n }\n\n this.parentComponent.onAfterColumnsChange();\n }\n\n ngOnDestroy(): void {\n this.parentComponent.removeColumn(this);\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { HotTableComponent } from './hot-table.component';\nimport { HotColumnComponent } from './hot-column.component';\nimport { HotTableRegisterer } from './hot-table-registerer.service';\n\n@NgModule({\n declarations: [\n HotTableComponent,\n HotColumnComponent,\n ],\n exports: [\n HotTableComponent,\n HotColumnComponent,\n ]\n})\nexport class HotTableModule {\n static version = '9.0.1';\n\n public static forRoot(): ModuleWithProviders<HotTableModule> {\n return {\n ngModule: HotTableModule,\n providers: [ HotTableRegisterer ],\n };\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["ng://@handsontable/angular/lib/hot-table-registerer.service.ts","ng://@handsontable/angular/lib/hot-settings-resolver.service.ts","ng://@handsontable/angular/lib/hot-table.component.ts","ng://@handsontable/angular/lib/hot-column.component.ts","ng://@handsontable/angular/lib/hot-table.module.ts"],"names":["instances","Map","HOT_DESTROYED_WARNING","HotTableRegisterer","prototype","getInstance","id","hotInstance","get","isDestroyed","console","warn","registerInstance","instance","set","removeInstance","delete","Injectable","AVAILABLE_OPTIONS","Object","keys","Handsontable","DefaultSettings","AVAILABLE_HOOKS","hooks","getRegistered","HotSettingsResolver","mergeSettings","component","isSettingsObject","mergedSettings","concat","forEach","key","option","isHook","indexOf","_this","this","args","_i","arguments","length","_ngZone","run","apply","prepareChanges","changes","result","param","hasOwnProperty","currentValue","HotTableComponent","_hotTableRegisterer","_hotSettingsResolver","__hotInstance","columnsComponents","hotId","defineProperty","ngAfterViewInit","options","columns_1","column","push","runOutsideAngular","Core","container","nativeElement","init","ngOnChanges","newOptions","updateHotTable","ngOnDestroy","destroy","newSettings","updateSettings","onAfterColumnsChange","columns_2","columns","onAfterColumnsNumberChange","addColumn","removeColumn","index","splice","Component","selector","template","encapsulation","ViewEncapsulation","None","providers","NgZone","ViewChild","static","Input","HotColumnComponent","parentComponent","firstRun","ngOnInit","HotTableModule","forRoot","ngModule","version","NgModule","declarations","exports"],"mappings":"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","sourcesContent":["import { Injectable } from '@angular/core';\nimport Handsontable from 'handsontable/base';\n\nconst instances = new Map<string, Handsontable>();\n\nexport const HOT_DESTROYED_WARNING = 'The Handsontable instance bound to this component was destroyed and cannot be' +\n ' used properly.';\n\n@Injectable()\nexport class HotTableRegisterer {\n public getInstance(id: string): Handsontable {\n const hotInstance = instances.get(id);\n\n if (hotInstance.isDestroyed) {\n console.warn(HOT_DESTROYED_WARNING);\n\n return null;\n }\n\n return hotInstance;\n }\n\n public registerInstance(id: string, instance: Handsontable): Map<string, Handsontable> {\n return instances.set(id, instance);\n }\n\n public removeInstance(id: string): boolean {\n return instances.delete(id);\n }\n}\n","import { Injectable, SimpleChanges } from '@angular/core';\nimport Handsontable from 'handsontable/base';\n\nconst AVAILABLE_OPTIONS: string[] = Object.keys(Handsontable.DefaultSettings);\nconst AVAILABLE_HOOKS: string[] = Handsontable.hooks.getRegistered();\n\n@Injectable()\nexport class HotSettingsResolver {\n mergeSettings(component): object {\n const isSettingsObject = typeof component['settings'] === 'object';\n const mergedSettings: Handsontable.GridSettings = isSettingsObject ? component['settings'] : {};\n const options = AVAILABLE_HOOKS.concat(AVAILABLE_OPTIONS);\n\n options.forEach(key => {\n const isHook = AVAILABLE_HOOKS.indexOf(key) > -1;\n let option;\n\n if (isSettingsObject && isHook) {\n option = component['settings'][key];\n }\n\n if (component[key] !== void 0) {\n option = component[key];\n }\n\n if (option === void 0) {\n return;\n\n } else if (typeof option === 'function' && isHook) {\n mergedSettings[key] = function(...args) {\n return component._ngZone.run(() => {\n return option.apply(this, args);\n });\n };\n\n } else {\n mergedSettings[key] = option;\n }\n });\n\n return mergedSettings;\n }\n\n prepareChanges(changes: SimpleChanges): Handsontable.GridSettings {\n const result: Handsontable.GridSettings = {};\n const parameters: string[] = Object.keys(changes);\n\n parameters.forEach((param) => {\n if (changes.hasOwnProperty(param)) {\n result[param] = changes[param].currentValue;\n }\n });\n\n return result;\n }\n}\n","import {\n AfterViewInit,\n Component,\n Input,\n NgZone,\n OnChanges,\n OnDestroy,\n SimpleChanges,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport Handsontable from 'handsontable/base';\nimport {\n HotTableRegisterer,\n HOT_DESTROYED_WARNING\n} from './hot-table-registerer.service';\nimport { HotSettingsResolver } from './hot-settings-resolver.service';\nimport { HotColumnComponent } from './hot-column.component';\n\n@Component({\n selector: 'hot-table',\n template: '<div #container [id]=\"hotId\"></div>',\n encapsulation: ViewEncapsulation.None,\n providers: [ HotTableRegisterer, HotSettingsResolver ],\n})\nexport class HotTableComponent implements AfterViewInit, OnChanges, OnDestroy {\n @ViewChild('container', { static: false }) public container;\n\n private __hotInstance: Handsontable = null;\n private columnsComponents: HotColumnComponent[] = [];\n // component inputs\n @Input() settings: Handsontable.GridSettings;\n @Input() hotId = '';\n // handsontable options\n @Input() activeHeaderClassName: Handsontable.GridSettings['activeHeaderClassName'];\n @Input() allowEmpty: Handsontable.GridSettings['allowEmpty'];\n @Input() allowHtml: Handsontable.GridSettings['allowHtml'];\n @Input() allowInsertColumn: Handsontable.GridSettings['allowInsertColumn'];\n @Input() allowInsertRow: Handsontable.GridSettings['allowInsertRow'];\n @Input() allowInvalid: Handsontable.GridSettings['allowInvalid'];\n @Input() allowRemoveColumn: Handsontable.GridSettings['allowRemoveColumn'];\n @Input() allowRemoveRow: Handsontable.GridSettings['allowRemoveRow'];\n @Input() autoColumnSize: Handsontable.GridSettings['autoColumnSize'];\n @Input() autoRowSize: Handsontable.GridSettings['autoRowSize'];\n @Input() autoWrapCol: Handsontable.GridSettings['autoWrapCol'];\n @Input() autoWrapRow: Handsontable.GridSettings['autoWrapRow'];\n @Input() bindRowsWithHeaders: Handsontable.GridSettings['bindRowsWithHeaders'];\n @Input() cell: Handsontable.GridSettings['cell'];\n @Input() cells: Handsontable.GridSettings['cells'];\n @Input() checkedTemplate: Handsontable.GridSettings['checkedTemplate'];\n @Input() className: Handsontable.GridSettings['className'];\n @Input() colHeaders: Handsontable.GridSettings['colHeaders'];\n @Input() collapsibleColumns: Handsontable.GridSettings['collapsibleColumns'];\n @Input() columnHeaderHeight: Handsontable.GridSettings['columnHeaderHeight'];\n @Input() columns: Handsontable.GridSettings['columns'];\n @Input() columnSorting: Handsontable.GridSettings['columnSorting'];\n @Input() columnSummary: Handsontable.GridSettings['columnSummary'];\n @Input() colWidths: Handsontable.GridSettings['colWidths'];\n @Input() commentedCellClassName: Handsontable.GridSettings['commentedCellClassName'];\n @Input() comments: Handsontable.GridSettings['comments'];\n @Input() contextMenu: Handsontable.GridSettings['contextMenu'];\n @Input() copyable: Handsontable.GridSettings['copyable'];\n @Input() copyPaste: Handsontable.GridSettings['copyPaste'];\n @Input() correctFormat: Handsontable.GridSettings['correctFormat'];\n @Input() currentColClassName: Handsontable.GridSettings['currentColClassName'];\n @Input() currentHeaderClassName: Handsontable.GridSettings['currentHeaderClassName'];\n @Input() currentRowClassName: Handsontable.GridSettings['currentRowClassName'];\n @Input() customBorders: Handsontable.GridSettings['customBorders'];\n @Input() data: Handsontable.GridSettings['data'];\n @Input() dataSchema: Handsontable.GridSettings['dataSchema'];\n @Input() dateFormat: Handsontable.GridSettings['dateFormat'];\n @Input() defaultDate: Handsontable.GridSettings['defaultDate'];\n @Input() disableVisualSelection: Handsontable.GridSettings['disableVisualSelection'];\n @Input() dragToScroll: Handsontable.GridSettings['dragToScroll'];\n @Input() dropdownMenu: Handsontable.GridSettings['dropdownMenu'];\n @Input() editor: Handsontable.GridSettings['editor'];\n @Input() enterBeginsEditing: Handsontable.GridSettings['enterBeginsEditing'];\n @Input() enterMoves: Handsontable.GridSettings['enterMoves'];\n @Input() fillHandle: Handsontable.GridSettings['fillHandle'];\n @Input() filter: Handsontable.GridSettings['filter'];\n @Input() filteringCaseSensitive: Handsontable.GridSettings['filteringCaseSensitive'];\n @Input() filters: Handsontable.GridSettings['filters'];\n @Input() fixedColumnsLeft: Handsontable.GridSettings['fixedColumnsLeft'];\n @Input() fixedRowsBottom: Handsontable.GridSettings['fixedRowsBottom'];\n @Input() fixedRowsTop: Handsontable.GridSettings['fixedRowsTop'];\n @Input() formulas: Handsontable.GridSettings['formulas'];\n @Input() fragmentSelection: Handsontable.GridSettings['fragmentSelection'];\n @Input() height: Handsontable.GridSettings['height'];\n @Input() hiddenColumns: Handsontable.GridSettings['hiddenColumns'];\n @Input() hiddenRows: Handsontable.GridSettings['hiddenRows'];\n @Input() invalidCellClassName: Handsontable.GridSettings['invalidCellClassName'];\n @Input() label: Handsontable.GridSettings['label'];\n @Input() language: Handsontable.GridSettings['language'];\n @Input() licenseKey: Handsontable.GridSettings['licenseKey'];\n @Input() manualColumnFreeze: Handsontable.GridSettings['manualColumnFreeze'];\n @Input() manualColumnMove: Handsontable.GridSettings['manualColumnMove'];\n @Input() manualColumnResize: Handsontable.GridSettings['manualColumnResize'];\n @Input() manualRowMove: Handsontable.GridSettings['manualRowMove'];\n @Input() manualRowResize: Handsontable.GridSettings['manualRowResize'];\n @Input() maxCols: Handsontable.GridSettings['maxCols'];\n @Input() maxRows: Handsontable.GridSettings['maxRows'];\n @Input() mergeCells: Handsontable.GridSettings['mergeCells'];\n @Input() minCols: Handsontable.GridSettings['minCols'];\n @Input() minRows: Handsontable.GridSettings['minRows'];\n @Input() minSpareCols: Handsontable.GridSettings['minSpareCols'];\n @Input() minSpareRows: Handsontable.GridSettings['minSpareRows'];\n @Input() multiColumnSorting: Handsontable.GridSettings['multiColumnSorting'];\n @Input() nestedHeaders: Handsontable.GridSettings['nestedHeaders'];\n @Input() nestedRows: Handsontable.GridSettings['nestedRows'];\n @Input() noWordWrapClassName: Handsontable.GridSettings['noWordWrapClassName'];\n @Input() numericFormat: Handsontable.GridSettings['numericFormat'];\n @Input() observeDOMVisibility: Handsontable.GridSettings['observeDOMVisibility'];\n @Input() outsideClickDeselects: Handsontable.GridSettings['outsideClickDeselects'];\n @Input() persistentState: Handsontable.GridSettings['persistentState'];\n @Input() placeholder: Handsontable.GridSettings['placeholder'];\n @Input() placeholderCellClassName: Handsontable.GridSettings['placeholderCellClassName'];\n @Input() preventOverflow: Handsontable.GridSettings['preventOverflow'];\n @Input() preventWheel: Handsontable.GridSettings['preventWheel'];\n @Input() readOnly: Handsontable.GridSettings['readOnly'];\n @Input() readOnlyCellClassName: Handsontable.GridSettings['readOnlyCellClassName'];\n @Input() renderAllRows: Handsontable.GridSettings['renderAllRows'];\n @Input() renderer: Handsontable.GridSettings['renderer'];\n @Input() rowHeaders: Handsontable.GridSettings['rowHeaders'];\n @Input() rowHeaderWidth: Handsontable.GridSettings['rowHeaderWidth'];\n @Input() rowHeights: Handsontable.GridSettings['rowHeights'];\n @Input() search: Handsontable.GridSettings['search'];\n @Input() selectionMode: Handsontable.GridSettings['selectionMode'];\n @Input() selectOptions: Handsontable.GridSettings['selectOptions'];\n @Input() skipColumnOnPaste: Handsontable.GridSettings['skipColumnOnPaste'];\n @Input() skipRowOnPaste: any;\n @Input() sortByRelevance: Handsontable.GridSettings['sortByRelevance'];\n @Input() source: Handsontable.GridSettings['source'];\n @Input() startCols: Handsontable.GridSettings['startCols'];\n @Input() startRows: Handsontable.GridSettings['startRows'];\n @Input() stretchH: Handsontable.GridSettings['stretchH'];\n @Input() strict: Handsontable.GridSettings['strict'];\n @Input() tableClassName: Handsontable.GridSettings['tableClassName'];\n @Input() tabMoves: Handsontable.GridSettings['tabMoves'];\n @Input() title: Handsontable.GridSettings['title'];\n @Input() trimDropdown: Handsontable.GridSettings['trimDropdown'];\n @Input() trimRows: Handsontable.GridSettings['nestedRows'];\n @Input() trimWhitespace: Handsontable.GridSettings['trimWhitespace'];\n @Input() type: Handsontable.GridSettings['type'];\n @Input() uncheckedTemplate: Handsontable.GridSettings['uncheckedTemplate'];\n @Input() undo: Handsontable.GridSettings['undo'];\n @Input() validator: Handsontable.GridSettings['validator'];\n @Input() viewportColumnRenderingOffset: Handsontable.GridSettings['viewportColumnRenderingOffset'];\n @Input() viewportRowRenderingOffset: Handsontable.GridSettings['viewportRowRenderingOffset'];\n @Input() visibleRows: Handsontable.GridSettings['visibleRows'];\n @Input() width: Handsontable.GridSettings['width'];\n @Input() wordWrap: Handsontable.GridSettings['wordWrap'];\n\n // handsontable hooks\n @Input() afterAddChild: Handsontable.GridSettings['afterAddChild'];\n @Input() afterAutofill: Handsontable.GridSettings['afterAutofill'];\n @Input() afterBeginEditing: Handsontable.GridSettings['afterBeginEditing'];\n @Input() afterCellMetaReset: Handsontable.GridSettings['afterCellMetaReset'];\n @Input() afterChange: Handsontable.GridSettings['afterChange'];\n @Input() afterChangesObserved: Handsontable.GridSettings['afterChangesObserved'];\n @Input() afterColumnCollapse: Handsontable.GridSettings['afterColumnCollapse'];\n @Input() afterColumnExpand: Handsontable.GridSettings['afterColumnExpand'];\n @Input() afterColumnMove: Handsontable.GridSettings['afterColumnMove'];\n @Input() afterColumnResize: Handsontable.GridSettings['afterColumnResize'];\n @Input() afterColumnSort: Handsontable.GridSettings['afterColumnSort'];\n @Input() afterContextMenuDefaultOptions: Handsontable.GridSettings['afterContextMenuDefaultOptions'];\n @Input() afterContextMenuHide: Handsontable.GridSettings['afterContextMenuHide'];\n @Input() afterContextMenuShow: Handsontable.GridSettings['afterContextMenuShow'];\n @Input() afterCopy: Handsontable.GridSettings['afterCopy'];\n @Input() afterCopyLimit: Handsontable.GridSettings['afterCopyLimit'];\n @Input() afterCreateCol: Handsontable.GridSettings['afterCreateCol'];\n @Input() afterCreateRow: Handsontable.GridSettings['afterCreateRow'];\n @Input() afterCut: Handsontable.GridSettings['afterCut'];\n @Input() afterDeselect: Handsontable.GridSettings['afterDeselect'];\n @Input() afterDestroy: Handsontable.GridSettings['afterDestroy'];\n @Input() afterDetachChild: Handsontable.GridSettings['afterDetachChild'];\n @Input() afterDocumentKeyDown: Handsontable.GridSettings['afterDocumentKeyDown'];\n @Input() afterDrawSelection: Handsontable.GridSettings['afterDrawSelection'];\n @Input() afterDropdownMenuDefaultOptions: Handsontable.GridSettings['afterDropdownMenuDefaultOptions'];\n @Input() afterDropdownMenuHide: Handsontable.GridSettings['afterDropdownMenuHide'];\n @Input() afterDropdownMenuShow: Handsontable.GridSettings['afterDropdownMenuShow'];\n @Input() afterFilter: Handsontable.GridSettings['afterFilter'];\n @Input() afterGetCellMeta: Handsontable.GridSettings['afterGetCellMeta'];\n @Input() afterGetColHeader: Handsontable.GridSettings['afterGetColHeader'];\n @Input() afterGetColumnHeaderRenderers: Handsontable.GridSettings['afterGetColumnHeaderRenderers'];\n @Input() afterGetRowHeader: Handsontable.GridSettings['afterGetRowHeader'];\n @Input() afterGetRowHeaderRenderers: Handsontable.GridSettings['afterGetRowHeaderRenderers'];\n @Input() afterHideColumns: Handsontable.GridSettings['afterHideColumns'];\n @Input() afterHideRows: Handsontable.GridSettings['afterHideRows'];\n @Input() afterInit: Handsontable.GridSettings['afterInit'];\n @Input() afterLanguageChange: Handsontable.GridSettings['afterLanguageChange'];\n @Input() afterListen: Handsontable.GridSettings['afterListen'];\n @Input() afterLoadData: Handsontable.GridSettings['afterLoadData'];\n @Input() afterMergeCells: Handsontable.GridSettings['afterMergeCells'];\n @Input() afterModifyTransformEnd: Handsontable.GridSettings['afterModifyTransformEnd'];\n @Input() afterModifyTransformStart: Handsontable.GridSettings['afterModifyTransformStart'];\n @Input() afterMomentumScroll: Handsontable.GridSettings['afterMomentumScroll'];\n @Input() afterOnCellContextMenu: Handsontable.GridSettings['afterOnCellContextMenu'];\n @Input() afterOnCellCornerDblClick: Handsontable.GridSettings['afterOnCellCornerDblClick'];\n @Input() afterOnCellCornerMouseDown: Handsontable.GridSettings['afterOnCellCornerMouseDown'];\n @Input() afterOnCellMouseDown: Handsontable.GridSettings['afterOnCellMouseDown'];\n @Input() afterOnCellMouseOut: Handsontable.GridSettings['afterOnCellMouseOut'];\n @Input() afterOnCellMouseOver: Handsontable.GridSettings['afterOnCellMouseOver'];\n @Input() afterOnCellMouseUp: Handsontable.GridSettings['afterOnCellMouseUp'];\n @Input() afterPaste: Handsontable.GridSettings['afterPaste'];\n @Input() afterPluginsInitialized: Handsontable.GridSettings['afterPluginsInitialized'];\n @Input() afterRedo: Handsontable.GridSettings['afterRedo'];\n @Input() afterRedoStackChange: Handsontable.GridSettings['afterRedoStackChange'];\n @Input() afterRefreshDimensions: Handsontable.GridSettings['afterRefreshDimensions'];\n @Input() afterRemoveCellMeta: Handsontable.GridSettings['afterRemoveCellMeta'];\n @Input() afterRemoveCol: Handsontable.GridSettings['afterRemoveCol'];\n @Input() afterRemoveRow: Handsontable.GridSettings['afterRemoveRow'];\n @Input() afterRender: Handsontable.GridSettings['afterRender'];\n @Input() afterRenderer: Handsontable.GridSettings['afterRenderer'];\n @Input() afterRowMove: Handsontable.GridSettings['afterRowMove'];\n @Input() afterRowResize: Handsontable.GridSettings['afterRowResize'];\n @Input() afterScrollHorizontally: Handsontable.GridSettings['afterScrollHorizontally'];\n @Input() afterScrollVertically: Handsontable.GridSettings['afterScrollVertically'];\n @Input() afterSelection: Handsontable.GridSettings['afterSelection'];\n @Input() afterSelectionByProp: Handsontable.GridSettings['afterSelectionByProp'];\n @Input() afterSelectionEnd: Handsontable.GridSettings['afterSelectionEnd'];\n @Input() afterSelectionEndByProp: Handsontable.GridSettings['afterSelectionEndByProp'];\n @Input() afterSetCellMeta: Handsontable.GridSettings['afterSetCellMeta'];\n @Input() afterSetDataAtCell: Handsontable.GridSettings['afterSetDataAtCell'];\n @Input() afterSetDataAtRowProp: Handsontable.GridSettings['afterSetDataAtRowProp'];\n @Input() afterSetSourceDataAtCell: Handsontable.GridSettings['afterSetSourceDataAtCell'];\n @Input() afterTrimRow: Handsontable.GridSettings['afterTrimRow'];\n @Input() afterUndo: Handsontable.GridSettings['afterUndo'];\n @Input() afterUndoStackChange: Handsontable.GridSettings['afterUndoStackChange'];\n @Input() afterUnhideColumns: Handsontable.GridSettings['afterUnhideColumns'];\n @Input() afterUnhideRows: Handsontable.GridSettings['afterUnhideRows'];\n @Input() afterUnlisten: Handsontable.GridSettings['afterUnlisten'];\n @Input() afterUnmergeCells: Handsontable.GridSettings['afterUnmergeCells'];\n @Input() afterUntrimRow: Handsontable.GridSettings['afterUntrimRow'];\n @Input() afterUpdateSettings: Handsontable.GridSettings['afterUpdateSettings'];\n @Input() afterValidate: Handsontable.GridSettings['afterValidate'];\n @Input() afterViewportColumnCalculatorOverride: Handsontable.GridSettings['afterViewportColumnCalculatorOverride'];\n @Input() afterViewportRowCalculatorOverride: Handsontable.GridSettings['afterViewportRowCalculatorOverride'];\n @Input() afterViewRender: Handsontable.GridSettings['afterViewRender'];\n @Input() beforeAddChild: Handsontable.GridSettings['beforeAddChild'];\n @Input() beforeAutofill: Handsontable.GridSettings['beforeAutofill'];\n @Input() beforeAutofillInsidePopulate: Handsontable.GridSettings['beforeAutofillInsidePopulate'];\n @Input() beforeCellAlignment: Handsontable.GridSettings['beforeCellAlignment'];\n @Input() beforeChange: Handsontable.GridSettings['beforeChange'];\n @Input() beforeChangeRender: Handsontable.GridSettings['beforeChangeRender'];\n @Input() beforeColumnCollapse: Handsontable.GridSettings['beforeColumnCollapse'];\n @Input() beforeColumnExpand: Handsontable.GridSettings['beforeColumnExpand'];\n @Input() beforeColumnMove: Handsontable.GridSettings['beforeColumnMove'];\n @Input() beforeColumnResize: Handsontable.GridSettings['beforeColumnResize'];\n @Input() beforeColumnSort: Handsontable.GridSettings['beforeColumnSort'];\n @Input() beforeContextMenuSetItems: Handsontable.GridSettings['beforeContextMenuSetItems'];\n @Input() beforeContextMenuShow: Handsontable.GridSettings['beforeContextMenuShow'];\n @Input() beforeCopy: Handsontable.GridSettings['beforeCopy'];\n @Input() beforeCreateCol: Handsontable.GridSettings['beforeCreateCol'];\n @Input() beforeCreateRow: Handsontable.GridSettings['beforeCreateRow'];\n @Input() beforeCut: Handsontable.GridSettings['beforeCut'];\n @Input() beforeDetachChild: Handsontable.GridSettings['beforeDetachChild'];\n @Input() beforeDrawBorders: Handsontable.GridSettings['beforeDrawBorders'];\n @Input() beforeDropdownMenuSetItems: Handsontable.GridSettings['beforeDropdownMenuSetItems'];\n @Input() beforeDropdownMenuShow: Handsontable.GridSettings['beforeDropdownMenuShow'];\n @Input() beforeFilter: Handsontable.GridSettings['beforeFilter'];\n @Input() beforeGetCellMeta: Handsontable.GridSettings['beforeGetCellMeta'];\n @Input() beforeHideColumns: Handsontable.GridSettings['beforeHideColumns'];\n @Input() beforeHideRows: Handsontable.GridSettings['beforeHideRows'];\n @Input() beforeInit: Handsontable.GridSettings['beforeInit'];\n @Input() beforeInitWalkontable: Handsontable.GridSettings['beforeInitWalkontable'];\n @Input() beforeKeyDown: Handsontable.GridSettings['beforeKeyDown'];\n @Input() beforeLanguageChange: Handsontable.GridSettings['beforeLanguageChange'];\n @Input() beforeLoadData: Handsontable.GridSettings['beforeLoadData'];\n @Input() beforeMergeCells: Handsontable.GridSettings['beforeMergeCells'];\n @Input() beforeOnCellContextMenu: Handsontable.GridSettings['beforeOnCellContextMenu'];\n @Input() beforeOnCellMouseDown: Handsontable.GridSettings['beforeOnCellMouseDown'];\n @Input() beforeOnCellMouseOut: Handsontable.GridSettings['beforeOnCellMouseOut'];\n @Input() beforeOnCellMouseOver: Handsontable.GridSettings['beforeOnCellMouseOver'];\n @Input() beforeOnCellMouseUp: Handsontable.GridSettings['beforeOnCellMouseUp'];\n @Input() beforePaste: Handsontable.GridSettings['beforePaste'];\n @Input() beforeRedo: Handsontable.GridSettings['beforeRedo'];\n @Input() beforeRedoStackChange: Handsontable.GridSettings['beforeRedoStackChange'];\n @Input() beforeRefreshDimensions: Handsontable.GridSettings['beforeRefreshDimensions'];\n @Input() beforeRemoveCellClassNames: Handsontable.GridSettings['beforeRemoveCellClassNames'];\n @Input() beforeRemoveCellMeta: Handsontable.GridSettings['beforeRemoveCellMeta'];\n @Input() beforeRemoveCol: Handsontable.GridSettings['beforeRemoveCol'];\n @Input() beforeRemoveRow: Handsontable.GridSettings['beforeRemoveRow'];\n @Input() beforeRender: Handsontable.GridSettings['beforeRender'];\n @Input() beforeRenderer: Handsontable.GridSettings['beforeRenderer'];\n @Input() beforeRowMove: Handsontable.GridSettings['beforeRowMove'];\n @Input() beforeRowResize: Handsontable.GridSettings['beforeRowResize'];\n @Input() beforeSetCellMeta: Handsontable.GridSettings['beforeSetCellMeta'];\n @Input() beforeSetRangeEnd: Handsontable.GridSettings['beforeSetRangeEnd'];\n @Input() beforeSetRangeStart: Handsontable.GridSettings['beforeSetRangeStart'];\n @Input() beforeSetRangeStartOnly: Handsontable.GridSettings['beforeSetRangeStartOnly'];\n @Input() beforeStretchingColumnWidth: Handsontable.GridSettings['beforeStretchingColumnWidth'];\n @Input() beforeTouchScroll: Handsontable.GridSettings['beforeTouchScroll'];\n @Input() beforeTrimRow: Handsontable.GridSettings['beforeTrimRow'];\n @Input() beforeUndo: Handsontable.GridSettings['beforeUndo'];\n @Input() beforeUndoStackChange: Handsontable.GridSettings['beforeUndoStackChange'];\n @Input() beforeUnhideColumns: Handsontable.GridSettings['beforeUnhideColumns'];\n @Input() beforeUnhideRows: Handsontable.GridSettings['beforeUnhideRows'];\n @Input() beforeUnmergeCells: Handsontable.GridSettings['beforeUnmergeCells'];\n @Input() beforeUntrimRow: Handsontable.GridSettings['beforeUntrimRow'];\n @Input() beforeValidate: Handsontable.GridSettings['beforeValidate'];\n @Input() beforeValueRender: Handsontable.GridSettings['beforeValueRender'];\n @Input() beforeViewRender: Handsontable.GridSettings['beforeViewRender'];\n @Input() construct: Handsontable.GridSettings['construct'];\n @Input() init: Handsontable.GridSettings['init'];\n @Input() modifyAutoColumnSizeSeed: Handsontable.GridSettings['modifyAutoColumnSizeSeed'];\n @Input() modifyAutofillRange: Handsontable.GridSettings['modifyAutofillRange'];\n @Input() modifyColHeader: Handsontable.GridSettings['modifyColHeader'];\n @Input() modifyColumnHeaderHeight: Handsontable.GridSettings['modifyColumnHeaderHeight'];\n @Input() modifyColWidth: Handsontable.GridSettings['modifyColWidth'];\n @Input() modifyCopyableRange: Handsontable.GridSettings['modifyCopyableRange'];\n @Input() modifyData: Handsontable.GridSettings['modifyData'];\n @Input() modifyGetCellCoords: Handsontable.GridSettings['modifyGetCellCoords'];\n @Input() modifyRowData: Handsontable.GridSettings['modifyRowData'];\n @Input() modifyRowHeader: Handsontable.GridSettings['modifyRowHeader'];\n @Input() modifyRowHeaderWidth: Handsontable.GridSettings['modifyRowHeaderWidth'];\n @Input() modifyRowHeight: Handsontable.GridSettings['modifyRowHeight'];\n @Input() modifySourceData: Handsontable.GridSettings['modifySourceData'];\n @Input() modifyTransformEnd: Handsontable.GridSettings['modifyTransformEnd'];\n @Input() modifyTransformStart: Handsontable.GridSettings['modifyTransformStart'];\n @Input() persistentStateLoad: Handsontable.GridSettings['persistentStateLoad'];\n @Input() persistentStateReset: Handsontable.GridSettings['persistentStateReset'];\n @Input() persistentStateSave: Handsontable.GridSettings['persistentStateSave'];\n\n constructor(\n private _ngZone: NgZone,\n private _hotTableRegisterer: HotTableRegisterer,\n private _hotSettingsResolver: HotSettingsResolver,\n ) {}\n\n private get hotInstance(): Handsontable | null {\n if (!this.__hotInstance || (this.__hotInstance && !this.__hotInstance.isDestroyed)) {\n\n // Will return the Handsontable instance or `null` if it's not yet been created.\n return this.__hotInstance;\n\n } else {\n this._hotTableRegisterer.removeInstance(this.hotId);\n\n console.warn(HOT_DESTROYED_WARNING);\n\n return null;\n }\n }\n\n private set hotInstance(hotInstance) {\n this.__hotInstance = hotInstance;\n }\n\n ngAfterViewInit(): void {\n const options: Handsontable.GridSettings = this._hotSettingsResolver.mergeSettings(this);\n\n if (this.columnsComponents.length > 0) {\n const columns = [];\n\n this.columnsComponents.forEach((column) => {\n columns.push(this._hotSettingsResolver.mergeSettings(column));\n });\n\n options['columns'] = columns;\n }\n\n this._ngZone.runOutsideAngular(() => {\n this.hotInstance = new Handsontable.Core(this.container.nativeElement, options);\n\n if (this.hotId) {\n this._hotTableRegisterer.registerInstance(this.hotId, this.hotInstance);\n }\n // @ts-ignore\n this.hotInstance.init();\n });\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (this.hotInstance === null) {\n return;\n }\n\n const newOptions: Handsontable.GridSettings = this._hotSettingsResolver.prepareChanges(changes);\n\n this.updateHotTable(newOptions);\n }\n\n ngOnDestroy(): void {\n this._ngZone.runOutsideAngular(() => {\n if (this.hotInstance) {\n this.hotInstance.destroy();\n }\n });\n\n if (this.hotId) {\n this._hotTableRegisterer.removeInstance(this.hotId);\n }\n }\n\n updateHotTable(newSettings: Handsontable.GridSettings ): void {\n if (!this.hotInstance) {\n return;\n }\n\n this._ngZone.runOutsideAngular(() => {\n this.hotInstance.updateSettings(newSettings, false);\n });\n }\n\n onAfterColumnsChange(): void {\n if (this.columnsComponents === void 0) {\n return;\n }\n\n if (this.columnsComponents.length > 0) {\n const columns: Handsontable.ColumnSettings[] = [];\n\n this.columnsComponents.forEach((column) => {\n columns.push(this._hotSettingsResolver.mergeSettings(column));\n });\n\n const newOptions = {\n columns: columns\n };\n\n this.updateHotTable(newOptions);\n }\n }\n\n onAfterColumnsNumberChange(): void {\n const columns: Handsontable.ColumnSettings[] = [];\n\n if (this.columnsComponents.length > 0) {\n this.columnsComponents.forEach((column) => {\n columns.push(this._hotSettingsResolver.mergeSettings(column));\n });\n }\n\n this.updateHotTable({ columns });\n }\n\n addColumn(column: HotColumnComponent): void {\n this.columnsComponents.push(column);\n this.onAfterColumnsNumberChange();\n }\n\n removeColumn(column: HotColumnComponent): void {\n const index: number = this.columnsComponents.indexOf(column);\n\n this.columnsComponents.splice(index, 1);\n this.onAfterColumnsNumberChange();\n }\n\n}\n","import {\n Component,\n OnInit,\n OnChanges,\n OnDestroy,\n Input,\n} from '@angular/core';\nimport { HotTableComponent } from './hot-table.component';\nimport Handsontable from 'handsontable/base';\n\n@Component({\n selector: 'hot-column',\n template: '',\n})\nexport class HotColumnComponent implements OnInit, OnChanges, OnDestroy {\n private firstRun = true;\n // handsontable column options\n @Input() allowEmpty: Handsontable.ColumnSettings['allowEmpty'];\n @Input() allowHtml: Handsontable.ColumnSettings['allowHtml'];\n @Input() allowInvalid: Handsontable.ColumnSettings['allowInvalid'];\n @Input() checkedTemplate: Handsontable.ColumnSettings['checkedTemplate'];\n @Input() className: Handsontable.ColumnSettings['className'];\n @Input() columnSorting: Handsontable.ColumnSettings['columnSorting'];\n @Input() colWidths: Handsontable.ColumnSettings['colWidths'];\n @Input() commentedCellClassName: Handsontable.ColumnSettings['commentedCellClassName'];\n @Input() copyable: Handsontable.ColumnSettings['copyable'];\n @Input() correctFormat: Handsontable.ColumnSettings['correctFormat'];\n @Input() data: Handsontable.ColumnSettings['data'];\n @Input() dateFormat: Handsontable.ColumnSettings['dateFormat'];\n @Input() defaultDate: Handsontable.ColumnSettings['defaultDate'];\n @Input() editor: Handsontable.ColumnSettings['editor'];\n @Input() filteringCaseSensitive: Handsontable.ColumnSettings['filteringCaseSensitive'];\n @Input() invalidCellClassName: Handsontable.ColumnSettings['invalidCellClassName'];\n @Input() label: Handsontable.ColumnSettings['label'];\n @Input() language: Handsontable.ColumnSettings['language'];\n @Input() noWordWrapClassName: Handsontable.ColumnSettings['noWordWrapClassName'];\n @Input() numericFormat: Handsontable.ColumnSettings['numericFormat'];\n @Input() placeholder: Handsontable.ColumnSettings['placeholder'];\n @Input() placeholderCellClassName: Handsontable.ColumnSettings['placeholderCellClassName'];\n @Input() readOnly: Handsontable.ColumnSettings['readOnly'];\n @Input() readOnlyCellClassName: Handsontable.ColumnSettings['readOnlyCellClassName'];\n @Input() renderer: Handsontable.ColumnSettings['renderer'];\n @Input() selectOptions: Handsontable.ColumnSettings['selectOptions'];\n @Input() skipColumnOnPaste: Handsontable.ColumnSettings['skipColumnOnPaste'];\n @Input() sortByRelevance: Handsontable.ColumnSettings['sortByRelevance'];\n @Input() source: Handsontable.ColumnSettings['source'];\n @Input() strict: Handsontable.ColumnSettings['strict'];\n @Input() title: Handsontable.ColumnSettings['title'];\n @Input() trimDropdown: Handsontable.ColumnSettings['trimDropdown'];\n @Input() type: Handsontable.ColumnSettings['type'];\n @Input() uncheckedTemplate: Handsontable.ColumnSettings['uncheckedTemplate'];\n @Input() validator: Handsontable.ColumnSettings['validator'];\n @Input() visibleRows: Handsontable.ColumnSettings['visibleRows'];\n @Input() width: Handsontable.ColumnSettings['width'];\n @Input() wordWrap: Handsontable.ColumnSettings['wordWrap'];\n\n constructor(private parentComponent: HotTableComponent) {}\n\n ngOnInit(): void {\n this.firstRun = false;\n this.parentComponent.addColumn(this);\n }\n\n ngOnChanges(): void {\n if (this.firstRun) {\n return;\n }\n\n this.parentComponent.onAfterColumnsChange();\n }\n\n ngOnDestroy(): void {\n this.parentComponent.removeColumn(this);\n }\n}\n","import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { HotTableComponent } from './hot-table.component';\nimport { HotColumnComponent } from './hot-column.component';\nimport { HotTableRegisterer } from './hot-table-registerer.service';\n\n@NgModule({\n declarations: [\n HotTableComponent,\n HotColumnComponent,\n ],\n exports: [\n HotTableComponent,\n HotColumnComponent,\n ]\n})\nexport class HotTableModule {\n static version = '11.0.1';\n\n public static forRoot(): ModuleWithProviders<HotTableModule> {\n return {\n ngModule: HotTableModule,\n providers: [ HotTableRegisterer ],\n };\n }\n}\n"]}
|
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
/**
|
|
7
7
|
* Generated bundle index. Do not edit.
|
|
8
8
|
*/
|
|
9
|
-
export { HotTableComponent, HotColumnComponent, HotTableRegisterer, HotSettingsResolver, HotTableModule } from './public_api';
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
export { HotTableComponent, HotColumnComponent, HOT_DESTROYED_WARNING, HotTableRegisterer, HotSettingsResolver, HotTableModule } from './public_api';
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZHNvbnRhYmxlLWFuZ3VsYXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaGFuZHNvbnRhYmxlL2FuZ3VsYXIvIiwic291cmNlcyI6WyJoYW5kc29udGFibGUtYW5ndWxhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUlBLHNJQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcbiJdfQ==
|
|
@@ -174,4 +174,4 @@ if (false) {
|
|
|
174
174
|
*/
|
|
175
175
|
HotColumnComponent.prototype.parentComponent;
|
|
176
176
|
}
|
|
177
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90LWNvbHVtbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaGFuZHNvbnRhYmxlL2FuZ3VsYXIvIiwic291cmNlcyI6WyJsaWIvaG90LWNvbHVtbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUlULEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQU8xRCxNQUFNLE9BQU8sa0JBQWtCOzs7O0lBMEM3QixZQUFvQixlQUFrQztRQUFsQyxvQkFBZSxHQUFmLGVBQWUsQ0FBbUI7UUF6QzlDLGFBQVEsR0FBRyxJQUFJLENBQUM7SUF5Q2lDLENBQUM7Ozs7SUFFMUQsUUFBUTtRQUNOLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7Ozs7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUM5QyxDQUFDOzs7O0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFDLENBQUM7OztZQS9ERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFlBQVk7Z0JBQ3RCLFFBQVEsRUFBRSxFQUFFO2FBQ2I7Ozs7WUFOUSxpQkFBaUI7Ozt5QkFVdkIsS0FBSzt3QkFDTCxLQUFLOzJCQUNMLEtBQUs7OEJBQ0wsS0FBSzt3QkFDTCxLQUFLOzRCQUNMLEtBQUs7d0JBQ0wsS0FBSztxQ0FDTCxLQUFLO3VCQUNMLEtBQUs7NEJBQ0wsS0FBSzttQkFDTCxLQUFLO3lCQUNMLEtBQUs7MEJBQ0wsS0FBSztxQkFDTCxLQUFLO3FDQUNMLEtBQUs7bUNBQ0wsS0FBSztvQkFDTCxLQUFLO3VCQUNMLEtBQUs7a0NBQ0wsS0FBSzs0QkFDTCxLQUFLOzBCQUNMLEtBQUs7dUNBQ0wsS0FBSzt1QkFDTCxLQUFLO29DQUNMLEtBQUs7dUJBQ0wsS0FBSzs0QkFDTCxLQUFLO2dDQUNMLEtBQUs7OEJBQ0wsS0FBSztxQkFDTCxLQUFLO3FCQUNMLEtBQUs7b0JBQ0wsS0FBSzsyQkFDTCxLQUFLO21CQUNMLEtBQUs7Z0NBQ0wsS0FBSzt3QkFDTCxLQUFLOzBCQUNMLEtBQUs7b0JBQ0wsS0FBSzt1QkFDTCxLQUFLOzs7Ozs7O0lBdkNOLHNDQUF3Qjs7SUFFeEIsd0NBQStEOztJQUMvRCx1Q0FBNkQ7O0lBQzdELDBDQUFtRTs7SUFDbkUsNkNBQXlFOztJQUN6RSx1Q0FBNkQ7O0lBQzdELDJDQUFxRTs7SUFDckUsdUNBQTZEOztJQUM3RCxvREFBdUY7O0lBQ3ZGLHNDQUEyRDs7SUFDM0QsMkNBQXFFOztJQUNyRSxrQ0FBbUQ7O0lBQ25ELHdDQUErRDs7SUFDL0QseUNBQWlFOztJQUNqRSxvQ0FBdUQ7O0lBQ3ZELG9EQUF1Rjs7SUFDdkYsa0RBQW1GOztJQUNuRixtQ0FBcUQ7O0lBQ3JELHNDQUEyRDs7SUFDM0QsaURBQWlGOztJQUNqRiwyQ0FBcUU7O0lBQ3JFLHlDQUFpRTs7SUFDakUsc0RBQTJGOztJQUMzRixzQ0FBMkQ7O0lBQzNELG1EQUFxRjs7SUFDckYsc0NBQTJEOztJQUMzRCwyQ0FBcUU7O0lBQ3JFLCtDQUE2RTs7SUFDN0UsNkNBQXlFOztJQUN6RSxvQ0FBdUQ7O0lBQ3ZELG9DQUF1RDs7SUFDdkQsbUNBQXFEOztJQUNyRCwwQ0FBbUU7O0lBQ25FLGtDQUFtRDs7SUFDbkQsK0NBQTZFOztJQUM3RSx1Q0FBNkQ7O0lBQzdELHlDQUFpRTs7SUFDakUsbUNBQXFEOztJQUNyRCxzQ0FBMkQ7Ozs7O0lBRS9DLDZDQUEwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgT25Jbml0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgSW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSG90VGFibGVDb21wb25lbnQgfSBmcm9tICcuL2hvdC10YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IEhhbmRzb250YWJsZSBmcm9tICdoYW5kc29udGFibGUvYmFzZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2hvdC1jb2x1bW4nLFxuICB0ZW1wbGF0ZTogJycsXG59KVxuZXhwb3J0IGNsYXNzIEhvdENvbHVtbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGZpcnN0UnVuID0gdHJ1ZTtcbiAgLy8gaGFuZHNvbnRhYmxlIGNvbHVtbiBvcHRpb25zXG4gIEBJbnB1dCgpIGFsbG93RW1wdHk6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1snYWxsb3dFbXB0eSddO1xuICBASW5wdXQoKSBhbGxvd0h0bWw6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1snYWxsb3dIdG1sJ107XG4gIEBJbnB1dCgpIGFsbG93SW52YWxpZDogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWydhbGxvd0ludmFsaWQnXTtcbiAgQElucHV0KCkgY2hlY2tlZFRlbXBsYXRlOiBIYW5kc29udGFibGUuQ29sdW1uU2V0dGluZ3NbJ2NoZWNrZWRUZW1wbGF0ZSddO1xuICBASW5wdXQoKSBjbGFzc05hbWU6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1snY2xhc3NOYW1lJ107XG4gIEBJbnB1dCgpIGNvbHVtblNvcnRpbmc6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1snY29sdW1uU29ydGluZyddO1xuICBASW5wdXQoKSBjb2xXaWR0aHM6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1snY29sV2lkdGhzJ107XG4gIEBJbnB1dCgpIGNvbW1lbnRlZENlbGxDbGFzc05hbWU6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1snY29tbWVudGVkQ2VsbENsYXNzTmFtZSddO1xuICBASW5wdXQoKSBjb3B5YWJsZTogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWydjb3B5YWJsZSddO1xuICBASW5wdXQoKSBjb3JyZWN0Rm9ybWF0OiBIYW5kc29udGFibGUuQ29sdW1uU2V0dGluZ3NbJ2NvcnJlY3RGb3JtYXQnXTtcbiAgQElucHV0KCkgZGF0YTogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWydkYXRhJ107XG4gIEBJbnB1dCgpIGRhdGVGb3JtYXQ6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1snZGF0ZUZvcm1hdCddO1xuICBASW5wdXQoKSBkZWZhdWx0RGF0ZTogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWydkZWZhdWx0RGF0ZSddO1xuICBASW5wdXQoKSBlZGl0b3I6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1snZWRpdG9yJ107XG4gIEBJbnB1dCgpIGZpbHRlcmluZ0Nhc2VTZW5zaXRpdmU6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1snZmlsdGVyaW5nQ2FzZVNlbnNpdGl2ZSddO1xuICBASW5wdXQoKSBpbnZhbGlkQ2VsbENsYXNzTmFtZTogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWydpbnZhbGlkQ2VsbENsYXNzTmFtZSddO1xuICBASW5wdXQoKSBsYWJlbDogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWydsYWJlbCddO1xuICBASW5wdXQoKSBsYW5ndWFnZTogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWydsYW5ndWFnZSddO1xuICBASW5wdXQoKSBub1dvcmRXcmFwQ2xhc3NOYW1lOiBIYW5kc29udGFibGUuQ29sdW1uU2V0dGluZ3NbJ25vV29yZFdyYXBDbGFzc05hbWUnXTtcbiAgQElucHV0KCkgbnVtZXJpY0Zvcm1hdDogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWydudW1lcmljRm9ybWF0J107XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBIYW5kc29udGFibGUuQ29sdW1uU2V0dGluZ3NbJ3BsYWNlaG9sZGVyJ107XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyQ2VsbENsYXNzTmFtZTogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWydwbGFjZWhvbGRlckNlbGxDbGFzc05hbWUnXTtcbiAgQElucHV0KCkgcmVhZE9ubHk6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1sncmVhZE9ubHknXTtcbiAgQElucHV0KCkgcmVhZE9ubHlDZWxsQ2xhc3NOYW1lOiBIYW5kc29udGFibGUuQ29sdW1uU2V0dGluZ3NbJ3JlYWRPbmx5Q2VsbENsYXNzTmFtZSddO1xuICBASW5wdXQoKSByZW5kZXJlcjogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWydyZW5kZXJlciddO1xuICBASW5wdXQoKSBzZWxlY3RPcHRpb25zOiBIYW5kc29udGFibGUuQ29sdW1uU2V0dGluZ3NbJ3NlbGVjdE9wdGlvbnMnXTtcbiAgQElucHV0KCkgc2tpcENvbHVtbk9uUGFzdGU6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1snc2tpcENvbHVtbk9uUGFzdGUnXTtcbiAgQElucHV0KCkgc29ydEJ5UmVsZXZhbmNlOiBIYW5kc29udGFibGUuQ29sdW1uU2V0dGluZ3NbJ3NvcnRCeVJlbGV2YW5jZSddO1xuICBASW5wdXQoKSBzb3VyY2U6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1snc291cmNlJ107XG4gIEBJbnB1dCgpIHN0cmljdDogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWydzdHJpY3QnXTtcbiAgQElucHV0KCkgdGl0bGU6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1sndGl0bGUnXTtcbiAgQElucHV0KCkgdHJpbURyb3Bkb3duOiBIYW5kc29udGFibGUuQ29sdW1uU2V0dGluZ3NbJ3RyaW1Ecm9wZG93biddO1xuICBASW5wdXQoKSB0eXBlOiBIYW5kc29udGFibGUuQ29sdW1uU2V0dGluZ3NbJ3R5cGUnXTtcbiAgQElucHV0KCkgdW5jaGVja2VkVGVtcGxhdGU6IEhhbmRzb250YWJsZS5Db2x1bW5TZXR0aW5nc1sndW5jaGVja2VkVGVtcGxhdGUnXTtcbiAgQElucHV0KCkgdmFsaWRhdG9yOiBIYW5kc29udGFibGUuQ29sdW1uU2V0dGluZ3NbJ3ZhbGlkYXRvciddO1xuICBASW5wdXQoKSB2aXNpYmxlUm93czogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWyd2aXNpYmxlUm93cyddO1xuICBASW5wdXQoKSB3aWR0aDogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWyd3aWR0aCddO1xuICBASW5wdXQoKSB3b3JkV3JhcDogSGFuZHNvbnRhYmxlLkNvbHVtblNldHRpbmdzWyd3b3JkV3JhcCddO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcGFyZW50Q29tcG9uZW50OiBIb3RUYWJsZUNvbXBvbmVudCkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmZpcnN0UnVuID0gZmFsc2U7XG4gICAgdGhpcy5wYXJlbnRDb21wb25lbnQuYWRkQ29sdW1uKHRoaXMpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZmlyc3RSdW4pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnBhcmVudENvbXBvbmVudC5vbkFmdGVyQ29sdW1uc0NoYW5nZSgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5wYXJlbnRDb21wb25lbnQucmVtb3ZlQ29sdW1uKHRoaXMpO1xuICB9XG59XG4iXX0=
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
5
5
|
*/
|
|
6
6
|
import { Injectable } from '@angular/core';
|
|
7
|
-
import Handsontable from 'handsontable';
|
|
7
|
+
import Handsontable from 'handsontable/base';
|
|
8
8
|
/** @type {?} */
|
|
9
9
|
const AVAILABLE_OPTIONS = Object.keys(Handsontable.DefaultSettings);
|
|
10
10
|
/** @type {?} */
|
|
@@ -83,4 +83,4 @@ export class HotSettingsResolver {
|
|
|
83
83
|
HotSettingsResolver.decorators = [
|
|
84
84
|
{ type: Injectable }
|
|
85
85
|
];
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90LXNldHRpbmdzLXJlc29sdmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaGFuZHNvbnRhYmxlL2FuZ3VsYXIvIiwic291cmNlcyI6WyJsaWIvaG90LXNldHRpbmdzLXJlc29sdmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLFlBQVksTUFBTSxtQkFBbUIsQ0FBQzs7TUFFdkMsaUJBQWlCLEdBQWEsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDOztNQUN2RSxlQUFlLEdBQWEsWUFBWSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUU7QUFHcEUsTUFBTSxPQUFPLG1CQUFtQjs7Ozs7SUFDOUIsYUFBYSxDQUFDLFNBQVM7O2NBQ2YsZ0JBQWdCLEdBQUcsT0FBTyxTQUFTLENBQUMsVUFBVSxDQUFDLEtBQUssUUFBUTs7Y0FDNUQsY0FBYyxHQUE4QixnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFOztjQUN6RixPQUFPLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQztRQUV6RCxPQUFPLENBQUMsT0FBTzs7OztRQUFDLEdBQUcsQ0FBQyxFQUFFOztrQkFDZCxNQUFNLEdBQUcsZUFBZSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7O2dCQUM1QyxNQUFNO1lBRVYsSUFBSSxnQkFBZ0IsSUFBSSxNQUFNLEVBQUU7Z0JBQzlCLE1BQU0sR0FBRyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDckM7WUFFRCxJQUFJLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxLQUFLLENBQUMsRUFBRTtnQkFDN0IsTUFBTSxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUN6QjtZQUVELElBQUksTUFBTSxLQUFLLEtBQUssQ0FBQyxFQUFFO2dCQUNyQixPQUFPO2FBRVI7aUJBQU0sSUFBSSxPQUFPLE1BQU0sS0FBSyxVQUFVLElBQUksTUFBTSxFQUFFO2dCQUNqRCxjQUFjLENBQUMsR0FBRyxDQUFDOzs7O2dCQUFHLFVBQVMsR0FBRyxJQUFJO29CQUNwQyxPQUFPLFNBQVMsQ0FBQyxPQUFPLENBQUMsR0FBRzs7O29CQUFDLEdBQUcsRUFBRTt3QkFDOUIsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztvQkFDcEMsQ0FBQyxFQUFDLENBQUM7Z0JBQ0wsQ0FBQyxDQUFBLENBQUM7YUFFSDtpQkFBTTtnQkFDTCxjQUFjLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDO2FBQzlCO1FBQ0gsQ0FBQyxFQUFDLENBQUM7UUFFSCxPQUFPLGNBQWMsQ0FBQztJQUN4QixDQUFDOzs7OztJQUVELGNBQWMsQ0FBQyxPQUFzQjs7Y0FDN0IsTUFBTSxHQUE4QixFQUFFOztjQUN0QyxVQUFVLEdBQWEsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFakQsVUFBVSxDQUFDLE9BQU87Ozs7UUFBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQzNCLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDakMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUM7YUFDN0M7UUFDSCxDQUFDLEVBQUMsQ0FBQztRQUVILE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7OztZQWhERixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IEhhbmRzb250YWJsZSBmcm9tICdoYW5kc29udGFibGUvYmFzZSc7XG5cbmNvbnN0IEFWQUlMQUJMRV9PUFRJT05TOiBzdHJpbmdbXSA9IE9iamVjdC5rZXlzKEhhbmRzb250YWJsZS5EZWZhdWx0U2V0dGluZ3MpO1xuY29uc3QgQVZBSUxBQkxFX0hPT0tTOiBzdHJpbmdbXSA9IEhhbmRzb250YWJsZS5ob29rcy5nZXRSZWdpc3RlcmVkKCk7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBIb3RTZXR0aW5nc1Jlc29sdmVyIHtcbiAgbWVyZ2VTZXR0aW5ncyhjb21wb25lbnQpOiBvYmplY3Qge1xuICAgIGNvbnN0IGlzU2V0dGluZ3NPYmplY3QgPSB0eXBlb2YgY29tcG9uZW50WydzZXR0aW5ncyddID09PSAnb2JqZWN0JztcbiAgICBjb25zdCBtZXJnZWRTZXR0aW5nczogSGFuZHNvbnRhYmxlLkdyaWRTZXR0aW5ncyA9IGlzU2V0dGluZ3NPYmplY3QgPyBjb21wb25lbnRbJ3NldHRpbmdzJ10gOiB7fTtcbiAgICBjb25zdCBvcHRpb25zID0gQVZBSUxBQkxFX0hPT0tTLmNvbmNhdChBVkFJTEFCTEVfT1BUSU9OUyk7XG5cbiAgICBvcHRpb25zLmZvckVhY2goa2V5ID0+IHtcbiAgICAgIGNvbnN0IGlzSG9vayA9IEFWQUlMQUJMRV9IT09LUy5pbmRleE9mKGtleSkgPiAtMTtcbiAgICAgIGxldCBvcHRpb247XG5cbiAgICAgIGlmIChpc1NldHRpbmdzT2JqZWN0ICYmIGlzSG9vaykge1xuICAgICAgICBvcHRpb24gPSBjb21wb25lbnRbJ3NldHRpbmdzJ11ba2V5XTtcbiAgICAgIH1cblxuICAgICAgaWYgKGNvbXBvbmVudFtrZXldICE9PSB2b2lkIDApIHtcbiAgICAgICAgb3B0aW9uID0gY29tcG9uZW50W2tleV07XG4gICAgICB9XG5cbiAgICAgIGlmIChvcHRpb24gPT09IHZvaWQgMCkge1xuICAgICAgICByZXR1cm47XG5cbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIG9wdGlvbiA9PT0gJ2Z1bmN0aW9uJyAmJiBpc0hvb2spIHtcbiAgICAgICAgbWVyZ2VkU2V0dGluZ3Nba2V5XSA9IGZ1bmN0aW9uKC4uLmFyZ3MpIHtcbiAgICAgICAgICByZXR1cm4gY29tcG9uZW50Ll9uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIG9wdGlvbi5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfTtcblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbWVyZ2VkU2V0dGluZ3Nba2V5XSA9IG9wdGlvbjtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBtZXJnZWRTZXR0aW5ncztcbiAgfVxuXG4gIHByZXBhcmVDaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiBIYW5kc29udGFibGUuR3JpZFNldHRpbmdzIHtcbiAgICBjb25zdCByZXN1bHQ6IEhhbmRzb250YWJsZS5HcmlkU2V0dGluZ3MgPSB7fTtcbiAgICBjb25zdCBwYXJhbWV0ZXJzOiBzdHJpbmdbXSA9IE9iamVjdC5rZXlzKGNoYW5nZXMpO1xuXG4gICAgcGFyYW1ldGVycy5mb3JFYWNoKChwYXJhbSkgPT4ge1xuICAgICAgaWYgKGNoYW5nZXMuaGFzT3duUHJvcGVydHkocGFyYW0pKSB7XG4gICAgICAgIHJlc3VsdFtwYXJhbV0gPSBjaGFuZ2VzW3BhcmFtXS5jdXJyZW50VmFsdWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG4iXX0=
|
|
@@ -6,13 +6,22 @@
|
|
|
6
6
|
import { Injectable } from '@angular/core';
|
|
7
7
|
/** @type {?} */
|
|
8
8
|
const instances = new Map();
|
|
9
|
+
/** @type {?} */
|
|
10
|
+
export const HOT_DESTROYED_WARNING = 'The Handsontable instance bound to this component was destroyed and cannot be' +
|
|
11
|
+
' used properly.';
|
|
9
12
|
export class HotTableRegisterer {
|
|
10
13
|
/**
|
|
11
14
|
* @param {?} id
|
|
12
15
|
* @return {?}
|
|
13
16
|
*/
|
|
14
17
|
getInstance(id) {
|
|
15
|
-
|
|
18
|
+
/** @type {?} */
|
|
19
|
+
const hotInstance = instances.get(id);
|
|
20
|
+
if (hotInstance.isDestroyed) {
|
|
21
|
+
console.warn(HOT_DESTROYED_WARNING);
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
return hotInstance;
|
|
16
25
|
}
|
|
17
26
|
/**
|
|
18
27
|
* @param {?} id
|
|
@@ -33,4 +42,4 @@ export class HotTableRegisterer {
|
|
|
33
42
|
HotTableRegisterer.decorators = [
|
|
34
43
|
{ type: Injectable }
|
|
35
44
|
];
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90LXRhYmxlLXJlZ2lzdGVyZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BoYW5kc29udGFibGUvYW5ndWxhci8iLCJzb3VyY2VzIjpbImxpYi9ob3QtdGFibGUtcmVnaXN0ZXJlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7TUFHckMsU0FBUyxHQUFHLElBQUksR0FBRyxFQUF3Qjs7QUFFakQsTUFBTSxPQUFPLHFCQUFxQixHQUFHLCtFQUErRTtJQUNsSCxpQkFBaUI7QUFHbkIsTUFBTSxPQUFPLGtCQUFrQjs7Ozs7SUFDdEIsV0FBVyxDQUFDLEVBQVU7O2NBQ3JCLFdBQVcsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUVyQyxJQUFJLFdBQVcsQ0FBQyxXQUFXLEVBQUU7WUFDM0IsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBRXBDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDOzs7Ozs7SUFFTSxnQkFBZ0IsQ0FBQyxFQUFVLEVBQUUsUUFBc0I7UUFDeEQsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNyQyxDQUFDOzs7OztJQUVNLGNBQWMsQ0FBQyxFQUFVO1FBQzlCLE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM5QixDQUFDOzs7WUFwQkYsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBIYW5kc29udGFibGUgZnJvbSAnaGFuZHNvbnRhYmxlL2Jhc2UnO1xuXG5jb25zdCBpbnN0YW5jZXMgPSBuZXcgTWFwPHN0cmluZywgSGFuZHNvbnRhYmxlPigpO1xuXG5leHBvcnQgY29uc3QgSE9UX0RFU1RST1lFRF9XQVJOSU5HID0gJ1RoZSBIYW5kc29udGFibGUgaW5zdGFuY2UgYm91bmQgdG8gdGhpcyBjb21wb25lbnQgd2FzIGRlc3Ryb3llZCBhbmQgY2Fubm90IGJlJyArXG4gICcgdXNlZCBwcm9wZXJseS4nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSG90VGFibGVSZWdpc3RlcmVyIHtcbiAgcHVibGljIGdldEluc3RhbmNlKGlkOiBzdHJpbmcpOiBIYW5kc29udGFibGUge1xuICAgIGNvbnN0IGhvdEluc3RhbmNlID0gaW5zdGFuY2VzLmdldChpZCk7XG5cbiAgICBpZiAoaG90SW5zdGFuY2UuaXNEZXN0cm95ZWQpIHtcbiAgICAgIGNvbnNvbGUud2FybihIT1RfREVTVFJPWUVEX1dBUk5JTkcpO1xuXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gaG90SW5zdGFuY2U7XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJJbnN0YW5jZShpZDogc3RyaW5nLCBpbnN0YW5jZTogSGFuZHNvbnRhYmxlKTogTWFwPHN0cmluZywgSGFuZHNvbnRhYmxlPiB7XG4gICAgcmV0dXJuIGluc3RhbmNlcy5zZXQoaWQsIGluc3RhbmNlKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVJbnN0YW5jZShpZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGluc3RhbmNlcy5kZWxldGUoaWQpO1xuICB9XG59XG4iXX0=
|