@ng-matero/extensions 10.16.4 → 10.16.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/{ng-matero-extensions-button.umd.js → mtxButton.umd.js} +2 -2
- package/bundles/mtxButton.umd.js.map +1 -0
- package/bundles/{ng-matero-extensions-button.umd.min.js → mtxButton.umd.min.js} +1 -1
- package/bundles/mtxCheckboxGroup.umd.js +93 -20
- package/bundles/mtxCheckboxGroup.umd.js.map +1 -1
- package/bundles/mtxCheckboxGroup.umd.min.js +1 -1
- package/bundles/mtxCheckboxGroup.umd.min.js.map +1 -1
- package/bundles/mtxColorPicker.umd.js +27 -4
- package/bundles/mtxColorPicker.umd.js.map +1 -1
- package/bundles/mtxColorPicker.umd.min.js +1 -1
- package/bundles/mtxColorPicker.umd.min.js.map +1 -1
- package/bundles/mtxFormGroup.umd.js +2 -0
- package/bundles/mtxFormGroup.umd.js.map +1 -1
- package/bundles/mtxFormGroup.umd.min.js +1 -1
- package/bundles/mtxFormGroup.umd.min.js.map +1 -1
- package/bundles/mtxGrid.umd.js +34 -61
- package/bundles/mtxGrid.umd.js.map +1 -1
- package/bundles/mtxGrid.umd.min.js +2 -2
- package/bundles/mtxGrid.umd.min.js.map +1 -1
- package/bundles/mtxPopover.umd.js +7 -2
- package/bundles/mtxPopover.umd.js.map +1 -1
- package/bundles/mtxPopover.umd.min.js +1 -1
- package/bundles/mtxPopover.umd.min.js.map +1 -1
- package/bundles/mtxSelect.umd.js +1 -0
- package/bundles/mtxSelect.umd.js.map +1 -1
- package/bundles/mtxSelect.umd.min.js +1 -1
- package/bundles/mtxSelect.umd.min.js.map +1 -1
- package/bundles/mtxSplit.umd.js +1 -1
- package/bundles/mtxSplit.umd.js.map +1 -1
- package/bundles/mtxSplit.umd.min.js +1 -1
- package/bundles/mtxSplit.umd.min.js.map +1 -1
- package/button/package.json +7 -7
- package/checkbox-group/checkbox-group.component.d.ts +12 -8
- package/checkbox-group/mtxCheckboxGroup.metadata.json +1 -1
- package/color-picker/color-picker.component.d.ts +4 -0
- package/color-picker/mtxColorPicker.metadata.json +1 -1
- package/data-grid/cell.component.d.ts +3 -8
- package/data-grid/mtxGrid.metadata.json +1 -1
- package/esm2015/button/mtxButton.js +10 -0
- package/esm2015/checkbox-group/checkbox-group.component.js +82 -19
- package/esm2015/color-picker/color-picker.component.js +24 -5
- package/esm2015/data-grid/cell.component.js +34 -57
- package/esm2015/data-grid/column-menu.component.js +2 -2
- package/esm2015/data-grid/grid.component.js +3 -3
- package/esm2015/form-group/form-group.component.js +4 -2
- package/esm2015/popover/popover.js +8 -3
- package/esm2015/select/select.component.js +2 -1
- package/esm2015/split-pane/split.component.js +2 -2
- package/fesm2015/{ng-matero-extensions-button.js → mtxButton.js} +2 -2
- package/fesm2015/mtxButton.js.map +1 -0
- package/fesm2015/mtxCheckboxGroup.js +80 -17
- package/fesm2015/mtxCheckboxGroup.js.map +1 -1
- package/fesm2015/mtxColorPicker.js +23 -4
- package/fesm2015/mtxColorPicker.js.map +1 -1
- package/fesm2015/mtxFormGroup.js +3 -1
- package/fesm2015/mtxFormGroup.js.map +1 -1
- package/fesm2015/mtxGrid.js +36 -59
- package/fesm2015/mtxGrid.js.map +1 -1
- package/fesm2015/mtxPopover.js +7 -2
- package/fesm2015/mtxPopover.js.map +1 -1
- package/fesm2015/mtxSelect.js +1 -0
- package/fesm2015/mtxSelect.js.map +1 -1
- package/fesm2015/mtxSplit.js +1 -1
- package/fesm2015/mtxSplit.js.map +1 -1
- package/form-group/mtxFormGroup.metadata.json +1 -1
- package/package.json +1 -1
- package/select/mtxSelect.metadata.json +1 -1
- package/bundles/ng-matero-extensions-button.umd.js.map +0 -1
- package/esm2015/button/ng-matero-extensions-button.js +0 -10
- package/fesm2015/ng-matero-extensions-button.js.map +0 -1
- /package/bundles/{ng-matero-extensions-button.umd.min.js.map → mtxButton.umd.min.js.map} +0 -0
- /package/button/{ng-matero-extensions-button.d.ts → mtxButton.d.ts} +0 -0
- /package/button/{ng-matero-extensions-button.metadata.json → mtxButton.metadata.json} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mtxGrid.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/extensions/data-grid/grid.service.ts","../../../projects/extensions/data-grid/grid.component.ts","../../../projects/extensions/data-grid/cell.component.ts","../../../projects/extensions/data-grid/column-menu.component.ts","../../../projects/extensions/data-grid/expansion-toggle.directive.ts","../../../projects/extensions/data-grid/cell-selection.directive.ts","../../../projects/extensions/data-grid/column-resize/resize-strategy.ts","../../../projects/extensions/data-grid/column-resize/column-resize-directives/common.ts","../../../projects/extensions/data-grid/column-resize/column-resize-directives/column-resize.ts","../../../projects/extensions/data-grid/column-resize/column-resize-directives/column-resize-flex.ts","../../../projects/extensions/data-grid/column-resize/overlay-handle.ts","../../../projects/extensions/data-grid/column-resize/resizable-directives/common.ts","../../../projects/extensions/data-grid/column-resize/resizable-directives/resizable.ts","../../../projects/extensions/data-grid/column-resize/column-resize-module.ts","../../../projects/extensions/data-grid/grid.module.ts"],"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 (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\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 var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(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, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, 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\n/** @deprecated */\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\n/** @deprecated */\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 __spreadArray(to, from) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n to[j] = from[i];\r\n return to;\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\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\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 (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, 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 { Injectable } from '@angular/core';\r\nimport { MtxGridColumn } from './grid.interface';\r\n\r\n@Injectable()\r\nexport class MtxGridService {\r\n constructor() {}\r\n\r\n /**\r\n * Get cell value from column key e.g. `a.b.c`\r\n * @param rowData Row data\r\n * @param colDef Column definition\r\n */\r\n getCellValue(rowData: any, colDef: MtxGridColumn): string {\r\n const keyArr = colDef.field ? colDef.field.split('.') : [];\r\n\r\n let tmp: any = '';\r\n\r\n keyArr.forEach((key: string, i: number) => {\r\n if (i === 0) {\r\n tmp = rowData[key];\r\n } else {\r\n tmp = tmp && tmp[key];\r\n }\r\n });\r\n return tmp;\r\n }\r\n\r\n /**\r\n * Get all data of a col\r\n * @param data All data\r\n * @param colDef Column definition\r\n */\r\n getColData(data: any[], colDef: MtxGridColumn): any[] {\r\n return data.map((rowData: any) => this.getCellValue(rowData, colDef));\r\n }\r\n\r\n /**\r\n * Remove white spaces in a string and convert string to array\r\n * @param str string\r\n */\r\n str2arr(str: string): string[] {\r\n return str.replace(/[\\r\\n\\s]/g, '').split(',');\r\n }\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ViewChild,\r\n OnChanges,\r\n TemplateRef,\r\n TrackByFunction,\r\n OnDestroy,\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n ElementRef,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport { trigger, state, style, transition, animate } from '@angular/animations';\r\nimport { SelectionModel } from '@angular/cdk/collections';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator, PageEvent } from '@angular/material/paginator';\r\nimport { Sort, MatSort, SortDirection } from '@angular/material/sort';\r\n\r\nimport {\r\n MtxGridColumn,\r\n MtxGridColumnSelectionItem,\r\n MtxGridCellTemplate,\r\n MtxGridRowSelectionFormatter,\r\n MtxGridRowClassFormatter,\r\n MtxGridColumnMenu,\r\n MtxGridButtonType,\r\n} from './grid.interface';\r\nimport { MtxGridCellSelectionDirective } from './cell-selection.directive';\r\nimport { MtxGridExpansionToggleDirective } from './expansion-toggle.directive';\r\nimport { MtxGridService } from './grid.service';\r\nimport { isObservable } from 'rxjs';\r\nimport { ThemePalette } from '@angular/material/core';\r\n\r\n@Component({\r\n selector: 'mtx-grid',\r\n exportAs: 'mtxGrid',\r\n templateUrl: './grid.component.html',\r\n styleUrls: ['./grid.component.scss'],\r\n host: {\r\n class: 'mtx-grid',\r\n },\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [\r\n trigger('expansion', [\r\n state('collapsed', style({ height: '0', minHeight: '0', visibility: 'hidden' })),\r\n state('expanded', style({ height: '*', visibility: 'visible' })),\r\n transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),\r\n ]),\r\n ],\r\n})\r\nexport class MtxGridComponent implements OnInit, OnChanges, AfterViewInit, OnDestroy {\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n @ViewChild('columnMenu') columnMenu: MtxGridColumnMenu;\r\n @ViewChild('tableContainer') tableContainer: ElementRef<HTMLDivElement>;\r\n\r\n dataSource = new MatTableDataSource();\r\n\r\n @Input() displayedColumns: string[];\r\n @Input() columns: MtxGridColumn[] = [];\r\n @Input() data: any[] = [];\r\n @Input() length = 0;\r\n @Input() loading = false;\r\n\r\n @Input() trackBy: TrackByFunction<any>;\r\n\r\n @Input() columnResizable = false;\r\n\r\n // Page\r\n\r\n @Input() pageOnFront = true;\r\n @Input() showPaginator = true;\r\n @Input() pageDisabled = false;\r\n @Input() showFirstLastButtons = true;\r\n @Input() pageIndex = 0;\r\n @Input() pageSize = 10;\r\n @Input() pageSizeOptions = [10, 50, 100];\r\n @Input() hidePageSize = false;\r\n @Output() page = new EventEmitter<PageEvent>();\r\n\r\n // Sort\r\n\r\n @Input() sortOnFront = true;\r\n @Input() sortActive: string;\r\n @Input() sortDirection: SortDirection;\r\n @Input() sortDisableClear: boolean = false;\r\n @Input() sortDisabled: boolean = false;\r\n @Input() sortStart: 'asc' | 'desc' = 'asc';\r\n @Output() sortChange = new EventEmitter<Sort>();\r\n\r\n // Row\r\n\r\n @Input() rowHover = false;\r\n @Input() rowStriped = false;\r\n @Output() rowClick = new EventEmitter<any>();\r\n\r\n // Expansion\r\n\r\n expansionRowStates: any[] = [];\r\n\r\n @Input() expandable = false;\r\n @Input() expansionTemplate: TemplateRef<any>;\r\n @Output() expansionChange = new EventEmitter<any>();\r\n\r\n /** Whether support multiple row/cell selection */\r\n @Input() multiSelectable = true;\r\n\r\n // Row selection\r\n\r\n rowSelection: SelectionModel<any> = new SelectionModel<any>(true, []);\r\n\r\n @Input() rowSelected = [];\r\n @Input() rowSelectable = false;\r\n @Input() hideRowSelectionCheckbox = false;\r\n @Input() rowSelectionFormatter: MtxGridRowSelectionFormatter = {};\r\n @Input() rowClassFormatter: MtxGridRowClassFormatter;\r\n @Output() rowSelectionChange = new EventEmitter<any[]>();\r\n\r\n // Cell selection\r\n\r\n cellSelection: any[] = [];\r\n\r\n @Input() cellSelectable = true;\r\n @Output() cellSelectionChange = new EventEmitter<any[]>();\r\n\r\n private _selectedCell: MtxGridCellSelectionDirective | undefined;\r\n\r\n // Toolbar\r\n\r\n @Input() showToolbar = false;\r\n @Input() toolbarTitle = '';\r\n @Input() toolbarTemplate: TemplateRef<any>;\r\n\r\n // Column menu\r\n\r\n columnMenuData: MtxGridColumnSelectionItem[] = [];\r\n\r\n @Input() showColumnMenuButton = true;\r\n @Input() columnMenuButtonText = '';\r\n @Input() columnMenuButtonType: MtxGridButtonType = 'stroked';\r\n @Input() columnMenuButtonColor: ThemePalette;\r\n @Input() columnMenuButtonClass = '';\r\n @Input() columnMenuButtonIcon = '';\r\n\r\n @Input() columnHideable = true;\r\n @Input() columnHideableChecked: 'show' | 'hide' = 'show';\r\n @Input() columnMovable = true;\r\n @Input() columnPinnable = true;\r\n @Output() columnChange = new EventEmitter<MtxGridColumnSelectionItem[]>();\r\n\r\n @Input() showColumnMenuHeader = false;\r\n @Input() columnMenuHeaderText = 'Columns Header';\r\n @Input() columnMenuHeaderTemplate: TemplateRef<any>;\r\n @Input() showColumnMenuFooter = false;\r\n @Input() columnMenuFooterText = 'Columns Footer';\r\n @Input() columnMenuFooterTemplate: TemplateRef<any>;\r\n\r\n // No Result\r\n\r\n @Input() noResultText = 'No records found';\r\n @Input() noResultTemplate: TemplateRef<any>;\r\n\r\n get _hasNoResult() {\r\n return (!this.data || this.data.length === 0) && !this.loading;\r\n }\r\n\r\n // Cell templates\r\n\r\n @Input() headerTemplate: TemplateRef<any> | MtxGridCellTemplate | any;\r\n @Input() headerExtraTemplate: TemplateRef<any> | MtxGridCellTemplate | any;\r\n\r\n @Input() cellTemplate: TemplateRef<any> | MtxGridCellTemplate | any;\r\n\r\n // Summary\r\n\r\n @Input() showSummary = false;\r\n @Input() summaryTemplate: TemplateRef<any> | MtxGridCellTemplate | any;\r\n\r\n // TODO: Summary display conditions\r\n get _whetherShowSummary() {\r\n return this.showSummary;\r\n }\r\n\r\n // Sidebar\r\n\r\n @Input() showSidebar = false;\r\n @Input() sidebarTemplate: TemplateRef<any>;\r\n\r\n constructor(\r\n private _dataGridSrv: MtxGridService,\r\n private _changeDetectorRef: ChangeDetectorRef\r\n ) {}\r\n\r\n detectChanges() {\r\n this._changeDetectorRef.detectChanges();\r\n }\r\n\r\n _isTemplateRef(obj: any) {\r\n return obj instanceof TemplateRef;\r\n }\r\n\r\n _isObservable(data: any) {\r\n return isObservable(data);\r\n }\r\n\r\n _getColData(data: any[], colDef: MtxGridColumn) {\r\n return this._dataGridSrv.getColData(data, colDef);\r\n }\r\n\r\n _getRowClassList(rowData: any, index: number) {\r\n const classList: any = {\r\n 'selected': this.rowSelection.isSelected(rowData),\r\n 'mat-row-odd': index % 2,\r\n };\r\n if (this.rowClassFormatter) {\r\n for (const key of Object.keys(this.rowClassFormatter)) {\r\n classList[key] = this.rowClassFormatter[key](rowData, index);\r\n }\r\n }\r\n return classList;\r\n }\r\n\r\n ngOnInit() {}\r\n\r\n // Waiting for async data\r\n ngOnChanges(changes: SimpleChanges) {\r\n this._countPinnedPosition();\r\n\r\n this.displayedColumns = this.columns.filter(item => !item.hide).map(item => item.field);\r\n\r\n if (this.showColumnMenuButton) {\r\n this.columnMenuData = (this.columns as any[]).map(item => {\r\n const newItem: MtxGridColumnSelectionItem = {\r\n label: item.header,\r\n field: item.field,\r\n disabled: item.disabled,\r\n };\r\n if (this.columnHideableChecked === 'show') {\r\n newItem.show = !item.hide;\r\n } else {\r\n newItem.hide = item.hide;\r\n }\r\n return newItem;\r\n });\r\n }\r\n\r\n if (this.rowSelectable && !this.hideRowSelectionCheckbox) {\r\n this.displayedColumns.unshift('MtxGridCheckboxColumnDef');\r\n }\r\n\r\n // We should copy each item of data for expansion data\r\n if (this.expandable) {\r\n this.expansionRowStates = []; // reset\r\n\r\n this.data?.forEach(_ => {\r\n this.expansionRowStates.push({ expanded: false });\r\n });\r\n }\r\n\r\n if (this.rowSelectable) {\r\n this.rowSelection = new SelectionModel<any>(this.multiSelectable, this.rowSelected);\r\n }\r\n\r\n this.dataSource = new MatTableDataSource(this.data);\r\n\r\n this.dataSource.paginator = this.pageOnFront ? this.paginator : null;\r\n this.dataSource.sort = this.sortOnFront ? this.sort : null;\r\n\r\n // Only scroll top when data change\r\n if (changes.data) {\r\n this.scrollTop(0);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.pageOnFront) {\r\n this.dataSource.paginator = this.paginator;\r\n }\r\n\r\n if (this.sortOnFront) {\r\n this.dataSource.sort = this.sort;\r\n }\r\n }\r\n\r\n ngOnDestroy() {}\r\n\r\n _countPinnedPosition() {\r\n const count = (acc: number, cur: MtxGridColumn) => acc + parseFloat(cur.width || '80px');\r\n\r\n const pinnedLeftCols = this.columns.filter(col => col.pinned && col.pinned === 'left');\r\n pinnedLeftCols.forEach((item, idx) => {\r\n item.left = pinnedLeftCols.slice(0, idx).reduce(count, 0) + 'px';\r\n });\r\n\r\n const pinnedRightCols = this.columns\r\n .filter(col => col.pinned && col.pinned === 'right')\r\n .reverse();\r\n pinnedRightCols.forEach((item, idx) => {\r\n item.right = pinnedRightCols.slice(0, idx).reduce(count, 0) + 'px';\r\n });\r\n }\r\n\r\n _getIndex(index: number, dataIndex: number) {\r\n return typeof index === 'undefined' ? dataIndex : index;\r\n }\r\n\r\n _handleSortChange(sort: Sort) {\r\n this.sortChange.emit(sort);\r\n }\r\n\r\n /** Expansion change event */\r\n _handleExpansionChange(\r\n expansionRef: MtxGridExpansionToggleDirective,\r\n rowData: any,\r\n column: any,\r\n index: number\r\n ) {\r\n this.expansionChange.emit({ expanded: expansionRef.expanded, data: rowData, index, column });\r\n }\r\n\r\n /** Cell select event */\r\n _selectCell(cellRef: MtxGridCellSelectionDirective, rowData: any, colDef: any): void {\r\n // If not the same cell\r\n if (this._selectedCell !== cellRef) {\r\n const colValue = this._dataGridSrv.getCellValue(rowData, colDef);\r\n this.cellSelection = []; // reset\r\n this.cellSelection.push({ cellData: colValue, rowData, colDef });\r\n\r\n this.cellSelectionChange.emit(this.cellSelection);\r\n\r\n if (this._selectedCell) {\r\n this._selectedCell.deselect(); // the selectedCell will be undefined\r\n }\r\n }\r\n\r\n this._selectedCell = cellRef.selected ? cellRef : undefined;\r\n }\r\n\r\n /** Row select event */\r\n _selectRow(event: MouseEvent, rowData: any, index: number) {\r\n if (\r\n this.rowSelectable &&\r\n !this.rowSelectionFormatter.disabled?.(rowData, index) &&\r\n !this.rowSelectionFormatter.hideCheckbox?.(rowData, index)\r\n ) {\r\n // metaKey -> command key\r\n if (!event.ctrlKey && !event.metaKey) {\r\n this.rowSelection.clear();\r\n }\r\n\r\n this._toggleNormalCheckbox(rowData);\r\n }\r\n\r\n this.rowClick.emit({ rowData, index });\r\n }\r\n\r\n /** Whether the number of selected elements matches the total number of rows. */\r\n _isAllSelected() {\r\n const numSelected = this.rowSelection.selected.length;\r\n const numRows = this.dataSource.data.filter(\r\n (row, index) => !this.rowSelectionFormatter.disabled?.(row, index)\r\n ).length;\r\n return numSelected === numRows;\r\n }\r\n\r\n /** Select all rows if they are not all selected; otherwise clear selection. */\r\n _toggleMasterCheckbox() {\r\n this._isAllSelected()\r\n ? this.rowSelection.clear()\r\n : this.dataSource.data.forEach((row, index) => {\r\n if (!this.rowSelectionFormatter.disabled?.(row, index)) {\r\n this.rowSelection.select(row);\r\n }\r\n });\r\n this.rowSelectionChange.emit(this.rowSelection.selected);\r\n }\r\n\r\n /** Select normal row */\r\n _toggleNormalCheckbox(row: any) {\r\n this.rowSelection.toggle(row);\r\n this.rowSelectionChange.emit(this.rowSelection.selected);\r\n }\r\n\r\n /** Column change event */\r\n\r\n _handleColumnChange(columns: any[]) {\r\n this.columnChange.emit(columns);\r\n\r\n this.displayedColumns = Object.assign([], this.getDisplayedColumnFields(columns));\r\n\r\n if (this.rowSelectable && !this.hideRowSelectionCheckbox) {\r\n this.displayedColumns.unshift('MtxGridCheckboxColumnDef');\r\n }\r\n }\r\n\r\n getDisplayedColumnFields(columns: any[]): string[] {\r\n const fields = columns\r\n .filter((item: MtxGridColumnSelectionItem) =>\r\n this.columnHideableChecked === 'show' ? item.show : !item.hide\r\n )\r\n .map((item: MtxGridColumnSelectionItem) => item.field);\r\n return fields;\r\n }\r\n\r\n /** Customize expansion event */\r\n toggleExpansion(index: number) {\r\n if (!this.expandable) {\r\n throw new Error('The `expandable` should be set true.');\r\n }\r\n this.expansionRowStates[index].expanded = !this.expansionRowStates[index].expanded;\r\n return this.expansionRowStates[index].expanded;\r\n }\r\n\r\n /** Scroll to top when turn to the next page */\r\n _handlePage(e: PageEvent) {\r\n if (this.pageOnFront) {\r\n this.scrollTop(0);\r\n }\r\n this.page.emit(e);\r\n }\r\n\r\n scrollTop(value?: number): number | void {\r\n if (value == null) {\r\n return this.tableContainer?.nativeElement.scrollTop;\r\n }\r\n if (this.tableContainer && !this.loading) {\r\n this.tableContainer.nativeElement.scrollTop = value;\r\n }\r\n }\r\n\r\n scrollLeft(value?: number): number | void {\r\n if (value == null) {\r\n return this.tableContainer?.nativeElement.scrollLeft;\r\n }\r\n if (this.tableContainer && !this.loading) {\r\n this.tableContainer.nativeElement.scrollLeft = value;\r\n }\r\n }\r\n}\r\n","import { Component, Input, ViewEncapsulation } from '@angular/core';\r\nimport { MtxDialog } from '@ng-matero/extensions/dialog';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { MtxGridColumn, MtxGridColumnButton } from './grid.interface';\r\nimport { MtxGridService } from './grid.service';\r\nimport PhotoViewer from 'photoviewer';\r\nimport { ThemePalette } from '@angular/material/core';\r\n\r\n@Component({\r\n selector: 'mtx-grid-cell',\r\n exportAs: 'mtxGridCell',\r\n templateUrl: './cell.component.html',\r\n styleUrls: ['./cell.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MtxGridCellComponent {\r\n /** Row data */\r\n @Input() rowData = {};\r\n\r\n /** Column definition */\r\n @Input() colDef: MtxGridColumn;\r\n\r\n /** All data */\r\n @Input() data = [];\r\n\r\n /** Whether show summary */\r\n @Input() summary = false;\r\n\r\n get _colValue() {\r\n return this._dataGridSrv.getCellValue(this.rowData, this.colDef);\r\n }\r\n\r\n _isString(fn: any) {\r\n return Object.prototype.toString.call(fn) === '[object String]';\r\n }\r\n\r\n _isFunction(fn: any) {\r\n return Object.prototype.toString.call(fn) === '[object Function]';\r\n }\r\n\r\n _isEmptyValue(value: any) {\r\n return value == null || value.toString() === '';\r\n }\r\n\r\n _isContainHTML(value: string) {\r\n return /<\\/?[a-z][\\s\\S]*>/i.test(value);\r\n }\r\n\r\n _getText(value: any) {\r\n return this._isEmptyValue(value) ? '--' : value;\r\n }\r\n\r\n _getTooltip(value: any) {\r\n return this._isEmptyValue(value) ? '' : value;\r\n }\r\n\r\n _getFormatterTooltip(value: any) {\r\n return this._isContainHTML(value) || this._isEmptyValue(value) ? '' : value;\r\n }\r\n\r\n _formatSummary(data: any[], colDef: MtxGridColumn) {\r\n if (this._isString(colDef.summary)) {\r\n return colDef.summary;\r\n } else if (this._isFunction(colDef.summary)) {\r\n return (colDef.summary as (data: any[], colDef?: MtxGridColumn) => void)(\r\n this._dataGridSrv.getColData(data, colDef),\r\n colDef\r\n );\r\n }\r\n }\r\n\r\n constructor(private _dialog: MtxDialog, private _dataGridSrv: MtxGridService) {}\r\n\r\n _handleActionConfirm(\r\n event: MouseEvent,\r\n title: string | Observable<string>,\r\n description: string | Observable<string> = '',\r\n okColor: ThemePalette = 'primary',\r\n okText: string | Observable<string> = 'OK',\r\n closeColor: ThemePalette,\r\n closeText: string | Observable<string> = 'CLOSE',\r\n fn?: (p: any) => void,\r\n data?: any\r\n ) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n\r\n this._dialog.open({\r\n title,\r\n description,\r\n buttons: [\r\n {\r\n color: okColor,\r\n text: okText,\r\n onClick: () => (fn ? fn(data) : {}),\r\n },\r\n { color: closeColor, text: closeText, onClick: () => {} },\r\n ],\r\n });\r\n }\r\n\r\n _handleActionClick(event: MouseEvent, btn: MtxGridColumnButton, rowData: any) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n\r\n if (btn.click) {\r\n btn.click(rowData);\r\n }\r\n }\r\n\r\n /** Preview enlarged image */\r\n _onPreview(urlStr: string) {\r\n const imgs: PhotoViewer.Img[] = [];\r\n\r\n this._dataGridSrv.str2arr(urlStr).forEach((url, index) => {\r\n imgs.push({ title: index + 1 + '', src: url });\r\n });\r\n\r\n const footerToolbar =\r\n imgs.length > 1\r\n ? ['zoomIn', 'zoomOut', 'prev', 'next', 'rotateRight', 'rotateLeft', 'actualSize']\r\n : ['zoomIn', 'zoomOut', 'rotateRight', 'rotateLeft', 'actualSize'];\r\n\r\n const options: PhotoViewer.Options = {\r\n title: imgs.length > 1,\r\n footerToolbar,\r\n };\r\n\r\n const viewer = new PhotoViewer(imgs, options);\r\n }\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n Output,\r\n EventEmitter,\r\n TemplateRef,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { MatCheckboxChange } from '@angular/material/checkbox';\r\nimport { MatMenu, MatMenuTrigger } from '@angular/material/menu';\r\nimport { ThemePalette } from '@angular/material/core';\r\nimport { MtxGridButtonType, MtxGridColumnSelectionItem } from './grid.interface';\r\n\r\n@Component({\r\n selector: 'mtx-grid-column-menu',\r\n exportAs: 'mtxGridColumnMenu',\r\n templateUrl: './column-menu.component.html',\r\n styleUrls: ['./column-menu.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class MtxGridColumnMenuComponent {\r\n @ViewChild('menu', { static: true }) menuPanel: MatMenu;\r\n @ViewChild(MatMenuTrigger) menuTrigger: MatMenuTrigger;\r\n\r\n @Input() columns: MtxGridColumnSelectionItem[] = [];\r\n @Input() selectable = true;\r\n @Input() selectableChecked: 'show' | 'hide' = 'show';\r\n @Input() sortable = true;\r\n @Input() dndSortable = true;\r\n\r\n @Input()\r\n get buttonText() {\r\n const defaultText = `Columns ${this.selectableChecked === 'show' ? 'Shown' : 'Hidden'}`;\r\n const text = this._buttonText ? this._buttonText : defaultText;\r\n return text;\r\n }\r\n set buttonText(value: string) {\r\n this._buttonText = value;\r\n }\r\n private _buttonText = '';\r\n\r\n @Input() buttonType: MtxGridButtonType = 'stroked';\r\n @Input() buttonColor: ThemePalette;\r\n @Input() buttonClass = '';\r\n @Input() buttonIcon = '';\r\n\r\n @Input() showHeader = false;\r\n @Input() headerText = 'Columns Header';\r\n @Input() headerTemplate: TemplateRef<any>;\r\n @Input() showFooter = false;\r\n @Input() footerText = 'Columns Footer';\r\n @Input() footerTemplate: TemplateRef<any>;\r\n\r\n @Output() selectionChange = new EventEmitter<MtxGridColumnSelectionItem[]>();\r\n @Output() sortChange = new EventEmitter<MtxGridColumnSelectionItem[]>();\r\n\r\n _handleDroped(event: CdkDragDrop<string[]>) {\r\n moveItemInArray(this.columns, event.previousIndex, event.currentIndex);\r\n this.sortChange.emit(this.columns);\r\n }\r\n\r\n _handleSelection(e: MatCheckboxChange) {\r\n this.selectionChange.emit(this.columns);\r\n }\r\n}\r\n","import {\r\n Directive,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n Output,\r\n TemplateRef,\r\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[mtx-grid-expansion-toggle]',\r\n})\r\nexport class MtxGridExpansionToggleDirective {\r\n private _opened = false;\r\n private _row: any;\r\n private _tplRef: TemplateRef<any>;\r\n\r\n @Input()\r\n get opened() {\r\n return this._opened;\r\n }\r\n set opened(newValue: boolean) {\r\n this._opened = newValue;\r\n this.openedChange.emit(newValue);\r\n }\r\n @Output() openedChange = new EventEmitter<boolean>();\r\n\r\n @HostBinding('class.expanded')\r\n get expanded(): boolean {\r\n return this._opened;\r\n }\r\n\r\n @Input()\r\n set expandableRow(value: any) {\r\n if (value !== this._row) {\r\n this._row = value;\r\n }\r\n }\r\n\r\n @Input('expansionRowTpl')\r\n set template(value: TemplateRef<any>) {\r\n if (value !== this._tplRef) {\r\n this._tplRef = value;\r\n }\r\n }\r\n\r\n @Output() toggleChange = new EventEmitter<MtxGridExpansionToggleDirective>();\r\n\r\n constructor() {}\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: MouseEvent): void {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.toggle();\r\n }\r\n\r\n toggle(): void {\r\n this.opened = !this.opened;\r\n this.toggleChange.emit(this);\r\n }\r\n}\r\n","import {\r\n Directive,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { MtxGridComponent } from './grid.component';\r\n\r\n@Directive({\r\n selector: '[mtx-grid-selectable-cell]',\r\n})\r\nexport class MtxGridCellSelectionDirective {\r\n private _selected = false;\r\n private _rowData: any;\r\n\r\n shiftKeyPressed = false;\r\n ctrlKeyPressed = false;\r\n\r\n @HostBinding('class.selected')\r\n get selected(): boolean {\r\n return this._selected;\r\n }\r\n\r\n @Input()\r\n set matSelectableRowData(value: any) {\r\n if (value !== this._rowData) {\r\n this._rowData = value;\r\n }\r\n }\r\n\r\n @Output() cellSelectionChange = new EventEmitter<MtxGridCellSelectionDirective>();\r\n\r\n constructor(private _dataGrid: MtxGridComponent) { }\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: MouseEvent): void {\r\n this.ctrlKeyPressed = event.ctrlKey;\r\n this.shiftKeyPressed = event.shiftKey;\r\n\r\n if (this._dataGrid.cellSelectable) {\r\n this.select();\r\n }\r\n }\r\n\r\n select(): void {\r\n this._selected = true;\r\n this.cellSelectionChange.emit(this);\r\n }\r\n\r\n deselect(): void {\r\n this._selected = false;\r\n this.cellSelectionChange.emit(this);\r\n }\r\n\r\n toggle(): void {\r\n this._selected = !this._selected;\r\n this.cellSelectionChange.emit(this);\r\n }\r\n}\r\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { Inject, Injectable, Provider } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { CdkTable, _CoalescedStyleScheduler, _COALESCED_STYLE_SCHEDULER } from '@angular/cdk/table';\n\nimport {\n ColumnResize,\n ResizeStrategy,\n CdkFlexTableResizeStrategy,\n TABLE_LAYOUT_FIXED_RESIZE_STRATEGY_PROVIDER,\n} from '@ng-matero/extensions/column-resize';\n\nexport { TABLE_LAYOUT_FIXED_RESIZE_STRATEGY_PROVIDER };\n\n/**\n * Overrides CdkFlexTableResizeStrategy to match mat-column elements.\n */\n@Injectable()\nexport class MatFlexTableResizeStrategy extends CdkFlexTableResizeStrategy {\n constructor(\n columnResize: ColumnResize,\n @Inject(_COALESCED_STYLE_SCHEDULER) styleScheduler: _CoalescedStyleScheduler,\n table: CdkTable<unknown>,\n @Inject(DOCUMENT) document: any\n ) {\n super(columnResize, styleScheduler, table, document);\n }\n\n protected getColumnCssClass(cssFriendlyColumnName: string): string {\n return `mat-column-${cssFriendlyColumnName}`;\n }\n}\n\nexport const FLEX_RESIZE_STRATEGY_PROVIDER: Provider = {\n provide: ResizeStrategy,\n useClass: MatFlexTableResizeStrategy,\n};\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { Provider } from '@angular/core';\n\nimport {\n ColumnResize,\n ColumnResizeNotifier,\n ColumnResizeNotifierSource,\n HeaderRowEventDispatcher,\n} from '@ng-matero/extensions/column-resize';\n\nimport {\n TABLE_LAYOUT_FIXED_RESIZE_STRATEGY_PROVIDER,\n FLEX_RESIZE_STRATEGY_PROVIDER,\n} from '../resize-strategy';\n\nconst PROVIDERS: Provider[] = [\n ColumnResizeNotifier,\n HeaderRowEventDispatcher,\n ColumnResizeNotifierSource,\n];\nexport const TABLE_PROVIDERS: Provider[] = [\n ...PROVIDERS,\n TABLE_LAYOUT_FIXED_RESIZE_STRATEGY_PROVIDER,\n];\nexport const FLEX_PROVIDERS: Provider[] = [...PROVIDERS, FLEX_RESIZE_STRATEGY_PROVIDER];\n\nexport const TABLE_HOST_BINDINGS = {\n class: 'mat-column-resize-table',\n};\nexport const FLEX_HOST_BINDINGS = {\n class: 'mat-column-resize-flex',\n};\n\nexport abstract class AbstractMatColumnResize extends ColumnResize {\n getTableHeight() {\n return this.elementRef.nativeElement!.offsetHeight;\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { Directive, ElementRef, NgZone } from '@angular/core';\nimport {\n ColumnResize,\n ColumnResizeNotifier,\n ColumnResizeNotifierSource,\n HeaderRowEventDispatcher,\n} from '@ng-matero/extensions/column-resize';\n\nimport { AbstractMatColumnResize, TABLE_HOST_BINDINGS, TABLE_PROVIDERS } from './common';\n\n/**\n * Explicitly enables column resizing for a table-based mat-table.\n * Individual columns must be annotated specifically.\n */\n@Directive({\n selector: 'table[mat-table][columnResize]',\n host: TABLE_HOST_BINDINGS,\n providers: [...TABLE_PROVIDERS, { provide: ColumnResize, useExisting: MatColumnResize }],\n})\nexport class MatColumnResize extends AbstractMatColumnResize {\n constructor(\n readonly columnResizeNotifier: ColumnResizeNotifier,\n readonly elementRef: ElementRef<HTMLElement>,\n protected readonly eventDispatcher: HeaderRowEventDispatcher,\n protected readonly ngZone: NgZone,\n protected readonly notifier: ColumnResizeNotifierSource\n ) {\n super();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { Directive, ElementRef, NgZone } from '@angular/core';\nimport {\n ColumnResize,\n ColumnResizeNotifier,\n ColumnResizeNotifierSource,\n HeaderRowEventDispatcher,\n} from '@ng-matero/extensions/column-resize';\n\nimport { AbstractMatColumnResize, FLEX_HOST_BINDINGS, FLEX_PROVIDERS } from './common';\n\n/**\n * Explicitly enables column resizing for a flexbox-based mat-table.\n * Individual columns must be annotated specifically.\n */\n@Directive({\n selector: 'mat-table[columnResize]',\n host: FLEX_HOST_BINDINGS,\n providers: [...FLEX_PROVIDERS, { provide: ColumnResize, useExisting: MatColumnResizeFlex }],\n})\nexport class MatColumnResizeFlex extends AbstractMatColumnResize {\n constructor(\n readonly columnResizeNotifier: ColumnResizeNotifier,\n readonly elementRef: ElementRef<HTMLElement>,\n protected readonly eventDispatcher: HeaderRowEventDispatcher,\n protected readonly ngZone: NgZone,\n protected readonly notifier: ColumnResizeNotifierSource\n ) {\n super();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n NgZone,\n ViewEncapsulation,\n} from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport {\n CdkColumnDef,\n _CoalescedStyleScheduler,\n _COALESCED_STYLE_SCHEDULER,\n} from '@angular/cdk/table';\nimport { Directionality } from '@angular/cdk/bidi';\nimport {\n ColumnResize,\n ColumnResizeNotifierSource,\n HeaderRowEventDispatcher,\n ResizeOverlayHandle,\n ResizeRef,\n} from '@ng-matero/extensions/column-resize';\n\nimport { AbstractMatColumnResize } from './column-resize-directives/common';\n\n/**\n * Component shown over the edge of a resizable column that is responsible\n * for handling column resize mouse events and displaying a vertical line along the column edge.\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'mat-column-resize-overlay-thumb' },\n template: '',\n})\nexport class MatColumnResizeOverlayHandle extends ResizeOverlayHandle {\n protected readonly document: Document;\n\n constructor(\n protected readonly columnDef: CdkColumnDef,\n protected readonly columnResize: ColumnResize,\n protected readonly directionality: Directionality,\n protected readonly elementRef: ElementRef,\n protected readonly eventDispatcher: HeaderRowEventDispatcher,\n protected readonly ngZone: NgZone,\n protected readonly resizeNotifier: ColumnResizeNotifierSource,\n protected readonly resizeRef: ResizeRef,\n @Inject(_COALESCED_STYLE_SCHEDULER)\n protected readonly styleScheduler: _CoalescedStyleScheduler,\n @Inject(DOCUMENT) document: any\n ) {\n super();\n this.document = document;\n }\n\n protected updateResizeActive(active: boolean): void {\n super.updateResizeActive(active);\n\n this.resizeRef.overlayRef.updateSize({\n height: active\n ? (this.columnResize as AbstractMatColumnResize).getTableHeight()\n : this.resizeRef.origin.nativeElement!.offsetHeight,\n });\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { Type } from '@angular/core';\nimport { Resizable } from '@ng-matero/extensions/column-resize';\nimport { MatColumnResizeOverlayHandle } from '../overlay-handle';\n\nexport abstract class AbstractMatResizable extends Resizable<MatColumnResizeOverlayHandle> {\n minWidthPxInternal = 32;\n\n protected getInlineHandleCssClassName(): string {\n return 'mat-resizable-handle';\n }\n\n protected getOverlayHandleComponentType(): Type<MatColumnResizeOverlayHandle> {\n return MatColumnResizeOverlayHandle;\n }\n}\n\nexport const RESIZABLE_HOST_BINDINGS = {\n class: 'mat-resizable',\n};\n\nexport const RESIZABLE_INPUTS = [\n 'minWidthPx: matResizableMinWidthPx',\n 'maxWidthPx: matResizableMaxWidthPx',\n];\n","import {\n Directive,\n ElementRef,\n Inject,\n Injector,\n NgZone,\n ViewContainerRef,\n ChangeDetectorRef,\n Input,\n HostBinding,\n} from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { Overlay } from '@angular/cdk/overlay';\nimport {\n CdkColumnDef,\n _CoalescedStyleScheduler,\n _COALESCED_STYLE_SCHEDULER,\n} from '@angular/cdk/table';\nimport {\n ColumnResize,\n ColumnResizeNotifierSource,\n HeaderRowEventDispatcher,\n ResizeStrategy,\n} from '@ng-matero/extensions/column-resize';\n\nimport { AbstractMatResizable, RESIZABLE_HOST_BINDINGS, RESIZABLE_INPUTS } from './common';\n\n/**\n * Explicitly enables column resizing for a mat-header-cell.\n */\n@Directive({\n selector: 'mat-header-cell[resizable], th[mat-header-cell][resizable]',\n inputs: RESIZABLE_INPUTS,\n})\nexport class MatResizable extends AbstractMatResizable {\n isResizable = true;\n\n @HostBinding('class') get hasResizableClass() {\n return this.isResizable ? RESIZABLE_HOST_BINDINGS.class : '';\n }\n\n @Input()\n get resizable() {\n return this.isResizable;\n }\n set resizable(newValue: any) {\n this.isResizable = newValue == null || newValue === '' || newValue;\n }\n\n protected readonly document: Document;\n\n constructor(\n protected readonly columnDef: CdkColumnDef,\n protected readonly columnResize: ColumnResize,\n protected readonly directionality: Directionality,\n @Inject(DOCUMENT) document: any,\n protected readonly elementRef: ElementRef,\n protected readonly eventDispatcher: HeaderRowEventDispatcher,\n protected readonly injector: Injector,\n protected readonly ngZone: NgZone,\n protected readonly overlay: Overlay,\n protected readonly resizeNotifier: ColumnResizeNotifierSource,\n protected readonly resizeStrategy: ResizeStrategy,\n @Inject(_COALESCED_STYLE_SCHEDULER)\n protected readonly styleScheduler: _CoalescedStyleScheduler,\n protected readonly viewContainerRef: ViewContainerRef,\n protected readonly changeDetectorRef: ChangeDetectorRef\n ) {\n super();\n this.document = document;\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { NgModule } from '@angular/core';\nimport { OverlayModule } from '@angular/cdk/overlay';\n\nimport { MatColumnResize } from './column-resize-directives/column-resize';\nimport { MatColumnResizeFlex } from './column-resize-directives/column-resize-flex';\nimport { MatResizable } from './resizable-directives/resizable';\nimport { MatColumnResizeOverlayHandle } from './overlay-handle';\n\nconst ENTRY_COMMON_COMPONENTS = [MatColumnResizeOverlayHandle];\n\n@NgModule({\n declarations: ENTRY_COMMON_COMPONENTS,\n exports: ENTRY_COMMON_COMPONENTS,\n entryComponents: ENTRY_COMMON_COMPONENTS,\n})\nexport class MatColumnResizeCommonModule {}\n\nconst IMPORTS = [OverlayModule, MatColumnResizeCommonModule];\n\n@NgModule({\n imports: IMPORTS,\n declarations: [MatColumnResize, MatColumnResizeFlex, MatResizable],\n exports: [MatColumnResize, MatColumnResizeFlex, MatResizable],\n})\nexport class MatColumnResizeModule {}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n\r\nimport { MtxUtilsModule } from '@ng-matero/extensions/utils';\r\nimport { MtxDialogModule } from '@ng-matero/extensions/dialog';\r\nimport { MtxGridComponent } from './grid.component';\r\nimport { MtxGridCellComponent } from './cell.component';\r\nimport { MtxGridColumnMenuComponent } from './column-menu.component';\r\nimport { MtxGridExpansionToggleDirective } from './expansion-toggle.directive';\r\nimport { MtxGridCellSelectionDirective } from './cell-selection.directive';\r\nimport { MtxGridService } from './grid.service';\r\nimport { MatColumnResizeModule } from './column-resize/column-resize-module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n MatTableModule,\r\n MatSortModule,\r\n MatPaginatorModule,\r\n MatCheckboxModule,\r\n MatButtonModule,\r\n MatProgressBarModule,\r\n MatChipsModule,\r\n MatTooltipModule,\r\n MatIconModule,\r\n MatSelectModule,\r\n MatFormFieldModule,\r\n MatMenuModule,\r\n DragDropModule,\r\n MtxDialogModule,\r\n MtxUtilsModule,\r\n MatColumnResizeModule,\r\n ],\r\n exports: [\r\n MtxGridComponent,\r\n MtxGridCellComponent,\r\n MtxGridColumnMenuComponent,\r\n MtxGridExpansionToggleDirective,\r\n MtxGridCellSelectionDirective,\r\n MatColumnResizeModule,\r\n ],\r\n declarations: [\r\n MtxGridComponent,\r\n MtxGridCellComponent,\r\n MtxGridColumnMenuComponent,\r\n MtxGridExpansionToggleDirective,\r\n MtxGridCellSelectionDirective,\r\n ],\r\n providers: [MtxGridService],\r\n})\r\nexport class MtxGridModule {}\r\n"],"names":["Injectable","MatTableDataSource","EventEmitter","SelectionModel","TemplateRef","isObservable","Component","ViewEncapsulation","ChangeDetectionStrategy","trigger","state","style","transition","animate","ChangeDetectorRef","ViewChild","MatPaginator","MatSort","Input","Output","PhotoViewer","MtxDialog","moveItemInArray","MatMenuTrigger","Directive","HostBinding","HostListener","CdkFlexTableResizeStrategy","ColumnResize","_CoalescedStyleScheduler","Inject","_COALESCED_STYLE_SCHEDULER","CdkTable","DOCUMENT","ResizeStrategy","ColumnResizeNotifier","HeaderRowEventDispatcher","ColumnResizeNotifierSource","TABLE_LAYOUT_FIXED_RESIZE_STRATEGY_PROVIDER","ElementRef","NgZone","ResizeOverlayHandle","CdkColumnDef","Directionality","ResizeRef","Resizable","Injector","Overlay","ViewContainerRef","NgModule","OverlayModule","CommonModule","FormsModule","MatTableModule","MatSortModule","MatPaginatorModule","MatCheckboxModule","MatButtonModule","MatProgressBarModule","MatChipsModule","MatTooltipModule","MatIconModule","MatSelectModule","MatFormFieldModule","MatMenuModule","DragDropModule","MtxDialogModule","MtxUtilsModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mtxGrid.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/extensions/data-grid/grid.service.ts","../../../projects/extensions/data-grid/grid.component.ts","../../../projects/extensions/data-grid/cell.component.ts","../../../projects/extensions/data-grid/column-menu.component.ts","../../../projects/extensions/data-grid/expansion-toggle.directive.ts","../../../projects/extensions/data-grid/cell-selection.directive.ts","../../../projects/extensions/data-grid/column-resize/resize-strategy.ts","../../../projects/extensions/data-grid/column-resize/column-resize-directives/common.ts","../../../projects/extensions/data-grid/column-resize/column-resize-directives/column-resize.ts","../../../projects/extensions/data-grid/column-resize/column-resize-directives/column-resize-flex.ts","../../../projects/extensions/data-grid/column-resize/overlay-handle.ts","../../../projects/extensions/data-grid/column-resize/resizable-directives/common.ts","../../../projects/extensions/data-grid/column-resize/resizable-directives/resizable.ts","../../../projects/extensions/data-grid/column-resize/column-resize-module.ts","../../../projects/extensions/data-grid/grid.module.ts"],"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 (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\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 var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(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, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, 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\n/** @deprecated */\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\n/** @deprecated */\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 __spreadArray(to, from) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n to[j] = from[i];\r\n return to;\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\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\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 (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, 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 { Injectable } from '@angular/core';\r\nimport { MtxGridColumn } from './grid.interface';\r\n\r\n@Injectable()\r\nexport class MtxGridService {\r\n constructor() {}\r\n\r\n /**\r\n * Get cell value from column key e.g. `a.b.c`\r\n * @param rowData Row data\r\n * @param colDef Column definition\r\n */\r\n getCellValue(rowData: any, colDef: MtxGridColumn): string {\r\n const keyArr = colDef.field ? colDef.field.split('.') : [];\r\n\r\n let tmp: any = '';\r\n\r\n keyArr.forEach((key: string, i: number) => {\r\n if (i === 0) {\r\n tmp = rowData[key];\r\n } else {\r\n tmp = tmp && tmp[key];\r\n }\r\n });\r\n return tmp;\r\n }\r\n\r\n /**\r\n * Get all data of a col\r\n * @param data All data\r\n * @param colDef Column definition\r\n */\r\n getColData(data: any[], colDef: MtxGridColumn): any[] {\r\n return data.map((rowData: any) => this.getCellValue(rowData, colDef));\r\n }\r\n\r\n /**\r\n * Remove white spaces in a string and convert string to array\r\n * @param str string\r\n */\r\n str2arr(str: string): string[] {\r\n return str.replace(/[\\r\\n\\s]/g, '').split(',');\r\n }\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ViewChild,\r\n OnChanges,\r\n TemplateRef,\r\n TrackByFunction,\r\n OnDestroy,\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n ElementRef,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport { trigger, state, style, transition, animate } from '@angular/animations';\r\nimport { SelectionModel } from '@angular/cdk/collections';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { MatPaginator, PageEvent } from '@angular/material/paginator';\r\nimport { Sort, MatSort, SortDirection } from '@angular/material/sort';\r\n\r\nimport {\r\n MtxGridColumn,\r\n MtxGridColumnSelectionItem,\r\n MtxGridCellTemplate,\r\n MtxGridRowSelectionFormatter,\r\n MtxGridRowClassFormatter,\r\n MtxGridColumnMenu,\r\n MtxGridButtonType,\r\n} from './grid.interface';\r\nimport { MtxGridCellSelectionDirective } from './cell-selection.directive';\r\nimport { MtxGridExpansionToggleDirective } from './expansion-toggle.directive';\r\nimport { MtxGridService } from './grid.service';\r\nimport { isObservable } from 'rxjs';\r\nimport { ThemePalette } from '@angular/material/core';\r\n\r\n@Component({\r\n selector: 'mtx-grid',\r\n exportAs: 'mtxGrid',\r\n templateUrl: './grid.component.html',\r\n styleUrls: ['./grid.component.scss'],\r\n host: {\r\n class: 'mtx-grid',\r\n },\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [\r\n trigger('expansion', [\r\n state('collapsed, void', style({ height: '0', minHeight: '0', visibility: 'hidden' })),\r\n state('expanded', style({ height: '*', visibility: 'visible' })),\r\n transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),\r\n ]),\r\n ],\r\n})\r\nexport class MtxGridComponent implements OnInit, OnChanges, AfterViewInit, OnDestroy {\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n @ViewChild(MatSort) sort: MatSort;\r\n @ViewChild('columnMenu') columnMenu: MtxGridColumnMenu;\r\n @ViewChild('tableContainer') tableContainer: ElementRef<HTMLDivElement>;\r\n\r\n dataSource = new MatTableDataSource();\r\n\r\n @Input() displayedColumns: string[];\r\n @Input() columns: MtxGridColumn[] = [];\r\n @Input() data: any[] = [];\r\n @Input() length = 0;\r\n @Input() loading = false;\r\n\r\n @Input() trackBy: TrackByFunction<any>;\r\n\r\n @Input() columnResizable = false;\r\n\r\n // Page\r\n\r\n @Input() pageOnFront = true;\r\n @Input() showPaginator = true;\r\n @Input() pageDisabled = false;\r\n @Input() showFirstLastButtons = true;\r\n @Input() pageIndex = 0;\r\n @Input() pageSize = 10;\r\n @Input() pageSizeOptions = [10, 50, 100];\r\n @Input() hidePageSize = false;\r\n @Output() page = new EventEmitter<PageEvent>();\r\n\r\n // Sort\r\n\r\n @Input() sortOnFront = true;\r\n @Input() sortActive: string;\r\n @Input() sortDirection: SortDirection;\r\n @Input() sortDisableClear: boolean = false;\r\n @Input() sortDisabled: boolean = false;\r\n @Input() sortStart: 'asc' | 'desc' = 'asc';\r\n @Output() sortChange = new EventEmitter<Sort>();\r\n\r\n // Row\r\n\r\n @Input() rowHover = false;\r\n @Input() rowStriped = false;\r\n @Output() rowClick = new EventEmitter<any>();\r\n\r\n // Expansion\r\n\r\n expansionRowStates: any[] = [];\r\n\r\n @Input() expandable = false;\r\n @Input() expansionTemplate: TemplateRef<any>;\r\n @Output() expansionChange = new EventEmitter<any>();\r\n\r\n /** Whether support multiple row/cell selection */\r\n @Input() multiSelectable = true;\r\n\r\n // Row selection\r\n\r\n rowSelection: SelectionModel<any> = new SelectionModel<any>(true, []);\r\n\r\n @Input() rowSelected = [];\r\n @Input() rowSelectable = false;\r\n @Input() hideRowSelectionCheckbox = false;\r\n @Input() rowSelectionFormatter: MtxGridRowSelectionFormatter = {};\r\n @Input() rowClassFormatter: MtxGridRowClassFormatter;\r\n @Output() rowSelectionChange = new EventEmitter<any[]>();\r\n\r\n // Cell selection\r\n\r\n cellSelection: any[] = [];\r\n\r\n @Input() cellSelectable = true;\r\n @Output() cellSelectionChange = new EventEmitter<any[]>();\r\n\r\n private _selectedCell: MtxGridCellSelectionDirective | undefined;\r\n\r\n // Toolbar\r\n\r\n @Input() showToolbar = false;\r\n @Input() toolbarTitle = '';\r\n @Input() toolbarTemplate: TemplateRef<any>;\r\n\r\n // Column menu\r\n\r\n columnMenuData: MtxGridColumnSelectionItem[] = [];\r\n\r\n @Input() showColumnMenuButton = true;\r\n @Input() columnMenuButtonText = '';\r\n @Input() columnMenuButtonType: MtxGridButtonType = 'stroked';\r\n @Input() columnMenuButtonColor: ThemePalette;\r\n @Input() columnMenuButtonClass = '';\r\n @Input() columnMenuButtonIcon = '';\r\n\r\n @Input() columnHideable = true;\r\n @Input() columnHideableChecked: 'show' | 'hide' = 'show';\r\n @Input() columnMovable = true;\r\n @Input() columnPinnable = true;\r\n @Output() columnChange = new EventEmitter<MtxGridColumnSelectionItem[]>();\r\n\r\n @Input() showColumnMenuHeader = false;\r\n @Input() columnMenuHeaderText = 'Columns Header';\r\n @Input() columnMenuHeaderTemplate: TemplateRef<any>;\r\n @Input() showColumnMenuFooter = false;\r\n @Input() columnMenuFooterText = 'Columns Footer';\r\n @Input() columnMenuFooterTemplate: TemplateRef<any>;\r\n\r\n // No Result\r\n\r\n @Input() noResultText = 'No records found';\r\n @Input() noResultTemplate: TemplateRef<any>;\r\n\r\n get _hasNoResult() {\r\n return (!this.data || this.data.length === 0) && !this.loading;\r\n }\r\n\r\n // Cell templates\r\n\r\n @Input() headerTemplate: TemplateRef<any> | MtxGridCellTemplate | any;\r\n @Input() headerExtraTemplate: TemplateRef<any> | MtxGridCellTemplate | any;\r\n\r\n @Input() cellTemplate: TemplateRef<any> | MtxGridCellTemplate | any;\r\n\r\n // Summary\r\n\r\n @Input() showSummary = false;\r\n @Input() summaryTemplate: TemplateRef<any> | MtxGridCellTemplate | any;\r\n\r\n // TODO: Summary display conditions\r\n get _whetherShowSummary() {\r\n return this.showSummary;\r\n }\r\n\r\n // Sidebar\r\n\r\n @Input() showSidebar = false;\r\n @Input() sidebarTemplate: TemplateRef<any>;\r\n\r\n constructor(\r\n private _dataGridSrv: MtxGridService,\r\n private _changeDetectorRef: ChangeDetectorRef\r\n ) {}\r\n\r\n detectChanges() {\r\n this._changeDetectorRef.detectChanges();\r\n }\r\n\r\n _isTemplateRef(obj: any) {\r\n return obj instanceof TemplateRef;\r\n }\r\n\r\n _isObservable(data: any) {\r\n return isObservable(data);\r\n }\r\n\r\n _getColData(data: any[], colDef: MtxGridColumn) {\r\n return this._dataGridSrv.getColData(data, colDef);\r\n }\r\n\r\n _getRowClassList(rowData: any, index: number) {\r\n const classList: any = {\r\n 'selected': this.rowSelection.isSelected(rowData),\r\n 'mat-row-odd': index % 2,\r\n };\r\n if (this.rowClassFormatter) {\r\n for (const key of Object.keys(this.rowClassFormatter)) {\r\n classList[key] = this.rowClassFormatter[key](rowData, index);\r\n }\r\n }\r\n return classList;\r\n }\r\n\r\n ngOnInit() {}\r\n\r\n // Waiting for async data\r\n ngOnChanges(changes: SimpleChanges) {\r\n this._countPinnedPosition();\r\n\r\n this.displayedColumns = this.columns.filter(item => !item.hide).map(item => item.field);\r\n\r\n if (this.showColumnMenuButton) {\r\n this.columnMenuData = (this.columns as any[]).map(item => {\r\n const newItem: MtxGridColumnSelectionItem = {\r\n label: item.header,\r\n field: item.field,\r\n disabled: item.disabled,\r\n };\r\n if (this.columnHideableChecked === 'show') {\r\n newItem.show = !item.hide;\r\n } else {\r\n newItem.hide = item.hide;\r\n }\r\n return newItem;\r\n });\r\n }\r\n\r\n if (this.rowSelectable && !this.hideRowSelectionCheckbox) {\r\n this.displayedColumns.unshift('MtxGridCheckboxColumnDef');\r\n }\r\n\r\n // We should copy each item of data for expansion data\r\n if (this.expandable) {\r\n this.expansionRowStates = []; // reset\r\n\r\n this.data?.forEach(_ => {\r\n this.expansionRowStates.push({ expanded: false });\r\n });\r\n }\r\n\r\n if (this.rowSelectable) {\r\n this.rowSelection = new SelectionModel<any>(this.multiSelectable, this.rowSelected);\r\n }\r\n\r\n this.dataSource = new MatTableDataSource(this.data);\r\n\r\n this.dataSource.paginator = this.pageOnFront ? this.paginator : null;\r\n this.dataSource.sort = this.sortOnFront ? this.sort : null;\r\n\r\n // Only scroll top when data change\r\n if (changes.data) {\r\n this.scrollTop(0);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.pageOnFront) {\r\n this.dataSource.paginator = this.paginator;\r\n }\r\n\r\n if (this.sortOnFront) {\r\n this.dataSource.sort = this.sort;\r\n }\r\n }\r\n\r\n ngOnDestroy() {}\r\n\r\n _countPinnedPosition() {\r\n const count = (acc: number, cur: MtxGridColumn) => acc + parseFloat(cur.width || '80px');\r\n\r\n const pinnedLeftCols = this.columns.filter(col => col.pinned && col.pinned === 'left');\r\n pinnedLeftCols.forEach((item, idx) => {\r\n item.left = pinnedLeftCols.slice(0, idx).reduce(count, 0) + 'px';\r\n });\r\n\r\n const pinnedRightCols = this.columns\r\n .filter(col => col.pinned && col.pinned === 'right')\r\n .reverse();\r\n pinnedRightCols.forEach((item, idx) => {\r\n item.right = pinnedRightCols.slice(0, idx).reduce(count, 0) + 'px';\r\n });\r\n }\r\n\r\n _getIndex(index: number, dataIndex: number) {\r\n return typeof index === 'undefined' ? dataIndex : index;\r\n }\r\n\r\n _handleSortChange(sort: Sort) {\r\n this.sortChange.emit(sort);\r\n }\r\n\r\n /** Expansion change event */\r\n _handleExpansionChange(\r\n expansionRef: MtxGridExpansionToggleDirective,\r\n rowData: any,\r\n column: any,\r\n index: number\r\n ) {\r\n this.expansionChange.emit({ expanded: expansionRef.expanded, data: rowData, index, column });\r\n }\r\n\r\n /** Cell select event */\r\n _selectCell(cellRef: MtxGridCellSelectionDirective, rowData: any, colDef: any): void {\r\n // If not the same cell\r\n if (this._selectedCell !== cellRef) {\r\n const colValue = this._dataGridSrv.getCellValue(rowData, colDef);\r\n this.cellSelection = []; // reset\r\n this.cellSelection.push({ cellData: colValue, rowData, colDef });\r\n\r\n this.cellSelectionChange.emit(this.cellSelection);\r\n\r\n if (this._selectedCell) {\r\n this._selectedCell.deselect(); // the selectedCell will be undefined\r\n }\r\n }\r\n\r\n this._selectedCell = cellRef.selected ? cellRef : undefined;\r\n }\r\n\r\n /** Row select event */\r\n _selectRow(event: MouseEvent, rowData: any, index: number) {\r\n if (\r\n this.rowSelectable &&\r\n !this.rowSelectionFormatter.disabled?.(rowData, index) &&\r\n !this.rowSelectionFormatter.hideCheckbox?.(rowData, index)\r\n ) {\r\n // metaKey -> command key\r\n if (!event.ctrlKey && !event.metaKey) {\r\n this.rowSelection.clear();\r\n }\r\n\r\n this._toggleNormalCheckbox(rowData);\r\n }\r\n\r\n this.rowClick.emit({ rowData, index });\r\n }\r\n\r\n /** Whether the number of selected elements matches the total number of rows. */\r\n _isAllSelected() {\r\n const numSelected = this.rowSelection.selected.length;\r\n const numRows = this.dataSource.data.filter(\r\n (row, index) => !this.rowSelectionFormatter.disabled?.(row, index)\r\n ).length;\r\n return numSelected === numRows;\r\n }\r\n\r\n /** Select all rows if they are not all selected; otherwise clear selection. */\r\n _toggleMasterCheckbox() {\r\n this._isAllSelected()\r\n ? this.rowSelection.clear()\r\n : this.dataSource.data.forEach((row, index) => {\r\n if (!this.rowSelectionFormatter.disabled?.(row, index)) {\r\n this.rowSelection.select(row);\r\n }\r\n });\r\n this.rowSelectionChange.emit(this.rowSelection.selected);\r\n }\r\n\r\n /** Select normal row */\r\n _toggleNormalCheckbox(row: any) {\r\n this.rowSelection.toggle(row);\r\n this.rowSelectionChange.emit(this.rowSelection.selected);\r\n }\r\n\r\n /** Column change event */\r\n\r\n _handleColumnChange(columns: any[]) {\r\n this.columnChange.emit(columns);\r\n\r\n this.displayedColumns = Object.assign([], this.getDisplayedColumnFields(columns));\r\n\r\n if (this.rowSelectable && !this.hideRowSelectionCheckbox) {\r\n this.displayedColumns.unshift('MtxGridCheckboxColumnDef');\r\n }\r\n }\r\n\r\n getDisplayedColumnFields(columns: any[]): string[] {\r\n const fields = columns\r\n .filter((item: MtxGridColumnSelectionItem) =>\r\n this.columnHideableChecked === 'show' ? item.show : !item.hide\r\n )\r\n .map((item: MtxGridColumnSelectionItem) => item.field);\r\n return fields;\r\n }\r\n\r\n /** Customize expansion event */\r\n toggleExpansion(index: number) {\r\n if (!this.expandable) {\r\n throw new Error('The `expandable` should be set true.');\r\n }\r\n this.expansionRowStates[index].expanded = !this.expansionRowStates[index].expanded;\r\n return this.expansionRowStates[index].expanded;\r\n }\r\n\r\n /** Scroll to top when turn to the next page */\r\n _handlePage(e: PageEvent) {\r\n if (this.pageOnFront) {\r\n this.scrollTop(0);\r\n }\r\n this.page.emit(e);\r\n }\r\n\r\n scrollTop(value?: number): number | void {\r\n if (value == null) {\r\n return this.tableContainer?.nativeElement.scrollTop;\r\n }\r\n if (this.tableContainer && !this.loading) {\r\n this.tableContainer.nativeElement.scrollTop = value;\r\n }\r\n }\r\n\r\n scrollLeft(value?: number): number | void {\r\n if (value == null) {\r\n return this.tableContainer?.nativeElement.scrollLeft;\r\n }\r\n if (this.tableContainer && !this.loading) {\r\n this.tableContainer.nativeElement.scrollLeft = value;\r\n }\r\n }\r\n}\r\n","import { Component, Input, ViewEncapsulation } from '@angular/core';\r\nimport { MtxDialog } from '@ng-matero/extensions/dialog';\r\n\r\nimport { MtxGridColumn, MtxGridColumnButton } from './grid.interface';\r\nimport { MtxGridService } from './grid.service';\r\nimport PhotoViewer from 'photoviewer';\r\nimport { ThemePalette } from '@angular/material/core';\r\n\r\n@Component({\r\n selector: 'mtx-grid-cell',\r\n exportAs: 'mtxGridCell',\r\n templateUrl: './cell.component.html',\r\n styleUrls: ['./cell.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class MtxGridCellComponent {\r\n /** Row data */\r\n @Input() rowData = {};\r\n\r\n /** Column definition */\r\n @Input() colDef: MtxGridColumn;\r\n\r\n /** All data */\r\n @Input() data: any[] = [];\r\n\r\n /** Whether show summary */\r\n @Input() summary = false;\r\n\r\n get _colValue() {\r\n return this._dataGridSrv.getCellValue(this.rowData, this.colDef);\r\n }\r\n\r\n _isEmptyValue(value: any) {\r\n return value == null || value.toString() === '';\r\n }\r\n\r\n _isContainHTML(value: string) {\r\n return /<\\/?[a-z][\\s\\S]*>/i.test(value);\r\n }\r\n\r\n _getText(value: any) {\r\n return value === undefined ? '' : this._isEmptyValue(value) ? '--' : value;\r\n }\r\n\r\n _getTooltip(value: any) {\r\n return this._isEmptyValue(value) ? '' : value;\r\n }\r\n\r\n _getFormatterTooltip(value: any) {\r\n return this._isContainHTML(value) || this._isEmptyValue(value) ? '' : value;\r\n }\r\n\r\n _formatSummary(data: any[], colDef: MtxGridColumn) {\r\n if (typeof colDef.summary === 'string') {\r\n return colDef.summary;\r\n } else if (typeof colDef.summary === 'function') {\r\n return (colDef.summary as (data: any[], colDef?: MtxGridColumn) => void)(\r\n this._dataGridSrv.getColData(data, colDef),\r\n colDef\r\n );\r\n }\r\n }\r\n\r\n constructor(private _dialog: MtxDialog, private _dataGridSrv: MtxGridService) {}\r\n\r\n _handleActionClick(event: MouseEvent, btn: MtxGridColumnButton, rowData: any) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n\r\n if (btn.pop) {\r\n this._dialog.open({\r\n title: btn.popTitle,\r\n description: btn.popDescription,\r\n buttons: [\r\n {\r\n color: btn.popOkColor || 'primary',\r\n text: btn.popOkText || 'OK',\r\n onClick: () => (btn.click ? btn.click(rowData) : {}),\r\n },\r\n {\r\n color: btn.popCloseColor,\r\n text: btn.popCloseText || 'CLOSE',\r\n onClick: () => {},\r\n },\r\n ],\r\n });\r\n } else {\r\n btn.click?.(rowData);\r\n }\r\n }\r\n\r\n /** Preview enlarged image */\r\n _handleImagePreview(urlStr: string) {\r\n const imgs: PhotoViewer.Img[] = [];\r\n\r\n this._dataGridSrv.str2arr(urlStr).forEach((url, index) => {\r\n imgs.push({ title: index + 1 + '', src: url });\r\n });\r\n\r\n const footerToolbar =\r\n imgs.length > 1\r\n ? ['zoomIn', 'zoomOut', 'prev', 'next', 'rotateRight', 'rotateLeft', 'actualSize']\r\n : ['zoomIn', 'zoomOut', 'rotateRight', 'rotateLeft', 'actualSize'];\r\n\r\n const options: PhotoViewer.Options = {\r\n title: imgs.length > 1,\r\n footerToolbar,\r\n };\r\n\r\n const photoviewer = new PhotoViewer(imgs, options);\r\n }\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n Output,\r\n EventEmitter,\r\n TemplateRef,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport { MatCheckboxChange } from '@angular/material/checkbox';\r\nimport { MatMenu, MatMenuTrigger } from '@angular/material/menu';\r\nimport { ThemePalette } from '@angular/material/core';\r\nimport { MtxGridButtonType, MtxGridColumnSelectionItem } from './grid.interface';\r\n\r\n@Component({\r\n selector: 'mtx-grid-column-menu',\r\n exportAs: 'mtxGridColumnMenu',\r\n templateUrl: './column-menu.component.html',\r\n styleUrls: ['./column-menu.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class MtxGridColumnMenuComponent {\r\n @ViewChild('menu', { static: true }) menuPanel: MatMenu;\r\n @ViewChild(MatMenuTrigger) menuTrigger: MatMenuTrigger;\r\n\r\n @Input() columns: MtxGridColumnSelectionItem[] = [];\r\n @Input() selectable = true;\r\n @Input() selectableChecked: 'show' | 'hide' = 'show';\r\n @Input() sortable = true;\r\n @Input() dndSortable = true;\r\n\r\n @Input()\r\n get buttonText() {\r\n const defaultText = `Columns ${this.selectableChecked === 'show' ? 'Shown' : 'Hidden'}`;\r\n const text = this._buttonText ? this._buttonText : defaultText;\r\n return text;\r\n }\r\n set buttonText(value: string) {\r\n this._buttonText = value;\r\n }\r\n private _buttonText = '';\r\n\r\n @Input() buttonType: MtxGridButtonType = 'stroked';\r\n @Input() buttonColor: ThemePalette;\r\n @Input() buttonClass = '';\r\n @Input() buttonIcon = '';\r\n\r\n @Input() showHeader = false;\r\n @Input() headerText = 'Columns Header';\r\n @Input() headerTemplate: TemplateRef<any>;\r\n @Input() showFooter = false;\r\n @Input() footerText = 'Columns Footer';\r\n @Input() footerTemplate: TemplateRef<any>;\r\n\r\n @Output() selectionChange = new EventEmitter<MtxGridColumnSelectionItem[]>();\r\n @Output() sortChange = new EventEmitter<MtxGridColumnSelectionItem[]>();\r\n\r\n _handleDroped(event: CdkDragDrop<string[]>) {\r\n moveItemInArray(this.columns, event.previousIndex, event.currentIndex);\r\n this.sortChange.emit(this.columns);\r\n }\r\n\r\n _handleSelection(e: MatCheckboxChange) {\r\n this.selectionChange.emit(this.columns);\r\n }\r\n}\r\n","import {\r\n Directive,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n Output,\r\n TemplateRef,\r\n} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[mtx-grid-expansion-toggle]',\r\n})\r\nexport class MtxGridExpansionToggleDirective {\r\n private _opened = false;\r\n private _row: any;\r\n private _tplRef: TemplateRef<any>;\r\n\r\n @Input()\r\n get opened() {\r\n return this._opened;\r\n }\r\n set opened(newValue: boolean) {\r\n this._opened = newValue;\r\n this.openedChange.emit(newValue);\r\n }\r\n @Output() openedChange = new EventEmitter<boolean>();\r\n\r\n @HostBinding('class.expanded')\r\n get expanded(): boolean {\r\n return this._opened;\r\n }\r\n\r\n @Input()\r\n set expandableRow(value: any) {\r\n if (value !== this._row) {\r\n this._row = value;\r\n }\r\n }\r\n\r\n @Input('expansionRowTpl')\r\n set template(value: TemplateRef<any>) {\r\n if (value !== this._tplRef) {\r\n this._tplRef = value;\r\n }\r\n }\r\n\r\n @Output() toggleChange = new EventEmitter<MtxGridExpansionToggleDirective>();\r\n\r\n constructor() {}\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: MouseEvent): void {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.toggle();\r\n }\r\n\r\n toggle(): void {\r\n this.opened = !this.opened;\r\n this.toggleChange.emit(this);\r\n }\r\n}\r\n","import {\r\n Directive,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n Output,\r\n} from '@angular/core';\r\n\r\nimport { MtxGridComponent } from './grid.component';\r\n\r\n@Directive({\r\n selector: '[mtx-grid-selectable-cell]',\r\n})\r\nexport class MtxGridCellSelectionDirective {\r\n private _selected = false;\r\n private _rowData: any;\r\n\r\n shiftKeyPressed = false;\r\n ctrlKeyPressed = false;\r\n\r\n @HostBinding('class.selected')\r\n get selected(): boolean {\r\n return this._selected;\r\n }\r\n\r\n @Input()\r\n set matSelectableRowData(value: any) {\r\n if (value !== this._rowData) {\r\n this._rowData = value;\r\n }\r\n }\r\n\r\n @Output() cellSelectionChange = new EventEmitter<MtxGridCellSelectionDirective>();\r\n\r\n constructor(private _dataGrid: MtxGridComponent) { }\r\n\r\n @HostListener('click', ['$event'])\r\n onClick(event: MouseEvent): void {\r\n this.ctrlKeyPressed = event.ctrlKey;\r\n this.shiftKeyPressed = event.shiftKey;\r\n\r\n if (this._dataGrid.cellSelectable) {\r\n this.select();\r\n }\r\n }\r\n\r\n select(): void {\r\n this._selected = true;\r\n this.cellSelectionChange.emit(this);\r\n }\r\n\r\n deselect(): void {\r\n this._selected = false;\r\n this.cellSelectionChange.emit(this);\r\n }\r\n\r\n toggle(): void {\r\n this._selected = !this._selected;\r\n this.cellSelectionChange.emit(this);\r\n }\r\n}\r\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { Inject, Injectable, Provider } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { CdkTable, _CoalescedStyleScheduler, _COALESCED_STYLE_SCHEDULER } from '@angular/cdk/table';\n\nimport {\n ColumnResize,\n ResizeStrategy,\n CdkFlexTableResizeStrategy,\n TABLE_LAYOUT_FIXED_RESIZE_STRATEGY_PROVIDER,\n} from '@ng-matero/extensions/column-resize';\n\nexport { TABLE_LAYOUT_FIXED_RESIZE_STRATEGY_PROVIDER };\n\n/**\n * Overrides CdkFlexTableResizeStrategy to match mat-column elements.\n */\n@Injectable()\nexport class MatFlexTableResizeStrategy extends CdkFlexTableResizeStrategy {\n constructor(\n columnResize: ColumnResize,\n @Inject(_COALESCED_STYLE_SCHEDULER) styleScheduler: _CoalescedStyleScheduler,\n table: CdkTable<unknown>,\n @Inject(DOCUMENT) document: any\n ) {\n super(columnResize, styleScheduler, table, document);\n }\n\n protected getColumnCssClass(cssFriendlyColumnName: string): string {\n return `mat-column-${cssFriendlyColumnName}`;\n }\n}\n\nexport const FLEX_RESIZE_STRATEGY_PROVIDER: Provider = {\n provide: ResizeStrategy,\n useClass: MatFlexTableResizeStrategy,\n};\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { Provider } from '@angular/core';\n\nimport {\n ColumnResize,\n ColumnResizeNotifier,\n ColumnResizeNotifierSource,\n HeaderRowEventDispatcher,\n} from '@ng-matero/extensions/column-resize';\n\nimport {\n TABLE_LAYOUT_FIXED_RESIZE_STRATEGY_PROVIDER,\n FLEX_RESIZE_STRATEGY_PROVIDER,\n} from '../resize-strategy';\n\nconst PROVIDERS: Provider[] = [\n ColumnResizeNotifier,\n HeaderRowEventDispatcher,\n ColumnResizeNotifierSource,\n];\nexport const TABLE_PROVIDERS: Provider[] = [\n ...PROVIDERS,\n TABLE_LAYOUT_FIXED_RESIZE_STRATEGY_PROVIDER,\n];\nexport const FLEX_PROVIDERS: Provider[] = [...PROVIDERS, FLEX_RESIZE_STRATEGY_PROVIDER];\n\nexport const TABLE_HOST_BINDINGS = {\n class: 'mat-column-resize-table',\n};\nexport const FLEX_HOST_BINDINGS = {\n class: 'mat-column-resize-flex',\n};\n\nexport abstract class AbstractMatColumnResize extends ColumnResize {\n getTableHeight() {\n return this.elementRef.nativeElement!.offsetHeight;\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { Directive, ElementRef, NgZone } from '@angular/core';\nimport {\n ColumnResize,\n ColumnResizeNotifier,\n ColumnResizeNotifierSource,\n HeaderRowEventDispatcher,\n} from '@ng-matero/extensions/column-resize';\n\nimport { AbstractMatColumnResize, TABLE_HOST_BINDINGS, TABLE_PROVIDERS } from './common';\n\n/**\n * Explicitly enables column resizing for a table-based mat-table.\n * Individual columns must be annotated specifically.\n */\n@Directive({\n selector: 'table[mat-table][columnResize]',\n host: TABLE_HOST_BINDINGS,\n providers: [...TABLE_PROVIDERS, { provide: ColumnResize, useExisting: MatColumnResize }],\n})\nexport class MatColumnResize extends AbstractMatColumnResize {\n constructor(\n readonly columnResizeNotifier: ColumnResizeNotifier,\n readonly elementRef: ElementRef<HTMLElement>,\n protected readonly eventDispatcher: HeaderRowEventDispatcher,\n protected readonly ngZone: NgZone,\n protected readonly notifier: ColumnResizeNotifierSource\n ) {\n super();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { Directive, ElementRef, NgZone } from '@angular/core';\nimport {\n ColumnResize,\n ColumnResizeNotifier,\n ColumnResizeNotifierSource,\n HeaderRowEventDispatcher,\n} from '@ng-matero/extensions/column-resize';\n\nimport { AbstractMatColumnResize, FLEX_HOST_BINDINGS, FLEX_PROVIDERS } from './common';\n\n/**\n * Explicitly enables column resizing for a flexbox-based mat-table.\n * Individual columns must be annotated specifically.\n */\n@Directive({\n selector: 'mat-table[columnResize]',\n host: FLEX_HOST_BINDINGS,\n providers: [...FLEX_PROVIDERS, { provide: ColumnResize, useExisting: MatColumnResizeFlex }],\n})\nexport class MatColumnResizeFlex extends AbstractMatColumnResize {\n constructor(\n readonly columnResizeNotifier: ColumnResizeNotifier,\n readonly elementRef: ElementRef<HTMLElement>,\n protected readonly eventDispatcher: HeaderRowEventDispatcher,\n protected readonly ngZone: NgZone,\n protected readonly notifier: ColumnResizeNotifierSource\n ) {\n super();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Inject,\n NgZone,\n ViewEncapsulation,\n} from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport {\n CdkColumnDef,\n _CoalescedStyleScheduler,\n _COALESCED_STYLE_SCHEDULER,\n} from '@angular/cdk/table';\nimport { Directionality } from '@angular/cdk/bidi';\nimport {\n ColumnResize,\n ColumnResizeNotifierSource,\n HeaderRowEventDispatcher,\n ResizeOverlayHandle,\n ResizeRef,\n} from '@ng-matero/extensions/column-resize';\n\nimport { AbstractMatColumnResize } from './column-resize-directives/common';\n\n/**\n * Component shown over the edge of a resizable column that is responsible\n * for handling column resize mouse events and displaying a vertical line along the column edge.\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'mat-column-resize-overlay-thumb' },\n template: '',\n})\nexport class MatColumnResizeOverlayHandle extends ResizeOverlayHandle {\n protected readonly document: Document;\n\n constructor(\n protected readonly columnDef: CdkColumnDef,\n protected readonly columnResize: ColumnResize,\n protected readonly directionality: Directionality,\n protected readonly elementRef: ElementRef,\n protected readonly eventDispatcher: HeaderRowEventDispatcher,\n protected readonly ngZone: NgZone,\n protected readonly resizeNotifier: ColumnResizeNotifierSource,\n protected readonly resizeRef: ResizeRef,\n @Inject(_COALESCED_STYLE_SCHEDULER)\n protected readonly styleScheduler: _CoalescedStyleScheduler,\n @Inject(DOCUMENT) document: any\n ) {\n super();\n this.document = document;\n }\n\n protected updateResizeActive(active: boolean): void {\n super.updateResizeActive(active);\n\n this.resizeRef.overlayRef.updateSize({\n height: active\n ? (this.columnResize as AbstractMatColumnResize).getTableHeight()\n : this.resizeRef.origin.nativeElement!.offsetHeight,\n });\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { Type } from '@angular/core';\nimport { Resizable } from '@ng-matero/extensions/column-resize';\nimport { MatColumnResizeOverlayHandle } from '../overlay-handle';\n\nexport abstract class AbstractMatResizable extends Resizable<MatColumnResizeOverlayHandle> {\n minWidthPxInternal = 32;\n\n protected getInlineHandleCssClassName(): string {\n return 'mat-resizable-handle';\n }\n\n protected getOverlayHandleComponentType(): Type<MatColumnResizeOverlayHandle> {\n return MatColumnResizeOverlayHandle;\n }\n}\n\nexport const RESIZABLE_HOST_BINDINGS = {\n class: 'mat-resizable',\n};\n\nexport const RESIZABLE_INPUTS = [\n 'minWidthPx: matResizableMinWidthPx',\n 'maxWidthPx: matResizableMaxWidthPx',\n];\n","import {\n Directive,\n ElementRef,\n Inject,\n Injector,\n NgZone,\n ViewContainerRef,\n ChangeDetectorRef,\n Input,\n HostBinding,\n} from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { Overlay } from '@angular/cdk/overlay';\nimport {\n CdkColumnDef,\n _CoalescedStyleScheduler,\n _COALESCED_STYLE_SCHEDULER,\n} from '@angular/cdk/table';\nimport {\n ColumnResize,\n ColumnResizeNotifierSource,\n HeaderRowEventDispatcher,\n ResizeStrategy,\n} from '@ng-matero/extensions/column-resize';\n\nimport { AbstractMatResizable, RESIZABLE_HOST_BINDINGS, RESIZABLE_INPUTS } from './common';\n\n/**\n * Explicitly enables column resizing for a mat-header-cell.\n */\n@Directive({\n selector: 'mat-header-cell[resizable], th[mat-header-cell][resizable]',\n inputs: RESIZABLE_INPUTS,\n})\nexport class MatResizable extends AbstractMatResizable {\n isResizable = true;\n\n @HostBinding('class') get hasResizableClass() {\n return this.isResizable ? RESIZABLE_HOST_BINDINGS.class : '';\n }\n\n @Input()\n get resizable() {\n return this.isResizable;\n }\n set resizable(newValue: any) {\n this.isResizable = newValue == null || newValue === '' || newValue;\n }\n\n protected readonly document: Document;\n\n constructor(\n protected readonly columnDef: CdkColumnDef,\n protected readonly columnResize: ColumnResize,\n protected readonly directionality: Directionality,\n @Inject(DOCUMENT) document: any,\n protected readonly elementRef: ElementRef,\n protected readonly eventDispatcher: HeaderRowEventDispatcher,\n protected readonly injector: Injector,\n protected readonly ngZone: NgZone,\n protected readonly overlay: Overlay,\n protected readonly resizeNotifier: ColumnResizeNotifierSource,\n protected readonly resizeStrategy: ResizeStrategy,\n @Inject(_COALESCED_STYLE_SCHEDULER)\n protected readonly styleScheduler: _CoalescedStyleScheduler,\n protected readonly viewContainerRef: ViewContainerRef,\n protected readonly changeDetectorRef: ChangeDetectorRef\n ) {\n super();\n this.document = document;\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport { NgModule } from '@angular/core';\nimport { OverlayModule } from '@angular/cdk/overlay';\n\nimport { MatColumnResize } from './column-resize-directives/column-resize';\nimport { MatColumnResizeFlex } from './column-resize-directives/column-resize-flex';\nimport { MatResizable } from './resizable-directives/resizable';\nimport { MatColumnResizeOverlayHandle } from './overlay-handle';\n\nconst ENTRY_COMMON_COMPONENTS = [MatColumnResizeOverlayHandle];\n\n@NgModule({\n declarations: ENTRY_COMMON_COMPONENTS,\n exports: ENTRY_COMMON_COMPONENTS,\n entryComponents: ENTRY_COMMON_COMPONENTS,\n})\nexport class MatColumnResizeCommonModule {}\n\nconst IMPORTS = [OverlayModule, MatColumnResizeCommonModule];\n\n@NgModule({\n imports: IMPORTS,\n declarations: [MatColumnResize, MatColumnResizeFlex, MatResizable],\n exports: [MatColumnResize, MatColumnResizeFlex, MatResizable],\n})\nexport class MatColumnResizeModule {}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n\r\nimport { MtxUtilsModule } from '@ng-matero/extensions/utils';\r\nimport { MtxDialogModule } from '@ng-matero/extensions/dialog';\r\nimport { MtxGridComponent } from './grid.component';\r\nimport { MtxGridCellComponent } from './cell.component';\r\nimport { MtxGridColumnMenuComponent } from './column-menu.component';\r\nimport { MtxGridExpansionToggleDirective } from './expansion-toggle.directive';\r\nimport { MtxGridCellSelectionDirective } from './cell-selection.directive';\r\nimport { MtxGridService } from './grid.service';\r\nimport { MatColumnResizeModule } from './column-resize/column-resize-module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n MatTableModule,\r\n MatSortModule,\r\n MatPaginatorModule,\r\n MatCheckboxModule,\r\n MatButtonModule,\r\n MatProgressBarModule,\r\n MatChipsModule,\r\n MatTooltipModule,\r\n MatIconModule,\r\n MatSelectModule,\r\n MatFormFieldModule,\r\n MatMenuModule,\r\n DragDropModule,\r\n MtxDialogModule,\r\n MtxUtilsModule,\r\n MatColumnResizeModule,\r\n ],\r\n exports: [\r\n MtxGridComponent,\r\n MtxGridCellComponent,\r\n MtxGridColumnMenuComponent,\r\n MtxGridExpansionToggleDirective,\r\n MtxGridCellSelectionDirective,\r\n MatColumnResizeModule,\r\n ],\r\n declarations: [\r\n MtxGridComponent,\r\n MtxGridCellComponent,\r\n MtxGridColumnMenuComponent,\r\n MtxGridExpansionToggleDirective,\r\n MtxGridCellSelectionDirective,\r\n ],\r\n providers: [MtxGridService],\r\n})\r\nexport class MtxGridModule {}\r\n"],"names":["Injectable","MatTableDataSource","EventEmitter","SelectionModel","TemplateRef","isObservable","Component","ViewEncapsulation","ChangeDetectionStrategy","trigger","state","style","transition","animate","ChangeDetectorRef","ViewChild","MatPaginator","MatSort","Input","Output","PhotoViewer","MtxDialog","moveItemInArray","MatMenuTrigger","Directive","HostBinding","HostListener","CdkFlexTableResizeStrategy","ColumnResize","_CoalescedStyleScheduler","Inject","_COALESCED_STYLE_SCHEDULER","CdkTable","DOCUMENT","ResizeStrategy","ColumnResizeNotifier","HeaderRowEventDispatcher","ColumnResizeNotifierSource","TABLE_LAYOUT_FIXED_RESIZE_STRATEGY_PROVIDER","ElementRef","NgZone","ResizeOverlayHandle","CdkColumnDef","Directionality","ResizeRef","Resizable","Injector","Overlay","ViewContainerRef","NgModule","OverlayModule","CommonModule","FormsModule","MatTableModule","MatSortModule","MatPaginatorModule","MatCheckboxModule","MatButtonModule","MatProgressBarModule","MatChipsModule","MatTooltipModule","MatIconModule","MatSelectModule","MatFormFieldModule","MatMenuModule","DragDropModule","MtxDialogModule","MtxUtilsModule"],"mappings":"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"}
|