@igo2/context 1.15.3 → 1.15.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/esm2020/igo2-context.mjs +4 -4
  2. package/esm2020/lib/context-import-export/context-import-export/context-import-export.component.mjs +228 -228
  3. package/esm2020/lib/context-import-export/context-import-export.module.mjs +85 -85
  4. package/esm2020/lib/context-import-export/index.mjs +3 -3
  5. package/esm2020/lib/context-import-export/shared/context-export.errors.mjs +15 -15
  6. package/esm2020/lib/context-import-export/shared/context-export.interface.mjs +2 -2
  7. package/esm2020/lib/context-import-export/shared/context-export.service.mjs +38 -38
  8. package/esm2020/lib/context-import-export/shared/context-export.utils.mjs +15 -15
  9. package/esm2020/lib/context-import-export/shared/context-import.errors.mjs +33 -33
  10. package/esm2020/lib/context-import-export/shared/context-import.service.mjs +79 -79
  11. package/esm2020/lib/context-import-export/shared/context-import.utils.mjs +133 -133
  12. package/esm2020/lib/context-import-export/shared/index.mjs +8 -8
  13. package/esm2020/lib/context-manager/context-edit/context-edit-binding.directive.mjs +50 -50
  14. package/esm2020/lib/context-manager/context-edit/context-edit.component.mjs +46 -46
  15. package/esm2020/lib/context-manager/context-edit/index.mjs +3 -3
  16. package/esm2020/lib/context-manager/context-form/context-form.component.mjs +143 -143
  17. package/esm2020/lib/context-manager/context-form/index.mjs +2 -2
  18. package/esm2020/lib/context-manager/context-item/context-item.component.mjs +245 -245
  19. package/esm2020/lib/context-manager/context-item/index.mjs +2 -2
  20. package/esm2020/lib/context-manager/context-list/context-list-binding.directive.mjs +240 -240
  21. package/esm2020/lib/context-manager/context-list/context-list.component.mjs +592 -592
  22. package/esm2020/lib/context-manager/context-list/context-list.enum.mjs +7 -7
  23. package/esm2020/lib/context-manager/context-list/index.mjs +3 -3
  24. package/esm2020/lib/context-manager/context-manager.module.mjs +162 -162
  25. package/esm2020/lib/context-manager/context-permissions/context-permissions-binding.directive.mjs +99 -99
  26. package/esm2020/lib/context-manager/context-permissions/context-permissions.component.mjs +306 -306
  27. package/esm2020/lib/context-manager/context-permissions/index.mjs +3 -3
  28. package/esm2020/lib/context-manager/index.mjs +7 -7
  29. package/esm2020/lib/context-manager/shared/context.enum.mjs +13 -13
  30. package/esm2020/lib/context-manager/shared/context.interface.mjs +2 -2
  31. package/esm2020/lib/context-manager/shared/context.service.mjs +632 -632
  32. package/esm2020/lib/context-manager/shared/index.mjs +6 -6
  33. package/esm2020/lib/context-manager/shared/layer-context.directive.mjs +162 -162
  34. package/esm2020/lib/context-manager/shared/map-context.directive.mjs +70 -70
  35. package/esm2020/lib/context-map-button/bookmark-button/bookmark-button.component.mjs +66 -66
  36. package/esm2020/lib/context-map-button/bookmark-button/bookmark-dialog.component.mjs +50 -50
  37. package/esm2020/lib/context-map-button/bookmark-button/index.mjs +3 -3
  38. package/esm2020/lib/context-map-button/context-map-button.module.mjs +96 -96
  39. package/esm2020/lib/context-map-button/index.mjs +4 -4
  40. package/esm2020/lib/context-map-button/poi-button/index.mjs +4 -4
  41. package/esm2020/lib/context-map-button/poi-button/poi-button.component.mjs +161 -161
  42. package/esm2020/lib/context-map-button/poi-button/poi-dialog.component.mjs +50 -50
  43. package/esm2020/lib/context-map-button/poi-button/shared/index.mjs +3 -3
  44. package/esm2020/lib/context-map-button/poi-button/shared/poi.interface.mjs +2 -2
  45. package/esm2020/lib/context-map-button/poi-button/shared/poi.service.mjs +33 -33
  46. package/esm2020/lib/context-map-button/user-button/index.mjs +3 -3
  47. package/esm2020/lib/context-map-button/user-button/user-button.animation.mjs +17 -17
  48. package/esm2020/lib/context-map-button/user-button/user-button.component.mjs +104 -104
  49. package/esm2020/lib/context-map-button/user-button/user-dialog.component.mjs +66 -66
  50. package/esm2020/lib/context.module.mjs +45 -45
  51. package/esm2020/lib/share-map/index.mjs +5 -5
  52. package/esm2020/lib/share-map/share-map/share-map-api.component.mjs +170 -170
  53. package/esm2020/lib/share-map/share-map/share-map-url.component.mjs +243 -243
  54. package/esm2020/lib/share-map/share-map/share-map.component.mjs +57 -57
  55. package/esm2020/lib/share-map/share-map.module.mjs +67 -67
  56. package/esm2020/lib/share-map/shared/index.mjs +2 -2
  57. package/esm2020/lib/share-map/shared/share-map.service.mjs +210 -210
  58. package/esm2020/lib/sidenav/index.mjs +2 -2
  59. package/esm2020/lib/sidenav/sidenav.component.mjs +170 -170
  60. package/esm2020/lib/sidenav/sidenav.module.mjs +61 -61
  61. package/esm2020/public_api.mjs +15 -15
  62. package/fesm2015/igo2-context.mjs +4948 -4948
  63. package/fesm2015/igo2-context.mjs.map +1 -1
  64. package/fesm2020/igo2-context.mjs +4597 -4597
  65. package/fesm2020/igo2-context.mjs.map +1 -1
  66. package/index.d.ts +5 -5
  67. package/lib/context-import-export/context-import-export/context-import-export.component.d.ts +44 -44
  68. package/lib/context-import-export/context-import-export.module.d.ts +23 -23
  69. package/lib/context-import-export/index.d.ts +2 -2
  70. package/lib/context-import-export/shared/context-export.errors.d.ts +8 -8
  71. package/lib/context-import-export/shared/context-export.interface.d.ts +5 -5
  72. package/lib/context-import-export/shared/context-export.service.d.ts +10 -10
  73. package/lib/context-import-export/shared/context-export.utils.d.ts +4 -4
  74. package/lib/context-import-export/shared/context-import.errors.d.ts +17 -17
  75. package/lib/context-import-export/shared/context-import.service.d.ts +18 -18
  76. package/lib/context-import-export/shared/context-import.utils.d.ts +17 -17
  77. package/lib/context-import-export/shared/index.d.ts +7 -7
  78. package/lib/context-manager/context-edit/context-edit-binding.directive.d.ts +20 -20
  79. package/lib/context-manager/context-edit/context-edit.component.d.ts +14 -14
  80. package/lib/context-manager/context-edit/index.d.ts +2 -2
  81. package/lib/context-manager/context-form/context-form.component.d.ts +30 -30
  82. package/lib/context-manager/context-form/index.d.ts +1 -1
  83. package/lib/context-manager/context-item/context-item.component.d.ts +32 -32
  84. package/lib/context-manager/context-item/index.d.ts +1 -1
  85. package/lib/context-manager/context-list/context-list-binding.directive.d.ts +46 -46
  86. package/lib/context-manager/context-list/context-list.component.d.ts +93 -93
  87. package/lib/context-manager/context-list/context-list.enum.d.ts +5 -5
  88. package/lib/context-manager/context-list/index.d.ts +2 -2
  89. package/lib/context-manager/context-manager.module.d.ts +37 -37
  90. package/lib/context-manager/context-permissions/context-permissions-binding.directive.d.ts +23 -23
  91. package/lib/context-manager/context-permissions/context-permissions.component.d.ts +40 -40
  92. package/lib/context-manager/context-permissions/index.d.ts +2 -2
  93. package/lib/context-manager/index.d.ts +6 -6
  94. package/lib/context-manager/shared/context.enum.d.ts +10 -10
  95. package/lib/context-manager/shared/context.interface.d.ts +75 -75
  96. package/lib/context-manager/shared/context.service.d.ts +75 -75
  97. package/lib/context-manager/shared/index.d.ts +5 -5
  98. package/lib/context-manager/shared/layer-context.directive.d.ts +28 -28
  99. package/lib/context-manager/shared/map-context.directive.d.ts +19 -19
  100. package/lib/context-map-button/bookmark-button/bookmark-button.component.d.ts +20 -20
  101. package/lib/context-map-button/bookmark-button/bookmark-dialog.component.d.ts +9 -9
  102. package/lib/context-map-button/bookmark-button/index.d.ts +2 -2
  103. package/lib/context-map-button/context-map-button.module.d.ts +27 -27
  104. package/lib/context-map-button/index.d.ts +3 -3
  105. package/lib/context-map-button/poi-button/index.d.ts +3 -3
  106. package/lib/context-map-button/poi-button/poi-button.component.d.ts +34 -34
  107. package/lib/context-map-button/poi-button/poi-dialog.component.d.ts +9 -9
  108. package/lib/context-map-button/poi-button/shared/index.d.ts +2 -2
  109. package/lib/context-map-button/poi-button/shared/poi.interface.d.ts +7 -7
  110. package/lib/context-map-button/poi-button/shared/poi.service.d.ts +16 -16
  111. package/lib/context-map-button/user-button/index.d.ts +2 -2
  112. package/lib/context-map-button/user-button/user-button.animation.d.ts +2 -2
  113. package/lib/context-map-button/user-button/user-button.component.d.ts +25 -25
  114. package/lib/context-map-button/user-button/user-dialog.component.d.ts +15 -15
  115. package/lib/context.module.d.ts +16 -16
  116. package/lib/share-map/index.d.ts +4 -4
  117. package/lib/share-map/share-map/share-map-api.component.d.ts +27 -27
  118. package/lib/share-map/share-map/share-map-url.component.d.ts +26 -26
  119. package/lib/share-map/share-map/share-map.component.d.ts +11 -11
  120. package/lib/share-map/share-map.module.d.ts +21 -21
  121. package/lib/share-map/shared/index.d.ts +1 -1
  122. package/lib/share-map/shared/share-map.service.d.ts +17 -17
  123. package/lib/sidenav/index.d.ts +1 -1
  124. package/lib/sidenav/sidenav.component.d.ts +35 -35
  125. package/lib/sidenav/sidenav.module.d.ts +18 -18
  126. package/ngcc.config.js +3 -3
  127. package/package.json +6 -6
  128. package/public_api.d.ts +11 -11
