@angular-generic-table/core 5.0.0-rc.3 → 5.0.0-rc.7

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.
Files changed (65) hide show
  1. package/angular-generic-table-core.d.ts +1 -3
  2. package/esm2020/angular-generic-table-core.mjs +5 -0
  3. package/esm2020/lib/core.component.mjs +120 -0
  4. package/esm2020/lib/core.module.mjs +23 -0
  5. package/esm2020/lib/core.service.mjs +14 -0
  6. package/esm2020/lib/enums/order.enum.mjs +6 -0
  7. package/esm2020/lib/models/table-column.interface.mjs +2 -0
  8. package/esm2020/lib/models/table-config.interface.mjs +2 -0
  9. package/esm2020/lib/models/table-info.interface.mjs +2 -0
  10. package/esm2020/lib/models/table-meta.interface.mjs +2 -0
  11. package/esm2020/lib/models/table-row.interface.mjs +2 -0
  12. package/esm2020/lib/models/table-sort.interface.mjs +2 -0
  13. package/esm2020/lib/pagination/pagination.component.mjs +63 -0
  14. package/esm2020/lib/pagination/pagination.module.mjs +18 -0
  15. package/esm2020/lib/pipes/capital-case.pipe.mjs +17 -0
  16. package/esm2020/lib/pipes/dash-case.pipe.mjs +17 -0
  17. package/esm2020/lib/pipes/dynamic.pipe.mjs +25 -0
  18. package/esm2020/lib/pipes/highlight.pipe.mjs +48 -0
  19. package/esm2020/lib/pipes/sort-class.pipe.mjs +16 -0
  20. package/esm2020/lib/utilities/utilities.mjs +38 -0
  21. package/esm2020/public-api.mjs +15 -0
  22. package/fesm2015/angular-generic-table-core.mjs +380 -0
  23. package/fesm2015/angular-generic-table-core.mjs.map +1 -0
  24. package/fesm2020/angular-generic-table-core.mjs +378 -0
  25. package/fesm2020/angular-generic-table-core.mjs.map +1 -0
  26. package/lib/core.component.d.ts +12 -11
  27. package/lib/core.module.d.ts +11 -0
  28. package/lib/core.service.d.ts +3 -0
  29. package/lib/models/table-column.interface.d.ts +7 -1
  30. package/lib/models/table-config.interface.d.ts +7 -3
  31. package/lib/models/table-meta.interface.d.ts +8 -0
  32. package/lib/models/table-row.interface.d.ts +1 -0
  33. package/lib/pagination/pagination.component.d.ts +14 -0
  34. package/lib/pagination/pagination.module.d.ts +8 -0
  35. package/lib/pipes/capital-case.pipe.d.ts +7 -0
  36. package/lib/pipes/dash-case.pipe.d.ts +3 -0
  37. package/lib/pipes/dynamic.pipe.d.ts +9 -0
  38. package/lib/pipes/highlight.pipe.d.ts +3 -0
  39. package/lib/pipes/sort-class.pipe.d.ts +3 -0
  40. package/lib/utilities/utilities.d.ts +1 -0
  41. package/package.json +19 -7
  42. package/public-api.d.ts +3 -0
  43. package/scss/index.scss +97 -0
  44. package/angular-generic-table-core.metadata.json +0 -1
  45. package/bundles/angular-generic-table-core.umd.js +0 -594
  46. package/bundles/angular-generic-table-core.umd.js.map +0 -1
  47. package/bundles/angular-generic-table-core.umd.min.js +0 -2
  48. package/bundles/angular-generic-table-core.umd.min.js.map +0 -1
  49. package/esm2015/angular-generic-table-core.js +0 -8
  50. package/esm2015/lib/core.component.js +0 -107
  51. package/esm2015/lib/core.module.js +0 -16
  52. package/esm2015/lib/core.service.js +0 -13
  53. package/esm2015/lib/enums/order.enum.js +0 -6
  54. package/esm2015/lib/models/table-column.interface.js +0 -2
  55. package/esm2015/lib/models/table-config.interface.js +0 -2
  56. package/esm2015/lib/models/table-info.interface.js +0 -2
  57. package/esm2015/lib/models/table-row.interface.js +0 -2
  58. package/esm2015/lib/models/table-sort.interface.js +0 -2
  59. package/esm2015/lib/pipes/dash-case.pipe.js +0 -13
  60. package/esm2015/lib/pipes/highlight.pipe.js +0 -44
  61. package/esm2015/lib/pipes/sort-class.pipe.js +0 -12
  62. package/esm2015/lib/utilities/utilities.js +0 -25
  63. package/esm2015/public-api.js +0 -12
  64. package/fesm2015/angular-generic-table-core.js +0 -234
  65. package/fesm2015/angular-generic-table-core.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"angular-generic-table-core.umd.js","sources":["../../projects/core/src/lib/core.service.ts","../../../node_modules/tslib/tslib.es6.js","../projects/core/src/lib/enums/order.enum.ts","../projects/core/src/lib/utilities/utilities.ts","../../projects/core/src/lib/core.component.ts","../projects/core/src/lib/pipes/sort-class.pipe.ts","../projects/core/src/lib/pipes/dash-case.pipe.ts","../projects/core/src/lib/pipes/highlight.pipe.ts","../../projects/core/src/lib/core.module.ts","../../../projects/core/src/public-api.ts","../../../projects/core/src/angular-generic-table-core.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CoreService {\n constructor() {}\n}\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n to[j] = from[i];\r\n return to;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","export enum Order {\n ASC = 'asc',\n DESC = 'desc'\n}\n","import { TableRow } from '../models/table-row.interface';\nimport { TableConfig } from '../models/table-config.interface';\n\nexport let dashed: (s: string) => string;\ndashed = (s: string) => s.replace(/[A-Z]/g, m => '-' + m.toLowerCase());\n\nexport let chunk: (array: Array<any>, chunkSize: number) => Array<Array<TableRow>>;\nchunk = (array, chunkSize) => {\n if (chunkSize < 0) {\n throw new Error('Invalid chunk size');\n }\n if (chunkSize === 0 && !chunkSize) {\n return [array];\n }\n const CHUNK = [];\n for (let i = 0, len = array.length; i < len; i += chunkSize) {\n CHUNK.push(array.slice(i, i + chunkSize));\n }\n return CHUNK;\n};\n\nexport let search: (text: string, caseSensitive: boolean, data: Array<TableRow>, config: TableConfig) => TableRow[];\nsearch = (text: string, caseSensitive: boolean, data: Array<TableRow>, config: TableConfig) => {\n const searchColumns = Object.keys(config.columns).filter(\n key => !config.columns[key].hidden && config.columns[key].search !== false\n );\n return data.filter(\n row =>\n Object.entries(row)\n .filter(([key, value]) => searchColumns.indexOf(key) !== -1)\n .reduce(\n (prev, [key, value]): string =>\n prev + (prev === '' ? '' : ' & ') + (caseSensitive ? value + '' : (value + '').toLowerCase()),\n ''\n )\n .indexOf(text) !== -1\n );\n};\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { BehaviorSubject, combineLatest, EMPTY, isObservable, Observable, of, ReplaySubject, Subject } from 'rxjs';\nimport { TableConfig } from './models/table-config.interface';\nimport { KeyValue } from '@angular/common';\nimport { map, shareReplay, startWith, switchMap, withLatestFrom } from 'rxjs/operators';\nimport { TableColumn } from './models/table-column.interface';\nimport { Order } from './enums/order.enum';\nimport { chunk, search } from './utilities/utilities';\nimport { TableRow } from './models/table-row.interface';\nimport { TableSort } from './models/table-sort.interface';\nimport { TableInfo } from './models/table-info.interface';\n\n@Component({\n selector: 'angular-generic-table',\n templateUrl: './core.component.html',\n styles: [],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CoreComponent {\n @Input()\n set page(value: Observable<number> | number) {\n this._currentPage$.next(value);\n }\n\n @Input()\n set search(value: Observable<string> | string) {\n this._searchBy$.next(value);\n }\n\n @Input()\n set config(value: Observable<TableConfig> | TableConfig) {\n this._tableConfig$.next(value);\n }\n\n @Input()\n set data(value: Observable<Array<TableRow>> | Array<TableRow>) {\n this._data$.next(value);\n }\n constructor() {}\n\n loading$ = of(false);\n sortBy$: Subject<TableSort> = new Subject();\n // tslint:disable-next-line:variable-name\n private _sortBy: TableSort | undefined;\n\n // tslint:disable-next-line:variable-name\n private _searchBy$: ReplaySubject<Observable<string> | string> = new ReplaySubject(1);\n searchBy$: Observable<string> = this._searchBy$.pipe(\n startWith(''),\n map((value) => (isObservable(value) ? value : of(value))),\n switchMap((obs) => obs),\n shareReplay(1)\n );\n\n // tslint:disable-next-line:variable-name\n private _tableConfig$: ReplaySubject<TableConfig | Observable<TableConfig>> = new ReplaySubject(1);\n tableConfig$: Observable<TableConfig> = this._tableConfig$.pipe(\n map((value) => (isObservable(value) ? value : of(value))),\n switchMap((obs) => obs),\n shareReplay(1)\n );\n\n // tslint:disable-next-line:variable-name\n private _data$: ReplaySubject<Array<TableRow> | Observable<Array<TableRow>>> = new ReplaySubject(1);\n data$: Observable<Array<TableRow>> = this._data$.pipe(\n map((value) => (isObservable(value) ? value : of(value))),\n switchMap((obs) => combineLatest([obs, this.sortBy$.pipe(startWith(EMPTY)), this.searchBy$])),\n withLatestFrom(this.tableConfig$),\n map(([[data, sortBy, searchBy], config]) => {\n return !sortBy\n ? searchBy\n ? search(searchBy, false, data, config)\n : data\n : (searchBy ? search(searchBy, false, data, config) : data).sort((a, b) => {\n // TODO: improve logic\n const typed = sortBy as TableSort;\n return a[typed.sortBy] > b[typed.sortBy]\n ? typed.sortByOrder === Order.ASC\n ? 1\n : -1\n : b[typed.sortBy] > a[typed.sortBy]\n ? typed.sortByOrder === Order.ASC\n ? -1\n : 1\n : 0;\n });\n })\n );\n\n table$: Observable<{ data: Array<Array<TableRow>>; config: TableConfig; info: TableInfo }> = combineLatest([\n this.data$,\n this.tableConfig$,\n ]).pipe(\n map(([sorted, config]) => {\n // if pagination is disabled...\n if (!config.pagination || config.pagination.length === 0) {\n // ...return unaltered array\n return { data: [sorted], config, info: { records: sorted.length, pageTotal: 1 } };\n }\n // return record set\n return {\n data: chunk(sorted, +config.pagination.length),\n config,\n info: {\n records: sorted.length,\n pageTotal: Math.ceil(sorted.length / +config.pagination.length),\n },\n };\n })\n );\n\n // tslint:disable-next-line:variable-name\n private _currentPage$: BehaviorSubject<any> = new BehaviorSubject(0);\n currentPage$ = this._currentPage$.pipe(\n map((value) => (isObservable(value) ? (value as Observable<number>) : (of(value) as Observable<number>))),\n switchMap((obs) => obs),\n withLatestFrom(this.table$),\n map(([page, table]: any) => {\n // determine last page\n const lastPage = Math.ceil(table.info.records / table.config.pagination.length) - 1;\n // determine max/min position\n return +page < 0 ? 0 : +page > lastPage ? lastPage : +page;\n }),\n shareReplay(1)\n );\n\n sort(property: string): void {\n const newSortOrder =\n this._sortBy?.sortBy !== property || this._sortBy?.sortByOrder === Order.DESC || !this._sortBy.sortByOrder\n ? Order.ASC\n : Order.DESC;\n const newSortBy = {\n sortBy: property,\n sortByOrder: newSortOrder,\n };\n this.sortBy$.next(newSortBy);\n this._sortBy = newSortBy;\n }\n\n columnOrder = (a: KeyValue<string, TableColumn>, b: KeyValue<string, TableColumn>): number => {\n return (a.value.order || 0) - (b.value.order || 0);\n };\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { Order } from '../enums/order.enum';\n\n@Pipe({\n name: 'sortClass',\n})\nexport class SortClassPipe implements PipeTransform {\n transform(selection: { sortBy: string; sortByOrder: Order } | any, property: string): string {\n return selection?.sortBy === property ? 'sort-' + selection.sortByOrder : '';\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { dashed } from '../utilities/utilities';\n\n@Pipe({\n name: 'dashCase'\n})\nexport class DashCasePipe implements PipeTransform {\n transform(s: string): any {\n return dashed(s);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'highlight'\n})\nexport class HighlightPipe implements PipeTransform {\n transform(text: any, searchTerm: string | null): string {\n if (!searchTerm) {\n return text;\n }\n const haystackAlwaysString = text + '';\n let highlightedText = haystackAlwaysString; // fallback\n\n let searchPattern;\n try {\n searchPattern = new RegExp(\n '(' +\n // @ts-ignore\n searchTerm\n .toLowerCase()\n .match(/\".*?\"|[^ ]+/g) // extract words\n .map(\n needle => needle.replace(/\"(.*?)\"/, '$1') // strip away '\"'\n )\n .join('|') + // combine words\n ')',\n 'ig'\n );\n } catch (error) {\n return highlightedText;\n }\n\n const containsTagPattern = /(<.*?>)(.*)(<\\/.*?>)/gi;\n const containsTagMatches = containsTagPattern.exec(haystackAlwaysString);\n\n if (containsTagMatches) {\n // tag exists in haystack\n highlightedText =\n containsTagMatches[1] +\n containsTagMatches[2].replace(searchPattern, '<span class=\"gt-highlight-search\">$1</span>') +\n containsTagMatches[3];\n } else {\n highlightedText = haystackAlwaysString.replace(searchPattern, '<span class=\"gt-highlight-search\">$1</span>');\n }\n\n return highlightedText;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CoreComponent } from './core.component';\nimport { CommonModule } from '@angular/common';\nimport { SortClassPipe } from './pipes/sort-class.pipe';\nimport { DashCasePipe } from './pipes/dash-case.pipe';\nimport { HighlightPipe } from './pipes/highlight.pipe';\n\n@NgModule({\n declarations: [CoreComponent, SortClassPipe, DashCasePipe, HighlightPipe],\n imports: [CommonModule],\n exports: [CoreComponent]\n})\nexport class GenericTableCoreModule {}\n","/*\n * Public API Surface of core\n */\n\nexport * from './lib/core.service';\nexport * from './lib/core.component';\nexport * from './lib/core.module';\nexport * from './lib/models/table-config.interface';\nexport * from './lib/models/table-column.interface';\nexport * from './lib/models/table-info.interface';\nexport * from './lib/models/table-row.interface';\nexport * from './lib/models/table-sort.interface';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {DashCasePipe as ɵb} from './lib/pipes/dash-case.pipe';\nexport {HighlightPipe as ɵc} from './lib/pipes/highlight.pipe';\nexport {SortClassPipe as ɵa} from './lib/pipes/sort-class.pipe';"],"names":["Injectable","of","Subject","ReplaySubject","startWith","map","isObservable","switchMap","shareReplay","combineLatest","EMPTY","withLatestFrom","BehaviorSubject","Component","ChangeDetectionStrategy","Input","Pipe","NgModule","CommonModule"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@angular/core"),require("rxjs"),require("rxjs/operators"),require("@angular/common")):"function"==typeof define&&define.amd?define("@angular-generic-table/core",["exports","@angular/core","rxjs","rxjs/operators","@angular/common"],n):n(((e="undefined"!=typeof globalThis?globalThis:e||self)["angular-generic-table"]=e["angular-generic-table"]||{},e["angular-generic-table"].core={}),e.ng.core,e.rxjs,e.rxjs.operators,e.ng.common)}(this,(function(e,n,t,r,a){"use strict";var o=function(){};o.ɵprov=n.ɵɵdefineInjectable({factory:function(){return new o},token:o,providedIn:"root"}),o.decorators=[{type:n.Injectable,args:[{providedIn:"root"}]}],o.ctorParameters=function(){return[]};Object.create;function i(e,n){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var r,a,o=t.call(e),i=[];try{for(;(void 0===n||n-- >0)&&!(r=o.next()).done;)i.push(r.value)}catch(e){a={error:e}}finally{try{r&&!r.done&&(t=o.return)&&t.call(o)}finally{if(a)throw a.error}}return i}var c,l,s,u;Object.create;!function(e){e.ASC="asc",e.DESC="desc"}(c||(c={})),l=function(e){return e.replace(/[A-Z]/g,(function(e){return"-"+e.toLowerCase()}))},s=function(e,n){if(n<0)throw new Error("Invalid chunk size");if(0===n&&!n)return[e];for(var t=[],r=0,a=e.length;r<a;r+=n)t.push(e.slice(r,r+n));return t},u=function(e,n,t,r){var a=Object.keys(r.columns).filter((function(e){return!r.columns[e].hidden&&!1!==r.columns[e].search}));return t.filter((function(t){return-1!==Object.entries(t).filter((function(e){var n=i(e,2),t=n[0];n[1];return-1!==a.indexOf(t)})).reduce((function(e,t){var r=i(t,2),a=(r[0],r[1]);return e+(""===e?"":" & ")+(n?a+"":(a+"").toLowerCase())}),"").indexOf(e)}))};var g=function(){function e(){var e=this;this.loading$=t.of(!1),this.sortBy$=new t.Subject,this._searchBy$=new t.ReplaySubject(1),this.searchBy$=this._searchBy$.pipe(r.startWith(""),r.map((function(e){return t.isObservable(e)?e:t.of(e)})),r.switchMap((function(e){return e})),r.shareReplay(1)),this._tableConfig$=new t.ReplaySubject(1),this.tableConfig$=this._tableConfig$.pipe(r.map((function(e){return t.isObservable(e)?e:t.of(e)})),r.switchMap((function(e){return e})),r.shareReplay(1)),this._data$=new t.ReplaySubject(1),this.data$=this._data$.pipe(r.map((function(e){return t.isObservable(e)?e:t.of(e)})),r.switchMap((function(n){return t.combineLatest([n,e.sortBy$.pipe(r.startWith(t.EMPTY)),e.searchBy$])})),r.withLatestFrom(this.tableConfig$),r.map((function(e){var n=i(e,2),t=i(n[0],3),r=t[0],a=t[1],o=t[2],l=n[1];return a?(o?u(o,!1,r,l):r).sort((function(e,n){var t=a;return e[t.sortBy]>n[t.sortBy]?t.sortByOrder===c.ASC?1:-1:n[t.sortBy]>e[t.sortBy]?t.sortByOrder===c.ASC?-1:1:0})):o?u(o,!1,r,l):r}))),this.table$=t.combineLatest([this.data$,this.tableConfig$]).pipe(r.map((function(e){var n=i(e,2),t=n[0],r=n[1];return r.pagination&&0!==r.pagination.length?{data:s(t,+r.pagination.length),config:r,info:{records:t.length,pageTotal:Math.ceil(t.length/+r.pagination.length)}}:{data:[t],config:r,info:{records:t.length,pageTotal:1}}}))),this._currentPage$=new t.BehaviorSubject(0),this.currentPage$=this._currentPage$.pipe(r.map((function(e){return t.isObservable(e)?e:t.of(e)})),r.switchMap((function(e){return e})),r.withLatestFrom(this.table$),r.map((function(e){var n=i(e,2),t=n[0],r=n[1],a=Math.ceil(r.info.records/r.config.pagination.length)-1;return+t<0?0:+t>a?a:+t})),r.shareReplay(1)),this.columnOrder=function(e,n){return(e.value.order||0)-(n.value.order||0)}}return Object.defineProperty(e.prototype,"page",{set:function(e){this._currentPage$.next(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"search",{set:function(e){this._searchBy$.next(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"config",{set:function(e){this._tableConfig$.next(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"data",{set:function(e){this._data$.next(e)},enumerable:!1,configurable:!0}),e.prototype.sort=function(e){var n,t,r={sortBy:e,sortByOrder:(null===(n=this._sortBy)||void 0===n?void 0:n.sortBy)===e&&(null===(t=this._sortBy)||void 0===t?void 0:t.sortByOrder)!==c.DESC&&this._sortBy.sortByOrder?c.DESC:c.ASC};this.sortBy$.next(r),this._sortBy=r},e}();g.decorators=[{type:n.Component,args:[{selector:"angular-generic-table",template:'<table class="table text-nowrap mb-0" id="agreementList_table">\n <thead>\n <tr>\n <ng-container *ngFor="let column of (tableConfig$ | async)!.columns | keyvalue: columnOrder">\n <th\n *ngIf="!column.value?.hidden"\n ngClass="{{ column.value?.sortable ? \'sort \' : \'\' }} {{ sortBy$ | async | sortClass: column.key }} {{\n (column.key | dashCase) + \'-column\'\n }}"\n [class.disabled]="loading$ | async"\n (click)="!column.value.sortable || sort(column.key)"\n >\n <span>{{ column.value?.header || column.key }}</span>\n </th>\n </ng-container>\n </tr>\n </thead>\n <tbody *ngIf="false !== false; else tableContent">\n <tr>\n \x3c!-- <td class="p-0" [colSpan]="colspan$ | async">--\x3e\n <td class="p-0">\n <div class="skeleton-loader skeleton-loader-table"></div>\n </td>\n </tr>\n </tbody>\n</table>\n<ng-template #tableContent>\n <ng-container\n *ngIf="(table$ | async)! as table"\n >\n <tbody id="agreementList_tableContent" *ngIf="table!.data!.length > 0; else noData">\n <tr *ngFor="let row of table!.data![(currentPage$ | async) || 0]; let i = index" [attr.id]="\'tableRow_\' + i">\n <ng-container *ngFor="let column of table.config?.columns | keyvalue: columnOrder">\n <td *ngIf="!column.value?.hidden">\n \x3c!--<ng-container *ngIf="column.value.template === \'actions\'">\n <ng-container\n *ngTemplateOutlet="actionsColumn; context: { agreement: agreement, index: i }"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf="column.value.template === \'date\'">\n <ng-container\n *ngTemplateOutlet="dateColumn; context: { agreement: agreement, column: column.key }"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf="column.value.template === \'name\'">\n <ng-container *ngTemplateOutlet="nameColumn; context: { agreement: agreement }"></ng-container>\n </ng-container>\n <ng-container *ngIf="column.value.template === \'badge\'">\n <ng-container *ngTemplateOutlet="badgeColumn; context: { agreement: agreement }"></ng-container>\n </ng-container>--\x3e\n <ng-container [ngTemplateOutlet]="(searchBy$ | async) && !table.config.columns[column.key].templateRef ? highlighted:\n table.config.columns[column.key].templateRef ? templateRef :\n rawData" [ngTemplateOutletContext]="{row: row, column: column, search: (searchBy$ | async), templateRef: table.config.columns[column.key].templateRef, index: i}"></ng-container></td>\n </ng-container>\n </tr>\n </tbody>\n </ng-container>\n</ng-template>\n<ng-template #noData></ng-template>\n<ng-template #highlighted let-row="row" let-column="column" let-search="search">\n <div [innerHTML]="(row[column.key] | highlight: search)"></div>\n</ng-template>\n<ng-template #rawData let-row="row" let-column="column">\n {{row[column.key]}}\n</ng-template>\n<ng-template #templateRef let-row="row" let-column="column" let-index="index" let-templateRef="templateRef">\n <ng-container [ngTemplateOutlet]="templateRef" [ngTemplateOutletContext]="{row: row, col: column, index: index}"></ng-container>\n</ng-template>\n',changeDetection:n.ChangeDetectionStrategy.OnPush}]}],g.ctorParameters=function(){return[]},g.propDecorators={page:[{type:n.Input}],search:[{type:n.Input}],config:[{type:n.Input}],data:[{type:n.Input}]};var p=function(){function e(){}return e.prototype.transform=function(e,n){return(null==e?void 0:e.sortBy)===n?"sort-"+e.sortByOrder:""},e}();p.decorators=[{type:n.Pipe,args:[{name:"sortClass"}]}];var f=function(){function e(){}return e.prototype.transform=function(e){return l(e)},e}();f.decorators=[{type:n.Pipe,args:[{name:"dashCase"}]}];var m=function(){function e(){}return e.prototype.transform=function(e,n){if(!n)return e;var t,r=e+"",a=r;try{t=new RegExp("("+n.toLowerCase().match(/".*?"|[^ ]+/g).map((function(e){return e.replace(/"(.*?)"/,"$1")})).join("|")+")","ig")}catch(e){return a}var o=/(<.*?>)(.*)(<\/.*?>)/gi.exec(r);return a=o?o[1]+o[2].replace(t,'<span class="gt-highlight-search">$1</span>')+o[3]:r.replace(t,'<span class="gt-highlight-search">$1</span>')},e}();m.decorators=[{type:n.Pipe,args:[{name:"highlight"}]}];var d=function(){};d.decorators=[{type:n.NgModule,args:[{declarations:[g,p,f,m],imports:[a.CommonModule],exports:[g]}]}],e.CoreComponent=g,e.CoreService=o,e.GenericTableCoreModule=d,e.ɵa=p,e.ɵb=f,e.ɵc=m,Object.defineProperty(e,"__esModule",{value:!0})}));
