@acorex/data-grid 3.0.63 → 4.1.0
Sign up to get free protection for your applications and to get access to all the features.
- package/acorex-data-grid.d.ts +1 -0
- package/esm2020/acorex-data-grid.mjs +5 -0
- package/esm2020/lib/data-grid/columns/check-column.component.mjs +117 -0
- package/esm2020/lib/data-grid/columns/column.component.mjs +164 -0
- package/{esm2015/lib/data-grid/columns/command-column.component.js → esm2020/lib/data-grid/columns/command-column.component.mjs} +46 -35
- package/esm2020/lib/data-grid/columns/date-column.component.mjs +112 -0
- package/esm2020/lib/data-grid/columns/row-number-column.component.mjs +37 -0
- package/esm2020/lib/data-grid/columns/selection-column.component.mjs +42 -0
- package/esm2020/lib/data-grid/columns/text-column.component.mjs +89 -0
- package/esm2020/lib/data-grid/datagrid.component.mjs +658 -0
- package/esm2020/lib/data-grid/datagrid.events.mjs +2 -0
- package/esm2020/lib/data-grid/datagrid.module.mjs +145 -0
- package/esm2020/lib/data-grid/filters/filter.component.mjs +39 -0
- package/esm2020/lib/data-grid/templates/cell-template.component.mjs +53 -0
- package/esm2020/lib/data-grid/templates/detail-template.component.mjs +46 -0
- package/esm2020/lib/data-grid/templates/row-template.component.mjs +43 -0
- package/esm2020/lib/data-lov/data-lov-popup/data-lov-popup.component.mjs +118 -0
- package/esm2020/lib/data-lov/data-lov.component.mjs +163 -0
- package/esm2020/lib/data-lov/data-lov.module.mjs +23 -0
- package/esm2020/public-api.mjs +18 -0
- package/fesm2015/acorex-data-grid.mjs +1875 -0
- package/fesm2015/acorex-data-grid.mjs.map +1 -0
- package/fesm2020/acorex-data-grid.mjs +1875 -0
- package/fesm2020/acorex-data-grid.mjs.map +1 -0
- package/lib/data-grid/columns/check-column.component.d.ts +7 -0
- package/lib/data-grid/columns/column.component.d.ts +3 -0
- package/lib/data-grid/columns/command-column.component.d.ts +5 -0
- package/lib/data-grid/columns/date-column.component.d.ts +5 -0
- package/lib/data-grid/columns/row-number-column.component.d.ts +3 -0
- package/lib/data-grid/columns/selection-column.component.d.ts +3 -0
- package/lib/data-grid/columns/text-column.component.d.ts +5 -0
- package/lib/data-grid/datagrid.component.d.ts +8 -1
- package/lib/data-grid/datagrid.module.d.ts +20 -0
- package/lib/data-grid/filters/filter.component.d.ts +3 -0
- package/lib/data-grid/templates/cell-template.component.d.ts +5 -0
- package/lib/data-grid/templates/detail-template.component.d.ts +5 -0
- package/lib/data-grid/templates/row-template.component.d.ts +5 -0
- package/lib/data-lov/data-lov-popup/data-lov-popup.component.d.ts +3 -0
- package/lib/data-lov/data-lov.component.d.ts +3 -0
- package/lib/data-lov/data-lov.module.d.ts +10 -0
- package/package.json +23 -13
- package/acorex-data-grid.metadata.json +0 -1
- package/bundles/acorex-data-grid.umd.js +0 -2249
- package/bundles/acorex-data-grid.umd.js.map +0 -1
- package/bundles/acorex-data-grid.umd.min.js +0 -16
- package/bundles/acorex-data-grid.umd.min.js.map +0 -1
- package/esm2015/acorex-data-grid.js +0 -5
- package/esm2015/lib/data-grid/columns/check-column.component.js +0 -104
- package/esm2015/lib/data-grid/columns/column.component.js +0 -204
- package/esm2015/lib/data-grid/columns/date-column.component.js +0 -114
- package/esm2015/lib/data-grid/columns/row-number-column.component.js +0 -39
- package/esm2015/lib/data-grid/columns/selection-column.component.js +0 -48
- package/esm2015/lib/data-grid/columns/text-column.component.js +0 -81
- package/esm2015/lib/data-grid/datagrid.component.js +0 -722
- package/esm2015/lib/data-grid/datagrid.events.js +0 -1
- package/esm2015/lib/data-grid/datagrid.module.js +0 -98
- package/esm2015/lib/data-grid/filters/filter.component.js +0 -25
- package/esm2015/lib/data-grid/templates/cell-template.component.js +0 -47
- package/esm2015/lib/data-grid/templates/detail-template.component.js +0 -45
- package/esm2015/lib/data-grid/templates/row-template.component.js +0 -40
- package/esm2015/lib/data-lov/data-lov-popup/data-lov-popup.component.js +0 -121
- package/esm2015/lib/data-lov/data-lov.component.js +0 -212
- package/esm2015/lib/data-lov/data-lov.module.js +0 -21
- package/esm2015/public-api.js +0 -17
- package/esm5/acorex-data-grid.js +0 -5
- package/esm5/lib/data-grid/columns/check-column.component.js +0 -102
- package/esm5/lib/data-grid/columns/column.component.js +0 -206
- package/esm5/lib/data-grid/columns/command-column.component.js +0 -98
- package/esm5/lib/data-grid/columns/date-column.component.js +0 -119
- package/esm5/lib/data-grid/columns/row-number-column.component.js +0 -42
- package/esm5/lib/data-grid/columns/selection-column.component.js +0 -52
- package/esm5/lib/data-grid/columns/text-column.component.js +0 -81
- package/esm5/lib/data-grid/datagrid.component.js +0 -780
- package/esm5/lib/data-grid/datagrid.events.js +0 -1
- package/esm5/lib/data-grid/datagrid.module.js +0 -101
- package/esm5/lib/data-grid/filters/filter.component.js +0 -16
- package/esm5/lib/data-grid/templates/cell-template.component.js +0 -46
- package/esm5/lib/data-grid/templates/detail-template.component.js +0 -49
- package/esm5/lib/data-grid/templates/row-template.component.js +0 -44
- package/esm5/lib/data-lov/data-lov-popup/data-lov-popup.component.js +0 -127
- package/esm5/lib/data-lov/data-lov.component.js +0 -222
- package/esm5/lib/data-lov/data-lov.module.js +0 -24
- package/esm5/public-api.js +0 -17
- package/fesm2015/acorex-data-grid.js +0 -1927
- package/fesm2015/acorex-data-grid.js.map +0 -1
- package/fesm5/acorex-data-grid.js +0 -2005
- package/fesm5/acorex-data-grid.js.map +0 -1
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","ng://@acorex/data-grid/lib/data-grid/templates/cell-template.component.ts","ng://@acorex/data-grid/lib/data-grid/columns/column.component.ts","ng://@acorex/data-grid/lib/data-grid/columns/check-column.component.ts","ng://@acorex/data-grid/lib/data-grid/columns/command-column.component.ts","ng://@acorex/data-grid/lib/data-grid/columns/date-column.component.ts","ng://@acorex/data-grid/lib/data-grid/columns/selection-column.component.ts","ng://@acorex/data-grid/lib/data-grid/columns/text-column.component.ts","ng://@acorex/data-grid/lib/data-grid/columns/row-number-column.component.ts","ng://@acorex/data-grid/lib/data-grid/templates/row-template.component.ts","ng://@acorex/data-grid/lib/data-grid/templates/detail-template.component.ts","ng://@acorex/data-grid/lib/data-grid/datagrid.component.ts","ng://@acorex/data-grid/lib/data-grid/filters/filter.component.ts","ng://@acorex/data-grid/lib/data-grid/datagrid.module.ts","ng://@acorex/data-grid/lib/data-lov/data-lov-popup/data-lov-popup.component.ts","ng://@acorex/data-grid/lib/data-lov/data-lov.component.ts","ng://@acorex/data-grid/lib/data-lov/data-lov.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__metadata","metadataKey","metadataValue","metadata","__read","o","n","m","Symbol","iterator","e","call","ar","next","done","push","value","error","AXDataGridCellTemplateComponent","renderer","AXDataGridCellTemplateRenderer","ngOnInit","params","templateRef","ContentChild","TemplateRef","static","Component","selector","template","agInit","rowData","data","refresh","AXGridDataColumn","width","pinned","allowSorting","allowFiltering","AXConfig","get","sort","field","caption","checkbox","headerCheckbox","groupIndex","treeIndex","enableRowGroup","hide","floatingFilter","disableMenu","resizable","menuColumnDisable","menuItemDisable","render","col","suppressMenu","menuTabs","filter","headerName","minWidth","maxWidth","sortable","rowGroupIndex","rowGroup","cellClass","THAT_1","Function","column","rowIndex","node","rowLevel","level","cellTemplate","cellRendererFramework","cellRendererParams","checkboxSelection","Input","AXGridCheckColumn","_super","BooleanRenderer","filterFramework","BooleanFilterRenderer","AXGridCheckColumn_1","providers","provide","useExisting","changeDetection","ChangeDetectionStrategy","OnPush","selectItem","label","valueGetter","isFilterActive","undefined","doesFilterPass","getModel","setModel","model","ngAfterViewInit","_this","window","setTimeout","input","element","nativeElement","focus","onChange","newValue","filterChangedCallback","ViewChild","read","ViewContainerRef","AXGridCommandColumn","apply","items","onItemClick","EventEmitter","CommandRenderer","onClick","emit","command","name","htmlEvent","Output","AXGridCommandColumn_1","encapsulation","ViewEncapsulation","None","mapParams","isArray","clickCallback","item","disable","AXGridDateColumn","type","format","comparator","valueA","valueB","date1","AXDateTime","convert","date2","date","getTime","valueFormatter","AXGridDateColumn_1","AXDatePickerFilterComponent","selectableHoliday","ngOnDestroy","console","log","onDateChanged","selectedDates","getDate","setDate","setInputPlaceholder","placeholder","onValueChanged","AXDatePickerComponent","ElementRef","host","AXGridSelectionColumn","condition","AXGridSelectionColumn_1","AXGridTextColumn","AXGridTextColumn_1","TextFilterRenderer","AXTextBoxComponent","AXGridRowNumberColumn","AXGridRowNumberColumn_1","AXDataGridRowTemplateComponent","AXDataGridRowTemplateRenderer","callRecords","AXDataGridDetailTemplateComponent","height","AXDataGridDetailTemplateRenderer","LicenseManager","validateLicense","AXDataGridColumnsChangeEvent","AXValueEvent","AXDataGridCellEvent","AXDataEvent","AXDaagridRowClickEvent","AXDataGridSelectionChangeEvent","AXDataGridRowSelectionChangeEvent","AXDataGridComponent","ref","cdr","columnDefs","rowModelType","frameworkComponents","internalHeight","masterDetail","treeData","enabelSelect","gridView","groupSelectsChildren","oldSelectionNodes","paginationAutoPageSize","paginationPageSize","cacheBlockSize","remoteOperation","rowMultiSelectWithClick","suppressRowClickSelection","suppressCellSelection","sizeColumnsToFit","showCheckBox","autoGroupColumnDef","selectionMode","selectRow","rowGroupPanelShow","loadOnInit","keyField","hasChildField","columnsChange","_columns","defaultColDef","groupHideOpenParents","cellClick","cellDbClick","cellFocuse","rowClick","rowDbClick","selectionChanged","rowSelectionChange","onRowSelectionChanged","rtl","isServerSideGroup","getColumnDefs","gridApi","getServerSideGroupKey","internalGetRowClass","rowClass","localeText","AXTranslator","_searchText","v","setQuickFilter","searchText","_filter","forEach","f","fc","getFilterInstance","getFrameworkComponentInstance","_inlineColumns","concat","__spread","toArray","val","old","component","oldValue","htmlElement","_dataSource","_contentDataSource","getRowHeight","param","rowHeight","detailRowHeight","calcHeight","toolbar","that","rowCount","getRows","dataSourceSuccessCallback","successCallback","loadParams","skip","request","startRow","take","takeCount","api","paginationGetPageSize","sortModel","map","colId","dir","group","fields","rowGroupCols","keys","groupKeys","parentData","parentNode","filterModel","dataSource","fetch","getMainMenuItems","destroy","internalGridReady","gridOptions","checkGridSize","gridOptionsWrapper","setProperty","mapColumns","setServerSideDatasource","intenalGridDataSource","ngAfterContentInit","rowTemplate","fullWidthCellRendererFramework","fullWidthCellRendererParams","agDateInput","gridDetailTemplate","detailCellRendererParams","detailCellRenderer","detailRendererFramework","isFullWidthCell","getComputedStyle","getPropertyValue","gridSelectRow","forEachNode","select_1","id","setSelected","select_2","rebuildGrid","columns","groupColumn","find","elm","onDataReceived","subscribe","_data","totalCount","result","hideLoading","setRowData","onFetchStart","showLoading","searchInput","detectChanges","cellRenderer","displayedColumnsChanged","eee","columnApi","getAllDisplayedColumnGroups","colDef","route","internalGridCellClicked","mapCellEvent","internalGridCellDoubleClicked","internalGridCellFocused","internalGridRowClicked","mapRowEvent","internalGridRowDoubleClicked","differenceOf2Arrays","array1","array2","temp","indexOf","a","rowSelectionChanged","selected","internalGridSelectionChanged","args","oldNodes","nodes","getSelectedNodes","action","deselectAll","showLoadingOverlay","hideOverlay","internalGridSizeChanged","clientWidth","clientHeight","performSizeColumnsToFit","internalGridFirstDataRendered","ChangeDetectorRef","ContentChildren","QueryList","AXToolbarSearchComponent","AXToolbarComponent","AXDataSourceComponent","AXDataGridFilterComponent","AXDataGridModule","NgModule","declarations","imports","CommonModule","AXCoreModule","FormsModule","AXTextBoxModule","AXCheckBoxModule","AXSelectBoxModule","AXDataSourceModule","AXButtonModule","AXDatePickerModule","AgGridModule","withComponents","exports","entryComponents","AXDataLovPopupComponent","selectedItems","allowNull","selectedRows","onDoneClick","close","rowDoubleClicked","onCancelClick","ele","searchBox","arg","markForCheck","getFooterButtons","text","style","icon","onFooterButtonClick","AXBasePopupPageComponent","AXLOVComponent","popup","textField","allowSearch","valueField","popupSize","readonly","disabled","chipsWidth","size","mode","onSelectionChange","_validation","_contentValidation","selectBox","handleButtonClick","open","clearValidationStyle","initValidation","validation","handleSelectChange","Promise","resolve","dropdown","title","then","AXPopupService","AXValidation","AXSelectBoxComponent","AXLOVComponent_1","AXValidatableComponent","AXLOVModule","AXToolbarModule","AXSearchBoxModule"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Component, ContentChild, TemplateRef, ChangeDetectionStrategy } from '@angular/core';\r\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\r\nimport { ICellRendererParams } from 'ag-grid-community';\r\n\r\n@Component({\r\n selector: 'ax-cell-template',\r\n template: `<ng-content></ng-content>\r\n `\r\n})\r\n\r\nexport class AXDataGridCellTemplateComponent {\r\n @ContentChild(TemplateRef, { static: true }) templateRef: TemplateRef<any>;\r\n renderer: any;\r\n params: any;\r\n constructor() {\r\n this.renderer = AXDataGridCellTemplateRenderer;\r\n }\r\n ngOnInit(): void {\r\n this.params = {\r\n templateRef: this.templateRef\r\n }\r\n }\r\n}\r\n\r\n@Component({\r\n template: `\r\n <ng-container *ngTemplateOutlet='templateRef; context: { $implicit: rowData }'>\r\n </ng-container>\r\n `\r\n})\r\n\r\nexport class AXDataGridCellTemplateRenderer implements ICellRendererAngularComp {\r\n rowData: any;\r\n templateRef: TemplateRef<any>;\r\n\r\n constructor() { }\r\n\r\n agInit(params: ICellRendererParams): void {\r\n this.rowData = params.data;\r\n this.templateRef = (params as any).templateRef;\r\n }\r\n\r\n refresh(params: ICellRendererParams): boolean {\r\n this.rowData = params.data;\r\n return true;\r\n }\r\n}","import { AXConfig } from '@acorex/core';\r\nimport { Input, ContentChild, TemplateRef } from '@angular/core';\r\nimport { AXGridCellParams } from '../datagrid.events';\r\nimport { AXDataGridCellTemplateComponent } from '../templates/cell-template.component';\r\nimport { AXDatePickerFilterComponent } from './date-column.component';\r\n\r\n\r\nexport abstract class AXGridDataColumn {\r\n\r\n\r\n @ContentChild(AXDataGridCellTemplateComponent)\r\n cellTemplate: AXDataGridCellTemplateComponent;\r\n\r\n @Input()\r\n width: number = 100;\r\n\r\n @Input()\r\n maxWidth: number;\r\n\r\n @Input()\r\n minWidth: number;\r\n\r\n @Input()\r\n pinned: 'start' | 'end' | null = null;\r\n\r\n @Input()\r\n allowSorting: boolean = true;\r\n\r\n @Input()\r\n allowFiltering: boolean = AXConfig.get('datagrid.allowFiltering') || false;;\r\n\r\n @Input()\r\n cellClass: (params: AXGridCellParams) => (string | string[]) | (string | string[]);\r\n\r\n @Input()\r\n sort: 'asc' | 'desc' | null = null;\r\n\r\n @Input()\r\n field: string = '';\r\n\r\n @Input()\r\n caption: string = '';\r\n\r\n @Input()\r\n cellRendererParams: any;\r\n\r\n @Input()\r\n checkbox: boolean = false;\r\n\r\n @Input()\r\n headerCheckbox: boolean = false;\r\n\r\n @Input()\r\n groupIndex: number = -1;\r\n\r\n @Input()\r\n treeIndex: number = -1;\r\n\r\n @Input()\r\n enableRowGroup: boolean = false;\r\n\r\n @Input()\r\n hide: boolean = false;\r\n\r\n @Input()\r\n floatingFilter: boolean = AXConfig.get('datagrid.floatingFilter') || false;\r\n\r\n @Input()\r\n disableMenu: boolean = false;\r\n\r\n @Input()\r\n resizable: boolean = true;\r\n\r\n @Input()\r\n menuColumnDisable: boolean = false;\r\n\r\n @Input()\r\n menuItemDisable: boolean = false;\r\n\r\n constructor() { }\r\n\r\n render(): any {\r\n const col: any = {\r\n field: this.field,\r\n width: this.width,\r\n };\r\n col.resizable = this.resizable;\r\n col.suppressMenu = this.disableMenu;\r\n col.menuTabs = ['filterMenuTab', 'columnsMenuTab', 'generalMenuTab']\r\n col.floatingFilter = this.floatingFilter;\r\n\r\n if (!this.allowFiltering) {\r\n col.filter = false;\r\n col.menuTabs = col.menuTabs.filter(c => c != 'filterMenuTab');\r\n col.floatingFilter = false;\r\n }\r\n if (this.menuColumnDisable == true) {\r\n col.menuTabs = col.menuTabs.filter(c => c != 'columnsMenuTab');\r\n }\r\n if (this.menuItemDisable == true) {\r\n col.menuTabs = col.menuTabs.filter(c => c != 'generalMenuTab');\r\n }\r\n if (this.caption) {\r\n col.headerName = this.caption;\r\n }\r\n if (this.minWidth) {\r\n col.minWidth = this.minWidth;\r\n }\r\n if (this.maxWidth) {\r\n col.maxWidth = this.maxWidth;\r\n }\r\n if (this.pinned) {\r\n col.pinned = this.pinned === 'start' ? 'right' : 'left';\r\n // TODO: Change based on layout\r\n }\r\n if (this.allowSorting) {\r\n col.sortable = this.allowSorting;\r\n }\r\n if (this.sort) {\r\n col.sort = this.sort;\r\n }\r\n\r\n if (this.groupIndex >= 0) {\r\n col.rowGroupIndex = this.groupIndex;\r\n col.rowGroup = true;\r\n this.enableRowGroup = true;\r\n }\r\n\r\n if (this.treeIndex >= 0) {\r\n col.rowGroupIndex = this.treeIndex;\r\n col.rowGroup = false;\r\n }\r\n if (this.hide) {\r\n col.hide = true;\r\n\r\n }\r\n if (this.enableRowGroup) {\r\n col.enableRowGroup = this.enableRowGroup;\r\n }\r\n\r\n if (this.cellClass) {\r\n const THAT = this;\r\n if (this.cellClass instanceof Function) {\r\n col.cellClass = (p) => {\r\n return THAT.cellClass({\r\n column: THAT,\r\n rowIndex: p.node.rowIndex,\r\n rowLevel: p.node.level,\r\n data: p.data,\r\n value: p.value\r\n });\r\n };\r\n }\r\n else {\r\n col.cellClass = this.cellClass;\r\n\r\n }\r\n }\r\n //\r\n if (this.cellTemplate != null) {\r\n col.cellRendererFramework = this.cellTemplate.renderer;\r\n col.cellRendererParams = this.cellTemplate.params;\r\n }\r\n\r\n if (this.checkbox) {\r\n col.checkboxSelection = (params) => {\r\n return true;\r\n };\r\n // col.headerCheckboxSelection = this.headerCheckbox;\r\n }\r\n return col;\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import {\r\n Component,\r\n ChangeDetectionStrategy,\r\n ViewChild,\r\n ViewContainerRef\r\n} from '@angular/core';\r\nimport { AXGridDataColumn } from './column.component';\r\nimport { ICellRendererAngularComp, IFilterAngularComp } from 'ag-grid-angular';\r\nimport {\r\n ICellRendererParams,\r\n IFilterParams,\r\n RowNode,\r\n IDoesFilterPassParams,\r\n IAfterGuiAttachedParams\r\n} from 'ag-grid-community';\r\n\r\n@Component({\r\n selector: 'ax-check-column',\r\n template: '',\r\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridCheckColumn }],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\n\r\nexport class AXGridCheckColumn extends AXGridDataColumn {\r\n constructor() {\r\n super();\r\n }\r\n\r\n render() {\r\n const col = super.render();\r\n if (!col.cellRendererFramework) {\r\n col.cellRendererFramework = BooleanRenderer;\r\n }\r\n if (this.allowFiltering) {\r\n col.filterFramework = BooleanFilterRenderer;\r\n }\r\n return col;\r\n }\r\n}\r\n\r\n@Component({\r\n template: `\r\n <ax-check-box [value]='value' readonly='true'></ax-check-box>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class BooleanRenderer implements ICellRendererAngularComp {\r\n value: boolean;\r\n constructor() { }\r\n agInit(params: ICellRendererParams): void {\r\n this.value = params.value;\r\n }\r\n refresh(params: ICellRendererParams): boolean {\r\n this.value = params.value;\r\n return true;\r\n }\r\n}\r\n\r\n@Component({\r\n template: `\r\n <ax-data-grid-filter>\r\n <ax-select-box\r\n label='Select Box'\r\n [items]='selectItem'\r\n ></ax-select-box>\r\n </ax-data-grid-filter>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class BooleanFilterRenderer implements IFilterAngularComp {\r\n public value?: boolean = null;\r\n private params: IFilterParams;\r\n private valueGetter: (rowNode: RowNode) => any;\r\n @ViewChild('input', { static: true, read: ViewContainerRef }) public input;\r\n\r\n selectItem = [\r\n { value: 0, label: 'True' },\r\n { value: 1, label: 'False' },\r\n ];\r\n agInit(params: IFilterParams): void {\r\n this.params = params;\r\n this.valueGetter = params.valueGetter;\r\n }\r\n\r\n isFilterActive(): boolean {\r\n return this.value !== null && this.value !== undefined;\r\n }\r\n\r\n doesFilterPass(params: IDoesFilterPassParams): boolean {\r\n return this.value === this.valueGetter(params.node);\r\n }\r\n\r\n getModel(): any {\r\n return { value: this.value };\r\n }\r\n\r\n setModel(model: any): void {\r\n this.value = model ? model.value : null;\r\n }\r\n\r\n ngAfterViewInit(params: IAfterGuiAttachedParams): void {\r\n window.setTimeout(() => {\r\n this.input.element.nativeElement.focus();\r\n });\r\n }\r\n\r\n onChange(newValue): void {\r\n if (this.value !== newValue) {\r\n this.value = newValue;\r\n this.params.filterChangedCallback();\r\n }\r\n }\r\n}\r\n","import { AXGridDataColumn } from './column.component';\r\nimport { ChangeDetectionStrategy, Component, Input, EventEmitter, ViewEncapsulation, Output, ChangeDetectorRef } from '@angular/core';\r\nimport { ICellRendererParams } from 'ag-grid-community';\r\nimport { AXGridRowCommandEvent } from '../datagrid.events';\r\nimport { AXMenuItem } from '@acorex/core';\r\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\r\n\r\nexport type AXGridRowCommandFunction = (row: any) => AXMenuItem[];\r\n\r\n@Component({\r\n selector: 'ax-command-column',\r\n template: '',\r\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridCommandColumn }],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AXGridCommandColumn extends AXGridDataColumn {\r\n @Input()\r\n items: AXMenuItem[] | AXGridRowCommandFunction = [];\r\n\r\n @Output()\r\n onItemClick: EventEmitter<AXGridRowCommandEvent> = new EventEmitter<AXGridRowCommandEvent>();\r\n\r\n render() {\r\n const col = super.render();\r\n if (!col.cellRendererFramework) {\r\n col.cellRendererFramework = CommandRenderer;\r\n }\r\n col.cellRendererParams = {\r\n items: this.items,\r\n onClick: (e) => {\r\n this.onItemClick.emit({\r\n command: e.name,\r\n data: e.data,\r\n rowIndex: e.rowIndex,\r\n rowLevel: e.rowLevel,\r\n htmlEvent: e.htmlEvent\r\n });\r\n }\r\n };\r\n col.sortable = false;\r\n col.filter = false;\r\n col.valueGetter = (params) => {\r\n return this.items;\r\n };\r\n return col;\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'ax-command-cell',\r\n template: `\r\n <button\r\n *ngFor=\"let item of items; let i = index\"\r\n class=\"ax button md ax-grid-command-button {{ item.style || 'ax primary blank' }}\"\r\n [class.disabled]=\"item.disable\"\r\n type=\"button\"\r\n [title]=\"item.tooltip\"\r\n [attr.tabindex]=\"i\"\r\n (click)=\"onClick(item, $event)\"\r\n >\r\n <i [ngClass]=\"item.icon\"></i>{{ item.text }}\r\n </button>\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class CommandRenderer implements ICellRendererAngularComp {\r\n items: AXMenuItem[] | AXGridRowCommandFunction = [];\r\n node: any;\r\n private clickCallback: Function;\r\n\r\n constructor() {}\r\n\r\n agInit(params: ICellRendererParams): void {\r\n this.mapParams(params);\r\n }\r\n\r\n refresh(params: ICellRendererParams): boolean {\r\n this.mapParams(params);\r\n return true;\r\n }\r\n\r\n private mapParams(params: any) {\r\n this.node = params.node;\r\n this.items = typeof params.items == 'function' ? params.items({ data: this.node.data }) : Array.isArray(params.items) ? params.items : [];\r\n this.clickCallback = params.onClick;\r\n }\r\n\r\n onClick(item: AXMenuItem, e: MouseEvent) {\r\n if (this.clickCallback && !item.disable) {\r\n this.clickCallback({\r\n name: item.name,\r\n rowLevel: this.node.level,\r\n rowIndex: this.node.rowIndex,\r\n data: this.node.data,\r\n htmlEvent: e\r\n });\r\n }\r\n }\r\n}\r\n","\r\nimport {\r\n Component,\r\n ChangeDetectionStrategy,\r\n Input,\r\n ViewEncapsulation,\r\n ViewChild,\r\n ElementRef\r\n} from '@angular/core';\r\nimport { AXGridDataColumn } from './column.component';\r\nimport { AXDateTime, AXConfig, AXCalendarType } from '@acorex/core';\r\nimport { AXDatePickerComponent } from '@acorex/components';\r\n@Component({\r\n selector: 'ax-date-column',\r\n template: '',\r\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridDateColumn }],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AXGridDateColumn extends AXGridDataColumn {\r\n constructor() {\r\n super();\r\n }\r\n\r\n @Input()\r\n format: string;\r\n\r\n @Input()\r\n type: AXCalendarType = AXConfig.get('dateTime.type');\r\n\r\n render() {\r\n const col = super.render();\r\n col.cellRendererParams = {\r\n format: this.format,\r\n };\r\n\r\n col.comparator = (valueA: any, valueB: any) => {\r\n const date1 = AXDateTime.convert(valueA);\r\n const date2 = AXDateTime.convert(valueB);\r\n //\r\n if (date1 === null && date2 === null) {\r\n return 0;\r\n }\r\n if (date1 === null) {\r\n return -1;\r\n }\r\n if (date2 === null) {\r\n return 1;\r\n }\r\n return (date1.date.getTime() - date2.date.getTime());\r\n };\r\n\r\n col.valueFormatter = (params) => {\r\n const date: AXDateTime = AXDateTime.convert(params.value, this.type);\r\n if (date) {\r\n return date.format(this.format);\r\n }\r\n else {\r\n return null;\r\n }\r\n };\r\n col.filter = 'agDateColumnFilter';\r\n // col.floatingFilter = true;\r\n return col;\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'ax-data-picker-filter',\r\n template: `<ax-date-picker [selectableHoliday]=\"selectableHoliday\" [allowClear]=\"true\" (onValueChanged)=\"onValueChanged($event)\" size=\"sm\">\r\n </ax-date-picker>`,\r\n host: { },\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AXDatePickerFilterComponent {\r\n @ViewChild(AXDatePickerComponent)\r\n datePicker: AXDatePickerComponent;\r\n @ViewChild('div', { read: ElementRef }) div: ElementRef;\r\n selectableHoliday: boolean = false;\r\n type: string = 'jalali';\r\n date: Date;\r\n params: any;\r\n picker: any;\r\n\r\n\r\n agInit(params: any): void {\r\n this.params = params;\r\n }\r\n\r\n ngAfterViewInit() {\r\n\r\n }\r\n ngOnDestroy() {\r\n console.log(`Destroying DateComponent`);\r\n }\r\n\r\n onDateChanged(selectedDates) {\r\n //this.date = selectedDates[0] || null;\r\n this.params.onDateChanged();\r\n }\r\n\r\n getDate(): Date {\r\n return this.date;\r\n }\r\n\r\n setDate(date: Date): void {\r\n this.date = date || null;\r\n //this.picker.setDate(date);\r\n }\r\n\r\n setInputPlaceholder(placeholder: string): void {\r\n //this.div.nativeElement.setAttribute('placeholder', placeholder);\r\n }\r\n onValueChanged(e) {\r\n\r\n this.setDate(e.value);\r\n this.onDateChanged(e.value);\r\n }\r\n\r\n}\r\n","import { AXGridDataColumn } from './column.component';\r\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ax-selection-column',\r\n template: '',\r\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridSelectionColumn }],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AXGridSelectionColumn extends AXGridDataColumn {\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n @Input()\r\n condition: (params) => boolean;\r\n\r\n @Input()\r\n pinned: 'start' | 'end' = 'start';\r\n\r\n @Input()\r\n width: number = 40;\r\n\r\n render() {\r\n const col = super.render();\r\n col.checkboxSelection = this.condition ? this.condition : true;\r\n // col.headerCheckboxSelection = true;\r\n col.pinned = this.pinned === 'start' ? 'right' : 'left';\r\n col.filter = false;\r\n col.resizable = true;\r\n col.sortable = false;\r\n col.minWidth = 5;\r\n col.width = this.width;\r\n col.floatingFilter = false;\r\n return col;\r\n }\r\n}\r\n","import { AXGridDataColumn } from './column.component';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ViewContainerRef,\r\n ViewChild\r\n} from '@angular/core';\r\nimport {\r\n IFilterParams,\r\n RowNode,\r\n IDoesFilterPassParams,\r\n IAfterGuiAttachedParams\r\n} from 'ag-grid-community';\r\nimport { IFilterAngularComp } from 'ag-grid-angular';\r\nimport { AXTextBoxComponent } from '@acorex/components';\r\n\r\n\r\n@Component({\r\n selector: 'ax-text-column',\r\n template: '',\r\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridTextColumn }],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AXGridTextColumn extends AXGridDataColumn {\r\n constructor() {\r\n super();\r\n }\r\n\r\n render() {\r\n const col = super.render();\r\n // if (this.allowFiltering) {\r\n // col.filterFramework = TextFilterRenderer;\r\n // }\r\n col.filter = 'agTextColumnFilter';\r\n return col;\r\n }\r\n}\r\n\r\n@Component({\r\n template: `\r\n <ax-data-grid-filter>\r\n <ax-text-box label='Filter' allowClear='true' (textChange)='onChange($event)'>\r\n </ax-text-box>\r\n </ax-data-grid-filter>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class TextFilterRenderer implements IFilterAngularComp {\r\n public value?: string = null;\r\n private params: IFilterParams;\r\n private valueGetter: (rowNode: RowNode) => any;\r\n @ViewChild(AXTextBoxComponent, { static: true })\r\n private input: AXTextBoxComponent;\r\n\r\n agInit(params: IFilterParams): void {\r\n this.params = params;\r\n this.valueGetter = params.valueGetter;\r\n }\r\n\r\n isFilterActive(): boolean {\r\n return this.value !== null && this.value !== undefined;\r\n }\r\n\r\n doesFilterPass(params: IDoesFilterPassParams): boolean {\r\n return this.value === this.valueGetter(params.node);\r\n }\r\n\r\n getModel(): any {\r\n return { value: this.value };\r\n }\r\n\r\n setModel(model: any): void {\r\n ;\r\n this.onChange(model ? model.value : null);\r\n }\r\n\r\n ngAfterViewInit(params: IAfterGuiAttachedParams): void {\r\n window.setTimeout(() => {\r\n this.input.focus();\r\n });\r\n }\r\n\r\n onChange(newValue): void {\r\n if (this.value !== newValue) {\r\n this.value = newValue;\r\n if (this.value === '') {\r\n this.value = null;\r\n }\r\n this.params.filterChangedCallback();\r\n }\r\n }\r\n}\r\n","import { AXGridDataColumn } from './column.component';\r\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { AXConfig } from '@acorex/core';\r\n\r\n@Component({\r\n selector: 'ax-row-number-column',\r\n template: '',\r\n providers: [{ provide: AXGridDataColumn, useExisting: AXGridRowNumberColumn }],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AXGridRowNumberColumn extends AXGridDataColumn {\r\n constructor() {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n @Input()\r\n condition: (params) => boolean;\r\n\r\n render() {\r\n const col = super.render();\r\n // col.checkboxSelection = this.condition ? this.condition : true;\r\n // col.headerCheckboxSelection = true;\r\n\r\n (col.headerName = this.caption ? this.caption : AXConfig.get('layout.rtl') ? 'ردیف' : 'Row'),\r\n (col.valueGetter = 'node.rowIndex + 1'),\r\n (col.pinned = this.pinned == null ? null : this.pinned === 'start' ? 'right' : 'left'),\r\n (col.filter = false);\r\n col.resizable = true;\r\n col.sortable = false;\r\n col.width = this.width;\r\n\r\n return col;\r\n }\r\n}\r\n","import { Component, ContentChild, TemplateRef, Input } from '@angular/core';\r\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\r\n\r\n@Component({\r\n selector: 'ax-row-template',\r\n template: `<ng-content></ng-content>`\r\n})\r\n\r\nexport class AXDataGridRowTemplateComponent {\r\n @ContentChild(TemplateRef, { static: true }) templateRef: TemplateRef<any>;\r\n renderer: any;\r\n params: any;\r\n constructor() {\r\n this.renderer = AXDataGridRowTemplateRenderer;\r\n }\r\n ngOnInit(): void {\r\n this.params = {\r\n templateRef: this.templateRef\r\n }\r\n }\r\n}\r\n\r\n@Component({\r\n template: `<ng-container *ngTemplateOutlet='templateRef; context: { $implicit: data }'></ng-container>`\r\n})\r\n\r\nexport class AXDataGridRowTemplateRenderer implements ICellRendererAngularComp {\r\n\r\n templateRef: TemplateRef<any>;\r\n\r\n data: any;\r\n\r\n refresh(params: any): boolean {\r\n return false;\r\n }\r\n\r\n agInit(params: any): void {\r\n this.data = params.data.callRecords;\r\n this.templateRef = params.templateRef;\r\n }\r\n}","import { Component, ContentChild, TemplateRef, Input, ChangeDetectorRef } from '@angular/core';\r\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\r\n\r\n@Component({\r\n selector: 'ax-grid-detail-template',\r\n template: `<ng-content></ng-content>`\r\n})\r\n\r\nexport class AXDataGridDetailTemplateComponent {\r\n @ContentChild(TemplateRef, { static: true }) templateRef: TemplateRef<any>;\r\n renderer: any;\r\n params: any;\r\n constructor() {\r\n this.renderer = AXDataGridDetailTemplateRenderer;\r\n }\r\n ngOnInit(): void {\r\n this.params = {\r\n templateRef: this.templateRef\r\n }\r\n }\r\n\r\n @Input()\r\n height: number = 100;\r\n}\r\n\r\n@Component({\r\n template: `<ng-container *ngTemplateOutlet='templateRef; context: { $implicit: data }'></ng-container>`\r\n})\r\n\r\nexport class AXDataGridDetailTemplateRenderer implements ICellRendererAngularComp {\r\n\r\n refresh(params: any): boolean {\r\n return false;\r\n }\r\n\r\n templateRef: TemplateRef<any>;\r\n data: any;\r\n\r\n agInit(params: any): void {\r\n this.data = params.data;\r\n this.templateRef = params.templateRef;\r\n }\r\n}","import {\r\n Component,\r\n ContentChild,\r\n Input,\r\n ContentChildren,\r\n QueryList,\r\n EventEmitter,\r\n Output,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy\r\n} from '@angular/core';\r\nimport { AXDataSourceComponent } from '@acorex/components';\r\nimport { AXGridDataColumn } from './columns/column.component';\r\nimport { AXDataSourceReadParams } from '@acorex/components';\r\nimport {\r\n GridOptions,\r\n CellClickedEvent,\r\n RowClickedEvent,\r\n CellEvent,\r\n RowEvent,\r\n FirstDataRenderedEvent,\r\n GridSizeChangedEvent,\r\n GridApi\r\n} from 'ag-grid-community';\r\n\r\nimport { LicenseManager } from 'ag-grid-enterprise';\r\nimport { ViewEncapsulation } from '@angular/core';\r\nimport { AXGridCellEvent, AXGridRowEvent, AXGridRowSelectionEvent, AXGridRowParams } from './datagrid.events';\r\n\r\nimport { AXDataGridRowTemplateComponent } from './templates/row-template.component';\r\nimport { AXToolbarSearchComponent, AXToolbarComponent, AXDataEvent, AXValueEvent } from '@acorex/components';\r\nimport { AXDataGridDetailTemplateComponent } from './templates/detail-template.component';\r\nimport { AXTranslator } from '@acorex/core';\r\nimport { AXDatePickerFilterComponent } from './columns/date-column.component';\r\nimport { AXConfig } from '@acorex/core';\r\n\r\nLicenseManager.prototype.validateLicense = function () {\r\n //console.info('Cracked by Arash Oshnoudi!');\r\n};\r\n\r\n// WatermarkComp.prototype.shouldDisplayWatermark = function () {\r\n// return false;\r\n// }\r\n\r\nexport class AXDataGridColumnsChangeEvent extends AXValueEvent<AXGridDataColumn[]> {\r\n component: AXDataGridComponent;\r\n}\r\nexport class AXDataGridCellEvent extends AXDataEvent<AXGridCellEvent> {\r\n component: AXDataGridComponent;\r\n}\r\nexport class AXDaagridRowClickEvent extends AXDataEvent<AXGridRowEvent> {\r\n component: AXDataGridComponent;\r\n}\r\n\r\nexport class AXDataGridSelectionChangeEvent extends AXDataEvent<AXGridRowSelectionEvent> {\r\n component: AXDataGridComponent;\r\n}\r\n\r\nexport class AXDataGridRowSelectionChangeEvent extends AXDataEvent<any> {\r\n component: AXDataGridComponent;\r\n selected: boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'ax-data-grid',\r\n templateUrl: './datagrid.component.html',\r\n encapsulation: ViewEncapsulation.None\r\n // changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class AXDataGridComponent {\r\n private gridApi;\r\n private dataSourceSuccessCallback;\r\n localeText: any;\r\n\r\n gridOptions: GridOptions;\r\n columnDefs: any[] = [];\r\n rowModelType = 'clientSide';\r\n fullWidthCellRendererFramework: any;\r\n fullWidthCellRendererParams: any;\r\n frameworkComponents: any = {};\r\n isFullWidthCell: Function;\r\n internalHeight: string = '100%';\r\n detailCellRenderer: any;\r\n detailCellRendererParams: any;\r\n detailRowHeight: number;\r\n masterDetail: boolean = false;\r\n treeData: boolean = false;\r\n enabelSelect: boolean = false;\r\n gridView: boolean = false;\r\n groupSelectsChildren: boolean = false;\r\n oldSelectionNodes: any[] = [];\r\n paginationAutoPageSize: boolean = true;\r\n paginationPageSize: number = 10;\r\n cacheBlockSize: number = 10;\r\n // @Input()\r\n // showRowNumber: boolean = true;\r\n\r\n @Input()\r\n public remoteOperation: boolean = false;\r\n\r\n @Input()\r\n public rowMultiSelectWithClick: boolean = true;\r\n\r\n @Input()\r\n public suppressRowClickSelection: boolean = true;\r\n\r\n @Input()\r\n public suppressCellSelection: boolean = false;\r\n\r\n @Input()\r\n public sizeColumnsToFit: boolean = true;\r\n\r\n @Input()\r\n showCheckBox: boolean = true;\r\n\r\n @Input()\r\n floatingFilter: boolean = false;\r\n\r\n @Input()\r\n takeCount: number;\r\n\r\n autoGroupColumnDef: any = {};\r\n\r\n @Input()\r\n selectionMode: 'single' | 'multiple' = 'single';\r\n\r\n // @Input()\r\n // allowFiltering: boolean = false;\r\n\r\n @Input()\r\n selectRow: any[] = [];\r\n\r\n @Input()\r\n rowGroupPanelShow: 'always' | 'never' = 'never';\r\n\r\n @Input()\r\n loadOnInit: boolean = true;\r\n\r\n // @Input()\r\n // groupDefaultExpanded: number = 0;\r\n\r\n @Input()\r\n keyField: string = 'null';\r\n\r\n @Input()\r\n hasChildField: string = 'null';\r\n\r\n private _searchText: string;\r\n @Input()\r\n public get searchText(): string {\r\n return this._searchText;\r\n }\r\n public set searchText(v: string) {\r\n if (v !== this._searchText) {\r\n this._searchText = v;\r\n if (this.gridApi) {\r\n this.refresh();\r\n this.gridApi.setQuickFilter(this.searchText);\r\n }\r\n }\r\n }\r\n\r\n private _filter: any[];\r\n @Input()\r\n public get filter(): any[] {\r\n return this._filter;\r\n }\r\n public set filter(v: any[]) {\r\n if (v !== this._filter) {\r\n this._filter = v;\r\n this._filter.forEach((f) => {\r\n const fc = this.gridApi.getFilterInstance(f.field);\r\n if (fc) {\r\n const ff = fc.getFrameworkComponentInstance();\r\n ff.setModel(f);\r\n }\r\n });\r\n }\r\n }\r\n\r\n @ContentChildren(AXGridDataColumn)\r\n private _inlineColumns: QueryList<AXGridDataColumn>;\r\n\r\n @Output()\r\n columnsChange: EventEmitter<AXDataGridColumnsChangeEvent> = new EventEmitter<AXDataGridColumnsChangeEvent>();\r\n\r\n private _columns: AXGridDataColumn[] = [];\r\n @Input()\r\n public get columns(): AXGridDataColumn[] {\r\n return this._inlineColumns ? [...this._columns, ...this._inlineColumns.toArray()] : this._columns;\r\n }\r\n\r\n public set columns(val: AXGridDataColumn[]) {\r\n if (val && val.length) {\r\n let old = this._columns;\r\n this._columns = val;\r\n this.columnsChange.emit({ component: this, value: val, oldValue: old, htmlElement: this.ref.nativeElement });\r\n }\r\n }\r\n\r\n defaultColDef: any = {\r\n filter: true,\r\n floatingFilter: true\r\n };\r\n\r\n @Input()\r\n rowHeight: any;\r\n\r\n @ContentChild(AXToolbarSearchComponent, { static: true })\r\n searchInput: AXToolbarSearchComponent;\r\n\r\n @ContentChild(AXToolbarComponent, { static: true })\r\n toolbar: AXToolbarComponent;\r\n\r\n @ContentChild(AXDataGridRowTemplateComponent, { static: true })\r\n rowTemplate: AXDataGridRowTemplateComponent;\r\n\r\n @ContentChild(AXDataGridDetailTemplateComponent, { static: true })\r\n gridDetailTemplate: AXDataGridDetailTemplateComponent;\r\n\r\n @ContentChild(AXDataSourceComponent, { static: true })\r\n private _contentDataSource: AXDataSourceComponent;\r\n\r\n private _dataSource: AXDataSourceComponent;\r\n\r\n @Input()\r\n public get dataSource(): AXDataSourceComponent {\r\n return this._dataSource ? this._dataSource : this._contentDataSource;\r\n }\r\n\r\n public set dataSource(v: AXDataSourceComponent) {\r\n this._dataSource = v;\r\n }\r\n\r\n @Input()\r\n groupHideOpenParents: boolean = false;\r\n\r\n @Output()\r\n cellClick: EventEmitter<AXDataGridCellEvent> = new EventEmitter<AXDataGridCellEvent>();\r\n\r\n @Output()\r\n cellDbClick: EventEmitter<AXDataGridCellEvent> = new EventEmitter<AXDataGridCellEvent>();\r\n\r\n @Output()\r\n cellFocuse: EventEmitter<AXDataGridCellEvent> = new EventEmitter<AXDataGridCellEvent>();\r\n\r\n @Output()\r\n rowClick: EventEmitter<AXDaagridRowClickEvent> = new EventEmitter<AXDaagridRowClickEvent>();\r\n\r\n @Output()\r\n rowDbClick: EventEmitter<AXDaagridRowClickEvent> = new EventEmitter<AXDaagridRowClickEvent>();\r\n\r\n @Output()\r\n selectionChanged: EventEmitter<AXDataGridSelectionChangeEvent> = new EventEmitter<AXDataGridSelectionChangeEvent>();\r\n\r\n @Output()\r\n rowSelectionChange: EventEmitter<AXDataGridSelectionChangeEvent> = new EventEmitter<AXDataGridSelectionChangeEvent>();\r\n\r\n @Output()\r\n onRowSelectionChanged: EventEmitter<AXDataGridRowSelectionChangeEvent> = new EventEmitter<AXDataGridRowSelectionChangeEvent>();\r\n\r\n getRowHeight(param) {\r\n if (param.data && param.data.rowHeight && param.node.level == 0) {\r\n return param.data.rowHeight;\r\n } else if (this.masterDetail == true && param.node.level == 1) {\r\n return this.detailRowHeight;\r\n } else if (this.masterDetail == false && param.data && param.data.rowHeight) {\r\n return param.data.rowHeight;\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n @Input()\r\n rowClass?: (params: AXGridRowParams) => (string | string[]) | (string | string[]);\r\n\r\n @Input()\r\n rtl: boolean = AXConfig.get('layout.rtl');\r\n\r\n constructor(private ref: ElementRef, private cdr: ChangeDetectorRef) {\r\n this.localeText = AXTranslator.get('dataGrid');\r\n }\r\n\r\n private calcHeight(): void {\r\n if (this.toolbar) {\r\n this.internalHeight = `calc(100% - ${40}px)`;\r\n } else {\r\n this.internalHeight = '100%';\r\n }\r\n }\r\n\r\n private get intenalGridDataSource() {\r\n const that = this;\r\n return {\r\n rowCount: null,\r\n getRows: (params) => {\r\n // that.gridApi.gridOptionsWrapper.setProperty('cacheBlockSize', this.takeCount ? this.takeCount : params.api.paginationGetPageSize());\r\n that.dataSourceSuccessCallback = params.successCallback;\r\n const loadParams: AXDataSourceReadParams = {};\r\n loadParams.searchText = that.searchText;\r\n loadParams.skip = params.request.startRow;\r\n // loadParams.take = params.request.endRow - params.request.startRow;\r\n loadParams.take = that.takeCount ? that.takeCount : params.api.paginationGetPageSize() * 2;\r\n loadParams.sort = params.request.sortModel.map((c) => {\r\n return {\r\n field: c.colId,\r\n dir: c.sort\r\n };\r\n });\r\n // loadParams.groups = params.request.rowGroupCols.map(r => r.field);\r\n // loadParams.groupKeys = params.request.groupKeys;\r\n // loadParams.data = params.parentNode.data;\r\n loadParams.group = {\r\n fields: params.request.rowGroupCols.map((r) => r.field),\r\n keys: params.request.groupKeys,\r\n parentData: params.parentNode.data\r\n };\r\n loadParams.filter = params.request.filterModel;\r\n that.dataSource.fetch(loadParams);\r\n }\r\n };\r\n }\r\n getMainMenuItems(e) {\r\n return ['pinSubMenu', 'separator'];\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.gridApi.destroy();\r\n }\r\n\r\n isServerSideGroup = (e) => {\r\n return e[this.hasChildField];\r\n };\r\n\r\n getColumnDefs = () => {\r\n return this.gridApi.getColumnDefs();\r\n };\r\n\r\n getServerSideGroupKey = (e) => {\r\n return e[this.keyField];\r\n };\r\n // todo gridOptions: GridOptions\r\n internalGridReady(gridOptions) {\r\n gridOptions.api.checkGridSize();\r\n this.takeCount = this.takeCount ? this.takeCount : gridOptions.api.paginationGetPageSize() * 2;\r\n // this.takeCount = this.takeCount < 20 ? 20 : this.takeCount;\r\n gridOptions.api.gridOptionsWrapper.setProperty('cacheBlockSize', this.takeCount);\r\n this.gridApi = gridOptions.api;\r\n\r\n this.mapColumns();\r\n this.calcHeight();\r\n\r\n if (!this.loadOnInit) {\r\n this.loadOnInit = true;\r\n return;\r\n }\r\n\r\n if (this.remoteOperation) {\r\n this.gridApi.setServerSideDatasource(this.intenalGridDataSource);\r\n }\r\n\r\n if (!this.remoteOperation) {\r\n this.refresh();\r\n }\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n const that = this;\r\n if (this.rowTemplate) {\r\n this.fullWidthCellRendererFramework = this.rowTemplate.renderer;\r\n this.fullWidthCellRendererParams = this.rowTemplate.params;\r\n }\r\n this.frameworkComponents.agDateInput = AXDatePickerFilterComponent;\r\n\r\n if (this.gridDetailTemplate) {\r\n this.masterDetail = true;\r\n this.detailCellRendererParams = this.gridDetailTemplate.params;\r\n this.detailCellRenderer = 'detailRendererFramework';\r\n this.frameworkComponents.detailRendererFramework = this.gridDetailTemplate.renderer;\r\n\r\n this.detailRowHeight = this.gridDetailTemplate.height;\r\n }\r\n this.isFullWidthCell = () => {\r\n return that.rowTemplate != null;\r\n };\r\n //this.cdr\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.takeCount && this.takeCount > 0) {\r\n this.paginationPageSize = this.takeCount;\r\n this.paginationAutoPageSize = false;\r\n this.cacheBlockSize = this.takeCount;\r\n }\r\n if (this.selectionMode === 'single') {\r\n this.groupSelectsChildren = false;\r\n }\r\n if (this.keyField !== 'null' && this.hasChildField !== 'null') {\r\n this.rowGroupPanelShow = 'never';\r\n this.treeData = true;\r\n }\r\n if (this.remoteOperation) {\r\n this.rowModelType = 'serverSide';\r\n }\r\n //\r\n if (this.rtl == null) {\r\n this.rtl = window.getComputedStyle(this.ref.nativeElement, null).getPropertyValue('direction') === 'rtl';\r\n }\r\n //\r\n }\r\n\r\n gridSelectRow() {\r\n if (this.gridApi) {\r\n if (this.selectRow && this.selectRow.length > 0 && this.gridApi !== undefined && typeof this.selectRow[0] != 'object') {\r\n this.gridApi.forEachNode((node) => {\r\n if (node.data !== undefined) {\r\n let select: boolean = false;\r\n this.selectRow.forEach((id) => {\r\n if (node.data[this.keyField] === id) {\r\n select = true;\r\n node.setSelected(select);\r\n }\r\n });\r\n }\r\n });\r\n } else {\r\n this.gridApi.forEachNode((node) => {\r\n if (node.data !== undefined) {\r\n let select: boolean = false;\r\n this.selectRow.forEach((item) => {\r\n if (item.rowIndex != undefined && item.rowLevel != undefined) {\r\n if (node.data[this.keyField] === item.data[this.keyField]) {\r\n select = true;\r\n }\r\n } else {\r\n if (node.data[this.keyField] === item[this.keyField]) {\r\n select = true;\r\n }\r\n }\r\n });\r\n node.setSelected(select);\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n // ngAfterViewChecked(): void {\r\n\r\n // //Called after every check of the component's view. Applies to components only.\r\n // //Add 'implements AfterViewChecked' to the class.\r\n // // this.selectByValues();\r\n // this.enabelSelect = false;\r\n\r\n // }\r\n rebuildGrid() {\r\n this.mapColumns();\r\n setTimeout(() => {\r\n if (this.sizeColumnsToFit) {\r\n this.gridApi.sizeColumnsToFit();\r\n }\r\n }, 10);\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n if (this.treeData === true) {\r\n this.columnDefs = this.columns.map((c) => c.render());\r\n\r\n const groupColumn = this.columnDefs.find((c) => c.rowGroupIndex == '0' && c.field !== '');\r\n\r\n this.autoGroupColumnDef = {\r\n headerName: groupColumn.headerName,\r\n width: groupColumn.width,\r\n cellRendererParams: { checkbox: this.showCheckBox },\r\n field: groupColumn.field\r\n };\r\n\r\n this.columnDefs.forEach((elm) => {\r\n if (elm.rowGroupIndex > -1) {\r\n elm.hide = true;\r\n }\r\n });\r\n }\r\n //setTimeout(() => {\r\n this.gridView = true;\r\n //});\r\n\r\n this.enabelSelect = true;\r\n this.dataSource.onDataReceived.subscribe((_data) => {\r\n const result = _data.data.result;\r\n this.hideLoading();\r\n let items: any[];\r\n let totalCount: number;\r\n if (Array.isArray(result)) {\r\n items = result;\r\n totalCount = result.length;\r\n } else {\r\n items = result.items;\r\n totalCount = result.totalCount;\r\n }\r\n if (this.dataSourceSuccessCallback) {\r\n if (!this.loadOnInit) {\r\n this.dataSourceSuccessCallback([], 0);\r\n } else {\r\n this.dataSourceSuccessCallback(items, totalCount);\r\n }\r\n } else {\r\n if (!this.loadOnInit && this.gridApi !== undefined) {\r\n this.gridApi.setRowData([]);\r\n } else if (this.gridApi !== undefined) {\r\n this.gridApi.setRowData(items);\r\n }\r\n }\r\n\r\n this.gridSelectRow();\r\n });\r\n\r\n this.dataSource.onFetchStart.subscribe(() => {\r\n this.showLoading();\r\n });\r\n\r\n if (this.searchInput) {\r\n this.searchInput.onValueChanged.subscribe((c) => {\r\n this.searchText = c.value;\r\n });\r\n }\r\n //\r\n this.cdr.detectChanges();\r\n }\r\n\r\n mapColumns() {\r\n this.columnDefs = this.columns.map((c) => c.render());\r\n\r\n // if (this.showRowNumber) {\r\n // this.columnDefs.push({\r\n // headerName: AXConfig.get('layout.rtl') ? 'ردیف' : 'Row',\r\n // valueGetter: 'node.rowIndex + 1',\r\n // pinned: AXConfig.get('layout.rtl') ? 'right' : 'left'\r\n // });\r\n // }\r\n\r\n if (this.gridDetailTemplate) {\r\n if (this.columnDefs[0].checkboxSelection === true && this.columnDefs[0].field === '') {\r\n this.columnDefs[1].cellRenderer = 'agGroupCellRenderer';\r\n } else {\r\n this.columnDefs[0].cellRenderer = 'agGroupCellRenderer';\r\n }\r\n }\r\n\r\n if (this.hasChildField === 'null') {\r\n const groupColumn = this.columnDefs.find((c) => c.rowGroupIndex === undefined && c.field !== '');\r\n if (groupColumn && this.groupHideOpenParents == false) {\r\n this.autoGroupColumnDef = {\r\n headerName: groupColumn.headerName,\r\n width: groupColumn.width,\r\n cellRendererParams: { checkbox: this.showCheckBox },\r\n field: groupColumn.field\r\n };\r\n // groupColumn.hide = true;\r\n }\r\n }\r\n\r\n this.columnDefs.forEach((elm) => {\r\n if (elm.rowGroupIndex > -1) {\r\n elm.hide = true;\r\n }\r\n });\r\n }\r\n\r\n displayedColumnsChanged(e) {\r\n if (this.hasChildField === 'null') {\r\n const ee = e.columnApi.getAllDisplayedColumnGroups();\r\n const eee = ee.find((c) => c.colId !== 'ag-Grid-AutoColumn' && c.colId !== '0');\r\n if (eee && eee.colId) {\r\n this.autoGroupColumnDef = {\r\n headerName: eee.colDef.headerName,\r\n width: eee.colDef.width,\r\n cellRendererParams: { checkbox: this.showCheckBox },\r\n field: eee.colDef.field\r\n };\r\n }\r\n // eee.hide = true;\r\n }\r\n }\r\n\r\n refresh(route: any[] = []) {\r\n if (this.remoteOperation && this.gridApi !== undefined) {\r\n // this.gridApi.purgeServerSideCache(route);\r\n this.gridApi.setServerSideDatasource(this.intenalGridDataSource);\r\n } else {\r\n // TODO : check fetch param\r\n this.dataSource.fetch(null);\r\n }\r\n }\r\n\r\n internalGridCellClicked(e: CellClickedEvent) {\r\n this.cellClick.emit({ data: this.mapCellEvent(e), component: this, htmlElement: this.ref.nativeElement });\r\n }\r\n\r\n internalGridCellDoubleClicked(e: CellClickedEvent) {\r\n this.cellDbClick.emit({ data: this.mapCellEvent(e), component: this, htmlElement: this.ref.nativeElement });\r\n }\r\n\r\n internalGridCellFocused(e: CellClickedEvent) {\r\n this.cellFocuse.emit({ data: this.mapCellEvent(e), htmlElement: this.ref.nativeElement, component: this });\r\n }\r\n\r\n internalGridRowClicked(e: RowClickedEvent) {\r\n if (!e.node.group) {\r\n this.rowClick.emit({ data: this.mapRowEvent(e), component: this, htmlElement: this.ref.nativeElement });\r\n }\r\n }\r\n\r\n internalGridRowDoubleClicked(e: CellClickedEvent) {\r\n if (!e.node.group) {\r\n this.rowDbClick.emit({ data: this.mapRowEvent(e), htmlElement: this.ref.nativeElement, component: this });\r\n }\r\n }\r\n\r\n differenceOf2Arrays(array1: any, array2: any) {\r\n const temp = [];\r\n for (const i in array1) {\r\n if (array2.indexOf(array1[i]) === -1) {\r\n temp.push(array1[i]);\r\n }\r\n }\r\n for (const i in array2) {\r\n if (array1.indexOf(array2[i]) === -1) {\r\n temp.push(array2[i]);\r\n }\r\n }\r\n return temp.sort((a, b) => a - b);\r\n }\r\n\r\n rowSelectionChanged(e) {\r\n // this.gridApi.forEachNode((node) => {\r\n // if (node.data[this.keyField] == e.node.data[this.keyField]) {\r\n // node.setSelected(e.node.selected);\r\n // }\r\n // });\r\n if (e.node.selected == true) {\r\n this.selectRow = this.selectRow.filter((c) => c[this.keyField] != e.data[this.keyField]);\r\n this.selectRow.push(e.data);\r\n } else {\r\n this.selectRow = this.selectRow.filter((c) => c[this.keyField] != e.data[this.keyField]);\r\n }\r\n this.rowSelectionChange.emit({ component: this, data: e, htmlElement: this.ref.nativeElement });\r\n // console.log('e', e);\r\n // console.log('select', e.node.selected);\r\n // console.log('index', e.rowIndex);\r\n }\r\n\r\n internalGridSelectionChanged(e) {\r\n const args: AXGridRowSelectionEvent = { items: [] };\r\n const oldNodes = this.oldSelectionNodes;\r\n const nodes = this.gridApi.getSelectedNodes();\r\n nodes.forEach((i) => {\r\n args.items.push({\r\n rowLevel: i.level,\r\n rowIndex: i.rowIndex,\r\n data: i.data\r\n });\r\n });\r\n this.selectionChanged.emit({ data: args, component: this, htmlElement: this.ref.nativeElement });\r\n let action = nodes.length > oldNodes.length ? true : false;\r\n const node = this.differenceOf2Arrays(nodes, oldNodes);\r\n this.onRowSelectionChanged.emit({ component: this, selected: action, data: node, htmlElement: this.ref.nativeElement });\r\n this.oldSelectionNodes = nodes;\r\n }\r\n\r\n private mapCellEvent(e: CellEvent): AXGridCellEvent {\r\n return {\r\n rowLevel: 0,\r\n column: e.column,\r\n data: e.data,\r\n rowIndex: e.rowIndex,\r\n value: e.value\r\n };\r\n }\r\n\r\n private mapRowEvent(e: RowEvent): AXGridRowEvent {\r\n return {\r\n rowLevel: 0,\r\n data: e.data,\r\n rowIndex: e.rowIndex\r\n };\r\n }\r\n\r\n public deselectAll() {\r\n this.gridApi.deselectAll();\r\n }\r\n\r\n internalGetRowClass = (p: any) => {\r\n if (this.rowClass) {\r\n if (this.rowClass instanceof Function) {\r\n return this.rowClass({\r\n rowIndex: p.node.rowIndex,\r\n rowLevel: p.node.level,\r\n data: p.data\r\n });\r\n } else {\r\n return this.rowClass;\r\n }\r\n }\r\n };\r\n\r\n showLoading(): void {\r\n if (this.gridApi) {\r\n this.gridApi.showLoadingOverlay();\r\n }\r\n }\r\n\r\n hideLoading(): void {\r\n if (this.gridApi) {\r\n this.gridApi.hideOverlay();\r\n }\r\n }\r\n\r\n internalGridSizeChanged(e: GridSizeChangedEvent) {\r\n if (e.clientWidth > 0 && e.clientHeight > 0) {\r\n this.performSizeColumnsToFit(e.api);\r\n }\r\n // this.refresh();\r\n // this.gridApi.paginationGoToFirstPage();\r\n }\r\n\r\n internalGridFirstDataRendered(e: FirstDataRenderedEvent) {\r\n this.performSizeColumnsToFit(e.api);\r\n }\r\n\r\n private performSizeColumnsToFit(api: GridApi) {\r\n if (this.sizeColumnsToFit) {\r\n api.sizeColumnsToFit();\r\n }\r\n }\r\n}\r\n","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n\r\n@Component({\r\n selector: 'ax-data-grid-filter',\r\n template: `\r\n <div class='ax-grid-filter-container'>\r\n <ng-content></ng-content>\r\n <div class='btn-group' role='group'>\r\n <button type='button' class='btn btn-primary btn-sm'>\r\n <i class='fas fa-filter'></i>\r\n </button>\r\n <button type='button' class='btn btn-danger btn-sm'>\r\n <i class='fas fa-trash-alt'></i>\r\n </button>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class AXDataGridFilterComponent {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXDataGridComponent } from './datagrid.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AgGridModule } from 'ag-grid-angular';\r\nimport { AXDataSourceModule } from '@acorex/components';\r\nimport { AXGridTextColumn, TextFilterRenderer } from './columns/text-column.component';\r\nimport { AXGridCheckColumn, BooleanRenderer, BooleanFilterRenderer } from './columns/check-column.component';\r\nimport { AXCoreModule } from '@acorex/core';\r\nimport { AXGridSelectionColumn } from './columns/selection-column.component';\r\nimport { CommandRenderer, AXGridCommandColumn } from './columns/command-column.component';\r\nimport { AXDataGridFilterComponent } from './filters/filter.component';\r\nimport { AXGridDateColumn, AXDatePickerFilterComponent } from './columns/date-column.component';\r\nimport { AXDataGridRowTemplateComponent, AXDataGridRowTemplateRenderer } from './templates/row-template.component';\r\nimport { AXDataGridCellTemplateComponent, AXDataGridCellTemplateRenderer } from './templates/cell-template.component';\r\nimport { AXDataGridDetailTemplateComponent, AXDataGridDetailTemplateRenderer } from './templates/detail-template.component';\r\nimport { AXTextBoxModule } from '@acorex/components';\r\nimport { AXCheckBoxModule } from '@acorex/components';\r\nimport { AXSelectBoxModule } from '@acorex/components';\r\nimport { AXButtonModule } from '@acorex/components';\r\nimport { AXDatePickerModule } from '@acorex/components';\r\nimport 'ag-grid-enterprise';\r\nimport { AXGridRowNumberColumn } from './columns/row-number-column.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n AXDataGridComponent,\r\n AXGridTextColumn,\r\n AXGridCheckColumn,\r\n AXGridSelectionColumn,\r\n AXGridDateColumn,\r\n AXGridRowNumberColumn,\r\n AXGridCommandColumn,\r\n BooleanRenderer,\r\n BooleanFilterRenderer,\r\n TextFilterRenderer,\r\n AXDataGridFilterComponent,\r\n AXDataGridRowTemplateComponent,\r\n AXDataGridDetailTemplateComponent,\r\n AXDataGridRowTemplateRenderer,\r\n AXDataGridDetailTemplateRenderer,\r\n AXDataGridCellTemplateComponent,\r\n AXDataGridCellTemplateRenderer,\r\n AXDatePickerFilterComponent,\r\n CommandRenderer\r\n ],\r\n imports: [\r\n CommonModule,\r\n AXCoreModule,\r\n FormsModule,\r\n //AgGridModule,\r\n AXTextBoxModule,\r\n AXCheckBoxModule,\r\n AXSelectBoxModule,\r\n AXDataSourceModule,\r\n AXButtonModule,\r\n AXDatePickerModule,\r\n AgGridModule.withComponents([AXDatePickerFilterComponent])\r\n ],\r\n exports: [\r\n AXDataGridComponent,\r\n AXDataGridFilterComponent,\r\n AXDataGridRowTemplateComponent,\r\n AXDataGridDetailTemplateComponent,\r\n AXDataGridRowTemplateRenderer,\r\n AXDataGridDetailTemplateRenderer,\r\n AXDataGridCellTemplateComponent,\r\n AXDataGridCellTemplateRenderer,\r\n AXGridTextColumn,\r\n AXGridRowNumberColumn,\r\n AXGridCheckColumn,\r\n AXGridDateColumn,\r\n AXGridSelectionColumn,\r\n AXGridCommandColumn,\r\n BooleanRenderer,\r\n BooleanFilterRenderer,\r\n CommandRenderer\r\n ],\r\n entryComponents: [\r\n BooleanRenderer,\r\n BooleanFilterRenderer,\r\n CommandRenderer,\r\n TextFilterRenderer,\r\n AXDataGridRowTemplateComponent,\r\n AXDataGridDetailTemplateComponent,\r\n AXDataGridRowTemplateRenderer,\r\n AXDataGridDetailTemplateRenderer,\r\n AXDataGridCellTemplateComponent,\r\n AXDataGridCellTemplateRenderer\r\n ],\r\n providers: []\r\n})\r\nexport class AXDataGridModule {}\r\n","import { Component, ViewChild, ChangeDetectorRef, ElementRef } from '@angular/core';\r\nimport { AXDataGridComponent, AXDataGridSelectionChangeEvent } from '../../data-grid/datagrid.component';\r\nimport { AXGridDataColumn } from '../../data-grid/columns/column.component';\r\nimport { AXTranslator, AXButtonItem, AXConfig } from '@acorex/core';\r\nimport {\r\n AXToolbarSearchComponent,\r\n AXBasePopupPageComponent,\r\n AXMenuItemClickEvent,\r\n AXDataSourceComponent,\r\n AXDataSourceReadParams\r\n} from '@acorex/components';\r\n\r\n@Component({\r\n templateUrl: './data-lov-popup.component.html'\r\n})\r\nexport class AXDataLovPopupComponent extends AXBasePopupPageComponent {\r\n @ViewChild('grid', { static: true })\r\n grid: AXDataGridComponent;\r\n\r\n @ViewChild('searchBox')\r\n searchBox: AXToolbarSearchComponent;\r\n\r\n columns: AXGridDataColumn[] = [];\r\n\r\n selectedItems: any[] = [];\r\n\r\n keyField: string = '';\r\n allowNull: boolean = true;\r\n\r\n hasChildField: string;\r\n rtl: boolean = AXConfig.get('layout.rtl');\r\n\r\n selectedRows: any[] = [];\r\n\r\n constructor(private cdr: ChangeDetectorRef, private ref: ElementRef) {\r\n super();\r\n }\r\n\r\n dataSource: AXDataSourceComponent;\r\n\r\n selectionMode: string;\r\n\r\n ngOnInit(): void {\r\n if (this.rtl == null) {\r\n this.rtl = window.getComputedStyle(this.ref.nativeElement, null).getPropertyValue('direction') === 'rtl';\r\n }\r\n }\r\n\r\n onDoneClick() {\r\n if (this.selectedItems) {\r\n this.close(this.selectedItems);\r\n } else {\r\n this.close();\r\n }\r\n }\r\n\r\n rowDoubleClicked(e) {\r\n console.log('s', e.data.data);\r\n if (this.selectionMode == 'single') {\r\n this.selectedItems = [];\r\n }\r\n\r\n this.selectedItems = this.selectedItems.filter((c) => c[this.keyField] != e.data.data[this.keyField]);\r\n this.selectedItems.push(e.data.data);\r\n\r\n this.onDoneClick();\r\n }\r\n\r\n onCancelClick() {\r\n this.close();\r\n }\r\n\r\n rowSelectionChange(e) {\r\n if (e.data.node.selected == true) {\r\n this.selectedItems = this.selectedItems.filter((c) => c[this.keyField] != e.data.node.data[this.keyField]);\r\n this.selectedItems.push(e.data.node.data);\r\n } else {\r\n if (this.allowNull == true || (this.allowNull == false && this.selectedItems.length > 1)) {\r\n this.selectedItems = this.selectedItems.filter((c) => c[this.keyField] != e.data.node.data[this.keyField]);\r\n }\r\n }\r\n // console.log('ee', e)\r\n // // console.log('e', e);\r\n // console.log('select', e.data.node.selected);\r\n // console.log('index', e.data.rowIndex);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.selectedItems.forEach((ele) => {\r\n this.selectedRows.push(ele);\r\n });\r\n this.searchBox.focus();\r\n if (this.dataSource.onDataReceived) {\r\n this.dataSource.onDataReceived.subscribe((arg) => {\r\n this.cdr.markForCheck();\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n }\r\n\r\n // onValueSearchChanged(e) {\r\n\r\n // const params: AXDataSourceReadParams = {}\r\n // params.searchText = e.value;\r\n // // params.take = 100;\r\n // // params.skip = 0\r\n // this.dataSource.fetch(params);\r\n // }\r\n\r\n getFooterButtons(): AXButtonItem[] {\r\n return [\r\n {\r\n text: AXTranslator.get('common.confirm'),\r\n name: 'confirm',\r\n style: 'ax primary',\r\n icon: 'far fa-check-circle'\r\n },\r\n {\r\n text: AXTranslator.get('common.cancel'),\r\n name: 'cancel',\r\n style: 'ax light',\r\n icon: 'far fa-times-circle'\r\n }\r\n ];\r\n }\r\n\r\n onFooterButtonClick(e: AXMenuItemClickEvent) {\r\n if (e.name === 'confirm') {\r\n this.onDoneClick();\r\n }\r\n if (e.name === 'cancel') {\r\n this.onCancelClick();\r\n }\r\n }\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n ContentChildren,\r\n QueryList,\r\n Output,\r\n EventEmitter,\r\n ContentChild,\r\n ViewChild,\r\n ViewEncapsulation,\r\n ElementRef,\r\n TemplateRef\r\n} from '@angular/core';\r\nimport { AXPopupService, AXBaseInputComponent, AXBaseSizableComponent, AXElementSize, AXValidation } from '@acorex/components';\r\nimport { AXDataSourceComponent, AXSelectBoxComponent, AXDataEvent, AXValidatableComponent } from '@acorex/components';\r\nimport { AXDataLovPopupComponent } from './data-lov-popup/data-lov-popup.component';\r\nimport { AXGridDataColumn } from '../data-grid/columns/column.component';\r\nimport { AXConfig } from '@acorex/core';\r\n\r\n@Component({\r\n selector: 'ax-lov',\r\n templateUrl: './data-lov.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n host: { style: 'width: 100%' },\r\n providers: [{ provide: AXValidatableComponent, useExisting: AXLOVComponent }]\r\n})\r\nexport class AXLOVComponent extends AXValidatableComponent implements AXBaseSizableComponent, AXBaseInputComponent {\r\n @ContentChild(AXValidation, { static: true })\r\n private _contentValidation: AXValidation;\r\n private _validation: AXValidation;\r\n\r\n @Input()\r\n public get validation(): AXValidation {\r\n return this._validation ? this._validation : this._contentValidation;\r\n }\r\n public set validation(v: AXValidation) {\r\n this._validation = v;\r\n }\r\n\r\n constructor(private popup: AXPopupService, private ref: ElementRef) {\r\n super();\r\n }\r\n\r\n @ViewChild('selectBox', { static: true })\r\n selectBox: AXSelectBoxComponent;\r\n\r\n @ContentChild(AXDataSourceComponent, { static: true })\r\n dataSource: AXDataSourceComponent;\r\n\r\n @ContentChildren(AXGridDataColumn)\r\n private columns: QueryList<AXGridDataColumn>;\r\n\r\n @ContentChild('itemTemplate', { static: true })\r\n rowTemplate: TemplateRef<any>;\r\n\r\n @Input()\r\n textField: string = '';\r\n\r\n @Input()\r\n allowSearch: boolean = true;\r\n\r\n @Input()\r\n valueField: string = '';\r\n\r\n @Input()\r\n hasChildField: string = 'null';\r\n\r\n @Input()\r\n allowNull: boolean = true;\r\n\r\n @Input()\r\n popupSize: 'sm' | 'md' | 'lg' | 'full' = 'md';\r\n\r\n @Input()\r\n selectedItems: any[] = [];\r\n\r\n // @Input()\r\n // selectedValues: any[] = [];\r\n\r\n @Input()\r\n readonly: boolean = false;\r\n\r\n @Input()\r\n disabled: boolean = false;\r\n\r\n @Input()\r\n chipsWidth: string = '';\r\n\r\n @Input()\r\n size: AXElementSize = 'md';\r\n\r\n @Input()\r\n caption: string;\r\n\r\n @Input()\r\n mode: 'single' | 'multiple' = 'single';\r\n\r\n @Input()\r\n placeholder: string;\r\n\r\n @Output()\r\n onSelectionChange: EventEmitter<AXDataEvent<any>> = new EventEmitter<AXDataEvent<any>>();\r\n\r\n @Input()\r\n rtl: boolean = AXConfig.get('layout.rtl');\r\n\r\n focus(): void {\r\n this.selectBox.focus();\r\n }\r\n\r\n refresh() {\r\n this.selectBox.refresh();\r\n }\r\n\r\n handleButtonClick() {\r\n this.open();\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.rtl == null) {\r\n this.rtl = window.getComputedStyle(this.ref.nativeElement, null).getPropertyValue('direction') === 'rtl';\r\n }\r\n // this.selectVal = this.selectedValues;\r\n this.onSelectionChange.subscribe((c) => {\r\n this.clearValidationStyle(this.ref.nativeElement);\r\n });\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.initValidation(this.ref, 'selectedItems', this.validation);\r\n }\r\n\r\n handleSelectChange(e) {\r\n // console.log('se' + JSON.stringify(e));\r\n this.onSelectionChange.emit({ data: this.selectedItems, component: this, htmlElement: this.ref.nativeElement });\r\n }\r\n\r\n public open(): Promise<any> {\r\n return new Promise((resolve) => {\r\n this.selectBox.dropdown.close();\r\n this.popup\r\n .open(AXDataLovPopupComponent, {\r\n size: this.popupSize,\r\n // closable: false,\r\n data: {\r\n dataSource: this.dataSource,\r\n selectionMode: this.mode,\r\n columns: this.columns.toArray(),\r\n // selectedItems: this.selectedValues,\r\n selectedItems: this.selectedItems,\r\n keyField: this.valueField,\r\n allowNull: this.allowNull,\r\n hasChildField: this.hasChildField,\r\n rtl: this.rtl\r\n },\r\n title: this.caption\r\n // size: this.size,\r\n })\r\n .then((c) => {\r\n if (c.data) {\r\n // this.selectedValues = [];\r\n this.selectedItems = [];\r\n c.data.forEach((elm) => {\r\n this.selectedItems.push(elm);\r\n });\r\n // this.selectedItems = c.data;\r\n // this.selectBox.refresh();\r\n // console.log('se' + JSON.stringify(this.selectedItems));\r\n this.onSelectionChange.emit({ data: this.selectedItems, component: this, htmlElement: this.ref.nativeElement });\r\n if (resolve) {\r\n resolve(c.data);\r\n }\r\n } else {\r\n if (resolve) {\r\n resolve(this.selectedItems);\r\n }\r\n }\r\n\r\n this.selectBox.refresh();\r\n });\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXLOVComponent } from './data-lov.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AXDataLovPopupComponent } from './data-lov-popup/data-lov-popup.component';\r\nimport { AXDataGridModule } from '../data-grid/datagrid.module';\r\nimport { AXDataSourceModule, AXButtonModule, AXToolbarModule, AXSearchBoxModule, AXSelectBoxModule } from '@acorex/components';\r\n\r\n\r\n@NgModule({\r\n declarations: [AXLOVComponent, AXDataLovPopupComponent],\r\n imports: [CommonModule, FormsModule, AXDataGridModule, AXDataSourceModule, AXButtonModule, AXToolbarModule, AXSelectBoxModule, AXSearchBoxModule],\r\n exports: [AXLOVComponent, AXDataLovPopupComponent],\r\n providers: [],\r\n entryComponents: [AXDataLovPopupComponent]\r\n})\r\nexport class AXLOVModule { }"]}
|
@@ -1,5 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* Generated bundle index. Do not edit.
|
3
|
-
*/
|
4
|
-
export * from './public-api';
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWRhdGEtZ3JpZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhY29yZXgvZGF0YS1ncmlkLyIsInNvdXJjZXMiOlsiYWNvcmV4LWRhdGEtZ3JpZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
@@ -1,104 +0,0 @@
|
|
1
|
-
var AXGridCheckColumn_1;
|
2
|
-
import { __decorate, __metadata } from "tslib";
|
3
|
-
import { Component, ChangeDetectionStrategy, ViewChild, ViewContainerRef } from '@angular/core';
|
4
|
-
import { AXGridDataColumn } from './column.component';
|
5
|
-
let AXGridCheckColumn = AXGridCheckColumn_1 = class AXGridCheckColumn extends AXGridDataColumn {
|
6
|
-
constructor() {
|
7
|
-
super();
|
8
|
-
}
|
9
|
-
render() {
|
10
|
-
const col = super.render();
|
11
|
-
if (!col.cellRendererFramework) {
|
12
|
-
col.cellRendererFramework = BooleanRenderer;
|
13
|
-
}
|
14
|
-
if (this.allowFiltering) {
|
15
|
-
col.filterFramework = BooleanFilterRenderer;
|
16
|
-
}
|
17
|
-
return col;
|
18
|
-
}
|
19
|
-
};
|
20
|
-
AXGridCheckColumn = AXGridCheckColumn_1 = __decorate([
|
21
|
-
Component({
|
22
|
-
selector: 'ax-check-column',
|
23
|
-
template: '',
|
24
|
-
providers: [{ provide: AXGridDataColumn, useExisting: AXGridCheckColumn_1 }],
|
25
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
26
|
-
}),
|
27
|
-
__metadata("design:paramtypes", [])
|
28
|
-
], AXGridCheckColumn);
|
29
|
-
export { AXGridCheckColumn };
|
30
|
-
let BooleanRenderer = class BooleanRenderer {
|
31
|
-
constructor() { }
|
32
|
-
agInit(params) {
|
33
|
-
this.value = params.value;
|
34
|
-
}
|
35
|
-
refresh(params) {
|
36
|
-
this.value = params.value;
|
37
|
-
return true;
|
38
|
-
}
|
39
|
-
};
|
40
|
-
BooleanRenderer = __decorate([
|
41
|
-
Component({
|
42
|
-
template: `
|
43
|
-
<ax-check-box [value]='value' readonly='true'></ax-check-box>
|
44
|
-
`,
|
45
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
46
|
-
}),
|
47
|
-
__metadata("design:paramtypes", [])
|
48
|
-
], BooleanRenderer);
|
49
|
-
export { BooleanRenderer };
|
50
|
-
let BooleanFilterRenderer = class BooleanFilterRenderer {
|
51
|
-
constructor() {
|
52
|
-
this.value = null;
|
53
|
-
this.selectItem = [
|
54
|
-
{ value: 0, label: 'True' },
|
55
|
-
{ value: 1, label: 'False' },
|
56
|
-
];
|
57
|
-
}
|
58
|
-
agInit(params) {
|
59
|
-
this.params = params;
|
60
|
-
this.valueGetter = params.valueGetter;
|
61
|
-
}
|
62
|
-
isFilterActive() {
|
63
|
-
return this.value !== null && this.value !== undefined;
|
64
|
-
}
|
65
|
-
doesFilterPass(params) {
|
66
|
-
return this.value === this.valueGetter(params.node);
|
67
|
-
}
|
68
|
-
getModel() {
|
69
|
-
return { value: this.value };
|
70
|
-
}
|
71
|
-
setModel(model) {
|
72
|
-
this.value = model ? model.value : null;
|
73
|
-
}
|
74
|
-
ngAfterViewInit(params) {
|
75
|
-
window.setTimeout(() => {
|
76
|
-
this.input.element.nativeElement.focus();
|
77
|
-
});
|
78
|
-
}
|
79
|
-
onChange(newValue) {
|
80
|
-
if (this.value !== newValue) {
|
81
|
-
this.value = newValue;
|
82
|
-
this.params.filterChangedCallback();
|
83
|
-
}
|
84
|
-
}
|
85
|
-
};
|
86
|
-
__decorate([
|
87
|
-
ViewChild('input', { static: true, read: ViewContainerRef }),
|
88
|
-
__metadata("design:type", Object)
|
89
|
-
], BooleanFilterRenderer.prototype, "input", void 0);
|
90
|
-
BooleanFilterRenderer = __decorate([
|
91
|
-
Component({
|
92
|
-
template: `
|
93
|
-
<ax-data-grid-filter>
|
94
|
-
<ax-select-box
|
95
|
-
label='Select Box'
|
96
|
-
[items]='selectItem'
|
97
|
-
></ax-select-box>
|
98
|
-
</ax-data-grid-filter>
|
99
|
-
`,
|
100
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
101
|
-
})
|
102
|
-
], BooleanFilterRenderer);
|
103
|
-
export { BooleanFilterRenderer };
|
104
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhY29yZXgvZGF0YS1ncmlkLyIsInNvdXJjZXMiOlsibGliL2RhdGEtZ3JpZC9jb2x1bW5zL2NoZWNrLWNvbHVtbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBaUJ0RCxJQUFhLGlCQUFpQix5QkFBOUIsTUFBYSxpQkFBa0IsU0FBUSxnQkFBZ0I7SUFDckQ7UUFDRSxLQUFLLEVBQUUsQ0FBQztJQUNWLENBQUM7SUFFRCxNQUFNO1FBQ0osTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxHQUFHLENBQUMscUJBQXFCLEVBQUU7WUFDOUIsR0FBRyxDQUFDLHFCQUFxQixHQUFHLGVBQWUsQ0FBQztTQUM3QztRQUNELElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN2QixHQUFHLENBQUMsZUFBZSxHQUFHLHFCQUFxQixDQUFDO1NBQzdDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0NBQ0YsQ0FBQTtBQWZZLGlCQUFpQjtJQVA3QixTQUFTLENBQUM7UUFDVCxRQUFRLEVBQUUsaUJBQWlCO1FBQzNCLFFBQVEsRUFBRSxFQUFFO1FBQ1osU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLG1CQUFpQixFQUFFLENBQUM7UUFDMUUsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07S0FDaEQsQ0FBQzs7R0FFVyxpQkFBaUIsQ0FlN0I7U0FmWSxpQkFBaUI7QUF1QjlCLElBQWEsZUFBZSxHQUE1QixNQUFhLGVBQWU7SUFFMUIsZ0JBQWdCLENBQUM7SUFDakIsTUFBTSxDQUFDLE1BQTJCO1FBQ2hDLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBQ0QsT0FBTyxDQUFDLE1BQTJCO1FBQ2pDLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMxQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRixDQUFBO0FBVlksZUFBZTtJQU4zQixTQUFTLENBQUM7UUFDVCxRQUFRLEVBQUU7O0dBRVQ7UUFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtLQUNoRCxDQUFDOztHQUNXLGVBQWUsQ0FVM0I7U0FWWSxlQUFlO0FBdUI1QixJQUFhLHFCQUFxQixHQUFsQyxNQUFhLHFCQUFxQjtJQUFsQztRQUNTLFVBQUssR0FBYSxJQUFJLENBQUM7UUFLOUIsZUFBVSxHQUFHO1lBQ1gsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7WUFDM0IsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7U0FDN0IsQ0FBQztJQWtDSixDQUFDO0lBakNDLE1BQU0sQ0FBQyxNQUFxQjtRQUMxQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7SUFDeEMsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDO0lBQ3pELENBQUM7SUFFRCxjQUFjLENBQUMsTUFBNkI7UUFDMUMsT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFVO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDMUMsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUErQjtRQUM3QyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNyQixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDM0MsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUSxDQUFDLFFBQVE7UUFDZixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssUUFBUSxFQUFFO1lBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMscUJBQXFCLEVBQUUsQ0FBQztTQUNyQztJQUNILENBQUM7Q0FDRixDQUFBO0FBdkMrRDtJQUE3RCxTQUFTLENBQUMsT0FBTyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQzs7b0RBQWM7QUFKaEUscUJBQXFCO0lBWGpDLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRTs7Ozs7OztHQU9UO1FBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07S0FDaEQsQ0FBQztHQUNXLHFCQUFxQixDQTJDakM7U0EzQ1kscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdDb250YWluZXJSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQVhHcmlkRGF0YUNvbHVtbiB9IGZyb20gJy4vY29sdW1uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IElDZWxsUmVuZGVyZXJBbmd1bGFyQ29tcCwgSUZpbHRlckFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcclxuaW1wb3J0IHtcclxuICBJQ2VsbFJlbmRlcmVyUGFyYW1zLFxyXG4gIElGaWx0ZXJQYXJhbXMsXHJcbiAgUm93Tm9kZSxcclxuICBJRG9lc0ZpbHRlclBhc3NQYXJhbXMsXHJcbiAgSUFmdGVyR3VpQXR0YWNoZWRQYXJhbXNcclxufSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2F4LWNoZWNrLWNvbHVtbicsXHJcbiAgdGVtcGxhdGU6ICcnLFxyXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQVhHcmlkRGF0YUNvbHVtbiwgdXNlRXhpc3Rpbmc6IEFYR3JpZENoZWNrQ29sdW1uIH1dLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgQVhHcmlkQ2hlY2tDb2x1bW4gZXh0ZW5kcyBBWEdyaWREYXRhQ29sdW1uIHtcclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICByZW5kZXIoKSB7XHJcbiAgICBjb25zdCBjb2wgPSBzdXBlci5yZW5kZXIoKTtcclxuICAgIGlmICghY29sLmNlbGxSZW5kZXJlckZyYW1ld29yaykge1xyXG4gICAgICBjb2wuY2VsbFJlbmRlcmVyRnJhbWV3b3JrID0gQm9vbGVhblJlbmRlcmVyO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuYWxsb3dGaWx0ZXJpbmcpIHtcclxuICAgICAgY29sLmZpbHRlckZyYW1ld29yayA9IEJvb2xlYW5GaWx0ZXJSZW5kZXJlcjtcclxuICAgIH1cclxuICAgIHJldHVybiBjb2w7XHJcbiAgfVxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGF4LWNoZWNrLWJveCBbdmFsdWVdPSd2YWx1ZScgcmVhZG9ubHk9J3RydWUnPjwvYXgtY2hlY2stYm94PlxyXG4gIGAsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEJvb2xlYW5SZW5kZXJlciBpbXBsZW1lbnRzIElDZWxsUmVuZGVyZXJBbmd1bGFyQ29tcCB7XHJcbiAgdmFsdWU6IGJvb2xlYW47XHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuICBhZ0luaXQocGFyYW1zOiBJQ2VsbFJlbmRlcmVyUGFyYW1zKTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlID0gcGFyYW1zLnZhbHVlO1xyXG4gIH1cclxuICByZWZyZXNoKHBhcmFtczogSUNlbGxSZW5kZXJlclBhcmFtcyk6IGJvb2xlYW4ge1xyXG4gICAgdGhpcy52YWx1ZSA9IHBhcmFtcy52YWx1ZTtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxheC1kYXRhLWdyaWQtZmlsdGVyPlxyXG4gICAgICA8YXgtc2VsZWN0LWJveFxyXG4gICAgICAgIGxhYmVsPSdTZWxlY3QgQm94J1xyXG4gICAgICAgIFtpdGVtc109J3NlbGVjdEl0ZW0nXHJcbiAgICAgID48L2F4LXNlbGVjdC1ib3g+XHJcbiAgICA8L2F4LWRhdGEtZ3JpZC1maWx0ZXI+XHJcbiAgYCxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQm9vbGVhbkZpbHRlclJlbmRlcmVyIGltcGxlbWVudHMgSUZpbHRlckFuZ3VsYXJDb21wIHtcclxuICBwdWJsaWMgdmFsdWU/OiBib29sZWFuID0gbnVsbDtcclxuICBwcml2YXRlIHBhcmFtczogSUZpbHRlclBhcmFtcztcclxuICBwcml2YXRlIHZhbHVlR2V0dGVyOiAocm93Tm9kZTogUm93Tm9kZSkgPT4gYW55O1xyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0JywgeyBzdGF0aWM6IHRydWUsIHJlYWQ6IFZpZXdDb250YWluZXJSZWYgfSkgcHVibGljIGlucHV0O1xyXG5cclxuICBzZWxlY3RJdGVtID0gW1xyXG4gICAgeyB2YWx1ZTogMCwgbGFiZWw6ICdUcnVlJyB9LFxyXG4gICAgeyB2YWx1ZTogMSwgbGFiZWw6ICdGYWxzZScgfSxcclxuICBdO1xyXG4gIGFnSW5pdChwYXJhbXM6IElGaWx0ZXJQYXJhbXMpOiB2b2lkIHtcclxuICAgIHRoaXMucGFyYW1zID0gcGFyYW1zO1xyXG4gICAgdGhpcy52YWx1ZUdldHRlciA9IHBhcmFtcy52YWx1ZUdldHRlcjtcclxuICB9XHJcblxyXG4gIGlzRmlsdGVyQWN0aXZlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMudmFsdWUgIT09IG51bGwgJiYgdGhpcy52YWx1ZSAhPT0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgZG9lc0ZpbHRlclBhc3MocGFyYW1zOiBJRG9lc0ZpbHRlclBhc3NQYXJhbXMpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnZhbHVlID09PSB0aGlzLnZhbHVlR2V0dGVyKHBhcmFtcy5ub2RlKTtcclxuICB9XHJcblxyXG4gIGdldE1vZGVsKCk6IGFueSB7XHJcbiAgICByZXR1cm4geyB2YWx1ZTogdGhpcy52YWx1ZSB9O1xyXG4gIH1cclxuXHJcbiAgc2V0TW9kZWwobW9kZWw6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZSA9IG1vZGVsID8gbW9kZWwudmFsdWUgOiBudWxsO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KHBhcmFtczogSUFmdGVyR3VpQXR0YWNoZWRQYXJhbXMpOiB2b2lkIHtcclxuICAgIHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5pbnB1dC5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25DaGFuZ2UobmV3VmFsdWUpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnZhbHVlICE9PSBuZXdWYWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlID0gbmV3VmFsdWU7XHJcbiAgICAgIHRoaXMucGFyYW1zLmZpbHRlckNoYW5nZWRDYWxsYmFjaygpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
@@ -1,204 +0,0 @@
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
2
|
-
import { AXConfig } from '@acorex/core';
|
3
|
-
import { Input, ContentChild } from '@angular/core';
|
4
|
-
import { AXDataGridCellTemplateComponent } from '../templates/cell-template.component';
|
5
|
-
export class AXGridDataColumn {
|
6
|
-
constructor() {
|
7
|
-
this.width = 100;
|
8
|
-
this.pinned = null;
|
9
|
-
this.allowSorting = true;
|
10
|
-
this.allowFiltering = AXConfig.get('datagrid.allowFiltering') || false;
|
11
|
-
this.sort = null;
|
12
|
-
this.field = '';
|
13
|
-
this.caption = '';
|
14
|
-
this.checkbox = false;
|
15
|
-
this.headerCheckbox = false;
|
16
|
-
this.groupIndex = -1;
|
17
|
-
this.treeIndex = -1;
|
18
|
-
this.enableRowGroup = false;
|
19
|
-
this.hide = false;
|
20
|
-
this.floatingFilter = AXConfig.get('datagrid.floatingFilter') || false;
|
21
|
-
this.disableMenu = false;
|
22
|
-
this.resizable = true;
|
23
|
-
this.menuColumnDisable = false;
|
24
|
-
this.menuItemDisable = false;
|
25
|
-
}
|
26
|
-
;
|
27
|
-
render() {
|
28
|
-
const col = {
|
29
|
-
field: this.field,
|
30
|
-
width: this.width,
|
31
|
-
};
|
32
|
-
col.resizable = this.resizable;
|
33
|
-
col.suppressMenu = this.disableMenu;
|
34
|
-
col.menuTabs = ['filterMenuTab', 'columnsMenuTab', 'generalMenuTab'];
|
35
|
-
col.floatingFilter = this.floatingFilter;
|
36
|
-
if (!this.allowFiltering) {
|
37
|
-
col.filter = false;
|
38
|
-
col.menuTabs = col.menuTabs.filter(c => c != 'filterMenuTab');
|
39
|
-
col.floatingFilter = false;
|
40
|
-
}
|
41
|
-
if (this.menuColumnDisable == true) {
|
42
|
-
col.menuTabs = col.menuTabs.filter(c => c != 'columnsMenuTab');
|
43
|
-
}
|
44
|
-
if (this.menuItemDisable == true) {
|
45
|
-
col.menuTabs = col.menuTabs.filter(c => c != 'generalMenuTab');
|
46
|
-
}
|
47
|
-
if (this.caption) {
|
48
|
-
col.headerName = this.caption;
|
49
|
-
}
|
50
|
-
if (this.minWidth) {
|
51
|
-
col.minWidth = this.minWidth;
|
52
|
-
}
|
53
|
-
if (this.maxWidth) {
|
54
|
-
col.maxWidth = this.maxWidth;
|
55
|
-
}
|
56
|
-
if (this.pinned) {
|
57
|
-
col.pinned = this.pinned === 'start' ? 'right' : 'left';
|
58
|
-
// TODO: Change based on layout
|
59
|
-
}
|
60
|
-
if (this.allowSorting) {
|
61
|
-
col.sortable = this.allowSorting;
|
62
|
-
}
|
63
|
-
if (this.sort) {
|
64
|
-
col.sort = this.sort;
|
65
|
-
}
|
66
|
-
if (this.groupIndex >= 0) {
|
67
|
-
col.rowGroupIndex = this.groupIndex;
|
68
|
-
col.rowGroup = true;
|
69
|
-
this.enableRowGroup = true;
|
70
|
-
}
|
71
|
-
if (this.treeIndex >= 0) {
|
72
|
-
col.rowGroupIndex = this.treeIndex;
|
73
|
-
col.rowGroup = false;
|
74
|
-
}
|
75
|
-
if (this.hide) {
|
76
|
-
col.hide = true;
|
77
|
-
}
|
78
|
-
if (this.enableRowGroup) {
|
79
|
-
col.enableRowGroup = this.enableRowGroup;
|
80
|
-
}
|
81
|
-
if (this.cellClass) {
|
82
|
-
const THAT = this;
|
83
|
-
if (this.cellClass instanceof Function) {
|
84
|
-
col.cellClass = (p) => {
|
85
|
-
return THAT.cellClass({
|
86
|
-
column: THAT,
|
87
|
-
rowIndex: p.node.rowIndex,
|
88
|
-
rowLevel: p.node.level,
|
89
|
-
data: p.data,
|
90
|
-
value: p.value
|
91
|
-
});
|
92
|
-
};
|
93
|
-
}
|
94
|
-
else {
|
95
|
-
col.cellClass = this.cellClass;
|
96
|
-
}
|
97
|
-
}
|
98
|
-
//
|
99
|
-
if (this.cellTemplate != null) {
|
100
|
-
col.cellRendererFramework = this.cellTemplate.renderer;
|
101
|
-
col.cellRendererParams = this.cellTemplate.params;
|
102
|
-
}
|
103
|
-
if (this.checkbox) {
|
104
|
-
col.checkboxSelection = (params) => {
|
105
|
-
return true;
|
106
|
-
};
|
107
|
-
// col.headerCheckboxSelection = this.headerCheckbox;
|
108
|
-
}
|
109
|
-
return col;
|
110
|
-
}
|
111
|
-
}
|
112
|
-
__decorate([
|
113
|
-
ContentChild(AXDataGridCellTemplateComponent),
|
114
|
-
__metadata("design:type", AXDataGridCellTemplateComponent)
|
115
|
-
], AXGridDataColumn.prototype, "cellTemplate", void 0);
|
116
|
-
__decorate([
|
117
|
-
Input(),
|
118
|
-
__metadata("design:type", Number)
|
119
|
-
], AXGridDataColumn.prototype, "width", void 0);
|
120
|
-
__decorate([
|
121
|
-
Input(),
|
122
|
-
__metadata("design:type", Number)
|
123
|
-
], AXGridDataColumn.prototype, "maxWidth", void 0);
|
124
|
-
__decorate([
|
125
|
-
Input(),
|
126
|
-
__metadata("design:type", Number)
|
127
|
-
], AXGridDataColumn.prototype, "minWidth", void 0);
|
128
|
-
__decorate([
|
129
|
-
Input(),
|
130
|
-
__metadata("design:type", String)
|
131
|
-
], AXGridDataColumn.prototype, "pinned", void 0);
|
132
|
-
__decorate([
|
133
|
-
Input(),
|
134
|
-
__metadata("design:type", Boolean)
|
135
|
-
], AXGridDataColumn.prototype, "allowSorting", void 0);
|
136
|
-
__decorate([
|
137
|
-
Input(),
|
138
|
-
__metadata("design:type", Boolean)
|
139
|
-
], AXGridDataColumn.prototype, "allowFiltering", void 0);
|
140
|
-
__decorate([
|
141
|
-
Input(),
|
142
|
-
__metadata("design:type", Function)
|
143
|
-
], AXGridDataColumn.prototype, "cellClass", void 0);
|
144
|
-
__decorate([
|
145
|
-
Input(),
|
146
|
-
__metadata("design:type", String)
|
147
|
-
], AXGridDataColumn.prototype, "sort", void 0);
|
148
|
-
__decorate([
|
149
|
-
Input(),
|
150
|
-
__metadata("design:type", String)
|
151
|
-
], AXGridDataColumn.prototype, "field", void 0);
|
152
|
-
__decorate([
|
153
|
-
Input(),
|
154
|
-
__metadata("design:type", String)
|
155
|
-
], AXGridDataColumn.prototype, "caption", void 0);
|
156
|
-
__decorate([
|
157
|
-
Input(),
|
158
|
-
__metadata("design:type", Object)
|
159
|
-
], AXGridDataColumn.prototype, "cellRendererParams", void 0);
|
160
|
-
__decorate([
|
161
|
-
Input(),
|
162
|
-
__metadata("design:type", Boolean)
|
163
|
-
], AXGridDataColumn.prototype, "checkbox", void 0);
|
164
|
-
__decorate([
|
165
|
-
Input(),
|
166
|
-
__metadata("design:type", Boolean)
|
167
|
-
], AXGridDataColumn.prototype, "headerCheckbox", void 0);
|
168
|
-
__decorate([
|
169
|
-
Input(),
|
170
|
-
__metadata("design:type", Number)
|
171
|
-
], AXGridDataColumn.prototype, "groupIndex", void 0);
|
172
|
-
__decorate([
|
173
|
-
Input(),
|
174
|
-
__metadata("design:type", Number)
|
175
|
-
], AXGridDataColumn.prototype, "treeIndex", void 0);
|
176
|
-
__decorate([
|
177
|
-
Input(),
|
178
|
-
__metadata("design:type", Boolean)
|
179
|
-
], AXGridDataColumn.prototype, "enableRowGroup", void 0);
|
180
|
-
__decorate([
|
181
|
-
Input(),
|
182
|
-
__metadata("design:type", Boolean)
|
183
|
-
], AXGridDataColumn.prototype, "hide", void 0);
|
184
|
-
__decorate([
|
185
|
-
Input(),
|
186
|
-
__metadata("design:type", Boolean)
|
187
|
-
], AXGridDataColumn.prototype, "floatingFilter", void 0);
|
188
|
-
__decorate([
|
189
|
-
Input(),
|
190
|
-
__metadata("design:type", Boolean)
|
191
|
-
], AXGridDataColumn.prototype, "disableMenu", void 0);
|
192
|
-
__decorate([
|
193
|
-
Input(),
|
194
|
-
__metadata("design:type", Boolean)
|
195
|
-
], AXGridDataColumn.prototype, "resizable", void 0);
|
196
|
-
__decorate([
|
197
|
-
Input(),
|
198
|
-
__metadata("design:type", Boolean)
|
199
|
-
], AXGridDataColumn.prototype, "menuColumnDisable", void 0);
|
200
|
-
__decorate([
|
201
|
-
Input(),
|
202
|
-
__metadata("design:type", Boolean)
|
203
|
-
], AXGridDataColumn.prototype, "menuItemDisable", void 0);
|
204
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhY29yZXgvZGF0YS1ncmlkLyIsInNvdXJjZXMiOlsibGliL2RhdGEtZ3JpZC9jb2x1bW5zL2NvbHVtbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFFakUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFJdkYsTUFBTSxPQUFnQixnQkFBZ0I7SUF3RWxDO1FBakVBLFVBQUssR0FBVyxHQUFHLENBQUM7UUFTcEIsV0FBTSxHQUEyQixJQUFJLENBQUM7UUFHdEMsaUJBQVksR0FBWSxJQUFJLENBQUM7UUFHN0IsbUJBQWMsR0FBWSxRQUFRLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLElBQUksS0FBSyxDQUFDO1FBTTNFLFNBQUksR0FBMEIsSUFBSSxDQUFDO1FBR25DLFVBQUssR0FBVyxFQUFFLENBQUM7UUFHbkIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQU1yQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRzFCLG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBR2hDLGVBQVUsR0FBVyxDQUFDLENBQUMsQ0FBQztRQUd4QixjQUFTLEdBQVcsQ0FBQyxDQUFDLENBQUM7UUFHdkIsbUJBQWMsR0FBWSxLQUFLLENBQUM7UUFHaEMsU0FBSSxHQUFZLEtBQUssQ0FBQztRQUd0QixtQkFBYyxHQUFZLFFBQVEsQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsSUFBSSxLQUFLLENBQUM7UUFHM0UsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFHN0IsY0FBUyxHQUFZLElBQUksQ0FBQztRQUcxQixzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFHbkMsb0JBQWUsR0FBWSxLQUFLLENBQUM7SUFFakIsQ0FB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K0NBQ1k7QUFHcEI7SUFEQyxLQUFLLEVBQUU7O2tEQUNTO0FBR2pCO0lBREMsS0FBSyxFQUFFOztrREFDUztBQUdqQjtJQURDLEtBQUssRUFBRTs7Z0RBQzhCO0FBR3RDO0lBREMsS0FBSyxFQUFFOztzREFDcUI7QUFHN0I7SUFEQyxLQUFLLEVBQUU7O3dEQUNtRTtBQUczRTtJQURDLEtBQUssRUFBRTs7bURBQzJFO0FBR25GO0lBREMsS0FBSyxFQUFFOzs4Q0FDMkI7QUFHbkM7SUFEQyxLQUFLLEVBQUU7OytDQUNXO0FBR25CO0lBREMsS0FBSyxFQUFFOztpREFDYTtBQUdyQjtJQURDLEtBQUssRUFBRTs7NERBQ2dCO0FBR3hCO0lBREMsS0FBSyxFQUFFOztrREFDa0I7QUFHMUI7SUFEQyxLQUFLLEVBQUU7O3dEQUN3QjtBQUdoQztJQURDLEtBQUssRUFBRTs7b0RBQ2dCO0FBR3hCO0lBREMsS0FBSyxFQUFFOzttREFDZTtBQUd2QjtJQURDLEtBQUssRUFBRTs7d0RBQ3dCO0FBR2hDO0lBREMsS0FBSyxFQUFFOzs4Q0FDYztBQUd0QjtJQURDLEtBQUssRUFBRTs7d0RBQ21FO0FBRzNFO0lBREMsS0FBSyxFQUFFOztxREFDcUI7QUFHN0I7SUFEQyxLQUFLLEVBQUU7O21EQUNrQjtBQUcxQjtJQURDLEtBQUssRUFBRTs7MkRBQzJCO0FBR25DO0lBREMsS0FBSyxFQUFFOzt5REFDeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWENvbmZpZyB9IGZyb20gJ0BhY29yZXgvY29yZSc7XHJcbmltcG9ydCB7IElucHV0LCBDb250ZW50Q2hpbGQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYR3JpZENlbGxQYXJhbXMgfSBmcm9tICcuLi9kYXRhZ3JpZC5ldmVudHMnO1xyXG5pbXBvcnQgeyBBWERhdGFHcmlkQ2VsbFRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vdGVtcGxhdGVzL2NlbGwtdGVtcGxhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQVhEYXRlUGlja2VyRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRlLWNvbHVtbi5jb21wb25lbnQnO1xyXG5cclxuXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWEdyaWREYXRhQ29sdW1uIHtcclxuXHJcblxyXG4gICAgQENvbnRlbnRDaGlsZChBWERhdGFHcmlkQ2VsbFRlbXBsYXRlQ29tcG9uZW50KVxyXG4gICAgY2VsbFRlbXBsYXRlOiBBWERhdGFHcmlkQ2VsbFRlbXBsYXRlQ29tcG9uZW50O1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICB3aWR0aDogbnVtYmVyID0gMTAwO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBtYXhXaWR0aDogbnVtYmVyO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBtaW5XaWR0aDogbnVtYmVyO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwaW5uZWQ6ICdzdGFydCcgfCAnZW5kJyB8IG51bGwgPSBudWxsO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBhbGxvd1NvcnRpbmc6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBhbGxvd0ZpbHRlcmluZzogYm9vbGVhbiA9IEFYQ29uZmlnLmdldCgnZGF0YWdyaWQuYWxsb3dGaWx0ZXJpbmcnKSB8fCBmYWxzZTs7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIGNlbGxDbGFzczogKHBhcmFtczogQVhHcmlkQ2VsbFBhcmFtcykgPT4gKHN0cmluZyB8IHN0cmluZ1tdKSB8IChzdHJpbmcgfCBzdHJpbmdbXSk7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHNvcnQ6ICdhc2MnIHwgJ2Rlc2MnIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIGZpZWxkOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgY2FwdGlvbjogc3RyaW5nID0gJyc7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIGNlbGxSZW5kZXJlclBhcmFtczogYW55O1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBjaGVja2JveDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBoZWFkZXJDaGVja2JveDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBncm91cEluZGV4OiBudW1iZXIgPSAtMTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgdHJlZUluZGV4OiBudW1iZXIgPSAtMTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZW5hYmxlUm93R3JvdXA6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgaGlkZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBmbG9hdGluZ0ZpbHRlcjogYm9vbGVhbiA9IEFYQ29uZmlnLmdldCgnZGF0YWdyaWQuZmxvYXRpbmdGaWx0ZXInKSB8fCBmYWxzZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZGlzYWJsZU1lbnU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcmVzaXphYmxlOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgbWVudUNvbHVtbkRpc2FibGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgbWVudUl0ZW1EaXNhYmxlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgICByZW5kZXIoKTogYW55IHtcclxuICAgICAgICBjb25zdCBjb2w6IGFueSA9IHtcclxuICAgICAgICAgICAgZmllbGQ6IHRoaXMuZmllbGQsXHJcbiAgICAgICAgICAgIHdpZHRoOiB0aGlzLndpZHRoLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29sLnJlc2l6YWJsZSA9IHRoaXMucmVzaXphYmxlO1xyXG4gICAgICAgIGNvbC5zdXBwcmVzc01lbnUgPSB0aGlzLmRpc2FibGVNZW51O1xyXG4gICAgICAgIGNvbC5tZW51VGFicyA9IFsnZmlsdGVyTWVudVRhYicsICdjb2x1bW5zTWVudVRhYicsICdnZW5lcmFsTWVudVRhYiddXHJcbiAgICAgICAgY29sLmZsb2F0aW5nRmlsdGVyID0gdGhpcy5mbG9hdGluZ0ZpbHRlcjtcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLmFsbG93RmlsdGVyaW5nKSB7XHJcbiAgICAgICAgICAgIGNvbC5maWx0ZXIgPSBmYWxzZTtcclxuICAgICAgICAgICAgY29sLm1lbnVUYWJzID0gY29sLm1lbnVUYWJzLmZpbHRlcihjID0+IGMgIT0gJ2ZpbHRlck1lbnVUYWInKTtcclxuICAgICAgICAgICAgY29sLmZsb2F0aW5nRmlsdGVyID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLm1lbnVDb2x1bW5EaXNhYmxlID09IHRydWUpIHtcclxuICAgICAgICAgICAgY29sLm1lbnVUYWJzID0gY29sLm1lbnVUYWJzLmZpbHRlcihjID0+IGMgIT0gJ2NvbHVtbnNNZW51VGFiJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLm1lbnVJdGVtRGlzYWJsZSA9PSB0cnVlKSB7XHJcbiAgICAgICAgICAgIGNvbC5tZW51VGFicyA9IGNvbC5tZW51VGFicy5maWx0ZXIoYyA9PiBjICE9ICdnZW5lcmFsTWVudVRhYicpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5jYXB0aW9uKSB7XHJcbiAgICAgICAgICAgIGNvbC5oZWFkZXJOYW1lID0gdGhpcy5jYXB0aW9uO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5taW5XaWR0aCkge1xyXG4gICAgICAgICAgICBjb2wubWluV2lkdGggPSB0aGlzLm1pbldpZHRoO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5tYXhXaWR0aCkge1xyXG4gICAgICAgICAgICBjb2wubWF4V2lkdGggPSB0aGlzLm1heFdpZHRoO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5waW5uZWQpIHtcclxuICAgICAgICAgICAgY29sLnBpbm5lZCA9IHRoaXMucGlubmVkID09PSAnc3RhcnQnID8gJ3JpZ2h0JyA6ICdsZWZ0JztcclxuICAgICAgICAgICAgLy8gVE9ETzogQ2hhbmdlIGJhc2VkIG9uIGxheW91dFxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5hbGxvd1NvcnRpbmcpIHtcclxuICAgICAgICAgICAgY29sLnNvcnRhYmxlID0gdGhpcy5hbGxvd1NvcnRpbmc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLnNvcnQpIHtcclxuICAgICAgICAgICAgY29sLnNvcnQgPSB0aGlzLnNvcnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5ncm91cEluZGV4ID49IDApIHtcclxuICAgICAgICAgICAgY29sLnJvd0dyb3VwSW5kZXggPSB0aGlzLmdyb3VwSW5kZXg7XHJcbiAgICAgICAgICAgIGNvbC5yb3dHcm91cCA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuZW5hYmxlUm93R3JvdXAgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMudHJlZUluZGV4ID49IDApIHtcclxuICAgICAgICAgICAgY29sLnJvd0dyb3VwSW5kZXggPSB0aGlzLnRyZWVJbmRleDtcclxuICAgICAgICAgICAgY29sLnJvd0dyb3VwID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmhpZGUpIHtcclxuICAgICAgICAgICAgY29sLmhpZGUgPSB0cnVlO1xyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuZW5hYmxlUm93R3JvdXApIHtcclxuICAgICAgICAgICAgY29sLmVuYWJsZVJvd0dyb3VwID0gdGhpcy5lbmFibGVSb3dHcm91cDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmNlbGxDbGFzcykge1xyXG4gICAgICAgICAgICBjb25zdCBUSEFUID0gdGhpcztcclxuICAgICAgICAgICAgaWYgKHRoaXMuY2VsbENsYXNzIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcclxuICAgICAgICAgICAgICAgIGNvbC5jZWxsQ2xhc3MgPSAocCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBUSEFULmNlbGxDbGFzcyh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbjogVEhBVCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcm93SW5kZXg6IHAubm9kZS5yb3dJbmRleCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcm93TGV2ZWw6IHAubm9kZS5sZXZlbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YTogcC5kYXRhLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogcC52YWx1ZVxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGNvbC5jZWxsQ2xhc3MgPSB0aGlzLmNlbGxDbGFzcztcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLy9cclxuICAgICAgICBpZiAodGhpcy5jZWxsVGVtcGxhdGUgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICBjb2wuY2VsbFJlbmRlcmVyRnJhbWV3b3JrID0gdGhpcy5jZWxsVGVtcGxhdGUucmVuZGVyZXI7XHJcbiAgICAgICAgICAgIGNvbC5jZWxsUmVuZGVyZXJQYXJhbXMgPSB0aGlzLmNlbGxUZW1wbGF0ZS5wYXJhbXM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5jaGVja2JveCkge1xyXG4gICAgICAgICAgICBjb2wuY2hlY2tib3hTZWxlY3Rpb24gPSAocGFyYW1zKSA9PiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgLy8gIGNvbC5oZWFkZXJDaGVja2JveFNlbGVjdGlvbiA9IHRoaXMuaGVhZGVyQ2hlY2tib3g7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBjb2w7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4iXX0=
|