@igo2/context 1.15.5 → 1.15.6

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 (125) 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 +227 -227
  3. package/esm2020/lib/context-import-export/context-import-export.module.mjs +84 -84
  4. package/esm2020/lib/context-import-export/index.mjs +2 -2
  5. package/esm2020/lib/context-import-export/shared/context-export.errors.mjs +14 -14
  6. package/esm2020/lib/context-import-export/shared/context-export.interface.mjs +1 -1
  7. package/esm2020/lib/context-import-export/shared/context-export.service.mjs +37 -37
  8. package/esm2020/lib/context-import-export/shared/context-export.utils.mjs +14 -14
  9. package/esm2020/lib/context-import-export/shared/context-import.errors.mjs +32 -32
  10. package/esm2020/lib/context-import-export/shared/context-import.service.mjs +78 -78
  11. package/esm2020/lib/context-import-export/shared/context-import.utils.mjs +132 -132
  12. package/esm2020/lib/context-import-export/shared/index.mjs +7 -7
  13. package/esm2020/lib/context-manager/context-edit/context-edit-binding.directive.mjs +49 -49
  14. package/esm2020/lib/context-manager/context-edit/context-edit.component.mjs +45 -45
  15. package/esm2020/lib/context-manager/context-edit/index.mjs +2 -2
  16. package/esm2020/lib/context-manager/context-form/context-form.component.mjs +142 -142
  17. package/esm2020/lib/context-manager/context-form/index.mjs +1 -1
  18. package/esm2020/lib/context-manager/context-item/context-item.component.mjs +244 -244
  19. package/esm2020/lib/context-manager/context-item/index.mjs +1 -1
  20. package/esm2020/lib/context-manager/context-list/context-list-binding.directive.mjs +239 -239
  21. package/esm2020/lib/context-manager/context-list/context-list.component.mjs +591 -591
  22. package/esm2020/lib/context-manager/context-list/context-list.enum.mjs +6 -6
  23. package/esm2020/lib/context-manager/context-list/index.mjs +2 -2
  24. package/esm2020/lib/context-manager/context-manager.module.mjs +161 -161
  25. package/esm2020/lib/context-manager/context-permissions/context-permissions-binding.directive.mjs +98 -98
  26. package/esm2020/lib/context-manager/context-permissions/context-permissions.component.mjs +305 -305
  27. package/esm2020/lib/context-manager/context-permissions/index.mjs +2 -2
  28. package/esm2020/lib/context-manager/index.mjs +6 -6
  29. package/esm2020/lib/context-manager/shared/context.enum.mjs +12 -12
  30. package/esm2020/lib/context-manager/shared/context.interface.mjs +1 -1
  31. package/esm2020/lib/context-manager/shared/context.service.mjs +631 -631
  32. package/esm2020/lib/context-manager/shared/index.mjs +5 -5
  33. package/esm2020/lib/context-manager/shared/layer-context.directive.mjs +155 -155
  34. package/esm2020/lib/context-manager/shared/map-context.directive.mjs +69 -69
  35. package/esm2020/lib/context-map-button/bookmark-button/bookmark-button.component.mjs +65 -65
  36. package/esm2020/lib/context-map-button/bookmark-button/bookmark-dialog.component.mjs +49 -49
  37. package/esm2020/lib/context-map-button/bookmark-button/index.mjs +2 -2
  38. package/esm2020/lib/context-map-button/context-map-button.module.mjs +95 -95
  39. package/esm2020/lib/context-map-button/index.mjs +3 -3
  40. package/esm2020/lib/context-map-button/poi-button/index.mjs +3 -3
  41. package/esm2020/lib/context-map-button/poi-button/poi-button.component.mjs +160 -160
  42. package/esm2020/lib/context-map-button/poi-button/poi-dialog.component.mjs +49 -49
  43. package/esm2020/lib/context-map-button/poi-button/shared/index.mjs +2 -2
  44. package/esm2020/lib/context-map-button/poi-button/shared/poi.interface.mjs +1 -1
  45. package/esm2020/lib/context-map-button/poi-button/shared/poi.service.mjs +32 -32
  46. package/esm2020/lib/context-map-button/user-button/index.mjs +2 -2
  47. package/esm2020/lib/context-map-button/user-button/user-button.animation.mjs +16 -16
  48. package/esm2020/lib/context-map-button/user-button/user-button.component.mjs +103 -103
  49. package/esm2020/lib/context-map-button/user-button/user-dialog.component.mjs +65 -65
  50. package/esm2020/lib/context.module.mjs +44 -44
  51. package/esm2020/lib/share-map/index.mjs +4 -4
  52. package/esm2020/lib/share-map/share-map/share-map-api.component.mjs +169 -169
  53. package/esm2020/lib/share-map/share-map/share-map-url.component.mjs +242 -242
  54. package/esm2020/lib/share-map/share-map/share-map.component.mjs +56 -56
  55. package/esm2020/lib/share-map/share-map.module.mjs +66 -66
  56. package/esm2020/lib/share-map/shared/index.mjs +1 -1
  57. package/esm2020/lib/share-map/shared/share-map.service.mjs +209 -209
  58. package/esm2020/lib/sidenav/index.mjs +1 -1
  59. package/esm2020/lib/sidenav/sidenav.component.mjs +169 -169
  60. package/esm2020/lib/sidenav/sidenav.module.mjs +60 -60
  61. package/esm2020/public_api.mjs +14 -14
  62. package/fesm2015/igo2-context.mjs +4942 -4942
  63. package/fesm2020/igo2-context.mjs +4591 -4591
  64. package/index.d.ts +5 -5
  65. package/lib/context-import-export/context-import-export/context-import-export.component.d.ts +44 -44
  66. package/lib/context-import-export/context-import-export.module.d.ts +23 -23
  67. package/lib/context-import-export/index.d.ts +2 -2
  68. package/lib/context-import-export/shared/context-export.errors.d.ts +8 -8
  69. package/lib/context-import-export/shared/context-export.interface.d.ts +5 -5
  70. package/lib/context-import-export/shared/context-export.service.d.ts +10 -10
  71. package/lib/context-import-export/shared/context-export.utils.d.ts +4 -4
  72. package/lib/context-import-export/shared/context-import.errors.d.ts +17 -17
  73. package/lib/context-import-export/shared/context-import.service.d.ts +18 -18
  74. package/lib/context-import-export/shared/context-import.utils.d.ts +17 -17
  75. package/lib/context-import-export/shared/index.d.ts +7 -7
  76. package/lib/context-manager/context-edit/context-edit-binding.directive.d.ts +20 -20
  77. package/lib/context-manager/context-edit/context-edit.component.d.ts +14 -14
  78. package/lib/context-manager/context-edit/index.d.ts +2 -2
  79. package/lib/context-manager/context-form/context-form.component.d.ts +30 -30
  80. package/lib/context-manager/context-form/index.d.ts +1 -1
  81. package/lib/context-manager/context-item/context-item.component.d.ts +32 -32
  82. package/lib/context-manager/context-item/index.d.ts +1 -1
  83. package/lib/context-manager/context-list/context-list-binding.directive.d.ts +46 -46
  84. package/lib/context-manager/context-list/context-list.component.d.ts +93 -93
  85. package/lib/context-manager/context-list/context-list.enum.d.ts +5 -5
  86. package/lib/context-manager/context-list/index.d.ts +2 -2
  87. package/lib/context-manager/context-manager.module.d.ts +37 -37
  88. package/lib/context-manager/context-permissions/context-permissions-binding.directive.d.ts +23 -23
  89. package/lib/context-manager/context-permissions/context-permissions.component.d.ts +40 -40
  90. package/lib/context-manager/context-permissions/index.d.ts +2 -2
  91. package/lib/context-manager/index.d.ts +6 -6
  92. package/lib/context-manager/shared/context.enum.d.ts +10 -10
  93. package/lib/context-manager/shared/context.interface.d.ts +75 -75
  94. package/lib/context-manager/shared/context.service.d.ts +75 -75
  95. package/lib/context-manager/shared/index.d.ts +5 -5
  96. package/lib/context-manager/shared/layer-context.directive.d.ts +28 -28
  97. package/lib/context-manager/shared/map-context.directive.d.ts +19 -19
  98. package/lib/context-map-button/bookmark-button/bookmark-button.component.d.ts +20 -20
  99. package/lib/context-map-button/bookmark-button/bookmark-dialog.component.d.ts +9 -9
  100. package/lib/context-map-button/bookmark-button/index.d.ts +2 -2
  101. package/lib/context-map-button/context-map-button.module.d.ts +27 -27
  102. package/lib/context-map-button/index.d.ts +3 -3
  103. package/lib/context-map-button/poi-button/index.d.ts +3 -3
  104. package/lib/context-map-button/poi-button/poi-button.component.d.ts +34 -34
  105. package/lib/context-map-button/poi-button/poi-dialog.component.d.ts +9 -9
  106. package/lib/context-map-button/poi-button/shared/index.d.ts +2 -2
  107. package/lib/context-map-button/poi-button/shared/poi.interface.d.ts +7 -7
  108. package/lib/context-map-button/poi-button/shared/poi.service.d.ts +16 -16
  109. package/lib/context-map-button/user-button/index.d.ts +2 -2
  110. package/lib/context-map-button/user-button/user-button.animation.d.ts +2 -2
  111. package/lib/context-map-button/user-button/user-button.component.d.ts +25 -25
  112. package/lib/context-map-button/user-button/user-dialog.component.d.ts +15 -15
  113. package/lib/context.module.d.ts +16 -16
  114. package/lib/share-map/index.d.ts +4 -4
  115. package/lib/share-map/share-map/share-map-api.component.d.ts +27 -27
  116. package/lib/share-map/share-map/share-map-url.component.d.ts +26 -26
  117. package/lib/share-map/share-map/share-map.component.d.ts +11 -11
  118. package/lib/share-map/share-map.module.d.ts +21 -21
  119. package/lib/share-map/shared/index.d.ts +1 -1
  120. package/lib/share-map/shared/share-map.service.d.ts +17 -17
  121. package/lib/sidenav/index.d.ts +1 -1
  122. package/lib/sidenav/sidenav.component.d.ts +35 -35
  123. package/lib/sidenav/sidenav.module.d.ts +18 -18
  124. package/package.json +6 -6
  125. package/public_api.d.ts +11 -11
