@wictorwilen/cocogen 1.1.0-preview.6 → 1.1.0-preview.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/data/graph-external-connectors-principal.json +1 -1
- package/dist/init/dotnet/people-entity.js +4 -4
- package/dist/init/dotnet/people-entity.js.map +1 -1
- package/dist/init/templates/dotnet/Core/ConnectorCore.cs.ejs +77 -8
- package/dist/init/templates/dotnet/Core/PeoplePayload.cs.ejs +118 -1
- package/dist/init/templates/dotnet/Generated/PropertyTransformBase.cs.ejs +2 -1
- package/dist/init/templates/dotnet/PropertyTransform.cs.ejs +31 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [1.1.0-preview.8] - 2026-04-08
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
- **For .NET people connectors with custom transforms:** The generated `PropertyTransformBase.cs` no longer embeds normalization logic in each serialization expression. Instead, hand-off to `PeoplePayload.SerializePeopleEntity(object)` which handles serialization + normalization (strips Kiota metadata, removes nulls, converts to camelCase) in one call. If you have custom `PropertyTransform.cs` overrides, they will automatically benefit from normalization; no code changes required. The method signature remains `protected virtual string? Transform<PropName>(object row)`.
|
|
14
|
+
|
|
15
|
+
## [1.1.0-preview.7] - 2026-04-08
|
|
16
|
+
|
|
10
17
|
## [1.1.0-preview.6] - 2026-04-07
|
|
11
18
|
|
|
12
19
|
## [1.1.0-preview.5] - 2026-04-07
|
|
@@ -363,6 +370,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
363
370
|
- Collection values no longer split on commas; use semicolons instead.
|
|
364
371
|
|
|
365
372
|
[Unreleased]: https://github.com/wictorwilen/cocogen/compare/v1.0.16...HEAD
|
|
373
|
+
[1.1.0-preview.8]: https://github.com/wictorwilen/cocogen/compare/main...v1.1.0-preview.8
|
|
374
|
+
[1.1.0-preview.7]: https://github.com/wictorwilen/cocogen/compare/main...v1.1.0-preview.7
|
|
366
375
|
[1.1.0-preview.6]: https://github.com/wictorwilen/cocogen/compare/main...v1.1.0-preview.6
|
|
367
376
|
[1.1.0-preview.5]: https://github.com/wictorwilen/cocogen/compare/main...v1.1.0-preview.5
|
|
368
377
|
[1.1.0-preview.4]: https://github.com/wictorwilen/cocogen/compare/main...v1.1.0-preview.4
|
|
@@ -332,7 +332,7 @@ export function buildCsPersonEntityExpression(fields, valueExpressionBuilder = (
|
|
|
332
332
|
const sourceLiteral = buildCsSourceLiteral(field.source);
|
|
333
333
|
return valueExpressionBuilder(sourceLiteral);
|
|
334
334
|
}, typeInfo, typeMap, 2);
|
|
335
|
-
return `
|
|
335
|
+
return `PeoplePayload.SerializePeopleEntity(\n${indentUnit.repeat(2)}${objectExpression}\n${indentUnit.repeat(2)})`;
|
|
336
336
|
}
|
|
337
337
|
/** Build a C# JSON string list expression for person-entity collections. */
|
|
338
338
|
export function buildCsPersonEntityCollectionExpression(fields, collectionExpressionBuilder = (sourceLiteral) => `RowParser.ParseStringCollection(row, ${sourceLiteral})`, typeInfo, typeMap, inputFormat) {
|
|
@@ -377,7 +377,7 @@ export function buildCsPersonEntityCollectionExpression(fields, collectionExpres
|
|
|
377
377
|
});
|
|
378
378
|
const typedObjectExpression = objectExpression;
|
|
379
379
|
const formattedObjectExpression = formatCsEmbeddedExpression(typedObjectExpression, " ");
|
|
380
|
-
return `new Func<List<string>>(() =>\n {\n var results = new List<string>();\n foreach (var entry in RowParser.ReadArrayEntries(row, ${JSON.stringify(common.root)}))\n {\n results.Add(
|
|
380
|
+
return `new Func<List<string>>(() =>\n {\n var results = new List<string>();\n foreach (var entry in RowParser.ReadArrayEntries(row, ${JSON.stringify(common.root)}))\n {\n results.Add(PeoplePayload.SerializePeopleEntity(\n${formattedObjectExpression}\n ));\n }\n return results;\n }).Invoke()`;
|
|
381
381
|
}
|
|
382
382
|
}
|
|
383
383
|
if (fields.length === 1) {
|
|
@@ -387,7 +387,7 @@ export function buildCsPersonEntityCollectionExpression(fields, collectionExpres
|
|
|
387
387
|
const typedObjectExpression = objectExpression;
|
|
388
388
|
const formattedObjectExpression = formatCsEmbeddedExpression(typedObjectExpression, `${indentUnit.repeat(4)}`);
|
|
389
389
|
return `${applySourceCollectionExpression(collectionExpressionBuilder(sourceLiteral), field.source)}
|
|
390
|
-
.Select(value =>
|
|
390
|
+
.Select(value => PeoplePayload.SerializePeopleEntity(\n${formattedObjectExpression}\n ))
|
|
391
391
|
.ToList()`;
|
|
392
392
|
}
|
|
393
393
|
const tree = buildObjectTree(fields);
|
|
@@ -406,6 +406,6 @@ export function buildCsPersonEntityCollectionExpression(fields, collectionExpres
|
|
|
406
406
|
const usesCollectionHelper = typedObjectExpression.includes("GetCollectionValue(");
|
|
407
407
|
const indexedValueHelpers = buildCsIndexedValueHelpers(" ", " ", usesCollectionHelper);
|
|
408
408
|
const formattedObjectExpression = formatCsEmbeddedExpression(typedObjectExpression, " ");
|
|
409
|
-
return `new Func<List<string>>(() =>\n {\n${fieldLines.join("\n")}\n${indexedValueHelpers}\n${maxLenLine}\n var results = new List<string>();\n for (var index = 0; index < maxLen; index++)\n {\n results.Add(
|
|
409
|
+
return `new Func<List<string>>(() =>\n {\n${fieldLines.join("\n")}\n${indexedValueHelpers}\n${maxLenLine}\n var results = new List<string>();\n for (var index = 0; index < maxLen; index++)\n {\n results.Add(PeoplePayload.SerializePeopleEntity(\n${formattedObjectExpression}\n ));\n }\n return results;\n }).Invoke()`;
|
|
410
410
|
}
|
|
411
411
|
//# sourceMappingURL=people-entity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"people-entity.js","sourceRoot":"","sources":["../../../src/init/dotnet/people-entity.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"people-entity.js","sourceRoot":"","sources":["../../../src/init/dotnet/people-entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ using System.CommandLine;
|
|
|
14
14
|
using System.Net.Http.Headers;
|
|
15
15
|
using System.Text;
|
|
16
16
|
using System.Text.Json;
|
|
17
|
+
using System.Text.Json.Nodes;
|
|
17
18
|
using System.Text.Json.Serialization;
|
|
18
19
|
using System.Threading;
|
|
19
20
|
|
|
@@ -68,6 +69,80 @@ public sealed class ConnectorCore<TItem>
|
|
|
68
69
|
_profileSourcePriority = profileSourcePriority;
|
|
69
70
|
}
|
|
70
71
|
|
|
72
|
+
private static readonly HashSet<string> VerboseMetadataKeysToStrip = new(StringComparer.OrdinalIgnoreCase)
|
|
73
|
+
{
|
|
74
|
+
"AdditionalData",
|
|
75
|
+
"BackingStore",
|
|
76
|
+
"OdataType",
|
|
77
|
+
"@odata.type",
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
private static string SerializeVerbosePayload(object payload)
|
|
81
|
+
{
|
|
82
|
+
var json = JsonSerializer.Serialize(payload, VerbosePayloadSerializerOptions);
|
|
83
|
+
var node = JsonNode.Parse(json);
|
|
84
|
+
var normalized = NormalizeVerboseNode(node);
|
|
85
|
+
return normalized?.ToJsonString(VerbosePayloadSerializerOptions) ?? "{}";
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
private static JsonNode? NormalizeVerboseNode(JsonNode? node)
|
|
89
|
+
{
|
|
90
|
+
if (node is null)
|
|
91
|
+
return null;
|
|
92
|
+
|
|
93
|
+
if (node is JsonObject jsonObject)
|
|
94
|
+
{
|
|
95
|
+
var result = new JsonObject();
|
|
96
|
+
foreach (var (key, value) in jsonObject)
|
|
97
|
+
{
|
|
98
|
+
if (string.Equals(key, "AdditionalData", StringComparison.OrdinalIgnoreCase) && value is JsonObject additionalData)
|
|
99
|
+
{
|
|
100
|
+
foreach (var (extraKey, extraValue) in additionalData)
|
|
101
|
+
{
|
|
102
|
+
if (extraKey is null || VerboseMetadataKeysToStrip.Contains(extraKey))
|
|
103
|
+
continue;
|
|
104
|
+
|
|
105
|
+
var normalizedExtraValue = NormalizeVerboseNode(extraValue);
|
|
106
|
+
if (normalizedExtraValue is null)
|
|
107
|
+
continue;
|
|
108
|
+
|
|
109
|
+
result[extraKey] = normalizedExtraValue;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
continue;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
if (key is null || VerboseMetadataKeysToStrip.Contains(key))
|
|
116
|
+
continue;
|
|
117
|
+
|
|
118
|
+
var normalizedValue = NormalizeVerboseNode(value);
|
|
119
|
+
if (normalizedValue is null)
|
|
120
|
+
continue;
|
|
121
|
+
|
|
122
|
+
result[key] = normalizedValue;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
return result;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
if (node is JsonArray jsonArray)
|
|
129
|
+
{
|
|
130
|
+
var result = new JsonArray();
|
|
131
|
+
foreach (var item in jsonArray)
|
|
132
|
+
{
|
|
133
|
+
var normalizedItem = NormalizeVerboseNode(item);
|
|
134
|
+
if (normalizedItem is null)
|
|
135
|
+
continue;
|
|
136
|
+
|
|
137
|
+
result.Add(normalizedItem);
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
return result;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
return node.DeepClone();
|
|
144
|
+
}
|
|
145
|
+
|
|
71
146
|
/// <summary>
|
|
72
147
|
/// Provision the connection and schema.
|
|
73
148
|
/// </summary>
|
|
@@ -155,10 +230,7 @@ public sealed class ConnectorCore<TItem>
|
|
|
155
230
|
var baseUrl = SchemaConstants.ItemIngestionGraphBaseUrl;
|
|
156
231
|
var url = $"{baseUrl}/external/connections/{_connectionId}/items/{Uri.EscapeDataString(itemId)}";
|
|
157
232
|
Console.WriteLine("verbose: PUT " + url);
|
|
158
|
-
var payloadJson =
|
|
159
|
-
externalItem,
|
|
160
|
-
VerbosePayloadSerializerOptions
|
|
161
|
-
);
|
|
233
|
+
var payloadJson = SerializeVerbosePayload(externalItem);
|
|
162
234
|
Console.WriteLine("verbose: payload " + payloadJson);
|
|
163
235
|
}
|
|
164
236
|
|
|
@@ -274,10 +346,7 @@ public sealed class ConnectorCore<TItem>
|
|
|
274
346
|
}
|
|
275
347
|
else if (verbose)
|
|
276
348
|
{
|
|
277
|
-
var payloadJson =
|
|
278
|
-
_itemPayload.ToExternalItem(item),
|
|
279
|
-
VerbosePayloadSerializerOptions
|
|
280
|
-
);
|
|
349
|
+
var payloadJson = SerializeVerbosePayload(_itemPayload.ToExternalItem(item));
|
|
281
350
|
Console.WriteLine($"verbose: DRY RUN item {index} (id={itemId}) payload " + payloadJson);
|
|
282
351
|
}
|
|
283
352
|
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
using System;
|
|
2
2
|
using System.Collections.Generic;
|
|
3
|
+
using System.Text.Json;
|
|
4
|
+
using System.Text.Json.Nodes;
|
|
5
|
+
using System.Text.Json.Serialization;
|
|
3
6
|
<% const hasLocalGraphTypes = peopleProfileTypes.some((type) => !type.sourcePackage); -%>
|
|
4
7
|
<% if (hasLocalGraphTypes) { -%>
|
|
5
|
-
using System.Text.Json.Serialization;
|
|
6
8
|
using Date = System.DateOnly;
|
|
7
9
|
<% } -%>
|
|
8
10
|
|
|
@@ -12,8 +14,38 @@ public sealed record PeopleLabelSerializationOptions(
|
|
|
12
14
|
int? CollectionLimit
|
|
13
15
|
);
|
|
14
16
|
|
|
17
|
+
/// <summary>
|
|
18
|
+
/// Handles serialization and normalization of people-entity profile data.
|
|
19
|
+
///
|
|
20
|
+
/// People-entity objects (e.g., UserAccountInformation, SkillProficiency from Microsoft Graph)
|
|
21
|
+
/// contain internal Kiota SDK metadata (AdditionalData, BackingStore, etc.) when serialized.
|
|
22
|
+
/// This class provides utilities to produce clean JSON output suitable for external connectors:
|
|
23
|
+
/// - Removes null values
|
|
24
|
+
/// - Strips Kiota internals (AdditionalData, BackingStore, OdataType, @odata.type)
|
|
25
|
+
/// - Converts PascalCase property names to camelCase
|
|
26
|
+
/// </summary>
|
|
15
27
|
public static class PeoplePayload
|
|
16
28
|
{
|
|
29
|
+
/// <summary>
|
|
30
|
+
/// Kiota SDK metadata keys that should be stripped from serialized JSON.
|
|
31
|
+
/// </summary>
|
|
32
|
+
private static readonly HashSet<string> KiotaMetadataKeys = new(StringComparer.OrdinalIgnoreCase)
|
|
33
|
+
{
|
|
34
|
+
"AdditionalData",
|
|
35
|
+
"BackingStore",
|
|
36
|
+
"OdataType",
|
|
37
|
+
"@odata.type",
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
/// <summary>
|
|
41
|
+
/// Default JSON serialization options for people-entity objects.
|
|
42
|
+
/// Ignores null values to reduce payload size and noise.
|
|
43
|
+
/// </summary>
|
|
44
|
+
private static readonly JsonSerializerOptions PeopleEntitySerializerOptions = new()
|
|
45
|
+
{
|
|
46
|
+
DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull,
|
|
47
|
+
};
|
|
48
|
+
|
|
17
49
|
public static string? SerializeStringLabel(string? value, string propertyName, PeopleLabelSerializationOptions options)
|
|
18
50
|
{
|
|
19
51
|
return value;
|
|
@@ -30,6 +62,91 @@ public static class PeoplePayload
|
|
|
30
62
|
|
|
31
63
|
return values;
|
|
32
64
|
}
|
|
65
|
+
|
|
66
|
+
/// <summary>
|
|
67
|
+
/// Serialize a people-entity object to normalized JSON.
|
|
68
|
+
///
|
|
69
|
+
/// This is the primary entry point for serializing profile data (labels).
|
|
70
|
+
/// Internally:
|
|
71
|
+
/// 1. Serializes the object using JsonSerializer with DefaultIgnoreCondition.WhenWritingNull
|
|
72
|
+
/// 2. Parses the resulting JSON
|
|
73
|
+
/// 3. Normalizes the tree to strip metadata and convert casing
|
|
74
|
+
/// 4. Returns a clean JSON string suitable for external connectors
|
|
75
|
+
/// </summary>
|
|
76
|
+
/// <param name="entity">The people-entity object to serialize (e.g., UserAccountInformation, SkillProficiency)</param>
|
|
77
|
+
/// <returns>A normalized JSON string with no Kiota metadata, no null values, camelCase properties</returns>
|
|
78
|
+
public static string SerializePeopleEntity(object entity)
|
|
79
|
+
{
|
|
80
|
+
if (entity is null)
|
|
81
|
+
return "null";
|
|
82
|
+
|
|
83
|
+
var json = JsonSerializer.Serialize(entity, PeopleEntitySerializerOptions);
|
|
84
|
+
return NormalizeSerializedLabelJson(json);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/// <summary>
|
|
88
|
+
/// Normalize an already-serialized people-entity JSON string.
|
|
89
|
+
/// Useful if you need to customize serialization but still apply normalization separately.
|
|
90
|
+
/// </summary>
|
|
91
|
+
public static string NormalizeSerializedLabelJson(string json)
|
|
92
|
+
{
|
|
93
|
+
var node = JsonNode.Parse(json);
|
|
94
|
+
var normalized = NormalizeNode(node);
|
|
95
|
+
return normalized?.ToJsonString() ?? "{}";
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/// <summary>
|
|
99
|
+
/// Recursively walk a JsonNode tree, removing Kiota metadata and converting casing.
|
|
100
|
+
/// </summary>
|
|
101
|
+
private static JsonNode? NormalizeNode(JsonNode? node)
|
|
102
|
+
{
|
|
103
|
+
if (node is null)
|
|
104
|
+
return null;
|
|
105
|
+
|
|
106
|
+
// Handle objects: filter metadata, convert property names to camelCase
|
|
107
|
+
if (node is JsonObject jsonObject)
|
|
108
|
+
{
|
|
109
|
+
var result = new JsonObject();
|
|
110
|
+
foreach (var (key, value) in jsonObject)
|
|
111
|
+
{
|
|
112
|
+
// Skip Kiota metadata fields and null keys
|
|
113
|
+
if (key is null || KiotaMetadataKeys.Contains(key))
|
|
114
|
+
continue;
|
|
115
|
+
|
|
116
|
+
var normalizedValue = NormalizeNode(value);
|
|
117
|
+
if (normalizedValue is null)
|
|
118
|
+
continue;
|
|
119
|
+
|
|
120
|
+
// Preserve @ prefixes (e.g., for OData annotations if needed), otherwise camelCase
|
|
121
|
+
var normalizedKey = key.StartsWith("@", StringComparison.Ordinal)
|
|
122
|
+
? key
|
|
123
|
+
: JsonNamingPolicy.CamelCase.ConvertName(key);
|
|
124
|
+
|
|
125
|
+
result[normalizedKey] = normalizedValue;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
return result;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
// Handle arrays: recursively normalize each item, skip nulls
|
|
132
|
+
if (node is JsonArray jsonArray)
|
|
133
|
+
{
|
|
134
|
+
var result = new JsonArray();
|
|
135
|
+
foreach (var item in jsonArray)
|
|
136
|
+
{
|
|
137
|
+
var normalizedItem = NormalizeNode(item);
|
|
138
|
+
if (normalizedItem is null)
|
|
139
|
+
continue;
|
|
140
|
+
|
|
141
|
+
result.Add(normalizedItem);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
return result;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
// Scalars (strings, numbers, booleans): pass through
|
|
148
|
+
return node.DeepClone();
|
|
149
|
+
}
|
|
33
150
|
}
|
|
34
151
|
|
|
35
152
|
<% if (hasLocalGraphTypes) { -%>
|
|
@@ -14,13 +14,14 @@ namespace <%= schemaNamespace %>;
|
|
|
14
14
|
|
|
15
15
|
/// <summary>
|
|
16
16
|
/// Base class for row-to-model property transforms.
|
|
17
|
+
/// Override Transform<PropName> methods to customize mapping.
|
|
17
18
|
/// </summary>
|
|
18
19
|
public abstract class PropertyTransformBase
|
|
19
20
|
{
|
|
20
21
|
/// <summary>
|
|
21
22
|
/// Transform a property by name using the generated transform methods.
|
|
22
23
|
/// </summary>
|
|
23
|
-
public object TransformProperty(string name, object row)
|
|
24
|
+
public object? TransformProperty(string name, object row)
|
|
24
25
|
{
|
|
25
26
|
return name switch
|
|
26
27
|
{
|
|
@@ -3,8 +3,38 @@ namespace <%= schemaNamespace %>;
|
|
|
3
3
|
|
|
4
4
|
/// <summary>
|
|
5
5
|
/// User-overridable transforms for schema fields.
|
|
6
|
+
///
|
|
7
|
+
/// PEOPLE ENTITIES (labels):
|
|
8
|
+
/// For properties marked with @coco.people decorators, the generated Transform<PropName> methods
|
|
9
|
+
/// automatically serialize using PeoplePayload.SerializePeopleEntity(), which:
|
|
10
|
+
/// - Serializes to JSON using System.Text.Json with DefaultIgnoreCondition.WhenWritingNull
|
|
11
|
+
/// - Strips Kiota metadata (AdditionalData, BackingStore, OdataType, @odata.type)
|
|
12
|
+
/// - Converts property names to camelCase
|
|
13
|
+
/// - Returns normalized JSON strings (no null values, no internal SDK properties)
|
|
14
|
+
///
|
|
15
|
+
/// You can override Transform<PropName> freely; the normalization happens inside SerializePeopleEntity.
|
|
16
|
+
///
|
|
17
|
+
/// Example:
|
|
18
|
+
/// protected override string? TransformAccountInfo(object row)
|
|
19
|
+
/// {
|
|
20
|
+
/// // Parse and customize the source data however you like
|
|
21
|
+
/// var account = new Microsoft.Graph.Beta.Models.UserAccountInformation
|
|
22
|
+
/// {
|
|
23
|
+
/// UserPrincipalName = RowParser.ParseString(row, new[] { "Email" })
|
|
24
|
+
/// };
|
|
25
|
+
/// // SerializePeopleEntity handles serialization + normalization automatically
|
|
26
|
+
/// return PeoplePayload.SerializePeopleEntity(account);
|
|
27
|
+
/// }
|
|
28
|
+
///
|
|
29
|
+
/// COLLECTIONS:
|
|
30
|
+
/// For collection properties, Transform<PropName> returns a List<string> of normalized JSON strings.
|
|
31
|
+
/// Each item in the collection is automatically serialized and normalized.
|
|
32
|
+
///
|
|
33
|
+
/// OTHER PROPERTIES (strings, dates, enums):
|
|
34
|
+
/// Override Transform<PropName> to customize validation, transformation, or parsing.
|
|
35
|
+
/// No automatic normalization applied (these are non-entity properties).
|
|
6
36
|
/// </summary>
|
|
7
37
|
public sealed class PropertyTransform : PropertyTransformBase
|
|
8
38
|
{
|
|
9
|
-
// Override Transform<PropName> methods to customize mapping.
|
|
39
|
+
// Override Transform<PropName> methods to customize mapping for any property.
|
|
10
40
|
}
|
package/package.json
CHANGED