2
>
* Copyright (c) Microsoft Corporation. All rights reserved.
3
>
* Licensed under the MIT License. See License.txt in the project root for license information.
4
>
*--------------------------------------------------------------------------------------------*/
5
>
6
>
import { IEnvironmentVariableCollectionDescription, IEnvironmentVariableCollection, IEnvironmentVariableMutator, ISerializableEnvironmentDescriptionMap, ISerializableEnvironmentVariableCollection, ISerializableEnvironmentVariableCollections } from './environmentVariable.js';
7
>
8
>
// This file is shared between the renderer and extension host
9
>
10
>
export function serializeEnvironmentVariableCollection(collection: ReadonlyMap<string, IEnvironmentVariableMutator>): ISerializableEnvironmentVariableCollection {
11
return [...collection.entries()];
12
}
14
>
export function serializeEnvironmentDescriptionMap(descriptionMap: ReadonlyMap<string, IEnvironmentVariableCollectionDescription> | undefined): ISerializableEnvironmentDescriptionMap {
15
return descriptionMap ? [...descriptionMap.entries()] : [];
16
}
18
>
export function deserializeEnvironmentVariableCollection(
19
serializedCollection: ISerializableEnvironmentVariableCollection
20
): Map<string, IEnvironmentVariableMutator> {
21
return new Map<string, IEnvironmentVariableMutator>(serializedCollection);
22
}
24
>
export function deserializeEnvironmentDescriptionMap(
25
serializableEnvironmentDescription: ISerializableEnvironmentDescriptionMap | undefined
26
): Map<string, IEnvironmentVariableCollectionDescription> {
27
return new Map<string, IEnvironmentVariableCollectionDescription>(serializableEnvironmentDescription ?? []);
28
}
30
>
export function serializeEnvironmentVariableCollections(collections: ReadonlyMap<string, IEnvironmentVariableCollection>): ISerializableEnvironmentVariableCollections {
31
return Array.from(collections.entries()).map(e => {
32
return [e[0], serializeEnvironmentVariableCollection(e[1].map), serializeEnvironmentDescriptionMap(e[1].descriptionMap)];
33
});
34
}
36
>
export function deserializeEnvironmentVariableCollections(
37
serializedCollection: ISerializableEnvironmentVariableCollections
38
): Map<string, IEnvironmentVariableCollection> {