@valtimo/resource 13.24.0 → 13.25.0
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.
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Injectable, NgModule } from '@angular/core';
|
|
3
3
|
import { map as map$1, tap, switchMap } from 'rxjs/operators';
|
|
4
|
-
import { map, of, Subject } from 'rxjs';
|
|
5
4
|
import * as i1 from '@angular/common/http';
|
|
6
5
|
import { HttpHeaders } from '@angular/common/http';
|
|
7
6
|
import * as i2 from '@valtimo/shared';
|
|
8
|
-
import { UploadProvider } from '@valtimo/shared';
|
|
7
|
+
import { InterceptorSkip, UploadProvider } from '@valtimo/shared';
|
|
8
|
+
import { map, of, Subject } from 'rxjs';
|
|
9
9
|
import { v4 } from 'uuid';
|
|
10
10
|
import * as i2$1 from 'ngx-logger';
|
|
11
11
|
|
|
@@ -139,7 +139,7 @@ var Objecttype;
|
|
|
139
139
|
*/
|
|
140
140
|
|
|
141
141
|
/*
|
|
142
|
-
* Copyright 2015-
|
|
142
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
143
143
|
*
|
|
144
144
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
145
145
|
* you may not use this file except in compliance with the License.
|
|
@@ -201,6 +201,7 @@ class OpenZaakService {
|
|
|
201
201
|
return this.http.post(`${this.valtimoApiConfig.endpointUri}v1/resource/temp`, formData, {
|
|
202
202
|
reportProgress: true,
|
|
203
203
|
responseType: 'json',
|
|
204
|
+
headers: new HttpHeaders().set(InterceptorSkip, '403'),
|
|
204
205
|
});
|
|
205
206
|
}
|
|
206
207
|
uploadTempFileWithMetadata(file, metadata) {
|
|
@@ -215,6 +216,7 @@ class OpenZaakService {
|
|
|
215
216
|
return this.http.post(`${this.valtimoApiConfig.endpointUri}v1/resource/temp`, formData, {
|
|
216
217
|
reportProgress: true,
|
|
217
218
|
responseType: 'json',
|
|
219
|
+
headers: new HttpHeaders().set(InterceptorSkip, '403'),
|
|
218
220
|
});
|
|
219
221
|
}
|
|
220
222
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: OpenZaakService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
@@ -601,7 +603,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
601
603
|
}] });
|
|
602
604
|
|
|
603
605
|
/*
|
|
604
|
-
* Copyright 2015-
|
|
606
|
+
* Copyright 2015-2026 Ritense BV, the Netherlands.
|
|
605
607
|
*
|
|
606
608
|
* Licensed under EUPL, Version 1.2 (the "License");
|
|
607
609
|
* you may not use this file except in compliance with the License.
|
|
@@ -625,28 +627,31 @@ var PERMISSION_ACTION;
|
|
|
625
627
|
})(PERMISSION_ACTION || (PERMISSION_ACTION = {}));
|
|
626
628
|
var RESOURCE_PERMISSION_RESOURCE;
|
|
627
629
|
(function (RESOURCE_PERMISSION_RESOURCE) {
|
|
628
|
-
|
|
630
|
+
// Kept as an alias of zgwDocument for transition; old code referencing resourcePermission
|
|
631
|
+
// will transparently carry the new FQCN.
|
|
632
|
+
RESOURCE_PERMISSION_RESOURCE["resourcePermission"] = "com.ritense.documentenapi.authorization.ZgwDocument";
|
|
633
|
+
RESOURCE_PERMISSION_RESOURCE["zgwDocument"] = "com.ritense.documentenapi.authorization.ZgwDocument";
|
|
629
634
|
RESOURCE_PERMISSION_RESOURCE["jsonSchemaDocument"] = "com.ritense.document.domain.impl.JsonSchemaDocument";
|
|
630
635
|
})(RESOURCE_PERMISSION_RESOURCE || (RESOURCE_PERMISSION_RESOURCE = {}));
|
|
631
636
|
const CAN_VIEW_RESOURCE_PERMISSION = {
|
|
632
637
|
action: PERMISSION_ACTION.view,
|
|
633
|
-
resource: RESOURCE_PERMISSION_RESOURCE.
|
|
638
|
+
resource: RESOURCE_PERMISSION_RESOURCE.zgwDocument,
|
|
634
639
|
};
|
|
635
640
|
const CAN_VIEW_LIST_RESOURCE_PERMISSION = {
|
|
636
641
|
action: PERMISSION_ACTION.view_list,
|
|
637
|
-
resource: RESOURCE_PERMISSION_RESOURCE.
|
|
642
|
+
resource: RESOURCE_PERMISSION_RESOURCE.zgwDocument,
|
|
638
643
|
};
|
|
639
644
|
const CAN_CREATE_RESOURCE_PERMISSION = {
|
|
640
645
|
action: PERMISSION_ACTION.create,
|
|
641
|
-
resource: RESOURCE_PERMISSION_RESOURCE.
|
|
646
|
+
resource: RESOURCE_PERMISSION_RESOURCE.zgwDocument,
|
|
642
647
|
};
|
|
643
648
|
const CAN_MODIFY_RESOURCE_PERMISSION = {
|
|
644
649
|
action: PERMISSION_ACTION.modify,
|
|
645
|
-
resource: RESOURCE_PERMISSION_RESOURCE.
|
|
650
|
+
resource: RESOURCE_PERMISSION_RESOURCE.zgwDocument,
|
|
646
651
|
};
|
|
647
652
|
const CAN_DELETE_RESOURCE_PERMISSION = {
|
|
648
653
|
action: PERMISSION_ACTION.delete,
|
|
649
|
-
resource: RESOURCE_PERMISSION_RESOURCE.
|
|
654
|
+
resource: RESOURCE_PERMISSION_RESOURCE.zgwDocument,
|
|
650
655
|
};
|
|
651
656
|
|
|
652
657
|
/*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"valtimo-resource.mjs","sources":["../../../../projects/valtimo/resource/src/lib/models/upload.model.ts","../../../../projects/valtimo/resource/src/lib/models/uploader.model.ts","../../../../projects/valtimo/resource/src/lib/models/open-zaak.model.ts","../../../../projects/valtimo/resource/src/lib/models/index.ts","../../../../projects/valtimo/resource/src/lib/services/open-zaak.service.ts","../../../../projects/valtimo/resource/src/lib/services/open-zaak-upload.service.ts","../../../../projects/valtimo/resource/src/lib/services/s3.service.ts","../../../../projects/valtimo/resource/src/lib/services/s3-upload.service.ts","../../../../projects/valtimo/resource/src/lib/services/upload-provider.service.ts","../../../../projects/valtimo/resource/src/lib/services/download.service.ts","../../../../projects/valtimo/resource/src/lib/resource.module.ts","../../../../projects/valtimo/resource/src/lib/resource-permissions.ts","../../../../projects/valtimo/resource/src/public-api.ts","../../../../projects/valtimo/resource/src/valtimo-resource.ts"],"sourcesContent":["/*\n * Copyright 2015-2025 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 {Observable} from 'rxjs';\nimport {ResourceDto, ResourceReference} from './uploader.model';\n\ninterface ResourceFile {\n customUpload?: boolean;\n originalName: string;\n size: number;\n storage: string;\n type?: string;\n isLast?: boolean;\n url?: string;\n data: {\n baseUrl?: string;\n bucketName?: string;\n createdOn: string;\n extension?: string;\n form?: string;\n key?: string;\n name: string;\n project?: string;\n resourceId: string;\n sizeInBytes: number;\n };\n}\n\ninterface UploadService {\n uploadFile(file: File, caseDefinitionKey?: string, documentId?: string): Observable<ResourceFile>;\n getResource(resourceId: string): Observable<ResourceDto>;\n getResources(documentId: string): Observable<Array<ResourceReference>>;\n checkUploadProcessLink?(caseDefinitionKey: string): Observable<boolean>;\n uploadFileWithMetadata?(\n file: File,\n documentId: string,\n metadata: {[key: string]: any}\n ): Observable<void>;\n uploadTempFileWithMetadata?(\n file: File,\n metadata: {[key: string]: any}\n ): Observable<DocumentenApiFileReference>;\n}\n\ninterface DocumentenApiFileReference {\n filename: string;\n sizeInBytes: number;\n id: string;\n}\n\nexport {ResourceFile, UploadService, DocumentenApiFileReference};\n","/*\n * Copyright 2015-2025 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 interface ResourceDto {\n url: string;\n resource: Resource;\n originalName?: string;\n}\n\nexport interface Resource {\n id?: string;\n key: string;\n name: string;\n sizeInBytes: number;\n extension?: string;\n createdOn?: Date;\n}\n\nexport interface ResourceReference {\n filename: string;\n id: string;\n}\n\nexport class S3Resource implements Resource {\n id?: string = null;\n key: string;\n name: string;\n sizeInBytes: number;\n extension?: string = null;\n createdOn?: Date = null;\n documentId?: string;\n\n constructor(file: File, preSignedUrl: URL, documentId?: string) {\n this.key = decodeURIComponent(preSignedUrl.pathname.substring(1));\n this.name = file.name;\n this.sizeInBytes = file.size;\n if (!documentId) {\n return;\n }\n this.documentId = documentId;\n }\n}\n","/*\n * Copyright 2015-2025 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 interface ZaakType {\n url: string;\n omschrijving: string;\n omschrijvingGeneriek?: string;\n}\n\nexport interface InformatieObjectType {\n url: string;\n omschrijving: string;\n}\n\nexport interface ZaakTypeLink {\n id: string;\n documentDefinitionName: string;\n zaakTypeUrl: string;\n zaakInstanceLinks: ZaakInstanceLink[];\n createWithDossier: boolean;\n zakenApiPluginConfigurationId: string;\n rsin: string;\n}\n\nexport interface ZaakTypeRequest {\n zaaktype: string;\n}\n\nexport interface CreateZaakTypeLinkRequest {\n caseDefinitionKey: string;\n caseVersionTag: string;\n zaakTypeUrl?: string;\n createWithDossier: boolean;\n zakenApiPluginConfigurationId?: string;\n rsin?: string;\n}\n\nexport interface CreateInformatieObjectTypeLinkRequest {\n documentDefinitionName: string;\n zaakType: string;\n informatieObjectType: string;\n}\n\nexport interface ZaakInstanceLink {\n zaakInstanceUrl: string;\n zaakInstanceId: string;\n documentId: string;\n}\n\nexport interface PreviousSelectedZaak {\n zaakTypeLink: ZaakTypeLink;\n zaakType: ZaakType;\n}\n\nexport interface ZaakOperation {\n type: string;\n label: string;\n}\n\nexport interface ZaakStatusType {\n url?: string;\n omschrijving: string;\n omschrijvingGeneriek?: string;\n statustekst?: string;\n zaakType: string;\n volgnummer: number;\n isEindStatus?: boolean;\n informeren?: boolean;\n}\n\nexport interface ZaakResultType {\n url?: string;\n zaaktype: string;\n omschrijving: string;\n resultaattypeomschrijving: string;\n omschrijvingGeneriek?: string;\n selectielijstklasse: string;\n toelichting?: string;\n archiefnominatie?: Archiefnominatie;\n archiefactietermijn?: string;\n brondatumArchiefprocedure?: BrondatumArchiefprocedure;\n}\n\nexport interface ZaakBesluitType {\n url?: string;\n omschrijving: string;\n}\n\nexport interface BrondatumArchiefprocedure {\n afleidingswijze: Afleidingswijze;\n datumkenmerk?: string;\n einddatumBekend?: boolean;\n objecttype?: Objecttype;\n registratie?: string;\n procestermijn?: string;\n}\n\nexport enum Archiefnominatie {\n blijvend_bewaren = 'blijven_bewaren',\n vernietigen = 'vernietigen',\n}\n\nexport enum Afleidingswijze {\n afgehandeld = 'afgehandeld',\n ander_datumkenmerk = 'ander_datumkenmerk',\n eigenschap = 'eigenschap',\n gerelateerde_zaak = 'gerelateerde_zaak',\n hoofdzaak = 'hoofdzaak',\n ingangsdatum_besluit = 'ingangsdatum_besluit',\n termijn = 'termijn',\n vervaldatum_besluit = 'vervaldatum_besluit',\n zaakobject = 'zaakobject',\n}\n\nexport enum Objecttype {\n adres = 'adres',\n besluit = 'besluit',\n buurt = 'buurt',\n enkelvoudig_document = 'enkelvoudig_document',\n gemeente = 'gemeente',\n gemeentelijke_openbare_ruimte = 'gemeentelijke_openbare_ruimte',\n huishouden = 'huishouden',\n inrichtingselement = 'inrichtingselement',\n kadastrale_onroerende_zaak = 'kadastrale_onroerende_zaak',\n kunstwerkdeel = 'kunstwerkdeel',\n maatschappelijke_activiteit = 'maatschappelijke_activiteit',\n medewerker = 'medewerker',\n natuurlijk_persoon = 'natuurlijk_persoon',\n niet_natuurlijk_persoon = 'niet_natuurlijk_persoon',\n openbare_ruimte = 'openbare_ruimte',\n organisatorische_eenheid = 'organisatorische_eenheid',\n pand = 'pand',\n spoorbaandeel = 'spoorbaandeel',\n status = 'status',\n terreindeel = 'terreindeel',\n terrein_gebouwd_object = 'terrein_gebouwd_object',\n vestiging = 'vestiging',\n waterdeel = 'waterdeel',\n wegdeel = 'wegdeel',\n wijk = 'wijk',\n woonplaats = 'woonplaats',\n woz_deelobject = 'woz_deelobject',\n woz_object = 'woz_object',\n woz_waarde = 'woz_waarde',\n zakelijk_recht = 'zakelijk_recht',\n overige = 'overige',\n}\n","/*\n * Copyright 2015-2025 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 * from './upload.model';\nexport * from './uploader.model';\nexport * from './open-zaak.model';\n","/*\n * Copyright 2015-2025 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 {HttpClient} from '@angular/common/http';\nimport {ConfigService, Page} from '@valtimo/shared';\nimport {map, Observable} from 'rxjs';\nimport {\n CreateZaakTypeLinkRequest,\n DocumentenApiFileReference,\n ResourceDto,\n ResourceReference,\n ZaakType,\n ZaakTypeLink,\n} from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class OpenZaakService {\n private valtimoApiConfig: any;\n\n constructor(\n private http: HttpClient,\n private configService: ConfigService\n ) {\n this.valtimoApiConfig = this.configService.config.valtimoApi;\n }\n\n public getResource(resourceId: string): Observable<ResourceDto> {\n return this.http.get<ResourceDto>(\n `${this.valtimoApiConfig.endpointUri}v1/resource/${resourceId}`\n );\n }\n\n public getResources(documentId: string): Observable<Array<ResourceReference>> {\n return this.http\n .get<\n Page<any>\n >(`${this.valtimoApiConfig.endpointUri}v2/zaken-api/document/${documentId}/files`)\n .pipe(\n map(page =>\n page.content.map(file => ({\n filename: file.bestandsnaam,\n id: file.fileId,\n }))\n )\n );\n }\n\n public getZaakTypes(): Observable<ZaakType[]> {\n return this.http.get<ZaakType[]>(\n `${this.valtimoApiConfig.endpointUri}management/v1/zgw/zaaktype`\n );\n }\n\n public getZaakTypeLink(\n caseDefinitionKey: string,\n caseVersionTag: string\n ): Observable<ZaakTypeLink> {\n return this.http.get<ZaakTypeLink>(\n `${this.valtimoApiConfig.endpointUri}management/v1/case-definition/${caseDefinitionKey}/version/${caseVersionTag}/zaak-type-link`\n );\n }\n\n public createZaakTypeLink(request: CreateZaakTypeLinkRequest): Observable<any> {\n return this.http.post<any>(\n `${this.valtimoApiConfig.endpointUri}management/v1/case-definition/${request.caseDefinitionKey}/version/${request.caseVersionTag}/zaak-type-link`,\n request\n );\n }\n public deleteZaakTypeLink(caseDefinitionKey: string, caseVersionTag: string): Observable<any> {\n return this.http.delete<any>(\n `${this.valtimoApiConfig.endpointUri}management/v1/case-definition/${caseDefinitionKey}/version/${caseVersionTag}/zaak-type-link`\n );\n }\n\n public getZaakTypeLinkListByProcess(\n processDefinitionKey: string\n ): Observable<Array<ZaakTypeLink>> {\n return this.http.get<Array<ZaakTypeLink>>(\n `${this.valtimoApiConfig.endpointUri}management/v1/zaak-type-link/process/${processDefinitionKey}`\n );\n }\n\n public upload(file: File, caseDefinitionKey: string): Observable<DocumentenApiFileReference> {\n return this.uploadTempFileWithMetadata(file, {caseDefinitionKey});\n }\n\n public uploadWithMetadata(\n file: File,\n documentId: string,\n metadata: {[key: string]: any}\n ): Observable<void> {\n const formData: FormData = new FormData();\n formData.append('file', file);\n formData.append('documentId', documentId);\n\n Object.keys(metadata).forEach(metaDataKey => {\n const metadataValue = metadata[metaDataKey];\n\n if (metadataValue) {\n formData.append(metaDataKey, metadataValue);\n }\n });\n\n return this.http.post<void>(`${this.valtimoApiConfig.endpointUri}v1/resource/temp`, formData, {\n reportProgress: true,\n responseType: 'json',\n });\n }\n\n public uploadTempFileWithMetadata(\n file: File,\n metadata: {[key: string]: any}\n ): Observable<DocumentenApiFileReference> {\n const formData: FormData = new FormData();\n formData.append('file', file);\n\n Object.keys(metadata).forEach(metaDataKey => {\n const metadataValue = metadata[metaDataKey];\n\n if (metadataValue) {\n formData.append(metaDataKey, metadataValue);\n }\n });\n\n return this.http.post<DocumentenApiFileReference>(\n `${this.valtimoApiConfig.endpointUri}v1/resource/temp`,\n formData,\n {\n reportProgress: true,\n responseType: 'json',\n }\n );\n }\n}\n","/*\n * Copyright 2015-2025 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 {HttpClient} from '@angular/common/http';\nimport {ConfigService} from '@valtimo/shared';\nimport {Observable} from 'rxjs';\nimport {\n DocumentenApiFileReference,\n ResourceDto,\n ResourceFile,\n ResourceReference,\n UploadService,\n} from '../models';\nimport {OpenZaakService} from './open-zaak.service';\nimport {map} from 'rxjs/operators';\n\n@Injectable()\nexport class OpenZaakUploadService implements UploadService {\n private valtimoApiConfig: any;\n\n constructor(\n private readonly openZaakService: OpenZaakService,\n private http: HttpClient,\n private configService: ConfigService\n ) {\n this.valtimoApiConfig = configService.config.valtimoApi;\n }\n\n uploadFile(file: File, caseDefinitionKey: string): Observable<ResourceFile> {\n return this.openZaakService\n .upload(new File([file], file.name, {type: file.type}), caseDefinitionKey)\n .pipe(map(result => this.getResourceFile(result)));\n }\n\n uploadFileWithMetadata(\n file: File,\n documentId: string,\n metadata: {[key: string]: any}\n ): Observable<void> {\n return this.openZaakService.uploadWithMetadata(\n new File([file], metadata?.bestandsnaam || file.name, {type: file.type}),\n documentId,\n metadata\n );\n }\n\n uploadTempFileWithMetadata(\n file: File,\n metadata: {[key: string]: any}\n ): Observable<DocumentenApiFileReference> {\n return this.openZaakService.uploadTempFileWithMetadata(\n new File([file], metadata?.bestandsnaam || file.name, {type: file.type}),\n metadata\n );\n }\n\n getResource(resourceId: string): Observable<ResourceDto> {\n return this.openZaakService.getResource(resourceId);\n }\n\n getResources(documentId: string): Observable<Array<ResourceReference>> {\n return this.openZaakService.getResources(documentId);\n }\n\n checkUploadProcessLink(caseDefinitionKey: string): Observable<boolean> {\n return this.http\n .get<{\n processCaseLinkExists: boolean;\n }>(\n `${this.valtimoApiConfig.endpointUri}v1/uploadprocess/case/${caseDefinitionKey}/check-link`\n )\n .pipe(map(res => res.processCaseLinkExists));\n }\n\n private getResourceFile(result: DocumentenApiFileReference): ResourceFile {\n const extension =\n result.filename && result.filename.includes('.')\n ? result.filename.split('.').pop() || ''\n : '';\n return {\n customUpload: true,\n originalName: result.filename,\n size: result.sizeInBytes,\n url: `/api/v1/resource/${result.id}/download`,\n storage: 'openZaak',\n type: extension,\n data: {\n createdOn: Date(),\n name: result.filename,\n sizeInBytes: result.sizeInBytes,\n resourceId: result.id,\n extension: extension,\n },\n };\n }\n}\n","/*\n * Copyright 2015-2025 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 {HttpClient, HttpHeaders} from '@angular/common/http';\nimport {Observable} from 'rxjs';\nimport {ConfigService} from '@valtimo/shared';\nimport {Resource, S3Resource, ResourceDto} from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class S3Service {\n private valtimoApiConfig: any;\n\n constructor(\n private http: HttpClient,\n private configService: ConfigService\n ) {\n this.valtimoApiConfig = configService.config.valtimoApi;\n }\n\n public getPreSignedUrl(fileName: string): Observable<string> {\n const headers = new HttpHeaders().set('Content-Type', 'text/plain; charset=utf-8');\n const options = {headers, responseType: 'text' as 'text'};\n return this.http.get(\n `${this.valtimoApiConfig.endpointUri}v1/resource/pre-signed-url/${fileName}`,\n options\n );\n }\n\n public upload(url: URL, file: File): Observable<any> {\n const headers = new HttpHeaders().set('Content-Type', file.type);\n return this.http.put(url.toString(), file, {headers});\n }\n\n public registerResource(s3ResourceDTO: S3Resource): Observable<Resource> {\n return this.http.put<Resource>(\n `${this.valtimoApiConfig.endpointUri}v1/resource`,\n s3ResourceDTO\n );\n }\n\n public get(resourceId: string): Observable<ResourceDto> {\n const headers = new HttpHeaders().set('Content-Type', 'application/json;charset=UTF-8');\n return this.http.get<ResourceDto>(\n `${this.valtimoApiConfig.endpointUri}v1/resource/${resourceId}`,\n {headers}\n );\n }\n\n public delete(resourceId: string): Observable<any> {\n const headers = new HttpHeaders().set('Content-Type', 'application/json;charset=UTF-8');\n return this.http.delete(`${this.valtimoApiConfig.endpointUri}v1/resource/${resourceId}`, {\n headers,\n });\n }\n}\n","/*\n * Copyright 2015-2025 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 {Observable} from 'rxjs';\nimport {map, switchMap, tap} from 'rxjs/operators';\nimport {ResourceDto, ResourceFile, ResourceReference, S3Resource, UploadService} from '../models';\nimport {Injectable} from '@angular/core';\nimport {v4 as uuidv4} from 'uuid';\nimport {S3Service} from './s3.service';\nimport {HttpClient} from '@angular/common/http';\nimport {ConfigService} from '@valtimo/shared';\n\n@Injectable()\nexport class S3UploadService implements UploadService {\n private readonly valtimoEndpointUri!: string;\n\n constructor(\n private readonly s3Service: S3Service,\n private readonly configService: ConfigService,\n private readonly http: HttpClient\n ) {\n this.valtimoEndpointUri = this.configService.config.valtimoApi.endpointUri;\n }\n\n uploadFile(file: File, _, documentId?: string): Observable<ResourceFile> {\n let resourceUrl: URL;\n const fileName = file.name;\n const splitFileName = fileName.split('.');\n const fileNameWithUUID = `${splitFileName[0]}-${uuidv4()}.${splitFileName[1]}`;\n const renamedFile = new File([file], fileNameWithUUID, {type: file.type});\n\n return this.s3Service.getPreSignedUrl(renamedFile.name).pipe(\n map(url => new URL(url)),\n tap(url => (resourceUrl = url)),\n switchMap(url => this.s3Service.upload(url, renamedFile)),\n map(() => new S3Resource(file, resourceUrl, documentId)),\n switchMap(s3Resource => this.s3Service.registerResource(s3Resource)),\n switchMap(s3Resource => this.s3Service.get(s3Resource.id)),\n map(result => ({...result, originalName: file.name})),\n map(result => this.getResourceFile(result))\n );\n }\n\n getResource(resourceId: string): Observable<ResourceDto> {\n return this.s3Service.get(resourceId);\n }\n\n getResources(documentId: string): Observable<Array<ResourceReference>> {\n return this.http.get<any>(`${this.valtimoEndpointUri}v1/document/${documentId}`).pipe(\n map(document => document.relatedFiles ?? []),\n map(resources =>\n resources.map(relatedFile => ({\n filename: relatedFile.fileName,\n id: relatedFile.fileId,\n }))\n )\n );\n }\n\n private getResourceFile(result: ResourceDto): ResourceFile {\n return {\n customUpload: true,\n originalName: result.originalName,\n url: result.url,\n size: result.resource.sizeInBytes,\n storage: 'url',\n type: result.resource.extension,\n data: {\n key: result.resource.key,\n bucketName: result.resource.name,\n createdOn: result.resource.createdOn as any as string,\n name: result.originalName,\n sizeInBytes: result.resource.sizeInBytes,\n resourceId: result.resource.id.split('ResourceId(id=')[1].slice(0, -1),\n },\n };\n }\n}\n","/*\n * Copyright 2015-2025 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, Injector} from '@angular/core';\nimport {NGXLogger} from 'ngx-logger';\nimport {\n DocumentenApiFileReference,\n ResourceDto,\n ResourceFile,\n ResourceReference,\n UploadService,\n} from '../models';\nimport {ConfigService, UploadProvider} from '@valtimo/shared';\nimport {Observable, of} from 'rxjs';\nimport {OpenZaakUploadService} from './open-zaak-upload.service';\nimport {S3UploadService} from './s3-upload.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class UploadProviderService implements UploadService {\n private readonly uploadService: UploadService;\n\n constructor(\n private configService: ConfigService,\n private injector: Injector,\n private logger: NGXLogger\n ) {\n let uploadService: UploadService;\n\n switch (configService.config.uploadProvider) {\n case UploadProvider.S3:\n uploadService = injector.get<UploadService>(S3UploadService);\n break;\n case UploadProvider.OPEN_ZAAK:\n uploadService = injector.get<UploadService>(OpenZaakUploadService);\n break;\n case UploadProvider.DOCUMENTEN_API:\n uploadService = injector.get<UploadService>(OpenZaakUploadService);\n break;\n }\n\n this.uploadService = uploadService;\n this.logger.debug('Loading UploadService as', this.uploadService);\n }\n\n uploadFile(\n file: File,\n caseDefinitionKey?: string,\n documentId?: string\n ): Observable<ResourceFile> {\n return this.uploadService.uploadFile(file, caseDefinitionKey, documentId);\n }\n\n getResource(resourceId: string): Observable<ResourceDto> {\n return this.uploadService.getResource(resourceId);\n }\n\n getResources(documentId: string): Observable<Array<ResourceReference>> {\n return this.uploadService.getResources(documentId);\n }\n\n checkUploadProcessLink(caseDefinitionKey: string): Observable<boolean> {\n if (this.uploadService.checkUploadProcessLink) {\n return this.uploadService.checkUploadProcessLink(caseDefinitionKey);\n }\n\n return of(false);\n }\n\n uploadFileWithMetadata(\n file: File,\n documentId: string,\n metadata: {[key: string]: any}\n ): Observable<void> {\n if (this.uploadService.uploadFileWithMetadata) {\n return this.uploadService.uploadFileWithMetadata(file, documentId, metadata);\n }\n\n return of(null);\n }\n\n uploadTempFileWithMetadata(\n file: File,\n metadata: {[key: string]: any}\n ): Observable<DocumentenApiFileReference> {\n if (this.uploadService.uploadTempFileWithMetadata) {\n return this.uploadService.uploadTempFileWithMetadata(file, metadata);\n }\n\n return of(null);\n }\n}\n","/*\n * Copyright 2015-2025 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/shared';\nimport {HttpClient} from '@angular/common/http';\nimport {Observable, Subject} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DownloadService {\n constructor(\n private http: HttpClient,\n private configService: ConfigService\n ) {}\n\n downloadFile(url: string, name: string, forceDownload?: boolean): Observable<null> {\n const finishedSubject$ = new Subject<null>();\n\n if (\n url.startsWith(this.configService.config.valtimoApi.endpointUri) ||\n url.startsWith(window.location.origin) ||\n url.startsWith('/api/')\n ) {\n // if download url is on backend use angular to get the content so access token is used\n this.http.get(url, {responseType: 'blob'}).subscribe(content => {\n const downloadUrl = window.URL.createObjectURL(content);\n if (!this.isFileTypeSupportedForNewWindow(name) || forceDownload) {\n this.openDownloadLink(downloadUrl, name);\n } else {\n this.openBlobInNewTab(downloadUrl, name);\n }\n finishedSubject$.next(null);\n });\n } else {\n // download links to external services (like amazon s3) open in a new window\n this.openDownloadLink(url, name);\n finishedSubject$.next(null);\n }\n\n return finishedSubject$;\n }\n\n /**\n * A window.open won't work for blobs because ad blocker extensions will immediately\n * close the tab again. The method used below will prevent this from happening.\n */\n private openBlobInNewTab(url: string, name: string) {\n const newWindow = window.open('/');\n\n // newWindow will be null if the browser blocks the opening of a new tab.\n if (newWindow != null) {\n newWindow.location = url;\n } else {\n // In case the tab is blocked it will just download the file.\n this.openDownloadLink(url, name);\n }\n }\n\n private openDownloadLink(url: string, name: string) {\n const link = document.createElement('a');\n link.href = url;\n link.download = name;\n link.target = '_blank';\n link.click();\n link.remove();\n }\n\n private isFileTypeSupportedForNewWindow(name: string): boolean {\n const supportedFileTypes = this.configService?.config\n ?.supportedDocumentFileTypesToViewInBrowser || ['pdf', 'jpg', 'png', 'svg'];\n\n return supportedFileTypes.some(function (suffix) {\n return name.toUpperCase().endsWith(suffix.toUpperCase());\n });\n }\n}\n","/*\n * Copyright 2015-2025 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 {OpenZaakUploadService} from './services/open-zaak-upload.service';\nimport {S3UploadService} from './services/s3-upload.service';\nimport {UploadProviderService} from './services/upload-provider.service';\nimport {OpenZaakService} from './services/open-zaak.service';\nimport {S3Service} from './services/s3.service';\nimport {DownloadService} from './services/download.service';\n\n@NgModule({\n declarations: [],\n imports: [],\n exports: [],\n providers: [\n OpenZaakUploadService,\n S3UploadService,\n UploadProviderService,\n OpenZaakService,\n S3Service,\n DownloadService,\n ],\n})\nexport class ResourceModule {}\n","/*\n * Copyright 2015-2025 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 {PermissionRequest} from '@valtimo/access-control';\n\nenum PERMISSION_ACTION {\n view = 'view',\n view_list = 'view_list',\n create = 'create',\n modify = 'modify',\n delete = 'delete',\n}\n\nenum RESOURCE_PERMISSION_RESOURCE {\n resourcePermission = 'com.ritense.resource.authorization.ResourcePermission',\n jsonSchemaDocument = 'com.ritense.document.domain.impl.JsonSchemaDocument',\n}\n\nconst CAN_VIEW_RESOURCE_PERMISSION: PermissionRequest = {\n action: PERMISSION_ACTION.view,\n resource: RESOURCE_PERMISSION_RESOURCE.resourcePermission,\n};\n\nconst CAN_VIEW_LIST_RESOURCE_PERMISSION: PermissionRequest = {\n action: PERMISSION_ACTION.view_list,\n resource: RESOURCE_PERMISSION_RESOURCE.resourcePermission,\n};\n\nconst CAN_CREATE_RESOURCE_PERMISSION: PermissionRequest = {\n action: PERMISSION_ACTION.create,\n resource: RESOURCE_PERMISSION_RESOURCE.resourcePermission,\n};\n\nconst CAN_MODIFY_RESOURCE_PERMISSION: PermissionRequest = {\n action: PERMISSION_ACTION.modify,\n resource: RESOURCE_PERMISSION_RESOURCE.resourcePermission,\n};\n\nconst CAN_DELETE_RESOURCE_PERMISSION: PermissionRequest = {\n action: PERMISSION_ACTION.delete,\n resource: RESOURCE_PERMISSION_RESOURCE.resourcePermission,\n};\n\nexport {\n CAN_VIEW_RESOURCE_PERMISSION,\n CAN_VIEW_LIST_RESOURCE_PERMISSION,\n CAN_CREATE_RESOURCE_PERMISSION,\n CAN_MODIFY_RESOURCE_PERMISSION,\n CAN_DELETE_RESOURCE_PERMISSION,\n RESOURCE_PERMISSION_RESOURCE,\n};\n","/*\n * Copyright 2015-2025 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 upload\n */\n\nexport * from './lib/models';\nexport * from './lib/resource.module';\nexport * from './lib/services/open-zaak.service';\nexport * from './lib/services/upload-provider.service';\nexport * from './lib/services/s3.service';\nexport * from './lib/services/download.service';\nexport * from './lib/resource-permissions';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["map","i1.OpenZaakService","i2","i3","uuidv4","i1.S3Service","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"valtimo-resource.mjs","sources":["../../../../projects/valtimo/resource/src/lib/models/upload.model.ts","../../../../projects/valtimo/resource/src/lib/models/uploader.model.ts","../../../../projects/valtimo/resource/src/lib/models/open-zaak.model.ts","../../../../projects/valtimo/resource/src/lib/models/index.ts","../../../../projects/valtimo/resource/src/lib/services/open-zaak.service.ts","../../../../projects/valtimo/resource/src/lib/services/open-zaak-upload.service.ts","../../../../projects/valtimo/resource/src/lib/services/s3.service.ts","../../../../projects/valtimo/resource/src/lib/services/s3-upload.service.ts","../../../../projects/valtimo/resource/src/lib/services/upload-provider.service.ts","../../../../projects/valtimo/resource/src/lib/services/download.service.ts","../../../../projects/valtimo/resource/src/lib/resource.module.ts","../../../../projects/valtimo/resource/src/lib/resource-permissions.ts","../../../../projects/valtimo/resource/src/public-api.ts","../../../../projects/valtimo/resource/src/valtimo-resource.ts"],"sourcesContent":["/*\n * Copyright 2015-2025 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 {Observable} from 'rxjs';\nimport {ResourceDto, ResourceReference} from './uploader.model';\n\ninterface ResourceFile {\n customUpload?: boolean;\n originalName: string;\n size: number;\n storage: string;\n type?: string;\n isLast?: boolean;\n url?: string;\n data: {\n baseUrl?: string;\n bucketName?: string;\n createdOn: string;\n extension?: string;\n form?: string;\n key?: string;\n name: string;\n project?: string;\n resourceId: string;\n sizeInBytes: number;\n };\n}\n\ninterface UploadService {\n uploadFile(file: File, caseDefinitionKey?: string, documentId?: string): Observable<ResourceFile>;\n getResource(resourceId: string): Observable<ResourceDto>;\n getResources(documentId: string): Observable<Array<ResourceReference>>;\n checkUploadProcessLink?(caseDefinitionKey: string): Observable<boolean>;\n uploadFileWithMetadata?(\n file: File,\n documentId: string,\n metadata: {[key: string]: any}\n ): Observable<void>;\n uploadTempFileWithMetadata?(\n file: File,\n metadata: {[key: string]: any}\n ): Observable<DocumentenApiFileReference>;\n}\n\ninterface DocumentenApiFileReference {\n filename: string;\n sizeInBytes: number;\n id: string;\n}\n\nexport {ResourceFile, UploadService, DocumentenApiFileReference};\n","/*\n * Copyright 2015-2025 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 interface ResourceDto {\n url: string;\n resource: Resource;\n originalName?: string;\n}\n\nexport interface Resource {\n id?: string;\n key: string;\n name: string;\n sizeInBytes: number;\n extension?: string;\n createdOn?: Date;\n}\n\nexport interface ResourceReference {\n filename: string;\n id: string;\n}\n\nexport class S3Resource implements Resource {\n id?: string = null;\n key: string;\n name: string;\n sizeInBytes: number;\n extension?: string = null;\n createdOn?: Date = null;\n documentId?: string;\n\n constructor(file: File, preSignedUrl: URL, documentId?: string) {\n this.key = decodeURIComponent(preSignedUrl.pathname.substring(1));\n this.name = file.name;\n this.sizeInBytes = file.size;\n if (!documentId) {\n return;\n }\n this.documentId = documentId;\n }\n}\n","/*\n * Copyright 2015-2025 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 interface ZaakType {\n url: string;\n omschrijving: string;\n omschrijvingGeneriek?: string;\n}\n\nexport interface InformatieObjectType {\n url: string;\n omschrijving: string;\n}\n\nexport interface ZaakTypeLink {\n id: string;\n documentDefinitionName: string;\n zaakTypeUrl: string;\n zaakInstanceLinks: ZaakInstanceLink[];\n createWithDossier: boolean;\n zakenApiPluginConfigurationId: string;\n rsin: string;\n}\n\nexport interface ZaakTypeRequest {\n zaaktype: string;\n}\n\nexport interface CreateZaakTypeLinkRequest {\n caseDefinitionKey: string;\n caseVersionTag: string;\n zaakTypeUrl?: string;\n createWithDossier: boolean;\n zakenApiPluginConfigurationId?: string;\n rsin?: string;\n}\n\nexport interface CreateInformatieObjectTypeLinkRequest {\n documentDefinitionName: string;\n zaakType: string;\n informatieObjectType: string;\n}\n\nexport interface ZaakInstanceLink {\n zaakInstanceUrl: string;\n zaakInstanceId: string;\n documentId: string;\n}\n\nexport interface PreviousSelectedZaak {\n zaakTypeLink: ZaakTypeLink;\n zaakType: ZaakType;\n}\n\nexport interface ZaakOperation {\n type: string;\n label: string;\n}\n\nexport interface ZaakStatusType {\n url?: string;\n omschrijving: string;\n omschrijvingGeneriek?: string;\n statustekst?: string;\n zaakType: string;\n volgnummer: number;\n isEindStatus?: boolean;\n informeren?: boolean;\n}\n\nexport interface ZaakResultType {\n url?: string;\n zaaktype: string;\n omschrijving: string;\n resultaattypeomschrijving: string;\n omschrijvingGeneriek?: string;\n selectielijstklasse: string;\n toelichting?: string;\n archiefnominatie?: Archiefnominatie;\n archiefactietermijn?: string;\n brondatumArchiefprocedure?: BrondatumArchiefprocedure;\n}\n\nexport interface ZaakBesluitType {\n url?: string;\n omschrijving: string;\n}\n\nexport interface BrondatumArchiefprocedure {\n afleidingswijze: Afleidingswijze;\n datumkenmerk?: string;\n einddatumBekend?: boolean;\n objecttype?: Objecttype;\n registratie?: string;\n procestermijn?: string;\n}\n\nexport enum Archiefnominatie {\n blijvend_bewaren = 'blijven_bewaren',\n vernietigen = 'vernietigen',\n}\n\nexport enum Afleidingswijze {\n afgehandeld = 'afgehandeld',\n ander_datumkenmerk = 'ander_datumkenmerk',\n eigenschap = 'eigenschap',\n gerelateerde_zaak = 'gerelateerde_zaak',\n hoofdzaak = 'hoofdzaak',\n ingangsdatum_besluit = 'ingangsdatum_besluit',\n termijn = 'termijn',\n vervaldatum_besluit = 'vervaldatum_besluit',\n zaakobject = 'zaakobject',\n}\n\nexport enum Objecttype {\n adres = 'adres',\n besluit = 'besluit',\n buurt = 'buurt',\n enkelvoudig_document = 'enkelvoudig_document',\n gemeente = 'gemeente',\n gemeentelijke_openbare_ruimte = 'gemeentelijke_openbare_ruimte',\n huishouden = 'huishouden',\n inrichtingselement = 'inrichtingselement',\n kadastrale_onroerende_zaak = 'kadastrale_onroerende_zaak',\n kunstwerkdeel = 'kunstwerkdeel',\n maatschappelijke_activiteit = 'maatschappelijke_activiteit',\n medewerker = 'medewerker',\n natuurlijk_persoon = 'natuurlijk_persoon',\n niet_natuurlijk_persoon = 'niet_natuurlijk_persoon',\n openbare_ruimte = 'openbare_ruimte',\n organisatorische_eenheid = 'organisatorische_eenheid',\n pand = 'pand',\n spoorbaandeel = 'spoorbaandeel',\n status = 'status',\n terreindeel = 'terreindeel',\n terrein_gebouwd_object = 'terrein_gebouwd_object',\n vestiging = 'vestiging',\n waterdeel = 'waterdeel',\n wegdeel = 'wegdeel',\n wijk = 'wijk',\n woonplaats = 'woonplaats',\n woz_deelobject = 'woz_deelobject',\n woz_object = 'woz_object',\n woz_waarde = 'woz_waarde',\n zakelijk_recht = 'zakelijk_recht',\n overige = 'overige',\n}\n","/*\n * Copyright 2015-2025 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 * from './upload.model';\nexport * from './uploader.model';\nexport * from './open-zaak.model';\n","/*\n * Copyright 2015-2026 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 {HttpClient, HttpHeaders} from '@angular/common/http';\nimport {ConfigService, InterceptorSkip, Page} from '@valtimo/shared';\nimport {map, Observable} from 'rxjs';\nimport {\n CreateZaakTypeLinkRequest,\n DocumentenApiFileReference,\n ResourceDto,\n ResourceReference,\n ZaakType,\n ZaakTypeLink,\n} from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class OpenZaakService {\n private valtimoApiConfig: any;\n\n constructor(\n private http: HttpClient,\n private configService: ConfigService\n ) {\n this.valtimoApiConfig = this.configService.config.valtimoApi;\n }\n\n public getResource(resourceId: string): Observable<ResourceDto> {\n return this.http.get<ResourceDto>(\n `${this.valtimoApiConfig.endpointUri}v1/resource/${resourceId}`\n );\n }\n\n public getResources(documentId: string): Observable<Array<ResourceReference>> {\n return this.http\n .get<\n Page<any>\n >(`${this.valtimoApiConfig.endpointUri}v2/zaken-api/document/${documentId}/files`)\n .pipe(\n map(page =>\n page.content.map(file => ({\n filename: file.bestandsnaam,\n id: file.fileId,\n }))\n )\n );\n }\n\n public getZaakTypes(): Observable<ZaakType[]> {\n return this.http.get<ZaakType[]>(\n `${this.valtimoApiConfig.endpointUri}management/v1/zgw/zaaktype`\n );\n }\n\n public getZaakTypeLink(\n caseDefinitionKey: string,\n caseVersionTag: string\n ): Observable<ZaakTypeLink> {\n return this.http.get<ZaakTypeLink>(\n `${this.valtimoApiConfig.endpointUri}management/v1/case-definition/${caseDefinitionKey}/version/${caseVersionTag}/zaak-type-link`\n );\n }\n\n public createZaakTypeLink(request: CreateZaakTypeLinkRequest): Observable<any> {\n return this.http.post<any>(\n `${this.valtimoApiConfig.endpointUri}management/v1/case-definition/${request.caseDefinitionKey}/version/${request.caseVersionTag}/zaak-type-link`,\n request\n );\n }\n public deleteZaakTypeLink(caseDefinitionKey: string, caseVersionTag: string): Observable<any> {\n return this.http.delete<any>(\n `${this.valtimoApiConfig.endpointUri}management/v1/case-definition/${caseDefinitionKey}/version/${caseVersionTag}/zaak-type-link`\n );\n }\n\n public getZaakTypeLinkListByProcess(\n processDefinitionKey: string\n ): Observable<Array<ZaakTypeLink>> {\n return this.http.get<Array<ZaakTypeLink>>(\n `${this.valtimoApiConfig.endpointUri}management/v1/zaak-type-link/process/${processDefinitionKey}`\n );\n }\n\n public upload(file: File, caseDefinitionKey: string): Observable<DocumentenApiFileReference> {\n return this.uploadTempFileWithMetadata(file, {caseDefinitionKey});\n }\n\n public uploadWithMetadata(\n file: File,\n documentId: string,\n metadata: {[key: string]: any}\n ): Observable<void> {\n const formData: FormData = new FormData();\n formData.append('file', file);\n formData.append('documentId', documentId);\n\n Object.keys(metadata).forEach(metaDataKey => {\n const metadataValue = metadata[metaDataKey];\n\n if (metadataValue) {\n formData.append(metaDataKey, metadataValue);\n }\n });\n\n return this.http.post<void>(`${this.valtimoApiConfig.endpointUri}v1/resource/temp`, formData, {\n reportProgress: true,\n responseType: 'json',\n headers: new HttpHeaders().set(InterceptorSkip, '403'),\n });\n }\n\n public uploadTempFileWithMetadata(\n file: File,\n metadata: {[key: string]: any}\n ): Observable<DocumentenApiFileReference> {\n const formData: FormData = new FormData();\n formData.append('file', file);\n\n Object.keys(metadata).forEach(metaDataKey => {\n const metadataValue = metadata[metaDataKey];\n\n if (metadataValue) {\n formData.append(metaDataKey, metadataValue);\n }\n });\n\n return this.http.post<DocumentenApiFileReference>(\n `${this.valtimoApiConfig.endpointUri}v1/resource/temp`,\n formData,\n {\n reportProgress: true,\n responseType: 'json',\n headers: new HttpHeaders().set(InterceptorSkip, '403'),\n }\n );\n }\n}\n","/*\n * Copyright 2015-2025 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 {HttpClient} from '@angular/common/http';\nimport {ConfigService} from '@valtimo/shared';\nimport {Observable} from 'rxjs';\nimport {\n DocumentenApiFileReference,\n ResourceDto,\n ResourceFile,\n ResourceReference,\n UploadService,\n} from '../models';\nimport {OpenZaakService} from './open-zaak.service';\nimport {map} from 'rxjs/operators';\n\n@Injectable()\nexport class OpenZaakUploadService implements UploadService {\n private valtimoApiConfig: any;\n\n constructor(\n private readonly openZaakService: OpenZaakService,\n private http: HttpClient,\n private configService: ConfigService\n ) {\n this.valtimoApiConfig = configService.config.valtimoApi;\n }\n\n uploadFile(file: File, caseDefinitionKey: string): Observable<ResourceFile> {\n return this.openZaakService\n .upload(new File([file], file.name, {type: file.type}), caseDefinitionKey)\n .pipe(map(result => this.getResourceFile(result)));\n }\n\n uploadFileWithMetadata(\n file: File,\n documentId: string,\n metadata: {[key: string]: any}\n ): Observable<void> {\n return this.openZaakService.uploadWithMetadata(\n new File([file], metadata?.bestandsnaam || file.name, {type: file.type}),\n documentId,\n metadata\n );\n }\n\n uploadTempFileWithMetadata(\n file: File,\n metadata: {[key: string]: any}\n ): Observable<DocumentenApiFileReference> {\n return this.openZaakService.uploadTempFileWithMetadata(\n new File([file], metadata?.bestandsnaam || file.name, {type: file.type}),\n metadata\n );\n }\n\n getResource(resourceId: string): Observable<ResourceDto> {\n return this.openZaakService.getResource(resourceId);\n }\n\n getResources(documentId: string): Observable<Array<ResourceReference>> {\n return this.openZaakService.getResources(documentId);\n }\n\n checkUploadProcessLink(caseDefinitionKey: string): Observable<boolean> {\n return this.http\n .get<{\n processCaseLinkExists: boolean;\n }>(\n `${this.valtimoApiConfig.endpointUri}v1/uploadprocess/case/${caseDefinitionKey}/check-link`\n )\n .pipe(map(res => res.processCaseLinkExists));\n }\n\n private getResourceFile(result: DocumentenApiFileReference): ResourceFile {\n const extension =\n result.filename && result.filename.includes('.')\n ? result.filename.split('.').pop() || ''\n : '';\n return {\n customUpload: true,\n originalName: result.filename,\n size: result.sizeInBytes,\n url: `/api/v1/resource/${result.id}/download`,\n storage: 'openZaak',\n type: extension,\n data: {\n createdOn: Date(),\n name: result.filename,\n sizeInBytes: result.sizeInBytes,\n resourceId: result.id,\n extension: extension,\n },\n };\n }\n}\n","/*\n * Copyright 2015-2025 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 {HttpClient, HttpHeaders} from '@angular/common/http';\nimport {Observable} from 'rxjs';\nimport {ConfigService} from '@valtimo/shared';\nimport {Resource, S3Resource, ResourceDto} from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class S3Service {\n private valtimoApiConfig: any;\n\n constructor(\n private http: HttpClient,\n private configService: ConfigService\n ) {\n this.valtimoApiConfig = configService.config.valtimoApi;\n }\n\n public getPreSignedUrl(fileName: string): Observable<string> {\n const headers = new HttpHeaders().set('Content-Type', 'text/plain; charset=utf-8');\n const options = {headers, responseType: 'text' as 'text'};\n return this.http.get(\n `${this.valtimoApiConfig.endpointUri}v1/resource/pre-signed-url/${fileName}`,\n options\n );\n }\n\n public upload(url: URL, file: File): Observable<any> {\n const headers = new HttpHeaders().set('Content-Type', file.type);\n return this.http.put(url.toString(), file, {headers});\n }\n\n public registerResource(s3ResourceDTO: S3Resource): Observable<Resource> {\n return this.http.put<Resource>(\n `${this.valtimoApiConfig.endpointUri}v1/resource`,\n s3ResourceDTO\n );\n }\n\n public get(resourceId: string): Observable<ResourceDto> {\n const headers = new HttpHeaders().set('Content-Type', 'application/json;charset=UTF-8');\n return this.http.get<ResourceDto>(\n `${this.valtimoApiConfig.endpointUri}v1/resource/${resourceId}`,\n {headers}\n );\n }\n\n public delete(resourceId: string): Observable<any> {\n const headers = new HttpHeaders().set('Content-Type', 'application/json;charset=UTF-8');\n return this.http.delete(`${this.valtimoApiConfig.endpointUri}v1/resource/${resourceId}`, {\n headers,\n });\n }\n}\n","/*\n * Copyright 2015-2025 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 {Observable} from 'rxjs';\nimport {map, switchMap, tap} from 'rxjs/operators';\nimport {ResourceDto, ResourceFile, ResourceReference, S3Resource, UploadService} from '../models';\nimport {Injectable} from '@angular/core';\nimport {v4 as uuidv4} from 'uuid';\nimport {S3Service} from './s3.service';\nimport {HttpClient} from '@angular/common/http';\nimport {ConfigService} from '@valtimo/shared';\n\n@Injectable()\nexport class S3UploadService implements UploadService {\n private readonly valtimoEndpointUri!: string;\n\n constructor(\n private readonly s3Service: S3Service,\n private readonly configService: ConfigService,\n private readonly http: HttpClient\n ) {\n this.valtimoEndpointUri = this.configService.config.valtimoApi.endpointUri;\n }\n\n uploadFile(file: File, _, documentId?: string): Observable<ResourceFile> {\n let resourceUrl: URL;\n const fileName = file.name;\n const splitFileName = fileName.split('.');\n const fileNameWithUUID = `${splitFileName[0]}-${uuidv4()}.${splitFileName[1]}`;\n const renamedFile = new File([file], fileNameWithUUID, {type: file.type});\n\n return this.s3Service.getPreSignedUrl(renamedFile.name).pipe(\n map(url => new URL(url)),\n tap(url => (resourceUrl = url)),\n switchMap(url => this.s3Service.upload(url, renamedFile)),\n map(() => new S3Resource(file, resourceUrl, documentId)),\n switchMap(s3Resource => this.s3Service.registerResource(s3Resource)),\n switchMap(s3Resource => this.s3Service.get(s3Resource.id)),\n map(result => ({...result, originalName: file.name})),\n map(result => this.getResourceFile(result))\n );\n }\n\n getResource(resourceId: string): Observable<ResourceDto> {\n return this.s3Service.get(resourceId);\n }\n\n getResources(documentId: string): Observable<Array<ResourceReference>> {\n return this.http.get<any>(`${this.valtimoEndpointUri}v1/document/${documentId}`).pipe(\n map(document => document.relatedFiles ?? []),\n map(resources =>\n resources.map(relatedFile => ({\n filename: relatedFile.fileName,\n id: relatedFile.fileId,\n }))\n )\n );\n }\n\n private getResourceFile(result: ResourceDto): ResourceFile {\n return {\n customUpload: true,\n originalName: result.originalName,\n url: result.url,\n size: result.resource.sizeInBytes,\n storage: 'url',\n type: result.resource.extension,\n data: {\n key: result.resource.key,\n bucketName: result.resource.name,\n createdOn: result.resource.createdOn as any as string,\n name: result.originalName,\n sizeInBytes: result.resource.sizeInBytes,\n resourceId: result.resource.id.split('ResourceId(id=')[1].slice(0, -1),\n },\n };\n }\n}\n","/*\n * Copyright 2015-2025 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, Injector} from '@angular/core';\nimport {NGXLogger} from 'ngx-logger';\nimport {\n DocumentenApiFileReference,\n ResourceDto,\n ResourceFile,\n ResourceReference,\n UploadService,\n} from '../models';\nimport {ConfigService, UploadProvider} from '@valtimo/shared';\nimport {Observable, of} from 'rxjs';\nimport {OpenZaakUploadService} from './open-zaak-upload.service';\nimport {S3UploadService} from './s3-upload.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class UploadProviderService implements UploadService {\n private readonly uploadService: UploadService;\n\n constructor(\n private configService: ConfigService,\n private injector: Injector,\n private logger: NGXLogger\n ) {\n let uploadService: UploadService;\n\n switch (configService.config.uploadProvider) {\n case UploadProvider.S3:\n uploadService = injector.get<UploadService>(S3UploadService);\n break;\n case UploadProvider.OPEN_ZAAK:\n uploadService = injector.get<UploadService>(OpenZaakUploadService);\n break;\n case UploadProvider.DOCUMENTEN_API:\n uploadService = injector.get<UploadService>(OpenZaakUploadService);\n break;\n }\n\n this.uploadService = uploadService;\n this.logger.debug('Loading UploadService as', this.uploadService);\n }\n\n uploadFile(\n file: File,\n caseDefinitionKey?: string,\n documentId?: string\n ): Observable<ResourceFile> {\n return this.uploadService.uploadFile(file, caseDefinitionKey, documentId);\n }\n\n getResource(resourceId: string): Observable<ResourceDto> {\n return this.uploadService.getResource(resourceId);\n }\n\n getResources(documentId: string): Observable<Array<ResourceReference>> {\n return this.uploadService.getResources(documentId);\n }\n\n checkUploadProcessLink(caseDefinitionKey: string): Observable<boolean> {\n if (this.uploadService.checkUploadProcessLink) {\n return this.uploadService.checkUploadProcessLink(caseDefinitionKey);\n }\n\n return of(false);\n }\n\n uploadFileWithMetadata(\n file: File,\n documentId: string,\n metadata: {[key: string]: any}\n ): Observable<void> {\n if (this.uploadService.uploadFileWithMetadata) {\n return this.uploadService.uploadFileWithMetadata(file, documentId, metadata);\n }\n\n return of(null);\n }\n\n uploadTempFileWithMetadata(\n file: File,\n metadata: {[key: string]: any}\n ): Observable<DocumentenApiFileReference> {\n if (this.uploadService.uploadTempFileWithMetadata) {\n return this.uploadService.uploadTempFileWithMetadata(file, metadata);\n }\n\n return of(null);\n }\n}\n","/*\n * Copyright 2015-2025 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/shared';\nimport {HttpClient} from '@angular/common/http';\nimport {Observable, Subject} from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DownloadService {\n constructor(\n private http: HttpClient,\n private configService: ConfigService\n ) {}\n\n downloadFile(url: string, name: string, forceDownload?: boolean): Observable<null> {\n const finishedSubject$ = new Subject<null>();\n\n if (\n url.startsWith(this.configService.config.valtimoApi.endpointUri) ||\n url.startsWith(window.location.origin) ||\n url.startsWith('/api/')\n ) {\n // if download url is on backend use angular to get the content so access token is used\n this.http.get(url, {responseType: 'blob'}).subscribe(content => {\n const downloadUrl = window.URL.createObjectURL(content);\n if (!this.isFileTypeSupportedForNewWindow(name) || forceDownload) {\n this.openDownloadLink(downloadUrl, name);\n } else {\n this.openBlobInNewTab(downloadUrl, name);\n }\n finishedSubject$.next(null);\n });\n } else {\n // download links to external services (like amazon s3) open in a new window\n this.openDownloadLink(url, name);\n finishedSubject$.next(null);\n }\n\n return finishedSubject$;\n }\n\n /**\n * A window.open won't work for blobs because ad blocker extensions will immediately\n * close the tab again. The method used below will prevent this from happening.\n */\n private openBlobInNewTab(url: string, name: string) {\n const newWindow = window.open('/');\n\n // newWindow will be null if the browser blocks the opening of a new tab.\n if (newWindow != null) {\n newWindow.location = url;\n } else {\n // In case the tab is blocked it will just download the file.\n this.openDownloadLink(url, name);\n }\n }\n\n private openDownloadLink(url: string, name: string) {\n const link = document.createElement('a');\n link.href = url;\n link.download = name;\n link.target = '_blank';\n link.click();\n link.remove();\n }\n\n private isFileTypeSupportedForNewWindow(name: string): boolean {\n const supportedFileTypes = this.configService?.config\n ?.supportedDocumentFileTypesToViewInBrowser || ['pdf', 'jpg', 'png', 'svg'];\n\n return supportedFileTypes.some(function (suffix) {\n return name.toUpperCase().endsWith(suffix.toUpperCase());\n });\n }\n}\n","/*\n * Copyright 2015-2025 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 {OpenZaakUploadService} from './services/open-zaak-upload.service';\nimport {S3UploadService} from './services/s3-upload.service';\nimport {UploadProviderService} from './services/upload-provider.service';\nimport {OpenZaakService} from './services/open-zaak.service';\nimport {S3Service} from './services/s3.service';\nimport {DownloadService} from './services/download.service';\n\n@NgModule({\n declarations: [],\n imports: [],\n exports: [],\n providers: [\n OpenZaakUploadService,\n S3UploadService,\n UploadProviderService,\n OpenZaakService,\n S3Service,\n DownloadService,\n ],\n})\nexport class ResourceModule {}\n","/*\n * Copyright 2015-2026 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 {PermissionRequest} from '@valtimo/access-control';\n\nenum PERMISSION_ACTION {\n view = 'view',\n view_list = 'view_list',\n create = 'create',\n modify = 'modify',\n delete = 'delete',\n}\n\nenum RESOURCE_PERMISSION_RESOURCE {\n // Kept as an alias of zgwDocument for transition; old code referencing resourcePermission\n // will transparently carry the new FQCN.\n resourcePermission = 'com.ritense.documentenapi.authorization.ZgwDocument',\n zgwDocument = 'com.ritense.documentenapi.authorization.ZgwDocument',\n jsonSchemaDocument = 'com.ritense.document.domain.impl.JsonSchemaDocument',\n}\n\nconst CAN_VIEW_RESOURCE_PERMISSION: PermissionRequest = {\n action: PERMISSION_ACTION.view,\n resource: RESOURCE_PERMISSION_RESOURCE.zgwDocument,\n};\n\nconst CAN_VIEW_LIST_RESOURCE_PERMISSION: PermissionRequest = {\n action: PERMISSION_ACTION.view_list,\n resource: RESOURCE_PERMISSION_RESOURCE.zgwDocument,\n};\n\nconst CAN_CREATE_RESOURCE_PERMISSION: PermissionRequest = {\n action: PERMISSION_ACTION.create,\n resource: RESOURCE_PERMISSION_RESOURCE.zgwDocument,\n};\n\nconst CAN_MODIFY_RESOURCE_PERMISSION: PermissionRequest = {\n action: PERMISSION_ACTION.modify,\n resource: RESOURCE_PERMISSION_RESOURCE.zgwDocument,\n};\n\nconst CAN_DELETE_RESOURCE_PERMISSION: PermissionRequest = {\n action: PERMISSION_ACTION.delete,\n resource: RESOURCE_PERMISSION_RESOURCE.zgwDocument,\n};\n\nexport {\n CAN_VIEW_RESOURCE_PERMISSION,\n CAN_VIEW_LIST_RESOURCE_PERMISSION,\n CAN_CREATE_RESOURCE_PERMISSION,\n CAN_MODIFY_RESOURCE_PERMISSION,\n CAN_DELETE_RESOURCE_PERMISSION,\n RESOURCE_PERMISSION_RESOURCE,\n};\n","/*\n * Copyright 2015-2025 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 upload\n */\n\nexport * from './lib/models';\nexport * from './lib/resource.module';\nexport * from './lib/services/open-zaak.service';\nexport * from './lib/services/upload-provider.service';\nexport * from './lib/services/s3.service';\nexport * from './lib/services/download.service';\nexport * from './lib/resource-permissions';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["map","i1.OpenZaakService","i2","i3","uuidv4","i1.S3Service","i1"],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { PermissionRequest } from '@valtimo/access-control';
|
|
2
2
|
declare enum RESOURCE_PERMISSION_RESOURCE {
|
|
3
|
-
resourcePermission = "com.ritense.
|
|
3
|
+
resourcePermission = "com.ritense.documentenapi.authorization.ZgwDocument",
|
|
4
|
+
zgwDocument = "com.ritense.documentenapi.authorization.ZgwDocument",
|
|
4
5
|
jsonSchemaDocument = "com.ritense.document.domain.impl.JsonSchemaDocument"
|
|
5
6
|
}
|
|
6
7
|
declare const CAN_VIEW_RESOURCE_PERMISSION: PermissionRequest;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-permissions.d.ts","sourceRoot":"","sources":["../../../../projects/valtimo/resource/src/lib/resource-permissions.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,iBAAiB,EAAC,MAAM,yBAAyB,CAAC;AAU1D,aAAK,4BAA4B;
|
|
1
|
+
{"version":3,"file":"resource-permissions.d.ts","sourceRoot":"","sources":["../../../../projects/valtimo/resource/src/lib/resource-permissions.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,iBAAiB,EAAC,MAAM,yBAAyB,CAAC;AAU1D,aAAK,4BAA4B;IAG/B,kBAAkB,wDAAwD;IAC1E,WAAW,wDAAwD;IACnE,kBAAkB,wDAAwD;CAC3E;AAED,QAAA,MAAM,4BAA4B,EAAE,iBAGnC,CAAC;AAEF,QAAA,MAAM,iCAAiC,EAAE,iBAGxC,CAAC;AAEF,QAAA,MAAM,8BAA8B,EAAE,iBAGrC,CAAC;AAEF,QAAA,MAAM,8BAA8B,EAAE,iBAGrC,CAAC;AAEF,QAAA,MAAM,8BAA8B,EAAE,iBAGrC,CAAC;AAEF,OAAO,EACL,4BAA4B,EAC5B,iCAAiC,EACjC,8BAA8B,EAC9B,8BAA8B,EAC9B,8BAA8B,EAC9B,4BAA4B,GAC7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-zaak.service.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/resource/src/lib/services/open-zaak.service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAC,UAAU,
|
|
1
|
+
{"version":3,"file":"open-zaak.service.d.ts","sourceRoot":"","sources":["../../../../../projects/valtimo/resource/src/lib/services/open-zaak.service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAC,UAAU,EAAc,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAC,aAAa,EAAwB,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAM,UAAU,EAAC,MAAM,MAAM,CAAC;AACrC,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,WAAW,EACX,iBAAiB,EACjB,QAAQ,EACR,YAAY,EACb,MAAM,WAAW,CAAC;;AAEnB,qBAGa,eAAe;IAIxB,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,aAAa;IAJvB,OAAO,CAAC,gBAAgB,CAAM;gBAGpB,IAAI,EAAE,UAAU,EAChB,aAAa,EAAE,aAAa;IAK/B,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC;IAMxD,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAetE,YAAY,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;IAMtC,eAAe,CACpB,iBAAiB,EAAE,MAAM,EACzB,cAAc,EAAE,MAAM,GACrB,UAAU,CAAC,YAAY,CAAC;IAMpB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,UAAU,CAAC,GAAG,CAAC;IAMvE,kBAAkB,CAAC,iBAAiB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC;IAMtF,4BAA4B,CACjC,oBAAoB,EAAE,MAAM,GAC3B,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAM3B,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,GAAG,UAAU,CAAC,0BAA0B,CAAC;IAIrF,kBAAkB,CACvB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC,GAC7B,UAAU,CAAC,IAAI,CAAC;IAoBZ,0BAA0B,CAC/B,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC,GAC7B,UAAU,CAAC,0BAA0B,CAAC;yCAjG9B,eAAe;6CAAf,eAAe;CAuH3B"}
|