@@ -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
- }
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
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';
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
8
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1pbXBvcnQtZXhwb3J0L3NoYXJlZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0LWV4cG9ydC5lcnJvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0LWltcG9ydC5lcnJvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0LWV4cG9ydC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dC1pbXBvcnQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQtZXhwb3J0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQtaW1wb3J0LnV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vY29udGV4dC1leHBvcnQudXRpbHMnO1xuIl19
@@ -1,50 +1,50 @@
1
- import { Output, EventEmitter, Directive, Self, HostListener } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "./context-edit.component";
4
- import * as i2 from "../shared/context.service";
5
- import * as i3 from "@igo2/core";
6
- export class ContextEditBindingDirective {
7
- constructor(component, contextService, messageService) {
8
- this.contextService = contextService;
9
- this.messageService = messageService;
10
- this.submitSuccessed = new EventEmitter();
11
- this.component = component;
12
- }
13
- onEdit(context) {
14
- const id = this.component.context.id;
15
- this.contextService.update(id, context).subscribe(() => {
16
- this.messageService.success('igo.context.contextManager.dialog.saveMsg', 'igo.context.contextManager.dialog.saveTitle', undefined, {
17
- value: context.title || this.component.context.title
18
- });
19
- this.contextService.setEditedContext(undefined);
20
- this.submitSuccessed.emit(context);
21
- });
22
- }
23
- ngOnInit() {
24
- this.editedContext$$ = this.contextService.editedContext$.subscribe(context => this.handleEditedContextChange(context));
25
- }
26
- ngOnDestroy() {
27
- this.editedContext$$.unsubscribe();
28
- }
29
- handleEditedContextChange(context) {
30
- this.component.context = context;
31
- }
32
- }
33
- ContextEditBindingDirective.ɵfac = function ContextEditBindingDirective_Factory(t) { return new (t || ContextEditBindingDirective)(i0.ɵɵdirectiveInject(i1.ContextEditComponent, 2), i0.ɵɵdirectiveInject(i2.ContextService), i0.ɵɵdirectiveInject(i3.MessageService)); };
34
- ContextEditBindingDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ContextEditBindingDirective, selectors: [["", "igoContextEditBinding", ""]], hostBindings: function ContextEditBindingDirective_HostBindings(rf, ctx) { if (rf & 1) {
35
- i0.ɵɵlistener("submitForm", function ContextEditBindingDirective_submitForm_HostBindingHandler($event) { return ctx.onEdit($event); });
36
- } }, outputs: { submitSuccessed: "submitSuccessed" } });
37
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextEditBindingDirective, [{
38
- type: Directive,
39
- args: [{
40
- selector: '[igoContextEditBinding]'
41
- }]
42
- }], function () { return [{ type: i1.ContextEditComponent, decorators: [{
43
- type: Self
44
- }] }, { type: i2.ContextService }, { type: i3.MessageService }]; }, { submitSuccessed: [{
45
- type: Output
46
- }], onEdit: [{
47
- type: HostListener,
48
- args: ['submitForm', ['$event']]
49
- }] }); })();
1
+ import { Output, EventEmitter, Directive, Self, HostListener } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./context-edit.component";
4
+ import * as i2 from "../shared/context.service";
5
+ import * as i3 from "@igo2/core";
6
+ export class ContextEditBindingDirective {
7
+ constructor(component, contextService, messageService) {
8
+ this.contextService = contextService;
9
+ this.messageService = messageService;
10
+ this.submitSuccessed = new EventEmitter();
11
+ this.component = component;
12
+ }
13
+ onEdit(context) {
14
+ const id = this.component.context.id;
15
+ this.contextService.update(id, context).subscribe(() => {
16
+ this.messageService.success('igo.context.contextManager.dialog.saveMsg', 'igo.context.contextManager.dialog.saveTitle', undefined, {
17
+ value: context.title || this.component.context.title
18
+ });
19
+ this.contextService.setEditedContext(undefined);
20
+ this.submitSuccessed.emit(context);
21
+ });
22
+ }
23
+ ngOnInit() {
24
+ this.editedContext$$ = this.contextService.editedContext$.subscribe(context => this.handleEditedContextChange(context));
25
+ }
26
+ ngOnDestroy() {
27
+ this.editedContext$$.unsubscribe();
28
+ }
29
+ handleEditedContextChange(context) {
30
+ this.component.context = context;
31
+ }
32
+ }
33
+ ContextEditBindingDirective.ɵfac = function ContextEditBindingDirective_Factory(t) { return new (t || ContextEditBindingDirective)(i0.ɵɵdirectiveInject(i1.ContextEditComponent, 2), i0.ɵɵdirectiveInject(i2.ContextService), i0.ɵɵdirectiveInject(i3.MessageService)); };
34
+ ContextEditBindingDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ContextEditBindingDirective, selectors: [["", "igoContextEditBinding", ""]], hostBindings: function ContextEditBindingDirective_HostBindings(rf, ctx) { if (rf & 1) {
35
+ i0.ɵɵlistener("submitForm", function ContextEditBindingDirective_submitForm_HostBindingHandler($event) { return ctx.onEdit($event); });
36
+ } }, outputs: { submitSuccessed: "submitSuccessed" } });
37
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextEditBindingDirective, [{
38
+ type: Directive,
39
+ args: [{
40
+ selector: '[igoContextEditBinding]'
41
+ }]
42
+ }], function () { return [{ type: i1.ContextEditComponent, decorators: [{
43
+ type: Self
44
+ }] }, { type: i2.ContextService }, { type: i3.MessageService }]; }, { submitSuccessed: [{
45
+ type: Output
46
+ }], onEdit: [{
47
+ type: HostListener,
48
+ args: ['submitForm', ['$event']]
49
+ }] }); })();
50
50
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1lZGl0LWJpbmRpbmcuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29udGV4dC9zcmMvbGliL2NvbnRleHQtbWFuYWdlci9jb250ZXh0LWVkaXQvY29udGV4dC1lZGl0LWJpbmRpbmcuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLFNBQVMsRUFDVCxJQUFJLEVBR0osWUFBWSxFQUNiLE1BQU0sZUFBZSxDQUFDOzs7OztBQVl2QixNQUFNLE9BQU8sMkJBQTJCO0lBc0J0QyxZQUNVLFNBQStCLEVBQy9CLGNBQThCLEVBQzlCLGNBQThCO1FBRDlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFyQjlCLG9CQUFlLEdBQTBCLElBQUksWUFBWSxFQUFFLENBQUM7UUF1QnBFLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQzdCLENBQUM7SUFyQkQsTUFBTSxDQUFDLE9BQWdCO1FBQ3JCLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNyQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNyRCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FDekIsMkNBQTJDLEVBQzNDLDZDQUE2QyxFQUM3QyxTQUFTLEVBQ1g7Z0JBQ0UsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSzthQUNyRCxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2hELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQVVELFFBQVE7UUFDTixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FDakUsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQ25ELENBQUM7SUFDSixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVPLHlCQUF5QixDQUFDLE9BQXdCO1FBQ3hELElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUNuQyxDQUFDOztzR0ExQ1UsMkJBQTJCOzhFQUEzQiwyQkFBMkI7d0hBQTNCLGtCQUFjOzt1RkFBZCwyQkFBMkI7Y0FIdkMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSx5QkFBeUI7YUFDcEM7O3NCQXdCSSxJQUFJO2tGQW5CRyxlQUFlO2tCQUF4QixNQUFNO1lBR1AsTUFBTTtrQkFETCxZQUFZO21CQUFDLFlBQVksRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBEaXJlY3RpdmUsXG4gIFNlbGYsXG4gIE9uSW5pdCxcbiAgT25EZXN0cm95LFxuICBIb3N0TGlzdGVuZXJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcblxuaW1wb3J0IHsgQ29udGV4dCwgRGV0YWlsZWRDb250ZXh0IH0gZnJvbSAnLi4vc2hhcmVkL2NvbnRleHQuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL2NvbnRleHQuc2VydmljZSc7XG5pbXBvcnQgeyBDb250ZXh0RWRpdENvbXBvbmVudCB9IGZyb20gJy4vY29udGV4dC1lZGl0LmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tpZ29Db250ZXh0RWRpdEJpbmRpbmddJ1xufSlcbmV4cG9ydCBjbGFzcyBDb250ZXh0RWRpdEJpbmRpbmdEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgY29tcG9uZW50OiBDb250ZXh0RWRpdENvbXBvbmVudDtcbiAgcHJpdmF0ZSBlZGl0ZWRDb250ZXh0JCQ6IFN1YnNjcmlwdGlvbjtcblxuICBAT3V0cHV0KCkgc3VibWl0U3VjY2Vzc2VkOiBFdmVudEVtaXR0ZXI8Q29udGV4dD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQEhvc3RMaXN0ZW5lcignc3VibWl0Rm9ybScsIFsnJGV2ZW50J10pXG4gIG9uRWRpdChjb250ZXh0OiBDb250ZXh0KSB7XG4gICAgY29uc3QgaWQgPSB0aGlzLmNvbXBvbmVudC5jb250ZXh0LmlkO1xuICAgIHRoaXMuY29udGV4dFNlcnZpY2UudXBkYXRlKGlkLCBjb250ZXh0KS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5zdWNjZXNzKFxuICAgICAgICAnaWdvLmNvbnRleHQuY29udGV4dE1hbmFnZXIuZGlhbG9nLnNhdmVNc2cnLFxuICAgICAgICAnaWdvLmNvbnRleHQuY29udGV4dE1hbmFnZXIuZGlhbG9nLnNhdmVUaXRsZScsXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgIHtcbiAgICAgICAgdmFsdWU6IGNvbnRleHQudGl0bGUgfHwgdGhpcy5jb21wb25lbnQuY29udGV4dC50aXRsZVxuICAgICAgfSk7XG4gICAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLnNldEVkaXRlZENvbnRleHQodW5kZWZpbmVkKTtcbiAgICAgIHRoaXMuc3VibWl0U3VjY2Vzc2VkLmVtaXQoY29udGV4dCk7XG4gICAgfSk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBAU2VsZigpIGNvbXBvbmVudDogQ29udGV4dEVkaXRDb21wb25lbnQsXG4gICAgcHJpdmF0ZSBjb250ZXh0U2VydmljZTogQ29udGV4dFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5jb21wb25lbnQgPSBjb21wb25lbnQ7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmVkaXRlZENvbnRleHQkJCA9IHRoaXMuY29udGV4dFNlcnZpY2UuZWRpdGVkQ29udGV4dCQuc3Vic2NyaWJlKFxuICAgICAgY29udGV4dCA9PiB0aGlzLmhhbmRsZUVkaXRlZENvbnRleHRDaGFuZ2UoY29udGV4dClcbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5lZGl0ZWRDb250ZXh0JCQudW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlRWRpdGVkQ29udGV4dENoYW5nZShjb250ZXh0OiBEZXRhaWxlZENvbnRleHQpIHtcbiAgICB0aGlzLmNvbXBvbmVudC5jb250ZXh0ID0gY29udGV4dDtcbiAgfVxufVxuIl19
@@ -1,46 +1,46 @@
1
- import { Component, Input, Output, EventEmitter } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- import * as i2 from "../context-form/context-form.component";
5
- import * as i3 from "@ngx-translate/core";
6
- function ContextEditComponent_igo_context_form_0_Template(rf, ctx) { if (rf & 1) {
7
- const _r2 = i0.ɵɵgetCurrentView();
8
- i0.ɵɵelementStart(0, "igo-context-form", 1);
9
- i0.ɵɵlistener("submitForm", function ContextEditComponent_igo_context_form_0_Template_igo_context_form_submitForm_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.submitForm.emit($event)); });
10
- i0.ɵɵpipe(1, "translate");
11
- i0.ɵɵelementEnd();
12
- } if (rf & 2) {
13
- const ctx_r0 = i0.ɵɵnextContext();
14
- i0.ɵɵproperty("btnSubmitText", i0.ɵɵpipeBind1(1, 2, "igo.context.contextManager.save"))("context", ctx_r0.context);
15
- } }
16
- export class ContextEditComponent {
17
- constructor(cd) {
18
- this.cd = cd;
19
- this.submitForm = new EventEmitter();
20
- }
21
- get context() {
22
- return this._context;
23
- }
24
- set context(value) {
25
- this._context = value;
26
- this.refresh();
27
- }
28
- refresh() {
29
- this.cd.detectChanges();
30
- }
31
- }
32
- ContextEditComponent.ɵfac = function ContextEditComponent_Factory(t) { return new (t || ContextEditComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
33
- ContextEditComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ContextEditComponent, selectors: [["igo-context-edit"]], inputs: { context: "context" }, outputs: { submitForm: "submitForm" }, decls: 1, vars: 1, consts: [[3, "btnSubmitText", "context", "submitForm", 4, "ngIf"], [3, "btnSubmitText", "context", "submitForm"]], template: function ContextEditComponent_Template(rf, ctx) { if (rf & 1) {
34
- i0.ɵɵtemplate(0, ContextEditComponent_igo_context_form_0_Template, 2, 4, "igo-context-form", 0);
35
- } if (rf & 2) {
36
- i0.ɵɵproperty("ngIf", ctx.context);
37
- } }, dependencies: [i1.NgIf, i2.ContextFormComponent, i3.TranslatePipe], encapsulation: 2 });
38
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextEditComponent, [{
39
- type: Component,
40
- args: [{ selector: 'igo-context-edit', template: "<igo-context-form *ngIf=\"context\"\n [btnSubmitText]=\"'igo.context.contextManager.save' | translate\"\n [context]=\"context\"\n (submitForm)=\"submitForm.emit($event)\">\n</igo-context-form>\n" }]
41
- }], function () { return [{ type: i0.ChangeDetectorRef }]; }, { context: [{
42
- type: Input
43
- }], submitForm: [{
44
- type: Output
45
- }] }); })();
1
+ import { Component, Input, Output, EventEmitter } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "../context-form/context-form.component";
5
+ import * as i3 from "@ngx-translate/core";
6
+ function ContextEditComponent_igo_context_form_0_Template(rf, ctx) { if (rf & 1) {
7
+ const _r2 = i0.ɵɵgetCurrentView();
8
+ i0.ɵɵelementStart(0, "igo-context-form", 1);
9
+ i0.ɵɵlistener("submitForm", function ContextEditComponent_igo_context_form_0_Template_igo_context_form_submitForm_0_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.submitForm.emit($event)); });
10
+ i0.ɵɵpipe(1, "translate");
11
+ i0.ɵɵelementEnd();
12
+ } if (rf & 2) {
13
+ const ctx_r0 = i0.ɵɵnextContext();
14
+ i0.ɵɵproperty("btnSubmitText", i0.ɵɵpipeBind1(1, 2, "igo.context.contextManager.save"))("context", ctx_r0.context);
15
+ } }
16
+ export class ContextEditComponent {
17
+ constructor(cd) {
18
+ this.cd = cd;
19
+ this.submitForm = new EventEmitter();
20
+ }
21
+ get context() {
22
+ return this._context;
23
+ }
24
+ set context(value) {
25
+ this._context = value;
26
+ this.refresh();
27
+ }
28
+ refresh() {
29
+ this.cd.detectChanges();
30
+ }
31
+ }
32
+ ContextEditComponent.ɵfac = function ContextEditComponent_Factory(t) { return new (t || ContextEditComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
33
+ ContextEditComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ContextEditComponent, selectors: [["igo-context-edit"]], inputs: { context: "context" }, outputs: { submitForm: "submitForm" }, decls: 1, vars: 1, consts: [[3, "btnSubmitText", "context", "submitForm", 4, "ngIf"], [3, "btnSubmitText", "context", "submitForm"]], template: function ContextEditComponent_Template(rf, ctx) { if (rf & 1) {
34
+ i0.ɵɵtemplate(0, ContextEditComponent_igo_context_form_0_Template, 2, 4, "igo-context-form", 0);
35
+ } if (rf & 2) {
36
+ i0.ɵɵproperty("ngIf", ctx.context);
37
+ } }, dependencies: [i1.NgIf, i2.ContextFormComponent, i3.TranslatePipe], encapsulation: 2 });
38
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextEditComponent, [{
39
+ type: Component,
40
+ args: [{ selector: 'igo-context-edit', template: "<igo-context-form *ngIf=\"context\"\n [btnSubmitText]=\"'igo.context.contextManager.save' | translate\"\n [context]=\"context\"\n (submitForm)=\"submitForm.emit($event)\">\n</igo-context-form>\n" }]
41
+ }], function () { return [{ type: i0.ChangeDetectorRef }]; }, { context: [{
42
+ type: Input
43
+ }], submitForm: [{
44
+ type: Output
45
+ }] }); })();
46
46
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1lZGl0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9jb250ZXh0LW1hbmFnZXIvY29udGV4dC1lZGl0L2NvbnRleHQtZWRpdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1tYW5hZ2VyL2NvbnRleHQtZWRpdC9jb250ZXh0LWVkaXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBcUIsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7SUNBMUYsMkNBRzBDO0lBQXZDLHdNQUFjLGVBQUEsOEJBQXVCLENBQUEsSUFBQzs7SUFDekMsaUJBQW1COzs7SUFIaEIsdUZBQStELDJCQUFBOztBRE9sRSxNQUFNLE9BQU8sb0JBQW9CO0lBYS9CLFlBQW9CLEVBQXFCO1FBQXJCLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBRi9CLGVBQVUsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUVyQixDQUFDO0lBWjdDLElBQ0ksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBQ0QsSUFBSSxPQUFPLENBQUMsS0FBYztRQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN0QixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQU9ELE9BQU87UUFDTCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzFCLENBQUM7O3dGQWpCVSxvQkFBb0I7dUVBQXBCLG9CQUFvQjtRQ1JqQywrRkFJbUI7O1FBSkEsa0NBQWE7O3VGRFFuQixvQkFBb0I7Y0FKaEMsU0FBUzsyQkFDRSxrQkFBa0I7b0VBS3hCLE9BQU87a0JBRFYsS0FBSztZQVVJLFVBQVU7a0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29udGV4dCB9IGZyb20gJy4uL3NoYXJlZC9jb250ZXh0LmludGVyZmFjZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lnby1jb250ZXh0LWVkaXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29udGV4dC1lZGl0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBDb250ZXh0RWRpdENvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIGdldCBjb250ZXh0KCk6IENvbnRleHQge1xuICAgIHJldHVybiB0aGlzLl9jb250ZXh0O1xuICB9XG4gIHNldCBjb250ZXh0KHZhbHVlOiBDb250ZXh0KSB7XG4gICAgdGhpcy5fY29udGV4dCA9IHZhbHVlO1xuICAgIHRoaXMucmVmcmVzaCgpO1xuICB9XG4gIHByaXZhdGUgX2NvbnRleHQ6IENvbnRleHQ7XG5cbiAgQE91dHB1dCgpIHN1Ym1pdEZvcm06IEV2ZW50RW1pdHRlcjxDb250ZXh0PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICByZWZyZXNoKCkge1xuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG59XG4iLCI8aWdvLWNvbnRleHQtZm9ybSAqbmdJZj1cImNvbnRleHRcIlxuICAgW2J0blN1Ym1pdFRleHRdPVwiJ2lnby5jb250ZXh0LmNvbnRleHRNYW5hZ2VyLnNhdmUnIHwgdHJhbnNsYXRlXCJcbiAgIFtjb250ZXh0XT1cImNvbnRleHRcIlxuICAgKHN1Ym1pdEZvcm0pPVwic3VibWl0Rm9ybS5lbWl0KCRldmVudClcIj5cbjwvaWdvLWNvbnRleHQtZm9ybT5cbiJdfQ==
@@ -1,3 +1,3 @@
1
- export * from './context-edit.component';
2
- export * from './context-edit-binding.directive';
1
+ export * from './context-edit.component';
2
+ export * from './context-edit-binding.directive';
3
3
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1tYW5hZ2VyL2NvbnRleHQtZWRpdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsa0NBQWtDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbnRleHQtZWRpdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0LWVkaXQtYmluZGluZy5kaXJlY3RpdmUnO1xuIl19