@handsontable/angular 9.0.0 → 11.0.0
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 +74 -31
- 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,34 +1,31 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Copyright (c) HANDSONCODE sp. z o. o.
|
|
3
3
|
*
|
|
4
|
-
* HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o.,
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* EU tax ID number: PL5862294002, share capital: PLN 62,800.00.
|
|
4
|
+
* HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in
|
|
5
|
+
* Gdynia, Poland, at Aleja Zwycięstwa 96-98, registered by the District Court in Gdansk under number
|
|
6
|
+
* 538651, EU tax ID number: PL5862294002, share capital: PLN 62,800.00.
|
|
8
7
|
*
|
|
9
|
-
* This software is protected by applicable copyright laws, including
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* or monetary compensation (commercial purposes), or not.
|
|
8
|
+
* This software is protected by applicable copyright laws, including international treaties, and dual-
|
|
9
|
+
* licensed – depending on whether your use for commercial purposes, meaning intended for or
|
|
10
|
+
* resulting in commercial advantage or monetary compensation, or not.
|
|
13
11
|
*
|
|
14
|
-
* If your use
|
|
15
|
-
*
|
|
16
|
-
* in the "handsontable-non-commercial-license.pdf" file
|
|
17
|
-
* in the main directory of this software repository.
|
|
12
|
+
* If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing
|
|
13
|
+
* the suitability, performance, and usefulness of this software outside the production environment,
|
|
14
|
+
* you agree to be bound by the terms included in the "handsontable-non-commercial-license.pdf" file.
|
|
18
15
|
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* in the "handsontable-general-terms.pdf" file, available in the main
|
|
22
|
-
* directory of this software repository.
|
|
16
|
+
* Your use of this software for commercial purposes is subject to the terms included in an applicable
|
|
17
|
+
* license agreement.
|
|
23
18
|
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
* AND UNDER NO LEGAL THEORY, SHALL HANDSONCODE BE LIABLE
|
|
27
|
-
* TO YOU FOR DAMAGES, INCLUDING ANY DIRECT, INDIRECT, SPECIAL,
|
|
28
|
-
* INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING
|
|
29
|
-
* FROM USE OR INABILITY TO USE THIS SOFTWARE.
|
|
19
|
+
* In any case, you must not make any such use of this software as to develop software which may be
|
|
20
|
+
* considered competitive with this software.
|
|
30
21
|
*
|
|
31
|
-
*
|
|
22
|
+
* UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN "AS IS"
|
|
23
|
+
* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO
|
|
24
|
+
* LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,
|
|
25
|
+
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
|
26
|
+
* USE OR INABILITY TO USE THIS SOFTWARE.
|
|
27
|
+
*
|
|
28
|
+
* Version: 11.0.0 (built at Wed Nov 17 2021 13:39:32 GMT+0100 (Central European Standard Time))
|
|
32
29
|
*/
|
|
33
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("handsontable")):"function"==typeof define&&define.amd?define("@handsontable/angular",["exports","@angular/core","handsontable"],e):e(((t=t||self).Handsontable=t.Handsontable||{},t.Handsontable.angular={}),t.ng.core,t.Handsontable)}(this,(function(t,e,n){"use strict";n=n&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n;var p=new Map,o=function(){function t(){}return t.prototype.getInstance=function(t){return p.get(t)},t.prototype.registerInstance=function(t,e){return p.set(t,e)},t.prototype.removeInstance=function(t){return p.delete(t)},t.decorators=[{type:e.Injectable}],t}(),u=Object.keys(n.DefaultSettings),r=n.hooks.getRegistered(),a=function(){function t(){}return t.prototype.mergeSettings=function(t){var e="object"==typeof t.settings,n=e?t.settings:{};return r.concat(u).forEach((function(p){var o,u=r.indexOf(p)>-1;e&&u&&(o=t.settings[p]),void 0!==t[p]&&(o=t[p]),void 0!==o&&(n[p]="function"==typeof o&&u?function(){for(var e=this,n=[],p=0;p<arguments.length;p++)n[p]=arguments[p];return t._ngZone.run((function(){return o.apply(e,n)}))}:o)})),n},t.prototype.prepareChanges=function(t){var e={};return Object.keys(t).forEach((function(n){t.hasOwnProperty(n)&&(e[n]=t[n].currentValue)})),e},t.decorators=[{type:e.Injectable}],t}(),y=function(){function t(t,e,n){this._ngZone=t,this._hotTableRegisterer=e,this._hotSettingsResolver=n,this.columnsComponents=[],this.hotId=""}return t.prototype.ngAfterViewInit=function(){var t=this,e=this._hotSettingsResolver.mergeSettings(this);if(this.columnsComponents.length>0){var p=[];this.columnsComponents.forEach((function(e){p.push(t._hotSettingsResolver.mergeSettings(e))})),e.columns=p}this._ngZone.runOutsideAngular((function(){t.hotInstance=new n.Core(t.container.nativeElement,e),t.hotId&&t._hotTableRegisterer.registerInstance(t.hotId,t.hotInstance),t.hotInstance.init()}))},t.prototype.ngOnChanges=function(t){if(void 0!==this.hotInstance){var e=this._hotSettingsResolver.prepareChanges(t);this.updateHotTable(e)}},t.prototype.ngOnDestroy=function(){var t=this;this._ngZone.runOutsideAngular((function(){t.hotInstance.destroy()})),this.hotId&&this._hotTableRegisterer.removeInstance(this.hotId)},t.prototype.updateHotTable=function(t){var e=this;this.hotInstance&&this._ngZone.runOutsideAngular((function(){e.hotInstance.updateSettings(t,!1)}))},t.prototype.onAfterColumnsChange=function(){var t=this;if(void 0!==this.columnsComponents&&this.columnsComponents.length>0){var e=[];this.columnsComponents.forEach((function(n){e.push(t._hotSettingsResolver.mergeSettings(n))}));var n={columns:e};this.updateHotTable(n)}},t.prototype.onAfterColumnsNumberChange=function(){var t=this,e=[];this.columnsComponents.length>0&&this.columnsComponents.forEach((function(n){e.push(t._hotSettingsResolver.mergeSettings(n))})),this.updateHotTable({columns:e})},t.prototype.addColumn=function(t){this.columnsComponents.push(t),this.onAfterColumnsNumberChange()},t.prototype.removeColumn=function(t){var e=this.columnsComponents.indexOf(t);this.columnsComponents.splice(e,1),this.onAfterColumnsNumberChange()},t.decorators=[{type:e.Component,args:[{selector:"hot-table",template:'<div #container [id]="hotId"></div>',encapsulation:e.ViewEncapsulation.None,providers:[o,a]}]}],t.ctorParameters=function(){return[{type:e.NgZone},{type:o},{type:a}]},t.propDecorators={container:[{type:e.ViewChild,args:["container",{static:!1}]}],settings:[{type:e.Input}],hotId:[{type:e.Input}],activeHeaderClassName:[{type:e.Input}],allowEmpty:[{type:e.Input}],allowHtml:[{type:e.Input}],allowInsertColumn:[{type:e.Input}],allowInsertRow:[{type:e.Input}],allowInvalid:[{type:e.Input}],allowRemoveColumn:[{type:e.Input}],allowRemoveRow:[{type:e.Input}],autoColumnSize:[{type:e.Input}],autoRowSize:[{type:e.Input}],autoWrapCol:[{type:e.Input}],autoWrapRow:[{type:e.Input}],bindRowsWithHeaders:[{type:e.Input}],cell:[{type:e.Input}],cells:[{type:e.Input}],checkedTemplate:[{type:e.Input}],className:[{type:e.Input}],colHeaders:[{type:e.Input}],collapsibleColumns:[{type:e.Input}],columnHeaderHeight:[{type:e.Input}],columns:[{type:e.Input}],columnSorting:[{type:e.Input}],columnSummary:[{type:e.Input}],colWidths:[{type:e.Input}],commentedCellClassName:[{type:e.Input}],comments:[{type:e.Input}],contextMenu:[{type:e.Input}],copyable:[{type:e.Input}],copyPaste:[{type:e.Input}],correctFormat:[{type:e.Input}],currentColClassName:[{type:e.Input}],currentHeaderClassName:[{type:e.Input}],currentRowClassName:[{type:e.Input}],customBorders:[{type:e.Input}],data:[{type:e.Input}],dataSchema:[{type:e.Input}],dateFormat:[{type:e.Input}],defaultDate:[{type:e.Input}],disableVisualSelection:[{type:e.Input}],dragToScroll:[{type:e.Input}],dropdownMenu:[{type:e.Input}],editor:[{type:e.Input}],enterBeginsEditing:[{type:e.Input}],enterMoves:[{type:e.Input}],fillHandle:[{type:e.Input}],filter:[{type:e.Input}],filteringCaseSensitive:[{type:e.Input}],filters:[{type:e.Input}],fixedColumnsLeft:[{type:e.Input}],fixedRowsBottom:[{type:e.Input}],fixedRowsTop:[{type:e.Input}],formulas:[{type:e.Input}],fragmentSelection:[{type:e.Input}],height:[{type:e.Input}],hiddenColumns:[{type:e.Input}],hiddenRows:[{type:e.Input}],invalidCellClassName:[{type:e.Input}],label:[{type:e.Input}],language:[{type:e.Input}],licenseKey:[{type:e.Input}],manualColumnFreeze:[{type:e.Input}],manualColumnMove:[{type:e.Input}],manualColumnResize:[{type:e.Input}],manualRowMove:[{type:e.Input}],manualRowResize:[{type:e.Input}],maxCols:[{type:e.Input}],maxRows:[{type:e.Input}],mergeCells:[{type:e.Input}],minCols:[{type:e.Input}],minRows:[{type:e.Input}],minSpareCols:[{type:e.Input}],minSpareRows:[{type:e.Input}],multiColumnSorting:[{type:e.Input}],nestedHeaders:[{type:e.Input}],nestedRows:[{type:e.Input}],noWordWrapClassName:[{type:e.Input}],numericFormat:[{type:e.Input}],observeDOMVisibility:[{type:e.Input}],outsideClickDeselects:[{type:e.Input}],persistentState:[{type:e.Input}],placeholder:[{type:e.Input}],placeholderCellClassName:[{type:e.Input}],preventOverflow:[{type:e.Input}],preventWheel:[{type:e.Input}],readOnly:[{type:e.Input}],readOnlyCellClassName:[{type:e.Input}],renderAllRows:[{type:e.Input}],renderer:[{type:e.Input}],rowHeaders:[{type:e.Input}],rowHeaderWidth:[{type:e.Input}],rowHeights:[{type:e.Input}],search:[{type:e.Input}],selectionMode:[{type:e.Input}],selectOptions:[{type:e.Input}],skipColumnOnPaste:[{type:e.Input}],skipRowOnPaste:[{type:e.Input}],sortByRelevance:[{type:e.Input}],source:[{type:e.Input}],startCols:[{type:e.Input}],startRows:[{type:e.Input}],stretchH:[{type:e.Input}],strict:[{type:e.Input}],tableClassName:[{type:e.Input}],tabMoves:[{type:e.Input}],title:[{type:e.Input}],trimDropdown:[{type:e.Input}],trimRows:[{type:e.Input}],trimWhitespace:[{type:e.Input}],type:[{type:e.Input}],uncheckedTemplate:[{type:e.Input}],undo:[{type:e.Input}],validator:[{type:e.Input}],viewportColumnRenderingOffset:[{type:e.Input}],viewportRowRenderingOffset:[{type:e.Input}],visibleRows:[{type:e.Input}],width:[{type:e.Input}],wordWrap:[{type:e.Input}],afterAddChild:[{type:e.Input}],afterAutofill:[{type:e.Input}],afterBeginEditing:[{type:e.Input}],afterCellMetaReset:[{type:e.Input}],afterChange:[{type:e.Input}],afterChangesObserved:[{type:e.Input}],afterColumnCollapse:[{type:e.Input}],afterColumnExpand:[{type:e.Input}],afterColumnMove:[{type:e.Input}],afterColumnResize:[{type:e.Input}],afterColumnSort:[{type:e.Input}],afterContextMenuDefaultOptions:[{type:e.Input}],afterContextMenuHide:[{type:e.Input}],afterContextMenuShow:[{type:e.Input}],afterCopy:[{type:e.Input}],afterCopyLimit:[{type:e.Input}],afterCreateCol:[{type:e.Input}],afterCreateRow:[{type:e.Input}],afterCut:[{type:e.Input}],afterDeselect:[{type:e.Input}],afterDestroy:[{type:e.Input}],afterDetachChild:[{type:e.Input}],afterDocumentKeyDown:[{type:e.Input}],afterDrawSelection:[{type:e.Input}],afterDropdownMenuDefaultOptions:[{type:e.Input}],afterDropdownMenuHide:[{type:e.Input}],afterDropdownMenuShow:[{type:e.Input}],afterFilter:[{type:e.Input}],afterGetCellMeta:[{type:e.Input}],afterGetColHeader:[{type:e.Input}],afterGetColumnHeaderRenderers:[{type:e.Input}],afterGetRowHeader:[{type:e.Input}],afterGetRowHeaderRenderers:[{type:e.Input}],afterHideColumns:[{type:e.Input}],afterHideRows:[{type:e.Input}],afterInit:[{type:e.Input}],afterLanguageChange:[{type:e.Input}],afterListen:[{type:e.Input}],afterLoadData:[{type:e.Input}],afterMergeCells:[{type:e.Input}],afterModifyTransformEnd:[{type:e.Input}],afterModifyTransformStart:[{type:e.Input}],afterMomentumScroll:[{type:e.Input}],afterOnCellContextMenu:[{type:e.Input}],afterOnCellCornerDblClick:[{type:e.Input}],afterOnCellCornerMouseDown:[{type:e.Input}],afterOnCellMouseDown:[{type:e.Input}],afterOnCellMouseOut:[{type:e.Input}],afterOnCellMouseOver:[{type:e.Input}],afterOnCellMouseUp:[{type:e.Input}],afterPaste:[{type:e.Input}],afterPluginsInitialized:[{type:e.Input}],afterRedo:[{type:e.Input}],afterRedoStackChange:[{type:e.Input}],afterRefreshDimensions:[{type:e.Input}],afterRemoveCellMeta:[{type:e.Input}],afterRemoveCol:[{type:e.Input}],afterRemoveRow:[{type:e.Input}],afterRender:[{type:e.Input}],afterRenderer:[{type:e.Input}],afterRowMove:[{type:e.Input}],afterRowResize:[{type:e.Input}],afterScrollHorizontally:[{type:e.Input}],afterScrollVertically:[{type:e.Input}],afterSelection:[{type:e.Input}],afterSelectionByProp:[{type:e.Input}],afterSelectionEnd:[{type:e.Input}],afterSelectionEndByProp:[{type:e.Input}],afterSetCellMeta:[{type:e.Input}],afterSetDataAtCell:[{type:e.Input}],afterSetDataAtRowProp:[{type:e.Input}],afterSetSourceDataAtCell:[{type:e.Input}],afterTrimRow:[{type:e.Input}],afterUndo:[{type:e.Input}],afterUndoStackChange:[{type:e.Input}],afterUnhideColumns:[{type:e.Input}],afterUnhideRows:[{type:e.Input}],afterUnlisten:[{type:e.Input}],afterUnmergeCells:[{type:e.Input}],afterUntrimRow:[{type:e.Input}],afterUpdateSettings:[{type:e.Input}],afterValidate:[{type:e.Input}],afterViewportColumnCalculatorOverride:[{type:e.Input}],afterViewportRowCalculatorOverride:[{type:e.Input}],beforeAddChild:[{type:e.Input}],beforeAutofill:[{type:e.Input}],beforeAutofillInsidePopulate:[{type:e.Input}],beforeCellAlignment:[{type:e.Input}],beforeChange:[{type:e.Input}],beforeChangeRender:[{type:e.Input}],beforeColumnCollapse:[{type:e.Input}],beforeColumnExpand:[{type:e.Input}],beforeColumnMove:[{type:e.Input}],beforeColumnResize:[{type:e.Input}],beforeColumnSort:[{type:e.Input}],beforeContextMenuSetItems:[{type:e.Input}],beforeContextMenuShow:[{type:e.Input}],beforeCopy:[{type:e.Input}],beforeCreateCol:[{type:e.Input}],beforeCreateRow:[{type:e.Input}],beforeCut:[{type:e.Input}],beforeDetachChild:[{type:e.Input}],beforeDrawBorders:[{type:e.Input}],beforeDropdownMenuSetItems:[{type:e.Input}],beforeDropdownMenuShow:[{type:e.Input}],beforeFilter:[{type:e.Input}],beforeGetCellMeta:[{type:e.Input}],beforeHideColumns:[{type:e.Input}],beforeHideRows:[{type:e.Input}],beforeInit:[{type:e.Input}],beforeInitWalkontable:[{type:e.Input}],beforeKeyDown:[{type:e.Input}],beforeLanguageChange:[{type:e.Input}],beforeLoadData:[{type:e.Input}],beforeMergeCells:[{type:e.Input}],beforeOnCellContextMenu:[{type:e.Input}],beforeOnCellMouseDown:[{type:e.Input}],beforeOnCellMouseOut:[{type:e.Input}],beforeOnCellMouseOver:[{type:e.Input}],beforeOnCellMouseUp:[{type:e.Input}],beforePaste:[{type:e.Input}],beforeRedo:[{type:e.Input}],beforeRedoStackChange:[{type:e.Input}],beforeRefreshDimensions:[{type:e.Input}],beforeRemoveCellClassNames:[{type:e.Input}],beforeRemoveCellMeta:[{type:e.Input}],beforeRemoveCol:[{type:e.Input}],beforeRemoveRow:[{type:e.Input}],beforeRender:[{type:e.Input}],beforeRenderer:[{type:e.Input}],beforeRowMove:[{type:e.Input}],beforeRowResize:[{type:e.Input}],beforeSetCellMeta:[{type:e.Input}],beforeSetRangeEnd:[{type:e.Input}],beforeSetRangeStart:[{type:e.Input}],beforeSetRangeStartOnly:[{type:e.Input}],beforeStretchingColumnWidth:[{type:e.Input}],beforeTouchScroll:[{type:e.Input}],beforeTrimRow:[{type:e.Input}],beforeUndo:[{type:e.Input}],beforeUndoStackChange:[{type:e.Input}],beforeUnhideColumns:[{type:e.Input}],beforeUnhideRows:[{type:e.Input}],beforeUnmergeCells:[{type:e.Input}],beforeUntrimRow:[{type:e.Input}],beforeValidate:[{type:e.Input}],beforeValueRender:[{type:e.Input}],construct:[{type:e.Input}],init:[{type:e.Input}],modifyAutoColumnSizeSeed:[{type:e.Input}],modifyAutofillRange:[{type:e.Input}],modifyColHeader:[{type:e.Input}],modifyColumnHeaderHeight:[{type:e.Input}],modifyColWidth:[{type:e.Input}],modifyCopyableRange:[{type:e.Input}],modifyData:[{type:e.Input}],modifyGetCellCoords:[{type:e.Input}],modifyRowData:[{type:e.Input}],modifyRowHeader:[{type:e.Input}],modifyRowHeaderWidth:[{type:e.Input}],modifyRowHeight:[{type:e.Input}],modifySourceData:[{type:e.Input}],modifyTransformEnd:[{type:e.Input}],modifyTransformStart:[{type:e.Input}],persistentStateLoad:[{type:e.Input}],persistentStateReset:[{type:e.Input}],persistentStateSave:[{type:e.Input}]},t}();var l=function(){function t(t){this.parentComponent=t,this.firstRun=!0}return t.prototype.ngOnInit=function(){this.firstRun=!1,this.parentComponent.addColumn(this)},t.prototype.ngOnChanges=function(){this.firstRun||this.parentComponent.onAfterColumnsChange()},t.prototype.ngOnDestroy=function(){this.parentComponent.removeColumn(this)},t.decorators=[{type:e.Component,args:[{selector:"hot-column",template:""}]}],t.ctorParameters=function(){return[{type:y}]},t.propDecorators={allowEmpty:[{type:e.Input}],allowHtml:[{type:e.Input}],allowInvalid:[{type:e.Input}],checkedTemplate:[{type:e.Input}],className:[{type:e.Input}],columnSorting:[{type:e.Input}],colWidths:[{type:e.Input}],commentedCellClassName:[{type:e.Input}],copyable:[{type:e.Input}],correctFormat:[{type:e.Input}],data:[{type:e.Input}],dateFormat:[{type:e.Input}],defaultDate:[{type:e.Input}],editor:[{type:e.Input}],filteringCaseSensitive:[{type:e.Input}],invalidCellClassName:[{type:e.Input}],label:[{type:e.Input}],language:[{type:e.Input}],noWordWrapClassName:[{type:e.Input}],numericFormat:[{type:e.Input}],placeholder:[{type:e.Input}],placeholderCellClassName:[{type:e.Input}],readOnly:[{type:e.Input}],readOnlyCellClassName:[{type:e.Input}],renderer:[{type:e.Input}],selectOptions:[{type:e.Input}],skipColumnOnPaste:[{type:e.Input}],sortByRelevance:[{type:e.Input}],source:[{type:e.Input}],strict:[{type:e.Input}],title:[{type:e.Input}],trimDropdown:[{type:e.Input}],type:[{type:e.Input}],uncheckedTemplate:[{type:e.Input}],validator:[{type:e.Input}],visibleRows:[{type:e.Input}],width:[{type:e.Input}],wordWrap:[{type:e.Input}]},t}();var s=function(){function t(){}return t.forRoot=function(){return{ngModule:t,providers:[o]}},t.version="9.0.0",t.decorators=[{type:e.NgModule,args:[{declarations:[y,l],exports:[y,l]}]}],t}();t.HotColumnComponent=l,t.HotSettingsResolver=a,t.HotTableComponent=y,t.HotTableModule=s,t.HotTableRegisterer=o,Object.defineProperty(t,"__esModule",{value:!0})}));
|
|
30
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("handsontable/base")):"function"==typeof define&&define.amd?define("@handsontable/angular",["exports","@angular/core","handsontable/base"],e):e(((t=t||self).handsontable=t.handsontable||{},t.handsontable.angular={}),t.ng.core,t.Handsontable)}(this,(function(t,e,n){"use strict";n=n&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n;var p=new Map,o="The Handsontable instance bound to this component was destroyed and cannot be used properly.",u=function(){function t(){}return t.prototype.getInstance=function(t){var e=p.get(t);return e.isDestroyed?(console.warn(o),null):e},t.prototype.registerInstance=function(t,e){return p.set(t,e)},t.prototype.removeInstance=function(t){return p.delete(t)},t.decorators=[{type:e.Injectable}],t}(),r=Object.keys(n.DefaultSettings),a=n.hooks.getRegistered(),y=function(){function t(){}return t.prototype.mergeSettings=function(t){var e="object"==typeof t.settings,n=e?t.settings:{};return a.concat(r).forEach((function(p){var o,u=a.indexOf(p)>-1;e&&u&&(o=t.settings[p]),void 0!==t[p]&&(o=t[p]),void 0!==o&&(n[p]="function"==typeof o&&u?function(){for(var e=this,n=[],p=0;p<arguments.length;p++)n[p]=arguments[p];return t._ngZone.run((function(){return o.apply(e,n)}))}:o)})),n},t.prototype.prepareChanges=function(t){var e={};return Object.keys(t).forEach((function(n){t.hasOwnProperty(n)&&(e[n]=t[n].currentValue)})),e},t.decorators=[{type:e.Injectable}],t}(),s=function(){function t(t,e,n){this._ngZone=t,this._hotTableRegisterer=e,this._hotSettingsResolver=n,this.__hotInstance=null,this.columnsComponents=[],this.hotId=""}return Object.defineProperty(t.prototype,"hotInstance",{get:function(){return!this.__hotInstance||this.__hotInstance&&!this.__hotInstance.isDestroyed?this.__hotInstance:(this._hotTableRegisterer.removeInstance(this.hotId),console.warn(o),null)},set:function(t){this.__hotInstance=t},enumerable:!0,configurable:!0}),t.prototype.ngAfterViewInit=function(){var t=this,e=this._hotSettingsResolver.mergeSettings(this);if(this.columnsComponents.length>0){var p=[];this.columnsComponents.forEach((function(e){p.push(t._hotSettingsResolver.mergeSettings(e))})),e.columns=p}this._ngZone.runOutsideAngular((function(){t.hotInstance=new n.Core(t.container.nativeElement,e),t.hotId&&t._hotTableRegisterer.registerInstance(t.hotId,t.hotInstance),t.hotInstance.init()}))},t.prototype.ngOnChanges=function(t){if(null!==this.hotInstance){var e=this._hotSettingsResolver.prepareChanges(t);this.updateHotTable(e)}},t.prototype.ngOnDestroy=function(){var t=this;this._ngZone.runOutsideAngular((function(){t.hotInstance&&t.hotInstance.destroy()})),this.hotId&&this._hotTableRegisterer.removeInstance(this.hotId)},t.prototype.updateHotTable=function(t){var e=this;this.hotInstance&&this._ngZone.runOutsideAngular((function(){e.hotInstance.updateSettings(t,!1)}))},t.prototype.onAfterColumnsChange=function(){var t=this;if(void 0!==this.columnsComponents&&this.columnsComponents.length>0){var e=[];this.columnsComponents.forEach((function(n){e.push(t._hotSettingsResolver.mergeSettings(n))}));var n={columns:e};this.updateHotTable(n)}},t.prototype.onAfterColumnsNumberChange=function(){var t=this,e=[];this.columnsComponents.length>0&&this.columnsComponents.forEach((function(n){e.push(t._hotSettingsResolver.mergeSettings(n))})),this.updateHotTable({columns:e})},t.prototype.addColumn=function(t){this.columnsComponents.push(t),this.onAfterColumnsNumberChange()},t.prototype.removeColumn=function(t){var e=this.columnsComponents.indexOf(t);this.columnsComponents.splice(e,1),this.onAfterColumnsNumberChange()},t.decorators=[{type:e.Component,args:[{selector:"hot-table",template:'<div #container [id]="hotId"></div>',encapsulation:e.ViewEncapsulation.None,providers:[u,y]}]}],t.ctorParameters=function(){return[{type:e.NgZone},{type:u},{type:y}]},t.propDecorators={container:[{type:e.ViewChild,args:["container",{static:!1}]}],settings:[{type:e.Input}],hotId:[{type:e.Input}],activeHeaderClassName:[{type:e.Input}],allowEmpty:[{type:e.Input}],allowHtml:[{type:e.Input}],allowInsertColumn:[{type:e.Input}],allowInsertRow:[{type:e.Input}],allowInvalid:[{type:e.Input}],allowRemoveColumn:[{type:e.Input}],allowRemoveRow:[{type:e.Input}],autoColumnSize:[{type:e.Input}],autoRowSize:[{type:e.Input}],autoWrapCol:[{type:e.Input}],autoWrapRow:[{type:e.Input}],bindRowsWithHeaders:[{type:e.Input}],cell:[{type:e.Input}],cells:[{type:e.Input}],checkedTemplate:[{type:e.Input}],className:[{type:e.Input}],colHeaders:[{type:e.Input}],collapsibleColumns:[{type:e.Input}],columnHeaderHeight:[{type:e.Input}],columns:[{type:e.Input}],columnSorting:[{type:e.Input}],columnSummary:[{type:e.Input}],colWidths:[{type:e.Input}],commentedCellClassName:[{type:e.Input}],comments:[{type:e.Input}],contextMenu:[{type:e.Input}],copyable:[{type:e.Input}],copyPaste:[{type:e.Input}],correctFormat:[{type:e.Input}],currentColClassName:[{type:e.Input}],currentHeaderClassName:[{type:e.Input}],currentRowClassName:[{type:e.Input}],customBorders:[{type:e.Input}],data:[{type:e.Input}],dataSchema:[{type:e.Input}],dateFormat:[{type:e.Input}],defaultDate:[{type:e.Input}],disableVisualSelection:[{type:e.Input}],dragToScroll:[{type:e.Input}],dropdownMenu:[{type:e.Input}],editor:[{type:e.Input}],enterBeginsEditing:[{type:e.Input}],enterMoves:[{type:e.Input}],fillHandle:[{type:e.Input}],filter:[{type:e.Input}],filteringCaseSensitive:[{type:e.Input}],filters:[{type:e.Input}],fixedColumnsLeft:[{type:e.Input}],fixedRowsBottom:[{type:e.Input}],fixedRowsTop:[{type:e.Input}],formulas:[{type:e.Input}],fragmentSelection:[{type:e.Input}],height:[{type:e.Input}],hiddenColumns:[{type:e.Input}],hiddenRows:[{type:e.Input}],invalidCellClassName:[{type:e.Input}],label:[{type:e.Input}],language:[{type:e.Input}],licenseKey:[{type:e.Input}],manualColumnFreeze:[{type:e.Input}],manualColumnMove:[{type:e.Input}],manualColumnResize:[{type:e.Input}],manualRowMove:[{type:e.Input}],manualRowResize:[{type:e.Input}],maxCols:[{type:e.Input}],maxRows:[{type:e.Input}],mergeCells:[{type:e.Input}],minCols:[{type:e.Input}],minRows:[{type:e.Input}],minSpareCols:[{type:e.Input}],minSpareRows:[{type:e.Input}],multiColumnSorting:[{type:e.Input}],nestedHeaders:[{type:e.Input}],nestedRows:[{type:e.Input}],noWordWrapClassName:[{type:e.Input}],numericFormat:[{type:e.Input}],observeDOMVisibility:[{type:e.Input}],outsideClickDeselects:[{type:e.Input}],persistentState:[{type:e.Input}],placeholder:[{type:e.Input}],placeholderCellClassName:[{type:e.Input}],preventOverflow:[{type:e.Input}],preventWheel:[{type:e.Input}],readOnly:[{type:e.Input}],readOnlyCellClassName:[{type:e.Input}],renderAllRows:[{type:e.Input}],renderer:[{type:e.Input}],rowHeaders:[{type:e.Input}],rowHeaderWidth:[{type:e.Input}],rowHeights:[{type:e.Input}],search:[{type:e.Input}],selectionMode:[{type:e.Input}],selectOptions:[{type:e.Input}],skipColumnOnPaste:[{type:e.Input}],skipRowOnPaste:[{type:e.Input}],sortByRelevance:[{type:e.Input}],source:[{type:e.Input}],startCols:[{type:e.Input}],startRows:[{type:e.Input}],stretchH:[{type:e.Input}],strict:[{type:e.Input}],tableClassName:[{type:e.Input}],tabMoves:[{type:e.Input}],title:[{type:e.Input}],trimDropdown:[{type:e.Input}],trimRows:[{type:e.Input}],trimWhitespace:[{type:e.Input}],type:[{type:e.Input}],uncheckedTemplate:[{type:e.Input}],undo:[{type:e.Input}],validator:[{type:e.Input}],viewportColumnRenderingOffset:[{type:e.Input}],viewportRowRenderingOffset:[{type:e.Input}],visibleRows:[{type:e.Input}],width:[{type:e.Input}],wordWrap:[{type:e.Input}],afterAddChild:[{type:e.Input}],afterAutofill:[{type:e.Input}],afterBeginEditing:[{type:e.Input}],afterCellMetaReset:[{type:e.Input}],afterChange:[{type:e.Input}],afterChangesObserved:[{type:e.Input}],afterColumnCollapse:[{type:e.Input}],afterColumnExpand:[{type:e.Input}],afterColumnMove:[{type:e.Input}],afterColumnResize:[{type:e.Input}],afterColumnSort:[{type:e.Input}],afterContextMenuDefaultOptions:[{type:e.Input}],afterContextMenuHide:[{type:e.Input}],afterContextMenuShow:[{type:e.Input}],afterCopy:[{type:e.Input}],afterCopyLimit:[{type:e.Input}],afterCreateCol:[{type:e.Input}],afterCreateRow:[{type:e.Input}],afterCut:[{type:e.Input}],afterDeselect:[{type:e.Input}],afterDestroy:[{type:e.Input}],afterDetachChild:[{type:e.Input}],afterDocumentKeyDown:[{type:e.Input}],afterDrawSelection:[{type:e.Input}],afterDropdownMenuDefaultOptions:[{type:e.Input}],afterDropdownMenuHide:[{type:e.Input}],afterDropdownMenuShow:[{type:e.Input}],afterFilter:[{type:e.Input}],afterGetCellMeta:[{type:e.Input}],afterGetColHeader:[{type:e.Input}],afterGetColumnHeaderRenderers:[{type:e.Input}],afterGetRowHeader:[{type:e.Input}],afterGetRowHeaderRenderers:[{type:e.Input}],afterHideColumns:[{type:e.Input}],afterHideRows:[{type:e.Input}],afterInit:[{type:e.Input}],afterLanguageChange:[{type:e.Input}],afterListen:[{type:e.Input}],afterLoadData:[{type:e.Input}],afterMergeCells:[{type:e.Input}],afterModifyTransformEnd:[{type:e.Input}],afterModifyTransformStart:[{type:e.Input}],afterMomentumScroll:[{type:e.Input}],afterOnCellContextMenu:[{type:e.Input}],afterOnCellCornerDblClick:[{type:e.Input}],afterOnCellCornerMouseDown:[{type:e.Input}],afterOnCellMouseDown:[{type:e.Input}],afterOnCellMouseOut:[{type:e.Input}],afterOnCellMouseOver:[{type:e.Input}],afterOnCellMouseUp:[{type:e.Input}],afterPaste:[{type:e.Input}],afterPluginsInitialized:[{type:e.Input}],afterRedo:[{type:e.Input}],afterRedoStackChange:[{type:e.Input}],afterRefreshDimensions:[{type:e.Input}],afterRemoveCellMeta:[{type:e.Input}],afterRemoveCol:[{type:e.Input}],afterRemoveRow:[{type:e.Input}],afterRender:[{type:e.Input}],afterRenderer:[{type:e.Input}],afterRowMove:[{type:e.Input}],afterRowResize:[{type:e.Input}],afterScrollHorizontally:[{type:e.Input}],afterScrollVertically:[{type:e.Input}],afterSelection:[{type:e.Input}],afterSelectionByProp:[{type:e.Input}],afterSelectionEnd:[{type:e.Input}],afterSelectionEndByProp:[{type:e.Input}],afterSetCellMeta:[{type:e.Input}],afterSetDataAtCell:[{type:e.Input}],afterSetDataAtRowProp:[{type:e.Input}],afterSetSourceDataAtCell:[{type:e.Input}],afterTrimRow:[{type:e.Input}],afterUndo:[{type:e.Input}],afterUndoStackChange:[{type:e.Input}],afterUnhideColumns:[{type:e.Input}],afterUnhideRows:[{type:e.Input}],afterUnlisten:[{type:e.Input}],afterUnmergeCells:[{type:e.Input}],afterUntrimRow:[{type:e.Input}],afterUpdateSettings:[{type:e.Input}],afterValidate:[{type:e.Input}],afterViewportColumnCalculatorOverride:[{type:e.Input}],afterViewportRowCalculatorOverride:[{type:e.Input}],afterViewRender:[{type:e.Input}],beforeAddChild:[{type:e.Input}],beforeAutofill:[{type:e.Input}],beforeAutofillInsidePopulate:[{type:e.Input}],beforeCellAlignment:[{type:e.Input}],beforeChange:[{type:e.Input}],beforeChangeRender:[{type:e.Input}],beforeColumnCollapse:[{type:e.Input}],beforeColumnExpand:[{type:e.Input}],beforeColumnMove:[{type:e.Input}],beforeColumnResize:[{type:e.Input}],beforeColumnSort:[{type:e.Input}],beforeContextMenuSetItems:[{type:e.Input}],beforeContextMenuShow:[{type:e.Input}],beforeCopy:[{type:e.Input}],beforeCreateCol:[{type:e.Input}],beforeCreateRow:[{type:e.Input}],beforeCut:[{type:e.Input}],beforeDetachChild:[{type:e.Input}],beforeDrawBorders:[{type:e.Input}],beforeDropdownMenuSetItems:[{type:e.Input}],beforeDropdownMenuShow:[{type:e.Input}],beforeFilter:[{type:e.Input}],beforeGetCellMeta:[{type:e.Input}],beforeHideColumns:[{type:e.Input}],beforeHideRows:[{type:e.Input}],beforeInit:[{type:e.Input}],beforeInitWalkontable:[{type:e.Input}],beforeKeyDown:[{type:e.Input}],beforeLanguageChange:[{type:e.Input}],beforeLoadData:[{type:e.Input}],beforeMergeCells:[{type:e.Input}],beforeOnCellContextMenu:[{type:e.Input}],beforeOnCellMouseDown:[{type:e.Input}],beforeOnCellMouseOut:[{type:e.Input}],beforeOnCellMouseOver:[{type:e.Input}],beforeOnCellMouseUp:[{type:e.Input}],beforePaste:[{type:e.Input}],beforeRedo:[{type:e.Input}],beforeRedoStackChange:[{type:e.Input}],beforeRefreshDimensions:[{type:e.Input}],beforeRemoveCellClassNames:[{type:e.Input}],beforeRemoveCellMeta:[{type:e.Input}],beforeRemoveCol:[{type:e.Input}],beforeRemoveRow:[{type:e.Input}],beforeRender:[{type:e.Input}],beforeRenderer:[{type:e.Input}],beforeRowMove:[{type:e.Input}],beforeRowResize:[{type:e.Input}],beforeSetCellMeta:[{type:e.Input}],beforeSetRangeEnd:[{type:e.Input}],beforeSetRangeStart:[{type:e.Input}],beforeSetRangeStartOnly:[{type:e.Input}],beforeStretchingColumnWidth:[{type:e.Input}],beforeTouchScroll:[{type:e.Input}],beforeTrimRow:[{type:e.Input}],beforeUndo:[{type:e.Input}],beforeUndoStackChange:[{type:e.Input}],beforeUnhideColumns:[{type:e.Input}],beforeUnhideRows:[{type:e.Input}],beforeUnmergeCells:[{type:e.Input}],beforeUntrimRow:[{type:e.Input}],beforeValidate:[{type:e.Input}],beforeValueRender:[{type:e.Input}],beforeViewRender:[{type:e.Input}],construct:[{type:e.Input}],init:[{type:e.Input}],modifyAutoColumnSizeSeed:[{type:e.Input}],modifyAutofillRange:[{type:e.Input}],modifyColHeader:[{type:e.Input}],modifyColumnHeaderHeight:[{type:e.Input}],modifyColWidth:[{type:e.Input}],modifyCopyableRange:[{type:e.Input}],modifyData:[{type:e.Input}],modifyGetCellCoords:[{type:e.Input}],modifyRowData:[{type:e.Input}],modifyRowHeader:[{type:e.Input}],modifyRowHeaderWidth:[{type:e.Input}],modifyRowHeight:[{type:e.Input}],modifySourceData:[{type:e.Input}],modifyTransformEnd:[{type:e.Input}],modifyTransformStart:[{type:e.Input}],persistentStateLoad:[{type:e.Input}],persistentStateReset:[{type:e.Input}],persistentStateSave:[{type:e.Input}]},t}();var l=function(){function t(t){this.parentComponent=t,this.firstRun=!0}return t.prototype.ngOnInit=function(){this.firstRun=!1,this.parentComponent.addColumn(this)},t.prototype.ngOnChanges=function(){this.firstRun||this.parentComponent.onAfterColumnsChange()},t.prototype.ngOnDestroy=function(){this.parentComponent.removeColumn(this)},t.decorators=[{type:e.Component,args:[{selector:"hot-column",template:""}]}],t.ctorParameters=function(){return[{type:s}]},t.propDecorators={allowEmpty:[{type:e.Input}],allowHtml:[{type:e.Input}],allowInvalid:[{type:e.Input}],checkedTemplate:[{type:e.Input}],className:[{type:e.Input}],columnSorting:[{type:e.Input}],colWidths:[{type:e.Input}],commentedCellClassName:[{type:e.Input}],copyable:[{type:e.Input}],correctFormat:[{type:e.Input}],data:[{type:e.Input}],dateFormat:[{type:e.Input}],defaultDate:[{type:e.Input}],editor:[{type:e.Input}],filteringCaseSensitive:[{type:e.Input}],invalidCellClassName:[{type:e.Input}],label:[{type:e.Input}],language:[{type:e.Input}],noWordWrapClassName:[{type:e.Input}],numericFormat:[{type:e.Input}],placeholder:[{type:e.Input}],placeholderCellClassName:[{type:e.Input}],readOnly:[{type:e.Input}],readOnlyCellClassName:[{type:e.Input}],renderer:[{type:e.Input}],selectOptions:[{type:e.Input}],skipColumnOnPaste:[{type:e.Input}],sortByRelevance:[{type:e.Input}],source:[{type:e.Input}],strict:[{type:e.Input}],title:[{type:e.Input}],trimDropdown:[{type:e.Input}],type:[{type:e.Input}],uncheckedTemplate:[{type:e.Input}],validator:[{type:e.Input}],visibleRows:[{type:e.Input}],width:[{type:e.Input}],wordWrap:[{type:e.Input}]},t}();var I=function(){function t(){}return t.forRoot=function(){return{ngModule:t,providers:[u]}},t.version="11.0.0",t.decorators=[{type:e.NgModule,args:[{declarations:[s,l],exports:[s,l]}]}],t}();t.HOT_DESTROYED_WARNING=o,t.HotColumnComponent=l,t.HotSettingsResolver=y,t.HotTableComponent=s,t.HotTableModule=I,t.HotTableRegisterer=u,Object.defineProperty(t,"__esModule",{value:!0})}));
|
|
34
31
|
//# sourceMappingURL=handsontable-angular.umd.min.js.map
|
|
@@ -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":"kcAGMA,EAAY,IAAIC,iBAEtB,SAAAC,KAaA,OAXSA,EAAAC,UAAAC,YAAP,SAAmBC,GACjB,OAAOL,EAAUM,IAAID,IAGhBH,EAAAC,UAAAI,iBAAP,SAAwBF,EAAYG,GAClC,OAAOR,EAAUS,IAAIJ,EAAIG,IAGpBN,EAAAC,UAAAO,eAAP,SAAsBL,GACpB,OAAOL,EAAUW,OAAON,wBAX3BO,EAAAA,aAaDV,KCfMW,EAA8BC,OAAOC,KAAKC,EAAaC,iBACvDC,EAA4BF,EAAaG,MAAMC,6BAErD,SAAAC,KAiDA,OA/CEA,EAAAlB,UAAAmB,cAAA,SAAcC,OACNC,EAAoD,iBAA1BD,EAAoB,SAC9CE,EAA4CD,EAAmBD,EAAoB,SAAI,GA8B7F,OA7BgBL,EAAgBQ,OAAOb,GAE/Bc,SAAO,SAACC,OAEVC,EADEC,EAASZ,EAAgBa,QAAQH,IAAQ,EAG3CJ,GAAoBM,IACtBD,EAASN,EAAoB,SAAEK,SAGV,IAAnBL,EAAUK,KACZC,EAASN,EAAUK,SAGN,IAAXC,IAIFJ,EAAeG,GADY,mBAAXC,GAAyBC,EACtB,eAAG,IAAAE,EAAAC,KAASC,EAAA,GAAAC,EAAA,EAAAA,EAAAC,UAAAC,OAAAF,IAAAD,EAAAC,GAAAC,UAAAD,GAC7B,OAAOZ,EAAUe,QAAQC,KAAG,WACxB,OAAOV,EAAOW,MAAMR,EAAME,OAKVL,MAInBJ,GAGTJ,EAAAlB,UAAAsC,eAAA,SAAeC,OACPC,EAAoC,GAS1C,OAR6B7B,OAAOC,KAAK2B,GAE9Bf,SAAO,SAAEiB,GACdF,EAAQG,eAAeD,KACzBD,EAAOC,GAASF,EAAQE,GAAOE,iBAI5BH,uBA/CV/B,EAAAA,aAiDDS,kBCuQE,SAAA0B,EACUT,EACAU,EACAC,GAFAhB,KAAAK,QAAAA,EACAL,KAAAe,oBAAAA,EACAf,KAAAgB,qBAAAA,EAvSFhB,KAAAiB,kBAA0C,GAGzCjB,KAAAkB,MAAQ,GAyYnB,OAlGEJ,EAAA5C,UAAAiD,gBAAA,WAAA,IAAApB,EAAAC,KACQoB,EAAqCpB,KAAKgB,qBAAqB3B,cAAcW,MAEnF,GAAIA,KAAKiB,kBAAkBb,OAAS,EAAG,KAC/BiB,EAAU,GAEhBrB,KAAKiB,kBAAkBvB,SAAO,SAAE4B,GAC9BD,EAAQE,KAAKxB,EAAKiB,qBAAqB3B,cAAciC,OAGvDF,EAAiB,QAAIC,EAGvBrB,KAAKK,QAAQmB,mBAAiB,WAC5BzB,EAAK0B,YAAc,IAAI1C,EAAa2C,KAAK3B,EAAK4B,UAAUC,cAAeR,GAEnErB,EAAKmB,OACPnB,EAAKgB,oBAAoBzC,iBAAiByB,EAAKmB,MAAOnB,EAAK0B,aAG7D1B,EAAK0B,YAAYI,WAIrBf,EAAA5C,UAAA4D,YAAA,SAAYrB,GACV,QAAyB,IAArBT,KAAKyB,YAAT,KAIMM,EAAwC/B,KAAKgB,qBAAqBR,eAAeC,GAEvFT,KAAKgC,eAAeD,KAGtBjB,EAAA5C,UAAA+D,YAAA,WAAA,IAAAlC,EAAAC,KACEA,KAAKK,QAAQmB,mBAAiB,WAC5BzB,EAAK0B,YAAYS,aAGflC,KAAKkB,OACPlB,KAAKe,oBAAoBtC,eAAeuB,KAAKkB,QAIjDJ,EAAA5C,UAAA8D,eAAA,SAAeG,GAAf,IAAApC,EAAAC,KACOA,KAAKyB,aAIVzB,KAAKK,QAAQmB,mBAAiB,WAC5BzB,EAAK0B,YAAYW,eAAeD,GAAa,OAIjDrB,EAAA5C,UAAAmE,qBAAA,WAAA,IAAAtC,EAAAC,KACE,QAA+B,IAA3BA,KAAKiB,mBAILjB,KAAKiB,kBAAkBb,OAAS,EAAG,KAC/BkC,EAAyC,GAE/CtC,KAAKiB,kBAAkBvB,SAAO,SAAE4B,GAC9BgB,EAAQf,KAAKxB,EAAKiB,qBAAqB3B,cAAciC,WAGjDS,EAAa,CACjBQ,QAASD,GAGXtC,KAAKgC,eAAeD,KAIxBjB,EAAA5C,UAAAsE,2BAAA,WAAA,IAAAzC,EAAAC,KACQuC,EAAyC,GAE3CvC,KAAKiB,kBAAkBb,OAAS,GAClCJ,KAAKiB,kBAAkBvB,SAAO,SAAE4B,GAC9BiB,EAAQhB,KAAKxB,EAAKiB,qBAAqB3B,cAAciC,OAIzDtB,KAAKgC,eAAe,CAAEO,QAAOA,KAG/BzB,EAAA5C,UAAAuE,UAAA,SAAUnB,GACRtB,KAAKiB,kBAAkBM,KAAKD,GAC5BtB,KAAKwC,8BAGP1B,EAAA5C,UAAAwE,aAAA,SAAapB,OACLqB,EAAgB3C,KAAKiB,kBAAkBnB,QAAQwB,GAErDtB,KAAKiB,kBAAkB2B,OAAOD,EAAO,GACrC3C,KAAKwC,kDAnZRK,EAAAA,UAAS5C,KAAA,CAAC,CACT6C,SAAU,YACVC,SAAU,sCACVC,cAAeC,EAAAA,kBAAkBC,KACjCC,UAAW,CAAElF,EAAoBmB,gDAhBjCgE,EAAAA,cAQOnF,SACAmB,wCAUNiE,EAAAA,UAASpD,KAAA,CAAC,YAAa,CAAEqD,QAAQ,sBAKjCC,EAAAA,qBACAA,EAAAA,qCAEAA,EAAAA,0BACAA,EAAAA,yBACAA,EAAAA,iCACAA,EAAAA,8BACAA,EAAAA,4BACAA,EAAAA,iCACAA,EAAAA,8BACAA,EAAAA,8BACAA,EAAAA,2BACAA,EAAAA,2BACAA,EAAAA,2BACAA,EAAAA,mCACAA,EAAAA,oBACAA,EAAAA,qBACAA,EAAAA,+BACAA,EAAAA,yBACAA,EAAAA,0BACAA,EAAAA,kCACAA,EAAAA,kCACAA,EAAAA,uBACAA,EAAAA,6BACAA,EAAAA,6BACAA,EAAAA,yBACAA,EAAAA,sCACAA,EAAAA,wBACAA,EAAAA,2BACAA,EAAAA,wBACAA,EAAAA,yBACAA,EAAAA,6BACAA,EAAAA,mCACAA,EAAAA,sCACAA,EAAAA,mCACAA,EAAAA,6BACAA,EAAAA,oBACAA,EAAAA,0BACAA,EAAAA,0BACAA,EAAAA,2BACAA,EAAAA,sCACAA,EAAAA,4BACAA,EAAAA,4BACAA,EAAAA,sBACAA,EAAAA,kCACAA,EAAAA,0BACAA,EAAAA,0BACAA,EAAAA,sBACAA,EAAAA,sCACAA,EAAAA,uBACAA,EAAAA,gCACAA,EAAAA,+BACAA,EAAAA,4BACAA,EAAAA,wBACAA,EAAAA,iCACAA,EAAAA,sBACAA,EAAAA,6BACAA,EAAAA,0BACAA,EAAAA,oCACAA,EAAAA,qBACAA,EAAAA,wBACAA,EAAAA,0BACAA,EAAAA,kCACAA,EAAAA,gCACAA,EAAAA,kCACAA,EAAAA,6BACAA,EAAAA,+BACAA,EAAAA,uBACAA,EAAAA,uBACAA,EAAAA,0BACAA,EAAAA,uBACAA,EAAAA,uBACAA,EAAAA,4BACAA,EAAAA,4BACAA,EAAAA,kCACAA,EAAAA,6BACAA,EAAAA,0BACAA,EAAAA,mCACAA,EAAAA,6BACAA,EAAAA,oCACAA,EAAAA,qCACAA,EAAAA,+BACAA,EAAAA,2BACAA,EAAAA,wCACAA,EAAAA,+BACAA,EAAAA,4BACAA,EAAAA,wBACAA,EAAAA,qCACAA,EAAAA,6BACAA,EAAAA,wBACAA,EAAAA,0BACAA,EAAAA,8BACAA,EAAAA,0BACAA,EAAAA,sBACAA,EAAAA,6BACAA,EAAAA,6BACAA,EAAAA,iCACAA,EAAAA,8BACAA,EAAAA,+BACAA,EAAAA,sBACAA,EAAAA,yBACAA,EAAAA,yBACAA,EAAAA,wBACAA,EAAAA,sBACAA,EAAAA,8BACAA,EAAAA,wBACAA,EAAAA,qBACAA,EAAAA,4BACAA,EAAAA,wBACAA,EAAAA,8BACAA,EAAAA,oBACAA,EAAAA,iCACAA,EAAAA,oBACAA,EAAAA,yBACAA,EAAAA,6CACAA,EAAAA,0CACAA,EAAAA,2BACAA,EAAAA,qBACAA,EAAAA,wBACAA,EAAAA,6BAGAA,EAAAA,6BACAA,EAAAA,iCACAA,EAAAA,kCACAA,EAAAA,2BACAA,EAAAA,oCACAA,EAAAA,mCACAA,EAAAA,iCACAA,EAAAA,+BACAA,EAAAA,iCACAA,EAAAA,+BACAA,EAAAA,8CACAA,EAAAA,oCACAA,EAAAA,oCACAA,EAAAA,yBACAA,EAAAA,8BACAA,EAAAA,8BACAA,EAAAA,8BACAA,EAAAA,wBACAA,EAAAA,6BACAA,EAAAA,4BACAA,EAAAA,gCACAA,EAAAA,oCACAA,EAAAA,kCACAA,EAAAA,+CACAA,EAAAA,qCACAA,EAAAA,qCACAA,EAAAA,2BACAA,EAAAA,gCACAA,EAAAA,iCACAA,EAAAA,6CACAA,EAAAA,iCACAA,EAAAA,0CACAA,EAAAA,gCACAA,EAAAA,6BACAA,EAAAA,yBACAA,EAAAA,mCACAA,EAAAA,2BACAA,EAAAA,6BACAA,EAAAA,+BACAA,EAAAA,uCACAA,EAAAA,yCACAA,EAAAA,mCACAA,EAAAA,sCACAA,EAAAA,yCACAA,EAAAA,0CACAA,EAAAA,oCACAA,EAAAA,mCACAA,EAAAA,oCACAA,EAAAA,kCACAA,EAAAA,0BACAA,EAAAA,uCACAA,EAAAA,yBACAA,EAAAA,oCACAA,EAAAA,sCACAA,EAAAA,mCACAA,EAAAA,8BACAA,EAAAA,8BACAA,EAAAA,2BACAA,EAAAA,6BACAA,EAAAA,4BACAA,EAAAA,8BACAA,EAAAA,uCACAA,EAAAA,qCACAA,EAAAA,8BACAA,EAAAA,oCACAA,EAAAA,iCACAA,EAAAA,uCACAA,EAAAA,gCACAA,EAAAA,kCACAA,EAAAA,qCACAA,EAAAA,wCACAA,EAAAA,4BACAA,EAAAA,yBACAA,EAAAA,oCACAA,EAAAA,kCACAA,EAAAA,+BACAA,EAAAA,6BACAA,EAAAA,iCACAA,EAAAA,8BACAA,EAAAA,mCACAA,EAAAA,6BACAA,EAAAA,qDACAA,EAAAA,kDACAA,EAAAA,8BACAA,EAAAA,8BACAA,EAAAA,4CACAA,EAAAA,mCACAA,EAAAA,4BACAA,EAAAA,kCACAA,EAAAA,oCACAA,EAAAA,kCACAA,EAAAA,gCACAA,EAAAA,kCACAA,EAAAA,gCACAA,EAAAA,yCACAA,EAAAA,qCACAA,EAAAA,0BACAA,EAAAA,+BACAA,EAAAA,+BACAA,EAAAA,yBACAA,EAAAA,iCACAA,EAAAA,iCACAA,EAAAA,0CACAA,EAAAA,sCACAA,EAAAA,4BACAA,EAAAA,iCACAA,EAAAA,iCACAA,EAAAA,8BACAA,EAAAA,0BACAA,EAAAA,qCACAA,EAAAA,6BACAA,EAAAA,oCACAA,EAAAA,8BACAA,EAAAA,gCACAA,EAAAA,uCACAA,EAAAA,qCACAA,EAAAA,oCACAA,EAAAA,qCACAA,EAAAA,mCACAA,EAAAA,2BACAA,EAAAA,0BACAA,EAAAA,qCACAA,EAAAA,uCACAA,EAAAA,0CACAA,EAAAA,oCACAA,EAAAA,+BACAA,EAAAA,+BACAA,EAAAA,4BACAA,EAAAA,8BACAA,EAAAA,6BACAA,EAAAA,+BACAA,EAAAA,iCACAA,EAAAA,iCACAA,EAAAA,mCACAA,EAAAA,uCACAA,EAAAA,2CACAA,EAAAA,iCACAA,EAAAA,6BACAA,EAAAA,0BACAA,EAAAA,qCACAA,EAAAA,mCACAA,EAAAA,gCACAA,EAAAA,kCACAA,EAAAA,+BACAA,EAAAA,8BACAA,EAAAA,iCACAA,EAAAA,yBACAA,EAAAA,oBACAA,EAAAA,wCACAA,EAAAA,mCACAA,EAAAA,+BACAA,EAAAA,wCACAA,EAAAA,8BACAA,EAAAA,mCACAA,EAAAA,0BACAA,EAAAA,mCACAA,EAAAA,6BACAA,EAAAA,+BACAA,EAAAA,oCACAA,EAAAA,+BACAA,EAAAA,gCACAA,EAAAA,kCACAA,EAAAA,oCACAA,EAAAA,mCACAA,EAAAA,oCACAA,EAAAA,mCACAA,EAAAA,SA0GHzC,sBC9WE,SAAA0C,EAAoBC,GAAAzD,KAAAyD,gBAAAA,EAzCZzD,KAAA0D,UAAW,EA2DrB,OAhBEF,EAAAtF,UAAAyF,SAAA,WACE3D,KAAK0D,UAAW,EAChB1D,KAAKyD,gBAAgBhB,UAAUzC,OAGjCwD,EAAAtF,UAAA4D,YAAA,WACM9B,KAAK0D,UAIT1D,KAAKyD,gBAAgBpB,wBAGvBmB,EAAAtF,UAAA+D,YAAA,WACEjC,KAAKyD,gBAAgBf,aAAa1C,2BA9DrC6C,EAAAA,UAAS5C,KAAA,CAAC,CACT6C,SAAU,aACVC,SAAU,gDALHjC,yCAUNyC,EAAAA,yBACAA,EAAAA,4BACAA,EAAAA,+BACAA,EAAAA,yBACAA,EAAAA,6BACAA,EAAAA,yBACAA,EAAAA,sCACAA,EAAAA,wBACAA,EAAAA,6BACAA,EAAAA,oBACAA,EAAAA,0BACAA,EAAAA,2BACAA,EAAAA,sBACAA,EAAAA,sCACAA,EAAAA,oCACAA,EAAAA,qBACAA,EAAAA,wBACAA,EAAAA,mCACAA,EAAAA,6BACAA,EAAAA,2BACAA,EAAAA,wCACAA,EAAAA,wBACAA,EAAAA,qCACAA,EAAAA,wBACAA,EAAAA,6BACAA,EAAAA,iCACAA,EAAAA,+BACAA,EAAAA,sBACAA,EAAAA,sBACAA,EAAAA,qBACAA,EAAAA,4BACAA,EAAAA,oBACAA,EAAAA,iCACAA,EAAAA,yBACAA,EAAAA,2BACAA,EAAAA,qBACAA,EAAAA,wBACAA,EAAAA,SAoBHC,sBCrEA,SAAAI,KAmBA,OANgBA,EAAAC,QAAd,WACE,MAAO,CACLC,SAAUF,EACVT,UAAW,CAAElF,KALV2F,EAAAG,QAAU,4BAXlBC,EAAAA,SAAQ/D,KAAA,CAAC,CACRgE,aAAc,CACZnD,EACA0C,GAEFU,QAAS,CACPpD,EACA0C,OAYJI","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.0';\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.0';\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=
|