@valtimo/dossier 4.15.2-next-main.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/valtimo-dossier.umd.js +1592 -0
- package/bundles/valtimo-dossier.umd.js.map +1 -0
- package/bundles/valtimo-dossier.umd.min.js +16 -0
- package/bundles/valtimo-dossier.umd.min.js.map +1 -0
- package/esm2015/lib/dossier-detail/dossier-detail.component.js +87 -0
- package/esm2015/lib/dossier-detail/tab/audit/audit.component.js +64 -0
- package/esm2015/lib/dossier-detail/tab/documents/documents.component.js +101 -0
- package/esm2015/lib/dossier-detail/tab/progress/progress.component.js +47 -0
- package/esm2015/lib/dossier-detail/tab/summary/summary.component.js +124 -0
- package/esm2015/lib/dossier-detail-tab-enum.js +23 -0
- package/esm2015/lib/dossier-list/dossier-list.component.js +212 -0
- package/esm2015/lib/dossier-process-start-modal/dossier-process-start-modal.component.js +122 -0
- package/esm2015/lib/dossier-routing.module.js +57 -0
- package/esm2015/lib/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component.js +117 -0
- package/esm2015/lib/dossier-update/dossier-update.component.js +121 -0
- package/esm2015/lib/dossier.config.js +29 -0
- package/esm2015/lib/dossier.module.js +117 -0
- package/esm2015/lib/dossier.service.js +50 -0
- package/esm2015/lib/tab.service.js +44 -0
- package/esm2015/public_api.js +30 -0
- package/esm2015/valtimo-dossier.js +9 -0
- package/fesm2015/valtimo-dossier.js +1243 -0
- package/fesm2015/valtimo-dossier.js.map +1 -0
- package/lib/dossier-detail/dossier-detail.component.d.ts +34 -0
- package/lib/dossier-detail/tab/audit/audit.component.d.ts +15 -0
- package/lib/dossier-detail/tab/documents/documents.component.d.ts +38 -0
- package/lib/dossier-detail/tab/progress/progress.component.d.ts +14 -0
- package/lib/dossier-detail/tab/summary/summary.component.d.ts +37 -0
- package/lib/dossier-detail-tab-enum.d.ts +6 -0
- package/lib/dossier-list/dossier-list.component.d.ts +65 -0
- package/lib/dossier-process-start-modal/dossier-process-start-modal.component.d.ts +37 -0
- package/lib/dossier-routing.module.d.ts +2 -0
- package/lib/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component.d.ts +35 -0
- package/lib/dossier-update/dossier-update.component.d.ts +33 -0
- package/lib/dossier.config.d.ts +3 -0
- package/lib/dossier.module.d.ts +5 -0
- package/lib/dossier.service.d.ts +10 -0
- package/lib/tab.service.d.ts +7 -0
- package/package.json +27 -0
- package/public_api.d.ts +11 -0
- package/valtimo-dossier.d.ts +8 -0
- package/valtimo-dossier.metadata.json +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"valtimo-dossier.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/valtimo/dossier/src/lib/dossier-detail-tab-enum.ts","../../../../projects/valtimo/dossier/src/lib/dossier.service.ts","../../../../projects/valtimo/dossier/src/lib/dossier-list/dossier-list.component.ts","../../../../projects/valtimo/dossier/src/lib/dossier-detail/tab/summary/summary.component.ts","../../../../projects/valtimo/dossier/src/lib/dossier-detail/tab/progress/progress.component.ts","../../../../projects/valtimo/dossier/src/lib/dossier-detail/tab/audit/audit.component.ts","../../../../projects/valtimo/dossier/src/lib/dossier-detail/tab/documents/documents.component.ts","../../../../projects/valtimo/dossier/src/lib/dossier.config.ts","../../../../projects/valtimo/dossier/src/lib/tab.service.ts","../../../../projects/valtimo/dossier/src/lib/dossier-detail/dossier-detail.component.ts","../../../../projects/valtimo/dossier/src/lib/dossier-update/dossier-update.component.ts","../../../../projects/valtimo/dossier/src/lib/dossier-routing.module.ts","../../../../projects/valtimo/dossier/src/lib/dossier-process-start-modal/dossier-process-start-modal.component.ts","../../../../projects/valtimo/dossier/src/lib/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component.ts","../../../../projects/valtimo/dossier/src/lib/dossier.module.ts","../../../../projects/valtimo/dossier/src/public_api.ts","../../../../projects/valtimo/dossier/src/valtimo-dossier.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n 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\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\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","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport enum DefaultTabs {\n summary = 'summary', progress = 'progress', audit = 'audit', documents = 'documents'\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Injectable} from '@angular/core';\nimport {ConfigService} from '@valtimo/config';\nimport {DefinitionColumn, SortState} from '@valtimo/contract';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DossierService {\n private readonly definitions: any;\n\n constructor(private readonly configService: ConfigService) {\n this.definitions = configService.config.definitions;\n }\n\n getImplementationEnvironmentDefinitions(name: string) {\n return this.definitions.dossiers.find(definition => definition.name === name);\n }\n\n getDefinitionColumns(definitionNameId: string): Array<DefinitionColumn> {\n const config = this.configService.config;\n const customDefinitionTable = config.customDefinitionTables[definitionNameId];\n return customDefinitionTable || config.defaultDefinitionTable;\n }\n\n getInitialSortState(columns: Array<DefinitionColumn>): SortState {\n const defaultColumn = columns.find(column => column.default);\n return {\n isSorting: false,\n state: {name: defaultColumn ? defaultColumn.propertyName : columns[0].propertyName, direction: 'DESC'}\n };\n }\n\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Component, OnDestroy, OnInit, ViewChild} from '@angular/core';\nimport {ActivatedRoute, NavigationEnd, Router} from '@angular/router';\nimport {TranslateService} from '@ngx-translate/core';\nimport {DefinitionColumn, ProcessDocumentDefinition, SortState} from '@valtimo/contract';\nimport {DocumentSearchRequest, DocumentSearchRequestImpl, DocumentService} from '@valtimo/document';\nimport * as momentImported from 'moment';\nimport {combineLatest, Subscription} from 'rxjs';\nimport {DefaultTabs} from '../dossier-detail-tab-enum';\nimport {DossierProcessStartModalComponent} from '../dossier-process-start-modal/dossier-process-start-modal.component';\nimport {DossierService} from '../dossier.service';\n\ndeclare var $;\n\nconst moment = momentImported;\nmoment.locale(localStorage.getItem('langKey') || '');\n\n@Component({\n selector: 'valtimo-dossier-list',\n templateUrl: './dossier-list.component.html',\n styleUrls: ['./dossier-list.component.css']\n})\nexport class DossierListComponent implements OnInit, OnDestroy {\n public documentDefinitionName = '';\n public implementationDefinitions: any;\n public showCreateDocument = false;\n public schema: any;\n public documents: any;\n public items: Array<any> = [];\n public fields: Array<any> = [];\n public processDefinitionListFields: Array<any> = [];\n public processDocumentDefinitions: ProcessDocumentDefinition[] = [];\n public pagination = {\n collectionSize: 0,\n page: 1,\n size: 10,\n maxPaginationItemSize: 5,\n sort : undefined\n };\n public globalSearchFilter: string | undefined;\n public sequence: number | undefined;\n public createdBy: string | undefined;\n private selectedProcessDocumentDefinition: ProcessDocumentDefinition | null = null;\n private modalListenerAdded = false;\n @ViewChild('processStartModal') processStart: DossierProcessStartModalComponent;\n\n private routerSubscription: Subscription;\n\n private translationSubscription: Subscription;\n\n initialSortState: SortState;\n\n constructor(\n private route: ActivatedRoute,\n private router: Router,\n private documentService: DocumentService,\n private readonly translateService: TranslateService,\n private readonly dossierService: DossierService\n ) {}\n\n ngOnInit(): void {\n this.doInit();\n this.routeEvent(this.router);\n this.modalListenerAdded = false;\n }\n\n ngOnDestroy(): void {\n this.routerSubscription.unsubscribe();\n this.translationSubscription.unsubscribe();\n }\n\n paginationSet() {\n this.getData();\n }\n\n private routeEvent(router: Router) {\n this.routerSubscription = router.events.subscribe(e => {\n if (e instanceof NavigationEnd) {\n this.doInit();\n this.getData();\n }\n });\n }\n\n public doInit() {\n const documentDefinitionName = this.route.snapshot.paramMap.get('documentDefinitionName') || '';\n const columns: Array<DefinitionColumn> = this.dossierService.getDefinitionColumns(documentDefinitionName);\n\n this.documentDefinitionName = documentDefinitionName;\n this.initialSortState = this.dossierService.getInitialSortState(columns);\n\n this.openTranslationSubscription(columns);\n }\n\n private openTranslationSubscription(columns: Array<DefinitionColumn>): void {\n this.translationSubscription = combineLatest(\n columns.map(column => this.translateService.stream(`fieldLabels.${column.translationKey}`))\n ).subscribe(labels => {\n this.fields = columns.map((column, index) => ({\n key: column.propertyName,\n label: labels[index],\n sortable: column.sortable,\n ...(column.viewType && {viewType: column.viewType})\n }));\n });\n }\n\n public getData() {\n this.findDocumentDefinition(this.documentDefinitionName);\n\n if (this.hasCachedSearchRequest()) {\n const documentSearchRequest = this.getCachedSearch();\n this.globalSearchFilter = documentSearchRequest.globalSearchFilter;\n this.sequence = documentSearchRequest.sequence;\n this.createdBy = documentSearchRequest.createdBy;\n this.findDocuments(documentSearchRequest);\n } else {\n this.doSearch();\n }\n\n this.getAllAssociatedProcessDefinitions();\n }\n\n public doSearch() {\n const documentSearchRequest = this.buildDocumentSearchRequest();\n this.findDocuments(documentSearchRequest);\n }\n\n private findDocuments(documentSearchRequest: DocumentSearchRequest) {\n return this.documentService.getDocuments(documentSearchRequest).subscribe(documents => {\n this.documents = documents;\n this.transformDocuments(this.documents.content);\n this.pagination.collectionSize = this.documents.totalElements;\n this.storeSearch(documentSearchRequest);\n });\n }\n\n public getAllAssociatedProcessDefinitions() {\n this.documentService\n .findProcessDocumentDefinitions(this.documentDefinitionName)\n .subscribe(processDocumentDefinitions => {\n this.processDocumentDefinitions = processDocumentDefinitions.filter(\n processDocumentDefinition => processDocumentDefinition.canInitializeDocument\n );\n this.processDefinitionListFields = [\n {\n key: 'processName',\n label: 'Proces'\n }\n ];\n });\n }\n\n public getCachedSearch(): DocumentSearchRequest {\n const json = JSON.parse(this.getCachedDocumentSearchRequest());\n return new DocumentSearchRequestImpl(\n json.definitionName,\n this.pagination.page - 1,\n this.pagination.size,\n json.sequence,\n json.createdBy,\n json.globalSearchFilter,\n json.sort\n );\n }\n\n private buildDocumentSearchRequest(): DocumentSearchRequest {\n return new DocumentSearchRequestImpl(\n this.documentDefinitionName,\n this.pagination.page - 1,\n this.pagination.size,\n this.sequence,\n this.createdBy,\n this.globalSearchFilter,\n this.pagination.sort && this.pagination.sort.isSorting ? this.pagination.sort : this.initialSortState\n );\n }\n\n private storeSearch(documentSearchRequest: DocumentSearchRequest) {\n localStorage.setItem(this.getCachedKey(), JSON.stringify(documentSearchRequest));\n }\n\n private getCachedDocumentSearchRequest(): string {\n return localStorage.getItem(this.getCachedKey()) || '';\n }\n\n private hasCachedSearchRequest(): boolean {\n return localStorage.getItem(this.getCachedKey()) !== null;\n }\n\n private getCachedKey(): string {\n return 'list-search-' + this.documentDefinitionName;\n }\n\n public rowClick(document: any) {\n this.router.navigate([`/dossiers/${this.documentDefinitionName}/document/${document.id}/${DefaultTabs.summary}`]);\n }\n\n public startDossier() {\n if (this.processDocumentDefinitions.length > 1) {\n $('#startProcess').modal('show');\n } else {\n this.selectedProcessDocumentDefinition = this.processDocumentDefinitions[0];\n this.showStartProcessModal();\n }\n }\n\n private showStartProcessModal() {\n if (this.selectedProcessDocumentDefinition !== null) {\n this.processStart.openModal(this.selectedProcessDocumentDefinition);\n this.selectedProcessDocumentDefinition = null;\n }\n }\n\n public selectProcess(processDocumentDefinition: ProcessDocumentDefinition) {\n const modal = $('#startProcess');\n if (!this.modalListenerAdded) {\n modal.on('hidden.bs.modal', this.showStartProcessModal.bind(this));\n this.modalListenerAdded = true;\n }\n this.selectedProcessDocumentDefinition = processDocumentDefinition;\n modal.modal('hide');\n }\n\n private findDocumentDefinition(documentDefinitionName: string) {\n this.documentService.getDocumentDefinition(documentDefinitionName).subscribe(definition => {\n this.schema = definition.schema;\n });\n }\n\n private transformDocuments(documentsContent: Array<any>) {\n this.items = documentsContent.map(document => {\n const {content, ...others} = document;\n return {...content, ...others};\n });\n }\n\n public paginationClicked(page: number) {\n this.pagination.page = page;\n this.doSearch();\n }\n\n public sortChanged(sortState: SortState) {\n this.pagination.sort = sortState;\n this.doSearch();\n }\n\n public getInitialSortState(): SortState {\n if (this.hasCachedSearchRequest()) {\n const cachedRequest = JSON.parse(this.getCachedDocumentSearchRequest());\n return cachedRequest.sort ? cachedRequest.sort : this.initialSortState;\n }\n return this.initialSortState;\n }\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Component, ElementRef, OnInit, Renderer2, ViewChild, ViewEncapsulation} from '@angular/core';\nimport {ProcessService} from '@valtimo/process';\nimport {ActivatedRoute, ParamMap, Router} from '@angular/router';\nimport {DocumentService} from '@valtimo/document';\nimport {TaskDetailModalComponent, TaskService} from '@valtimo/task';\nimport {FormService} from '@valtimo/form';\nimport {Document, FormioOptionsImpl, ProcessDocumentInstance, ProcessInstanceTask, ValtimoFormioOptions} from '@valtimo/contract';\n\nimport * as moment_ from 'moment';\nimport {FormioForm} from 'angular-formio';\nimport {UserProviderService} from '@valtimo/security';\n\nconst moment = moment_;\nmoment.locale(localStorage.getItem('langKey') || '');\nmoment.defaultFormat = 'DD MMM YYYY HH:mm';\n\n@Component({\n selector: 'valtimo-dossier-detail-tab-summary',\n templateUrl: './summary.component.html',\n styleUrls: ['./summary.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class DossierDetailTabSummaryComponent implements OnInit {\n public readonly documentDefinitionName: string;\n public document: Document;\n public documentId: string;\n public processDocumentInstances: ProcessDocumentInstance[] = [];\n private snapshot: ParamMap;\n public tasks: ProcessInstanceTask[] = [];\n public moment;\n public formDefinition: FormioForm = null;\n public options: ValtimoFormioOptions;\n public roles: string[] = [];\n @ViewChild('taskDetail') taskDetail: TaskDetailModalComponent;\n\n constructor(\n private router: Router,\n private documentService: DocumentService,\n private taskService: TaskService,\n private processService: ProcessService,\n private el: ElementRef,\n private renderer: Renderer2,\n private route: ActivatedRoute,\n private formService: FormService,\n private userProviderService: UserProviderService\n ) {\n this.snapshot = this.route.snapshot.paramMap;\n this.documentDefinitionName = this.snapshot.get('documentDefinitionName') || '';\n this.documentId = this.snapshot.get('documentId') || '';\n this.options = new FormioOptionsImpl();\n this.options.disableAlerts = true;\n }\n\n ngOnInit() {\n this.moment = moment;\n this.init();\n }\n\n init() {\n this.documentService.getDocument(this.documentId).subscribe(document => {\n this.document = document;\n });\n this.formService\n .getFormDefinitionByNamePreFilled(`${this.documentDefinitionName}.summary`, this.documentId)\n .subscribe(formDefinition => {\n this.formDefinition = formDefinition;\n });\n this.userProviderService.getUserSubject().subscribe(user => {\n this.roles = user.roles;\n this.tasks = [];\n this.loadProcessDocumentInstances(this.documentId);\n });\n }\n\n public loadProcessDocumentInstances(documentId: string) {\n this.documentService.findProcessDocumentInstances(documentId).subscribe(processDocumentInstances => {\n this.processDocumentInstances = processDocumentInstances;\n this.processDocumentInstances.forEach(instance => {\n this.loadProcessInstanceTasks(instance.id.processInstanceId);\n });\n });\n }\n\n private loadProcessInstanceTasks(processInstanceId: string) {\n this.processService.getProcessInstanceTasks(processInstanceId).subscribe(tasks => {\n tasks.forEach(task => {\n task.createdUnix = this.moment(task.created).unix();\n task.created = this.moment(task.created).format('DD MMM YYYY HH:mm');\n task.isLocked = () => {\n let locked = true;\n for (const link of task.identityLinks) {\n if (link.type === 'candidate' && link.groupId) {\n if (this.roles.includes(link.groupId)) {\n locked = false;\n break;\n }\n }\n }\n return locked;\n };\n });\n this.tasks = this.tasks.concat(tasks);\n this.tasks.sort((t1, t2) => t2.createdUnix - t1.createdUnix);\n });\n }\n\n public rowTaskClick(task: any) {\n this.taskDetail.openTaskDetails(task);\n }\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Component, OnInit} from '@angular/core';\nimport {ActivatedRoute} from '@angular/router';\nimport {DocumentService} from '@valtimo/document';\nimport {ProcessDocumentInstance} from '@valtimo/contract';\n\n@Component({\n selector: 'valtimo-dossier-detail-tab-progress',\n templateUrl: './progress.component.html',\n styleUrls: ['./progress.component.css']\n})\nexport class DossierDetailTabProgressComponent implements OnInit {\n public processDocumentInstances: ProcessDocumentInstance[];\n public selectedProcessInstanceId: string;\n public readonly documentId: string;\n\n constructor(\n private route: ActivatedRoute,\n private documentService: DocumentService,\n ) {\n const snapshot = this.route.snapshot.paramMap;\n this.documentId = snapshot.get('documentId') || '';\n }\n\n ngOnInit() {\n this.documentService.findProcessDocumentInstances(this.documentId).subscribe(processDocumentInstances => {\n this.processDocumentInstances = processDocumentInstances;\n this.selectedProcessInstanceId = processDocumentInstances[0].id.processInstanceId;\n });\n }\n\n public loadProcessInstance(processInstanceId: string) {\n this.selectedProcessInstanceId = processInstanceId;\n }\n\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Component, OnInit} from '@angular/core';\nimport {AuditEvent, TimelineItem, TimelineItemImpl} from '@valtimo/contract';\nimport * as moment_ from 'moment';\nimport {ActivatedRoute} from '@angular/router';\nimport {DocumentService} from '@valtimo/document';\nimport {NgxSpinnerService} from 'ngx-spinner';\n\nconst moment = moment_;\nmoment.locale(localStorage.getItem('langKey') || '');\nmoment.defaultFormat = 'DD MMM YYYY HH:mm';\n\n@Component({\n selector: 'valtimo-dossier-detail-tab-audit',\n templateUrl: './audit.component.html',\n styleUrls: ['./audit.component.css']\n})\nexport class DossierDetailTabAuditComponent implements OnInit {\n\n public timelineItems: TimelineItem[];\n private readonly documentId: string;\n\n constructor(\n private route: ActivatedRoute,\n private documentService: DocumentService,\n private spinnerService: NgxSpinnerService\n ) {\n this.spinnerService.show('auditSpinner');\n const snapshot = this.route.snapshot.paramMap;\n this.documentId = snapshot.get('documentId') || '';\n }\n\n private static getTranslationKey(auditEvent: AuditEvent) {\n const classNameArray = auditEvent.className.split('.');\n const eventName = classNameArray[classNameArray.length - 1];\n return 'events.' + eventName;\n }\n\n ngOnInit() {\n this.documentService.getAuditLog(this.documentId).subscribe(page => {\n const timelineItems = [];\n page.content.forEach(auditRecord => {\n const occurredOn = moment(auditRecord.metaData.occurredOn);\n const fromNow = occurredOn.fromNow();\n timelineItems.push(\n new TimelineItemImpl(\n occurredOn.format('DD MMM YYYY'),\n occurredOn.format('HH:mm'),\n auditRecord.metaData.user,\n fromNow,\n DossierDetailTabAuditComponent.getTranslationKey(auditRecord.auditEvent),\n auditRecord.auditEvent\n )\n );\n });\n this.timelineItems = timelineItems;\n this.spinnerService.hide('auditSpinner');\n });\n }\n\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Component, OnInit} from '@angular/core';\nimport {ActivatedRoute} from '@angular/router';\nimport {DocumentService} from '@valtimo/document';\nimport {Document, RelatedFile, ResourceDto} from '@valtimo/contract';\nimport {ToastrService} from 'ngx-toastr';\nimport {DownloadService, UploadProviderService} from '@valtimo/resource';\nimport {switchMap} from 'rxjs/operators';\nimport {BehaviorSubject} from 'rxjs';\n\n@Component({\n selector: 'valtimo-dossier-detail-tab-documents',\n templateUrl: './documents.component.html',\n styleUrls: ['./documents.component.css']\n})\nexport class DossierDetailTabDocumentsComponent implements OnInit {\n public readonly documentId: string;\n public readonly documentDefinitionName: string;\n public relatedFiles: RelatedFile[] = [];\n public fields = [\n {key: 'fileName', label: 'File name'},\n {key: 'sizeInBytes', label: 'Size in bytes'},\n {key: 'createdOn', label: 'Created on', viewType: 'date'},\n {key: 'createdBy', label: 'Created by'}\n ];\n public actions = [\n {\n columnName: '',\n iconClass: 'fas fa-external-link-alt',\n callback: this.downloadDocument.bind(this)\n },\n {\n columnName: '',\n iconClass: 'fas fa-trash-alt',\n callback: this.removeRelatedFile.bind(this)\n }\n ];\n\n readonly uploading$ = new BehaviorSubject<boolean>(false);\n\n constructor(\n private readonly route: ActivatedRoute,\n private readonly documentService: DocumentService,\n private readonly toastrService: ToastrService,\n private readonly uploadProviderService: UploadProviderService,\n private readonly downloadService: DownloadService,\n ) {\n const snapshot = this.route.snapshot.paramMap;\n this.documentId = snapshot.get('documentId') || '';\n this.documentDefinitionName = snapshot.get('documentDefinitionName') || '';\n }\n\n ngOnInit(): void {\n this.loadDocuments();\n }\n\n fileSelected(file: File): void {\n this.uploading$.next(true);\n\n this.uploadProviderService.uploadFile(file, this.documentDefinitionName).pipe(\n switchMap((resourceFile) => this.documentService.assignResource(this.documentId, resourceFile.data.resourceId))\n ).subscribe(() => {\n this.toastrService.success('Successfully uploaded document to dossier');\n this.loadDocuments();\n this.uploading$.next(false);\n }, () => {\n this.toastrService.error('Failed to upload document to dossier');\n this.uploading$.next(false);\n });\n }\n\n loadDocuments(): void {\n this.documentService.getDocument(this.documentId).subscribe((document: Document) => {\n this.relatedFiles = document.relatedFiles;\n });\n }\n\n downloadDocument(relatedFile: RelatedFile): void {\n this.uploadProviderService.getResource(relatedFile.fileId).subscribe((resource: ResourceDto) => {\n this.downloadService.downloadFile(resource.url, resource.resource.name);\n });\n }\n\n removeRelatedFile(relatedFile: RelatedFile): void {\n this.documentService.removeResource(this.documentId, relatedFile.fileId).subscribe(() => {\n this.toastrService.success('Successfully removed document from dossier');\n this.loadDocuments();\n }, () => {\n this.toastrService.error('Failed to remove document from dossier');\n });\n }\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {InjectionToken} from '@angular/core';\nimport {DossierDetailTabSummaryComponent} from './dossier-detail/tab/summary/summary.component';\nimport {DossierDetailTabProgressComponent} from './dossier-detail/tab/progress/progress.component';\nimport {DossierDetailTabAuditComponent} from './dossier-detail/tab/audit/audit.component';\nimport {DossierDetailTabDocumentsComponent} from './dossier-detail/tab/documents/documents.component';\nimport {DefaultTabs} from './dossier-detail-tab-enum';\n\nexport const TAB_MAP = new InjectionToken<Map<string, object>>('TabMap');\nexport const DEFAULT_TABS = new Map<string, object>([\n [DefaultTabs.summary, DossierDetailTabSummaryComponent],\n [DefaultTabs.progress, DossierDetailTabProgressComponent],\n [DefaultTabs.audit, DossierDetailTabAuditComponent],\n [DefaultTabs.documents, DossierDetailTabDocumentsComponent]\n]);\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Inject, Injectable} from '@angular/core';\nimport {TabImpl} from '@valtimo/contract';\nimport {DEFAULT_TABS, TAB_MAP} from './dossier.config';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TabService {\n private readonly tabMap: Map<string, object>;\n private readonly tabs: TabImpl[] = [];\n\n constructor(\n @Inject(TAB_MAP) tabMap: Map<string, object> = DEFAULT_TABS\n ) {\n this.tabMap = tabMap;\n let i = 0;\n this.tabMap.forEach((component, name, map) => {\n this.tabs.push(new TabImpl(name, i, component));\n i++;\n });\n }\n\n public getTabs(): TabImpl[] {\n return this.tabs;\n }\n\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Component, ComponentFactoryResolver, OnInit, ViewChild, ViewContainerRef} from '@angular/core';\nimport {ActivatedRoute, ParamMap, Router} from '@angular/router';\nimport {DocumentService} from '@valtimo/document';\nimport {Document, ProcessDocumentDefinition, TabLoaderImpl} from '@valtimo/contract';\nimport {TranslateService} from '@ngx-translate/core';\nimport {Location} from '@angular/common';\nimport {TabService} from '../tab.service';\nimport {ProcessService} from '@valtimo/process';\nimport {DossierSupportingProcessStartModalComponent} from '../dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component';\n\n@Component({\n selector: 'valtimo-dossier-detail',\n templateUrl: './dossier-detail.component.html',\n styleUrls: ['./dossier-detail.component.css']\n})\nexport class DossierDetailComponent implements OnInit {\n\n @ViewChild('tabContainer', {read: ViewContainerRef, static: true}) viewContainerRef: ViewContainerRef;\n\n public documentDefinitionName: string;\n public documentDefinitionNameTitle: string;\n public documentId: string;\n public document: Document = null;\n public tabLoader: TabLoaderImpl = null;\n private snapshot: ParamMap;\n public processDefinitionListFields: Array<any> = [];\n public processDocumentDefinitions: ProcessDocumentDefinition[] = [];\n private initialTabName: string;\n @ViewChild('supportingProcessStartModal') supportingProcessStart: DossierSupportingProcessStartModalComponent;\n\n constructor(\n private componentFactoryResolver: ComponentFactoryResolver,\n private translateService: TranslateService,\n private documentService: DocumentService,\n private processService: ProcessService,\n private route: ActivatedRoute,\n private router: Router,\n private location: Location,\n private tabService: TabService\n ) {\n this.snapshot = this.route.snapshot.paramMap;\n this.documentDefinitionName = this.snapshot.get('documentDefinitionName') || '';\n this.documentId = this.snapshot.get('documentId') || '';\n }\n\n ngOnInit() {\n this.tabLoader = new TabLoaderImpl(\n this.tabService.getTabs(),\n this.componentFactoryResolver,\n this.viewContainerRef,\n this.translateService,\n this.router,\n this.location\n );\n this.documentService.getDocumentDefinition(this.documentDefinitionName).subscribe(definition => {\n this.documentDefinitionNameTitle = definition.schema.title;\n });\n this.initialTabName = this.snapshot.get('tab');\n this.tabLoader.initial(this.initialTabName);\n this.getAllAssociatedProcessDefinitions();\n }\n\n public getAllAssociatedProcessDefinitions() {\n this.documentService.findProcessDocumentDefinitions(this.documentDefinitionName).subscribe(processDocumentDefinitions => {\n this.processDocumentDefinitions = processDocumentDefinitions\n .filter(processDocumentDefinition => processDocumentDefinition.startableByUser);\n this.processDefinitionListFields = [{\n key: 'processName',\n label: 'Proces'\n }];\n });\n }\n\n startProcess(processDocumentDefinition: ProcessDocumentDefinition) {\n this.supportingProcessStart.openModal(processDocumentDefinition, this.documentId);\n }\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Component, OnInit} from '@angular/core';\nimport {TaskService} from '@valtimo/task';\nimport {ActivatedRoute} from '@angular/router';\nimport {ToastrService} from 'ngx-toastr';\nimport {Location} from '@angular/common';\nimport * as momentImported from 'moment';\nimport {DocumentService} from '@valtimo/document';\nimport {DossierService} from '../dossier.service';\n\nconst moment = momentImported;\nmoment.locale(localStorage.getItem('langKey') || '');\n\n@Component({\n selector: 'valtimo-dossier-update',\n templateUrl: './dossier-update.component.html',\n styleUrls: ['./dossier-update.component.css']\n})\nexport class DossierUpdateComponent implements OnInit {\n\n public task: any;\n public taskId: string;\n public schema: any;\n public documentId: string;\n public document: any;\n public page: any;\n public documentDefinitionName: string;\n public implementationDefinitions: any;\n public customDefinitions: any = {};\n\n constructor(\n private taskService: TaskService,\n private documentService: DocumentService,\n private route: ActivatedRoute,\n private toastr: ToastrService,\n private location: Location,\n dossierService: DossierService\n ) {\n const snapshot = this.route.snapshot.paramMap;\n this.documentDefinitionName = snapshot.get('documentDefinitionName') || '';\n this.documentId = snapshot.get('documentId') || '';\n this.taskId = snapshot.get('taskId') || '';\n this.implementationDefinitions = dossierService.getImplementationEnvironmentDefinitions(this.documentDefinitionName);\n this.loadDocumentDefinition(this.documentDefinitionName);\n this.loadDocument(this.documentId);\n }\n\n ngOnInit() {\n this.getTask(this.taskId);\n if (this.implementationDefinitions.definitions.detail.summary) {\n this.customDefinitions = this.implementationDefinitions.definitions.detail.summary;\n }\n }\n\n private loadDocumentDefinition(name: string) {\n this.documentService.getDocumentDefinition(name).subscribe(definition => {\n this.schema = definition.schema;\n });\n }\n\n private loadDocument(id: string) {\n this.documentService.getDocument(id).subscribe(document => {\n this.document = document;\n });\n }\n\n public getTask(id: string) {\n this.taskService.getTask(id).subscribe(task => {\n this.task = task;\n this.task.task.created = moment(this.task.task.created).format('DD MMM YYYY HH:mm');\n this.page = {\n title: this.task.task.name,\n subtitle: `Created ${moment(this.task.task.created).fromNow()}`\n };\n });\n }\n\n public reset() {\n this.loadDocument(this.documentId);\n }\n\n public back() {\n this.location.back();\n }\n\n public save() {\n const document = {\n documentId: this.document.id,\n content: this.document.content,\n versionBasedOn: this.document.version\n };\n this.documentService.modifyDocument(document).subscribe(result => {\n this.document = result.document;\n this.toastr.success('Document aangepast');\n this.location.back();\n });\n }\n\n public submit(data: object) {\n // merge document content with formdata\n const mergedData = Object.assign({}, this.document.content, data);\n const documentData = {\n request: {\n documentId: this.document.id,\n content: mergedData,\n versionBasedOn: this.document.version\n },\n taskId: this.task.task.id\n };\n\n this.documentService.modifyDocumentAndCompleteTask(documentData).subscribe(result => {\n this.toastr.success(this.task.task.name + ' has successfully been completed');\n this.location.back();\n });\n }\n\n public returnZero() {\n return 0;\n }\n\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {NgModule} from '@angular/core';\nimport {RouterModule, Routes} from '@angular/router';\nimport {CommonModule} from '@angular/common';\nimport {AuthGuardService} from '@valtimo/security';\nimport {DossierListComponent} from './dossier-list/dossier-list.component';\nimport {DossierDetailComponent} from './dossier-detail/dossier-detail.component';\nimport {DossierUpdateComponent} from './dossier-update/dossier-update.component';\nimport {ROLE_USER} from '@valtimo/contract';\n\nconst routes: Routes = [\n {\n path: 'dossiers/:documentDefinitionName',\n component: DossierListComponent,\n canActivate: [AuthGuardService],\n data: {title: 'Dossiers', roles: [ROLE_USER]}\n },\n {\n path: 'dossiers/:documentDefinitionName/document/:documentId/:tab',\n component: DossierDetailComponent,\n canActivate: [AuthGuardService],\n data: {title: 'Dossiers', parentPath: 'dossiers/:documentDefinitionName', roles: [ROLE_USER]}\n },\n {\n path: 'dossiers/:documentDefinitionName/document/:documentId/:tab/tasks/:taskId',\n component: DossierUpdateComponent,\n canActivate: [AuthGuardService],\n data: {title: 'Task details', parentPath: 'dossiers/:documentDefinitionName/document/:documentId/:tab', roles: [ROLE_USER]}\n }\n];\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule.forChild(routes),\n ],\n exports: [RouterModule]\n})\nexport class DossierRoutingModule {\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Component, OnInit, ViewChild, ViewEncapsulation} from '@angular/core';\nimport {DocumentService} from '@valtimo/document';\nimport {\n FormAssociation,\n FormioOptionsImpl,\n FormioSubmission,\n FormSubmissionResult,\n ProcessDocumentDefinition,\n ValtimoFormioOptions\n} from '@valtimo/contract';\nimport {ActivatedRoute, Router} from '@angular/router';\nimport {ProcessService} from '@valtimo/process';\nimport {FormioComponent, ModalComponent} from '@valtimo/components';\nimport {FormioBeforeSubmit} from 'angular-formio/formio.common';\nimport {FormioForm} from 'angular-formio';\nimport {FormLinkService} from '@valtimo/form-link';\nimport {NGXLogger} from 'ngx-logger';\nimport {UserProviderService} from '@valtimo/security';\n\n@Component({\n selector: 'valtimo-dossier-process-start-modal',\n templateUrl: './dossier-process-start-modal.component.html',\n styleUrls: ['./dossier-process-start-modal.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class DossierProcessStartModalComponent implements OnInit {\n public processDefinitionKey: string;\n public documentDefinitionName: string;\n public processName: string;\n public formDefinition: FormioForm;\n public formioSubmission: FormioSubmission;\n private formAssociation: FormAssociation;\n public options: ValtimoFormioOptions;\n public isAdmin: boolean;\n @ViewChild('form', {static: false}) form: FormioComponent;\n @ViewChild('processStartModal', {static: false}) modal: ModalComponent;\n\n constructor(\n private route: ActivatedRoute,\n private router: Router,\n private processService: ProcessService,\n private documentService: DocumentService,\n private formLinkService: FormLinkService,\n private userProviderService: UserProviderService,\n private logger: NGXLogger\n ) {\n\n }\n\n ngOnInit() {\n this.isUserAdmin();\n }\n\n private loadFormDefinition() {\n this.formDefinition = null;\n this.formLinkService.getStartEventFormDefinitionByProcessDefinitionKey(this.processDefinitionKey)\n .subscribe(formDefinition => {\n this.formAssociation = formDefinition.formAssociation;\n const className = this.formAssociation.formLink.className.split('.');\n const linkType = className[className.length - 1];\n switch (linkType) {\n case 'BpmnElementFormIdLink':\n this.formDefinition = formDefinition;\n this.modal.show();\n break;\n case 'BpmnElementUrlLink':\n const url = this.router.serializeUrl(\n this.router.createUrlTree([formDefinition.formAssociation.formLink.url])\n );\n window.open(url, '_blank');\n break;\n case 'BpmnElementAngularStateUrlLink':\n this.router.navigate([formDefinition.formAssociation.formLink.url]);\n break;\n default:\n this.logger.fatal('Unsupported class name');\n }\n }, errors => {\n this.modal.show();\n });\n }\n\n public gotoFormLinkScreen() {\n this.modal.hide();\n this.router.navigate(['form-links'], {queryParams: {process: this.processDefinitionKey}});\n }\n\n public get modalTitle() {\n return `Start - ${this.processName}`;\n }\n\n openModal(processDocumentDefinition: ProcessDocumentDefinition) {\n this.processDefinitionKey = processDocumentDefinition.id.processDefinitionKey;\n this.documentDefinitionName = processDocumentDefinition.id.documentDefinitionId.name;\n this.processName = processDocumentDefinition.processName;\n this.options = new FormioOptionsImpl();\n this.options.disableAlerts = true;\n const formioBeforeSubmit: FormioBeforeSubmit = function (submission, callback) {\n callback(null, submission);\n };\n this.options.setHooks(formioBeforeSubmit);\n this.loadFormDefinition();\n }\n\n public onSubmit(submission: FormioSubmission) {\n this.formioSubmission = submission;\n this.formLinkService.onSubmit(\n this.processDefinitionKey,\n this.formAssociation.formLink.id,\n submission.data\n ).subscribe((formSubmissionResult: FormSubmissionResult) => {\n this.modal.hide();\n this.router.navigate(['dossiers', this.documentDefinitionName, 'document', formSubmissionResult.documentId, 'summary']);\n }, errors => {\n this.form.showErrors(errors);\n });\n }\n\n public isUserAdmin() {\n this.userProviderService.getUserSubject().subscribe(\n (userIdentity) => {\n this.isAdmin = userIdentity.roles.includes('ROLE_ADMIN');\n },\n error => {\n this.logger.error('Failed to retrieve user identity', error);\n this.isAdmin = false;\n });\n }\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {Component, EventEmitter, Output, ViewChild, ViewEncapsulation} from '@angular/core';\nimport {FormioBeforeSubmit, FormioForm} from 'angular-formio';\nimport {FormioComponent, ModalComponent} from '@valtimo/components';\nimport {ActivatedRoute, Router} from '@angular/router';\nimport {ProcessService} from '@valtimo/process';\nimport {DocumentService} from '@valtimo/document';\nimport {FormLinkService} from '@valtimo/form-link';\nimport {NGXLogger} from 'ngx-logger';\nimport {\n FormAssociation,\n FormioOptionsImpl,\n FormioSubmission,\n FormSubmissionResult,\n ProcessDocumentDefinition,\n ValtimoFormioOptions\n} from '@valtimo/contract';\nimport {noop} from 'rxjs';\n\n@Component({\n selector: 'valtimo-dossier-supporting-process-start-modal',\n templateUrl: './dossier-supporting-process-start-modal.component.html',\n styleUrls: ['./dossier-supporting-process-start-modal.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class DossierSupportingProcessStartModalComponent {\n public processDefinitionKey: string;\n public documentDefinitionName: string;\n public processName: string;\n public formDefinition: FormioForm;\n public formioSubmission: FormioSubmission;\n private formAssociation: FormAssociation;\n public options: ValtimoFormioOptions;\n public submission: object;\n\n @ViewChild('form', {static: false}) form: FormioComponent;\n @ViewChild('supportingProcessStartModal', {static: false}) modal: ModalComponent;\n private documentId: string;\n @Output() formSubmit = new EventEmitter();\n\n constructor(\n private route: ActivatedRoute,\n private router: Router,\n private processService: ProcessService,\n private documentService: DocumentService,\n private formLinkService: FormLinkService,\n private logger: NGXLogger\n ) {\n }\n\n private loadFormDefinition() {\n this.formDefinition = null;\n this.formLinkService.getStartEventFormDefinitionByProcessDefinitionKey(this.processDefinitionKey)\n .subscribe(formDefinition => {\n this.formAssociation = formDefinition.formAssociation;\n const className = this.formAssociation.formLink.className.split('.');\n const linkType = className[className.length - 1];\n switch (linkType) {\n case 'BpmnElementFormIdLink':\n this.formDefinition = formDefinition;\n this.documentService.getDocument(this.documentId).subscribe(document => {\n this.submission = {\n data: document.content\n };\n }, () => noop());\n this.modal.show();\n break;\n case 'BpmnElementUrlLink':\n const url = this.router.serializeUrl(\n this.router.createUrlTree([formDefinition.formAssociation.formLink.url])\n );\n window.open(url, '_blank');\n break;\n case 'BpmnElementAngularStateUrlLink':\n this.router.navigate([formDefinition.formAssociation.formLink.url]);\n break;\n default:\n this.logger.fatal('Unsupported class name');\n }\n }, errors => {\n this.modal.show();\n });\n }\n\n public get modalTitle() {\n return `Start - ${this.processName}`;\n }\n\n openModal(processDocumentDefinition: ProcessDocumentDefinition, documentId: string) {\n this.documentId = documentId;\n this.documentDefinitionName = processDocumentDefinition.id.documentDefinitionId.name;\n this.processDefinitionKey = processDocumentDefinition.id.processDefinitionKey;\n this.processName = processDocumentDefinition.processName;\n this.options = new FormioOptionsImpl();\n this.options.disableAlerts = true;\n const formioBeforeSubmit: FormioBeforeSubmit = function (submission, callback) {\n callback(null, submission);\n };\n this.options.setHooks(formioBeforeSubmit);\n this.loadFormDefinition();\n }\n\n public onSubmit(submission: FormioSubmission) {\n this.formioSubmission = submission;\n this.formLinkService.onSubmit(\n this.processDefinitionKey,\n this.formAssociation.formLink.id,\n submission.data,\n this.documentId\n ).subscribe((formSubmissionResult: FormSubmissionResult) => {\n this.modal.hide();\n this.formSubmit.emit();\n }, errors => {\n this.form.showErrors(errors);\n });\n }\n\n public gotoFormLinkScreen() {\n this.modal.hide();\n this.router.navigate(['form-links'], {queryParams: {process: this.processDefinitionKey}});\n }\n\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {ANALYZE_FOR_ENTRY_COMPONENTS, ModuleWithProviders, NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {DossierRoutingModule} from './dossier-routing.module';\nimport {DossierListComponent} from './dossier-list/dossier-list.component';\nimport {DossierService} from './dossier.service';\nimport {TAB_MAP} from './dossier.config';\nimport {HttpLoaderFactory} from '@valtimo/contract';\nimport {\n BpmnJsDiagramModule,\n CamundaFormModule,\n DataListModule,\n FilterSidebarModule,\n FormIoModule,\n ListModule,\n ModalModule,\n SpinnerModule,\n TimelineModule,\n UploaderModule,\n WidgetModule,\n DropzoneModule\n} from '@valtimo/components';\nimport {DossierDetailComponent} from './dossier-detail/dossier-detail.component';\nimport {DossierDetailTabSummaryComponent} from './dossier-detail/tab/summary/summary.component';\nimport {DossierUpdateComponent} from './dossier-update/dossier-update.component';\nimport {DossierDetailTabProgressComponent} from './dossier-detail/tab/progress/progress.component';\nimport {ProcessModule} from '@valtimo/process';\nimport {DossierDetailTabAuditComponent} from './dossier-detail/tab/audit/audit.component';\nimport {DossierDetailTabDocumentsComponent} from './dossier-detail/tab/documents/documents.component';\nimport {NgbButtonsModule, NgbTooltipModule} from '@ng-bootstrap/ng-bootstrap';\nimport {DossierProcessStartModalComponent} from './dossier-process-start-modal/dossier-process-start-modal.component';\nimport {FormModule} from '@valtimo/form';\nimport {FormsModule} from '@angular/forms';\nimport {TranslateLoader, TranslateModule} from '@ngx-translate/core';\nimport {HttpClient} from '@angular/common/http';\nimport {TabService} from './tab.service';\nimport {TaskModule} from '@valtimo/task';\nimport {DossierSupportingProcessStartModalComponent} from './dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component';\n\nexport type TabsFactory = () => Map<string, object>;\n\n@NgModule({\n declarations: [\n DossierListComponent,\n DossierDetailComponent,\n DossierDetailTabSummaryComponent,\n DossierDetailTabProgressComponent,\n DossierDetailTabAuditComponent,\n DossierDetailTabDocumentsComponent,\n DossierUpdateComponent,\n DossierProcessStartModalComponent,\n DossierSupportingProcessStartModalComponent\n ],\n imports: [\n CommonModule,\n DossierRoutingModule,\n ListModule,\n WidgetModule,\n BpmnJsDiagramModule,\n TimelineModule,\n CamundaFormModule,\n ProcessModule,\n FilterSidebarModule,\n NgbButtonsModule,\n DataListModule,\n FormsModule,\n FormModule,\n FormIoModule,\n ModalModule,\n SpinnerModule,\n TranslateModule.forRoot({\n loader: {\n provide: TranslateLoader,\n useFactory: HttpLoaderFactory,\n deps: [HttpClient]\n }\n }),\n TaskModule,\n ModalModule,\n NgbTooltipModule,\n UploaderModule,\n DropzoneModule\n ],\n exports: [\n DossierListComponent,\n DossierDetailComponent\n ],\n entryComponents: [\n DossierDetailTabSummaryComponent,\n DossierDetailTabProgressComponent,\n DossierDetailTabAuditComponent,\n DossierDetailTabDocumentsComponent\n ]\n})\nexport class DossierModule {\n static forRoot(tabsFactory: TabsFactory): ModuleWithProviders<DossierModule> {\n return {\n ngModule: DossierModule,\n providers: [\n DossierService,\n TabService,\n {\n provide: TAB_MAP,\n useFactory: tabsFactory\n },\n {\n provide: ANALYZE_FOR_ENTRY_COMPONENTS,\n useValue: Array.from(tabsFactory().values()),\n multi: true\n }\n ]\n };\n }\n}\n","/*\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/*\n * Public API Surface of dossier\n */\n\nexport * from './lib/dossier-list/dossier-list.component';\nexport * from './lib/dossier-detail/dossier-detail.component';\nexport * from './lib/dossier-detail/tab/summary/summary.component';\nexport * from './lib/dossier-detail/tab/progress/progress.component';\nexport * from './lib/dossier-detail/tab/audit/audit.component';\nexport * from './lib/dossier-detail/tab/documents/documents.component';\nexport * from './lib/dossier.config';\nexport * from './lib/dossier.service';\nexport * from './lib/dossier.module';\nexport * from './lib/dossier-detail-tab-enum';\nexport * from './lib/tab.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {DossierProcessStartModalComponent as ɵb} from './lib/dossier-process-start-modal/dossier-process-start-modal.component';\nexport {DossierRoutingModule as ɵd} from './lib/dossier-routing.module';\nexport {DossierSupportingProcessStartModalComponent as ɵc} from './lib/dossier-supporting-process-start-modal/dossier-supporting-process-start-modal.component';\nexport {DossierUpdateComponent as ɵa} from './lib/dossier-update/dossier-update.component';"],"names":["DefaultTabs","Injectable","ConfigService","momentImported","router","NavigationEnd","combineLatest","DocumentSearchRequestImpl","Component","ActivatedRoute","Router","DocumentService","TranslateService","ViewChild","moment","FormioOptionsImpl","ViewEncapsulation","TaskService","ProcessService","ElementRef","Renderer2","FormService","UserProviderService","TimelineItemImpl","NgxSpinnerService","BehaviorSubject","switchMap","ToastrService","UploadProviderService","DownloadService","InjectionToken","TabImpl","Inject","TabLoaderImpl","ComponentFactoryResolver","Location","ViewContainerRef","ROLE_USER","AuthGuardService","NgModule","CommonModule","RouterModule","FormLinkService","NGXLogger","EventEmitter","noop","Output","HttpLoaderFactory","ANALYZE_FOR_ENTRY_COMPONENTS","ListModule","WidgetModule","BpmnJsDiagramModule","TimelineModule","CamundaFormModule","ProcessModule","FilterSidebarModule","NgbButtonsModule","DataListModule","FormsModule","FormModule","FormIoModule","ModalModule","SpinnerModule","TranslateModule","TranslateLoader","HttpClient","TaskModule","NgbTooltipModule","UploaderModule","DropzoneModule"],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/router"),require("@ngx-translate/core"),require("@valtimo/document"),require("moment"),require("rxjs"),require("@valtimo/config"),require("@valtimo/contract"),require("@angular/common"),require("@valtimo/process"),require("@valtimo/task"),require("@valtimo/form"),require("@valtimo/security"),require("ngx-spinner"),require("ngx-toastr"),require("@valtimo/resource"),require("rxjs/operators"),require("@valtimo/components"),require("@ng-bootstrap/ng-bootstrap"),require("@valtimo/form-link"),require("ngx-logger"),require("@angular/forms"),require("@angular/common/http")):"function"==typeof define&&define.amd?define("@valtimo/dossier",["exports","@angular/core","@angular/router","@ngx-translate/core","@valtimo/document","moment","rxjs","@valtimo/config","@valtimo/contract","@angular/common","@valtimo/process","@valtimo/task","@valtimo/form","@valtimo/security","ngx-spinner","ngx-toastr","@valtimo/resource","rxjs/operators","@valtimo/components","@ng-bootstrap/ng-bootstrap","@valtimo/form-link","ngx-logger","@angular/forms","@angular/common/http"],t):t(((e=e||self).valtimo=e.valtimo||{},e.valtimo.dossier={}),e.ng.core,e.ng.router,e.core$1,e.document,e.moment,e.rxjs,e.config,e.contract,e.ng.common,e.process,e.task,e.form,e.security,e.ngxSpinner,e.ngxToastr,e.resource,e.rxjs.operators,e.components,e.ngBootstrap,e.formLink,e.ngxLogger,e.ng.forms,e.ng.common.http)}(this,(function(e,t,n,i,o,s,r,a,c,l,d,u,m,p,h,f,v,g,b,y,S,D,I,k){"use strict";
|
|
2
|
+
/*! *****************************************************************************
|
|
3
|
+
Copyright (c) Microsoft Corporation.
|
|
4
|
+
|
|
5
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
6
|
+
purpose with or without fee is hereby granted.
|
|
7
|
+
|
|
8
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
9
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
10
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
11
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
12
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
13
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
+
***************************************************************************** */Object.create;function L(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],i=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&i>=e.length&&(e=void 0),{value:e&&e[i++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}var w;Object.create;(w=e.DefaultTabs||(e.DefaultTabs={})).summary="summary",w.progress="progress",w.audit="audit",w.documents="documents";var N=function(){function e(e){this.configService=e,this.definitions=e.config.definitions}return e.prototype.getImplementationEnvironmentDefinitions=function(e){return this.definitions.dossiers.find((function(t){return t.name===e}))},e.prototype.getDefinitionColumns=function(e){var t=this.configService.config;return t.customDefinitionTables[e]||t.defaultDefinitionTable},e.prototype.getInitialSortState=function(e){var t=e.find((function(e){return e.default}));return{isSorting:!1,state:{name:t?t.propertyName:e[0].propertyName,direction:"DESC"}}},e}();N.ɵprov=t.ɵɵdefineInjectable({factory:function(){return new N(t.ɵɵinject(a.ConfigService))},token:N,providedIn:"root"}),N.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],N.ctorParameters=function(){return[{type:a.ConfigService}]},s.locale(localStorage.getItem("langKey")||"");var x=function(){function t(e,t,n,i,o){this.route=e,this.router=t,this.documentService=n,this.translateService=i,this.dossierService=o,this.documentDefinitionName="",this.showCreateDocument=!1,this.items=[],this.fields=[],this.processDefinitionListFields=[],this.processDocumentDefinitions=[],this.pagination={collectionSize:0,page:1,size:10,maxPaginationItemSize:5,sort:void 0},this.selectedProcessDocumentDefinition=null,this.modalListenerAdded=!1}return t.prototype.ngOnInit=function(){this.doInit(),this.routeEvent(this.router),this.modalListenerAdded=!1},t.prototype.ngOnDestroy=function(){this.routerSubscription.unsubscribe(),this.translationSubscription.unsubscribe()},t.prototype.paginationSet=function(){this.getData()},t.prototype.routeEvent=function(e){var t=this;this.routerSubscription=e.events.subscribe((function(e){e instanceof n.NavigationEnd&&(t.doInit(),t.getData())}))},t.prototype.doInit=function(){var e=this.route.snapshot.paramMap.get("documentDefinitionName")||"",t=this.dossierService.getDefinitionColumns(e);this.documentDefinitionName=e,this.initialSortState=this.dossierService.getInitialSortState(t),this.openTranslationSubscription(t)},t.prototype.openTranslationSubscription=function(e){var t=this;this.translationSubscription=r.combineLatest(e.map((function(e){return t.translateService.stream("fieldLabels."+e.translationKey)}))).subscribe((function(n){t.fields=e.map((function(e,t){return Object.assign({key:e.propertyName,label:n[t],sortable:e.sortable},e.viewType&&{viewType:e.viewType})}))}))},t.prototype.getData=function(){if(this.findDocumentDefinition(this.documentDefinitionName),this.hasCachedSearchRequest()){var e=this.getCachedSearch();this.globalSearchFilter=e.globalSearchFilter,this.sequence=e.sequence,this.createdBy=e.createdBy,this.findDocuments(e)}else this.doSearch();this.getAllAssociatedProcessDefinitions()},t.prototype.doSearch=function(){var e=this.buildDocumentSearchRequest();this.findDocuments(e)},t.prototype.findDocuments=function(e){var t=this;return this.documentService.getDocuments(e).subscribe((function(n){t.documents=n,t.transformDocuments(t.documents.content),t.pagination.collectionSize=t.documents.totalElements,t.storeSearch(e)}))},t.prototype.getAllAssociatedProcessDefinitions=function(){var e=this;this.documentService.findProcessDocumentDefinitions(this.documentDefinitionName).subscribe((function(t){e.processDocumentDefinitions=t.filter((function(e){return e.canInitializeDocument})),e.processDefinitionListFields=[{key:"processName",label:"Proces"}]}))},t.prototype.getCachedSearch=function(){var e=JSON.parse(this.getCachedDocumentSearchRequest());return new o.DocumentSearchRequestImpl(e.definitionName,this.pagination.page-1,this.pagination.size,e.sequence,e.createdBy,e.globalSearchFilter,e.sort)},t.prototype.buildDocumentSearchRequest=function(){return new o.DocumentSearchRequestImpl(this.documentDefinitionName,this.pagination.page-1,this.pagination.size,this.sequence,this.createdBy,this.globalSearchFilter,this.pagination.sort&&this.pagination.sort.isSorting?this.pagination.sort:this.initialSortState)},t.prototype.storeSearch=function(e){localStorage.setItem(this.getCachedKey(),JSON.stringify(e))},t.prototype.getCachedDocumentSearchRequest=function(){return localStorage.getItem(this.getCachedKey())||""},t.prototype.hasCachedSearchRequest=function(){return null!==localStorage.getItem(this.getCachedKey())},t.prototype.getCachedKey=function(){return"list-search-"+this.documentDefinitionName},t.prototype.rowClick=function(t){this.router.navigate(["/dossiers/"+this.documentDefinitionName+"/document/"+t.id+"/"+e.DefaultTabs.summary])},t.prototype.startDossier=function(){this.processDocumentDefinitions.length>1?$("#startProcess").modal("show"):(this.selectedProcessDocumentDefinition=this.processDocumentDefinitions[0],this.showStartProcessModal())},t.prototype.showStartProcessModal=function(){null!==this.selectedProcessDocumentDefinition&&(this.processStart.openModal(this.selectedProcessDocumentDefinition),this.selectedProcessDocumentDefinition=null)},t.prototype.selectProcess=function(e){var t=$("#startProcess");this.modalListenerAdded||(t.on("hidden.bs.modal",this.showStartProcessModal.bind(this)),this.modalListenerAdded=!0),this.selectedProcessDocumentDefinition=e,t.modal("hide")},t.prototype.findDocumentDefinition=function(e){var t=this;this.documentService.getDocumentDefinition(e).subscribe((function(e){t.schema=e.schema}))},t.prototype.transformDocuments=function(e){this.items=e.map((function(e){var t=e.content,n=function(e,t){var n={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(n[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(i=Object.getOwnPropertySymbols(e);o<i.length;o++)t.indexOf(i[o])<0&&Object.prototype.propertyIsEnumerable.call(e,i[o])&&(n[i[o]]=e[i[o]])}return n}(e,["content"]);return Object.assign(Object.assign({},t),n)}))},t.prototype.paginationClicked=function(e){this.pagination.page=e,this.doSearch()},t.prototype.sortChanged=function(e){this.pagination.sort=e,this.doSearch()},t.prototype.getInitialSortState=function(){if(this.hasCachedSearchRequest()){var e=JSON.parse(this.getCachedDocumentSearchRequest());return e.sort?e.sort:this.initialSortState}return this.initialSortState},t}();x.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-list",template:'\x3c!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the "License");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an "AS IS" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n --\x3e\n\n<ng-container *ngTemplateOutlet="sidebar"></ng-container>\n\n<div class="main-content pt-0">\n <div class="container-fluid">\n <div class="col-12 px-0 mb-5">\n <div>\n <div class="text-right mt-m3px mb-3">\n <button\n type="button"\n class="btn btn-space btn-primary mr-0"\n (click)="startDossier()"\n [ngbTooltip]="processDocumentDefinitions.length === 0 ? \'No action\' : null"\n placement="bottom"\n [disabled]="processDocumentDefinitions.length === 0"\n >\n {{ \'Start Dossier\' | translate }}\n </button>\n </div>\n\n <div\n class="modal fade"\n id="startProcess"\n tabindex="-1"\n role="dialog"\n aria-labelledby="startProcessLabel"\n aria-hidden="true"\n >\n <div class="modal-dialog modal-dialog-centered" role="document">\n <div class="modal-content">\n <div class="modal-header">\n <h3 class="modal-title" id="startProcessLabel">{{ \'dashboard.startProcess.title\' | translate }}</h3>\n <button type="button" class="close" data-dismiss="modal" aria-label="Close">\n <span aria-hidden="true">×</span>\n </button>\n </div>\n <div class="modal-body">\n <div class="table-responsive">\n <table class="table m-0">\n <tr\n *ngFor="let processDocumentDefinition of processDocumentDefinitions"\n (click)="selectProcess(processDocumentDefinition)"\n style="cursor: pointer"\n >\n <td>{{ processDocumentDefinition.processName }}</td>\n </tr>\n </table>\n </div>\n </div>\n <div class="modal-footer">\n <button type="button" class="btn btn-secondary" data-dismiss="modal">\n {{ \'cta.close\' | translate }}\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n <valtimo-widget>\n <valtimo-list\n [items]="items"\n [fields]="fields"\n (rowClicked)="rowClick($event)"\n [pagination]="pagination"\n [viewMode]="true"\n [header]="true"\n paginationIdentifier="dossierList"\n (paginationClicked)="paginationClicked($event)"\n (paginationSet)="paginationSet()"\n [initialSortState]="getInitialSortState()"\n (sortChanged)="sortChanged($event)"\n >\n <div header>\n <h3 class="list-header-title">\n {{ schema?.title }}\n <sup class="ml-1 badge badge-pill badge-primary">{{ documents?.content.length || 0 }}</sup>\n </h3>\n </div>\n </valtimo-list>\n </valtimo-widget>\n </div>\n </div>\n <valtimo-dossier-process-start-modal #processStartModal></valtimo-dossier-process-start-modal>\n</div>\n\n<ng-template #sidebar>\n <valtimo-filter-sidebar>\n <h4 class="title">Search</h4>\n <div class="mb-4">\n <input\n type="text"\n class="form-control"\n placeholder="{{ \'dossier.forms.globalSearchPlaceHolder\' | translate }}"\n [(ngModel)]="globalSearchFilter"\n (blur)="doSearch()"\n (keyup.enter)="doSearch()"\n />\n </div>\n\n <div class="mb-4">\n <input\n type="number"\n class="form-control"\n placeholder="{{ \'dossier.forms.referenceNumberPlaceHolder\' | translate }}"\n [(ngModel)]="sequence"\n (blur)="doSearch()"\n (keyup.enter)="doSearch()"\n />\n </div>\n </valtimo-filter-sidebar>\n</ng-template>\n',styles:[""]}]}],x.ctorParameters=function(){return[{type:n.ActivatedRoute},{type:n.Router},{type:o.DocumentService},{type:i.TranslateService},{type:N}]},x.propDecorators={processStart:[{type:t.ViewChild,args:["processStartModal"]}]};var T=s;T.locale(localStorage.getItem("langKey")||""),T.defaultFormat="DD MMM YYYY HH:mm";var A=function(){function e(e,t,n,i,o,s,r,a,l){this.router=e,this.documentService=t,this.taskService=n,this.processService=i,this.el=o,this.renderer=s,this.route=r,this.formService=a,this.userProviderService=l,this.processDocumentInstances=[],this.tasks=[],this.formDefinition=null,this.roles=[],this.snapshot=this.route.snapshot.paramMap,this.documentDefinitionName=this.snapshot.get("documentDefinitionName")||"",this.documentId=this.snapshot.get("documentId")||"",this.options=new c.FormioOptionsImpl,this.options.disableAlerts=!0}return e.prototype.ngOnInit=function(){this.moment=T,this.init()},e.prototype.init=function(){var e=this;this.documentService.getDocument(this.documentId).subscribe((function(t){e.document=t})),this.formService.getFormDefinitionByNamePreFilled(this.documentDefinitionName+".summary",this.documentId).subscribe((function(t){e.formDefinition=t})),this.userProviderService.getUserSubject().subscribe((function(t){e.roles=t.roles,e.tasks=[],e.loadProcessDocumentInstances(e.documentId)}))},e.prototype.loadProcessDocumentInstances=function(e){var t=this;this.documentService.findProcessDocumentInstances(e).subscribe((function(e){t.processDocumentInstances=e,t.processDocumentInstances.forEach((function(e){t.loadProcessInstanceTasks(e.id.processInstanceId)}))}))},e.prototype.loadProcessInstanceTasks=function(e){var t=this;this.processService.getProcessInstanceTasks(e).subscribe((function(e){e.forEach((function(e){e.createdUnix=t.moment(e.created).unix(),e.created=t.moment(e.created).format("DD MMM YYYY HH:mm"),e.isLocked=function(){var n,i,o=!0;try{for(var s=L(e.identityLinks),r=s.next();!r.done;r=s.next()){var a=r.value;if("candidate"===a.type&&a.groupId&&t.roles.includes(a.groupId)){o=!1;break}}}catch(e){n={error:e}}finally{try{r&&!r.done&&(i=s.return)&&i.call(s)}finally{if(n)throw n.error}}return o}})),t.tasks=t.tasks.concat(e),t.tasks.sort((function(e,t){return t.createdUnix-e.createdUnix}))}))},e.prototype.rowTaskClick=function(e){this.taskDetail.openTaskDetails(e)},e}();A.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-detail-tab-summary",template:'\x3c!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the "License");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an "AS IS" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n --\x3e\n\n<div class="container-fluid">\n <div class="row py-4">\n <div class="col-sm-12 col-md-8 col-xl-9">\n <div *ngIf="document">\n <div *ngIf="formDefinition" class="summaryForm">\n <div class="mb-4">\n <valtimo-form-io [form]="formDefinition" [options]="options"></valtimo-form-io>\n </div>\n </div>\n </div>\n </div>\n\n \x3c!--Current user tasks right side--\x3e\n <div class="col-sm-12 col-md-4 col-xl-3">\n <h4 class="user-tasks-title">User tasks</h4>\n <ng-container *ngIf="!tasks.length">\n <valtimo-widget>\n <div class="p-3">\n <img class="float-left" src="assets/audit-2.png" height="25" />\n <span class="float-right">{{ \'summary.userTasksDoneState\' | translate }}</span>\n <div class="clearfix"></div>\n </div>\n </valtimo-widget>\n </ng-container>\n <ng-container *ngFor="let task of tasks">\n <valtimo-widget>\n <div class="p-3 clickable hoverable" (click)="rowTaskClick(task)" *ngIf="!task.isLocked()">\n <span class="float-right badge badge-pill badge-primary">Open</span>\n <strong>{{ task.name }}</strong>\n <div>Created {{ task.created }}</div>\n </div>\n <div class="p-3 hoverable" *ngIf="task.isLocked()">\n <span class="float-right badge badge-pill badge-secondary bg-grey"\n ngbTooltip="{{ \'summary.taskLocked\' | translate }}">\n <i class="icon mdi mdi-lock"></i>\n </span>\n <strong>{{ task.name }}</strong>\n <div>Created {{ task.created }}</div>\n </div>\n </valtimo-widget>\n </ng-container>\n <valtimo-task-detail-modal\n #taskDetail\n (formSubmit)="init()"\n (assignmentOfTaskChanged)="init()"\n ></valtimo-task-detail-modal>\n </div>\n </div>\n</div>\n',encapsulation:t.ViewEncapsulation.None,styles:['/*!\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the "License");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */.hoverable:hover{background-color:#eee}.summaryForm .formio-component{margin-bottom:0!important}.summaryForm .formio-component div[ref=element] .form-control{background-color:#fff;border:0;font-size:13px;height:24px!important;margin:0;padding:0!important}.summaryForm .formio-field div[ref=element] .form-control{font-weight:400}.summaryForm .formio-value div[ref=element] .form-control{font-weight:700}.user-tasks-title{color:#000;font-weight:400;height:20px;margin-bottom:12px;margin-top:0}']}]}],A.ctorParameters=function(){return[{type:n.Router},{type:o.DocumentService},{type:u.TaskService},{type:d.ProcessService},{type:t.ElementRef},{type:t.Renderer2},{type:n.ActivatedRoute},{type:m.FormService},{type:p.UserProviderService}]},A.propDecorators={taskDetail:[{type:t.ViewChild,args:["taskDetail"]}]};var O=function(){function e(e,t){this.route=e,this.documentService=t;var n=this.route.snapshot.paramMap;this.documentId=n.get("documentId")||""}return e.prototype.ngOnInit=function(){var e=this;this.documentService.findProcessDocumentInstances(this.documentId).subscribe((function(t){e.processDocumentInstances=t,e.selectedProcessInstanceId=t[0].id.processInstanceId}))},e.prototype.loadProcessInstance=function(e){this.selectedProcessInstanceId=e},e}();O.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-detail-tab-progress",template:'\x3c!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the "License");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an "AS IS" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n --\x3e\n\n<div class="full-height-tab-content" *ngIf="processDocumentInstances">\n <div class="col-3">\n <label><strong>Process</strong></label><br/>\n <select class="form-control" (change)="loadProcessInstance($event.target.value)">\n <option *ngFor="let processDocumentInstance of processDocumentInstances"\n [value]="processDocumentInstance.id.processInstanceId"\n [selected]="selectedProcessInstanceId === processDocumentInstance.id.processInstanceId">\n {{ processDocumentInstance.processName }}\n </option>\n </select>\n </div>\n <valtimo-process-diagram [processInstanceId]="selectedProcessInstanceId"></valtimo-process-diagram>\n</div>\n',styles:[".full-height-tab-content{height:calc(100vh - 380px);width:100%}"]}]}],O.ctorParameters=function(){return[{type:n.ActivatedRoute},{type:o.DocumentService}]};var P=s;P.locale(localStorage.getItem("langKey")||""),P.defaultFormat="DD MMM YYYY HH:mm";var C=function(){function e(e,t,n){this.route=e,this.documentService=t,this.spinnerService=n,this.spinnerService.show("auditSpinner");var i=this.route.snapshot.paramMap;this.documentId=i.get("documentId")||""}return e.getTranslationKey=function(e){var t=e.className.split(".");return"events."+t[t.length-1]},e.prototype.ngOnInit=function(){var t=this;this.documentService.getAuditLog(this.documentId).subscribe((function(n){var i=[];n.content.forEach((function(t){var n=P(t.metaData.occurredOn),o=n.fromNow();i.push(new c.TimelineItemImpl(n.format("DD MMM YYYY"),n.format("HH:mm"),t.metaData.user,o,e.getTranslationKey(t.auditEvent),t.auditEvent))})),t.timelineItems=i,t.spinnerService.hide("auditSpinner")}))},e}();C.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-detail-tab-audit",template:'\x3c!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the "License");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an "AS IS" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n --\x3e\n\n<div *ngIf="timelineItems">\n <valtimo-timeline [items]="timelineItems"></valtimo-timeline>\n</div>\n<valtimo-spinner\n [useBootstrapSpinner]="false"\n name="auditSpinner"\n bdColor="rgba(125, 125, 125, 0.35)"\n color="#264251"\n type="square-jelly-box"\n>\n</valtimo-spinner>\n',styles:[""]}]}],C.ctorParameters=function(){return[{type:n.ActivatedRoute},{type:o.DocumentService},{type:h.NgxSpinnerService}]};var R=function(){function e(e,t,n,i,o){this.route=e,this.documentService=t,this.toastrService=n,this.uploadProviderService=i,this.downloadService=o,this.relatedFiles=[],this.fields=[{key:"fileName",label:"File name"},{key:"sizeInBytes",label:"Size in bytes"},{key:"createdOn",label:"Created on",viewType:"date"},{key:"createdBy",label:"Created by"}],this.actions=[{columnName:"",iconClass:"fas fa-external-link-alt",callback:this.downloadDocument.bind(this)},{columnName:"",iconClass:"fas fa-trash-alt",callback:this.removeRelatedFile.bind(this)}],this.uploading$=new r.BehaviorSubject(!1);var s=this.route.snapshot.paramMap;this.documentId=s.get("documentId")||"",this.documentDefinitionName=s.get("documentDefinitionName")||""}return e.prototype.ngOnInit=function(){this.loadDocuments()},e.prototype.fileSelected=function(e){var t=this;this.uploading$.next(!0),this.uploadProviderService.uploadFile(e,this.documentDefinitionName).pipe(g.switchMap((function(e){return t.documentService.assignResource(t.documentId,e.data.resourceId)}))).subscribe((function(){t.toastrService.success("Successfully uploaded document to dossier"),t.loadDocuments(),t.uploading$.next(!1)}),(function(){t.toastrService.error("Failed to upload document to dossier"),t.uploading$.next(!1)}))},e.prototype.loadDocuments=function(){var e=this;this.documentService.getDocument(this.documentId).subscribe((function(t){e.relatedFiles=t.relatedFiles}))},e.prototype.downloadDocument=function(e){var t=this;this.uploadProviderService.getResource(e.fileId).subscribe((function(e){t.downloadService.downloadFile(e.url,e.resource.name)}))},e.prototype.removeRelatedFile=function(e){var t=this;this.documentService.removeResource(this.documentId,e.fileId).subscribe((function(){t.toastrService.success("Successfully removed document from dossier"),t.loadDocuments()}),(function(){t.toastrService.error("Failed to remove document from dossier")}))},e}();R.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-detail-tab-documents",template:'\x3c!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the "License");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an "AS IS" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n --\x3e\n\n<valtimo-dropzone\n (fileSelected)="fileSelected($event)"\n [acceptedFiles]="null"\n [hideFilePreview]="true"\n [hideTitle]="true"\n [maxFileSize]="5"\n [showMaxFileSize]="false"\n [camera]="false"\n [uploading]="uploading$ | async"\n></valtimo-dropzone>\n\n<valtimo-widget>\n <valtimo-list\n [fields]="fields"\n [items]="relatedFiles"\n [header]="true"\n [isSearchable]="true"\n [viewMode]="true"\n [actions]="actions"\n >\n <div header>\n <h3 class="list-header-title">{{\'Related documents\' | translate}}</h3>\n <h5 class="list-header-description">{{ \'Overview of all documents in this dossier\' | translate }}</h5>\n </div>\n </valtimo-list>\n</valtimo-widget>\n',styles:[""]}]}],R.ctorParameters=function(){return[{type:n.ActivatedRoute},{type:o.DocumentService},{type:f.ToastrService},{type:v.UploadProviderService},{type:v.DownloadService}]};var F=new t.InjectionToken("TabMap"),M=new Map([[e.DefaultTabs.summary,A],[e.DefaultTabs.progress,O],[e.DefaultTabs.audit,C],[e.DefaultTabs.documents,R]]),E=function(){function e(e){var t=this;void 0===e&&(e=M),this.tabs=[],this.tabMap=e;var n=0;this.tabMap.forEach((function(e,i,o){t.tabs.push(new c.TabImpl(i,n,e)),n++}))}return e.prototype.getTabs=function(){return this.tabs},e}();E.ɵprov=t.ɵɵdefineInjectable({factory:function(){return new E(t.ɵɵinject(F))},token:E,providedIn:"root"}),E.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],E.ctorParameters=function(){return[{type:Map,decorators:[{type:t.Inject,args:[F]}]}]};var U=function(){function e(e,t,n,i,o,s,r,a){this.componentFactoryResolver=e,this.translateService=t,this.documentService=n,this.processService=i,this.route=o,this.router=s,this.location=r,this.tabService=a,this.document=null,this.tabLoader=null,this.processDefinitionListFields=[],this.processDocumentDefinitions=[],this.snapshot=this.route.snapshot.paramMap,this.documentDefinitionName=this.snapshot.get("documentDefinitionName")||"",this.documentId=this.snapshot.get("documentId")||""}return e.prototype.ngOnInit=function(){var e=this;this.tabLoader=new c.TabLoaderImpl(this.tabService.getTabs(),this.componentFactoryResolver,this.viewContainerRef,this.translateService,this.router,this.location),this.documentService.getDocumentDefinition(this.documentDefinitionName).subscribe((function(t){e.documentDefinitionNameTitle=t.schema.title})),this.initialTabName=this.snapshot.get("tab"),this.tabLoader.initial(this.initialTabName),this.getAllAssociatedProcessDefinitions()},e.prototype.getAllAssociatedProcessDefinitions=function(){var e=this;this.documentService.findProcessDocumentDefinitions(this.documentDefinitionName).subscribe((function(t){e.processDocumentDefinitions=t.filter((function(e){return e.startableByUser})),e.processDefinitionListFields=[{key:"processName",label:"Proces"}]}))},e.prototype.startProcess=function(e){this.supportingProcessStart.openModal(e,this.documentId)},e}();U.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-detail",template:'\x3c!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the "License");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an "AS IS" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n --\x3e\n\n<div class="main-content">\n <div class="container-fluid">\n <div class="col-12 px-0 mb-5">\n <valtimo-widget>\n <div class="card-header bg-light card-header-divider pb-5">\n {{ documentDefinitionNameTitle }}\n <div class="float-right">\n <div class="dropdown">\n <button class="btn btn-primary dropdown-toggle" type="button"\n id="startProcessDropdown" placement="bottom"\n [ngbTooltip]="processDocumentDefinitions.length === 0 ? \'No action\' : null"\n [disabled]="processDocumentDefinitions.length === 0"\n data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">\n <span>Start</span>\n <i class="pl-2 fas fa-caret-down"></i>\n </button>\n <div class="dropdown-menu dropdown-menu-right" aria-labelledby="startProcessDropdown">\n <button *ngFor="let processDocumentDefinition of processDocumentDefinitions" class="dropdown-item p"\n href="#"\n (click)="startProcess(processDocumentDefinition)">{{processDocumentDefinition.processName}}</button>\n </div>\n </div>\n </div>\n </div>\n <ul class="nav nav-tabs">\n <li class="nav-item" *ngFor="let tab of tabLoader.tabs">\n <a id="{{ tab.name }}-tab" class="nav-link clickable"\n [ngClass]="{\'active\' : tab.isActive()}"\n data-toggle="tab"\n (click)="tabLoader.load(tab)">\n {{ tabLoader.translateTabName(tab) }}\n </a>\n </li>\n </ul>\n <div class="card-body bg-white p-5 position-relative tab-container">\n <ng-template #tabContainer>Loading...</ng-template>\n <div class="clearfix"></div>\n </div>\n </valtimo-widget>\n </div>\n <valtimo-dossier-supporting-process-start-modal (formSubmit)="tabLoader.refreshView()"\n #supportingProcessStartModal></valtimo-dossier-supporting-process-start-modal>\n </div>\n</div>\n',styles:[".tab-container{min-height:300px}"]}]}],U.ctorParameters=function(){return[{type:t.ComponentFactoryResolver},{type:i.TranslateService},{type:o.DocumentService},{type:d.ProcessService},{type:n.ActivatedRoute},{type:n.Router},{type:l.Location},{type:E}]},U.propDecorators={viewContainerRef:[{type:t.ViewChild,args:["tabContainer",{read:t.ViewContainerRef,static:!0}]}],supportingProcessStart:[{type:t.ViewChild,args:["supportingProcessStartModal"]}]};var q=s;q.locale(localStorage.getItem("langKey")||"");var Y=function(){function e(e,t,n,i,o,s){this.taskService=e,this.documentService=t,this.route=n,this.toastr=i,this.location=o,this.customDefinitions={};var r=this.route.snapshot.paramMap;this.documentDefinitionName=r.get("documentDefinitionName")||"",this.documentId=r.get("documentId")||"",this.taskId=r.get("taskId")||"",this.implementationDefinitions=s.getImplementationEnvironmentDefinitions(this.documentDefinitionName),this.loadDocumentDefinition(this.documentDefinitionName),this.loadDocument(this.documentId)}return e.prototype.ngOnInit=function(){this.getTask(this.taskId),this.implementationDefinitions.definitions.detail.summary&&(this.customDefinitions=this.implementationDefinitions.definitions.detail.summary)},e.prototype.loadDocumentDefinition=function(e){var t=this;this.documentService.getDocumentDefinition(e).subscribe((function(e){t.schema=e.schema}))},e.prototype.loadDocument=function(e){var t=this;this.documentService.getDocument(e).subscribe((function(e){t.document=e}))},e.prototype.getTask=function(e){var t=this;this.taskService.getTask(e).subscribe((function(e){t.task=e,t.task.task.created=q(t.task.task.created).format("DD MMM YYYY HH:mm"),t.page={title:t.task.task.name,subtitle:"Created "+q(t.task.task.created).fromNow()}}))},e.prototype.reset=function(){this.loadDocument(this.documentId)},e.prototype.back=function(){this.location.back()},e.prototype.save=function(){var e=this,t={documentId:this.document.id,content:this.document.content,versionBasedOn:this.document.version};this.documentService.modifyDocument(t).subscribe((function(t){e.document=t.document,e.toastr.success("Document aangepast"),e.location.back()}))},e.prototype.submit=function(e){var t=this,n=Object.assign({},this.document.content,e),i={request:{documentId:this.document.id,content:n,versionBasedOn:this.document.version},taskId:this.task.task.id};this.documentService.modifyDocumentAndCompleteTask(i).subscribe((function(e){t.toastr.success(t.task.task.name+" has successfully been completed"),t.location.back()}))},e.prototype.returnZero=function(){return 0},e}();Y.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-update",template:'\x3c!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the "License");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an "AS IS" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n --\x3e\n\n<div class="main-content">\n <div class="container-fluid">\n <div class="col-12 px-0 mb-5">\n <valtimo-widget [title]="page?.title" [subtitle]="page?.subtitle" [divider]="true">\n <div class="card-body">\n\n \x3c!--view with custom definitions--\x3e\n <div *ngIf="this.customDefinitions">\n <div class="mb-4" *ngFor="let definition of this.customDefinitions | keyvalue: returnZero">\n </div>\n <div class="row pt-3 mt-1">\n <div class="col-sm-12">\n <div class="text-right">\n <button class="btn btn-space btn-default float-left" type="button" (click)="back()" id="back-button">Back</button>\n <button class="btn btn-space btn-secondary" type="button" (click)="reset()" id="reset-button">Reset</button>\n <button class="btn btn-space btn-primary" type="button" (click)="save()" id="save-button">Save</button>\n <button class="btn btn-space btn-primary" type="submit" (click)="submit({})" id="submit-button">Submit</button>\n </div>\n </div>\n </div>\n </div>\n\n <valtimo-camunda-form *ngIf="task?.formFields && !this.customDefinitions"\n (submitted)="submit($event)"\n [formFields]="task.formFields"\n [componentName]="task.formLocation"></valtimo-camunda-form>\n\n </div>\n </valtimo-widget>\n </div>\n </div>\n</div>\n',styles:[""]}]}],Y.ctorParameters=function(){return[{type:u.TaskService},{type:o.DocumentService},{type:n.ActivatedRoute},{type:f.ToastrService},{type:l.Location},{type:N}]};var j={title:"Dossiers",roles:[c.ROLE_USER]},B={title:"Dossiers",parentPath:"dossiers/:documentDefinitionName",roles:[c.ROLE_USER]},V={title:"Task details",parentPath:"dossiers/:documentDefinitionName/document/:documentId/:tab",roles:[c.ROLE_USER]},K=[{path:"dossiers/:documentDefinitionName",component:x,canActivate:[p.AuthGuardService],data:j},{path:"dossiers/:documentDefinitionName/document/:documentId/:tab",component:U,canActivate:[p.AuthGuardService],data:B},{path:"dossiers/:documentDefinitionName/document/:documentId/:tab/tasks/:taskId",component:Y,canActivate:[p.AuthGuardService],data:V}],H=function(){};H.decorators=[{type:t.NgModule,args:[{imports:[l.CommonModule,n.RouterModule.forChild(K)],exports:[n.RouterModule]}]}];var W=function(){function e(e,t,n,i,o,s,r){this.route=e,this.router=t,this.processService=n,this.documentService=i,this.formLinkService=o,this.userProviderService=s,this.logger=r}return e.prototype.ngOnInit=function(){this.isUserAdmin()},e.prototype.loadFormDefinition=function(){var e=this;this.formDefinition=null,this.formLinkService.getStartEventFormDefinitionByProcessDefinitionKey(this.processDefinitionKey).subscribe((function(t){e.formAssociation=t.formAssociation;var n=e.formAssociation.formLink.className.split(".");switch(n[n.length-1]){case"BpmnElementFormIdLink":e.formDefinition=t,e.modal.show();break;case"BpmnElementUrlLink":var i=e.router.serializeUrl(e.router.createUrlTree([t.formAssociation.formLink.url]));window.open(i,"_blank");break;case"BpmnElementAngularStateUrlLink":e.router.navigate([t.formAssociation.formLink.url]);break;default:e.logger.fatal("Unsupported class name")}}),(function(t){e.modal.show()}))},e.prototype.gotoFormLinkScreen=function(){this.modal.hide(),this.router.navigate(["form-links"],{queryParams:{process:this.processDefinitionKey}})},Object.defineProperty(e.prototype,"modalTitle",{get:function(){return"Start - "+this.processName},enumerable:!1,configurable:!0}),e.prototype.openModal=function(e){this.processDefinitionKey=e.id.processDefinitionKey,this.documentDefinitionName=e.id.documentDefinitionId.name,this.processName=e.processName,this.options=new c.FormioOptionsImpl,this.options.disableAlerts=!0;this.options.setHooks((function(e,t){t(null,e)})),this.loadFormDefinition()},e.prototype.onSubmit=function(e){var t=this;this.formioSubmission=e,this.formLinkService.onSubmit(this.processDefinitionKey,this.formAssociation.formLink.id,e.data).subscribe((function(e){t.modal.hide(),t.router.navigate(["dossiers",t.documentDefinitionName,"document",e.documentId,"summary"])}),(function(e){t.form.showErrors(e)}))},e.prototype.isUserAdmin=function(){var e=this;this.userProviderService.getUserSubject().subscribe((function(t){e.isAdmin=t.roles.includes("ROLE_ADMIN")}),(function(t){e.logger.error("Failed to retrieve user identity",t),e.isAdmin=!1}))},e}();W.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-process-start-modal",template:'\x3c!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the "License");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an "AS IS" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n --\x3e\n\n<valtimo-modal #processStartModal elementId="processStartModal" [title]="modalTitle">\n <div body *ngIf="formDefinition">\n <valtimo-form-io #form [form]="formDefinition"\n [options]="options"\n (submit)="onSubmit($event)">\n </valtimo-form-io>\n </div>\n <div body *ngIf="!formDefinition && isAdmin">\n <div class="bg-warning text-black mb-0 p-3 text-center" [translate]="\'formManagement.noFormDefinitionFoundAdmin\'">\n </div>\n <div class="mb-0 mt-4 p-3 text-center">\n <button class="btn btn-secondary btn-space" type="button"\n (click)="gotoFormLinkScreen();"\n id="form-link-button">{{\'formManagement.gotoFormLinksButton\' | translate}}\n </button>\n </div>\n </div>\n <div body *ngIf="!formDefinition && !isAdmin">\n <div class="bg-warning text-black mb-0 p-3 text-center" [translate]="\'formManagement.noFormDefinitionFoundUser\'">\n </div>\n </div>\n</valtimo-modal>\n',encapsulation:t.ViewEncapsulation.None,styles:['/*!\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the "License");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */#processStartModal .formio-component-submit{text-align:right}']}]}],W.ctorParameters=function(){return[{type:n.ActivatedRoute},{type:n.Router},{type:d.ProcessService},{type:o.DocumentService},{type:S.FormLinkService},{type:p.UserProviderService},{type:D.NGXLogger}]},W.propDecorators={form:[{type:t.ViewChild,args:["form",{static:!1}]}],modal:[{type:t.ViewChild,args:["processStartModal",{static:!1}]}]};var z=function(){function e(e,n,i,o,s,r){this.route=e,this.router=n,this.processService=i,this.documentService=o,this.formLinkService=s,this.logger=r,this.formSubmit=new t.EventEmitter}return e.prototype.loadFormDefinition=function(){var e=this;this.formDefinition=null,this.formLinkService.getStartEventFormDefinitionByProcessDefinitionKey(this.processDefinitionKey).subscribe((function(t){e.formAssociation=t.formAssociation;var n=e.formAssociation.formLink.className.split(".");switch(n[n.length-1]){case"BpmnElementFormIdLink":e.formDefinition=t,e.documentService.getDocument(e.documentId).subscribe((function(t){e.submission={data:t.content}}),(function(){return r.noop()})),e.modal.show();break;case"BpmnElementUrlLink":var i=e.router.serializeUrl(e.router.createUrlTree([t.formAssociation.formLink.url]));window.open(i,"_blank");break;case"BpmnElementAngularStateUrlLink":e.router.navigate([t.formAssociation.formLink.url]);break;default:e.logger.fatal("Unsupported class name")}}),(function(t){e.modal.show()}))},Object.defineProperty(e.prototype,"modalTitle",{get:function(){return"Start - "+this.processName},enumerable:!1,configurable:!0}),e.prototype.openModal=function(e,t){this.documentId=t,this.documentDefinitionName=e.id.documentDefinitionId.name,this.processDefinitionKey=e.id.processDefinitionKey,this.processName=e.processName,this.options=new c.FormioOptionsImpl,this.options.disableAlerts=!0;this.options.setHooks((function(e,t){t(null,e)})),this.loadFormDefinition()},e.prototype.onSubmit=function(e){var t=this;this.formioSubmission=e,this.formLinkService.onSubmit(this.processDefinitionKey,this.formAssociation.formLink.id,e.data,this.documentId).subscribe((function(e){t.modal.hide(),t.formSubmit.emit()}),(function(e){t.form.showErrors(e)}))},e.prototype.gotoFormLinkScreen=function(){this.modal.hide(),this.router.navigate(["form-links"],{queryParams:{process:this.processDefinitionKey}})},e}();z.decorators=[{type:t.Component,args:[{selector:"valtimo-dossier-supporting-process-start-modal",template:'\x3c!--\n ~ Copyright 2015-2020 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the "License");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an "AS IS" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n --\x3e\n\n<valtimo-modal #supportingProcessStartModal elementId="supportingProcessStartModal" [title]="modalTitle">\n <div body *ngIf="formDefinition">\n <valtimo-form-io #form\n [submission]="submission"\n [form]="formDefinition"\n [options]="options"\n (submit)="onSubmit($event)">\n </valtimo-form-io>\n </div>\n <div body *ngIf="!formDefinition">\n <div class="bg-warning text-black mb-0 p-3 text-center" [translate]="\'formManagement.noFormDefinitionFound\'">\n </div>\n <div class="mb-0 mt-4 p-3 text-center">\n <button class="btn btn-secondary btn-space" type="button"\n (click)="gotoFormLinkScreen();"\n id="form-link-button">{{\'formManagement.gotoFormLinksButton\' | translate}}\n </button>\n </div>\n </div>\n</valtimo-modal>\n',encapsulation:t.ViewEncapsulation.None,styles:['/*!\n * Copyright 2015-2020 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the "License");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */#supportingProcessStartModal .formio-component-submit{text-align:right}']}]}],z.ctorParameters=function(){return[{type:n.ActivatedRoute},{type:n.Router},{type:d.ProcessService},{type:o.DocumentService},{type:S.FormLinkService},{type:D.NGXLogger}]},z.propDecorators={form:[{type:t.ViewChild,args:["form",{static:!1}]}],modal:[{type:t.ViewChild,args:["supportingProcessStartModal",{static:!1}]}],formSubmit:[{type:t.Output}]};var _=c.HttpLoaderFactory,G=function(){function e(){}return e.forRoot=function(n){return{ngModule:e,providers:[N,E,{provide:F,useFactory:n},{provide:t.ANALYZE_FOR_ENTRY_COMPONENTS,useValue:Array.from(n().values()),multi:!0}]}},e}();G.decorators=[{type:t.NgModule,args:[{declarations:[x,U,A,O,C,R,Y,W,z],imports:[l.CommonModule,H,b.ListModule,b.WidgetModule,b.BpmnJsDiagramModule,b.TimelineModule,b.CamundaFormModule,d.ProcessModule,b.FilterSidebarModule,y.NgbButtonsModule,b.DataListModule,I.FormsModule,m.FormModule,b.FormIoModule,b.ModalModule,b.SpinnerModule,i.TranslateModule.forRoot({loader:{provide:i.TranslateLoader,useFactory:_,deps:[k.HttpClient]}}),u.TaskModule,b.ModalModule,y.NgbTooltipModule,b.UploaderModule,b.DropzoneModule],exports:[x,U],entryComponents:[A,O,C,R]}]}],e.DEFAULT_TABS=M,e.DossierDetailComponent=U,e.DossierDetailTabAuditComponent=C,e.DossierDetailTabDocumentsComponent=R,e.DossierDetailTabProgressComponent=O,e.DossierDetailTabSummaryComponent=A,e.DossierListComponent=x,e.DossierModule=G,e.DossierService=N,e.TAB_MAP=F,e.TabService=E,e.ɵ0=_,e.ɵa=Y,e.ɵb=W,e.ɵc=z,e.ɵd=H,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
16
|
+
//# sourceMappingURL=valtimo-dossier.umd.min.js.map
|