@wictorwilen/cocogen 1.0.21 → 1.0.24
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 +23 -1
- package/README.md +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +23 -11
- package/dist/cli.js.map +1 -1
- package/dist/init/init.d.ts +8 -0
- package/dist/init/init.d.ts.map +1 -1
- package/dist/init/init.js +268 -16
- package/dist/init/init.js.map +1 -1
- package/dist/init/templates/dotnet/Core/ConnectorCore.cs.ejs +11 -8
- package/dist/init/templates/dotnet/Core/IItemPayload.cs.ejs +23 -0
- package/dist/init/templates/dotnet/Core/Principal.cs.ejs +41 -26
- package/dist/init/templates/dotnet/Datasource/CsvItemSource.cs.ejs +1 -1
- package/dist/init/templates/dotnet/Datasource/IItemSource.cs.ejs +2 -4
- package/dist/init/templates/dotnet/Generated/ItemPayload.cs.ejs +10 -0
- package/dist/init/templates/dotnet/Program.commandline.cs.ejs +4 -3
- package/dist/init/templates/dotnet/README.md.ejs +1 -1
- package/dist/init/templates/rest/create-connection.http.ejs +10 -0
- package/dist/init/templates/rest/ingest-item.http.ejs +11 -0
- package/dist/init/templates/rest/patch-schema.http.ejs +10 -0
- package/dist/init/templates/rest/profile-source.http.ejs +34 -0
- package/dist/init/templates/ts/AGENTS.md.ejs +1 -1
- package/dist/init/templates/ts/README.md.ejs +1 -1
- package/dist/init/templates/ts/src/core/connectorCore.ts.ejs +1 -1
- package/dist/init/templates/ts/src/core/principal.ts.ejs +7 -5
- package/dist/init/templates/ts/src/datasource/csvItemSource.ts.ejs +1 -1
- package/dist/init/templates/ts/src/datasource/itemSource.ts.ejs +2 -7
- package/dist/init/templates/ts/src/generated/itemPayload.ts.ejs +3 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,13 +7,33 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [1.0.24] - 2026-01-21
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
- .NET core ingestion now uses generic payload adapters to avoid coupling core helpers to concrete schema models.
|
|
14
|
+
- TS datasource contracts now use generics to avoid coupling shared helpers to concrete schema models.
|
|
15
|
+
|
|
16
|
+
## [1.0.22] - 2026-01-21
|
|
17
|
+
|
|
18
|
+
### Changed
|
|
19
|
+
- Principal model now lives in generated core helpers (TS + .NET) for easier SDK migration.
|
|
20
|
+
- .NET principal serialization now uses a Kiota `IParsable` implementation with updated principal fields.
|
|
21
|
+
- Principal field mappings aligned with draft Graph docs (`externalName`, `externalId`, `entraDisplayName`, `entraId`, `email`, `upn`, `tenantId`).
|
|
22
|
+
- Added REST output (`--lang rest`) that emits .http files for connection, schema, profile source, and ingestion calls.
|
|
23
|
+
|
|
24
|
+
### Fixed
|
|
25
|
+
- Principal values now omit null fields in TS payloads and .NET serialization.
|
|
26
|
+
- PrincipalCollection now emits `Collection(microsoft.graph.externalConnectors.principal)` in `@odata.type`.
|
|
27
|
+
- Sample CSV generation uses email values for principal `upn`/`userPrincipalName` sources.
|
|
28
|
+
|
|
10
29
|
## [1.0.21] - 2026-01-21
|
|
11
30
|
|
|
12
31
|
## [1.0.20] - 2026-01-21
|
|
13
32
|
|
|
14
33
|
### Changed
|
|
15
|
-
- Principal properties now emit a typed principal object with `@odata.type
|
|
34
|
+
- Principal properties now emit a typed principal object with `@odata.type` and updated Graph fields.
|
|
16
35
|
- Added support for `coco.Principal[]` mapping to Graph `principalCollection` (preview).
|
|
36
|
+
- Updated principal field mappings to match Graph docs (`externalName`, `externalId`, `entraDisplayName`, `entraId`, `email`, `upn`, `tenantId`).
|
|
17
37
|
|
|
18
38
|
### Fixed
|
|
19
39
|
- .NET CLI now uses client secret credentials directly when configured (avoids managed identity failures).
|
|
@@ -60,6 +80,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
60
80
|
- Collection values no longer split on commas; use semicolons instead.
|
|
61
81
|
|
|
62
82
|
[Unreleased]: https://github.com/wictorwilen/cocogen/compare/v1.0.16...HEAD
|
|
83
|
+
[1.0.24]: https://github.com/wictorwilen/cocogen/compare/main...v1.0.24
|
|
84
|
+
[1.0.22]: https://github.com/wictorwilen/cocogen/compare/main...v1.0.22
|
|
63
85
|
[1.0.21]: https://github.com/wictorwilen/cocogen/compare/main...v1.0.21
|
|
64
86
|
[1.0.20]: https://github.com/wictorwilen/cocogen/compare/main...v1.0.20
|
|
65
87
|
[1.0.19]: https://github.com/wictorwilen/cocogen/compare/main...v1.0.19
|
package/README.md
CHANGED
|
@@ -104,7 +104,7 @@ cocogen --help
|
|
|
104
104
|
| --- | --- | --- |
|
|
105
105
|
| `init` | Create a starter TypeSpec file | `--out <path>`, `--kind <content\|people>`, `--prompt`, `--force` |
|
|
106
106
|
| `validate` | Validate a TypeSpec schema | `--tsp <path>`, `--json`, `--use-preview-features` |
|
|
107
|
-
| `generate` | Generate a runnable connector project | `--tsp <path>`, `--out <dir>`, `--lang <ts\|dotnet>`, `--name <name>`, `--force`, `--use-preview-features` |
|
|
107
|
+
| `generate` | Generate a runnable connector project | `--tsp <path>`, `--out <dir>`, `--lang <ts\|dotnet\|rest>`, `--name <name>`, `--force`, `--use-preview-features` |
|
|
108
108
|
| `update` | Regenerate TypeSpec-derived code in a generated project | `--out <dir>`, `--tsp <path>`, `--use-preview-features` |
|
|
109
109
|
| `emit` | Emit cocogen IR as JSON | `--tsp <path>`, `--out <path>`, `--use-preview-features` |
|
|
110
110
|
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAiJA,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAiJA,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+PxD"}
|
package/dist/cli.js
CHANGED
|
@@ -6,7 +6,7 @@ import { Command } from "commander";
|
|
|
6
6
|
import pc from "picocolors";
|
|
7
7
|
import ora from "ora";
|
|
8
8
|
import { writeIrJson } from "./emit/emit.js";
|
|
9
|
-
import { initDotnetProject, initTsProject, updateProject } from "./init/init.js";
|
|
9
|
+
import { initDotnetProject, initRestProject, initTsProject, updateProject } from "./init/init.js";
|
|
10
10
|
import { initStarterTsp } from "./tsp/init-tsp.js";
|
|
11
11
|
import { loadIrFromTypeSpec } from "./tsp/loader.js";
|
|
12
12
|
import { validateIr } from "./validate/validator.js";
|
|
@@ -266,13 +266,13 @@ export async function main(argv) {
|
|
|
266
266
|
.description("Generate a runnable connector project")
|
|
267
267
|
.requiredOption("--tsp <path>", "Entry TypeSpec file")
|
|
268
268
|
.requiredOption("--out <dir>", "Output directory")
|
|
269
|
-
.option("--lang <lang>", "Target language (ts|dotnet)", "ts")
|
|
269
|
+
.option("--lang <lang>", "Target language (ts|dotnet|rest)", "ts")
|
|
270
270
|
.option("--name <name>", "Project name (defaults to folder name)")
|
|
271
271
|
.option("--force", "Overwrite files in a non-empty output directory", false)
|
|
272
272
|
.action(async (options) => {
|
|
273
273
|
const spinner = shouldUseSpinner() ? ora("Generating project...").start() : undefined;
|
|
274
274
|
try {
|
|
275
|
-
const lang = options.lang === "dotnet" ? "dotnet" : "ts";
|
|
275
|
+
const lang = options.lang === "dotnet" ? "dotnet" : options.lang === "rest" ? "rest" : "ts";
|
|
276
276
|
const usePreviewFeatures = program.opts().usePreviewFeatures;
|
|
277
277
|
const result = lang === "ts"
|
|
278
278
|
? await initTsProject({
|
|
@@ -282,13 +282,21 @@ export async function main(argv) {
|
|
|
282
282
|
force: options.force,
|
|
283
283
|
usePreviewFeatures,
|
|
284
284
|
})
|
|
285
|
-
:
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
285
|
+
: lang === "dotnet"
|
|
286
|
+
? await initDotnetProject({
|
|
287
|
+
tspPath: options.tsp,
|
|
288
|
+
outDir: options.out,
|
|
289
|
+
...(options.name ? { projectName: options.name } : {}),
|
|
290
|
+
force: options.force,
|
|
291
|
+
usePreviewFeatures,
|
|
292
|
+
})
|
|
293
|
+
: await initRestProject({
|
|
294
|
+
tspPath: options.tsp,
|
|
295
|
+
outDir: options.out,
|
|
296
|
+
...(options.name ? { projectName: options.name } : {}),
|
|
297
|
+
force: options.force,
|
|
298
|
+
usePreviewFeatures,
|
|
299
|
+
});
|
|
292
300
|
spinner?.succeed(pc.green("Generated"));
|
|
293
301
|
process.stdout.write(`${pc.green("ok")}: Project generated\n`);
|
|
294
302
|
process.stdout.write(` ${pc.dim("path")}: ${result.outDir}\n`);
|
|
@@ -300,7 +308,11 @@ export async function main(argv) {
|
|
|
300
308
|
process.stdout.write(` ${pc.yellow("note")}: contentCategory is a Graph /beta property; provisioning will use /beta\n`);
|
|
301
309
|
}
|
|
302
310
|
}
|
|
303
|
-
const nextCmd = lang === "ts"
|
|
311
|
+
const nextCmd = lang === "ts"
|
|
312
|
+
? "npm install"
|
|
313
|
+
: lang === "dotnet"
|
|
314
|
+
? "dotnet build"
|
|
315
|
+
: "open the .http files in your REST client";
|
|
304
316
|
process.stdout.write(` ${pc.dim("next")}: cd ${result.outDir} && ${nextCmd}\n`);
|
|
305
317
|
process.exitCode = 0;
|
|
306
318
|
}
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/init/init.d.ts
CHANGED
|
@@ -19,10 +19,18 @@ export declare function updateDotnetProject(options: UpdateOptions): Promise<{
|
|
|
19
19
|
outDir: string;
|
|
20
20
|
ir: ConnectorIr;
|
|
21
21
|
}>;
|
|
22
|
+
export declare function updateRestProject(options: UpdateOptions): Promise<{
|
|
23
|
+
outDir: string;
|
|
24
|
+
ir: ConnectorIr;
|
|
25
|
+
}>;
|
|
22
26
|
export declare function updateProject(options: UpdateOptions): Promise<{
|
|
23
27
|
outDir: string;
|
|
24
28
|
ir: ConnectorIr;
|
|
25
29
|
}>;
|
|
30
|
+
export declare function initRestProject(options: InitOptions): Promise<{
|
|
31
|
+
outDir: string;
|
|
32
|
+
ir: ConnectorIr;
|
|
33
|
+
}>;
|
|
26
34
|
export declare function initTsProject(options: InitOptions): Promise<{
|
|
27
35
|
outDir: string;
|
|
28
36
|
ir: ConnectorIr;
|
package/dist/init/init.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/init/init.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,UAAU,CAAC;AAK1D,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/init/init.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,UAAU,CAAC;AAK1D,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AA+2DF,wBAAsB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,WAAW,CAAA;CAAE,CAAC,CAyB1G;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,WAAW,CAAA;CAAE,CAAC,CA2B9C;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,WAAW,CAAA;CAAE,CAAC,CAwB5G;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,WAAW,CAAA;CAAE,CAAC,CAUxG;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,WAAW,CAAA;CAAE,CAAC,CAmBxG;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,WAAW,CAAA;CAAE,CAAC,CAsHtG;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,WAAW,CAAA;CAAE,CAAC,CAoH9C"}
|
package/dist/init/init.js
CHANGED
|
@@ -205,7 +205,7 @@ async function loadProjectConfig(outDir) {
|
|
|
205
205
|
throw new Error(`Missing ${COCOGEN_CONFIG_FILE}. Re-run cocogen generate or fix the file.`);
|
|
206
206
|
}
|
|
207
207
|
const parsed = JSON.parse(raw);
|
|
208
|
-
if ((parsed.lang !== "ts" && parsed.lang !== "dotnet") || typeof parsed.tsp !== "string") {
|
|
208
|
+
if ((parsed.lang !== "ts" && parsed.lang !== "dotnet" && parsed.lang !== "rest") || typeof parsed.tsp !== "string") {
|
|
209
209
|
throw new Error(`Invalid ${COCOGEN_CONFIG_FILE}. Re-run cocogen generate or fix the file.`);
|
|
210
210
|
}
|
|
211
211
|
return {
|
|
@@ -586,7 +586,8 @@ function buildPrincipalFieldEntries(fields, fallbackHeaders) {
|
|
|
586
586
|
if (fields && fields.length > 0) {
|
|
587
587
|
return fields
|
|
588
588
|
.map((field) => {
|
|
589
|
-
const
|
|
589
|
+
const rawKey = field.path.split(".").pop() ?? field.path;
|
|
590
|
+
const key = rawKey === "userPrincipalName" ? "upn" : rawKey;
|
|
590
591
|
return {
|
|
591
592
|
key,
|
|
592
593
|
headersLiteral: JSON.stringify(field.source.csvHeaders),
|
|
@@ -597,7 +598,7 @@ function buildPrincipalFieldEntries(fields, fallbackHeaders) {
|
|
|
597
598
|
if (fallbackHeaders.length > 0) {
|
|
598
599
|
return [
|
|
599
600
|
{
|
|
600
|
-
key: "
|
|
601
|
+
key: "upn",
|
|
601
602
|
headersLiteral: JSON.stringify([fallbackHeaders[0]]),
|
|
602
603
|
},
|
|
603
604
|
];
|
|
@@ -606,16 +607,19 @@ function buildPrincipalFieldEntries(fields, fallbackHeaders) {
|
|
|
606
607
|
}
|
|
607
608
|
function buildTsPrincipalExpression(fields, fallbackHeaders) {
|
|
608
609
|
const entries = buildPrincipalFieldEntries(fields, fallbackHeaders).map((entry) => ` ${JSON.stringify(entry.key)}: parseString(readSourceValue(row, ${entry.headersLiteral}))`);
|
|
609
|
-
return `({\n "@odata.type": "
|
|
610
|
+
return `({\n "@odata.type": "microsoft.graph.externalConnectors.principal"${entries.length ? ",\n" + entries.join(",\n") : ""}\n})`;
|
|
610
611
|
}
|
|
611
612
|
function buildCsPrincipalExpression(fields, fallbackHeaders) {
|
|
612
613
|
const entries = buildPrincipalFieldEntries(fields, fallbackHeaders);
|
|
613
614
|
const knownMap = new Map([
|
|
614
|
-
["
|
|
615
|
+
["upn", "Upn"],
|
|
616
|
+
["userPrincipalName", "Upn"],
|
|
615
617
|
["tenantId", "TenantId"],
|
|
616
|
-
["
|
|
617
|
-
["
|
|
618
|
-
["
|
|
618
|
+
["externalName", "ExternalName"],
|
|
619
|
+
["externalId", "ExternalId"],
|
|
620
|
+
["entraDisplayName", "EntraDisplayName"],
|
|
621
|
+
["entraId", "EntraId"],
|
|
622
|
+
["email", "Email"],
|
|
619
623
|
]);
|
|
620
624
|
const knownAssignments = [];
|
|
621
625
|
const additionalDataEntries = [];
|
|
@@ -640,7 +644,7 @@ function buildCsPrincipalExpression(fields, fallbackHeaders) {
|
|
|
640
644
|
return [
|
|
641
645
|
"new Principal",
|
|
642
646
|
"{",
|
|
643
|
-
" OdataType = \"
|
|
647
|
+
" OdataType = \"microsoft.graph.externalConnectors.principal\",",
|
|
644
648
|
...knownAssignments,
|
|
645
649
|
...additionalDataBlock,
|
|
646
650
|
"}"
|
|
@@ -657,7 +661,7 @@ function buildTsPrincipalCollectionExpression(fields, fallbackHeaders) {
|
|
|
657
661
|
const fieldsBlock = entries
|
|
658
662
|
.map((entry, index) => ` ${JSON.stringify(entry.key)}: getValue(field${index}, index)`)
|
|
659
663
|
.join(",\n");
|
|
660
|
-
return `(() => {\n${fieldLines.join("\n")}\n${lengthVars}\n const maxLen = Math.max(0, ...lengths);\n const getValue = (values: string[], index: number): string => {\n if (values.length === 0) return "";\n if (values.length === 1) return values[0] ?? "";\n return values[index] ?? "";\n };\n const results: Principal[] = [];\n for (let index = 0; index < maxLen; index++) {\n results.push({\n "@odata.type": "
|
|
664
|
+
return `(() => {\n${fieldLines.join("\n")}\n${lengthVars}\n const maxLen = Math.max(0, ...lengths);\n const getValue = (values: string[], index: number): string => {\n if (values.length === 0) return "";\n if (values.length === 1) return values[0] ?? "";\n return values[index] ?? "";\n };\n const results: Principal[] = [];\n for (let index = 0; index < maxLen; index++) {\n results.push({\n "@odata.type": "microsoft.graph.externalConnectors.principal",\n${fieldsBlock}\n });\n }\n return results;\n})()`;
|
|
661
665
|
}
|
|
662
666
|
function buildCsPrincipalCollectionExpression(fields, fallbackHeaders) {
|
|
663
667
|
const entries = buildPrincipalFieldEntries(fields, fallbackHeaders);
|
|
@@ -668,11 +672,14 @@ function buildCsPrincipalCollectionExpression(fields, fallbackHeaders) {
|
|
|
668
672
|
return ` var field${index} = RowParser.ParseStringCollection(row, ${headers});`;
|
|
669
673
|
});
|
|
670
674
|
const knownMap = new Map([
|
|
671
|
-
["
|
|
675
|
+
["upn", "Upn"],
|
|
676
|
+
["userPrincipalName", "Upn"],
|
|
672
677
|
["tenantId", "TenantId"],
|
|
673
|
-
["
|
|
674
|
-
["
|
|
675
|
-
["
|
|
678
|
+
["externalName", "ExternalName"],
|
|
679
|
+
["externalId", "ExternalId"],
|
|
680
|
+
["entraDisplayName", "EntraDisplayName"],
|
|
681
|
+
["entraId", "EntraId"],
|
|
682
|
+
["email", "Email"],
|
|
676
683
|
]);
|
|
677
684
|
const knownAssignments = entries
|
|
678
685
|
.map((entry, index) => {
|
|
@@ -717,7 +724,7 @@ function buildCsPrincipalCollectionExpression(fields, fallbackHeaders) {
|
|
|
717
724
|
" {",
|
|
718
725
|
" var principal = new Principal",
|
|
719
726
|
" {",
|
|
720
|
-
" OdataType = \"
|
|
727
|
+
" OdataType = \"microsoft.graph.externalConnectors.principal\",",
|
|
721
728
|
...knownAssignments,
|
|
722
729
|
...additionalDataBlock,
|
|
723
730
|
" };",
|
|
@@ -975,6 +982,162 @@ function sampleValueForHeader(header, type) {
|
|
|
975
982
|
return "Sample profile note";
|
|
976
983
|
return type ? sampleValueForType(type) : "sample";
|
|
977
984
|
}
|
|
985
|
+
function sampleValueForPrincipalKey(key, index = 0) {
|
|
986
|
+
const suffix = index > 0 ? index.toString() : "";
|
|
987
|
+
const email = `user${suffix}@contoso.com`;
|
|
988
|
+
switch (key) {
|
|
989
|
+
case "upn":
|
|
990
|
+
case "email":
|
|
991
|
+
case "externalId":
|
|
992
|
+
return email;
|
|
993
|
+
case "tenantId":
|
|
994
|
+
case "entraId":
|
|
995
|
+
return "00000000-0000-0000-0000-000000000000";
|
|
996
|
+
case "externalName":
|
|
997
|
+
case "entraDisplayName":
|
|
998
|
+
return suffix ? `Ada Lovelace ${suffix}` : "Ada Lovelace";
|
|
999
|
+
default:
|
|
1000
|
+
return `sample-${key}`;
|
|
1001
|
+
}
|
|
1002
|
+
}
|
|
1003
|
+
function buildSamplePrincipalObject(fields, fallbackHeaders, index = 0) {
|
|
1004
|
+
const entries = buildPrincipalFieldEntries(fields, fallbackHeaders);
|
|
1005
|
+
const keys = entries.length > 0 ? entries.map((entry) => entry.key) : ["upn"];
|
|
1006
|
+
const principal = {
|
|
1007
|
+
"@odata.type": "microsoft.graph.externalConnectors.principal",
|
|
1008
|
+
};
|
|
1009
|
+
for (const key of keys) {
|
|
1010
|
+
principal[key] = sampleValueForPrincipalKey(key, index);
|
|
1011
|
+
}
|
|
1012
|
+
return principal;
|
|
1013
|
+
}
|
|
1014
|
+
function buildSamplePrincipalCollection(fields, fallbackHeaders) {
|
|
1015
|
+
return [
|
|
1016
|
+
buildSamplePrincipalObject(fields, fallbackHeaders, 0),
|
|
1017
|
+
buildSamplePrincipalObject(fields, fallbackHeaders, 1),
|
|
1018
|
+
];
|
|
1019
|
+
}
|
|
1020
|
+
function buildSamplePersonEntityObject(fields, index = 0) {
|
|
1021
|
+
const tree = buildObjectTree(fields);
|
|
1022
|
+
const valueByPath = new Map();
|
|
1023
|
+
for (const field of fields) {
|
|
1024
|
+
const header = field.source.csvHeaders[0] ?? field.path;
|
|
1025
|
+
const raw = sampleValueForHeader(header);
|
|
1026
|
+
const values = raw.split(/\s*;\s*/).map((value) => value.trim()).filter(Boolean);
|
|
1027
|
+
const value = values.length > 0
|
|
1028
|
+
? (values[index] ?? values[0] ?? "")
|
|
1029
|
+
: raw;
|
|
1030
|
+
valueByPath.set(field.path, value);
|
|
1031
|
+
}
|
|
1032
|
+
const renderNode = (node) => {
|
|
1033
|
+
const result = {};
|
|
1034
|
+
for (const [key, value] of Object.entries(node)) {
|
|
1035
|
+
if (typeof value === "object" && value && "path" in value) {
|
|
1036
|
+
const field = value;
|
|
1037
|
+
result[key] = valueByPath.get(field.path) ?? "";
|
|
1038
|
+
}
|
|
1039
|
+
else {
|
|
1040
|
+
result[key] = renderNode(value);
|
|
1041
|
+
}
|
|
1042
|
+
}
|
|
1043
|
+
return result;
|
|
1044
|
+
};
|
|
1045
|
+
return renderNode(tree);
|
|
1046
|
+
}
|
|
1047
|
+
function buildSamplePersonEntityPayload(fields, isCollection) {
|
|
1048
|
+
if (!isCollection) {
|
|
1049
|
+
return JSON.stringify(buildSamplePersonEntityObject(fields, 0));
|
|
1050
|
+
}
|
|
1051
|
+
const objects = [
|
|
1052
|
+
buildSamplePersonEntityObject(fields, 0),
|
|
1053
|
+
buildSamplePersonEntityObject(fields, 1),
|
|
1054
|
+
];
|
|
1055
|
+
return objects.map((value) => JSON.stringify(value));
|
|
1056
|
+
}
|
|
1057
|
+
function exampleValueForPayload(example, type) {
|
|
1058
|
+
if (example === undefined || example === null)
|
|
1059
|
+
return undefined;
|
|
1060
|
+
if (type.endsWith("Collection")) {
|
|
1061
|
+
if (Array.isArray(example))
|
|
1062
|
+
return example;
|
|
1063
|
+
if (typeof example === "string") {
|
|
1064
|
+
return example.split(/\s*;\s*/).map((value) => value.trim()).filter(Boolean);
|
|
1065
|
+
}
|
|
1066
|
+
return [String(example)];
|
|
1067
|
+
}
|
|
1068
|
+
return example;
|
|
1069
|
+
}
|
|
1070
|
+
function samplePayloadValueForType(type, fields, fallbackHeaders) {
|
|
1071
|
+
switch (type) {
|
|
1072
|
+
case "boolean":
|
|
1073
|
+
return true;
|
|
1074
|
+
case "int64":
|
|
1075
|
+
return 123;
|
|
1076
|
+
case "double":
|
|
1077
|
+
return 1.23;
|
|
1078
|
+
case "dateTime":
|
|
1079
|
+
return "2024-01-01T00:00:00Z";
|
|
1080
|
+
case "stringCollection":
|
|
1081
|
+
return ["alpha", "beta"];
|
|
1082
|
+
case "int64Collection":
|
|
1083
|
+
return [1, 2];
|
|
1084
|
+
case "doubleCollection":
|
|
1085
|
+
return [1.1, 2.2];
|
|
1086
|
+
case "dateTimeCollection":
|
|
1087
|
+
return ["2024-01-01T00:00:00Z", "2024-01-02T00:00:00Z"];
|
|
1088
|
+
case "principal":
|
|
1089
|
+
return buildSamplePrincipalObject(fields, fallbackHeaders, 0);
|
|
1090
|
+
case "principalCollection":
|
|
1091
|
+
return buildSamplePrincipalCollection(fields, fallbackHeaders);
|
|
1092
|
+
case "string":
|
|
1093
|
+
default:
|
|
1094
|
+
return "sample";
|
|
1095
|
+
}
|
|
1096
|
+
}
|
|
1097
|
+
function buildRestConnectionPayload(ir) {
|
|
1098
|
+
const payload = {
|
|
1099
|
+
id: ir.connection.connectionId ?? "connection-id",
|
|
1100
|
+
name: ir.connection.connectionName ?? "Connector",
|
|
1101
|
+
description: ir.connection.connectionDescription ?? "Connector generated by cocogen",
|
|
1102
|
+
};
|
|
1103
|
+
if (ir.connection.contentCategory) {
|
|
1104
|
+
payload.contentCategory = ir.connection.contentCategory;
|
|
1105
|
+
}
|
|
1106
|
+
return payload;
|
|
1107
|
+
}
|
|
1108
|
+
function buildRestItemPayload(ir, itemId) {
|
|
1109
|
+
const properties = {};
|
|
1110
|
+
for (const prop of ir.properties) {
|
|
1111
|
+
if (prop.name === ir.item.contentPropertyName)
|
|
1112
|
+
continue;
|
|
1113
|
+
const exampleValue = exampleValueForPayload(prop.example, prop.type);
|
|
1114
|
+
if (prop.personEntity && prop.type !== "principal" && prop.type !== "principalCollection") {
|
|
1115
|
+
const isCollection = prop.type.endsWith("Collection");
|
|
1116
|
+
properties[prop.name] = buildSamplePersonEntityPayload(prop.personEntity.fields, isCollection);
|
|
1117
|
+
}
|
|
1118
|
+
else {
|
|
1119
|
+
const value = exampleValue ??
|
|
1120
|
+
samplePayloadValueForType(prop.type, prop.personEntity ? prop.personEntity.fields : null, prop.source.csvHeaders);
|
|
1121
|
+
properties[prop.name] = value;
|
|
1122
|
+
}
|
|
1123
|
+
const odataType = toOdataCollectionType(prop.type);
|
|
1124
|
+
if (odataType) {
|
|
1125
|
+
properties[`${prop.name}@odata.type`] = odataType;
|
|
1126
|
+
}
|
|
1127
|
+
}
|
|
1128
|
+
const payload = {
|
|
1129
|
+
id: itemId,
|
|
1130
|
+
acl: [{ type: "everyone", value: "everyone", accessType: "grant" }],
|
|
1131
|
+
properties,
|
|
1132
|
+
};
|
|
1133
|
+
if (ir.item.contentPropertyName) {
|
|
1134
|
+
const contentProp = ir.properties.find((p) => p.name === ir.item.contentPropertyName);
|
|
1135
|
+
const exampleValue = contentProp ? exampleValueForPayload(contentProp.example, contentProp.type) : undefined;
|
|
1136
|
+
const value = exampleValue ?? "Sample content";
|
|
1137
|
+
payload.content = { type: "text", value: String(value) };
|
|
1138
|
+
}
|
|
1139
|
+
return payload;
|
|
1140
|
+
}
|
|
978
1141
|
function buildSampleCsv(ir) {
|
|
979
1142
|
const headers = [];
|
|
980
1143
|
const seen = new Set();
|
|
@@ -1010,7 +1173,8 @@ function buildSampleCsv(ir) {
|
|
|
1010
1173
|
for (const header of field.source.csvHeaders) {
|
|
1011
1174
|
if (valueByHeader.has(header))
|
|
1012
1175
|
continue;
|
|
1013
|
-
if ((prop.type === "principal" || prop.type === "principalCollection") &&
|
|
1176
|
+
if ((prop.type === "principal" || prop.type === "principalCollection") &&
|
|
1177
|
+
(field.path === "upn" || field.path === "userPrincipalName")) {
|
|
1014
1178
|
valueByHeader.set(header, sampleValueForType(prop.type));
|
|
1015
1179
|
continue;
|
|
1016
1180
|
}
|
|
@@ -1299,6 +1463,10 @@ async function writeGeneratedDotnet(outDir, ir, namespaceName, schemaFolderName,
|
|
|
1299
1463
|
isPeopleConnector: ir.connection.contentCategory === "people",
|
|
1300
1464
|
graphApiVersion: ir.connection.graphApiVersion,
|
|
1301
1465
|
}), "utf8");
|
|
1466
|
+
await writeFile(path.join(outDir, "Core", "IItemPayload.cs"), await renderTemplate("dotnet/Core/IItemPayload.cs.ejs", {
|
|
1467
|
+
namespaceName,
|
|
1468
|
+
graphApiVersion: ir.connection.graphApiVersion,
|
|
1469
|
+
}), "utf8");
|
|
1302
1470
|
await writeFile(path.join(outDir, "Core", "Validation.cs"), await renderTemplate("dotnet/Core/Validation.cs.ejs", {
|
|
1303
1471
|
namespaceName,
|
|
1304
1472
|
}), "utf8");
|
|
@@ -1312,6 +1480,49 @@ async function writeGeneratedDotnet(outDir, ir, namespaceName, schemaFolderName,
|
|
|
1312
1480
|
}), "utf8");
|
|
1313
1481
|
}
|
|
1314
1482
|
}
|
|
1483
|
+
async function writeRestFiles(outDir, ir) {
|
|
1484
|
+
const connectionId = ir.connection.connectionId ?? "connection-id";
|
|
1485
|
+
const connectionPayloadJson = JSON.stringify(buildRestConnectionPayload(ir), null, 2);
|
|
1486
|
+
const schemaPayloadJson = JSON.stringify(schemaPayload(ir), null, 2);
|
|
1487
|
+
const idProp = ir.properties.find((p) => p.name === ir.item.idPropertyName);
|
|
1488
|
+
const idExample = idProp ? exampleValueForPayload(idProp.example, idProp.type) : undefined;
|
|
1489
|
+
const itemId = typeof idExample === "string"
|
|
1490
|
+
? idExample
|
|
1491
|
+
: Array.isArray(idExample)
|
|
1492
|
+
? String(idExample[0] ?? "sample-id")
|
|
1493
|
+
: idExample !== undefined && idExample !== null
|
|
1494
|
+
? String(idExample)
|
|
1495
|
+
: "sample-id";
|
|
1496
|
+
const itemPayloadJson = JSON.stringify(buildRestItemPayload(ir, itemId), null, 2);
|
|
1497
|
+
await writeFile(path.join(outDir, "create-connection.http"), await renderTemplate("rest/create-connection.http.ejs", {
|
|
1498
|
+
graphBaseUrl: graphBaseUrl(ir),
|
|
1499
|
+
connectionId,
|
|
1500
|
+
connectionPayloadJson,
|
|
1501
|
+
}), "utf8");
|
|
1502
|
+
await writeFile(path.join(outDir, "patch-schema.http"), await renderTemplate("rest/patch-schema.http.ejs", {
|
|
1503
|
+
graphBaseUrl: graphBaseUrl(ir),
|
|
1504
|
+
connectionId,
|
|
1505
|
+
schemaPayloadJson,
|
|
1506
|
+
}), "utf8");
|
|
1507
|
+
await writeFile(path.join(outDir, "ingest-item.http"), await renderTemplate("rest/ingest-item.http.ejs", {
|
|
1508
|
+
graphBaseUrl: graphBaseUrl(ir),
|
|
1509
|
+
connectionId,
|
|
1510
|
+
itemId,
|
|
1511
|
+
itemPayloadJson,
|
|
1512
|
+
}), "utf8");
|
|
1513
|
+
if (ir.connection.contentCategory === "people") {
|
|
1514
|
+
const profileSourceWebUrl = ir.connection.profileSource?.webUrl ?? "https://example.com/people";
|
|
1515
|
+
const profileSourceDisplayName = ir.connection.profileSource?.displayName ?? ir.connection.connectionName ?? ir.item.typeName;
|
|
1516
|
+
const profileSourcePriority = ir.connection.profileSource?.priority ?? "first";
|
|
1517
|
+
await writeFile(path.join(outDir, "profile-source.http"), await renderTemplate("rest/profile-source.http.ejs", {
|
|
1518
|
+
graphBaseUrl: graphBaseUrl(ir),
|
|
1519
|
+
connectionId,
|
|
1520
|
+
profileSourceWebUrl,
|
|
1521
|
+
profileSourceDisplayName,
|
|
1522
|
+
profileSourcePriority,
|
|
1523
|
+
}), "utf8");
|
|
1524
|
+
}
|
|
1525
|
+
}
|
|
1315
1526
|
function formatValidationErrors(ir) {
|
|
1316
1527
|
const issues = validateIr(ir);
|
|
1317
1528
|
const errors = issues.filter((i) => i.severity === "error");
|
|
@@ -1367,14 +1578,55 @@ export async function updateDotnetProject(options) {
|
|
|
1367
1578
|
}
|
|
1368
1579
|
return { outDir, ir };
|
|
1369
1580
|
}
|
|
1581
|
+
export async function updateRestProject(options) {
|
|
1582
|
+
const outDir = path.resolve(options.outDir);
|
|
1583
|
+
const { config } = await loadProjectConfig(outDir);
|
|
1584
|
+
const tspPath = options.tspPath ? path.resolve(options.tspPath) : path.resolve(outDir, config.tsp);
|
|
1585
|
+
if (config.lang !== "rest") {
|
|
1586
|
+
throw new Error(`This project is '${config.lang}'. Use cocogen generate/update for that language.`);
|
|
1587
|
+
}
|
|
1588
|
+
const ir = await loadIrFromTypeSpec(tspPath);
|
|
1589
|
+
if (ir.connection.graphApiVersion === "beta" && !options.usePreviewFeatures) {
|
|
1590
|
+
throw new Error("This schema requires Graph beta. Re-run with --use-preview-features.");
|
|
1591
|
+
}
|
|
1592
|
+
const validationMessage = formatValidationErrors(ir);
|
|
1593
|
+
if (validationMessage) {
|
|
1594
|
+
throw new Error(`Schema validation failed:\n${validationMessage}`);
|
|
1595
|
+
}
|
|
1596
|
+
await writeRestFiles(outDir, ir);
|
|
1597
|
+
if (options.tspPath) {
|
|
1598
|
+
await writeFile(path.join(outDir, COCOGEN_CONFIG_FILE), projectConfigContents(outDir, tspPath, "rest"), "utf8");
|
|
1599
|
+
}
|
|
1600
|
+
return { outDir, ir };
|
|
1601
|
+
}
|
|
1370
1602
|
export async function updateProject(options) {
|
|
1371
1603
|
const outDir = path.resolve(options.outDir);
|
|
1372
1604
|
const { config } = await loadProjectConfig(outDir);
|
|
1373
1605
|
if (config.lang === "dotnet") {
|
|
1374
1606
|
return updateDotnetProject(options);
|
|
1375
1607
|
}
|
|
1608
|
+
if (config.lang === "rest") {
|
|
1609
|
+
return updateRestProject(options);
|
|
1610
|
+
}
|
|
1376
1611
|
return updateTsProject(options);
|
|
1377
1612
|
}
|
|
1613
|
+
export async function initRestProject(options) {
|
|
1614
|
+
const outDir = path.resolve(options.outDir);
|
|
1615
|
+
await ensureEmptyDir(outDir, Boolean(options.force));
|
|
1616
|
+
const ir = await loadIrFromTypeSpec(options.tspPath);
|
|
1617
|
+
if (ir.connection.graphApiVersion === "beta" && !options.usePreviewFeatures) {
|
|
1618
|
+
throw new Error("This schema requires Graph beta. Re-run with --use-preview-features.");
|
|
1619
|
+
}
|
|
1620
|
+
const validationMessage = formatValidationErrors(ir);
|
|
1621
|
+
if (validationMessage) {
|
|
1622
|
+
throw new Error(`Schema validation failed:\n${validationMessage}`);
|
|
1623
|
+
}
|
|
1624
|
+
const copiedTspPath = path.join(outDir, "schema.tsp");
|
|
1625
|
+
await copyFile(path.resolve(options.tspPath), copiedTspPath);
|
|
1626
|
+
await writeFile(path.join(outDir, COCOGEN_CONFIG_FILE), projectConfigContents(outDir, copiedTspPath, "rest"), "utf8");
|
|
1627
|
+
await writeRestFiles(outDir, ir);
|
|
1628
|
+
return { outDir, ir };
|
|
1629
|
+
}
|
|
1378
1630
|
export async function initTsProject(options) {
|
|
1379
1631
|
const outDir = path.resolve(options.outDir);
|
|
1380
1632
|
await ensureEmptyDir(outDir, Boolean(options.force));
|