@@ -1,79 +1,79 @@
1
- import { Injectable } from '@angular/core';
2
- import { Observable } from 'rxjs';
3
- import { ImportInvalidFileError, ImportUnreadableFileError, ImportSizeError } from './context-import.errors';
4
- import { getFileExtension } from './context-import.utils';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@igo2/core";
7
- export class ContextImportService {
8
- constructor(config) {
9
- this.config = config;
10
- const configFileSizeMb = this.config.getConfig('importExport.clientSideFileSizeMaxMb');
11
- this.clientSideFileSizeMax =
12
- (configFileSizeMb ? configFileSizeMb : 30) * Math.pow(1024, 2);
13
- }
14
- import(file) {
15
- return this.importAsync(file);
16
- }
17
- getFileImporter(file) {
18
- const extension = getFileExtension(file);
19
- const mimeType = file.type;
20
- const allowedMimeTypes = [...ContextImportService.allowedMimeTypes];
21
- const allowedExtensions = ContextImportService.allowedExtensions;
22
- if (allowedMimeTypes.indexOf(mimeType) < 0 &&
23
- allowedExtensions.indexOf(extension) < 0) {
24
- return undefined;
25
- }
26
- else if (mimeType === 'application/json' ||
27
- extension === ContextImportService.allowedExtensions) {
28
- return this.importFile;
29
- }
30
- return undefined;
31
- }
32
- importAsync(file) {
33
- const doImport = (observer) => {
34
- if (file.size >= this.clientSideFileSizeMax) {
35
- observer.error(new ImportSizeError());
36
- return;
37
- }
38
- const importer = this.getFileImporter(file);
39
- if (importer === undefined) {
40
- observer.error(new ImportInvalidFileError());
41
- return;
42
- }
43
- importer.call(this, file, observer);
44
- };
45
- return new Observable(doImport);
46
- }
47
- importFile(file, observer) {
48
- const reader = new FileReader();
49
- reader.onload = (event) => {
50
- try {
51
- const context = this.parseContextFromFile(file, event.target.result);
52
- observer.next(context);
53
- }
54
- catch (e) {
55
- observer.error(new ImportUnreadableFileError());
56
- }
57
- observer.complete();
58
- };
59
- reader.onerror = (evt) => {
60
- observer.error(new ImportUnreadableFileError());
61
- };
62
- reader.readAsText(file, 'UTF-8');
63
- }
64
- parseContextFromFile(file, data) {
65
- const context = JSON.parse(data);
66
- return context;
67
- }
68
- }
69
- ContextImportService.allowedMimeTypes = ['application/json'];
70
- ContextImportService.allowedExtensions = 'json';
71
- ContextImportService.ɵfac = function ContextImportService_Factory(t) { return new (t || ContextImportService)(i0.ɵɵinject(i1.ConfigService)); };
72
- ContextImportService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ContextImportService, factory: ContextImportService.ɵfac, providedIn: 'root' });
73
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextImportService, [{
74
- type: Injectable,
75
- args: [{
76
- providedIn: 'root'
77
- }]
78
- }], function () { return [{ type: i1.ConfigService }]; }, null); })();
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1pbXBvcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9jb250ZXh0LWltcG9ydC1leHBvcnQvc2hhcmVkL2NvbnRleHQtaW1wb3J0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sTUFBTSxDQUFDO0FBRzVDLE9BQU8sRUFDTCxzQkFBc0IsRUFDdEIseUJBQXlCLEVBQ3pCLGVBQWUsRUFDaEIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBTTFELE1BQU0sT0FBTyxvQkFBb0I7SUFPL0IsWUFBb0IsTUFBcUI7UUFBckIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUN2QyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUM1QyxzQ0FBc0MsQ0FDdkMsQ0FBQztRQUNGLElBQUksQ0FBQyxxQkFBcUI7WUFDeEIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxNQUFNLENBQUMsSUFBVTtRQUNmLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRU8sZUFBZSxDQUNyQixJQUFVO1FBT1YsTUFBTSxTQUFTLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUMzQixNQUFNLGdCQUFnQixHQUFHLENBQUMsR0FBRyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3BFLE1BQU0saUJBQWlCLEdBQUcsb0JBQW9CLENBQUMsaUJBQWlCLENBQUM7UUFFakUsSUFDRSxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztZQUN0QyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUN4QztZQUNBLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO2FBQU0sSUFDTCxRQUFRLEtBQUssa0JBQWtCO1lBQy9CLFNBQVMsS0FBSyxvQkFBb0IsQ0FBQyxpQkFBaUIsRUFDcEQ7WUFDQSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7U0FDeEI7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRU8sV0FBVyxDQUFDLElBQVU7UUFDNUIsTUFBTSxRQUFRLEdBQUcsQ0FBQyxRQUFtQyxFQUFFLEVBQUU7WUFDdkQsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtnQkFDM0MsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLGVBQWUsRUFBRSxDQUFDLENBQUM7Z0JBQ3RDLE9BQU87YUFDUjtZQUNELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUMsSUFBSSxRQUFRLEtBQUssU0FBUyxFQUFFO2dCQUMxQixRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO2dCQUM3QyxPQUFPO2FBQ1I7WUFFRCxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDO1FBRUYsT0FBTyxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRU8sVUFBVSxDQUFDLElBQVUsRUFBRSxRQUFtQztRQUNoRSxNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBRWhDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUM3QixJQUFJO2dCQUNGLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDckUsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUN4QjtZQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNWLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSx5QkFBeUIsRUFBRSxDQUFDLENBQUM7YUFDakQ7WUFFRCxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDO1FBRUYsTUFBTSxDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3ZCLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSx5QkFBeUIsRUFBRSxDQUFDLENBQUM7UUFDbEQsQ0FBQyxDQUFDO1FBRUYsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVPLG9CQUFvQixDQUFDLElBQVUsRUFBRSxJQUFZO1FBQ25ELE1BQU0sT0FBTyxHQUFvQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7O0FBdkZNLHFDQUFnQixHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUV4QyxzQ0FBaUIsR0FBRyxNQUFNLENBQUM7d0ZBSHZCLG9CQUFvQjswRUFBcEIsb0JBQW9CLFdBQXBCLG9CQUFvQixtQkFGbkIsTUFBTTt1RkFFUCxvQkFBb0I7Y0FIaEMsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBPYnNlcnZlciB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcblxyXG5pbXBvcnQge1xyXG4gIEltcG9ydEludmFsaWRGaWxlRXJyb3IsXHJcbiAgSW1wb3J0VW5yZWFkYWJsZUZpbGVFcnJvcixcclxuICBJbXBvcnRTaXplRXJyb3JcclxufSBmcm9tICcuL2NvbnRleHQtaW1wb3J0LmVycm9ycyc7XHJcbmltcG9ydCB7IGdldEZpbGVFeHRlbnNpb24gfSBmcm9tICcuL2NvbnRleHQtaW1wb3J0LnV0aWxzJztcclxuaW1wb3J0IHsgRGV0YWlsZWRDb250ZXh0IH0gZnJvbSAnLi4vLi4vY29udGV4dC1tYW5hZ2VyL3NoYXJlZC9jb250ZXh0LmludGVyZmFjZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb250ZXh0SW1wb3J0U2VydmljZSB7XHJcbiAgc3RhdGljIGFsbG93ZWRNaW1lVHlwZXMgPSBbJ2FwcGxpY2F0aW9uL2pzb24nXTtcclxuXHJcbiAgc3RhdGljIGFsbG93ZWRFeHRlbnNpb25zID0gJ2pzb24nO1xyXG5cclxuICBwcml2YXRlIGNsaWVudFNpZGVGaWxlU2l6ZU1heDogbnVtYmVyO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpZzogQ29uZmlnU2VydmljZSkge1xyXG4gICAgY29uc3QgY29uZmlnRmlsZVNpemVNYiA9IHRoaXMuY29uZmlnLmdldENvbmZpZyhcclxuICAgICAgJ2ltcG9ydEV4cG9ydC5jbGllbnRTaWRlRmlsZVNpemVNYXhNYidcclxuICAgICk7XHJcbiAgICB0aGlzLmNsaWVudFNpZGVGaWxlU2l6ZU1heCA9XHJcbiAgICAgIChjb25maWdGaWxlU2l6ZU1iID8gY29uZmlnRmlsZVNpemVNYiA6IDMwKSAqIE1hdGgucG93KDEwMjQsIDIpO1xyXG4gIH1cclxuXHJcbiAgaW1wb3J0KGZpbGU6IEZpbGUpOiBPYnNlcnZhYmxlPERldGFpbGVkQ29udGV4dD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaW1wb3J0QXN5bmMoZmlsZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEZpbGVJbXBvcnRlcihcclxuICAgIGZpbGU6IEZpbGVcclxuICApOiAoXHJcbiAgICBmaWxlOiBGaWxlLFxyXG4gICAgb2JzZXJ2ZXI6IE9ic2VydmVyPERldGFpbGVkQ29udGV4dD4sXHJcbiAgICBwcm9qZWN0aW9uSW46IHN0cmluZyxcclxuICAgIHByb2plY3Rpb25PdXQ6IHN0cmluZ1xyXG4gICkgPT4gdm9pZCB7XHJcbiAgICBjb25zdCBleHRlbnNpb24gPSBnZXRGaWxlRXh0ZW5zaW9uKGZpbGUpO1xyXG4gICAgY29uc3QgbWltZVR5cGUgPSBmaWxlLnR5cGU7XHJcbiAgICBjb25zdCBhbGxvd2VkTWltZVR5cGVzID0gWy4uLkNvbnRleHRJbXBvcnRTZXJ2aWNlLmFsbG93ZWRNaW1lVHlwZXNdO1xyXG4gICAgY29uc3QgYWxsb3dlZEV4dGVuc2lvbnMgPSBDb250ZXh0SW1wb3J0U2VydmljZS5hbGxvd2VkRXh0ZW5zaW9ucztcclxuXHJcbiAgICBpZiAoXHJcbiAgICAgIGFsbG93ZWRNaW1lVHlwZXMuaW5kZXhPZihtaW1lVHlwZSkgPCAwICYmXHJcbiAgICAgIGFsbG93ZWRFeHRlbnNpb25zLmluZGV4T2YoZXh0ZW5zaW9uKSA8IDBcclxuICAgICkge1xyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgfSBlbHNlIGlmIChcclxuICAgICAgbWltZVR5cGUgPT09ICdhcHBsaWNhdGlvbi9qc29uJyB8fFxyXG4gICAgICBleHRlbnNpb24gPT09IENvbnRleHRJbXBvcnRTZXJ2aWNlLmFsbG93ZWRFeHRlbnNpb25zXHJcbiAgICApIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaW1wb3J0RmlsZTtcclxuICAgIH1cclxuICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGltcG9ydEFzeW5jKGZpbGU6IEZpbGUpOiBPYnNlcnZhYmxlPERldGFpbGVkQ29udGV4dD4ge1xyXG4gICAgY29uc3QgZG9JbXBvcnQgPSAob2JzZXJ2ZXI6IE9ic2VydmVyPERldGFpbGVkQ29udGV4dD4pID0+IHtcclxuICAgICAgaWYgKGZpbGUuc2l6ZSA+PSB0aGlzLmNsaWVudFNpZGVGaWxlU2l6ZU1heCkge1xyXG4gICAgICAgIG9ic2VydmVyLmVycm9yKG5ldyBJbXBvcnRTaXplRXJyb3IoKSk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IGltcG9ydGVyID0gdGhpcy5nZXRGaWxlSW1wb3J0ZXIoZmlsZSk7XHJcbiAgICAgIGlmIChpbXBvcnRlciA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgb2JzZXJ2ZXIuZXJyb3IobmV3IEltcG9ydEludmFsaWRGaWxlRXJyb3IoKSk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpbXBvcnRlci5jYWxsKHRoaXMsIGZpbGUsIG9ic2VydmVyKTtcclxuICAgIH07XHJcblxyXG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKGRvSW1wb3J0KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW1wb3J0RmlsZShmaWxlOiBGaWxlLCBvYnNlcnZlcjogT2JzZXJ2ZXI8RGV0YWlsZWRDb250ZXh0Pikge1xyXG4gICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuXHJcbiAgICByZWFkZXIub25sb2FkID0gKGV2ZW50OiBhbnkpID0+IHtcclxuICAgICAgdHJ5IHtcclxuICAgICAgICBjb25zdCBjb250ZXh0ID0gdGhpcy5wYXJzZUNvbnRleHRGcm9tRmlsZShmaWxlLCBldmVudC50YXJnZXQucmVzdWx0KTtcclxuICAgICAgICBvYnNlcnZlci5uZXh0KGNvbnRleHQpO1xyXG4gICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgb2JzZXJ2ZXIuZXJyb3IobmV3IEltcG9ydFVucmVhZGFibGVGaWxlRXJyb3IoKSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XHJcbiAgICB9O1xyXG5cclxuICAgIHJlYWRlci5vbmVycm9yID0gKGV2dCkgPT4ge1xyXG4gICAgICBvYnNlcnZlci5lcnJvcihuZXcgSW1wb3J0VW5yZWFkYWJsZUZpbGVFcnJvcigpKTtcclxuICAgIH07XHJcblxyXG4gICAgcmVhZGVyLnJlYWRBc1RleHQoZmlsZSwgJ1VURi04Jyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHBhcnNlQ29udGV4dEZyb21GaWxlKGZpbGU6IEZpbGUsIGRhdGE6IHN0cmluZyk6IERldGFpbGVkQ29udGV4dCB7XHJcbiAgICBjb25zdCBjb250ZXh0OiBEZXRhaWxlZENvbnRleHQgPSBKU09OLnBhcnNlKGRhdGEpO1xyXG4gICAgcmV0dXJuIGNvbnRleHQ7XHJcbiAgfVxyXG59XHJcbiJdfQ==
1
+ import { Injectable } from '@angular/core';
2
+ import { Observable } from 'rxjs';
3
+ import { ImportInvalidFileError, ImportUnreadableFileError, ImportSizeError } from './context-import.errors';
4
+ import { getFileExtension } from './context-import.utils';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@igo2/core";
7
+ export class ContextImportService {
8
+ constructor(config) {
9
+ this.config = config;
10
+ const configFileSizeMb = this.config.getConfig('importExport.clientSideFileSizeMaxMb');
11
+ this.clientSideFileSizeMax =
12
+ (configFileSizeMb ? configFileSizeMb : 30) * Math.pow(1024, 2);
13
+ }
14
+ import(file) {
15
+ return this.importAsync(file);
16
+ }
17
+ getFileImporter(file) {
18
+ const extension = getFileExtension(file);
19
+ const mimeType = file.type;
20
+ const allowedMimeTypes = [...ContextImportService.allowedMimeTypes];
21
+ const allowedExtensions = ContextImportService.allowedExtensions;
22
+ if (allowedMimeTypes.indexOf(mimeType) < 0 &&
23
+ allowedExtensions.indexOf(extension) < 0) {
24
+ return undefined;
25
+ }
26
+ else if (mimeType === 'application/json' ||
27
+ extension === ContextImportService.allowedExtensions) {
28
+ return this.importFile;
29
+ }
30
+ return undefined;
31
+ }
32
+ importAsync(file) {
33
+ const doImport = (observer) => {
34
+ if (file.size >= this.clientSideFileSizeMax) {
35
+ observer.error(new ImportSizeError());
36
+ return;
37
+ }
38
+ const importer = this.getFileImporter(file);
39
+ if (importer === undefined) {
40
+ observer.error(new ImportInvalidFileError());
41
+ return;
42
+ }
43
+ importer.call(this, file, observer);
44
+ };
45
+ return new Observable(doImport);
46
+ }
47
+ importFile(file, observer) {
48
+ const reader = new FileReader();
49
+ reader.onload = (event) => {
50
+ try {
51
+ const context = this.parseContextFromFile(file, event.target.result);
52
+ observer.next(context);
53
+ }
54
+ catch (e) {
55
+ observer.error(new ImportUnreadableFileError());
56
+ }
57
+ observer.complete();
58
+ };
59
+ reader.onerror = (evt) => {
60
+ observer.error(new ImportUnreadableFileError());
61
+ };
62
+ reader.readAsText(file, 'UTF-8');
63
+ }
64
+ parseContextFromFile(file, data) {
65
+ const context = JSON.parse(data);
66
+ return context;
67
+ }
68
+ }
69
+ ContextImportService.allowedMimeTypes = ['application/json'];
70
+ ContextImportService.allowedExtensions = 'json';
71
+ ContextImportService.ɵfac = function ContextImportService_Factory(t) { return new (t || ContextImportService)(i0.ɵɵinject(i1.ConfigService)); };
72
+ ContextImportService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ContextImportService, factory: ContextImportService.ɵfac, providedIn: 'root' });
73
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextImportService, [{
74
+ type: Injectable,
75
+ args: [{
76
+ providedIn: 'root'
77
+ }]
78
+ }], function () { return [{ type: i1.ConfigService }]; }, null); })();
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1pbXBvcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9jb250ZXh0LWltcG9ydC1leHBvcnQvc2hhcmVkL2NvbnRleHQtaW1wb3J0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sTUFBTSxDQUFDO0FBRzVDLE9BQU8sRUFDTCxzQkFBc0IsRUFDdEIseUJBQXlCLEVBQ3pCLGVBQWUsRUFDaEIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBTTFELE1BQU0sT0FBTyxvQkFBb0I7SUFPL0IsWUFBb0IsTUFBcUI7UUFBckIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUN2QyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUM1QyxzQ0FBc0MsQ0FDdkMsQ0FBQztRQUNGLElBQUksQ0FBQyxxQkFBcUI7WUFDeEIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxNQUFNLENBQUMsSUFBVTtRQUNmLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRU8sZUFBZSxDQUNyQixJQUFVO1FBT1YsTUFBTSxTQUFTLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUMzQixNQUFNLGdCQUFnQixHQUFHLENBQUMsR0FBRyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3BFLE1BQU0saUJBQWlCLEdBQUcsb0JBQW9CLENBQUMsaUJBQWlCLENBQUM7UUFFakUsSUFDRSxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztZQUN0QyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUN4QztZQUNBLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO2FBQU0sSUFDTCxRQUFRLEtBQUssa0JBQWtCO1lBQy9CLFNBQVMsS0FBSyxvQkFBb0IsQ0FBQyxpQkFBaUIsRUFDcEQ7WUFDQSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7U0FDeEI7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRU8sV0FBVyxDQUFDLElBQVU7UUFDNUIsTUFBTSxRQUFRLEdBQUcsQ0FBQyxRQUFtQyxFQUFFLEVBQUU7WUFDdkQsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtnQkFDM0MsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLGVBQWUsRUFBRSxDQUFDLENBQUM7Z0JBQ3RDLE9BQU87YUFDUjtZQUNELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUMsSUFBSSxRQUFRLEtBQUssU0FBUyxFQUFFO2dCQUMxQixRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO2dCQUM3QyxPQUFPO2FBQ1I7WUFFRCxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDO1FBRUYsT0FBTyxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRU8sVUFBVSxDQUFDLElBQVUsRUFBRSxRQUFtQztRQUNoRSxNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBRWhDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUM3QixJQUFJO2dCQUNGLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDckUsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUN4QjtZQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNWLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSx5QkFBeUIsRUFBRSxDQUFDLENBQUM7YUFDakQ7WUFFRCxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDO1FBRUYsTUFBTSxDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3ZCLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSx5QkFBeUIsRUFBRSxDQUFDLENBQUM7UUFDbEQsQ0FBQyxDQUFDO1FBRUYsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVPLG9CQUFvQixDQUFDLElBQVUsRUFBRSxJQUFZO1FBQ25ELE1BQU0sT0FBTyxHQUFvQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7O0FBdkZNLHFDQUFnQixHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUV4QyxzQ0FBaUIsR0FBRyxNQUFNLENBQUM7d0ZBSHZCLG9CQUFvQjswRUFBcEIsb0JBQW9CLFdBQXBCLG9CQUFvQixtQkFGbkIsTUFBTTt1RkFFUCxvQkFBb0I7Y0FIaEMsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgT2JzZXJ2ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcblxuaW1wb3J0IHtcbiAgSW1wb3J0SW52YWxpZEZpbGVFcnJvcixcbiAgSW1wb3J0VW5yZWFkYWJsZUZpbGVFcnJvcixcbiAgSW1wb3J0U2l6ZUVycm9yXG59IGZyb20gJy4vY29udGV4dC1pbXBvcnQuZXJyb3JzJztcbmltcG9ydCB7IGdldEZpbGVFeHRlbnNpb24gfSBmcm9tICcuL2NvbnRleHQtaW1wb3J0LnV0aWxzJztcbmltcG9ydCB7IERldGFpbGVkQ29udGV4dCB9IGZyb20gJy4uLy4uL2NvbnRleHQtbWFuYWdlci9zaGFyZWQvY29udGV4dC5pbnRlcmZhY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBDb250ZXh0SW1wb3J0U2VydmljZSB7XG4gIHN0YXRpYyBhbGxvd2VkTWltZVR5cGVzID0gWydhcHBsaWNhdGlvbi9qc29uJ107XG5cbiAgc3RhdGljIGFsbG93ZWRFeHRlbnNpb25zID0gJ2pzb24nO1xuXG4gIHByaXZhdGUgY2xpZW50U2lkZUZpbGVTaXplTWF4OiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maWc6IENvbmZpZ1NlcnZpY2UpIHtcbiAgICBjb25zdCBjb25maWdGaWxlU2l6ZU1iID0gdGhpcy5jb25maWcuZ2V0Q29uZmlnKFxuICAgICAgJ2ltcG9ydEV4cG9ydC5jbGllbnRTaWRlRmlsZVNpemVNYXhNYidcbiAgICApO1xuICAgIHRoaXMuY2xpZW50U2lkZUZpbGVTaXplTWF4ID1cbiAgICAgIChjb25maWdGaWxlU2l6ZU1iID8gY29uZmlnRmlsZVNpemVNYiA6IDMwKSAqIE1hdGgucG93KDEwMjQsIDIpO1xuICB9XG5cbiAgaW1wb3J0KGZpbGU6IEZpbGUpOiBPYnNlcnZhYmxlPERldGFpbGVkQ29udGV4dD4ge1xuICAgIHJldHVybiB0aGlzLmltcG9ydEFzeW5jKGZpbGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaWxlSW1wb3J0ZXIoXG4gICAgZmlsZTogRmlsZVxuICApOiAoXG4gICAgZmlsZTogRmlsZSxcbiAgICBvYnNlcnZlcjogT2JzZXJ2ZXI8RGV0YWlsZWRDb250ZXh0PixcbiAgICBwcm9qZWN0aW9uSW46IHN0cmluZyxcbiAgICBwcm9qZWN0aW9uT3V0OiBzdHJpbmdcbiAgKSA9PiB2b2lkIHtcbiAgICBjb25zdCBleHRlbnNpb24gPSBnZXRGaWxlRXh0ZW5zaW9uKGZpbGUpO1xuICAgIGNvbnN0IG1pbWVUeXBlID0gZmlsZS50eXBlO1xuICAgIGNvbnN0IGFsbG93ZWRNaW1lVHlwZXMgPSBbLi4uQ29udGV4dEltcG9ydFNlcnZpY2UuYWxsb3dlZE1pbWVUeXBlc107XG4gICAgY29uc3QgYWxsb3dlZEV4dGVuc2lvbnMgPSBDb250ZXh0SW1wb3J0U2VydmljZS5hbGxvd2VkRXh0ZW5zaW9ucztcblxuICAgIGlmIChcbiAgICAgIGFsbG93ZWRNaW1lVHlwZXMuaW5kZXhPZihtaW1lVHlwZSkgPCAwICYmXG4gICAgICBhbGxvd2VkRXh0ZW5zaW9ucy5pbmRleE9mKGV4dGVuc2lvbikgPCAwXG4gICAgKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICBtaW1lVHlwZSA9PT0gJ2FwcGxpY2F0aW9uL2pzb24nIHx8XG4gICAgICBleHRlbnNpb24gPT09IENvbnRleHRJbXBvcnRTZXJ2aWNlLmFsbG93ZWRFeHRlbnNpb25zXG4gICAgKSB7XG4gICAgICByZXR1cm4gdGhpcy5pbXBvcnRGaWxlO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBpbXBvcnRBc3luYyhmaWxlOiBGaWxlKTogT2JzZXJ2YWJsZTxEZXRhaWxlZENvbnRleHQ+IHtcbiAgICBjb25zdCBkb0ltcG9ydCA9IChvYnNlcnZlcjogT2JzZXJ2ZXI8RGV0YWlsZWRDb250ZXh0PikgPT4ge1xuICAgICAgaWYgKGZpbGUuc2l6ZSA+PSB0aGlzLmNsaWVudFNpZGVGaWxlU2l6ZU1heCkge1xuICAgICAgICBvYnNlcnZlci5lcnJvcihuZXcgSW1wb3J0U2l6ZUVycm9yKCkpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCBpbXBvcnRlciA9IHRoaXMuZ2V0RmlsZUltcG9ydGVyKGZpbGUpO1xuICAgICAgaWYgKGltcG9ydGVyID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgb2JzZXJ2ZXIuZXJyb3IobmV3IEltcG9ydEludmFsaWRGaWxlRXJyb3IoKSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaW1wb3J0ZXIuY2FsbCh0aGlzLCBmaWxlLCBvYnNlcnZlcik7XG4gICAgfTtcblxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZShkb0ltcG9ydCk7XG4gIH1cblxuICBwcml2YXRlIGltcG9ydEZpbGUoZmlsZTogRmlsZSwgb2JzZXJ2ZXI6IE9ic2VydmVyPERldGFpbGVkQ29udGV4dD4pIHtcbiAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuXG4gICAgcmVhZGVyLm9ubG9hZCA9IChldmVudDogYW55KSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBjb250ZXh0ID0gdGhpcy5wYXJzZUNvbnRleHRGcm9tRmlsZShmaWxlLCBldmVudC50YXJnZXQucmVzdWx0KTtcbiAgICAgICAgb2JzZXJ2ZXIubmV4dChjb250ZXh0KTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgb2JzZXJ2ZXIuZXJyb3IobmV3IEltcG9ydFVucmVhZGFibGVGaWxlRXJyb3IoKSk7XG4gICAgICB9XG5cbiAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgfTtcblxuICAgIHJlYWRlci5vbmVycm9yID0gKGV2dCkgPT4ge1xuICAgICAgb2JzZXJ2ZXIuZXJyb3IobmV3IEltcG9ydFVucmVhZGFibGVGaWxlRXJyb3IoKSk7XG4gICAgfTtcblxuICAgIHJlYWRlci5yZWFkQXNUZXh0KGZpbGUsICdVVEYtOCcpO1xuICB9XG5cbiAgcHJpdmF0ZSBwYXJzZUNvbnRleHRGcm9tRmlsZShmaWxlOiBGaWxlLCBkYXRhOiBzdHJpbmcpOiBEZXRhaWxlZENvbnRleHQge1xuICAgIGNvbnN0IGNvbnRleHQ6IERldGFpbGVkQ29udGV4dCA9IEpTT04ucGFyc2UoZGF0YSk7XG4gICAgcmV0dXJuIGNvbnRleHQ7XG4gIH1cbn1cbiJdfQ==
@@ -1,133 +1,133 @@
1
- import { FeatureDataSource, VectorLayer, ClusterDataSource, featureRandomStyle, featureRandomStyleFunction } from '@igo2/geo';
2
- export function handleFileImportSuccess(file, context, messageService, contextService) {
3
- if (Object.keys(context).length <= 0) {
4
- handleNothingToImportError(file, messageService);
5
- return;
6
- }
7
- const contextTitle = computeLayerTitleFromFile(file);
8
- addContextToContextList(context, contextTitle, contextService);
9
- messageService.success('igo.context.contextImportExport.import.success.text', 'igo.context.contextImportExport.import.success.title', undefined, {
10
- value: contextTitle
11
- });
12
- }
13
- export function handleFileImportError(file, error, messageService, sizeMb) {
14
- sizeMb = sizeMb ? sizeMb : 30;
15
- const errMapping = {
16
- 'Invalid file': handleInvalidFileImportError,
17
- 'File is too large': handleSizeFileImportError,
18
- 'Failed to read file': handleUnreadbleFileImportError
19
- };
20
- errMapping[error.message](file, error, messageService, sizeMb);
21
- }
22
- export function handleInvalidFileImportError(file, error, messageService) {
23
- messageService.error('igo.context.contextImportExport.import.invalid.text', 'igo.context.contextImportExport.import.invalid.title', undefined, {
24
- value: file.name,
25
- mimeType: file.type
26
- });
27
- }
28
- export function handleSizeFileImportError(file, error, messageService, sizeMb) {
29
- messageService.error('igo.context.contextImportExport.import.tooLarge.text', 'igo.context.contextImportExport.import.tooLarge.title', undefined, {
30
- value: file.name,
31
- size: sizeMb
32
- });
33
- }
34
- export function handleUnreadbleFileImportError(file, error, messageService) {
35
- messageService.error('igo.context.contextImportExport.import.unreadable.text', 'igo.context.contextImportExport.import.unreadable.title', undefined, {
36
- value: file.name
37
- });
38
- }
39
- export function handleNothingToImportError(file, messageService) {
40
- messageService.error('igo.context.contextImportExport.import.empty.text', 'igo.context.contextImportExport.import.empty.title', undefined, { value: file.name });
41
- }
42
- export function addContextToContextList(context, contextTitle, contextService) {
43
- context.title = contextTitle;
44
- context.imported = true;
45
- contextService.contexts$.value.ours.unshift(context);
46
- contextService.contexts$.next(contextService.contexts$.value);
47
- contextService.importedContext.unshift(context);
48
- contextService.loadContext(context.uri);
49
- }
50
- export function getFileExtension(file) {
51
- return file.name.split('.').pop().toLowerCase();
52
- }
53
- export function computeLayerTitleFromFile(file) {
54
- return file.name.substr(0, file.name.lastIndexOf('.'));
55
- }
56
- export function addImportedFeaturesToMap(olFeatures, map, layerTitle) {
57
- const sourceOptions = {
58
- type: 'vector',
59
- queryable: true
60
- };
61
- const source = new FeatureDataSource(sourceOptions);
62
- source.ol.addFeatures(olFeatures);
63
- let randomStyle;
64
- let editable = false;
65
- if (olFeatures[0].getKeys().includes('_style') ||
66
- olFeatures[0].getKeys().includes('_mapTitle')) {
67
- randomStyle = featureRandomStyleFunction();
68
- }
69
- else {
70
- randomStyle = featureRandomStyle();
71
- editable = true;
72
- }
73
- const layer = new VectorLayer({
74
- title: layerTitle,
75
- isIgoInternalLayer: true,
76
- source,
77
- igoStyle: { editable },
78
- style: randomStyle
79
- });
80
- map.addLayer(layer);
81
- return layer;
82
- }
83
- export function addImportedFeaturesStyledToMap(olFeatures, map, layerTitle, styleListService, styleService) {
84
- let style;
85
- let distance;
86
- if (styleListService.getStyleList(layerTitle.toString() + '.styleByAttribute')) {
87
- const styleByAttribute = styleListService.getStyleList(layerTitle.toString() + '.styleByAttribute');
88
- style = (feature, resolution) => {
89
- return styleService.createStyleByAttribute(feature, styleByAttribute, resolution);
90
- };
91
- }
92
- else if (styleListService.getStyleList(layerTitle.toString() + '.clusterStyle')) {
93
- const clusterParam = styleListService.getStyleList(layerTitle.toString() + '.clusterParam');
94
- distance = styleListService.getStyleList(layerTitle.toString() + '.distance');
95
- style = (feature, resolution) => {
96
- const baseStyle = styleService.createStyle(styleListService.getStyleList(layerTitle.toString() + '.clusterStyle'), feature, resolution);
97
- return styleService.createClusterStyle(feature, resolution, clusterParam, baseStyle);
98
- };
99
- }
100
- else if (styleListService.getStyleList(layerTitle.toString() + '.style')) {
101
- style = (feature, resolution) => styleService.createStyle(styleListService.getStyleList(layerTitle.toString() + '.style'), feature, resolution);
102
- }
103
- else {
104
- style = (feature, resolution) => styleService.createStyle(styleListService.getStyleList('default.style'), feature, resolution);
105
- }
106
- let source;
107
- if (styleListService.getStyleList(layerTitle.toString() + '.clusterStyle')) {
108
- const sourceOptions = {
109
- distance,
110
- type: 'cluster',
111
- queryable: true
112
- };
113
- source = new ClusterDataSource(sourceOptions);
114
- source.ol.source.addFeatures(olFeatures);
115
- }
116
- else {
117
- const sourceOptions = {
118
- type: 'vector',
119
- queryable: true
120
- };
121
- source = new FeatureDataSource(sourceOptions);
122
- source.ol.addFeatures(olFeatures);
123
- }
124
- const layer = new VectorLayer({
125
- title: layerTitle,
126
- isIgoInternalLayer: true,
127
- source,
128
- style
129
- });
130
- map.addLayer(layer);
131
- return layer;
132
- }
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1pbXBvcnQudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1pbXBvcnQtZXhwb3J0L3NoYXJlZC9jb250ZXh0LWltcG9ydC51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQ0wsaUJBQWlCLEVBR2pCLFdBQVcsRUFPWCxpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLDBCQUEwQixFQUMzQixNQUFNLFdBQVcsQ0FBQztBQU1uQixNQUFNLFVBQVUsdUJBQXVCLENBQ3JDLElBQVUsRUFDVixPQUF3QixFQUN4QixjQUE4QixFQUM5QixjQUE4QjtJQUU5QixJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRTtRQUNwQywwQkFBMEIsQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDakQsT0FBTztLQUNSO0lBRUQsTUFBTSxZQUFZLEdBQUcseUJBQXlCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFckQsdUJBQXVCLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLENBQUMsQ0FBQztJQUUvRCxjQUFjLENBQUMsT0FBTyxDQUNwQixxREFBcUQsRUFDckQsc0RBQXNELEVBQUUsU0FBUyxFQUFFO1FBQ2pFLEtBQUssRUFBRSxZQUFZO0tBQ3BCLENBQUMsQ0FBQztBQUNQLENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQ25DLElBQVUsRUFDVixLQUFZLEVBQ1osY0FBOEIsRUFDOUIsTUFBZTtJQUVmLE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzlCLE1BQU0sVUFBVSxHQUFHO1FBQ2pCLGNBQWMsRUFBRSw0QkFBNEI7UUFDNUMsbUJBQW1CLEVBQUUseUJBQXlCO1FBQzlDLHFCQUFx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SUFDRCxJQUFJLE1BQU0sQ0FBQztJQUVYLElBQUksZ0JBQWdCLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxlQUFlLENBQUMsRUFBRTtRQUMxRSxNQUFNLGFBQWEsR0FDWTtZQUM3QixRQUFRO1lBQ1IsSUFBSSxFQUFFLFNBQVM7WUFDZixTQUFTLEVBQUUsSUFBSTtTQUNoQixDQUFDO1FBQ0YsTUFBTSxHQUFHLElBQUksaUJBQWlCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBQzFDO1NBQU07UUFDTCxNQUFNLGFBQWEsR0FDWTtZQUM3QixJQUFJLEVBQUUsUUFBUTtZQUNkLFNBQVMsRUFBRSxJQUFJO1NBQ2hCLENBQUM7UUFDRixNQUFNLEdBQUcsSUFBSSxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5QyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztLQUNuQztJQUVELE1BQU0sS0FBSyxHQUFHLElBQUksV0FBVyxDQUFDO1FBQzVCLEtBQUssRUFBRSxVQUFVO1FBQ2pCLGtCQUFrQixFQUFFLElBQUk7UUFDeEIsTUFBTTtRQUNOLEtBQUs7S0FDTixDQUFDLENBQUM7SUFDSCxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRXBCLE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgZGVmYXVsdCBhcyBPbEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XHJcblxyXG5pbXBvcnQge1xyXG4gIEZlYXR1cmVEYXRhU291cmNlLFxyXG4gIEZlYXR1cmVEYXRhU291cmNlT3B0aW9ucyxcclxuICBJZ29NYXAsXHJcbiAgVmVjdG9yTGF5ZXIsXHJcbiAgUXVlcnlhYmxlRGF0YVNvdXJjZU9wdGlvbnMsXHJcbiAgU3R5bGVTZXJ2aWNlLFxyXG4gIFN0eWxlTGlzdFNlcnZpY2UsXHJcbiAgU3R5bGVCeUF0dHJpYnV0ZSxcclxuICBDbHVzdGVyUGFyYW0sXHJcbiAgQ2x1c3RlckRhdGFTb3VyY2VPcHRpb25zLFxyXG4gIENsdXN0ZXJEYXRhU291cmNlLFxyXG4gIGZlYXR1cmVSYW5kb21TdHlsZSxcclxuICBmZWF0dXJlUmFuZG9tU3R5bGVGdW5jdGlvblxyXG59IGZyb20gJ0BpZ28yL2dlbyc7XHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcbmltcG9ydCB7IERldGFpbGVkQ29udGV4dCB9IGZyb20gJy4uLy4uL2NvbnRleHQtbWFuYWdlci9zaGFyZWQvY29udGV4dC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL2NvbnRleHQtbWFuYWdlci9zaGFyZWQvY29udGV4dC5zZXJ2aWNlJztcclxuaW1wb3J0IE9sRmVhdHVyZSBmcm9tICdvbC9GZWF0dXJlJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVGaWxlSW1wb3J0U3VjY2VzcyhcclxuICBmaWxlOiBGaWxlLFxyXG4gIGNvbnRleHQ6IERldGFpbGVkQ29udGV4dCxcclxuICBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgY29udGV4dFNlcnZpY2U6IENvbnRleHRTZXJ2aWNlXHJcbikge1xyXG4gIGlmIChPYmplY3Qua2V5cyhjb250ZXh0KS5sZW5ndGggPD0gMCkge1xyXG4gICAgaGFuZGxlTm90aGluZ1RvSW1wb3J0RXJyb3IoZmlsZSwgbWVzc2FnZVNlcnZpY2UpO1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgY29udGV4dFRpdGxlID0gY29tcHV0ZUxheWVyVGl0bGVGcm9tRmlsZShmaWxlKTtcclxuXHJcbiAgYWRkQ29udGV4dFRvQ29udGV4dExpc3QoY29udGV4dCwgY29udGV4dFRpdGxlLCBjb250ZXh0U2VydmljZSk7XHJcblxyXG4gIG1lc3NhZ2VTZXJ2aWNlLnN1Y2Nlc3MoXHJcbiAgICAnaWdvLmNvbnRleHQuY29udGV4dEltcG9ydEV4cG9ydC5pbXBvcnQuc3VjY2Vzcy50ZXh0JyxcclxuICAgICdpZ28uY29udGV4dC5jb250ZXh0SW1wb3J0RXhwb3J0LmltcG9ydC5zdWNjZXNzLnRpdGxlJywgdW5kZWZpbmVkLCB7XHJcbiAgICAgIHZhbHVlOiBjb250ZXh0VGl0bGVcclxuICAgIH0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlRmlsZUltcG9ydEVycm9yKFxyXG4gIGZpbGU6IEZpbGUsXHJcbiAgZXJyb3I6IEVycm9yLFxyXG4gIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICBzaXplTWI/OiBudW1iZXJcclxuKSB7XHJcbiAgc2l6ZU1iID0gc2l6ZU1iID8gc2l6ZU1iIDogMzA7XHJcbiAgY29uc3QgZXJyTWFwcGluZyA9IHtcclxuICAgICdJbnZhbGlkIGZpbGUnOiBoYW5kbGVJbnZhbGlkRmlsZUltcG9ydEVycm9yLFxyXG4gICAgJ0ZpbGUgaXMgdG9vIGxhcmdlJzogaGFuZGxlU2l6ZUZpbGVJbXBvcnRFcnJvcixcclxuICAgICdGYWlsZWQgdG8gcmVhZCBmaWxlJzogaGFuZGxlVW5yZWFkYmxlRmlsZUltcG9ydEVycm9yXHJcbiAgfTtcclxuICBlcnJNYXBwaW5nW2Vycm9yLm1lc3NhZ2VdKFxyXG4gICAgZmlsZSxcclxuICAgIGVycm9yLFxyXG4gICAgbWVzc2FnZVNlcnZpY2UsXHJcbiAgICBzaXplTWJcclxuICApO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlSW52YWxpZEZpbGVJbXBvcnRFcnJvcihcclxuICBmaWxlOiBGaWxlLFxyXG4gIGVycm9yOiBFcnJvcixcclxuICBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbikge1xyXG4gIG1lc3NhZ2VTZXJ2aWNlLmVycm9yKFxyXG4gICAgJ2lnby5jb250ZXh0LmNvbnRleHRJbXBvcnRFeHBvcnQuaW1wb3J0LmludmFsaWQudGV4dCcsXHJcbiAgICAnaWdvLmNvbnRleHQuY29udGV4dEltcG9ydEV4cG9ydC5pbXBvcnQuaW52YWxpZC50aXRsZScsXHJcbiAgICB1bmRlZmluZWQsXHJcbiAgICB7XHJcbiAgICAgIHZhbHVlOiBmaWxlLm5hbWUsXHJcbiAgICAgIG1pbWVUeXBlOiBmaWxlLnR5cGVcclxuICAgIH1cclxuICApO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlU2l6ZUZpbGVJbXBvcnRFcnJvcihcclxuICBmaWxlOiBGaWxlLFxyXG4gIGVycm9yOiBFcnJvcixcclxuICBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgc2l6ZU1iOiBudW1iZXJcclxuKSB7XHJcbiAgbWVzc2FnZVNlcnZpY2UuZXJyb3IoXHJcbiAgICAnaWdvLmNvbnRleHQuY29udGV4dEltcG9ydEV4cG9ydC5pbXBvcnQudG9vTGFyZ2UudGV4dCcsXHJcbiAgICAnaWdvLmNvbnRleHQuY29udGV4dEltcG9ydEV4cG9ydC5pbXBvcnQudG9vTGFyZ2UudGl0bGUnLFxyXG4gICAgdW5kZWZpbmVkLFxyXG4gICAge1xyXG4gICAgICB2YWx1ZTogZmlsZS5uYW1lLFxyXG4gICAgICBzaXplOiBzaXplTWJcclxuICAgIH0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlVW5yZWFkYmxlRmlsZUltcG9ydEVycm9yKFxyXG4gIGZpbGU6IEZpbGUsXHJcbiAgZXJyb3I6IEVycm9yLFxyXG4gIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZVxyXG4pIHtcclxuICBtZXNzYWdlU2VydmljZS5lcnJvcihcclxuICAgICdpZ28uY29udGV4dC5jb250ZXh0SW1wb3J0RXhwb3J0LmltcG9ydC51bnJlYWRhYmxlLnRleHQnLFxyXG4gICAgJ2lnby5jb250ZXh0LmNvbnRleHRJbXBvcnRFeHBvcnQuaW1wb3J0LnVucmVhZGFibGUudGl0bGUnLFxyXG4gICAgdW5kZWZpbmVkLFxyXG4gICAge1xyXG4gICAgICB2YWx1ZTogZmlsZS5uYW1lXHJcbiAgICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZU5vdGhpbmdUb0ltcG9ydEVycm9yKFxyXG4gIGZpbGU6IEZpbGUsXHJcbiAgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlXHJcbikge1xyXG4gIG1lc3NhZ2VTZXJ2aWNlLmVycm9yKFxyXG4gICAgJ2lnby5jb250ZXh0LmNvbnRleHRJbXBvcnRFeHBvcnQuaW1wb3J0LmVtcHR5LnRleHQnLFxyXG4gICAgJ2lnby5jb250ZXh0LmNvbnRleHRJbXBvcnRFeHBvcnQuaW1wb3J0LmVtcHR5LnRpdGxlJyxcclxuICAgIHVuZGVmaW5lZCxcclxuICAgIHsgdmFsdWU6IGZpbGUubmFtZSB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGFkZENvbnRleHRUb0NvbnRleHRMaXN0KFxyXG4gIGNvbnRleHQ6IERldGFpbGVkQ29udGV4dCxcclxuICBjb250ZXh0VGl0bGU6IHN0cmluZyxcclxuICBjb250ZXh0U2VydmljZTogQ29udGV4dFNlcnZpY2VcclxuKSB7XHJcbiAgY29udGV4dC50aXRsZSA9IGNvbnRleHRUaXRsZTtcclxuICBjb250ZXh0LmltcG9ydGVkID0gdHJ1ZTtcclxuICBjb250ZXh0U2VydmljZS5jb250ZXh0cyQudmFsdWUub3Vycy51bnNoaWZ0KGNvbnRleHQpO1xyXG4gIGNvbnRleHRTZXJ2aWNlLmNvbnRleHRzJC5uZXh0KGNvbnRleHRTZXJ2aWNlLmNvbnRleHRzJC52YWx1ZSk7XHJcbiAgY29udGV4dFNlcnZpY2UuaW1wb3J0ZWRDb250ZXh0LnVuc2hpZnQoY29udGV4dCk7XHJcbiAgY29udGV4dFNlcnZpY2UubG9hZENvbnRleHQoY29udGV4dC51cmkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsZUV4dGVuc2lvbihmaWxlOiBGaWxlKTogc3RyaW5nIHtcclxuICByZXR1cm4gZmlsZS5uYW1lLnNwbGl0KCcuJykucG9wKCkudG9Mb3dlckNhc2UoKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvbXB1dGVMYXllclRpdGxlRnJvbUZpbGUoZmlsZTogRmlsZSk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIGZpbGUubmFtZS5zdWJzdHIoMCwgZmlsZS5uYW1lLmxhc3RJbmRleE9mKCcuJykpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYWRkSW1wb3J0ZWRGZWF0dXJlc1RvTWFwKFxyXG4gIG9sRmVhdHVyZXM6IE9sRmVhdHVyZTxPbEdlb21ldHJ5PltdLFxyXG4gIG1hcDogSWdvTWFwLFxyXG4gIGxheWVyVGl0bGU6IHN0cmluZ1xyXG4pOiBWZWN0b3JMYXllciB7XHJcbiAgY29uc3Qgc291cmNlT3B0aW9uczogRmVhdHVyZURhdGFTb3VyY2VPcHRpb25zICYgUXVlcnlhYmxlRGF0YVNvdXJjZU9wdGlvbnMgPSB7XHJcbiAgICB0eXBlOiAndmVjdG9yJyxcclxuICAgIHF1ZXJ5YWJsZTogdHJ1ZVxyXG4gIH07XHJcbiAgY29uc3Qgc291cmNlID0gbmV3IEZlYXR1cmVEYXRhU291cmNlKHNvdXJjZU9wdGlvbnMpO1xyXG4gIHNvdXJjZS5vbC5hZGRGZWF0dXJlcyhvbEZlYXR1cmVzKTtcclxuICBsZXQgcmFuZG9tU3R5bGU7XHJcbiAgbGV0IGVkaXRhYmxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgaWYgKFxyXG4gICAgb2xGZWF0dXJlc1swXS5nZXRLZXlzKCkuaW5jbHVkZXMoJ19zdHlsZScpIHx8XHJcbiAgICBvbEZlYXR1cmVzWzBdLmdldEtleXMoKS5pbmNsdWRlcygnX21hcFRpdGxlJykpIHtcclxuICAgIHJhbmRvbVN0eWxlID0gZmVhdHVyZVJhbmRvbVN0eWxlRnVuY3Rpb24oKTtcclxuICB9IGVsc2Uge1xyXG4gICAgcmFuZG9tU3R5bGUgPSBmZWF0dXJlUmFuZG9tU3R5bGUoKTtcclxuICAgIGVkaXRhYmxlID0gdHJ1ZTtcclxuICB9XHJcbiAgY29uc3QgbGF5ZXIgPSBuZXcgVmVjdG9yTGF5ZXIoe1xyXG4gICAgdGl0bGU6IGxheWVyVGl0bGUsXHJcbiAgICBpc0lnb0ludGVybmFsTGF5ZXI6IHRydWUsXHJcbiAgICBzb3VyY2UsXHJcbiAgICBpZ29TdHlsZTogeyBlZGl0YWJsZSB9LFxyXG4gICAgc3R5bGU6IHJhbmRvbVN0eWxlXHJcbiAgfSk7XHJcbiAgbWFwLmFkZExheWVyKGxheWVyKTtcclxuXHJcbiAgcmV0dXJuIGxheWVyO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYWRkSW1wb3J0ZWRGZWF0dXJlc1N0eWxlZFRvTWFwKFxyXG4gIG9sRmVhdHVyZXM6IE9sRmVhdHVyZTxPbEdlb21ldHJ5PltdLFxyXG4gIG1hcDogSWdvTWFwLFxyXG4gIGxheWVyVGl0bGU6IHN0cmluZyxcclxuICBzdHlsZUxpc3RTZXJ2aWNlOiBTdHlsZUxpc3RTZXJ2aWNlLFxyXG4gIHN0eWxlU2VydmljZTogU3R5bGVTZXJ2aWNlXHJcbik6IFZlY3RvckxheWVyIHtcclxuICBsZXQgc3R5bGU7XHJcbiAgbGV0IGRpc3RhbmNlOiBudW1iZXI7XHJcblxyXG4gIGlmIChcclxuICAgIHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KGxheWVyVGl0bGUudG9TdHJpbmcoKSArICcuc3R5bGVCeUF0dHJpYnV0ZScpXHJcbiAgKSB7XHJcbiAgICBjb25zdCBzdHlsZUJ5QXR0cmlidXRlOiBTdHlsZUJ5QXR0cmlidXRlID0gc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QoXHJcbiAgICAgIGxheWVyVGl0bGUudG9TdHJpbmcoKSArICcuc3R5bGVCeUF0dHJpYnV0ZSdcclxuICAgICk7XHJcblxyXG4gICAgc3R5bGUgPSAoZmVhdHVyZSwgcmVzb2x1dGlvbikgPT4ge1xyXG4gICAgICByZXR1cm4gc3R5bGVTZXJ2aWNlLmNyZWF0ZVN0eWxlQnlBdHRyaWJ1dGUoZmVhdHVyZSwgc3R5bGVCeUF0dHJpYnV0ZSwgcmVzb2x1dGlvbik7XHJcbiAgICB9O1xyXG4gIH0gZWxzZSBpZiAoXHJcbiAgICBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChsYXllclRpdGxlLnRvU3RyaW5nKCkgKyAnLmNsdXN0ZXJTdHlsZScpXHJcbiAgKSB7XHJcbiAgICBjb25zdCBjbHVzdGVyUGFyYW06IENsdXN0ZXJQYXJhbSA9IHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KFxyXG4gICAgICBsYXllclRpdGxlLnRvU3RyaW5nKCkgKyAnLmNsdXN0ZXJQYXJhbSdcclxuICAgICk7XHJcbiAgICBkaXN0YW5jZSA9IHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KFxyXG4gICAgICBsYXllclRpdGxlLnRvU3RyaW5nKCkgKyAnLmRpc3RhbmNlJ1xyXG4gICAgKTtcclxuXHJcbiAgICBzdHlsZSA9IChmZWF0dXJlLCByZXNvbHV0aW9uKSA9PiB7XHJcbiAgICAgIGNvbnN0IGJhc2VTdHlsZSA9IHN0eWxlU2VydmljZS5jcmVhdGVTdHlsZShcclxuICAgICAgICBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChsYXllclRpdGxlLnRvU3RyaW5nKCkgKyAnLmNsdXN0ZXJTdHlsZScpLCBmZWF0dXJlLCByZXNvbHV0aW9uXHJcbiAgICAgICk7XHJcbiAgICAgIHJldHVybiBzdHlsZVNlcnZpY2UuY3JlYXRlQ2x1c3RlclN0eWxlKGZlYXR1cmUsIHJlc29sdXRpb24sIGNsdXN0ZXJQYXJhbSwgYmFzZVN0eWxlKTtcclxuICAgIH07XHJcbiAgfSBlbHNlIGlmIChzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChsYXllclRpdGxlLnRvU3RyaW5nKCkgKyAnLnN0eWxlJykpIHtcclxuICAgIHN0eWxlID0gKGZlYXR1cmUsIHJlc29sdXRpb24pID0+IHN0eWxlU2VydmljZS5jcmVhdGVTdHlsZShcclxuICAgICAgc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QobGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5zdHlsZScpLCBmZWF0dXJlLCByZXNvbHV0aW9uXHJcbiAgICApO1xyXG4gIH0gZWxzZSB7XHJcbiAgICBzdHlsZSA9IChmZWF0dXJlLCByZXNvbHV0aW9uKSA9PiBzdHlsZVNlcnZpY2UuY3JlYXRlU3R5bGUoXHJcbiAgICAgIHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KCdkZWZhdWx0LnN0eWxlJyksIGZlYXR1cmUsIHJlc29sdXRpb25cclxuICAgICk7XHJcbiAgfVxyXG4gIGxldCBzb3VyY2U7XHJcblxyXG4gIGlmIChzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChsYXllclRpdGxlLnRvU3RyaW5nKCkgKyAnLmNsdXN0ZXJTdHlsZScpKSB7XHJcbiAgICBjb25zdCBzb3VyY2VPcHRpb25zOiBDbHVzdGVyRGF0YVNvdXJjZU9wdGlvbnMgJlxyXG4gICAgICBRdWVyeWFibGVEYXRhU291cmNlT3B0aW9ucyA9IHtcclxuICAgICAgZGlzdGFuY2UsXHJcbiAgICAgIHR5cGU6ICdjbHVzdGVyJyxcclxuICAgICAgcXVlcnlhYmxlOiB0cnVlXHJcbiAgICB9O1xyXG4gICAgc291cmNlID0gbmV3IENsdXN0ZXJEYXRhU291cmNlKHNvdXJjZU9wdGlvbnMpO1xyXG4gICAgc291cmNlLm9sLnNvdXJjZS5hZGRGZWF0dXJlcyhvbEZlYXR1cmVzKTtcclxuICB9IGVsc2Uge1xyXG4gICAgY29uc3Qgc291cmNlT3B0aW9uczogRmVhdHVyZURhdGFTb3VyY2VPcHRpb25zICZcclxuICAgICAgUXVlcnlhYmxlRGF0YVNvdXJjZU9wdGlvbnMgPSB7XHJcbiAgICAgIHR5cGU6ICd2ZWN0b3InLFxyXG4gICAgICBxdWVyeWFibGU6IHRydWVcclxuICAgIH07XHJcbiAgICBzb3VyY2UgPSBuZXcgRmVhdHVyZURhdGFTb3VyY2Uoc291cmNlT3B0aW9ucyk7XHJcbiAgICBzb3VyY2Uub2wuYWRkRmVhdHVyZXMob2xGZWF0dXJlcyk7XHJcbiAgfVxyXG5cclxuICBjb25zdCBsYXllciA9IG5ldyBWZWN0b3JMYXllcih7XHJcbiAgICB0aXRsZTogbGF5ZXJUaXRsZSxcclxuICAgIGlzSWdvSW50ZXJuYWxMYXllcjogdHJ1ZSxcclxuICAgIHNvdXJjZSxcclxuICAgIHN0eWxlXHJcbiAgfSk7XHJcbiAgbWFwLmFkZExheWVyKGxheWVyKTtcclxuXHJcbiAgcmV0dXJuIGxheWVyO1xyXG59XHJcbiJdfQ==
1
+ import { FeatureDataSource, VectorLayer, ClusterDataSource, featureRandomStyle, featureRandomStyleFunction } from '@igo2/geo';
2
+ export function handleFileImportSuccess(file, context, messageService, contextService) {
3
+ if (Object.keys(context).length <= 0) {
4
+ handleNothingToImportError(file, messageService);
5
+ return;
6
+ }
7
+ const contextTitle = computeLayerTitleFromFile(file);
8
+ addContextToContextList(context, contextTitle, contextService);
9
+ messageService.success('igo.context.contextImportExport.import.success.text', 'igo.context.contextImportExport.import.success.title', undefined, {
10
+ value: contextTitle
11
+ });
12
+ }
13
+ export function handleFileImportError(file, error, messageService, sizeMb) {
14
+ sizeMb = sizeMb ? sizeMb : 30;
15
+ const errMapping = {
16
+ 'Invalid file': handleInvalidFileImportError,
17
+ 'File is too large': handleSizeFileImportError,
18
+ 'Failed to read file': handleUnreadbleFileImportError
19
+ };
20
+ errMapping[error.message](file, error, messageService, sizeMb);
21
+ }
22
+ export function handleInvalidFileImportError(file, error, messageService) {
23
+ messageService.error('igo.context.contextImportExport.import.invalid.text', 'igo.context.contextImportExport.import.invalid.title', undefined, {
24
+ value: file.name,
25
+ mimeType: file.type
26
+ });
27
+ }
28
+ export function handleSizeFileImportError(file, error, messageService, sizeMb) {
29
+ messageService.error('igo.context.contextImportExport.import.tooLarge.text', 'igo.context.contextImportExport.import.tooLarge.title', undefined, {
30
+ value: file.name,
31
+ size: sizeMb
32
+ });
33
+ }
34
+ export function handleUnreadbleFileImportError(file, error, messageService) {
35
+ messageService.error('igo.context.contextImportExport.import.unreadable.text', 'igo.context.contextImportExport.import.unreadable.title', undefined, {
36
+ value: file.name
37
+ });
38
+ }
39
+ export function handleNothingToImportError(file, messageService) {
40
+ messageService.error('igo.context.contextImportExport.import.empty.text', 'igo.context.contextImportExport.import.empty.title', undefined, { value: file.name });
41
+ }
42
+ export function addContextToContextList(context, contextTitle, contextService) {
43
+ context.title = contextTitle;
44
+ context.imported = true;
45
+ contextService.contexts$.value.ours.unshift(context);
46
+ contextService.contexts$.next(contextService.contexts$.value);
47
+ contextService.importedContext.unshift(context);
48
+ contextService.loadContext(context.uri);
49
+ }
50
+ export function getFileExtension(file) {
51
+ return file.name.split('.').pop().toLowerCase();
52
+ }
53
+ export function computeLayerTitleFromFile(file) {
54
+ return file.name.substr(0, file.name.lastIndexOf('.'));
55
+ }
56
+ export function addImportedFeaturesToMap(olFeatures, map, layerTitle) {
57
+ const sourceOptions = {
58
+ type: 'vector',
59
+ queryable: true
60
+ };
61
+ const source = new FeatureDataSource(sourceOptions);
62
+ source.ol.addFeatures(olFeatures);
63
+ let randomStyle;
64
+ let editable = false;
65
+ if (olFeatures[0].getKeys().includes('_style') ||
66
+ olFeatures[0].getKeys().includes('_mapTitle')) {
67
+ randomStyle = featureRandomStyleFunction();
68
+ }
69
+ else {
70
+ randomStyle = featureRandomStyle();
71
+ editable = true;
72
+ }
73
+ const layer = new VectorLayer({
74
+ title: layerTitle,
75
+ isIgoInternalLayer: true,
76
+ source,
77
+ igoStyle: { editable },
78
+ style: randomStyle
79
+ });
80
+ map.addLayer(layer);
81
+ return layer;
82
+ }
83
+ export function addImportedFeaturesStyledToMap(olFeatures, map, layerTitle, styleListService, styleService) {
84
+ let style;
85
+ let distance;
86
+ if (styleListService.getStyleList(layerTitle.toString() + '.styleByAttribute')) {
87
+ const styleByAttribute = styleListService.getStyleList(layerTitle.toString() + '.styleByAttribute');
88
+ style = (feature, resolution) => {
89
+ return styleService.createStyleByAttribute(feature, styleByAttribute, resolution);
90
+ };
91
+ }
92
+ else if (styleListService.getStyleList(layerTitle.toString() + '.clusterStyle')) {
93
+ const clusterParam = styleListService.getStyleList(layerTitle.toString() + '.clusterParam');
94
+ distance = styleListService.getStyleList(layerTitle.toString() + '.distance');
95
+ style = (feature, resolution) => {
96
+ const baseStyle = styleService.createStyle(styleListService.getStyleList(layerTitle.toString() + '.clusterStyle'), feature, resolution);
97
+ return styleService.createClusterStyle(feature, resolution, clusterParam, baseStyle);
98
+ };
99
+ }
100
+ else if (styleListService.getStyleList(layerTitle.toString() + '.style')) {
101
+ style = (feature, resolution) => styleService.createStyle(styleListService.getStyleList(layerTitle.toString() + '.style'), feature, resolution);
102
+ }
103
+ else {
104
+ style = (feature, resolution) => styleService.createStyle(styleListService.getStyleList('default.style'), feature, resolution);
105
+ }
106
+ let source;
107
+ if (styleListService.getStyleList(layerTitle.toString() + '.clusterStyle')) {
108
+ const sourceOptions = {
109
+ distance,
110
+ type: 'cluster',
111
+ queryable: true
112
+ };
113
+ source = new ClusterDataSource(sourceOptions);
114
+ source.ol.source.addFeatures(olFeatures);
115
+ }
116
+ else {
117
+ const sourceOptions = {
118
+ type: 'vector',
119
+ queryable: true
120
+ };
121
+ source = new FeatureDataSource(sourceOptions);
122
+ source.ol.addFeatures(olFeatures);
123
+ }
124
+ const layer = new VectorLayer({
125
+ title: layerTitle,
126
+ isIgoInternalLayer: true,
127
+ source,
128
+ style
129
+ });
130
+ map.addLayer(layer);
131
+ return layer;
132
+ }
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1pbXBvcnQudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1pbXBvcnQtZXhwb3J0L3NoYXJlZC9jb250ZXh0LWltcG9ydC51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQ0wsaUJBQWlCLEVBR2pCLFdBQVcsRUFPWCxpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLDBCQUEwQixFQUMzQixNQUFNLFdBQVcsQ0FBQztBQU1uQixNQUFNLFVBQVUsdUJBQXVCLENBQ3JDLElBQVUsRUFDVixPQUF3QixFQUN4QixjQUE4QixFQUM5QixjQUE4QjtJQUU5QixJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRTtRQUNwQywwQkFBMEIsQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDakQsT0FBTztLQUNSO0lBRUQsTUFBTSxZQUFZLEdBQUcseUJBQXlCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFckQsdUJBQXVCLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLENBQUMsQ0FBQztJQUUvRCxjQUFjLENBQUMsT0FBTyxDQUNwQixxREFBcUQsRUFDckQsc0RBQXNELEVBQUUsU0FBUyxFQUFFO1FBQ2pFLEtBQUssRUFBRSxZQUFZO0tBQ3BCLENBQUMsQ0FBQztBQUNQLENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQ25DLElBQVUsRUFDVixLQUFZLEVBQ1osY0FBOEIsRUFDOUIsTUFBZTtJQUVmLE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzlCLE1BQU0sVUFBVSxHQUFHO1FBQ2pCLGNBQWMsRUFBRSw0QkFBNEI7UUFDNUMsbUJBQW1CLEVBQUUseUJBQXlCO1FBQzlDLHFCQUFx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SUFDRCxJQUFJLE1BQU0sQ0FBQztJQUVYLElBQUksZ0JBQWdCLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxlQUFlLENBQUMsRUFBRTtRQUMxRSxNQUFNLGFBQWEsR0FDWTtZQUM3QixRQUFRO1lBQ1IsSUFBSSxFQUFFLFNBQVM7WUFDZixTQUFTLEVBQUUsSUFBSTtTQUNoQixDQUFDO1FBQ0YsTUFBTSxHQUFHLElBQUksaUJBQWlCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBQzFDO1NBQU07UUFDTCxNQUFNLGFBQWEsR0FDWTtZQUM3QixJQUFJLEVBQUUsUUFBUTtZQUNkLFNBQVMsRUFBRSxJQUFJO1NBQ2hCLENBQUM7UUFDRixNQUFNLEdBQUcsSUFBSSxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5QyxNQUFNLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztLQUNuQztJQUVELE1BQU0sS0FBSyxHQUFHLElBQUksV0FBVyxDQUFDO1FBQzVCLEtBQUssRUFBRSxVQUFVO1FBQ2pCLGtCQUFrQixFQUFFLElBQUk7UUFDeEIsTUFBTTtRQUNOLEtBQUs7S0FDTixDQUFDLENBQUM7SUFDSCxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRXBCLE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgZGVmYXVsdCBhcyBPbEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XG5cbmltcG9ydCB7XG4gIEZlYXR1cmVEYXRhU291cmNlLFxuICBGZWF0dXJlRGF0YVNvdXJjZU9wdGlvbnMsXG4gIElnb01hcCxcbiAgVmVjdG9yTGF5ZXIsXG4gIFF1ZXJ5YWJsZURhdGFTb3VyY2VPcHRpb25zLFxuICBTdHlsZVNlcnZpY2UsXG4gIFN0eWxlTGlzdFNlcnZpY2UsXG4gIFN0eWxlQnlBdHRyaWJ1dGUsXG4gIENsdXN0ZXJQYXJhbSxcbiAgQ2x1c3RlckRhdGFTb3VyY2VPcHRpb25zLFxuICBDbHVzdGVyRGF0YVNvdXJjZSxcbiAgZmVhdHVyZVJhbmRvbVN0eWxlLFxuICBmZWF0dXJlUmFuZG9tU3R5bGVGdW5jdGlvblxufSBmcm9tICdAaWdvMi9nZW8nO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcbmltcG9ydCB7IERldGFpbGVkQ29udGV4dCB9IGZyb20gJy4uLy4uL2NvbnRleHQtbWFuYWdlci9zaGFyZWQvY29udGV4dC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29udGV4dFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb250ZXh0LW1hbmFnZXIvc2hhcmVkL2NvbnRleHQuc2VydmljZSc7XG5pbXBvcnQgT2xGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnO1xuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlRmlsZUltcG9ydFN1Y2Nlc3MoXG4gIGZpbGU6IEZpbGUsXG4gIGNvbnRleHQ6IERldGFpbGVkQ29udGV4dCxcbiAgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxuICBjb250ZXh0U2VydmljZTogQ29udGV4dFNlcnZpY2Vcbikge1xuICBpZiAoT2JqZWN0LmtleXMoY29udGV4dCkubGVuZ3RoIDw9IDApIHtcbiAgICBoYW5kbGVOb3RoaW5nVG9JbXBvcnRFcnJvcihmaWxlLCBtZXNzYWdlU2VydmljZSk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgY29udGV4dFRpdGxlID0gY29tcHV0ZUxheWVyVGl0bGVGcm9tRmlsZShmaWxlKTtcblxuICBhZGRDb250ZXh0VG9Db250ZXh0TGlzdChjb250ZXh0LCBjb250ZXh0VGl0bGUsIGNvbnRleHRTZXJ2aWNlKTtcblxuICBtZXNzYWdlU2VydmljZS5zdWNjZXNzKFxuICAgICdpZ28uY29udGV4dC5jb250ZXh0SW1wb3J0RXhwb3J0LmltcG9ydC5zdWNjZXNzLnRleHQnLFxuICAgICdpZ28uY29udGV4dC5jb250ZXh0SW1wb3J0RXhwb3J0LmltcG9ydC5zdWNjZXNzLnRpdGxlJywgdW5kZWZpbmVkLCB7XG4gICAgICB2YWx1ZTogY29udGV4dFRpdGxlXG4gICAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVGaWxlSW1wb3J0RXJyb3IoXG4gIGZpbGU6IEZpbGUsXG4gIGVycm9yOiBFcnJvcixcbiAgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxuICBzaXplTWI/OiBudW1iZXJcbikge1xuICBzaXplTWIgPSBzaXplTWIgPyBzaXplTWIgOiAzMDtcbiAgY29uc3QgZXJyTWFwcGluZyA9IHtcbiAgICAnSW52YWxpZCBmaWxlJzogaGFuZGxlSW52YWxpZEZpbGVJbXBvcnRFcnJvcixcbiAgICAnRmlsZSBpcyB0b28gbGFyZ2UnOiBoYW5kbGVTaXplRmlsZUltcG9ydEVycm9yLFxuICAgICdGYWlsZWQgdG8gcmVhZCBmaWxlJzogaGFuZGxlVW5yZWFkYmxlRmlsZUltcG9ydEVycm9yXG4gIH07XG4gIGVyck1hcHBpbmdbZXJyb3IubWVzc2FnZV0oXG4gICAgZmlsZSxcbiAgICBlcnJvcixcbiAgICBtZXNzYWdlU2VydmljZSxcbiAgICBzaXplTWJcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZUludmFsaWRGaWxlSW1wb3J0RXJyb3IoXG4gIGZpbGU6IEZpbGUsXG4gIGVycm9yOiBFcnJvcixcbiAgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxuKSB7XG4gIG1lc3NhZ2VTZXJ2aWNlLmVycm9yKFxuICAgICdpZ28uY29udGV4dC5jb250ZXh0SW1wb3J0RXhwb3J0LmltcG9ydC5pbnZhbGlkLnRleHQnLFxuICAgICdpZ28uY29udGV4dC5jb250ZXh0SW1wb3J0RXhwb3J0LmltcG9ydC5pbnZhbGlkLnRpdGxlJyxcbiAgICB1bmRlZmluZWQsXG4gICAge1xuICAgICAgdmFsdWU6IGZpbGUubmFtZSxcbiAgICAgIG1pbWVUeXBlOiBmaWxlLnR5cGVcbiAgICB9XG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVTaXplRmlsZUltcG9ydEVycm9yKFxuICBmaWxlOiBGaWxlLFxuICBlcnJvcjogRXJyb3IsXG4gIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgc2l6ZU1iOiBudW1iZXJcbikge1xuICBtZXNzYWdlU2VydmljZS5lcnJvcihcbiAgICAnaWdvLmNvbnRleHQuY29udGV4dEltcG9ydEV4cG9ydC5pbXBvcnQudG9vTGFyZ2UudGV4dCcsXG4gICAgJ2lnby5jb250ZXh0LmNvbnRleHRJbXBvcnRFeHBvcnQuaW1wb3J0LnRvb0xhcmdlLnRpdGxlJyxcbiAgICB1bmRlZmluZWQsXG4gICAge1xuICAgICAgdmFsdWU6IGZpbGUubmFtZSxcbiAgICAgIHNpemU6IHNpemVNYlxuICAgIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlVW5yZWFkYmxlRmlsZUltcG9ydEVycm9yKFxuICBmaWxlOiBGaWxlLFxuICBlcnJvcjogRXJyb3IsXG4gIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZVxuKSB7XG4gIG1lc3NhZ2VTZXJ2aWNlLmVycm9yKFxuICAgICdpZ28uY29udGV4dC5jb250ZXh0SW1wb3J0RXhwb3J0LmltcG9ydC51bnJlYWRhYmxlLnRleHQnLFxuICAgICdpZ28uY29udGV4dC5jb250ZXh0SW1wb3J0RXhwb3J0LmltcG9ydC51bnJlYWRhYmxlLnRpdGxlJyxcbiAgICB1bmRlZmluZWQsXG4gICAge1xuICAgICAgdmFsdWU6IGZpbGUubmFtZVxuICAgIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlTm90aGluZ1RvSW1wb3J0RXJyb3IoXG4gIGZpbGU6IEZpbGUsXG4gIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZVxuKSB7XG4gIG1lc3NhZ2VTZXJ2aWNlLmVycm9yKFxuICAgICdpZ28uY29udGV4dC5jb250ZXh0SW1wb3J0RXhwb3J0LmltcG9ydC5lbXB0eS50ZXh0JyxcbiAgICAnaWdvLmNvbnRleHQuY29udGV4dEltcG9ydEV4cG9ydC5pbXBvcnQuZW1wdHkudGl0bGUnLFxuICAgIHVuZGVmaW5lZCxcbiAgICB7IHZhbHVlOiBmaWxlLm5hbWUgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhZGRDb250ZXh0VG9Db250ZXh0TGlzdChcbiAgY29udGV4dDogRGV0YWlsZWRDb250ZXh0LFxuICBjb250ZXh0VGl0bGU6IHN0cmluZyxcbiAgY29udGV4dFNlcnZpY2U6IENvbnRleHRTZXJ2aWNlXG4pIHtcbiAgY29udGV4dC50aXRsZSA9IGNvbnRleHRUaXRsZTtcbiAgY29udGV4dC5pbXBvcnRlZCA9IHRydWU7XG4gIGNvbnRleHRTZXJ2aWNlLmNvbnRleHRzJC52YWx1ZS5vdXJzLnVuc2hpZnQoY29udGV4dCk7XG4gIGNvbnRleHRTZXJ2aWNlLmNvbnRleHRzJC5uZXh0KGNvbnRleHRTZXJ2aWNlLmNvbnRleHRzJC52YWx1ZSk7XG4gIGNvbnRleHRTZXJ2aWNlLmltcG9ydGVkQ29udGV4dC51bnNoaWZ0KGNvbnRleHQpO1xuICBjb250ZXh0U2VydmljZS5sb2FkQ29udGV4dChjb250ZXh0LnVyaSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaWxlRXh0ZW5zaW9uKGZpbGU6IEZpbGUpOiBzdHJpbmcge1xuICByZXR1cm4gZmlsZS5uYW1lLnNwbGl0KCcuJykucG9wKCkudG9Mb3dlckNhc2UoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbXB1dGVMYXllclRpdGxlRnJvbUZpbGUoZmlsZTogRmlsZSk6IHN0cmluZyB7XG4gIHJldHVybiBmaWxlLm5hbWUuc3Vic3RyKDAsIGZpbGUubmFtZS5sYXN0SW5kZXhPZignLicpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZEltcG9ydGVkRmVhdHVyZXNUb01hcChcbiAgb2xGZWF0dXJlczogT2xGZWF0dXJlPE9sR2VvbWV0cnk+W10sXG4gIG1hcDogSWdvTWFwLFxuICBsYXllclRpdGxlOiBzdHJpbmdcbik6IFZlY3RvckxheWVyIHtcbiAgY29uc3Qgc291cmNlT3B0aW9uczogRmVhdHVyZURhdGFTb3VyY2VPcHRpb25zICYgUXVlcnlhYmxlRGF0YVNvdXJjZU9wdGlvbnMgPSB7XG4gICAgdHlwZTogJ3ZlY3RvcicsXG4gICAgcXVlcnlhYmxlOiB0cnVlXG4gIH07XG4gIGNvbnN0IHNvdXJjZSA9IG5ldyBGZWF0dXJlRGF0YVNvdXJjZShzb3VyY2VPcHRpb25zKTtcbiAgc291cmNlLm9sLmFkZEZlYXR1cmVzKG9sRmVhdHVyZXMpO1xuICBsZXQgcmFuZG9tU3R5bGU7XG4gIGxldCBlZGl0YWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBpZiAoXG4gICAgb2xGZWF0dXJlc1swXS5nZXRLZXlzKCkuaW5jbHVkZXMoJ19zdHlsZScpIHx8XG4gICAgb2xGZWF0dXJlc1swXS5nZXRLZXlzKCkuaW5jbHVkZXMoJ19tYXBUaXRsZScpKSB7XG4gICAgcmFuZG9tU3R5bGUgPSBmZWF0dXJlUmFuZG9tU3R5bGVGdW5jdGlvbigpO1xuICB9IGVsc2Uge1xuICAgIHJhbmRvbVN0eWxlID0gZmVhdHVyZVJhbmRvbVN0eWxlKCk7XG4gICAgZWRpdGFibGUgPSB0cnVlO1xuICB9XG4gIGNvbnN0IGxheWVyID0gbmV3IFZlY3RvckxheWVyKHtcbiAgICB0aXRsZTogbGF5ZXJUaXRsZSxcbiAgICBpc0lnb0ludGVybmFsTGF5ZXI6IHRydWUsXG4gICAgc291cmNlLFxuICAgIGlnb1N0eWxlOiB7IGVkaXRhYmxlIH0sXG4gICAgc3R5bGU6IHJhbmRvbVN0eWxlXG4gIH0pO1xuICBtYXAuYWRkTGF5ZXIobGF5ZXIpO1xuXG4gIHJldHVybiBsYXllcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZEltcG9ydGVkRmVhdHVyZXNTdHlsZWRUb01hcChcbiAgb2xGZWF0dXJlczogT2xGZWF0dXJlPE9sR2VvbWV0cnk+W10sXG4gIG1hcDogSWdvTWFwLFxuICBsYXllclRpdGxlOiBzdHJpbmcsXG4gIHN0eWxlTGlzdFNlcnZpY2U6IFN0eWxlTGlzdFNlcnZpY2UsXG4gIHN0eWxlU2VydmljZTogU3R5bGVTZXJ2aWNlXG4pOiBWZWN0b3JMYXllciB7XG4gIGxldCBzdHlsZTtcbiAgbGV0IGRpc3RhbmNlOiBudW1iZXI7XG5cbiAgaWYgKFxuICAgIHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KGxheWVyVGl0bGUudG9TdHJpbmcoKSArICcuc3R5bGVCeUF0dHJpYnV0ZScpXG4gICkge1xuICAgIGNvbnN0IHN0eWxlQnlBdHRyaWJ1dGU6IFN0eWxlQnlBdHRyaWJ1dGUgPSBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChcbiAgICAgIGxheWVyVGl0bGUudG9TdHJpbmcoKSArICcuc3R5bGVCeUF0dHJpYnV0ZSdcbiAgICApO1xuXG4gICAgc3R5bGUgPSAoZmVhdHVyZSwgcmVzb2x1dGlvbikgPT4ge1xuICAgICAgcmV0dXJuIHN0eWxlU2VydmljZS5jcmVhdGVTdHlsZUJ5QXR0cmlidXRlKGZlYXR1cmUsIHN0eWxlQnlBdHRyaWJ1dGUsIHJlc29sdXRpb24pO1xuICAgIH07XG4gIH0gZWxzZSBpZiAoXG4gICAgc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QobGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5jbHVzdGVyU3R5bGUnKVxuICApIHtcbiAgICBjb25zdCBjbHVzdGVyUGFyYW06IENsdXN0ZXJQYXJhbSA9IHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KFxuICAgICAgbGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5jbHVzdGVyUGFyYW0nXG4gICAgKTtcbiAgICBkaXN0YW5jZSA9IHN0eWxlTGlzdFNlcnZpY2UuZ2V0U3R5bGVMaXN0KFxuICAgICAgbGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5kaXN0YW5jZSdcbiAgICApO1xuXG4gICAgc3R5bGUgPSAoZmVhdHVyZSwgcmVzb2x1dGlvbikgPT4ge1xuICAgICAgY29uc3QgYmFzZVN0eWxlID0gc3R5bGVTZXJ2aWNlLmNyZWF0ZVN0eWxlKFxuICAgICAgICBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChsYXllclRpdGxlLnRvU3RyaW5nKCkgKyAnLmNsdXN0ZXJTdHlsZScpLCBmZWF0dXJlLCByZXNvbHV0aW9uXG4gICAgICApO1xuICAgICAgcmV0dXJuIHN0eWxlU2VydmljZS5jcmVhdGVDbHVzdGVyU3R5bGUoZmVhdHVyZSwgcmVzb2x1dGlvbiwgY2x1c3RlclBhcmFtLCBiYXNlU3R5bGUpO1xuICAgIH07XG4gIH0gZWxzZSBpZiAoc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QobGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5zdHlsZScpKSB7XG4gICAgc3R5bGUgPSAoZmVhdHVyZSwgcmVzb2x1dGlvbikgPT4gc3R5bGVTZXJ2aWNlLmNyZWF0ZVN0eWxlKFxuICAgICAgc3R5bGVMaXN0U2VydmljZS5nZXRTdHlsZUxpc3QobGF5ZXJUaXRsZS50b1N0cmluZygpICsgJy5zdHlsZScpLCBmZWF0dXJlLCByZXNvbHV0aW9uXG4gICAgKTtcbiAgfSBlbHNlIHtcbiAgICBzdHlsZSA9IChmZWF0dXJlLCByZXNvbHV0aW9uKSA9PiBzdHlsZVNlcnZpY2UuY3JlYXRlU3R5bGUoXG4gICAgICBzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdCgnZGVmYXVsdC5zdHlsZScpLCBmZWF0dXJlLCByZXNvbHV0aW9uXG4gICAgKTtcbiAgfVxuICBsZXQgc291cmNlO1xuXG4gIGlmIChzdHlsZUxpc3RTZXJ2aWNlLmdldFN0eWxlTGlzdChsYXllclRpdGxlLnRvU3RyaW5nKCkgKyAnLmNsdXN0ZXJTdHlsZScpKSB7XG4gICAgY29uc3Qgc291cmNlT3B0aW9uczogQ2x1c3RlckRhdGFTb3VyY2VPcHRpb25zICZcbiAgICAgIFF1ZXJ5YWJsZURhdGFTb3VyY2VPcHRpb25zID0ge1xuICAgICAgZGlzdGFuY2UsXG4gICAgICB0eXBlOiAnY2x1c3RlcicsXG4gICAgICBxdWVyeWFibGU6IHRydWVcbiAgICB9O1xuICAgIHNvdXJjZSA9IG5ldyBDbHVzdGVyRGF0YVNvdXJjZShzb3VyY2VPcHRpb25zKTtcbiAgICBzb3VyY2Uub2wuc291cmNlLmFkZEZlYXR1cmVzKG9sRmVhdHVyZXMpO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHNvdXJjZU9wdGlvbnM6IEZlYXR1cmVEYXRhU291cmNlT3B0aW9ucyAmXG4gICAgICBRdWVyeWFibGVEYXRhU291cmNlT3B0aW9ucyA9IHtcbiAgICAgIHR5cGU6ICd2ZWN0b3InLFxuICAgICAgcXVlcnlhYmxlOiB0cnVlXG4gICAgfTtcbiAgICBzb3VyY2UgPSBuZXcgRmVhdHVyZURhdGFTb3VyY2Uoc291cmNlT3B0aW9ucyk7XG4gICAgc291cmNlLm9sLmFkZEZlYXR1cmVzKG9sRmVhdHVyZXMpO1xuICB9XG5cbiAgY29uc3QgbGF5ZXIgPSBuZXcgVmVjdG9yTGF5ZXIoe1xuICAgIHRpdGxlOiBsYXllclRpdGxlLFxuICAgIGlzSWdvSW50ZXJuYWxMYXllcjogdHJ1ZSxcbiAgICBzb3VyY2UsXG4gICAgc3R5bGVcbiAgfSk7XG4gIG1hcC5hZGRMYXllcihsYXllcik7XG5cbiAgcmV0dXJuIGxheWVyO1xufVxuIl19
@@ -1,8 +1,8 @@
1
- export * from './context-export.errors';
2
- export * from './context-import.errors';
3
- export * from './context-export.service';
4
- export * from './context-import.service';
5
- export * from './context-export.interface';
6
- export * from './context-import.utils';
7
- export * from './context-export.utils';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1pbXBvcnQtZXhwb3J0L3NoYXJlZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0LWV4cG9ydC5lcnJvcnMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQtaW1wb3J0LmVycm9ycyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dC1leHBvcnQuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dC1pbXBvcnQuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dC1leHBvcnQuaW50ZXJmYWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0LWltcG9ydC51dGlscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dC1leHBvcnQudXRpbHMnO1xyXG4iXX0=
1
+ export * from './context-export.errors';
2
+ export * from './context-import.errors';
3
+ export * from './context-export.service';
4
+ export * from './context-import.service';
5
+ export * from './context-export.interface';
6
+ export * from './context-import.utils';
7
+ export * from './context-export.utils';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1pbXBvcnQtZXhwb3J0L3NoYXJlZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0LWV4cG9ydC5lcnJvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0LWltcG9ydC5lcnJvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0LWV4cG9ydC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dC1pbXBvcnQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQtZXhwb3J0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQtaW1wb3J0LnV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dC1leHBvcnQudXRpbHMnO1xuIl19