2
- //# sourceMappingURL=angular-generic-table-core.umd.min.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../projects/core/src/lib/core.service.ts","../../../node_modules/tslib/tslib.es6.js","../projects/core/src/lib/enums/order.enum.ts","../projects/core/src/lib/utilities/utilities.ts","../../projects/core/src/lib/core.component.ts","../projects/core/src/lib/pipes/sort-class.pipe.ts","../projects/core/src/lib/pipes/dash-case.pipe.ts","../projects/core/src/lib/pipes/highlight.pipe.ts","../../projects/core/src/lib/core.module.ts"],"names":["Injectable","args","providedIn","Object","create","__read","o","n","m","Symbol","iterator","r","e","i","call","ar","next","done","push","value","error","Order","dashed","chunk","search","s","replace","toLowerCase","array","chunkSize","Error","CHUNK","len","length","slice","text","caseSensitive","data","config","searchColumns","keys","columns","filter","key","hidden","row","entries","_a","_b","indexOf","reduce","prev","CoreComponent","_this","this","loading$","of","sortBy$","Subject","_searchBy$","ReplaySubject","searchBy$","pipe","startWith","map","isObservable","switchMap","obs","shareReplay","_tableConfig$","tableConfig$","_data$","data$","combineLatest","EMPTY","withLatestFrom","_c","_d","_e","sortBy","searchBy","sort","a","b","typed","sortByOrder","ASC","table$","sorted","pagination","info","records","pageTotal","Math","ceil","_currentPage$","BehaviorSubject","currentPage$","page","table","lastPage","columnOrder","order","defineProperty","prototype","property","newSortBy","_sortBy","DESC","Component","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","Input","SortClassPipe","transform","selection","Pipe","name","DashCasePipe","HighlightPipe","searchTerm","searchPattern","haystackAlwaysString","highlightedText","RegExp","match","needle","join","containsTagMatches","exec","NgModule","declarations","imports","CommonModule","exports"],"mappings":"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","sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CoreService {\n constructor() {}\n}\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n to[j] = from[i];\r\n return to;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","export enum Order {\n ASC = 'asc',\n DESC = 'desc'\n}\n","import { TableRow } from '../models/table-row.interface';\nimport { TableConfig } from '../models/table-config.interface';\n\nexport let dashed: (s: string) => string;\ndashed = (s: string) => s.replace(/[A-Z]/g, m => '-' + m.toLowerCase());\n\nexport let chunk: (array: Array<any>, chunkSize: number) => Array<Array<TableRow>>;\nchunk = (array, chunkSize) => {\n if (chunkSize < 0) {\n throw new Error('Invalid chunk size');\n }\n if (chunkSize === 0 && !chunkSize) {\n return [array];\n }\n const CHUNK = [];\n for (let i = 0, len = array.length; i < len; i += chunkSize) {\n CHUNK.push(array.slice(i, i + chunkSize));\n }\n return CHUNK;\n};\n\nexport let search: (text: string, caseSensitive: boolean, data: Array<TableRow>, config: TableConfig) => TableRow[];\nsearch = (text: string, caseSensitive: boolean, data: Array<TableRow>, config: TableConfig) => {\n const searchColumns = Object.keys(config.columns).filter(\n key => !config.columns[key].hidden && config.columns[key].search !== false\n );\n return data.filter(\n row =>\n Object.entries(row)\n .filter(([key, value]) => searchColumns.indexOf(key) !== -1)\n .reduce(\n (prev, [key, value]): string =>\n prev + (prev === '' ? '' : ' & ') + (caseSensitive ? value + '' : (value + '').toLowerCase()),\n ''\n )\n .indexOf(text) !== -1\n );\n};\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { BehaviorSubject, combineLatest, EMPTY, isObservable, Observable, of, ReplaySubject, Subject } from 'rxjs';\nimport { TableConfig } from './models/table-config.interface';\nimport { KeyValue } from '@angular/common';\nimport { map, shareReplay, startWith, switchMap, withLatestFrom } from 'rxjs/operators';\nimport { TableColumn } from './models/table-column.interface';\nimport { Order } from './enums/order.enum';\nimport { chunk, search } from './utilities/utilities';\nimport { TableRow } from './models/table-row.interface';\nimport { TableSort } from './models/table-sort.interface';\nimport { TableInfo } from './models/table-info.interface';\n\n@Component({\n selector: 'angular-generic-table',\n templateUrl: './core.component.html',\n styles: [],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CoreComponent {\n @Input()\n set page(value: Observable<number> | number) {\n this._currentPage$.next(value);\n }\n\n @Input()\n set search(value: Observable<string> | string) {\n this._searchBy$.next(value);\n }\n\n @Input()\n set config(value: Observable<TableConfig> | TableConfig) {\n this._tableConfig$.next(value);\n }\n\n @Input()\n set data(value: Observable<Array<TableRow>> | Array<TableRow>) {\n this._data$.next(value);\n }\n constructor() {}\n\n loading$ = of(false);\n sortBy$: Subject<TableSort> = new Subject();\n // tslint:disable-next-line:variable-name\n private _sortBy: TableSort | undefined;\n\n // tslint:disable-next-line:variable-name\n private _searchBy$: ReplaySubject<Observable<string> | string> = new ReplaySubject(1);\n searchBy$: Observable<string> = this._searchBy$.pipe(\n startWith(''),\n map((value) => (isObservable(value) ? value : of(value))),\n switchMap((obs) => obs),\n shareReplay(1)\n );\n\n // tslint:disable-next-line:variable-name\n private _tableConfig$: ReplaySubject<TableConfig | Observable<TableConfig>> = new ReplaySubject(1);\n tableConfig$: Observable<TableConfig> = this._tableConfig$.pipe(\n map((value) => (isObservable(value) ? value : of(value))),\n switchMap((obs) => obs),\n shareReplay(1)\n );\n\n // tslint:disable-next-line:variable-name\n private _data$: ReplaySubject<Array<TableRow> | Observable<Array<TableRow>>> = new ReplaySubject(1);\n data$: Observable<Array<TableRow>> = this._data$.pipe(\n map((value) => (isObservable(value) ? value : of(value))),\n switchMap((obs) => combineLatest([obs, this.sortBy$.pipe(startWith(EMPTY)), this.searchBy$])),\n withLatestFrom(this.tableConfig$),\n map(([[data, sortBy, searchBy], config]) => {\n return !sortBy\n ? searchBy\n ? search(searchBy, false, data, config)\n : data\n : (searchBy ? search(searchBy, false, data, config) : data).sort((a, b) => {\n // TODO: improve logic\n const typed = sortBy as TableSort;\n return a[typed.sortBy] > b[typed.sortBy]\n ? typed.sortByOrder === Order.ASC\n ? 1\n : -1\n : b[typed.sortBy] > a[typed.sortBy]\n ? typed.sortByOrder === Order.ASC\n ? -1\n : 1\n : 0;\n });\n })\n );\n\n table$: Observable<{ data: Array<Array<TableRow>>; config: TableConfig; info: TableInfo }> = combineLatest([\n this.data$,\n this.tableConfig$,\n ]).pipe(\n map(([sorted, config]) => {\n // if pagination is disabled...\n if (!config.pagination || config.pagination.length === 0) {\n // ...return unaltered array\n return { data: [sorted], config, info: { records: sorted.length, pageTotal: 1 } };\n }\n // return record set\n return {\n data: chunk(sorted, +config.pagination.length),\n config,\n info: {\n records: sorted.length,\n pageTotal: Math.ceil(sorted.length / +config.pagination.length),\n },\n };\n })\n );\n\n // tslint:disable-next-line:variable-name\n private _currentPage$: BehaviorSubject<any> = new BehaviorSubject(0);\n currentPage$ = this._currentPage$.pipe(\n map((value) => (isObservable(value) ? (value as Observable<number>) : (of(value) as Observable<number>))),\n switchMap((obs) => obs),\n withLatestFrom(this.table$),\n map(([page, table]: any) => {\n // determine last page\n const lastPage = Math.ceil(table.info.records / table.config.pagination.length) - 1;\n // determine max/min position\n return +page < 0 ? 0 : +page > lastPage ? lastPage : +page;\n }),\n shareReplay(1)\n );\n\n sort(property: string): void {\n const newSortOrder =\n this._sortBy?.sortBy !== property || this._sortBy?.sortByOrder === Order.DESC || !this._sortBy.sortByOrder\n ? Order.ASC\n : Order.DESC;\n const newSortBy = {\n sortBy: property,\n sortByOrder: newSortOrder,\n };\n this.sortBy$.next(newSortBy);\n this._sortBy = newSortBy;\n }\n\n columnOrder = (a: KeyValue<string, TableColumn>, b: KeyValue<string, TableColumn>): number => {\n return (a.value.order || 0) - (b.value.order || 0);\n };\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { Order } from '../enums/order.enum';\n\n@Pipe({\n name: 'sortClass',\n})\nexport class SortClassPipe implements PipeTransform {\n transform(selection: { sortBy: string; sortByOrder: Order } | any, property: string): string {\n return selection?.sortBy === property ? 'sort-' + selection.sortByOrder : '';\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { dashed } from '../utilities/utilities';\n\n@Pipe({\n name: 'dashCase'\n})\nexport class DashCasePipe implements PipeTransform {\n transform(s: string): any {\n return dashed(s);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'highlight'\n})\nexport class HighlightPipe implements PipeTransform {\n transform(text: any, searchTerm: string | null): string {\n if (!searchTerm) {\n return text;\n }\n const haystackAlwaysString = text + '';\n let highlightedText = haystackAlwaysString; // fallback\n\n let searchPattern;\n try {\n searchPattern = new RegExp(\n '(' +\n // @ts-ignore\n searchTerm\n .toLowerCase()\n .match(/\".*?\"|[^ ]+/g) // extract words\n .map(\n needle => needle.replace(/\"(.*?)\"/, '$1') // strip away '\"'\n )\n .join('|') + // combine words\n ')',\n 'ig'\n );\n } catch (error) {\n return highlightedText;\n }\n\n const containsTagPattern = /(<.*?>)(.*)(<\\/.*?>)/gi;\n const containsTagMatches = containsTagPattern.exec(haystackAlwaysString);\n\n if (containsTagMatches) {\n // tag exists in haystack\n highlightedText =\n containsTagMatches[1] +\n containsTagMatches[2].replace(searchPattern, '<span class=\"gt-highlight-search\">$1</span>') +\n containsTagMatches[3];\n } else {\n highlightedText = haystackAlwaysString.replace(searchPattern, '<span class=\"gt-highlight-search\">$1</span>');\n }\n\n return highlightedText;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CoreComponent } from './core.component';\nimport { CommonModule } from '@angular/common';\nimport { SortClassPipe } from './pipes/sort-class.pipe';\nimport { DashCasePipe } from './pipes/dash-case.pipe';\nimport { HighlightPipe } from './pipes/highlight.pipe';\n\n@NgModule({\n declarations: [CoreComponent, SortClassPipe, DashCasePipe, HighlightPipe],\n imports: [CommonModule],\n exports: [CoreComponent]\n})\nexport class GenericTableCoreModule {}\n"]}
@@ -1,8 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- export { DashCasePipe as ɵb } from './lib/pipes/dash-case.pipe';
6
- export { HighlightPipe as ɵc } from './lib/pipes/highlight.pipe';
7
- export { SortClassPipe as ɵa } from './lib/pipes/sort-class.pipe';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1nZW5lcmljLXRhYmxlLWNvcmUuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvIiwic291cmNlcyI6WyJhbmd1bGFyLWdlbmVyaWMtdGFibGUtY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGFBQWEsSUFBSSxFQUFFLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxNQUFNLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0Rhc2hDYXNlUGlwZSBhcyDJtWJ9IGZyb20gJy4vbGliL3BpcGVzL2Rhc2gtY2FzZS5waXBlJztcbmV4cG9ydCB7SGlnaGxpZ2h0UGlwZSBhcyDJtWN9IGZyb20gJy4vbGliL3BpcGVzL2hpZ2hsaWdodC5waXBlJztcbmV4cG9ydCB7U29ydENsYXNzUGlwZSBhcyDJtWF9IGZyb20gJy4vbGliL3BpcGVzL3NvcnQtY2xhc3MucGlwZSc7Il19
@@ -1,107 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
- import { BehaviorSubject, combineLatest, EMPTY, isObservable, of, ReplaySubject, Subject } from 'rxjs';
3
- import { map, shareReplay, startWith, switchMap, withLatestFrom } from 'rxjs/operators';
4
- import { Order } from './enums/order.enum';
5
- import { chunk, search } from './utilities/utilities';
6
- export class CoreComponent {
7
- constructor() {
8
- this.loading$ = of(false);
9
- this.sortBy$ = new Subject();
10
- // tslint:disable-next-line:variable-name
11
- this._searchBy$ = new ReplaySubject(1);
12
- this.searchBy$ = this._searchBy$.pipe(startWith(''), map((value) => (isObservable(value) ? value : of(value))), switchMap((obs) => obs), shareReplay(1));
13
- // tslint:disable-next-line:variable-name
14
- this._tableConfig$ = new ReplaySubject(1);
15
- this.tableConfig$ = this._tableConfig$.pipe(map((value) => (isObservable(value) ? value : of(value))), switchMap((obs) => obs), shareReplay(1));
16
- // tslint:disable-next-line:variable-name
17
- this._data$ = new ReplaySubject(1);
18
- this.data$ = this._data$.pipe(map((value) => (isObservable(value) ? value : of(value))), switchMap((obs) => combineLatest([obs, this.sortBy$.pipe(startWith(EMPTY)), this.searchBy$])), withLatestFrom(this.tableConfig$), map(([[data, sortBy, searchBy], config]) => {
19
- return !sortBy
20
- ? searchBy
21
- ? search(searchBy, false, data, config)
22
- : data
23
- : (searchBy ? search(searchBy, false, data, config) : data).sort((a, b) => {
24
- // TODO: improve logic
25
- const typed = sortBy;
26
- return a[typed.sortBy] > b[typed.sortBy]
27
- ? typed.sortByOrder === Order.ASC
28
- ? 1
29
- : -1
30
- : b[typed.sortBy] > a[typed.sortBy]
31
- ? typed.sortByOrder === Order.ASC
32
- ? -1
33
- : 1
34
- : 0;
35
- });
36
- }));
37
- this.table$ = combineLatest([
38
- this.data$,
39
- this.tableConfig$,
40
- ]).pipe(map(([sorted, config]) => {
41
- // if pagination is disabled...
42
- if (!config.pagination || config.pagination.length === 0) {
43
- // ...return unaltered array
44
- return { data: [sorted], config, info: { records: sorted.length, pageTotal: 1 } };
45
- }
46
- // return record set
47
- return {
48
- data: chunk(sorted, +config.pagination.length),
49
- config,
50
- info: {
51
- records: sorted.length,
52
- pageTotal: Math.ceil(sorted.length / +config.pagination.length),
53
- },
54
- };
55
- }));
56
- // tslint:disable-next-line:variable-name
57
- this._currentPage$ = new BehaviorSubject(0);
58
- this.currentPage$ = this._currentPage$.pipe(map((value) => (isObservable(value) ? value : of(value))), switchMap((obs) => obs), withLatestFrom(this.table$), map(([page, table]) => {
59
- // determine last page
60
- const lastPage = Math.ceil(table.info.records / table.config.pagination.length) - 1;
61
- // determine max/min position
62
- return +page < 0 ? 0 : +page > lastPage ? lastPage : +page;
63
- }), shareReplay(1));
64
- this.columnOrder = (a, b) => {
65
- return (a.value.order || 0) - (b.value.order || 0);
66
- };
67
- }
68
- set page(value) {
69
- this._currentPage$.next(value);
70
- }
71
- set search(value) {
72
- this._searchBy$.next(value);
73
- }
74
- set config(value) {
75
- this._tableConfig$.next(value);
76
- }
77
- set data(value) {
78
- this._data$.next(value);
79
- }
80
- sort(property) {
81
- var _a, _b;
82
- const newSortOrder = ((_a = this._sortBy) === null || _a === void 0 ? void 0 : _a.sortBy) !== property || ((_b = this._sortBy) === null || _b === void 0 ? void 0 : _b.sortByOrder) === Order.DESC || !this._sortBy.sortByOrder
83
- ? Order.ASC
84
- : Order.DESC;
85
- const newSortBy = {
86
- sortBy: property,
87
- sortByOrder: newSortOrder,
88
- };
89
- this.sortBy$.next(newSortBy);
90
- this._sortBy = newSortBy;
91
- }
92
- }
93
- CoreComponent.decorators = [
94
- { type: Component, args: [{
95
- selector: 'angular-generic-table',
96
- template: "<table class=\"table text-nowrap mb-0\" id=\"agreementList_table\">\n <thead>\n <tr>\n <ng-container *ngFor=\"let column of (tableConfig$ | async)!.columns | keyvalue: columnOrder\">\n <th\n *ngIf=\"!column.value?.hidden\"\n ngClass=\"{{ column.value?.sortable ? 'sort ' : '' }} {{ sortBy$ | async | sortClass: column.key }} {{\n (column.key | dashCase) + '-column'\n }}\"\n [class.disabled]=\"loading$ | async\"\n (click)=\"!column.value.sortable || sort(column.key)\"\n >\n <span>{{ column.value?.header || column.key }}</span>\n </th>\n </ng-container>\n </tr>\n </thead>\n <tbody *ngIf=\"false !== false; else tableContent\">\n <tr>\n <!-- <td class=\"p-0\" [colSpan]=\"colspan$ | async\">-->\n <td class=\"p-0\">\n <div class=\"skeleton-loader skeleton-loader-table\"></div>\n </td>\n </tr>\n </tbody>\n</table>\n<ng-template #tableContent>\n <ng-container\n *ngIf=\"(table$ | async)! as table\"\n >\n <tbody id=\"agreementList_tableContent\" *ngIf=\"table!.data!.length > 0; else noData\">\n <tr *ngFor=\"let row of table!.data![(currentPage$ | async) || 0]; let i = index\" [attr.id]=\"'tableRow_' + i\">\n <ng-container *ngFor=\"let column of table.config?.columns | keyvalue: columnOrder\">\n <td *ngIf=\"!column.value?.hidden\">\n <!--<ng-container *ngIf=\"column.value.template === 'actions'\">\n <ng-container\n *ngTemplateOutlet=\"actionsColumn; context: { agreement: agreement, index: i }\"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"column.value.template === 'date'\">\n <ng-container\n *ngTemplateOutlet=\"dateColumn; context: { agreement: agreement, column: column.key }\"\n ></ng-container>\n </ng-container>\n <ng-container *ngIf=\"column.value.template === 'name'\">\n <ng-container *ngTemplateOutlet=\"nameColumn; context: { agreement: agreement }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"column.value.template === 'badge'\">\n <ng-container *ngTemplateOutlet=\"badgeColumn; context: { agreement: agreement }\"></ng-container>\n </ng-container>-->\n <ng-container [ngTemplateOutlet]=\"(searchBy$ | async) && !table.config.columns[column.key].templateRef ? highlighted:\n table.config.columns[column.key].templateRef ? templateRef :\n rawData\" [ngTemplateOutletContext]=\"{row: row, column: column, search: (searchBy$ | async), templateRef: table.config.columns[column.key].templateRef, index: i}\"></ng-container></td>\n </ng-container>\n </tr>\n </tbody>\n </ng-container>\n</ng-template>\n<ng-template #noData></ng-template>\n<ng-template #highlighted let-row=\"row\" let-column=\"column\" let-search=\"search\">\n <div [innerHTML]=\"(row[column.key] | highlight: search)\"></div>\n</ng-template>\n<ng-template #rawData let-row=\"row\" let-column=\"column\">\n {{row[column.key]}}\n</ng-template>\n<ng-template #templateRef let-row=\"row\" let-column=\"column\" let-index=\"index\" let-templateRef=\"templateRef\">\n <ng-container [ngTemplateOutlet]=\"templateRef\" [ngTemplateOutletContext]=\"{row: row, col: column, index: index}\"></ng-container>\n</ng-template>\n",
97
- changeDetection: ChangeDetectionStrategy.OnPush
98
- },] }
99
- ];
100
- CoreComponent.ctorParameters = () => [];
101
- CoreComponent.propDecorators = {
102
- page: [{ type: Input }],
103
- search: [{ type: Input }],
104
- config: [{ type: Input }],
105
- data: [{ type: Input }]
106
- };
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvIiwic291cmNlcyI6WyJsaWIvY29yZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBYyxFQUFFLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUduSCxPQUFPLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXhGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBV3RELE1BQU0sT0FBTyxhQUFhO0lBb0J4QjtRQUVBLGFBQVEsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsWUFBTyxHQUF1QixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBSTVDLHlDQUF5QztRQUNqQyxlQUFVLEdBQStDLElBQUksYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RGLGNBQVMsR0FBdUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ2xELFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFDYixHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ3pELFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEVB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R0FDaEIsT0FBQSxJQUFJLENBQUMsT0FBTywwQ0FBRSxNQUFNLE1BQUssUUFBUSxJQUFJLE9BQUEsSUFBSSxDQUFDLE9BQU8sMENBQUUsV0FBVyxNQUFLLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVc7WUFDeEcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHO1lBQ1gsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDakIsTUFBTSxTQUFTLEdBQUc7WUFDaEIsTUFBTSxFQUFFLFFBQVE7WUFDaEIsV0FBVyxFQUFFLFlBQVk7U0FDMUIsQ0FBQztRQUNGLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDO0lBQzNCLENBQUM7OztZQTdIRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtnQkFDakMsODFHQUFvQztnQkFFcEMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07YUFDaEQ7Ozs7bUJBRUUsS0FBSztxQkFLTCxLQUFLO3FCQUtMLEtBQUs7bUJBS0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIEVNUFRZLCBpc09ic2VydmFibGUsIE9ic2VydmFibGUsIG9mLCBSZXBsYXlTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUYWJsZUNvbmZpZyB9IGZyb20gJy4vbW9kZWxzL3RhYmxlLWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgS2V5VmFsdWUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgbWFwLCBzaGFyZVJlcGxheSwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHdpdGhMYXRlc3RGcm9tIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVGFibGVDb2x1bW4gfSBmcm9tICcuL21vZGVscy90YWJsZS1jb2x1bW4uaW50ZXJmYWNlJztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9lbnVtcy9vcmRlci5lbnVtJztcbmltcG9ydCB7IGNodW5rLCBzZWFyY2ggfSBmcm9tICcuL3V0aWxpdGllcy91dGlsaXRpZXMnO1xuaW1wb3J0IHsgVGFibGVSb3cgfSBmcm9tICcuL21vZGVscy90YWJsZS1yb3cuaW50ZXJmYWNlJztcbmltcG9ydCB7IFRhYmxlU29ydCB9IGZyb20gJy4vbW9kZWxzL3RhYmxlLXNvcnQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFRhYmxlSW5mbyB9IGZyb20gJy4vbW9kZWxzL3RhYmxlLWluZm8uaW50ZXJmYWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYW5ndWxhci1nZW5lcmljLXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvcmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZXM6IFtdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQ29yZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIHNldCBwYWdlKHZhbHVlOiBPYnNlcnZhYmxlPG51bWJlcj4gfCBudW1iZXIpIHtcbiAgICB0aGlzLl9jdXJyZW50UGFnZSQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgc2VhcmNoKHZhbHVlOiBPYnNlcnZhYmxlPHN0cmluZz4gfCBzdHJpbmcpIHtcbiAgICB0aGlzLl9zZWFyY2hCeSQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgY29uZmlnKHZhbHVlOiBPYnNlcnZhYmxlPFRhYmxlQ29uZmlnPiB8IFRhYmxlQ29uZmlnKSB7XG4gICAgdGhpcy5fdGFibGVDb25maWckLm5leHQodmFsdWUpO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IGRhdGEodmFsdWU6IE9ic2VydmFibGU8QXJyYXk8VGFibGVSb3c+PiB8IEFycmF5PFRhYmxlUm93Pikge1xuICAgIHRoaXMuX2RhdGEkLm5leHQodmFsdWUpO1xuICB9XG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBsb2FkaW5nJCA9IG9mKGZhbHNlKTtcbiAgc29ydEJ5JDogU3ViamVjdDxUYWJsZVNvcnQ+ID0gbmV3IFN1YmplY3QoKTtcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnZhcmlhYmxlLW5hbWVcbiAgcHJpdmF0ZSBfc29ydEJ5OiBUYWJsZVNvcnQgfCB1bmRlZmluZWQ7XG5cbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnZhcmlhYmxlLW5hbWVcbiAgcHJpdmF0ZSBfc2VhcmNoQnkkOiBSZXBsYXlTdWJqZWN0PE9ic2VydmFibGU8c3RyaW5nPiB8IHN0cmluZz4gPSBuZXcgUmVwbGF5U3ViamVjdCgxKTtcbiAgc2VhcmNoQnkkOiBPYnNlcnZhYmxlPHN0cmluZz4gPSB0aGlzLl9zZWFyY2hCeSQucGlwZShcbiAgICBzdGFydFdpdGgoJycpLFxuICAgIG1hcCgodmFsdWUpID0+IChpc09ic2VydmFibGUodmFsdWUpID8gdmFsdWUgOiBvZih2YWx1ZSkpKSxcbiAgICBzd2l0Y2hNYXAoKG9icykgPT4gb2JzKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTp2YXJpYWJsZS1uYW1lXG4gIHByaXZhdGUgX3RhYmxlQ29uZmlnJDogUmVwbGF5U3ViamVjdDxUYWJsZUNvbmZpZyB8IE9ic2VydmFibGU8VGFibGVDb25maWc+PiA9IG5ldyBSZXBsYXlTdWJqZWN0KDEpO1xuICB0YWJsZUNvbmZpZyQ6IE9ic2VydmFibGU8VGFibGVDb25maWc+ID0gdGhpcy5fdGFibGVDb25maWckLnBpcGUoXG4gICAgbWFwKCh2YWx1ZSkgPT4gKGlzT2JzZXJ2YWJsZSh2YWx1ZSkgPyB2YWx1ZSA6IG9mKHZhbHVlKSkpLFxuICAgIHN3aXRjaE1hcCgob2JzKSA9PiBvYnMpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnZhcmlhYmxlLW5hbWVcbiAgcHJpdmF0ZSBfZGF0YSQ6IFJlcGxheVN1YmplY3Q8QXJyYXk8VGFibGVSb3c+IHwgT2JzZXJ2YWJsZTxBcnJheTxUYWJsZVJvdz4+PiA9IG5ldyBSZXBsYXlTdWJqZWN0KDEpO1xuICBkYXRhJDogT2JzZXJ2YWJsZTxBcnJheTxUYWJsZVJvdz4+ID0gdGhpcy5fZGF0YSQucGlwZShcbiAgICBtYXAoKHZhbHVlKSA9PiAoaXNPYnNlcnZhYmxlKHZhbHVlKSA/IHZhbHVlIDogb2YodmFsdWUpKSksXG4gICAgc3dpdGNoTWFwKChvYnMpID0+IGNvbWJpbmVMYXRlc3QoW29icywgdGhpcy5zb3J0QnkkLnBpcGUoc3RhcnRXaXRoKEVNUFRZKSksIHRoaXMuc2VhcmNoQnkkXSkpLFxuICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMudGFibGVDb25maWckKSxcbiAgICBtYXAoKFtbZGF0YSwgc29ydEJ5LCBzZWFyY2hCeV0sIGNvbmZpZ10pID0+IHtcbiAgICAgIHJldHVybiAhc29ydEJ5XG4gICAgICAgID8gc2VhcmNoQnlcbiAgICAgICAgICA/IHNlYXJjaChzZWFyY2hCeSwgZmFsc2UsIGRhdGEsIGNvbmZpZylcbiAgICAgICAgICA6IGRhdGFcbiAgICAgICAgOiAoc2VhcmNoQnkgPyBzZWFyY2goc2VhcmNoQnksIGZhbHNlLCBkYXRhLCBjb25maWcpIDogZGF0YSkuc29ydCgoYSwgYikgPT4ge1xuICAgICAgICAgICAgLy8gVE9ETzogaW1wcm92ZSBsb2dpY1xuICAgICAgICAgICAgY29uc3QgdHlwZWQgPSBzb3J0QnkgYXMgVGFibGVTb3J0O1xuICAgICAgICAgICAgcmV0dXJuIGFbdHlwZWQuc29ydEJ5XSA+IGJbdHlwZWQuc29ydEJ5XVxuICAgICAgICAgICAgICA/IHR5cGVkLnNvcnRCeU9yZGVyID09PSBPcmRlci5BU0NcbiAgICAgICAgICAgICAgICA/IDFcbiAgICAgICAgICAgICAgICA6IC0xXG4gICAgICAgICAgICAgIDogYlt0eXBlZC5zb3J0QnldID4gYVt0eXBlZC5zb3J0QnldXG4gICAgICAgICAgICAgID8gdHlwZWQuc29ydEJ5T3JkZXIgPT09IE9yZGVyLkFTQ1xuICAgICAgICAgICAgICAgID8gLTFcbiAgICAgICAgICAgICAgICA6IDFcbiAgICAgICAgICAgICAgOiAwO1xuICAgICAgICAgIH0pO1xuICAgIH0pXG4gICk7XG5cbiAgdGFibGUkOiBPYnNlcnZhYmxlPHsgZGF0YTogQXJyYXk8QXJyYXk8VGFibGVSb3c+PjsgY29uZmlnOiBUYWJsZUNvbmZpZzsgaW5mbzogVGFibGVJbmZvIH0+ID0gY29tYmluZUxhdGVzdChbXG4gICAgdGhpcy5kYXRhJCxcbiAgICB0aGlzLnRhYmxlQ29uZmlnJCxcbiAgXSkucGlwZShcbiAgICBtYXAoKFtzb3J0ZWQsIGNvbmZpZ10pID0+IHtcbiAgICAgIC8vIGlmIHBhZ2luYXRpb24gaXMgZGlzYWJsZWQuLi5cbiAgICAgIGlmICghY29uZmlnLnBhZ2luYXRpb24gfHwgY29uZmlnLnBhZ2luYXRpb24ubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIC8vIC4uLnJldHVybiB1bmFsdGVyZWQgYXJyYXlcbiAgICAgICAgcmV0dXJuIHsgZGF0YTogW3NvcnRlZF0sIGNvbmZpZywgaW5mbzogeyByZWNvcmRzOiBzb3J0ZWQubGVuZ3RoLCBwYWdlVG90YWw6IDEgfSB9O1xuICAgICAgfVxuICAgICAgLy8gcmV0dXJuIHJlY29yZCBzZXRcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGRhdGE6IGNodW5rKHNvcnRlZCwgK2NvbmZpZy5wYWdpbmF0aW9uLmxlbmd0aCksXG4gICAgICAgIGNvbmZpZyxcbiAgICAgICAgaW5mbzoge1xuICAgICAgICAgIHJlY29yZHM6IHNvcnRlZC5sZW5ndGgsXG4gICAgICAgICAgcGFnZVRvdGFsOiBNYXRoLmNlaWwoc29ydGVkLmxlbmd0aCAvICtjb25maWcucGFnaW5hdGlvbi5sZW5ndGgpLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9KVxuICApO1xuXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTp2YXJpYWJsZS1uYW1lXG4gIHByaXZhdGUgX2N1cnJlbnRQYWdlJDogQmVoYXZpb3JTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KDApO1xuICBjdXJyZW50UGFnZSQgPSB0aGlzLl9jdXJyZW50UGFnZSQucGlwZShcbiAgICBtYXAoKHZhbHVlKSA9PiAoaXNPYnNlcnZhYmxlKHZhbHVlKSA/ICh2YWx1ZSBhcyBPYnNlcnZhYmxlPG51bWJlcj4pIDogKG9mKHZhbHVlKSBhcyBPYnNlcnZhYmxlPG51bWJlcj4pKSksXG4gICAgc3dpdGNoTWFwKChvYnMpID0+IG9icyksXG4gICAgd2l0aExhdGVzdEZyb20odGhpcy50YWJsZSQpLFxuICAgIG1hcCgoW3BhZ2UsIHRhYmxlXTogYW55KSA9PiB7XG4gICAgICAvLyBkZXRlcm1pbmUgbGFzdCBwYWdlXG4gICAgICBjb25zdCBsYXN0UGFnZSA9IE1hdGguY2VpbCh0YWJsZS5pbmZvLnJlY29yZHMgLyB0YWJsZS5jb25maWcucGFnaW5hdGlvbi5sZW5ndGgpIC0gMTtcbiAgICAgIC8vIGRldGVybWluZSBtYXgvbWluIHBvc2l0aW9uXG4gICAgICByZXR1cm4gK3BhZ2UgPCAwID8gMCA6ICtwYWdlID4gbGFzdFBhZ2UgPyBsYXN0UGFnZSA6ICtwYWdlO1xuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgc29ydChwcm9wZXJ0eTogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgbmV3U29ydE9yZGVyID1cbiAgICAgIHRoaXMuX3NvcnRCeT8uc29ydEJ5ICE9PSBwcm9wZXJ0eSB8fCB0aGlzLl9zb3J0Qnk/LnNvcnRCeU9yZGVyID09PSBPcmRlci5ERVNDIHx8ICF0aGlzLl9zb3J0Qnkuc29ydEJ5T3JkZXJcbiAgICAgICAgPyBPcmRlci5BU0NcbiAgICAgICAgOiBPcmRlci5ERVNDO1xuICAgIGNvbnN0IG5ld1NvcnRCeSA9IHtcbiAgICAgIHNvcnRCeTogcHJvcGVydHksXG4gICAgICBzb3J0QnlPcmRlcjogbmV3U29ydE9yZGVyLFxuICAgIH07XG4gICAgdGhpcy5zb3J0QnkkLm5leHQobmV3U29ydEJ5KTtcbiAgICB0aGlzLl9zb3J0QnkgPSBuZXdTb3J0Qnk7XG4gIH1cblxuICBjb2x1bW5PcmRlciA9IChhOiBLZXlWYWx1ZTxzdHJpbmcsIFRhYmxlQ29sdW1uPiwgYjogS2V5VmFsdWU8c3RyaW5nLCBUYWJsZUNvbHVtbj4pOiBudW1iZXIgPT4ge1xuICAgIHJldHVybiAoYS52YWx1ZS5vcmRlciB8fCAwKSAtIChiLnZhbHVlLm9yZGVyIHx8IDApO1xuICB9O1xufVxuIl19
@@ -1,16 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CoreComponent } from './core.component';
3
- import { CommonModule } from '@angular/common';
4
- import { SortClassPipe } from './pipes/sort-class.pipe';
5
- import { DashCasePipe } from './pipes/dash-case.pipe';
6
- import { HighlightPipe } from './pipes/highlight.pipe';
7
- export class GenericTableCoreModule {
8
- }
9
- GenericTableCoreModule.decorators = [
10
- { type: NgModule, args: [{
11
- declarations: [CoreComponent, SortClassPipe, DashCasePipe, HighlightPipe],
12
- imports: [CommonModule],
13
- exports: [CoreComponent]
14
- },] }
15
- ];
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvIiwic291cmNlcyI6WyJsaWIvY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBT3ZELE1BQU0sT0FBTyxzQkFBc0I7OztZQUxsQyxRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsYUFBYSxDQUFDO2dCQUN6RSxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7Z0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQzthQUN6QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb3JlQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU29ydENsYXNzUGlwZSB9IGZyb20gJy4vcGlwZXMvc29ydC1jbGFzcy5waXBlJztcbmltcG9ydCB7IERhc2hDYXNlUGlwZSB9IGZyb20gJy4vcGlwZXMvZGFzaC1jYXNlLnBpcGUnO1xuaW1wb3J0IHsgSGlnaGxpZ2h0UGlwZSB9IGZyb20gJy4vcGlwZXMvaGlnaGxpZ2h0LnBpcGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtDb3JlQ29tcG9uZW50LCBTb3J0Q2xhc3NQaXBlLCBEYXNoQ2FzZVBpcGUsIEhpZ2hsaWdodFBpcGVdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgZXhwb3J0czogW0NvcmVDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIEdlbmVyaWNUYWJsZUNvcmVNb2R1bGUge31cbiJdfQ==
@@ -1,13 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class CoreService {
4
- constructor() { }
5
- }
6
- CoreService.ɵprov = i0.ɵɵdefineInjectable({ factory: function CoreService_Factory() { return new CoreService(); }, token: CoreService, providedIn: "root" });
7
- CoreService.decorators = [
8
- { type: Injectable, args: [{
9
- providedIn: 'root'
10
- },] }
11
- ];
12
- CoreService.ctorParameters = () => [];
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvcmUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sV0FBVztJQUN0QixnQkFBZSxDQUFDOzs7O1lBSmpCLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ29yZVNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHt9XG59XG4iXX0=
@@ -1,6 +0,0 @@
1
- export var Order;
2
- (function (Order) {
3
- Order["ASC"] = "asc";
4
- Order["DESC"] = "desc";
5
- })(Order || (Order = {}));
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXIuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9lbnVtcy9vcmRlci5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLEtBR1g7QUFIRCxXQUFZLEtBQUs7SUFDZixvQkFBVyxDQUFBO0lBQ1gsc0JBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxLQUFLLEtBQUwsS0FBSyxRQUdoQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIE9yZGVyIHtcbiAgQVNDID0gJ2FzYycsXG4gIERFU0MgPSAnZGVzYydcbn1cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvdGFibGUtY29sdW1uLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBUYWJsZUNvbHVtbiB7XG4gIGhlYWRlcj86IHN0cmluZztcbiAgaGlkZGVuPzogYm9vbGVhbjtcbiAgc29ydGFibGU/OiBib29sZWFuO1xuICBvcmRlcj86IG51bWJlcjtcbiAgc2VhcmNoPzogYm9vbGVhbjtcbiAgdGVtcGxhdGVSZWY/OiBUZW1wbGF0ZVJlZjxhbnk+O1xufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29uZmlnLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvdGFibGUtY29uZmlnLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFibGVDb2x1bW4gfSBmcm9tICcuL3RhYmxlLWNvbHVtbi5pbnRlcmZhY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlQ29uZmlnIHtcbiAgaGlkZGVuPzogYm9vbGVhbjtcbiAgY29sdW1uczoge1xuICAgIFtrZXk6IHN0cmluZ106IFRhYmxlQ29sdW1uO1xuICB9O1xuICBwYWdpbmF0aW9uOiB7XG4gICAgbGVuZ3RoOiBudW1iZXI7XG4gIH07XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtaW5mby5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL3RhYmxlLWluZm8uaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFRhYmxlSW5mbyB7XG4gIHJlY29yZHM6IG51bWJlcjtcbiAgcGFnZVRvdGFsOiBudW1iZXI7XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtcm93LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvdGFibGUtcm93LmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBUYWJsZVJvdyB7XG4gIFtrZXk6IHN0cmluZ106IG51bWJlciB8IHN0cmluZyB8IGJvb2xlYW4gfCBhbnk7XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtc29ydC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL3RhYmxlLXNvcnQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPcmRlciB9IGZyb20gJy4uL2VudW1zL29yZGVyLmVudW0nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRhYmxlU29ydCB7XG4gIHNvcnRCeTogc3RyaW5nO1xuICBzb3J0QnlPcmRlcjogT3JkZXI7XG59XG4iXX0=
@@ -1,13 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import { dashed } from '../utilities/utilities';
3
- export class DashCasePipe {
4
- transform(s) {
5
- return dashed(s);
6
- }
7
- }
8
- DashCasePipe.decorators = [
9
- { type: Pipe, args: [{
10
- name: 'dashCase'
11
- },] }
12
- ];
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaC1jYXNlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvIiwic291cmNlcyI6WyJsaWIvcGlwZXMvZGFzaC1jYXNlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBS2hELE1BQU0sT0FBTyxZQUFZO0lBQ3ZCLFNBQVMsQ0FBQyxDQUFTO1FBQ2pCLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25CLENBQUM7OztZQU5GLElBQUksU0FBQztnQkFDSixJQUFJLEVBQUUsVUFBVTthQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGRhc2hlZCB9IGZyb20gJy4uL3V0aWxpdGllcy91dGlsaXRpZXMnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdkYXNoQ2FzZSdcbn0pXG5leHBvcnQgY2xhc3MgRGFzaENhc2VQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybShzOiBzdHJpbmcpOiBhbnkge1xuICAgIHJldHVybiBkYXNoZWQocyk7XG4gIH1cbn1cbiJdfQ==
@@ -1,44 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- export class HighlightPipe {
3
- transform(text, searchTerm) {
4
- if (!searchTerm) {
5
- return text;
6
- }
7
- const haystackAlwaysString = text + '';
8
- let highlightedText = haystackAlwaysString; // fallback
9
- let searchPattern;
10
- try {
11
- searchPattern = new RegExp('(' +
12
- // @ts-ignore
13
- searchTerm
14
- .toLowerCase()
15
- .match(/".*?"|[^ ]+/g) // extract words
16
- .map(needle => needle.replace(/"(.*?)"/, '$1') // strip away '"'
17
- )
18
- .join('|') + // combine words
19
- ')', 'ig');
20
- }
21
- catch (error) {
22
- return highlightedText;
23
- }
24
- const containsTagPattern = /(<.*?>)(.*)(<\/.*?>)/gi;
25
- const containsTagMatches = containsTagPattern.exec(haystackAlwaysString);
26
- if (containsTagMatches) {
27
- // tag exists in haystack
28
- highlightedText =
29
- containsTagMatches[1] +
30
- containsTagMatches[2].replace(searchPattern, '<span class="gt-highlight-search">$1</span>') +
31
- containsTagMatches[3];
32
- }
33
- else {
34
- highlightedText = haystackAlwaysString.replace(searchPattern, '<span class="gt-highlight-search">$1</span>');
35
- }
36
- return highlightedText;
37
- }
38
- }
39
- HighlightPipe.decorators = [
40
- { type: Pipe, args: [{
41
- name: 'highlight'
42
- },] }
43
- ];
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LnBpcGUuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvIiwic291cmNlcyI6WyJsaWIvcGlwZXMvaGlnaGxpZ2h0LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFLcEQsTUFBTSxPQUFPLGFBQWE7SUFDeEIsU0FBUyxDQUFDLElBQVMsRUFBRSxVQUF5QjtRQUM1QyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2YsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN2QyxJQUFJLGVBQWUsR0FBRyxvQkFBb0IsQ0FBQyxDQUFDLFdBQVc7UUFFdkQsSUFBSSxhQUFhLENBQUM7UUFDbEIsSUFBSTtZQUNGLGFBQWEsR0FBRyxJQUFJLE1BQU0sQ0FDeEIsR0FBRztnQkFDSCxhQUFhO2dCQUNiLFVBQVU7cUJBQ1AsV0FBVyxFQUFFO3FCQUNiLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxnQkFBZ0I7cUJBQ3RDLEdBQUcsQ0FDRixNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLGlCQUFpQjtpQkFDNUQ7cUJBQ0EsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLGdCQUFnQjtnQkFDN0IsR0FBRyxFQUNMLElBQUksQ0FDTCxDQUFDO1NBQ0g7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE9BQU8sZUFBZSxDQUFDO1NBQ3hCO1FBRUQsTUFBTSxrQkFBa0IsR0FBRyx3QkFBd0IsQ0FBQztRQUNwRCxNQUFNLGtCQUFrQixHQUFHLGtCQUFrQixDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRXpFLElBQUksa0JBQWtCLEVBQUU7WUFDdEIseUJBQXlCO1lBQ3pCLGVBQWU7Z0JBQ2Isa0JBQWtCLENBQUMsQ0FBQyxDQUFDO29CQUNyQixrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLDZDQUE2QyxDQUFDO29CQUMzRixrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN6QjthQUFNO1lBQ0wsZUFBZSxHQUFHLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsNkNBQTZDLENBQUMsQ0FBQztTQUM5RztRQUVELE9BQU8sZUFBZSxDQUFDO0lBQ3pCLENBQUM7OztZQTVDRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLFdBQVc7YUFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ2hpZ2hsaWdodCdcbn0pXG5leHBvcnQgY2xhc3MgSGlnaGxpZ2h0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0odGV4dDogYW55LCBzZWFyY2hUZXJtOiBzdHJpbmcgfCBudWxsKTogc3RyaW5nIHtcbiAgICBpZiAoIXNlYXJjaFRlcm0pIHtcbiAgICAgIHJldHVybiB0ZXh0O1xuICAgIH1cbiAgICBjb25zdCBoYXlzdGFja0Fsd2F5c1N0cmluZyA9IHRleHQgKyAnJztcbiAgICBsZXQgaGlnaGxpZ2h0ZWRUZXh0ID0gaGF5c3RhY2tBbHdheXNTdHJpbmc7IC8vIGZhbGxiYWNrXG5cbiAgICBsZXQgc2VhcmNoUGF0dGVybjtcbiAgICB0cnkge1xuICAgICAgc2VhcmNoUGF0dGVybiA9IG5ldyBSZWdFeHAoXG4gICAgICAgICcoJyArXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgc2VhcmNoVGVybVxuICAgICAgICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgLm1hdGNoKC9cIi4qP1wifFteIF0rL2cpIC8vIGV4dHJhY3Qgd29yZHNcbiAgICAgICAgICAubWFwKFxuICAgICAgICAgICAgbmVlZGxlID0+IG5lZWRsZS5yZXBsYWNlKC9cIiguKj8pXCIvLCAnJDEnKSAvLyBzdHJpcCBhd2F5ICdcIidcbiAgICAgICAgICApXG4gICAgICAgICAgLmpvaW4oJ3wnKSArIC8vIGNvbWJpbmUgd29yZHNcbiAgICAgICAgICAnKScsXG4gICAgICAgICdpZydcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHJldHVybiBoaWdobGlnaHRlZFRleHQ7XG4gICAgfVxuXG4gICAgY29uc3QgY29udGFpbnNUYWdQYXR0ZXJuID0gLyg8Lio/PikoLiopKDxcXC8uKj8+KS9naTtcbiAgICBjb25zdCBjb250YWluc1RhZ01hdGNoZXMgPSBjb250YWluc1RhZ1BhdHRlcm4uZXhlYyhoYXlzdGFja0Fsd2F5c1N0cmluZyk7XG5cbiAgICBpZiAoY29udGFpbnNUYWdNYXRjaGVzKSB7XG4gICAgICAvLyB0YWcgZXhpc3RzIGluIGhheXN0YWNrXG4gICAgICBoaWdobGlnaHRlZFRleHQgPVxuICAgICAgICBjb250YWluc1RhZ01hdGNoZXNbMV0gK1xuICAgICAgICBjb250YWluc1RhZ01hdGNoZXNbMl0ucmVwbGFjZShzZWFyY2hQYXR0ZXJuLCAnPHNwYW4gY2xhc3M9XCJndC1oaWdobGlnaHQtc2VhcmNoXCI+JDE8L3NwYW4+JykgK1xuICAgICAgICBjb250YWluc1RhZ01hdGNoZXNbM107XG4gICAgfSBlbHNlIHtcbiAgICAgIGhpZ2hsaWdodGVkVGV4dCA9IGhheXN0YWNrQWx3YXlzU3RyaW5nLnJlcGxhY2Uoc2VhcmNoUGF0dGVybiwgJzxzcGFuIGNsYXNzPVwiZ3QtaGlnaGxpZ2h0LXNlYXJjaFwiPiQxPC9zcGFuPicpO1xuICAgIH1cblxuICAgIHJldHVybiBoaWdobGlnaHRlZFRleHQ7XG4gIH1cbn1cbiJdfQ==
@@ -1,12 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- export class SortClassPipe {
3
- transform(selection, property) {
4
- return (selection === null || selection === void 0 ? void 0 : selection.sortBy) === property ? 'sort-' + selection.sortByOrder : '';
5
- }
6
- }
7
- SortClassPipe.decorators = [
8
- { type: Pipe, args: [{
9
- name: 'sortClass',
10
- },] }
11
- ];
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1jbGFzcy5waXBlLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjLyIsInNvdXJjZXMiOlsibGliL3BpcGVzL3NvcnQtY2xhc3MucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQU1wRCxNQUFNLE9BQU8sYUFBYTtJQUN4QixTQUFTLENBQUMsU0FBdUQsRUFBRSxRQUFnQjtRQUNqRixPQUFPLENBQUEsU0FBUyxhQUFULFNBQVMsdUJBQVQsU0FBUyxDQUFFLE1BQU0sTUFBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDL0UsQ0FBQzs7O1lBTkYsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxXQUFXO2FBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT3JkZXIgfSBmcm9tICcuLi9lbnVtcy9vcmRlci5lbnVtJztcblxuQFBpcGUoe1xuICBuYW1lOiAnc29ydENsYXNzJyxcbn0pXG5leHBvcnQgY2xhc3MgU29ydENsYXNzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0oc2VsZWN0aW9uOiB7IHNvcnRCeTogc3RyaW5nOyBzb3J0QnlPcmRlcjogT3JkZXIgfSB8IGFueSwgcHJvcGVydHk6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHNlbGVjdGlvbj8uc29ydEJ5ID09PSBwcm9wZXJ0eSA/ICdzb3J0LScgKyBzZWxlY3Rpb24uc29ydEJ5T3JkZXIgOiAnJztcbiAgfVxufVxuIl19
@@ -1,25 +0,0 @@
1
- export let dashed;
2
- dashed = (s) => s.replace(/[A-Z]/g, m => '-' + m.toLowerCase());
3
- export let chunk;
4
- chunk = (array, chunkSize) => {
5
- if (chunkSize < 0) {
6
- throw new Error('Invalid chunk size');
7
- }
8
- if (chunkSize === 0 && !chunkSize) {
9
- return [array];
10
- }
11
- const CHUNK = [];
12
- for (let i = 0, len = array.length; i < len; i += chunkSize) {
13
- CHUNK.push(array.slice(i, i + chunkSize));
14
- }
15
- return CHUNK;
16
- };
17
- export let search;
18
- search = (text, caseSensitive, data, config) => {
19
- const searchColumns = Object.keys(config.columns).filter(key => !config.columns[key].hidden && config.columns[key].search !== false);
20
- return data.filter(row => Object.entries(row)
21
- .filter(([key, value]) => searchColumns.indexOf(key) !== -1)
22
- .reduce((prev, [key, value]) => prev + (prev === '' ? '' : ' & ') + (caseSensitive ? value + '' : (value + '').toLowerCase()), '')
23
- .indexOf(text) !== -1);
24
- };
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbGl0aWVzLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjLyIsInNvdXJjZXMiOlsibGliL3V0aWxpdGllcy91dGlsaXRpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxDQUFDLElBQUksTUFBNkIsQ0FBQztBQUN6QyxNQUFNLEdBQUcsQ0FBQyxDQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0FBRXhFLE1BQU0sQ0FBQyxJQUFJLEtBQXVFLENBQUM7QUFDbkYsS0FBSyxHQUFHLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxFQUFFO0lBQzNCLElBQUksU0FBUyxHQUFHLENBQUMsRUFBRTtRQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7S0FDdkM7SUFDRCxJQUFJLFNBQVMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7UUFDakMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQ2hCO0lBQ0QsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDO0lBQ2pCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLFNBQVMsRUFBRTtRQUMzRCxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDO0tBQzNDO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsSUFBSSxNQUF3RyxDQUFDO0FBQ3BILE1BQU0sR0FBRyxDQUFDLElBQVksRUFBRSxhQUFzQixFQUFFLElBQXFCLEVBQUUsTUFBbUIsRUFBRSxFQUFFO0lBQzVGLE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FDdEQsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FDM0UsQ0FBQztJQUNGLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FDaEIsR0FBRyxDQUFDLEVBQUUsQ0FDSixNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztTQUNoQixNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUMzRCxNQUFNLENBQ0wsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQVUsRUFBRSxDQUM3QixJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUMvRixFQUFFLENBQ0g7U0FDQSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQzFCLENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUYWJsZVJvdyB9IGZyb20gJy4uL21vZGVscy90YWJsZS1yb3cuaW50ZXJmYWNlJztcbmltcG9ydCB7IFRhYmxlQ29uZmlnIH0gZnJvbSAnLi4vbW9kZWxzL3RhYmxlLWNvbmZpZy5pbnRlcmZhY2UnO1xuXG5leHBvcnQgbGV0IGRhc2hlZDogKHM6IHN0cmluZykgPT4gc3RyaW5nO1xuZGFzaGVkID0gKHM6IHN0cmluZykgPT4gcy5yZXBsYWNlKC9bQS1aXS9nLCBtID0+ICctJyArIG0udG9Mb3dlckNhc2UoKSk7XG5cbmV4cG9ydCBsZXQgY2h1bms6IChhcnJheTogQXJyYXk8YW55PiwgY2h1bmtTaXplOiBudW1iZXIpID0+IEFycmF5PEFycmF5PFRhYmxlUm93Pj47XG5jaHVuayA9IChhcnJheSwgY2h1bmtTaXplKSA9PiB7XG4gIGlmIChjaHVua1NpemUgPCAwKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGNodW5rIHNpemUnKTtcbiAgfVxuICBpZiAoY2h1bmtTaXplID09PSAwICYmICFjaHVua1NpemUpIHtcbiAgICByZXR1cm4gW2FycmF5XTtcbiAgfVxuICBjb25zdCBDSFVOSyA9IFtdO1xuICBmb3IgKGxldCBpID0gMCwgbGVuID0gYXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpICs9IGNodW5rU2l6ZSkge1xuICAgIENIVU5LLnB1c2goYXJyYXkuc2xpY2UoaSwgaSArIGNodW5rU2l6ZSkpO1xuICB9XG4gIHJldHVybiBDSFVOSztcbn07XG5cbmV4cG9ydCBsZXQgc2VhcmNoOiAodGV4dDogc3RyaW5nLCBjYXNlU2Vuc2l0aXZlOiBib29sZWFuLCBkYXRhOiBBcnJheTxUYWJsZVJvdz4sIGNvbmZpZzogVGFibGVDb25maWcpID0+IFRhYmxlUm93W107XG5zZWFyY2ggPSAodGV4dDogc3RyaW5nLCBjYXNlU2Vuc2l0aXZlOiBib29sZWFuLCBkYXRhOiBBcnJheTxUYWJsZVJvdz4sIGNvbmZpZzogVGFibGVDb25maWcpID0+IHtcbiAgY29uc3Qgc2VhcmNoQ29sdW1ucyA9IE9iamVjdC5rZXlzKGNvbmZpZy5jb2x1bW5zKS5maWx0ZXIoXG4gICAga2V5ID0+ICFjb25maWcuY29sdW1uc1trZXldLmhpZGRlbiAmJiBjb25maWcuY29sdW1uc1trZXldLnNlYXJjaCAhPT0gZmFsc2VcbiAgKTtcbiAgcmV0dXJuIGRhdGEuZmlsdGVyKFxuICAgIHJvdyA9PlxuICAgICAgT2JqZWN0LmVudHJpZXMocm93KVxuICAgICAgICAuZmlsdGVyKChba2V5LCB2YWx1ZV0pID0+IHNlYXJjaENvbHVtbnMuaW5kZXhPZihrZXkpICE9PSAtMSlcbiAgICAgICAgLnJlZHVjZShcbiAgICAgICAgICAocHJldiwgW2tleSwgdmFsdWVdKTogc3RyaW5nID0+XG4gICAgICAgICAgICBwcmV2ICsgKHByZXYgPT09ICcnID8gJycgOiAnICYgJykgKyAoY2FzZVNlbnNpdGl2ZSA/IHZhbHVlICsgJycgOiAodmFsdWUgKyAnJykudG9Mb3dlckNhc2UoKSksXG4gICAgICAgICAgJydcbiAgICAgICAgKVxuICAgICAgICAuaW5kZXhPZih0ZXh0KSAhPT0gLTFcbiAgKTtcbn07XG4iXX0=
@@ -1,12 +0,0 @@
1
- /*
2
- * Public API Surface of core
3
- */
4
- export * from './lib/core.service';
5
- export * from './lib/core.component';
6
- export * from './lib/core.module';
7
- export * from './lib/models/table-config.interface';
8
- export * from './lib/models/table-column.interface';
9
- export * from './lib/models/table-info.interface';
10
- export * from './lib/models/table-row.interface';
11
- export * from './lib/models/table-sort.interface';
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy8iLCJzb3VyY2VzIjpbInB1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsbUNBQW1DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGNvcmVcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RhYmxlLWNvbmZpZy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RhYmxlLWNvbHVtbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RhYmxlLWluZm8uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90YWJsZS1yb3cuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90YWJsZS1zb3J0LmludGVyZmFjZSc7XG4iXX0=