@ng-matero/extensions 12.10.2 → 12.10.3
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/mtxCheckboxGroup.umd.js +12 -12
- package/bundles/mtxCheckboxGroup.umd.js.map +1 -1
- package/bundles/mtxGrid.umd.js +3 -3
- package/bundles/mtxGrid.umd.js.map +1 -1
- package/bundles/mtxSplit.umd.js +1 -1
- package/bundles/mtxSplit.umd.js.map +1 -1
- package/checkbox-group/checkbox-group.component.d.ts +6 -6
- package/checkbox-group/mtxCheckboxGroup.metadata.json +1 -1
- package/esm2015/checkbox-group/checkbox-group.component.js +13 -13
- package/esm2015/grid/cell.component.js +2 -2
- package/esm2015/grid/column-menu.component.js +2 -2
- package/esm2015/grid/grid.component.js +2 -2
- package/esm2015/split/split.component.js +2 -2
- package/fesm2015/mtxCheckboxGroup.js +10 -10
- package/fesm2015/mtxCheckboxGroup.js.map +1 -1
- package/fesm2015/mtxGrid.js +3 -3
- package/fesm2015/mtxGrid.js.map +1 -1
- package/fesm2015/mtxSplit.js +1 -1
- package/fesm2015/mtxSplit.js.map +1 -1
- package/grid/mtxGrid.metadata.json +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mtxGrid.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/extensions/grid/grid.service.ts","../../../projects/extensions/grid/grid.component.ts","../../../projects/extensions/grid/cell.component.ts","../../../projects/extensions/grid/column-menu.component.ts","../../../projects/extensions/grid/expansion-toggle.directive.ts","../../../projects/extensions/grid/cell-selection.directive.ts","../../../projects/extensions/grid/column-resize/resize-strategy.ts","../../../projects/extensions/grid/column-resize/column-resize-directives/common.ts","../../../projects/extensions/grid/column-resize/column-resize-directives/column-resize.ts","../../../projects/extensions/grid/column-resize/column-resize-directives/column-resize-flex.ts","../../../projects/extensions/grid/column-resize/overlay-handle.ts","../../../projects/extensions/grid/column-resize/resizable-directives/common.ts","../../../projects/extensions/grid/column-resize/resizable-directives/resizable.ts","../../../projects/extensions/grid/column-resize/column-resize-module.ts","../../../projects/extensions/grid/grid.module.ts","../../../projects/extensions/grid/mtxGrid.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, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || from);\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, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { MtxGridColumn } from './grid.interface';\n\n@Injectable()\nexport class MtxGridService {\n constructor() {}\n\n /**\n * Get cell value from column key e.g. `a.b.c`\n * @param rowData Row data\n * @param colDef Column definition\n */\n getCellValue(rowData: any, colDef: MtxGridColumn): string {\n const keyArr = colDef.field ? colDef.field.split('.') : [];\n\n let tmp: any = '';\n\n keyArr.forEach((key: string, i: number) => {\n if (i === 0) {\n tmp = rowData[key];\n } else {\n tmp = tmp && tmp[key];\n }\n });\n return tmp;\n }\n\n /**\n * Get all data of a col\n * @param data All data\n * @param colDef Column definition\n */\n getColData(data: any[], colDef: MtxGridColumn): any[] {\n return data.map((rowData: any) => this.getCellValue(rowData, colDef));\n }\n\n /**\n * Remove white spaces in a string and convert string to array\n * @param str string\n */\n str2arr(str: string): string[] {\n return str.replace(/[\\r\\n\\s]/g, '').split(',');\n }\n}\n","import {\n Component,\n Input,\n Output,\n EventEmitter,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n ViewChild,\n OnChanges,\n TemplateRef,\n TrackByFunction,\n OnDestroy,\n AfterViewInit,\n ChangeDetectorRef,\n ElementRef,\n SimpleChanges,\n QueryList,\n ContentChildren,\n} from '@angular/core';\nimport { trigger, state, style, transition, animate } from '@angular/animations';\nimport { SelectionModel } from '@angular/cdk/collections';\nimport {\n MatFooterRow,\n MatFooterRowDef,\n MatHeaderRowDef,\n MatRowDef,\n MatTable,\n MatTableDataSource,\n} from '@angular/material/table';\nimport { MatPaginator, PageEvent } from '@angular/material/paginator';\nimport { Sort, MatSort, SortDirection } from '@angular/material/sort';\nimport { ThemePalette } from '@angular/material/core';\n\nimport {\n MtxGridColumn,\n MtxGridCellTemplate,\n MtxGridRowSelectionFormatter,\n MtxGridRowClassFormatter,\n MtxGridColumnMenu,\n MtxGridButtonType,\n MtxGridColumnPinOption,\n} from './grid.interface';\nimport { MtxGridCellSelectionDirective } from './cell-selection.directive';\nimport { MtxGridExpansionToggleDirective } from './expansion-toggle.directive';\nimport { MtxGridService } from './grid.service';\n\n@Component({\n selector: 'mtx-grid',\n exportAs: 'mtxGrid',\n templateUrl: './grid.component.html',\n styleUrls: ['./grid.component.scss'],\n host: {\n class: 'mtx-grid',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n trigger('expansion', [\n state('collapsed, void', style({ height: '0', minHeight: '0', visibility: 'hidden' })),\n state('expanded', style({ height: '*', visibility: 'visible' })),\n transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),\n transition('expanded <=> void', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),\n ]),\n ],\n})\nexport class MtxGridComponent implements OnChanges, AfterViewInit, OnDestroy {\n @ViewChild(MatTable) table!: MatTable<any>;\n @ViewChild(MatPaginator) paginator!: MatPaginator;\n @ViewChild(MatSort) sort!: MatSort;\n @ContentChildren(MatRowDef) rowDefs!: QueryList<MatRowDef<any>>;\n @ContentChildren(MatHeaderRowDef) headerRowDefs!: QueryList<MatHeaderRowDef>;\n @ContentChildren(MatFooterRow) footerRowDefs!: QueryList<MatFooterRowDef>;\n @ViewChild('columnMenu') columnMenu!: MtxGridColumnMenu;\n @ViewChild('tableContainer') tableContainer!: ElementRef<HTMLDivElement>;\n\n dataSource = new MatTableDataSource();\n\n @Input() displayedColumns: string[] = [];\n @Input() columns: MtxGridColumn[] = [];\n @Input() data: any[] = [];\n @Input() length = 0;\n @Input() loading = false;\n\n @Input() trackBy!: TrackByFunction<any>;\n\n @Input() columnResizable = false;\n\n /** Placeholder for the empty value (`null`, `''`, `[]`) */\n @Input() emptyValuePlaceholder: string = '--';\n\n // ===== Page =====\n\n @Input() pageOnFront = true;\n @Input() showPaginator = true;\n @Input() pageDisabled = false;\n @Input() showFirstLastButtons = true;\n @Input() pageIndex = 0;\n @Input() pageSize = 10;\n @Input() pageSizeOptions = [10, 50, 100];\n @Input() hidePageSize = false;\n @Output() page = new EventEmitter<PageEvent>();\n\n @Input() paginationTemplate!: TemplateRef<any>;\n\n // ===== Sort =====\n\n @Input() sortOnFront = true;\n @Input() sortActive!: string;\n @Input() sortDirection!: SortDirection;\n @Input() sortDisableClear: boolean = false;\n @Input() sortDisabled: boolean = false;\n @Input() sortStart: 'asc' | 'desc' = 'asc';\n @Output() sortChange = new EventEmitter<Sort>();\n\n // ===== Row =====\n\n @Input() rowHover = false;\n @Input() rowStriped = false;\n @Output() rowClick = new EventEmitter<any>();\n\n // ===== Expandable Row =====\n\n expansionRowStates: any[] = [];\n\n @Input() expandable = false;\n @Input() expansionTemplate!: TemplateRef<any>;\n @Output() expansionChange = new EventEmitter<any>();\n\n // ===== Row Selection =====\n\n /** Whether support multiple row/cell selection. */\n @Input() multiSelectable = true;\n\n @Input() multiSelectionWithClick = false;\n\n rowSelection: SelectionModel<any> = new SelectionModel<any>(true, []);\n\n @Input() rowSelected: any[] = [];\n @Input() rowSelectable = false;\n @Input() hideRowSelectionCheckbox = false;\n @Input() rowSelectionFormatter: MtxGridRowSelectionFormatter = {};\n @Input() rowClassFormatter!: MtxGridRowClassFormatter;\n @Output() rowSelectionChange = new EventEmitter<any[]>();\n\n // ===== Cell Selection =====\n\n cellSelection: any[] = [];\n\n @Input() cellSelectable = true;\n @Output() cellSelectionChange = new EventEmitter<any[]>();\n\n private _selectedCell: MtxGridCellSelectionDirective | undefined;\n\n // ===== Toolbar =====\n\n @Input() showToolbar = false;\n @Input() toolbarTitle = '';\n @Input() toolbarTemplate!: TemplateRef<any>;\n\n // ===== Column Menu =====\n\n @Input() showColumnMenuButton = true;\n @Input() columnMenuButtonText = '';\n @Input() columnMenuButtonType: MtxGridButtonType = 'stroked';\n @Input() columnMenuButtonColor: ThemePalette;\n @Input() columnMenuButtonClass = '';\n @Input() columnMenuButtonIcon = '';\n\n @Input() columnHideable = true;\n @Input() columnHideableChecked: 'show' | 'hide' = 'show';\n @Input() columnSortable = true;\n @Input() columnPinnable = true;\n @Output() columnChange = new EventEmitter<MtxGridColumn[]>();\n\n @Input() showColumnMenuHeader = false;\n @Input() columnMenuHeaderText = 'Columns Header';\n @Input() columnMenuHeaderTemplate!: TemplateRef<any>;\n @Input() showColumnMenuFooter = false;\n @Input() columnMenuFooterText = 'Columns Footer';\n @Input() columnMenuFooterTemplate!: TemplateRef<any>;\n\n @Input() columnPinOptions: MtxGridColumnPinOption[] = [];\n\n // ===== No Result =====\n\n @Input() noResultText = 'No records found';\n @Input() noResultTemplate!: TemplateRef<any>;\n\n get _hasNoResult() {\n return (!this.data || this.data.length === 0) && !this.loading;\n }\n\n // ===== Cell Templates =====\n\n @Input() headerTemplate!: TemplateRef<any> | MtxGridCellTemplate;\n @Input() headerExtraTemplate!: TemplateRef<any> | MtxGridCellTemplate;\n @Input() cellTemplate!: TemplateRef<any> | MtxGridCellTemplate;\n\n // ===== Row Templates =====\n\n @Input() useContentRowTemplate = false;\n // TODO: It can't use together with `useContentRowTemplate`\n @Input() useContentHeaderRowTemplate = false;\n // TODO: It's not working\n @Input() useContentFooterRowTemplate = false;\n\n // ===== Summary =====\n\n @Input() showSummary = false;\n @Input() summaryTemplate!: TemplateRef<any> | MtxGridCellTemplate;\n\n // TODO: Summary display conditions\n get _whetherShowSummary() {\n return this.showSummary;\n }\n\n // ===== Side Bar =====\n\n @Input() showSidebar = false;\n @Input() sidebarTemplate!: TemplateRef<any>;\n\n // ===== Status Bar =====\n\n @Input() showStatusbar = false;\n @Input() statusbarTemplate!: TemplateRef<any>;\n\n constructor(\n private _dataGridSrv: MtxGridService,\n private _changeDetectorRef: ChangeDetectorRef\n ) {}\n\n detectChanges() {\n this._changeDetectorRef.detectChanges();\n }\n\n _isTemplateRef(obj: any) {\n return obj instanceof TemplateRef;\n }\n\n _getColData(data: any[], colDef: MtxGridColumn) {\n return this._dataGridSrv.getColData(data, colDef);\n }\n\n _getRowClassList(rowData: any, index: number) {\n const classList: any = {\n 'selected': this.rowSelection.isSelected(rowData),\n 'mat-row-odd': index % 2,\n };\n if (this.rowClassFormatter) {\n for (const key of Object.keys(this.rowClassFormatter)) {\n classList[key] = this.rowClassFormatter[key](rowData, index);\n }\n }\n return classList;\n }\n\n // Waiting for async data\n ngOnChanges(changes: SimpleChanges) {\n this._countPinnedPosition();\n\n this.displayedColumns = this.columns.filter(item => !item.hide).map(item => item.field);\n\n if (this.showColumnMenuButton) {\n this.columns.forEach(item => {\n if (this.columnHideableChecked === 'show') {\n item.show = !item.hide;\n } else {\n item.hide = !!item.hide;\n }\n });\n }\n\n if (this.rowSelectable && !this.hideRowSelectionCheckbox) {\n this.displayedColumns.unshift('MtxGridCheckboxColumnDef');\n }\n\n // We should copy each item of data for expansion data\n if (this.expandable) {\n this.expansionRowStates = []; // reset\n\n this.data?.forEach(_ => {\n this.expansionRowStates.push({ expanded: false });\n });\n }\n\n if (this.rowSelectable) {\n this.rowSelection = new SelectionModel<any>(this.multiSelectable, this.rowSelected);\n }\n\n this.dataSource = new MatTableDataSource(this.data);\n\n this.dataSource.paginator = this.pageOnFront ? this.paginator : null;\n this.dataSource.sort = this.sortOnFront ? this.sort : null;\n\n // Only scroll top with data change\n if (changes.data) {\n this.scrollTop(0);\n }\n }\n\n ngAfterViewInit() {\n if (this.pageOnFront) {\n this.dataSource.paginator = this.paginator;\n }\n\n if (this.sortOnFront) {\n this.dataSource.sort = this.sort;\n }\n\n if (this.rowDefs?.length > 0 && this.useContentRowTemplate) {\n this.rowDefs.forEach(rowDef => this.table.addRowDef(rowDef));\n }\n if (this.headerRowDefs?.length > 0 && this.useContentHeaderRowTemplate) {\n this.headerRowDefs.forEach(headerRowDef => this.table.addHeaderRowDef(headerRowDef));\n }\n if (this.footerRowDefs?.length > 0 && this.useContentFooterRowTemplate) {\n this.footerRowDefs.forEach(footerRowDef => this.table.addFooterRowDef(footerRowDef));\n }\n }\n\n ngOnDestroy() {}\n\n _countPinnedPosition() {\n const count = (acc: number, cur: MtxGridColumn) => acc + parseFloat(cur.width || '80px');\n\n const pinnedLeftCols = this.columns.filter(col => col.pinned && col.pinned === 'left');\n pinnedLeftCols.forEach((item, idx) => {\n item.left = pinnedLeftCols.slice(0, idx).reduce(count, 0) + 'px';\n });\n\n const pinnedRightCols = this.columns\n .filter(col => col.pinned && col.pinned === 'right')\n .reverse();\n pinnedRightCols.forEach((item, idx) => {\n item.right = pinnedRightCols.slice(0, idx).reduce(count, 0) + 'px';\n });\n }\n\n _getIndex(index: number, dataIndex: number) {\n return typeof index === 'undefined' ? dataIndex : index;\n }\n\n _onSortChange(sort: Sort) {\n this.sortChange.emit(sort);\n }\n\n /** Expansion change event */\n _onExpansionChange(\n expansionRef: MtxGridExpansionToggleDirective,\n rowData: Record<string, any>,\n column: MtxGridColumn,\n index: number\n ) {\n this.expansionChange.emit({ expanded: expansionRef.expanded, data: rowData, index, column });\n }\n\n /** Cell select event */\n _selectCell(\n cellRef: MtxGridCellSelectionDirective,\n rowData: Record<string, any>,\n colDef: MtxGridColumn\n ): void {\n // If not the same cell\n if (this._selectedCell !== cellRef) {\n const colValue = this._dataGridSrv.getCellValue(rowData, colDef);\n this.cellSelection = []; // reset\n this.cellSelection.push({ cellData: colValue, rowData, colDef });\n\n this.cellSelectionChange.emit(this.cellSelection);\n\n if (this._selectedCell) {\n this._selectedCell.deselect(); // the selectedCell will be undefined\n }\n }\n\n this._selectedCell = cellRef.selected ? cellRef : undefined;\n }\n\n /** Row select event */\n _selectRow(event: MouseEvent, rowData: Record<string, any>, index: number) {\n if (\n this.rowSelectable &&\n !this.rowSelectionFormatter.disabled?.(rowData, index) &&\n !this.rowSelectionFormatter.hideCheckbox?.(rowData, index)\n ) {\n // metaKey -> command key\n if (!this.multiSelectionWithClick && !event.ctrlKey && !event.metaKey) {\n this.rowSelection.clear();\n }\n\n this._toggleNormalCheckbox(rowData);\n }\n\n this.rowClick.emit({ rowData, index });\n }\n\n /** Whether the number of selected elements matches the total number of rows. */\n _isAllSelected() {\n const numSelected = this.rowSelection.selected.length;\n const numRows = this.dataSource.data.filter(\n (row, index) => !this.rowSelectionFormatter.disabled?.(row, index)\n ).length;\n return numSelected === numRows;\n }\n\n /** Select all rows if they are not all selected; otherwise clear selection. */\n _toggleMasterCheckbox() {\n this._isAllSelected()\n ? this.rowSelection.clear()\n : this.dataSource.data.forEach((row, index) => {\n if (!this.rowSelectionFormatter.disabled?.(row, index)) {\n this.rowSelection.select(row);\n }\n });\n this.rowSelectionChange.emit(this.rowSelection.selected);\n }\n\n /** Select normal row */\n _toggleNormalCheckbox(row: Record<string, any>) {\n this.rowSelection.toggle(row);\n this.rowSelectionChange.emit(this.rowSelection.selected);\n }\n\n /** Column change event */\n _onColumnChange(columns: MtxGridColumn[]) {\n this.columnChange.emit(columns);\n\n this.displayedColumns = Object.assign([], this.getDisplayedColumnFields(columns));\n\n if (this.rowSelectable && !this.hideRowSelectionCheckbox) {\n this.displayedColumns.unshift('MtxGridCheckboxColumnDef');\n }\n }\n\n getDisplayedColumnFields(columns: MtxGridColumn[]): string[] {\n const fields = columns\n .filter(item => (this.columnHideableChecked === 'show' ? item.show : !item.hide))\n .map(item => item.field);\n return fields;\n }\n\n /** Customize expansion event */\n toggleExpansion(index: number) {\n if (!this.expandable) {\n throw new Error('The `expandable` should be set true.');\n }\n this.expansionRowStates[index].expanded = !this.expansionRowStates[index].expanded;\n return this.expansionRowStates[index].expanded;\n }\n\n /** Scroll to top when turn to the next page. */\n _onPage(e: PageEvent) {\n if (this.pageOnFront) {\n this.scrollTop(0);\n }\n this.page.emit(e);\n }\n\n scrollTop(value?: number): number | void {\n if (value == null) {\n return this.tableContainer?.nativeElement.scrollTop;\n }\n if (this.tableContainer && !this.loading) {\n this.tableContainer.nativeElement.scrollTop = value;\n }\n }\n\n scrollLeft(value?: number): number | void {\n if (value == null) {\n return this.tableContainer?.nativeElement.scrollLeft;\n }\n if (this.tableContainer && !this.loading) {\n this.tableContainer.nativeElement.scrollLeft = value;\n }\n }\n}\n","import { Component, Input, ViewEncapsulation } from '@angular/core';\nimport { MtxDialog } from '@ng-matero/extensions/dialog';\n\nimport { MtxGridColumn, MtxGridColumnButton } from './grid.interface';\nimport { MtxGridService } from './grid.service';\nimport PhotoViewer from 'photoviewer';\n\n@Component({\n selector: 'mtx-grid-cell',\n exportAs: 'mtxGridCell',\n templateUrl: './cell.component.html',\n styleUrls: ['./cell.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class MtxGridCellComponent {\n /** Row data */\n @Input() rowData: any = {};\n\n /** Column definition */\n @Input() colDef!: MtxGridColumn;\n\n /** Table data */\n @Input() data: any[] = [];\n\n /** Whether show summary */\n @Input() summary = false;\n\n /** Placeholder for the empty value (`null`, `''`, `[]`) */\n @Input() placeholder: string = '--';\n\n get _colValue() {\n return this._dataGridSrv.getCellValue(this.rowData, this.colDef);\n }\n\n _isEmptyValue(value: any) {\n return value == null || value.toString() === '';\n }\n\n _isContainHTML(value: string) {\n return /<\\/?[a-z][\\s\\S]*>/i.test(value);\n }\n\n _getText(value: any) {\n return value === undefined ? '' : this._isEmptyValue(value) ? this.placeholder : value;\n }\n\n _getTooltip(value: any) {\n return this._isEmptyValue(value) ? '' : value;\n }\n\n _getFormatterTooltip(value: any) {\n return this._isContainHTML(value) || this._isEmptyValue(value) ? '' : value;\n }\n\n _formatSummary(data: any[], colDef: MtxGridColumn) {\n if (typeof colDef.summary === 'string') {\n return colDef.summary;\n } else if (typeof colDef.summary === 'function') {\n return (colDef.summary as (data: any[], colDef?: MtxGridColumn) => void)(\n this._dataGridSrv.getColData(data, colDef),\n colDef\n );\n }\n }\n\n constructor(private _dialog: MtxDialog, private _dataGridSrv: MtxGridService) {}\n\n _handleActionClick(event: MouseEvent, btn: MtxGridColumnButton, rowData: any) {\n event.preventDefault();\n event.stopPropagation();\n\n if (btn.pop) {\n this._dialog.open({\n title: btn.popTitle,\n description: btn.popDescription,\n buttons: [\n {\n color: btn.popOkColor || 'primary',\n text: btn.popOkText || 'OK',\n onClick: () => btn.click?.(rowData) || {},\n },\n {\n color: btn.popCloseColor,\n text: btn.popCloseText || 'CLOSE',\n onClick: () => {},\n },\n ],\n });\n } else {\n btn.click?.(rowData);\n }\n }\n\n /** Preview enlarged image */\n _handleImagePreview(urlStr: string) {\n const imgs: PhotoViewer.Img[] = [];\n\n this._dataGridSrv.str2arr(urlStr).forEach((url, index) => {\n imgs.push({ title: index + 1 + '', src: url });\n });\n\n const footerToolbar =\n imgs.length > 1\n ? ['zoomIn', 'zoomOut', 'prev', 'next', 'rotateRight', 'rotateLeft', 'actualSize']\n : ['zoomIn', 'zoomOut', 'rotateRight', 'rotateLeft', 'actualSize'];\n\n const options: PhotoViewer.Options = {\n title: imgs.length > 1,\n footerToolbar,\n };\n\n const photoviewer = new PhotoViewer(imgs, options);\n }\n}\n","import {\n Component,\n Input,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n Output,\n EventEmitter,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\nimport { MatMenu, MatMenuTrigger } from '@angular/material/menu';\nimport { ThemePalette } from '@angular/material/core';\nimport {\n MtxGridButtonType,\n MtxGridColumn,\n MtxGridColumnPinOption,\n MtxGridColumnPinValue,\n} from './grid.interface';\n\n@Component({\n selector: 'mtx-grid-column-menu',\n exportAs: 'mtxGridColumnMenu',\n templateUrl: './column-menu.component.html',\n styleUrls: ['./column-menu.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MtxGridColumnMenuComponent {\n @ViewChild('menu', { static: true }) menuPanel!: MatMenu;\n @ViewChild(MatMenuTrigger) menuTrigger!: MatMenuTrigger;\n\n @Input() columns: MtxGridColumn[] = [];\n @Input() selectable = true;\n @Input() selectableChecked: 'show' | 'hide' = 'show';\n @Input() sortable = true;\n @Input() pinnable = true;\n\n @Input()\n get buttonText() {\n const defaultText = `Columns ${this.selectableChecked === 'show' ? 'Shown' : 'Hidden'}`;\n return this._buttonText ? this._buttonText : defaultText;\n }\n set buttonText(value: string) {\n this._buttonText = value;\n }\n private _buttonText = '';\n\n @Input() buttonType: MtxGridButtonType = 'stroked';\n @Input() buttonColor: ThemePalette;\n @Input() buttonClass = '';\n @Input() buttonIcon = '';\n\n @Input() showHeader = false;\n @Input() headerText = 'Columns Header';\n @Input() headerTemplate!: TemplateRef<any>;\n @Input() showFooter = false;\n @Input() footerText = 'Columns Footer';\n @Input() footerTemplate!: TemplateRef<any>;\n\n @Output() columnChange = new EventEmitter<MtxGridColumn[]>();\n\n @Input()\n get pinOptions() {\n return this._pinOptions;\n }\n set pinOptions(value: MtxGridColumnPinOption[]) {\n if (value.length > 0) {\n this._pinOptions = value;\n }\n }\n private _pinOptions: MtxGridColumnPinOption[] = [\n { label: 'Pin Left', value: 'left' },\n { label: 'Pin Right', value: 'right' },\n { label: 'No Pin', value: null },\n ];\n\n _handleDroped(e: CdkDragDrop<string[]>) {\n moveItemInArray(this.columns, e.previousIndex, e.currentIndex);\n this.columnChange.emit(this.columns);\n }\n\n _handleChecked(e: MatCheckboxChange) {\n this.columnChange.emit(this.columns);\n }\n\n _handlePinSelect(col: MtxGridColumn, val: MtxGridColumnPinValue) {\n if (col.pinned != val) {\n col.pinned = val;\n this.columnChange.emit(this.columns);\n }\n }\n}\n","import {\n Directive,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n Output,\n TemplateRef,\n} from '@angular/core';\n\n@Directive({\n selector: '[mtx-grid-expansion-toggle]',\n})\nexport class MtxGridExpansionToggleDirective {\n private _opened = false;\n private _row: any;\n private _tplRef!: TemplateRef<any>;\n\n @Input()\n get opened() {\n return this._opened;\n }\n set opened(newValue: boolean) {\n this._opened = newValue;\n this.openedChange.emit(newValue);\n }\n @Output() openedChange = new EventEmitter<boolean>();\n\n @HostBinding('class.expanded')\n get expanded(): boolean {\n return this._opened;\n }\n\n @Input()\n set expandableRow(value: any) {\n if (value !== this._row) {\n this._row = value;\n }\n }\n\n @Input('expansionRowTpl')\n set template(value: TemplateRef<any>) {\n if (value !== this._tplRef) {\n this._tplRef = value;\n }\n }\n\n @Output() toggleChange = new EventEmitter<MtxGridExpansionToggleDirective>();\n\n constructor() {}\n\n @HostListener('click', ['$event'])\n onClick(event: MouseEvent): void {\n event.preventDefault();\n event.stopPropagation();\n this.toggle();\n }\n\n toggle(): void {\n this.opened = !this.opened;\n this.toggleChange.emit(this);\n }\n}\n","import { Directive, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';\n\nimport { MtxGridComponent } from './grid.component';\n\n@Directive({\n selector: '[mtx-grid-selectable-cell]',\n})\nexport class MtxGridCellSelectionDirective {\n private _selected = false;\n private _rowData: any;\n\n shiftKeyPressed = false;\n ctrlKeyPressed = false;\n\n @HostBinding('class.selected')\n get selected(): boolean {\n return this._selected;\n }\n\n @Input()\n set matSelectableRowData(value: any) {\n if (value !== this._rowData) {\n this._rowData = value;\n }\n }\n\n @Output() cellSelectionChange = new EventEmitter<MtxGridCellSelectionDirective>();\n\n constructor(private _dataGrid: MtxGridComponent) {}\n\n @HostListener('click', ['$event'])\n onClick(event: MouseEvent): void {\n this.ctrlKeyPressed = event.ctrlKey;\n this.shiftKeyPressed = event.shiftKey;\n\n if (this._dataGrid.cellSelectable) {\n this.select();\n }\n }\n\n select(): void {\n this._selected = true;\n this.cellSelectionChange.emit(this);\n }\n\n deselect(): void {\n this._selected = false;\n this.cellSelectionChange.emit(this);\n }\n\n toggle(): void {\n this._selected = !this._selected;\n this.cellSelectionChange.emit(this);\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 { 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 const table = this.elementRef.nativeElement;\n const tableParent = table!.parentNode as HTMLElement;\n const isTableContainer = tableParent!.classList.contains('mat-table-container');\n return isTableContainer ? tableParent!.offsetHeight : table!.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';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { DragDropModule } from '@angular/cdk/drag-drop';\n\nimport { MtxPipesModule } from '@ng-matero/extensions/pipes';\nimport { MtxDialogModule } from '@ng-matero/extensions/dialog';\nimport { MtxGridComponent } from './grid.component';\nimport { MtxGridCellComponent } from './cell.component';\nimport { MtxGridColumnMenuComponent } from './column-menu.component';\nimport { MtxGridExpansionToggleDirective } from './expansion-toggle.directive';\nimport { MtxGridCellSelectionDirective } from './cell-selection.directive';\nimport { MtxGridService } from './grid.service';\nimport { MatColumnResizeModule } from './column-resize/column-resize-module';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n MatTableModule,\n MatSortModule,\n MatPaginatorModule,\n MatCheckboxModule,\n MatButtonModule,\n MatProgressBarModule,\n MatChipsModule,\n MatTooltipModule,\n MatIconModule,\n MatSelectModule,\n MatFormFieldModule,\n MatMenuModule,\n DragDropModule,\n MtxDialogModule,\n MtxPipesModule,\n MatColumnResizeModule,\n ],\n exports: [\n MtxGridComponent,\n MtxGridCellComponent,\n MtxGridColumnMenuComponent,\n MtxGridExpansionToggleDirective,\n MtxGridCellSelectionDirective,\n MatColumnResizeModule,\n ],\n declarations: [\n MtxGridComponent,\n MtxGridCellComponent,\n MtxGridColumnMenuComponent,\n MtxGridExpansionToggleDirective,\n MtxGridCellSelectionDirective,\n ],\n providers: [MtxGridService],\n})\nexport class MtxGridModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Injectable","MatTableDataSource","EventEmitter","SelectionModel","TemplateRef","Component","ViewEncapsulation","ChangeDetectionStrategy","trigger","state","style","transition","animate","ChangeDetectorRef","ViewChild","MatTable","MatPaginator","MatSort","ContentChildren","MatRowDef","MatHeaderRowDef","MatFooterRow","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","MtxPipesModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mtxGrid.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/extensions/grid/grid.service.ts","../../../projects/extensions/grid/grid.component.ts","../../../projects/extensions/grid/cell.component.ts","../../../projects/extensions/grid/column-menu.component.ts","../../../projects/extensions/grid/expansion-toggle.directive.ts","../../../projects/extensions/grid/cell-selection.directive.ts","../../../projects/extensions/grid/column-resize/resize-strategy.ts","../../../projects/extensions/grid/column-resize/column-resize-directives/common.ts","../../../projects/extensions/grid/column-resize/column-resize-directives/column-resize.ts","../../../projects/extensions/grid/column-resize/column-resize-directives/column-resize-flex.ts","../../../projects/extensions/grid/column-resize/overlay-handle.ts","../../../projects/extensions/grid/column-resize/resizable-directives/common.ts","../../../projects/extensions/grid/column-resize/resizable-directives/resizable.ts","../../../projects/extensions/grid/column-resize/column-resize-module.ts","../../../projects/extensions/grid/grid.module.ts","../../../projects/extensions/grid/mtxGrid.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, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || from);\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, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { MtxGridColumn } from './grid.interface';\n\n@Injectable()\nexport class MtxGridService {\n constructor() {}\n\n /**\n * Get cell value from column key e.g. `a.b.c`\n * @param rowData Row data\n * @param colDef Column definition\n */\n getCellValue(rowData: any, colDef: MtxGridColumn): string {\n const keyArr = colDef.field ? colDef.field.split('.') : [];\n\n let tmp: any = '';\n\n keyArr.forEach((key: string, i: number) => {\n if (i === 0) {\n tmp = rowData[key];\n } else {\n tmp = tmp && tmp[key];\n }\n });\n return tmp;\n }\n\n /**\n * Get all data of a col\n * @param data All data\n * @param colDef Column definition\n */\n getColData(data: any[], colDef: MtxGridColumn): any[] {\n return data.map((rowData: any) => this.getCellValue(rowData, colDef));\n }\n\n /**\n * Remove white spaces in a string and convert string to array\n * @param str string\n */\n str2arr(str: string): string[] {\n return str.replace(/[\\r\\n\\s]/g, '').split(',');\n }\n}\n","import {\n Component,\n Input,\n Output,\n EventEmitter,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n ViewChild,\n OnChanges,\n TemplateRef,\n TrackByFunction,\n OnDestroy,\n AfterViewInit,\n ChangeDetectorRef,\n ElementRef,\n SimpleChanges,\n QueryList,\n ContentChildren,\n} from '@angular/core';\nimport { trigger, state, style, transition, animate } from '@angular/animations';\nimport { SelectionModel } from '@angular/cdk/collections';\nimport {\n MatFooterRow,\n MatFooterRowDef,\n MatHeaderRowDef,\n MatRowDef,\n MatTable,\n MatTableDataSource,\n} from '@angular/material/table';\nimport { MatPaginator, PageEvent } from '@angular/material/paginator';\nimport { Sort, MatSort, SortDirection } from '@angular/material/sort';\nimport { ThemePalette } from '@angular/material/core';\n\nimport {\n MtxGridColumn,\n MtxGridCellTemplate,\n MtxGridRowSelectionFormatter,\n MtxGridRowClassFormatter,\n MtxGridColumnMenu,\n MtxGridButtonType,\n MtxGridColumnPinOption,\n} from './grid.interface';\nimport { MtxGridCellSelectionDirective } from './cell-selection.directive';\nimport { MtxGridExpansionToggleDirective } from './expansion-toggle.directive';\nimport { MtxGridService } from './grid.service';\n\n@Component({\n selector: 'mtx-grid',\n exportAs: 'mtxGrid',\n templateUrl: './grid.component.html',\n styleUrls: ['./grid.component.scss'],\n host: {\n class: 'mtx-grid',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n trigger('expansion', [\n state('collapsed, void', style({ height: '0', minHeight: '0', visibility: 'hidden' })),\n state('expanded', style({ height: '*', visibility: 'visible' })),\n transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),\n transition('expanded <=> void', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),\n ]),\n ],\n})\nexport class MtxGridComponent implements OnChanges, AfterViewInit, OnDestroy {\n @ViewChild(MatTable) table!: MatTable<any>;\n @ViewChild(MatPaginator) paginator!: MatPaginator;\n @ViewChild(MatSort) sort!: MatSort;\n @ContentChildren(MatRowDef) rowDefs!: QueryList<MatRowDef<any>>;\n @ContentChildren(MatHeaderRowDef) headerRowDefs!: QueryList<MatHeaderRowDef>;\n @ContentChildren(MatFooterRow) footerRowDefs!: QueryList<MatFooterRowDef>;\n @ViewChild('columnMenu') columnMenu!: MtxGridColumnMenu;\n @ViewChild('tableContainer') tableContainer!: ElementRef<HTMLDivElement>;\n\n dataSource = new MatTableDataSource();\n\n @Input() displayedColumns: string[] = [];\n @Input() columns: MtxGridColumn[] = [];\n @Input() data: any[] = [];\n @Input() length = 0;\n @Input() loading = false;\n\n @Input() trackBy!: TrackByFunction<any>;\n\n @Input() columnResizable = false;\n\n /** Placeholder for the empty value (`null`, `''`, `[]`) */\n @Input() emptyValuePlaceholder: string = '--';\n\n // ===== Page =====\n\n @Input() pageOnFront = true;\n @Input() showPaginator = true;\n @Input() pageDisabled = false;\n @Input() showFirstLastButtons = true;\n @Input() pageIndex = 0;\n @Input() pageSize = 10;\n @Input() pageSizeOptions = [10, 50, 100];\n @Input() hidePageSize = false;\n @Output() page = new EventEmitter<PageEvent>();\n\n @Input() paginationTemplate!: TemplateRef<any>;\n\n // ===== Sort =====\n\n @Input() sortOnFront = true;\n @Input() sortActive!: string;\n @Input() sortDirection!: SortDirection;\n @Input() sortDisableClear: boolean = false;\n @Input() sortDisabled: boolean = false;\n @Input() sortStart: 'asc' | 'desc' = 'asc';\n @Output() sortChange = new EventEmitter<Sort>();\n\n // ===== Row =====\n\n @Input() rowHover = false;\n @Input() rowStriped = false;\n @Output() rowClick = new EventEmitter<any>();\n\n // ===== Expandable Row =====\n\n expansionRowStates: any[] = [];\n\n @Input() expandable = false;\n @Input() expansionTemplate!: TemplateRef<any>;\n @Output() expansionChange = new EventEmitter<any>();\n\n // ===== Row Selection =====\n\n /** Whether support multiple row/cell selection. */\n @Input() multiSelectable = true;\n\n @Input() multiSelectionWithClick = false;\n\n rowSelection: SelectionModel<any> = new SelectionModel<any>(true, []);\n\n @Input() rowSelected: any[] = [];\n @Input() rowSelectable = false;\n @Input() hideRowSelectionCheckbox = false;\n @Input() rowSelectionFormatter: MtxGridRowSelectionFormatter = {};\n @Input() rowClassFormatter!: MtxGridRowClassFormatter;\n @Output() rowSelectionChange = new EventEmitter<any[]>();\n\n // ===== Cell Selection =====\n\n cellSelection: any[] = [];\n\n @Input() cellSelectable = true;\n @Output() cellSelectionChange = new EventEmitter<any[]>();\n\n private _selectedCell: MtxGridCellSelectionDirective | undefined;\n\n // ===== Toolbar =====\n\n @Input() showToolbar = false;\n @Input() toolbarTitle = '';\n @Input() toolbarTemplate!: TemplateRef<any>;\n\n // ===== Column Menu =====\n\n @Input() showColumnMenuButton = true;\n @Input() columnMenuButtonText = '';\n @Input() columnMenuButtonType: MtxGridButtonType = 'stroked';\n @Input() columnMenuButtonColor: ThemePalette;\n @Input() columnMenuButtonClass = '';\n @Input() columnMenuButtonIcon = '';\n\n @Input() columnHideable = true;\n @Input() columnHideableChecked: 'show' | 'hide' = 'show';\n @Input() columnSortable = true;\n @Input() columnPinnable = true;\n @Output() columnChange = new EventEmitter<MtxGridColumn[]>();\n\n @Input() showColumnMenuHeader = false;\n @Input() columnMenuHeaderText = 'Columns Header';\n @Input() columnMenuHeaderTemplate!: TemplateRef<any>;\n @Input() showColumnMenuFooter = false;\n @Input() columnMenuFooterText = 'Columns Footer';\n @Input() columnMenuFooterTemplate!: TemplateRef<any>;\n\n @Input() columnPinOptions: MtxGridColumnPinOption[] = [];\n\n // ===== No Result =====\n\n @Input() noResultText = 'No records found';\n @Input() noResultTemplate!: TemplateRef<any>;\n\n get _hasNoResult() {\n return (!this.data || this.data.length === 0) && !this.loading;\n }\n\n // ===== Cell Templates =====\n\n @Input() headerTemplate!: TemplateRef<any> | MtxGridCellTemplate;\n @Input() headerExtraTemplate!: TemplateRef<any> | MtxGridCellTemplate;\n @Input() cellTemplate!: TemplateRef<any> | MtxGridCellTemplate;\n\n // ===== Row Templates =====\n\n @Input() useContentRowTemplate = false;\n // TODO: It can't use together with `useContentRowTemplate`\n @Input() useContentHeaderRowTemplate = false;\n // TODO: It's not working\n @Input() useContentFooterRowTemplate = false;\n\n // ===== Summary =====\n\n @Input() showSummary = false;\n @Input() summaryTemplate!: TemplateRef<any> | MtxGridCellTemplate;\n\n // TODO: Summary display conditions\n get _whetherShowSummary() {\n return this.showSummary;\n }\n\n // ===== Side Bar =====\n\n @Input() showSidebar = false;\n @Input() sidebarTemplate!: TemplateRef<any>;\n\n // ===== Status Bar =====\n\n @Input() showStatusbar = false;\n @Input() statusbarTemplate!: TemplateRef<any>;\n\n constructor(\n private _dataGridSrv: MtxGridService,\n private _changeDetectorRef: ChangeDetectorRef\n ) {}\n\n detectChanges() {\n this._changeDetectorRef.detectChanges();\n }\n\n _isTemplateRef(obj: any) {\n return obj instanceof TemplateRef;\n }\n\n _getColData(data: any[], colDef: MtxGridColumn) {\n return this._dataGridSrv.getColData(data, colDef);\n }\n\n _getRowClassList(rowData: any, index: number) {\n const classList: any = {\n 'selected': this.rowSelection.isSelected(rowData),\n 'mat-row-odd': index % 2,\n };\n if (this.rowClassFormatter) {\n for (const key of Object.keys(this.rowClassFormatter)) {\n classList[key] = this.rowClassFormatter[key](rowData, index);\n }\n }\n return classList;\n }\n\n // Waiting for async data\n ngOnChanges(changes: SimpleChanges) {\n this._countPinnedPosition();\n\n this.displayedColumns = this.columns.filter(item => !item.hide).map(item => item.field);\n\n if (this.showColumnMenuButton) {\n this.columns.forEach(item => {\n if (this.columnHideableChecked === 'show') {\n item.show = !item.hide;\n } else {\n item.hide = !!item.hide;\n }\n });\n }\n\n if (this.rowSelectable && !this.hideRowSelectionCheckbox) {\n this.displayedColumns.unshift('MtxGridCheckboxColumnDef');\n }\n\n // We should copy each item of data for expansion data\n if (this.expandable) {\n this.expansionRowStates = []; // reset\n\n this.data?.forEach(_ => {\n this.expansionRowStates.push({ expanded: false });\n });\n }\n\n if (this.rowSelectable) {\n this.rowSelection = new SelectionModel<any>(this.multiSelectable, this.rowSelected);\n }\n\n this.dataSource = new MatTableDataSource(this.data);\n\n this.dataSource.paginator = this.pageOnFront ? this.paginator : null;\n this.dataSource.sort = this.sortOnFront ? this.sort : null;\n\n // Only scroll top with data change\n if (changes.data) {\n this.scrollTop(0);\n }\n }\n\n ngAfterViewInit() {\n if (this.pageOnFront) {\n this.dataSource.paginator = this.paginator;\n }\n\n if (this.sortOnFront) {\n this.dataSource.sort = this.sort;\n }\n\n if (this.rowDefs?.length > 0 && this.useContentRowTemplate) {\n this.rowDefs.forEach(rowDef => this.table.addRowDef(rowDef));\n }\n if (this.headerRowDefs?.length > 0 && this.useContentHeaderRowTemplate) {\n this.headerRowDefs.forEach(headerRowDef => this.table.addHeaderRowDef(headerRowDef));\n }\n if (this.footerRowDefs?.length > 0 && this.useContentFooterRowTemplate) {\n this.footerRowDefs.forEach(footerRowDef => this.table.addFooterRowDef(footerRowDef));\n }\n }\n\n ngOnDestroy() {}\n\n _countPinnedPosition() {\n const count = (acc: number, cur: MtxGridColumn) => acc + parseFloat(cur.width || '80px');\n\n const pinnedLeftCols = this.columns.filter(col => col.pinned && col.pinned === 'left');\n pinnedLeftCols.forEach((item, idx) => {\n item.left = pinnedLeftCols.slice(0, idx).reduce(count, 0) + 'px';\n });\n\n const pinnedRightCols = this.columns\n .filter(col => col.pinned && col.pinned === 'right')\n .reverse();\n pinnedRightCols.forEach((item, idx) => {\n item.right = pinnedRightCols.slice(0, idx).reduce(count, 0) + 'px';\n });\n }\n\n _getIndex(index: number, dataIndex: number) {\n return typeof index === 'undefined' ? dataIndex : index;\n }\n\n _onSortChange(sort: Sort) {\n this.sortChange.emit(sort);\n }\n\n /** Expansion change event */\n _onExpansionChange(\n expansionRef: MtxGridExpansionToggleDirective,\n rowData: Record<string, any>,\n column: MtxGridColumn,\n index: number\n ) {\n this.expansionChange.emit({ expanded: expansionRef.expanded, data: rowData, index, column });\n }\n\n /** Cell select event */\n _selectCell(\n cellRef: MtxGridCellSelectionDirective,\n rowData: Record<string, any>,\n colDef: MtxGridColumn\n ): void {\n // If not the same cell\n if (this._selectedCell !== cellRef) {\n const colValue = this._dataGridSrv.getCellValue(rowData, colDef);\n this.cellSelection = []; // reset\n this.cellSelection.push({ cellData: colValue, rowData, colDef });\n\n this.cellSelectionChange.emit(this.cellSelection);\n\n if (this._selectedCell) {\n this._selectedCell.deselect(); // the selectedCell will be undefined\n }\n }\n\n this._selectedCell = cellRef.selected ? cellRef : undefined;\n }\n\n /** Row select event */\n _selectRow(event: MouseEvent, rowData: Record<string, any>, index: number) {\n if (\n this.rowSelectable &&\n !this.rowSelectionFormatter.disabled?.(rowData, index) &&\n !this.rowSelectionFormatter.hideCheckbox?.(rowData, index)\n ) {\n // metaKey -> command key\n if (!this.multiSelectionWithClick && !event.ctrlKey && !event.metaKey) {\n this.rowSelection.clear();\n }\n\n this._toggleNormalCheckbox(rowData);\n }\n\n this.rowClick.emit({ rowData, index });\n }\n\n /** Whether the number of selected elements matches the total number of rows. */\n _isAllSelected() {\n const numSelected = this.rowSelection.selected.length;\n const numRows = this.dataSource.data.filter(\n (row, index) => !this.rowSelectionFormatter.disabled?.(row, index)\n ).length;\n return numSelected === numRows;\n }\n\n /** Select all rows if they are not all selected; otherwise clear selection. */\n _toggleMasterCheckbox() {\n this._isAllSelected()\n ? this.rowSelection.clear()\n : this.dataSource.data.forEach((row, index) => {\n if (!this.rowSelectionFormatter.disabled?.(row, index)) {\n this.rowSelection.select(row);\n }\n });\n this.rowSelectionChange.emit(this.rowSelection.selected);\n }\n\n /** Select normal row */\n _toggleNormalCheckbox(row: Record<string, any>) {\n this.rowSelection.toggle(row);\n this.rowSelectionChange.emit(this.rowSelection.selected);\n }\n\n /** Column change event */\n _onColumnChange(columns: MtxGridColumn[]) {\n this.columnChange.emit(columns);\n\n this.displayedColumns = Object.assign([], this.getDisplayedColumnFields(columns));\n\n if (this.rowSelectable && !this.hideRowSelectionCheckbox) {\n this.displayedColumns.unshift('MtxGridCheckboxColumnDef');\n }\n }\n\n getDisplayedColumnFields(columns: MtxGridColumn[]): string[] {\n const fields = columns\n .filter(item => (this.columnHideableChecked === 'show' ? item.show : !item.hide))\n .map(item => item.field);\n return fields;\n }\n\n /** Customize expansion event */\n toggleExpansion(index: number) {\n if (!this.expandable) {\n throw new Error('The `expandable` should be set true.');\n }\n this.expansionRowStates[index].expanded = !this.expansionRowStates[index].expanded;\n return this.expansionRowStates[index].expanded;\n }\n\n /** Scroll to top when turn to the next page. */\n _onPage(e: PageEvent) {\n if (this.pageOnFront) {\n this.scrollTop(0);\n }\n this.page.emit(e);\n }\n\n scrollTop(value?: number): number | void {\n if (value == null) {\n return this.tableContainer?.nativeElement.scrollTop;\n }\n if (this.tableContainer && !this.loading) {\n this.tableContainer.nativeElement.scrollTop = value;\n }\n }\n\n scrollLeft(value?: number): number | void {\n if (value == null) {\n return this.tableContainer?.nativeElement.scrollLeft;\n }\n if (this.tableContainer && !this.loading) {\n this.tableContainer.nativeElement.scrollLeft = value;\n }\n }\n}\n","import { Component, Input, ViewEncapsulation } from '@angular/core';\nimport { MtxDialog } from '@ng-matero/extensions/dialog';\n\nimport { MtxGridColumn, MtxGridColumnButton } from './grid.interface';\nimport { MtxGridService } from './grid.service';\nimport PhotoViewer from 'photoviewer';\n\n@Component({\n selector: 'mtx-grid-cell',\n exportAs: 'mtxGridCell',\n templateUrl: './cell.component.html',\n styleUrls: ['./cell.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class MtxGridCellComponent {\n /** Row data */\n @Input() rowData: any = {};\n\n /** Column definition */\n @Input() colDef!: MtxGridColumn;\n\n /** Table data */\n @Input() data: any[] = [];\n\n /** Whether show summary */\n @Input() summary = false;\n\n /** Placeholder for the empty value (`null`, `''`, `[]`) */\n @Input() placeholder: string = '--';\n\n get _colValue() {\n return this._dataGridSrv.getCellValue(this.rowData, this.colDef);\n }\n\n _isEmptyValue(value: any) {\n return value == null || value.toString() === '';\n }\n\n _isContainHTML(value: string) {\n return /<\\/?[a-z][\\s\\S]*>/i.test(value);\n }\n\n _getText(value: any) {\n return value === undefined ? '' : this._isEmptyValue(value) ? this.placeholder : value;\n }\n\n _getTooltip(value: any) {\n return this._isEmptyValue(value) ? '' : value;\n }\n\n _getFormatterTooltip(value: any) {\n return this._isContainHTML(value) || this._isEmptyValue(value) ? '' : value;\n }\n\n _formatSummary(data: any[], colDef: MtxGridColumn) {\n if (typeof colDef.summary === 'string') {\n return colDef.summary;\n } else if (typeof colDef.summary === 'function') {\n return (colDef.summary as (data: any[], colDef?: MtxGridColumn) => void)(\n this._dataGridSrv.getColData(data, colDef),\n colDef\n );\n }\n }\n\n constructor(private _dialog: MtxDialog, private _dataGridSrv: MtxGridService) {}\n\n _handleActionClick(event: MouseEvent, btn: MtxGridColumnButton, rowData: any) {\n event.preventDefault();\n event.stopPropagation();\n\n if (btn.pop) {\n this._dialog.open({\n title: btn.popTitle,\n description: btn.popDescription,\n buttons: [\n {\n color: btn.popOkColor || 'primary',\n text: btn.popOkText || 'OK',\n onClick: () => btn.click?.(rowData) || {},\n },\n {\n color: btn.popCloseColor,\n text: btn.popCloseText || 'CLOSE',\n onClick: () => {},\n },\n ],\n });\n } else {\n btn.click?.(rowData);\n }\n }\n\n /** Preview enlarged image */\n _handleImagePreview(urlStr: string) {\n const imgs: PhotoViewer.Img[] = [];\n\n this._dataGridSrv.str2arr(urlStr).forEach((url, index) => {\n imgs.push({ title: index + 1 + '', src: url });\n });\n\n const footerToolbar =\n imgs.length > 1\n ? ['zoomIn', 'zoomOut', 'prev', 'next', 'rotateRight', 'rotateLeft', 'actualSize']\n : ['zoomIn', 'zoomOut', 'rotateRight', 'rotateLeft', 'actualSize'];\n\n const options: PhotoViewer.Options = {\n title: imgs.length > 1,\n footerToolbar,\n };\n\n const photoviewer = new PhotoViewer(imgs, options);\n }\n}\n","import {\n Component,\n Input,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n Output,\n EventEmitter,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\nimport { MatMenu, MatMenuTrigger } from '@angular/material/menu';\nimport { ThemePalette } from '@angular/material/core';\nimport {\n MtxGridButtonType,\n MtxGridColumn,\n MtxGridColumnPinOption,\n MtxGridColumnPinValue,\n} from './grid.interface';\n\n@Component({\n selector: 'mtx-grid-column-menu',\n exportAs: 'mtxGridColumnMenu',\n templateUrl: './column-menu.component.html',\n styleUrls: ['./column-menu.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MtxGridColumnMenuComponent {\n @ViewChild('menu', { static: true }) menuPanel!: MatMenu;\n @ViewChild(MatMenuTrigger) menuTrigger!: MatMenuTrigger;\n\n @Input() columns: MtxGridColumn[] = [];\n @Input() selectable = true;\n @Input() selectableChecked: 'show' | 'hide' = 'show';\n @Input() sortable = true;\n @Input() pinnable = true;\n\n @Input()\n get buttonText() {\n const defaultText = `Columns ${this.selectableChecked === 'show' ? 'Shown' : 'Hidden'}`;\n return this._buttonText ? this._buttonText : defaultText;\n }\n set buttonText(value: string) {\n this._buttonText = value;\n }\n private _buttonText = '';\n\n @Input() buttonType: MtxGridButtonType = 'stroked';\n @Input() buttonColor: ThemePalette;\n @Input() buttonClass = '';\n @Input() buttonIcon = '';\n\n @Input() showHeader = false;\n @Input() headerText = 'Columns Header';\n @Input() headerTemplate!: TemplateRef<any>;\n @Input() showFooter = false;\n @Input() footerText = 'Columns Footer';\n @Input() footerTemplate!: TemplateRef<any>;\n\n @Output() columnChange = new EventEmitter<MtxGridColumn[]>();\n\n @Input()\n get pinOptions() {\n return this._pinOptions;\n }\n set pinOptions(value: MtxGridColumnPinOption[]) {\n if (value.length > 0) {\n this._pinOptions = value;\n }\n }\n private _pinOptions: MtxGridColumnPinOption[] = [\n { label: 'Pin Left', value: 'left' },\n { label: 'Pin Right', value: 'right' },\n { label: 'No Pin', value: null },\n ];\n\n _handleDroped(e: CdkDragDrop<string[]>) {\n moveItemInArray(this.columns, e.previousIndex, e.currentIndex);\n this.columnChange.emit(this.columns);\n }\n\n _handleChecked(e: MatCheckboxChange) {\n this.columnChange.emit(this.columns);\n }\n\n _handlePinSelect(col: MtxGridColumn, val: MtxGridColumnPinValue) {\n if (col.pinned != val) {\n col.pinned = val;\n this.columnChange.emit(this.columns);\n }\n }\n}\n","import {\n Directive,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n Output,\n TemplateRef,\n} from '@angular/core';\n\n@Directive({\n selector: '[mtx-grid-expansion-toggle]',\n})\nexport class MtxGridExpansionToggleDirective {\n private _opened = false;\n private _row: any;\n private _tplRef!: TemplateRef<any>;\n\n @Input()\n get opened() {\n return this._opened;\n }\n set opened(newValue: boolean) {\n this._opened = newValue;\n this.openedChange.emit(newValue);\n }\n @Output() openedChange = new EventEmitter<boolean>();\n\n @HostBinding('class.expanded')\n get expanded(): boolean {\n return this._opened;\n }\n\n @Input()\n set expandableRow(value: any) {\n if (value !== this._row) {\n this._row = value;\n }\n }\n\n @Input('expansionRowTpl')\n set template(value: TemplateRef<any>) {\n if (value !== this._tplRef) {\n this._tplRef = value;\n }\n }\n\n @Output() toggleChange = new EventEmitter<MtxGridExpansionToggleDirective>();\n\n constructor() {}\n\n @HostListener('click', ['$event'])\n onClick(event: MouseEvent): void {\n event.preventDefault();\n event.stopPropagation();\n this.toggle();\n }\n\n toggle(): void {\n this.opened = !this.opened;\n this.toggleChange.emit(this);\n }\n}\n","import { Directive, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';\n\nimport { MtxGridComponent } from './grid.component';\n\n@Directive({\n selector: '[mtx-grid-selectable-cell]',\n})\nexport class MtxGridCellSelectionDirective {\n private _selected = false;\n private _rowData: any;\n\n shiftKeyPressed = false;\n ctrlKeyPressed = false;\n\n @HostBinding('class.selected')\n get selected(): boolean {\n return this._selected;\n }\n\n @Input()\n set matSelectableRowData(value: any) {\n if (value !== this._rowData) {\n this._rowData = value;\n }\n }\n\n @Output() cellSelectionChange = new EventEmitter<MtxGridCellSelectionDirective>();\n\n constructor(private _dataGrid: MtxGridComponent) {}\n\n @HostListener('click', ['$event'])\n onClick(event: MouseEvent): void {\n this.ctrlKeyPressed = event.ctrlKey;\n this.shiftKeyPressed = event.shiftKey;\n\n if (this._dataGrid.cellSelectable) {\n this.select();\n }\n }\n\n select(): void {\n this._selected = true;\n this.cellSelectionChange.emit(this);\n }\n\n deselect(): void {\n this._selected = false;\n this.cellSelectionChange.emit(this);\n }\n\n toggle(): void {\n this._selected = !this._selected;\n this.cellSelectionChange.emit(this);\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 { 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 const table = this.elementRef.nativeElement;\n const tableParent = table!.parentNode as HTMLElement;\n const isTableContainer = tableParent!.classList.contains('mat-table-container');\n return isTableContainer ? tableParent!.offsetHeight : table!.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';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { DragDropModule } from '@angular/cdk/drag-drop';\n\nimport { MtxPipesModule } from '@ng-matero/extensions/pipes';\nimport { MtxDialogModule } from '@ng-matero/extensions/dialog';\nimport { MtxGridComponent } from './grid.component';\nimport { MtxGridCellComponent } from './cell.component';\nimport { MtxGridColumnMenuComponent } from './column-menu.component';\nimport { MtxGridExpansionToggleDirective } from './expansion-toggle.directive';\nimport { MtxGridCellSelectionDirective } from './cell-selection.directive';\nimport { MtxGridService } from './grid.service';\nimport { MatColumnResizeModule } from './column-resize/column-resize-module';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n MatTableModule,\n MatSortModule,\n MatPaginatorModule,\n MatCheckboxModule,\n MatButtonModule,\n MatProgressBarModule,\n MatChipsModule,\n MatTooltipModule,\n MatIconModule,\n MatSelectModule,\n MatFormFieldModule,\n MatMenuModule,\n DragDropModule,\n MtxDialogModule,\n MtxPipesModule,\n MatColumnResizeModule,\n ],\n exports: [\n MtxGridComponent,\n MtxGridCellComponent,\n MtxGridColumnMenuComponent,\n MtxGridExpansionToggleDirective,\n MtxGridCellSelectionDirective,\n MatColumnResizeModule,\n ],\n declarations: [\n MtxGridComponent,\n MtxGridCellComponent,\n MtxGridColumnMenuComponent,\n MtxGridExpansionToggleDirective,\n MtxGridCellSelectionDirective,\n ],\n providers: [MtxGridService],\n})\nexport class MtxGridModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Injectable","MatTableDataSource","EventEmitter","SelectionModel","TemplateRef","Component","ViewEncapsulation","ChangeDetectionStrategy","trigger","state","style","transition","animate","ChangeDetectorRef","ViewChild","MatTable","MatPaginator","MatSort","ContentChildren","MatRowDef","MatHeaderRowDef","MatFooterRow","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","MtxPipesModule"],"mappings":"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"}
|
package/bundles/mtxSplit.umd.js
CHANGED
|
@@ -1049,7 +1049,7 @@
|
|
|
1049
1049
|
var offset = this.direction === 'horizontal'
|
|
1050
1050
|
? this.startPoint.x - this.endPoint.x
|
|
1051
1051
|
: this.startPoint.y - this.endPoint.y;
|
|
1052
|
-
if (this.dir === 'rtl') {
|
|
1052
|
+
if (this.dir === 'rtl' && this.direction === 'horizontal') {
|
|
1053
1053
|
offset = -offset;
|
|
1054
1054
|
}
|
|
1055
1055
|
var steppedOffset = Math.round(offset / this.gutterStep) * this.gutterStep;
|