@mcp-consultant-tools/powerplatform-core 26.0.0-beta.8 → 26.0.0
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/build/auth/index.d.ts +8 -2
- package/build/auth/index.d.ts.map +1 -1
- package/build/auth/index.js +8 -2
- package/build/auth/index.js.map +1 -1
- package/build/auth/interactive-auth.d.ts +3 -0
- package/build/auth/interactive-auth.d.ts.map +1 -1
- package/build/auth/interactive-auth.js +4 -0
- package/build/auth/interactive-auth.js.map +1 -1
- package/build/auth/service-principal-auth.d.ts +5 -5
- package/build/auth/service-principal-auth.d.ts.map +1 -1
- package/build/auth/service-principal-auth.js +24 -27
- package/build/auth/service-principal-auth.js.map +1 -1
- package/build/client/PowerPlatformClient.d.ts +7 -1
- package/build/client/PowerPlatformClient.d.ts.map +1 -1
- package/build/client/PowerPlatformClient.js +9 -1
- package/build/client/PowerPlatformClient.js.map +1 -1
- package/build/index.d.ts +3 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +1 -0
- package/build/index.js.map +1 -1
- package/build/services/FlowService.d.ts +9 -3
- package/build/services/FlowService.d.ts.map +1 -1
- package/build/services/FlowService.js +104 -60
- package/build/services/FlowService.js.map +1 -1
- package/build/services/IntegrationAuditService.d.ts +160 -0
- package/build/services/IntegrationAuditService.d.ts.map +1 -0
- package/build/services/IntegrationAuditService.js +537 -0
- package/build/services/IntegrationAuditService.js.map +1 -0
- package/build/services/PluginDeploymentService.d.ts +32 -0
- package/build/services/PluginDeploymentService.d.ts.map +1 -1
- package/build/services/PluginDeploymentService.js +126 -0
- package/build/services/PluginDeploymentService.js.map +1 -1
- package/build/services/SolutionService.d.ts +16 -1
- package/build/services/SolutionService.d.ts.map +1 -1
- package/build/services/SolutionService.js +36 -3
- package/build/services/SolutionService.js.map +1 -1
- package/build/services/index.d.ts +3 -1
- package/build/services/index.d.ts.map +1 -1
- package/build/services/index.js +2 -0
- package/build/services/index.js.map +1 -1
- package/build/utils/complexity-calculator.d.ts +58 -0
- package/build/utils/complexity-calculator.d.ts.map +1 -0
- package/build/utils/complexity-calculator.js +267 -0
- package/build/utils/complexity-calculator.js.map +1 -0
- package/build/utils/index.d.ts +1 -0
- package/build/utils/index.d.ts.map +1 -1
- package/build/utils/index.js +2 -0
- package/build/utils/index.js.map +1 -1
- package/package.json +2 -1
|
@@ -480,66 +480,56 @@ export class FlowService {
|
|
|
480
480
|
return summary;
|
|
481
481
|
}
|
|
482
482
|
/**
|
|
483
|
-
* Get flow run history for a specific Power Automate flow using the
|
|
484
|
-
*
|
|
483
|
+
* Get flow run history for a specific Power Automate flow using the Dataverse flowruns table.
|
|
484
|
+
* Uses the Elastic table approach which works with standard Dataverse permissions.
|
|
485
485
|
*/
|
|
486
486
|
async getFlowRuns(flowId, options = {}) {
|
|
487
487
|
const { status, startedAfter, startedBefore, maxRecords = 50, } = options;
|
|
488
488
|
// Enforce max limit
|
|
489
489
|
const limit = Math.min(maxRecords, 250);
|
|
490
490
|
try {
|
|
491
|
-
|
|
492
|
-
const
|
|
493
|
-
// Build URL with query parameters
|
|
494
|
-
const queryParams = [`api-version=2016-11-01`, `$top=${limit + 1}`];
|
|
495
|
-
// Build OData filter conditions
|
|
496
|
-
const filterConditions = [];
|
|
491
|
+
// Build OData filter conditions for the flowruns Elastic table
|
|
492
|
+
const filterConditions = [`_workflow_value eq '${flowId}'`];
|
|
497
493
|
if (status) {
|
|
494
|
+
// Map common status names to flowruns table status values
|
|
498
495
|
filterConditions.push(`status eq '${status}'`);
|
|
499
496
|
}
|
|
500
497
|
if (startedAfter) {
|
|
501
|
-
filterConditions.push(`
|
|
498
|
+
filterConditions.push(`starttime ge ${startedAfter}`);
|
|
502
499
|
}
|
|
503
500
|
if (startedBefore) {
|
|
504
|
-
filterConditions.push(`
|
|
505
|
-
}
|
|
506
|
-
if (filterConditions.length > 0) {
|
|
507
|
-
queryParams.push(`$filter=${filterConditions.join(' and ')}`);
|
|
501
|
+
filterConditions.push(`starttime le ${startedBefore}`);
|
|
508
502
|
}
|
|
509
|
-
const
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
headers: {
|
|
514
|
-
Authorization: `Bearer ${token}`,
|
|
515
|
-
Accept: 'application/json',
|
|
516
|
-
},
|
|
517
|
-
});
|
|
518
|
-
const runsData = response.data?.value || [];
|
|
503
|
+
const filterString = filterConditions.join(' and ');
|
|
504
|
+
// Query the flowruns Elastic table via Dataverse API
|
|
505
|
+
const response = await this.client.makeRequest(`api/data/v9.2/flowruns?$filter=${filterString}&$select=flowrunid,status,starttime,endtime,errorcode,errormessage,duration,triggertype&$orderby=starttime desc&$top=${limit + 1}`);
|
|
506
|
+
const runsData = response.value || [];
|
|
519
507
|
const hasMore = runsData.length > limit;
|
|
520
508
|
const trimmedRuns = hasMore ? runsData.slice(0, limit) : runsData;
|
|
521
509
|
const formattedRuns = trimmedRuns.map((run) => {
|
|
522
|
-
const
|
|
523
|
-
const
|
|
524
|
-
const
|
|
510
|
+
const errorCode = run.errorcode;
|
|
511
|
+
const errorMessage = run.errormessage;
|
|
512
|
+
const triggerType = run.triggertype;
|
|
525
513
|
return {
|
|
526
|
-
runId: run.
|
|
514
|
+
runId: run.flowrunid,
|
|
527
515
|
flowId,
|
|
528
|
-
status:
|
|
529
|
-
startTime:
|
|
530
|
-
endTime:
|
|
531
|
-
trigger:
|
|
532
|
-
name:
|
|
533
|
-
status:
|
|
534
|
-
startTime:
|
|
535
|
-
endTime:
|
|
516
|
+
status: run.status,
|
|
517
|
+
startTime: run.starttime,
|
|
518
|
+
endTime: run.endtime || null,
|
|
519
|
+
trigger: triggerType ? {
|
|
520
|
+
name: triggerType,
|
|
521
|
+
status: run.status,
|
|
522
|
+
startTime: run.starttime,
|
|
523
|
+
endTime: run.endtime || null,
|
|
536
524
|
} : null,
|
|
537
|
-
error:
|
|
538
|
-
code:
|
|
539
|
-
message:
|
|
525
|
+
error: (errorCode || errorMessage) ? {
|
|
526
|
+
code: errorCode || 'Unknown',
|
|
527
|
+
message: errorMessage || 'Unknown error',
|
|
540
528
|
} : null,
|
|
541
529
|
};
|
|
542
530
|
});
|
|
531
|
+
// Get environment ID for response (informational only)
|
|
532
|
+
const environmentId = await this.getEnvironmentId();
|
|
543
533
|
return {
|
|
544
534
|
flowId,
|
|
545
535
|
environmentId,
|
|
@@ -558,24 +548,47 @@ export class FlowService {
|
|
|
558
548
|
const err = error;
|
|
559
549
|
// Provide helpful error messages for common issues
|
|
560
550
|
const apiError = err.response?.data?.error;
|
|
561
|
-
if (
|
|
562
|
-
throw new Error(`Flow not found: ${flowId}. Verify the flow ID is correct
|
|
551
|
+
if (err.response?.status === 404) {
|
|
552
|
+
throw new Error(`Flow runs not found for flow: ${flowId}. Verify the flow ID is correct.`);
|
|
563
553
|
}
|
|
564
554
|
if (err.response?.status === 403) {
|
|
565
|
-
throw new Error(`Access denied to
|
|
555
|
+
throw new Error(`Access denied to flowruns table. Ensure the service principal has read access to the flowruns Elastic table.`);
|
|
566
556
|
}
|
|
567
557
|
const errorDetails = apiError || err.response?.data || err.message;
|
|
568
558
|
throw new Error(`Failed to get flow runs: ${err.message} - ${JSON.stringify(errorDetails)}`);
|
|
569
559
|
}
|
|
570
560
|
}
|
|
571
561
|
/**
|
|
572
|
-
* Get detailed flow run information
|
|
562
|
+
* Get detailed flow run information including action-level outputs and errors.
|
|
563
|
+
* Uses the Flow API (api.flow.microsoft.com) with $expand to get action details.
|
|
564
|
+
* For failed actions, fetches the outputsLink to get the detailed error message.
|
|
565
|
+
*
|
|
566
|
+
* Note: The runId can be either:
|
|
567
|
+
* - The Flow API run name (e.g., "08584325684145343572674129072CU28")
|
|
568
|
+
* - The Dataverse flowrunid GUID (will be converted via clienttrackingid lookup)
|
|
573
569
|
*/
|
|
574
570
|
async getFlowRunDetails(flowId, runId) {
|
|
575
571
|
try {
|
|
576
572
|
const environmentId = await this.getEnvironmentId();
|
|
577
|
-
const token = await this.client.
|
|
578
|
-
|
|
573
|
+
const token = await this.client.getManagementToken();
|
|
574
|
+
// If runId looks like a GUID, try to get the name from Dataverse flowruns table
|
|
575
|
+
let flowApiRunId = runId;
|
|
576
|
+
if (runId.includes('-') && runId.length === 36) {
|
|
577
|
+
// This is a flowrunid GUID from flowruns table, need to get the name field
|
|
578
|
+
// Note: flowruns is an Elastic table (Cosmos-backed), so we use $filter instead of key-based retrieval
|
|
579
|
+
try {
|
|
580
|
+
const response = await this.client.makeRequest(`api/data/v9.2/flowruns?$filter=flowrunid eq ${runId}&$select=name`);
|
|
581
|
+
if (response.value && response.value.length > 0) {
|
|
582
|
+
flowApiRunId = response.value[0].name || runId;
|
|
583
|
+
}
|
|
584
|
+
}
|
|
585
|
+
catch {
|
|
586
|
+
// If lookup fails, try the original ID
|
|
587
|
+
flowApiRunId = runId;
|
|
588
|
+
}
|
|
589
|
+
}
|
|
590
|
+
// Use Flow API with $expand to get action details in one call
|
|
591
|
+
const url = `https://api.flow.microsoft.com/providers/Microsoft.ProcessSimple/environments/${environmentId}/flows/${flowId}/runs/${flowApiRunId}?$expand=properties/actions&api-version=2016-11-01`;
|
|
579
592
|
const response = await axios({
|
|
580
593
|
method: 'GET',
|
|
581
594
|
url,
|
|
@@ -588,9 +601,12 @@ export class FlowService {
|
|
|
588
601
|
const properties = runData.properties || {};
|
|
589
602
|
const result = {
|
|
590
603
|
flowId,
|
|
591
|
-
runId,
|
|
604
|
+
runId: flowApiRunId,
|
|
605
|
+
originalRunId: runId,
|
|
592
606
|
name: runData.name,
|
|
593
607
|
status: properties.status,
|
|
608
|
+
code: properties.code,
|
|
609
|
+
error: properties.error,
|
|
594
610
|
startTime: properties.startTime,
|
|
595
611
|
endTime: properties.endTime,
|
|
596
612
|
trigger: {
|
|
@@ -598,8 +614,6 @@ export class FlowService {
|
|
|
598
614
|
status: properties.trigger?.status,
|
|
599
615
|
startTime: properties.trigger?.startTime,
|
|
600
616
|
endTime: properties.trigger?.endTime,
|
|
601
|
-
inputsLink: properties.trigger?.inputsLink?.uri,
|
|
602
|
-
outputsLink: properties.trigger?.outputsLink?.uri,
|
|
603
617
|
},
|
|
604
618
|
actions: {},
|
|
605
619
|
actionsSummary: {
|
|
@@ -609,24 +623,46 @@ export class FlowService {
|
|
|
609
623
|
skipped: 0,
|
|
610
624
|
other: 0,
|
|
611
625
|
},
|
|
626
|
+
failedActionErrors: [],
|
|
612
627
|
};
|
|
613
628
|
const actions = result.actions;
|
|
614
629
|
const summary = result.actionsSummary;
|
|
615
|
-
|
|
616
|
-
|
|
630
|
+
const failedErrors = result.failedActionErrors;
|
|
631
|
+
// Process actions from the expanded response
|
|
632
|
+
if (properties.actions) {
|
|
633
|
+
for (const [actionName, actionData] of Object.entries(properties.actions)) {
|
|
617
634
|
const action = actionData;
|
|
618
|
-
|
|
635
|
+
const status = (action.status || '').toLowerCase();
|
|
636
|
+
const outputsLink = action.outputsLink?.uri;
|
|
637
|
+
const actionResult = {
|
|
619
638
|
status: action.status,
|
|
639
|
+
code: action.code,
|
|
620
640
|
startTime: action.startTime,
|
|
621
641
|
endTime: action.endTime,
|
|
622
|
-
|
|
623
|
-
inputsLink: action.inputsLink?.uri,
|
|
624
|
-
outputsLink: action.outputsLink?.uri,
|
|
625
|
-
error: action.error || null,
|
|
626
|
-
code: action.code || null,
|
|
642
|
+
error: null,
|
|
627
643
|
};
|
|
644
|
+
// For failed actions, fetch the outputsLink to get detailed error
|
|
645
|
+
if (status === 'failed' && outputsLink) {
|
|
646
|
+
try {
|
|
647
|
+
// outputsLink has SAS token, no auth needed
|
|
648
|
+
const outputResponse = await axios.get(outputsLink);
|
|
649
|
+
const outputData = outputResponse.data;
|
|
650
|
+
if (outputData?.body?.error) {
|
|
651
|
+
actionResult.error = outputData.body.error;
|
|
652
|
+
failedErrors.push({
|
|
653
|
+
action: actionName,
|
|
654
|
+
code: outputData.body.error.code || action.code || 'Unknown',
|
|
655
|
+
message: outputData.body.error.message || 'Unknown error',
|
|
656
|
+
});
|
|
657
|
+
}
|
|
658
|
+
}
|
|
659
|
+
catch {
|
|
660
|
+
// If fetch fails, use what we have
|
|
661
|
+
actionResult.error = { code: action.code, message: 'Could not fetch detailed error' };
|
|
662
|
+
}
|
|
663
|
+
}
|
|
664
|
+
actions[actionName] = actionResult;
|
|
628
665
|
summary.total++;
|
|
629
|
-
const status = (action.status || '').toLowerCase();
|
|
630
666
|
if (status === 'succeeded') {
|
|
631
667
|
summary.succeeded++;
|
|
632
668
|
}
|
|
@@ -656,7 +692,7 @@ export class FlowService {
|
|
|
656
692
|
async cancelFlowRun(flowId, runId) {
|
|
657
693
|
try {
|
|
658
694
|
const environmentId = await this.getEnvironmentId();
|
|
659
|
-
const token = await this.client.
|
|
695
|
+
const token = await this.client.getManagementToken();
|
|
660
696
|
// Get current run status first
|
|
661
697
|
const runDetails = await this.getFlowRunDetails(flowId, runId);
|
|
662
698
|
const status = runDetails.status || '';
|
|
@@ -665,7 +701,7 @@ export class FlowService {
|
|
|
665
701
|
if (terminalStates.includes(status)) {
|
|
666
702
|
throw new Error(`Cannot cancel flow run - already in terminal state: ${status}`);
|
|
667
703
|
}
|
|
668
|
-
const url = `https://
|
|
704
|
+
const url = `https://api.flow.microsoft.com/providers/Microsoft.ProcessSimple/environments/${environmentId}/flows/${flowId}/runs/${runId}/cancel?api-version=2016-11-01`;
|
|
669
705
|
await axios.post(url, {}, {
|
|
670
706
|
headers: {
|
|
671
707
|
Authorization: `Bearer ${token}`,
|
|
@@ -691,7 +727,7 @@ export class FlowService {
|
|
|
691
727
|
async resubmitFlowRun(flowId, runId) {
|
|
692
728
|
try {
|
|
693
729
|
const environmentId = await this.getEnvironmentId();
|
|
694
|
-
const token = await this.client.
|
|
730
|
+
const token = await this.client.getManagementToken();
|
|
695
731
|
// Get trigger name from flow definition
|
|
696
732
|
const flowDef = await this.getFlowDefinition(flowId, false);
|
|
697
733
|
const flowDefinition = flowDef.flowDefinition;
|
|
@@ -699,7 +735,7 @@ export class FlowService {
|
|
|
699
735
|
const definition = properties?.definition;
|
|
700
736
|
const triggers = definition?.triggers;
|
|
701
737
|
const triggerName = triggers ? Object.keys(triggers)[0] : 'manual';
|
|
702
|
-
const url = `https://
|
|
738
|
+
const url = `https://api.flow.microsoft.com/providers/Microsoft.ProcessSimple/environments/${environmentId}/flows/${flowId}/triggers/${triggerName}/histories/${runId}/resubmit?api-version=2016-11-01`;
|
|
703
739
|
const response = await axios.post(url, {}, {
|
|
704
740
|
headers: {
|
|
705
741
|
Authorization: `Bearer ${token}`,
|
|
@@ -721,9 +757,17 @@ export class FlowService {
|
|
|
721
757
|
}
|
|
722
758
|
}
|
|
723
759
|
async getEnvironmentId() {
|
|
760
|
+
// ALWAYS check env var first - it takes precedence over cached/fallback values
|
|
761
|
+
const envId = process.env.POWERPLATFORM_ENVIRONMENT_ID;
|
|
762
|
+
if (envId) {
|
|
763
|
+
this.environmentId = envId;
|
|
764
|
+
return this.environmentId;
|
|
765
|
+
}
|
|
766
|
+
// Return cached value if we have one and no env var override
|
|
724
767
|
if (this.environmentId) {
|
|
725
768
|
return this.environmentId;
|
|
726
769
|
}
|
|
770
|
+
// Fall back to Dataverse organization ID (may not work for all Flow API operations)
|
|
727
771
|
const orgResponse = await this.client.makeRequest('api/data/v9.2/organizations?$select=organizationid');
|
|
728
772
|
if (!orgResponse.value || orgResponse.value.length === 0) {
|
|
729
773
|
throw new Error('Could not retrieve organization ID');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowService.js","sourceRoot":"","sources":["../../src/services/FlowService.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAmE1B;;GAEG;AACH,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC;IACvC,+BAA+B;IAC/B,4BAA4B;IAC5B,wBAAwB;IACxB,0BAA0B;IAC1B,8BAA8B;IAC9B,+BAA+B;IAC/B,kBAAkB;IAClB,sBAAsB;IACtB,oBAAoB;IACpB,iCAAiC;IACjC,oBAAoB;IACpB,gBAAgB;IAChB,8BAA8B;IAC9B,4BAA4B;IAC5B,+BAA+B;IAC/B,oCAAoC;IACpC,6BAA6B;IAC7B,wBAAwB;IACxB,yBAAyB;IACzB,sCAAsC;IACtC,uCAAuC;IACvC,uCAAuC;IACvC,sBAAsB;IACtB,UAAU;IACV,+DAA+D;IAC/D,8DAA8D;IAC9D,mDAAmD;IACnD,mDAAmD;IACnD,qDAAqD;IACrD,4DAA4D;IAC5D,yCAAyC;IACzC,6BAA6B;IAC7B,sCAAsC;IACtC,qBAAqB;IACrB,0BAA0B;IAC1B,2BAA2B;CAC5B,CAAC,CAAC;AAEH,MAAM,OAAO,WAAW;IAGF;IAFZ,aAAa,GAAkB,IAAI,CAAC;IAE5C,YAAoB,MAA2B;QAA3B,WAAM,GAAN,MAAM,CAAqB;IAAG,CAAC;IAEnD;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,UAA6B,EAAE;QAC5C,MAAM,EACJ,UAAU,GAAG,KAAK,EAClB,UAAU,GAAG,EAAE,EACf,uBAAuB,GAAG,IAAI,EAC9B,aAAa,GAAG,IAAI,EACpB,mBAAmB,GAAG,IAAI,EAC1B,YAAY,GACb,GAAG,OAAO,CAAC;QAEZ,MAAM,gBAAgB,GAAa,CAAC,eAAe,CAAC,CAAC;QAErD,IAAI,UAAU,EAAE,CAAC;YACf,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,uBAAuB,EAAE,CAAC;YAC5B,gBAAgB,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrD,gBAAgB,CAAC,IAAI,CAAC,kBAAkB,WAAW,IAAI,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEpD,MAAM,kBAAkB,GAAG,aAAa,IAAI,mBAAmB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAEpE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAGzC,mCAAmC,YAAY,iNAAiN,YAAY,EAAE,CAC/Q,CAAC;QAEF,MAAM,cAAc,GAAG;YACrB,gBAAgB,EAAE,CAAC;YACnB,MAAM,EAAE,CAAC;YACT,YAAY,EAAE,CAAC;SAChB,CAAC;QAEF,IAAI,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC;QAEhC,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC;YACzC,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC5C,MAAM,UAAU,GAAI,IAAI,CAAC,UAAoC,EAAE,QAAQ,CAAC;gBACxE,OAAO,UAAU,KAAK,QAAQ,CAAC;YACjC,CAAC,CAAC,CAAC;YACH,cAAc,CAAC,MAAM,GAAG,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC;QAC7D,CAAC;QAED,IAAI,mBAAmB,EAAE,CAAC;YACxB,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC;YACzC,aAAa,GAAG,aAAa,CAAC,MAAM,CAClC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAc,CAAC,CAC7D,CAAC;YACF,cAAc,CAAC,YAAY,GAAG,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC;QACnE,CAAC;QAED,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,GAAG,UAAU,CAAC;QAClD,MAAM,YAAY,GAAG,OAAO;YAC1B,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC;YACpC,CAAC,CAAC,aAAa,CAAC;QAElB,MAAM,cAAc,GAAkB,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAChE,UAAU,EAAE,IAAI,CAAC,UAAoB;YACrC,IAAI,EAAE,IAAI,CAAC,IAAc;YACzB,WAAW,EAAE,IAAI,CAAC,WAA4B;YAC9C,KAAK,EACH,IAAI,CAAC,SAAS,KAAK,CAAC;gBAClB,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC;oBACpB,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,WAAW;YACnB,SAAS,EAAE,IAAI,CAAC,SAAmB;YACnC,UAAU,EAAE,IAAI,CAAC,UAAoB;YACrC,IAAI,EACF,IAAI,CAAC,IAAI,KAAK,CAAC;gBACb,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;oBACf,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,UAAU;YAClB,aAAa,EAAE,IAAI,CAAC,aAA8B;YAClD,SAAS,EAAE,IAAI,CAAC,SAAoB;YACpC,OAAO,EAAE,IAAI,CAAC,cAAwB;YACtC,UAAU,EAAE,IAAI,CAAC,UAAoB;YACrC,UAAU,EAAG,IAAI,CAAC,UAAoC,EAAE,QAAQ,IAAI,IAAI;YACxE,SAAS,EAAE,IAAI,CAAC,SAAmB;SACpC,CAAC,CAAC,CAAC;QAEJ,OAAO;YACL,UAAU,EAAE,cAAc,CAAC,MAAM;YACjC,OAAO;YACP,YAAY,EAAE,UAAU;YACxB,QAAQ,EAAE;gBACR,gBAAgB,EAAE,cAAc,CAAC,gBAAgB;gBACjD,MAAM,EAAE,cAAc,CAAC,MAAM;gBAC7B,YAAY,EAAE,cAAc,CAAC,YAAY;gBACzC,KAAK,EAAE,cAAc,CAAC,MAAM,GAAG,cAAc,CAAC,YAAY;aAC3D;YACD,aAAa,EAAE;gBACb,uBAAuB;gBACvB,aAAa;gBACb,mBAAmB;gBACnB,YAAY;aACb;YACD,KAAK,EAAE,cAAc;SACtB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACnB,UAQI,EAAE;QAON,MAAM,EACJ,IAAI,EACJ,aAAa,EACb,WAAW,EACX,QAAQ,EACR,SAAS,EACT,kBAAkB,GAAG,IAAI,EACzB,UAAU,GAAG,EAAE,GAChB,GAAG,OAAO,CAAC;QAEZ,MAAM,gBAAgB,GAAa,EAAE,CAAC;QAEtC,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC7C,gBAAgB,CAAC,IAAI,CAAC,kBAAkB,WAAW,IAAI,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YAClB,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,aAAa,GAAG,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,kBAAkB,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC3D,gBAAgB,CAAC,IAAI,CAAC,yBAAyB,kBAAkB,IAAI,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,gBAAgB,CAAC,IAAI,CAAC,eAAe,QAAQ,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,SAAS,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,YAAY,GAChB,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,MAAM,YAAY,GAAG,UAAU,GAAG,CAAC,CAAC;QAEpC,MAAM,YAAY,GAAG,kBAAkB;YACrC,CAAC,CAAC,4HAA4H;YAC9H,CAAC,CAAC,gHAAgH,CAAC;QAErH,MAAM,QAAQ,GAAG,YAAY;YAC3B,CAAC,CAAC,mCAAmC,YAAY,YAAY,YAAY,mGAAmG,YAAY,EAAE;YAC1L,CAAC,CAAC,mCAAmC,YAAY,mGAAmG,YAAY,EAAE,CAAC;QAErK,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAE5C,QAAQ,CAAC,CAAC;QAEZ,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC;QACnD,MAAM,SAAS,GAAG,OAAO;YACvB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC;YACrC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAEnB,MAAM,kBAAkB,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACtD,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,WAAW,EAAE,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;YAClE,KAAK,EACH,QAAQ,CAAC,SAAS,KAAK,CAAC;gBACtB,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,QAAQ,CAAC,SAAS,KAAK,CAAC;oBACxB,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,WAAW;YACnB,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,QAAQ,EACN,QAAQ,CAAC,QAAQ,KAAK,CAAC;gBACrB,CAAC,CAAC,kBAAkB;gBACpB,CAAC,CAAC,QAAQ,CAAC,QAAQ,KAAK,CAAC;oBACvB,CAAC,CAAC,qBAAqB;oBACvB,CAAC,CAAC,UAAU,QAAQ,CAAC,QAAQ,GAAG;YACtC,YAAY,EAAE,QAAQ,CAAC,QAAQ;YAC/B,IAAI,EACF,QAAQ,CAAC,IAAI,KAAK,CAAC;gBACjB,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC;oBACnB,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,UAAU;YAClB,QAAQ,EAAE,QAAQ,CAAC,IAAI;YACvB,aAAa,EAAE,QAAQ,CAAC,aAAa;YACrC,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,OAAO,EAAE,QAAQ,CAAC,cAAc;YAChC,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,SAAS,EAAG,QAAQ,CAAC,SAAmC,EAAE,QAAQ;YAClE,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,UAAU,EAAG,QAAQ,CAAC,UAAoC,EAAE,QAAQ;SACrE,CAAC,CAAC,CAAC;QAEJ,OAAO;YACL,UAAU,EAAE,kBAAkB,CAAC,MAAM;YACrC,OAAO;YACP,YAAY,EAAE,UAAU;YACxB,SAAS,EAAE,kBAAkB;SAC9B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CACrB,MAAc,EACd,UAAmB,KAAK;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CACxC,2BAA2B,MAAM,mNAAmN,CACrP,CAAC;QAEF,IAAI,cAAc,GAAG,IAAI,CAAC;QAC1B,IAAI,WAAW,GAAG,IAAI,CAAC;QAEvB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAoB,CAAC,CAAC;gBAEvD,IAAI,OAAO,IAAI,cAAc,EAAE,CAAC;oBAC9B,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,cAAc,GAAG;oBACf,UAAU,EAAE,iCAAiC;oBAC7C,GAAG,EAAG,IAAI,CAAC,UAAqB,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK;iBAC5D,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAG;YACjB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,KAAK,EACH,IAAI,CAAC,SAAS,KAAK,CAAC;gBAClB,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC;oBACpB,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,WAAW;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,IAAI,EACF,IAAI,CAAC,IAAI,KAAK,CAAC;gBACb,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;oBACf,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,UAAU;YAClB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAG,IAAI,CAAC,SAAmC,EAAE,QAAQ;YAC9D,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,UAAU,EAAG,IAAI,CAAC,UAAoC,EAAE,QAAQ;SACjE,CAAC;QAEF,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO;gBACL,GAAG,UAAU;gBACb,OAAO,EAAE,WAAW;gBACpB,IAAI,EAAE,mDAAmD;aAC1D,CAAC;QACJ,CAAC;QAED,OAAO;YACL,GAAG,UAAU;YACb,cAAc;SACf,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,OAAgC;QAC/C,MAAM,OAAO,GAA4B;YACvC,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,IAAI,GAAG,EAAU;YAC7B,WAAW,EAAE,CAAC;YACd,aAAa,EAAE,KAAK;YACpB,QAAQ,EAAE,KAAK;YACf,gBAAgB,EAAE,KAAK;YACvB,cAAc,EAAE,IAAI,GAAG,EAAU;YACjC,WAAW,EAAE,QAAQ;YACrB,aAAa,EAAE,EAAc;YAC7B,gBAAgB,EAAE,IAAI,GAAG,EAAU;SACpC,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,OAAO,CAAC,UAAqC,CAAC;YACjE,MAAM,UAAU,GAAG,UAAU,EAAE,UAAqC,CAAC;YAErE,8BAA8B;YAC9B,IAAI,UAAU,EAAE,QAAQ,EAAE,CAAC;gBACzB,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAmC,CAAC;gBAChE,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC3C,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBACpC,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAA4B,CAAC;oBACjE,OAAO,CAAC,OAAO,GAAG;wBAChB,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,OAAO,CAAC,IAAI;wBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;wBAClB,UAAU,EAAE,OAAO,CAAC,UAAU;qBAC/B,CAAC;oBAEF,kCAAkC;oBAClC,IACE,OAAO,CAAC,IAAI,KAAK,0BAA0B;wBAC3C,OAAO,CAAC,IAAI,KAAK,mBAAmB,EACpC,CAAC;wBACD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAiC,CAAC;wBACzD,MAAM,UAAU,GAAG,MAAM,EAAE,UAAqC,CAAC;wBACjE,MAAM,UAAU,GAAG,UAAU,EAAE,UAAoB,CAAC;wBACpD,MAAM,IAAI,GAAG,MAAM,EAAE,IAA+B,CAAC;wBACrD,MAAM,WAAW,GAAI,IAAI,EAAE,WAAsB,IAAI,EAAE,CAAC;wBAExD,IAAI,UAAU,EAAE,CAAC;4BACf,IACE,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC;gCAC9B,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,EAC7B,CAAC;gCACD,OAAO,CAAC,WAAW,GAAG,GAAG,UAAU,SAAS,CAAC;4BAC/C,CAAC;iCAAM,IACL,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC;gCAC9B,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC;gCAClC,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,EACjC,CAAC;gCACD,MAAM,gBAAgB,GAAG,UAAU,EAAE,gBAA0B,CAAC;gCAChE,IAAI,gBAAgB,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE,CAAC;oCAC7D,MAAM,YAAY,GAAG,gBAAgB,CAAC,QAAQ,CAC5C,qCAAqC,CACtC,CAAC;oCACF,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;wCAChC,OAAO,CAAC,aAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;oCACrD,CAAC;oCACD,OAAO,CAAC,WAAW,GAAG,GAAG,UAAU,YAAY,gBAAgB,GAAG,CAAC;gCACrE,CAAC;qCAAM,CAAC;oCACN,OAAO,CAAC,WAAW,GAAG,GAAG,UAAU,SAAS,CAAC;gCAC/C,CAAC;4BACH,CAAC;iCAAM,IACL,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC;gCAC9B,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,EACjC,CAAC;gCACD,OAAO,CAAC,WAAW,GAAG,GAAG,UAAU,SAAS,CAAC;4BAC/C,CAAC;iCAAM,CAAC;gCACN,OAAO,CAAC,WAAW,GAAG,GAAG,UAAU,IAAI,WAAW,EAAE,CAAC;4BACvD,CAAC;wBACH,CAAC;6BAAM,CAAC;4BACN,MAAM,KAAK,GAAG,IAAI,EAAE,KAAe,CAAC;4BACpC,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gCACjC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;gCACvC,OAAO,CAAC,WAAW,GAAG,GAAG,OAAO,UAAU,CAAC;4BAC7C,CAAC;iCAAM,CAAC;gCACN,OAAO,CAAC,WAAW,GAAG,GAAG,OAAO,CAAC,IAAI,UAAU,CAAC;4BAClD,CAAC;wBACH,CAAC;oBACH,CAAC;yBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;wBACzC,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;oBACpC,CAAC;yBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACnE,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC;oBACjC,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,WAAW,GAAI,OAAO,CAAC,IAAe,IAAI,SAAS,CAAC;oBAC9D,CAAC;gBACH,CAAC;YACH,CAAC;YAED,8BAA8B;YAC9B,MAAM,cAAc,GAAG,CACrB,OAAgC,EAChC,OAAe,EAAE,EACjB,EAAE;gBACF,KAAK,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC/D,MAAM,MAAM,GAAG,UAAqC,CAAC;oBACrD,MAAM,UAAU,GAAG,CAAE,MAAM,CAAC,IAAe,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;oBACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;oBAE7D,IAAI,UAAU,KAAK,IAAI,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;wBACnD,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;oBAC/B,CAAC;oBACD,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;wBACvD,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;oBAC1B,CAAC;oBAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAqC,CAAC;oBAC9D,IACE,UAAU,KAAK,OAAO;wBACtB,QAAQ;wBACR,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EACzD,CAAC;wBACD,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;oBAClC,CAAC;oBAED,mCAAmC;oBACnC,IACE,MAAM,CAAC,IAAI,KAAK,mBAAmB;wBACnC,MAAM,CAAC,IAAI,KAAK,eAAe,EAC/B,CAAC;wBACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAiC,CAAC;wBACxD,MAAM,IAAI,GAAG,MAAM,EAAE,IAA+B,CAAC;wBACrD,MAAM,WAAW,GACd,IAAI,EAAE,cAAyB;4BAC/B,IAAI,EAAE,KAAgB;4BACrB,MAAM,CAAC,QAAoC;gCAC3C,EAAE,mBAA8B,CAAC;wBACrC,IAAI,WAAW,EAAE,CAAC;4BACf,OAAO,CAAC,UAA0B,CAAC,GAAG,CACrC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,WAAW,CAC5C,CAAC;wBACJ,CAAC;wBAED,MAAM,WAAW,GAAG,IAAI,EAAE,WAAqB,CAAC;wBAChD,IACE,WAAW;4BACX;gCACE,cAAc;gCACd,cAAc;gCACd,cAAc;gCACd,cAAc;gCACd,kBAAkB;6BACnB,CAAC,QAAQ,CAAC,WAAW,CAAC,EACvB,CAAC;4BACD,MAAM,UAAU,GAAG,MAAM,EAAE,UAAqC,CAAC;4BACjE,MAAM,UAAU,GAAG,UAAU,EAAE,UAAoB,CAAC;4BACpD,IAAI,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;gCAChD,OAAO,CAAC,cAA8B,CAAC,GAAG,CACzC,UAAU,CAAC,WAAW,EAAE,CACzB,CAAC;4BACJ,CAAC;wBACH,CAAC;wBAED,0BAA0B;wBAC1B,IACE,WAAW;4BACX,CAAC;gCACC,cAAc;gCACd,cAAc;gCACd,cAAc;gCACd,cAAc;gCACd,kBAAkB;gCAClB,WAAW;gCACX,aAAa;gCACb,SAAS;gCACT,WAAW;6BACZ,CAAC,QAAQ,CAAC,WAAW,CAAC,EACvB,CAAC;4BACD,MAAM,KAAK,GAAI,IAAI,EAAE,KAAgB,IAAI,EAAE,CAAC;4BAC5C,MAAM,cAAc,GAAI,IAAI,EAAE,cAAyB,IAAI,EAAE,CAAC;4BAC9D,MAAM,oBAAoB,GACxB,KAAK,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gCACnC,cAAc,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gCAC5C,WAAW,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;4BAE3D,IAAI,oBAAoB,EAAE,CAAC;gCACxB,OAAO,CAAC,gBAAgC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;4BAC7D,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,qBAAqB;oBACpB,OAAO,CAAC,OAAqB,CAAC,IAAI,CAAC;wBAClC,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;qBAChD,CAAC,CAAC;oBAEH,8BAA8B;oBAC9B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACnB,cAAc,CAAC,MAAM,CAAC,OAAkC,EAAE,QAAQ,CAAC,CAAC;oBACtE,CAAC;oBACD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;wBAChB,cAAc,CACZ,MAAM,CAAC,IAA+B,EACtC,GAAG,QAAQ,OAAO,CACnB,CAAC;oBACJ,CAAC;oBACD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;wBAChB,cAAc,CACZ,MAAM,CAAC,IAA+B,EACtC,GAAG,QAAQ,OAAO,CACnB,CAAC;oBACJ,CAAC;oBACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;wBACjB,KAAK,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAClD,MAAM,CAAC,KAAgC,CACxC,EAAE,CAAC;4BACF,MAAM,QAAQ,GAAG,WAAsC,CAAC;4BACxD,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gCACrB,cAAc,CACZ,QAAQ,CAAC,OAAkC,EAC3C,GAAG,QAAQ,SAAS,QAAQ,EAAE,CAC/B,CAAC;4BACJ,CAAC;wBACH,CAAC;oBACH,CAAC;oBACD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACnB,cAAc,CACZ,MAAM,CAAC,OAAkC,EACzC,GAAG,QAAQ,UAAU,CACtB,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,UAAU,EAAE,OAAO,EAAE,CAAC;gBACxB,MAAM,OAAO,GAAG,UAAU,CAAC,OAAkC,CAAC;gBAC9D,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;gBAClD,cAAc,CAAC,OAAO,CAAC,CAAC;YAC1B,CAAC;YAED,yBAAyB;YACzB,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,UAAyB,CAAC,CAAC;YACnE,OAAO,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CACjC,OAAO,CAAC,cAA6B,CACtC,CAAC;YACF,OAAO,CAAC,gBAAgB,GAAG,KAAK,CAAC,IAAI,CACnC,OAAO,CAAC,gBAA+B,CACxC,CAAC;YAEF,4BAA4B;YAC5B,IAAI,UAAU,EAAE,oBAAoB,EAAE,CAAC;gBACrC,MAAM,IAAI,GAAG,UAAU,CAAC,oBAA+C,CAAC;gBACxE,OAAO,CAAC,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBAC7D,IAAI,EAAE,GAAG;oBACT,IAAI,EACA,IAAI,CAAC,GAAG,CAA6B,EAAE,GAAyB;wBAChE,EAAE,IAAI,IAAI,SAAS;iBACxB,CAAC,CAAC,CAAC;YACN,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,UAAU,GAAG,iDAAiD,CAAC;QACzE,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CACf,MAAc,EACd,UAAgC,EAAE;QAElC,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,aAAa,EACb,UAAU,GAAG,EAAE,GAChB,GAAG,OAAO,CAAC;QAEZ,oBAAoB;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QAExC,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAEjD,kCAAkC;YAClC,MAAM,WAAW,GAAa,CAAC,wBAAwB,EAAE,QAAQ,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;YAE9E,gCAAgC;YAChC,MAAM,gBAAgB,GAAa,EAAE,CAAC;YAEtC,IAAI,MAAM,EAAE,CAAC;gBACX,gBAAgB,CAAC,IAAI,CAAC,cAAc,MAAM,GAAG,CAAC,CAAC;YACjD,CAAC;YAED,IAAI,YAAY,EAAE,CAAC;gBACjB,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,YAAY,EAAE,CAAC,CAAC;YACxD,CAAC;YAED,IAAI,aAAa,EAAE,CAAC;gBAClB,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,aAAa,EAAE,CAAC,CAAC;YACzD,CAAC;YAED,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,WAAW,CAAC,IAAI,CAAC,WAAW,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAChE,CAAC;YAED,MAAM,GAAG,GAAG,+EAA+E,aAAa,UAAU,MAAM,SAAS,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAEzJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC;gBAC3B,MAAM,EAAE,KAAK;gBACb,GAAG;gBACH,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,KAAK,EAAE;oBAChC,MAAM,EAAE,kBAAkB;iBAC3B;aACF,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC;YACxC,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAElE,MAAM,aAAa,GAAqB,WAAW,CAAC,GAAG,CAAC,CAAC,GAA4B,EAAE,EAAE;gBACvF,MAAM,KAAK,GAAG,GAAG,CAAC,UAAqC,IAAI,EAAE,CAAC;gBAC9D,MAAM,WAAW,GAAG,KAAK,CAAC,OAA8C,CAAC;gBACzE,MAAM,SAAS,GAAG,KAAK,CAAC,KAA4C,CAAC;gBAErE,OAAO;oBACL,KAAK,EAAE,GAAG,CAAC,IAAc;oBACzB,MAAM;oBACN,MAAM,EAAE,KAAK,CAAC,MAAgB;oBAC9B,SAAS,EAAE,KAAK,CAAC,SAAmB;oBACpC,OAAO,EAAG,KAAK,CAAC,OAAkB,IAAI,IAAI;oBAC1C,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;wBACrB,IAAI,EAAE,WAAW,CAAC,IAAc;wBAChC,MAAM,EAAE,WAAW,CAAC,MAAgB;wBACpC,SAAS,EAAE,WAAW,CAAC,SAAmB;wBAC1C,OAAO,EAAG,WAAW,CAAC,OAAkB,IAAI,IAAI;qBACjD,CAAC,CAAC,CAAC,IAAI;oBACR,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;wBACjB,IAAI,EAAG,SAAS,CAAC,IAAe,IAAI,SAAS;wBAC7C,OAAO,EAAG,SAAS,CAAC,OAAkB,IAAI,eAAe;qBAC1D,CAAC,CAAC,CAAC,IAAI;iBACT,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,OAAO;gBACL,MAAM;gBACN,aAAa;gBACb,UAAU,EAAE,aAAa,CAAC,MAAM;gBAChC,OAAO;gBACP,aAAa,EAAE;oBACb,MAAM;oBACN,YAAY;oBACZ,aAAa;oBACb,UAAU,EAAE,KAAK;iBAClB;gBACD,IAAI,EAAE,aAAa;aACpB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,KAOX,CAAC;YAEF,mDAAmD;YACnD,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC;YAC3C,IAAI,QAAQ,EAAE,IAAI,KAAK,cAAc,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,sDAAsD,CAAC,CAAC;YACnG,CAAC;YACD,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,qHAAqH,CAAC,CAAC;YACzI,CAAC;YAED,MAAM,YAAY,GAAG,QAAQ,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC;YACnE,MAAM,IAAI,KAAK,CACb,4BAA4B,GAAG,CAAC,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAC5E,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,MAAc,EAAE,KAAa;QACnD,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAEjD,MAAM,GAAG,GAAG,+EAA+E,aAAa,UAAU,MAAM,SAAS,KAAK,yBAAyB,CAAC;YAEhK,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC;gBAC3B,MAAM,EAAE,KAAK;gBACb,GAAG;gBACH,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,KAAK,EAAE;oBAChC,MAAM,EAAE,kBAAkB;iBAC3B;aACF,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC9B,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;YAE5C,MAAM,MAAM,GAA4B;gBACtC,MAAM;gBACN,KAAK;gBACL,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,SAAS,EAAE,UAAU,CAAC,SAAS;gBAC/B,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,OAAO,EAAE;oBACP,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,IAAI;oBAC9B,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM;oBAClC,SAAS,EAAE,UAAU,CAAC,OAAO,EAAE,SAAS;oBACxC,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO;oBACpC,UAAU,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG;oBAC/C,WAAW,EAAE,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG;iBAClD;gBACD,OAAO,EAAE,EAAE;gBACX,cAAc,EAAE;oBACd,KAAK,EAAE,CAAC;oBACR,SAAS,EAAE,CAAC;oBACZ,MAAM,EAAE,CAAC;oBACT,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,CAAC;iBACT;aACF,CAAC;YAEF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAkC,CAAC;YAC1D,MAAM,OAAO,GAAG,MAAM,CAAC,cAMtB,CAAC;YAEF,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;gBAC7B,KAAK,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CACnD,UAAU,CAAC,OAAO,CAAC,IAAI,CACxB,EAAE,CAAC;oBACF,MAAM,MAAM,GAAG,UAAqC,CAAC;oBAErD,OAAO,CAAC,UAAU,CAAC,GAAG;wBACpB,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,SAAS,EAAE,MAAM,CAAC,SAAS;wBAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;wBACzB,UAAU,EAAG,MAAM,CAAC,UAA+B,EAAE,GAAG;wBACxD,WAAW,EAAG,MAAM,CAAC,WAAgC,EAAE,GAAG;wBAC1D,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI;wBAC3B,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI;qBAC1B,CAAC;oBAEF,OAAO,CAAC,KAAK,EAAE,CAAC;oBAChB,MAAM,MAAM,GAAG,CAAE,MAAM,CAAC,MAAiB,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;oBAC/D,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;wBAC3B,OAAO,CAAC,SAAS,EAAE,CAAC;oBACtB,CAAC;yBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAC/B,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,CAAC;yBAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBAChC,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,KAAK,EAAE,CAAC;oBAClB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,KAOX,CAAC;YACF,MAAM,YAAY,GAChB,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC;YACjE,MAAM,IAAI,KAAK,CACb,mCAAmC,GAAG,CAAC,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CACnF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa,CAAC,MAAc,EAAE,KAAa;QAC/C,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAEjD,+BAA+B;YAC/B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAA4B,CAAC;YAC1F,MAAM,MAAM,GAAI,UAAU,CAAC,MAAiB,IAAI,EAAE,CAAC;YAEnD,qCAAqC;YACrC,MAAM,cAAc,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;YAC5D,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CAAC,uDAAuD,MAAM,EAAE,CAAC,CAAC;YACnF,CAAC;YAED,MAAM,GAAG,GAAG,+EAA+E,aAAa,UAAU,MAAM,SAAS,KAAK,gCAAgC,CAAC;YAEvK,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE;gBACxB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,KAAK,EAAE;oBAChC,MAAM,EAAE,kBAAkB;iBAC3B;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM;gBACN,KAAK;gBACL,cAAc,EAAE,MAAM;aACvB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,KAOX,CAAC;YACF,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC;YACpF,MAAM,IAAI,KAAK,CACb,8BAA8B,GAAG,CAAC,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAC9E,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,KAAa;QACjD,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAEjD,wCAAwC;YACxC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAA4B,CAAC;YACvF,MAAM,cAAc,GAAG,OAAO,CAAC,cAAgD,CAAC;YAChF,MAAM,UAAU,GAAG,cAAc,EAAE,UAAiD,CAAC;YACrF,MAAM,UAAU,GAAG,UAAU,EAAE,UAAiD,CAAC;YACjF,MAAM,QAAQ,GAAG,UAAU,EAAE,QAA+C,CAAC;YAC7E,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAEnE,MAAM,GAAG,GAAG,+EAA+E,aAAa,UAAU,MAAM,aAAa,WAAW,cAAc,KAAK,kCAAkC,CAAC;YAEtM,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE;gBACzC,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,KAAK,EAAE;oBAChC,MAAM,EAAE,kBAAkB;iBAC3B;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM;gBACN,aAAa,EAAE,KAAK;gBACpB,QAAQ,EAAG,QAAQ,CAAC,IAAgC,EAAE,IAAc,IAAI,SAAS;gBACjF,WAAW;aACZ,CAAC;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,KAOX,CAAC;YACF,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC;YACpF,MAAM,IAAI,KAAK,CACb,gCAAgC,GAAG,CAAC,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAChF,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAE/C,oDAAoD,CAAC,CAAC;QAExD,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;QACzD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"FlowService.js","sourceRoot":"","sources":["../../src/services/FlowService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* IntegrationAuditService
|
|
3
|
+
*
|
|
4
|
+
* Read-only service for auditing PowerPlatform integrations.
|
|
5
|
+
* Provides tools for:
|
|
6
|
+
* - Service endpoint discovery (webhooks, Azure, REST)
|
|
7
|
+
* - Webhook registration analysis
|
|
8
|
+
* - Flow complexity scoring
|
|
9
|
+
* - Combined integration audit reports
|
|
10
|
+
*/
|
|
11
|
+
import type { PowerPlatformClient } from '../client/PowerPlatformClient.js';
|
|
12
|
+
import { type FlowComplexityResult, type RiskLevel } from '../utils/complexity-calculator.js';
|
|
13
|
+
export interface ServiceEndpoint {
|
|
14
|
+
id: string;
|
|
15
|
+
name: string;
|
|
16
|
+
url: string;
|
|
17
|
+
contractType: 'OneWay' | 'TwoWay' | 'Queue' | 'Topic' | 'Unknown';
|
|
18
|
+
authType: string;
|
|
19
|
+
connectionMode: string;
|
|
20
|
+
description: string | null;
|
|
21
|
+
messageStepCount: number;
|
|
22
|
+
isManaged: boolean;
|
|
23
|
+
createdOn: string;
|
|
24
|
+
modifiedOn: string;
|
|
25
|
+
}
|
|
26
|
+
export interface ServiceEndpointsResult {
|
|
27
|
+
endpoints: ServiceEndpoint[];
|
|
28
|
+
summary: {
|
|
29
|
+
total: number;
|
|
30
|
+
byType: Record<string, number>;
|
|
31
|
+
byAuthType: Record<string, number>;
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
export interface WebhookRegistration {
|
|
35
|
+
id: string;
|
|
36
|
+
name: string;
|
|
37
|
+
endpointUrl: string | null;
|
|
38
|
+
triggerEntity: string;
|
|
39
|
+
triggerMessage: string;
|
|
40
|
+
filteringAttributes: string[];
|
|
41
|
+
asyncMode: boolean;
|
|
42
|
+
stage: 'PreValidation' | 'PreOperation' | 'PostOperation';
|
|
43
|
+
serviceEndpointId: string | null;
|
|
44
|
+
serviceEndpointName: string | null;
|
|
45
|
+
isManaged: boolean;
|
|
46
|
+
statusCode: number;
|
|
47
|
+
enabled: boolean;
|
|
48
|
+
}
|
|
49
|
+
export interface WebhookRegistrationsResult {
|
|
50
|
+
webhooks: WebhookRegistration[];
|
|
51
|
+
summary: {
|
|
52
|
+
total: number;
|
|
53
|
+
byEntity: Record<string, number>;
|
|
54
|
+
byMessage: Record<string, number>;
|
|
55
|
+
enabledCount: number;
|
|
56
|
+
disabledCount: number;
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
export interface FlowComplexityAnalysis {
|
|
60
|
+
id: string;
|
|
61
|
+
name: string;
|
|
62
|
+
complexity: FlowComplexityResult;
|
|
63
|
+
connectors: string[];
|
|
64
|
+
triggerType: string;
|
|
65
|
+
state: string;
|
|
66
|
+
}
|
|
67
|
+
export interface FlowComplexityResult_Full {
|
|
68
|
+
flows: FlowComplexityAnalysis[];
|
|
69
|
+
summary: {
|
|
70
|
+
total: number;
|
|
71
|
+
byRiskLevel: Record<RiskLevel, number>;
|
|
72
|
+
averageComplexity: number;
|
|
73
|
+
highRiskFlows: string[];
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
export interface IntegrationAuditSummary {
|
|
77
|
+
generatedAt: string;
|
|
78
|
+
environment: string;
|
|
79
|
+
flowCount: number;
|
|
80
|
+
pluginCount: number;
|
|
81
|
+
webhookCount: number;
|
|
82
|
+
serviceEndpointCount: number;
|
|
83
|
+
overallRiskLevel: RiskLevel;
|
|
84
|
+
}
|
|
85
|
+
export interface OutboundIntegration {
|
|
86
|
+
serviceEndpoints: ServiceEndpoint[];
|
|
87
|
+
httpFlows: {
|
|
88
|
+
flowId: string;
|
|
89
|
+
flowName: string;
|
|
90
|
+
connectors: string[];
|
|
91
|
+
targetUrls: string[];
|
|
92
|
+
}[];
|
|
93
|
+
externalPlugins: {
|
|
94
|
+
assemblyName: string;
|
|
95
|
+
description: string | null;
|
|
96
|
+
isolationMode: string;
|
|
97
|
+
}[];
|
|
98
|
+
}
|
|
99
|
+
export interface InboundIntegration {
|
|
100
|
+
webhooks: WebhookRegistration[];
|
|
101
|
+
externalTriggerFlows: {
|
|
102
|
+
flowId: string;
|
|
103
|
+
flowName: string;
|
|
104
|
+
triggerType: string;
|
|
105
|
+
}[];
|
|
106
|
+
}
|
|
107
|
+
export interface IntegrationAuditReport {
|
|
108
|
+
summary: IntegrationAuditSummary;
|
|
109
|
+
outbound: OutboundIntegration;
|
|
110
|
+
inbound: InboundIntegration;
|
|
111
|
+
complexity: {
|
|
112
|
+
summary: {
|
|
113
|
+
byRiskLevel: Record<RiskLevel, number>;
|
|
114
|
+
averageScore: number;
|
|
115
|
+
};
|
|
116
|
+
highRiskFlows: FlowComplexityAnalysis[];
|
|
117
|
+
allFlows: FlowComplexityAnalysis[];
|
|
118
|
+
};
|
|
119
|
+
plugins: {
|
|
120
|
+
assemblies: unknown[];
|
|
121
|
+
byEntity: Record<string, number>;
|
|
122
|
+
};
|
|
123
|
+
riskAssessment: {
|
|
124
|
+
overallRisk: RiskLevel;
|
|
125
|
+
factors: {
|
|
126
|
+
factor: string;
|
|
127
|
+
severity: RiskLevel;
|
|
128
|
+
details: string;
|
|
129
|
+
}[];
|
|
130
|
+
recommendations: string[];
|
|
131
|
+
};
|
|
132
|
+
markdownReport: string;
|
|
133
|
+
}
|
|
134
|
+
export declare class IntegrationAuditService {
|
|
135
|
+
private client;
|
|
136
|
+
private flowService;
|
|
137
|
+
private pluginService;
|
|
138
|
+
constructor(client: PowerPlatformClient);
|
|
139
|
+
/**
|
|
140
|
+
* Get all service endpoints (webhook/Azure/REST) in the environment
|
|
141
|
+
*/
|
|
142
|
+
getServiceEndpoints(maxRecords?: number): Promise<ServiceEndpointsResult>;
|
|
143
|
+
/**
|
|
144
|
+
* Get all webhook-type SDK message processing steps
|
|
145
|
+
*/
|
|
146
|
+
getWebhookRegistrations(maxRecords?: number): Promise<WebhookRegistrationsResult>;
|
|
147
|
+
/**
|
|
148
|
+
* Analyze flow complexity for one or all flows
|
|
149
|
+
*/
|
|
150
|
+
analyzeFlowComplexity(flowId?: string, maxFlows?: number): Promise<FlowComplexityResult_Full>;
|
|
151
|
+
/**
|
|
152
|
+
* Generate a comprehensive integration audit report
|
|
153
|
+
*/
|
|
154
|
+
generateAuditReport(maxFlows?: number): Promise<IntegrationAuditReport>;
|
|
155
|
+
/**
|
|
156
|
+
* Generate markdown report from audit data
|
|
157
|
+
*/
|
|
158
|
+
private generateMarkdownReport;
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=IntegrationAuditService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IntegrationAuditService.d.ts","sourceRoot":"","sources":["../../src/services/IntegrationAuditService.ts"],"names":[],"mappings":"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"}
|