- Add Legal Office of the Master seal (SVG design with Maltese Cross, scales of justice, legal scroll) - Create legal-office-manifest-template.json for Legal Office credentials - Update SEAL_MAPPING.md and DESIGN_GUIDE.md with Legal Office seal documentation - Complete Azure CDN infrastructure deployment: - Resource group, storage account, and container created - 17 PNG seal files uploaded to Azure Blob Storage - All manifest templates updated with Azure URLs - Configuration files generated (azure-cdn-config.env) - Add comprehensive Azure CDN setup scripts and documentation - Fix manifest URL generation to prevent double slashes - Verify all seals accessible via HTTPS
34 lines
1.1 KiB
TypeScript
34 lines
1.1 KiB
TypeScript
/**
|
|
* Workflow orchestration package
|
|
* Supports both Temporal and AWS Step Functions
|
|
*/
|
|
|
|
// Export temporal types (these are the primary types)
|
|
export * from './temporal';
|
|
// Step-functions types conflict with temporal, so we only export the client
|
|
export {
|
|
getStepFunctionsWorkflowClient,
|
|
} from './step-functions';
|
|
|
|
export type WorkflowProvider = 'temporal' | 'step-functions';
|
|
|
|
export interface WorkflowClient {
|
|
startCredentialIssuanceWorkflow(input: unknown): Promise<string>;
|
|
getWorkflowStatus(workflowId: string): Promise<unknown>;
|
|
cancelWorkflow?(workflowId: string): Promise<void>;
|
|
stopWorkflow?(workflowId: string, error?: string): Promise<void>;
|
|
}
|
|
|
|
/**
|
|
* Get workflow client based on provider
|
|
*/
|
|
export function getWorkflowClient(provider: WorkflowProvider = 'temporal'): WorkflowClient {
|
|
if (provider === 'step-functions') {
|
|
const { getStepFunctionsWorkflowClient } = require('./step-functions');
|
|
return getStepFunctionsWorkflowClient();
|
|
} else {
|
|
const { getTemporalWorkflowClient } = require('./temporal');
|
|
return getTemporalWorkflowClient();
|
|
}
|
|
}
|