wip
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
import { AutomationEvent } from '../../application/ports/IAutomationEventPublisher'
|
||||
import { AutomationEvent } from '../../automation-application/ports/IAutomationEventPublisher'
|
||||
|
||||
export type LifecycleCallback = (event: AutomationEvent) => Promise<void> | void
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { Result } from '../../../shared/result/Result';
|
||||
import { CheckoutPrice } from '../../../domain/value-objects/CheckoutPrice';
|
||||
import { CheckoutState } from '../../../domain/value-objects/CheckoutState';
|
||||
import { CheckoutInfo } from '../../../application/ports/ICheckoutService';
|
||||
import { CheckoutPrice } from '../../../automation-domain/value-objects/CheckoutPrice';
|
||||
import { CheckoutState } from '../../../automation-domain/value-objects/CheckoutState';
|
||||
import { CheckoutInfo } from '../../../automation-application/ports/ICheckoutService';
|
||||
import { IRACING_SELECTORS } from './dom/IRacingSelectors';
|
||||
|
||||
interface Page {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { Page } from 'playwright';
|
||||
import { ILogger } from '../../../../application/ports/ILogger';
|
||||
import { ILogger } from '../../../../automation-application/ports/ILogger';
|
||||
|
||||
export class AuthenticationGuard {
|
||||
constructor(
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { Page } from 'playwright';
|
||||
import type { ILogger } from '../../../../application/ports/ILogger';
|
||||
import type { ILogger } from '../../../../automation-application/ports/ILogger';
|
||||
import type { IPlaywrightAuthFlow } from './PlaywrightAuthFlow';
|
||||
import { IRACING_URLS, IRACING_SELECTORS, IRACING_TIMEOUTS } from '../dom/IRacingSelectors';
|
||||
import { AuthenticationGuard } from './AuthenticationGuard';
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import * as fs from 'fs';
|
||||
import type { BrowserContext, Page } from 'playwright';
|
||||
|
||||
import type { IAuthenticationService } from '../../../../application/ports/IAuthenticationService';
|
||||
import type { ILogger } from '../../../../application/ports/ILogger';
|
||||
import { AuthenticationState } from '../../../../domain/value-objects/AuthenticationState';
|
||||
import { BrowserAuthenticationState } from '../../../../domain/value-objects/BrowserAuthenticationState';
|
||||
import type { IAuthenticationService } from '../../../../automation-application/ports/IAuthenticationService';
|
||||
import type { ILogger } from '../../../../automation-application/ports/ILogger';
|
||||
import { AuthenticationState } from '../../../../automation-domain/value-objects/AuthenticationState';
|
||||
import { BrowserAuthenticationState } from '../../../../automation-domain/value-objects/BrowserAuthenticationState';
|
||||
import { Result } from '../../../../shared/result/Result';
|
||||
import { PlaywrightBrowserSession } from '../core/PlaywrightBrowserSession';
|
||||
import { SessionCookieStore } from './SessionCookieStore';
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import * as fs from 'fs/promises';
|
||||
import * as path from 'path';
|
||||
import { AuthenticationState } from '../../../../domain/value-objects/AuthenticationState';
|
||||
import { CookieConfiguration } from '../../../../domain/value-objects/CookieConfiguration';
|
||||
import { AuthenticationState } from '../../../../automation-domain/value-objects/AuthenticationState';
|
||||
import { CookieConfiguration } from '../../../../automation-domain/value-objects/CookieConfiguration';
|
||||
import { Result } from '../../../../shared/result/Result';
|
||||
import type { ILogger } from '../../../../application/ports/ILogger';
|
||||
import type { ILogger } from '../../../../automation-application/ports/ILogger';
|
||||
|
||||
interface Cookie {
|
||||
name: string;
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
import type { Browser, Page, BrowserContext } from 'playwright';
|
||||
import * as fs from 'fs';
|
||||
import * as path from 'path';
|
||||
import { StepId } from '../../../../domain/value-objects/StepId';
|
||||
import { AuthenticationState } from '../../../../domain/value-objects/AuthenticationState';
|
||||
import { BrowserAuthenticationState } from '../../../../domain/value-objects/BrowserAuthenticationState';
|
||||
import { CheckoutPrice } from '../../../../domain/value-objects/CheckoutPrice';
|
||||
import { CheckoutState } from '../../../../domain/value-objects/CheckoutState';
|
||||
import { CheckoutConfirmation } from '../../../../domain/value-objects/CheckoutConfirmation';
|
||||
import type { IBrowserAutomation } from '../../../../application/ports/IScreenAutomation';
|
||||
import { StepId } from '../../../../automation-domain/value-objects/StepId';
|
||||
import { AuthenticationState } from '../../../../automation-domain/value-objects/AuthenticationState';
|
||||
import { BrowserAuthenticationState } from '../../../../automation-domain/value-objects/BrowserAuthenticationState';
|
||||
import { CheckoutPrice } from '../../../../automation-domain/value-objects/CheckoutPrice';
|
||||
import { CheckoutState } from '../../../../automation-domain/value-objects/CheckoutState';
|
||||
import { CheckoutConfirmation } from '../../../../automation-domain/value-objects/CheckoutConfirmation';
|
||||
import type { IBrowserAutomation } from '../../../../automation-application/ports/IScreenAutomation';
|
||||
import type {
|
||||
NavigationResult,
|
||||
FormFillResult,
|
||||
@@ -15,9 +15,9 @@ import type {
|
||||
WaitResult,
|
||||
ModalResult,
|
||||
AutomationResult,
|
||||
} from '../../../../application/ports/AutomationResults';
|
||||
import type { IAuthenticationService } from '../../../../application/ports/IAuthenticationService';
|
||||
import type { ILogger } from '../../../../application/ports/ILogger';
|
||||
} from '../../../../automation-application/ports/AutomationResults';
|
||||
import type { IAuthenticationService } from '../../../../automation-application/ports/IAuthenticationService';
|
||||
import type { ILogger } from '../../../../automation-application/ports/ILogger';
|
||||
import { Result } from '../../../../shared/result/Result';
|
||||
import { IRACING_SELECTORS, IRACING_URLS, IRACING_TIMEOUTS, ALL_BLOCKED_SELECTORS, BLOCKED_KEYWORDS } from '../dom/IRacingSelectors';
|
||||
import { SessionCookieStore } from '../auth/SessionCookieStore';
|
||||
@@ -25,7 +25,7 @@ import { PlaywrightBrowserSession } from './PlaywrightBrowserSession';
|
||||
import { getFixtureForStep } from '../engine/FixtureServer';
|
||||
import { BrowserModeConfigLoader, BrowserMode } from '../../../config/BrowserModeConfig';
|
||||
import { getAutomationMode } from '../../../config/AutomationConfig';
|
||||
import { PageStateValidator, PageStateValidation, PageStateValidationResult } from '../../../../domain/services/PageStateValidator';
|
||||
import { PageStateValidator, PageStateValidation, PageStateValidationResult } from '../../../../automation-domain/services/PageStateValidator';
|
||||
import { IRacingDomNavigator } from '../dom/IRacingDomNavigator';
|
||||
import { SafeClickService } from '../dom/SafeClickService';
|
||||
import { IRacingDomInteractor } from '../dom/IRacingDomInteractor';
|
||||
|
||||
@@ -4,7 +4,7 @@ import StealthPlugin from 'puppeteer-extra-plugin-stealth';
|
||||
import * as fs from 'fs';
|
||||
import * as path from 'path';
|
||||
|
||||
import type { ILogger } from '../../../../application/ports/ILogger';
|
||||
import type { ILogger } from '../../../../automation-application/ports/ILogger';
|
||||
import { BrowserModeConfigLoader, BrowserMode } from '../../../config/BrowserModeConfig';
|
||||
import { getAutomationMode } from '../../../config/AutomationConfig';
|
||||
import type { PlaywrightConfig } from './PlaywrightAutomationAdapter';
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
import type { Page } from 'playwright';
|
||||
import { StepId } from '../../../../domain/value-objects/StepId';
|
||||
import { StepId } from '../../../../automation-domain/value-objects/StepId';
|
||||
import type {
|
||||
AutomationResult,
|
||||
ClickResult,
|
||||
FormFillResult,
|
||||
} from '../../../../application/ports/AutomationResults';
|
||||
import type { IAuthenticationService } from '../../../../application/ports/IAuthenticationService';
|
||||
import type { ILogger } from '../../../../application/ports/ILogger';
|
||||
import { CheckoutPrice } from '../../../../domain/value-objects/CheckoutPrice';
|
||||
import { CheckoutState } from '../../../../domain/value-objects/CheckoutState';
|
||||
import { CheckoutConfirmation } from '../../../../domain/value-objects/CheckoutConfirmation';
|
||||
} from '../../../../automation-application/ports/AutomationResults';
|
||||
import type { IAuthenticationService } from '../../../../automation-application/ports/IAuthenticationService';
|
||||
import type { ILogger } from '../../../../automation-application/ports/ILogger';
|
||||
import { CheckoutPrice } from '../../../../automation-domain/value-objects/CheckoutPrice';
|
||||
import { CheckoutState } from '../../../../automation-domain/value-objects/CheckoutState';
|
||||
import { CheckoutConfirmation } from '../../../../automation-domain/value-objects/CheckoutConfirmation';
|
||||
import type { PlaywrightConfig } from './PlaywrightAutomationAdapter';
|
||||
import { PlaywrightBrowserSession } from './PlaywrightBrowserSession';
|
||||
import { IRacingDomNavigator } from '../dom/IRacingDomNavigator';
|
||||
@@ -19,7 +19,7 @@ import { getFixtureForStep } from '../engine/FixtureServer';
|
||||
import type {
|
||||
PageStateValidation,
|
||||
PageStateValidationResult,
|
||||
} from '../../../../domain/services/PageStateValidator';
|
||||
} from '../../../../automation-domain/services/PageStateValidator';
|
||||
import type { Result } from '../../../../shared/result/Result';
|
||||
|
||||
interface WizardStepOrchestratorDeps {
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
import type { Page } from 'playwright';
|
||||
import type { ILogger } from '../../../../application/ports/ILogger';
|
||||
import type { ILogger } from '../../../../automation-application/ports/ILogger';
|
||||
import type {
|
||||
FormFillResult,
|
||||
ClickResult,
|
||||
ModalResult,
|
||||
} from '../../../../application/ports/AutomationResults';
|
||||
import { StepId } from '../../../../domain/value-objects/StepId';
|
||||
} from '../../../../automation-application/ports/AutomationResults';
|
||||
import { StepId } from '../../../../automation-domain/value-objects/StepId';
|
||||
import type { PlaywrightConfig } from '../core/PlaywrightAutomationAdapter';
|
||||
import { PlaywrightBrowserSession } from '../core/PlaywrightBrowserSession';
|
||||
import { IRACING_SELECTORS, IRACING_TIMEOUTS } from './IRacingSelectors';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import type { Page } from 'playwright';
|
||||
import type { ILogger } from '../../../../application/ports/ILogger';
|
||||
import type { NavigationResult, WaitResult } from '../../../../application/ports/AutomationResults';
|
||||
import type { ILogger } from '../../../../automation-application/ports/ILogger';
|
||||
import type { NavigationResult, WaitResult } from '../../../../automation-application/ports/AutomationResults';
|
||||
import type { PlaywrightConfig } from '../core/PlaywrightAutomationAdapter';
|
||||
import { PlaywrightBrowserSession } from '../core/PlaywrightBrowserSession';
|
||||
import { IRACING_SELECTORS, IRACING_TIMEOUTS, IRACING_URLS } from './IRacingSelectors';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { Page } from 'playwright';
|
||||
import type { ILogger } from '../../../../application/ports/ILogger';
|
||||
import type { ILogger } from '../../../../automation-application/ports/ILogger';
|
||||
import { IRACING_SELECTORS, BLOCKED_KEYWORDS } from './IRacingSelectors';
|
||||
import type { PlaywrightConfig } from '../core/PlaywrightAutomationAdapter';
|
||||
import { PlaywrightBrowserSession } from '../core/PlaywrightBrowserSession';
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import { IAutomationEngine, ValidationResult } from '../../../../application/ports/IAutomationEngine';
|
||||
import { HostedSessionConfig } from '../../../../domain/entities/HostedSessionConfig';
|
||||
import { StepId } from '../../../../domain/value-objects/StepId';
|
||||
import type { IBrowserAutomation } from '../../../../application/ports/IScreenAutomation';
|
||||
import { ISessionRepository } from '../../../../application/ports/ISessionRepository';
|
||||
import { StepTransitionValidator } from '../../../../domain/services/StepTransitionValidator';
|
||||
import { IAutomationEngine, ValidationResult } from '../../../../automation-application/ports/IAutomationEngine';
|
||||
import { HostedSessionConfig } from '../../../../automation-domain/entities/HostedSessionConfig';
|
||||
import { StepId } from '../../../../automation-domain/value-objects/StepId';
|
||||
import type { IBrowserAutomation } from '../../../../automation-application/ports/IScreenAutomation';
|
||||
import { ISessionRepository } from '../../../../automation-application/ports/ISessionRepository';
|
||||
import { StepTransitionValidator } from '../../../../automation-domain/services/StepTransitionValidator';
|
||||
|
||||
/**
|
||||
* Real Automation Engine Adapter.
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import { IAutomationEngine, ValidationResult } from '../../../../application/ports/IAutomationEngine';
|
||||
import { HostedSessionConfig } from '../../../../domain/entities/HostedSessionConfig';
|
||||
import { StepId } from '../../../../domain/value-objects/StepId';
|
||||
import type { IBrowserAutomation } from '../../../../application/ports/IScreenAutomation';
|
||||
import { ISessionRepository } from '../../../../application/ports/ISessionRepository';
|
||||
import { StepTransitionValidator } from '../../../../domain/services/StepTransitionValidator';
|
||||
import { IAutomationEngine, ValidationResult } from '../../../../automation-application/ports/IAutomationEngine';
|
||||
import { HostedSessionConfig } from '../../../../automation-domain/entities/HostedSessionConfig';
|
||||
import { StepId } from '../../../../automation-domain/value-objects/StepId';
|
||||
import type { IBrowserAutomation } from '../../../../automation-application/ports/IScreenAutomation';
|
||||
import { ISessionRepository } from '../../../../automation-application/ports/ISessionRepository';
|
||||
import { StepTransitionValidator } from '../../../../automation-domain/services/StepTransitionValidator';
|
||||
|
||||
export class MockAutomationEngineAdapter implements IAutomationEngine {
|
||||
private isRunning = false;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { StepId } from '../../../../domain/value-objects/StepId';
|
||||
import type { IBrowserAutomation } from '../../../../application/ports/IScreenAutomation';
|
||||
import { StepId } from '../../../../automation-domain/value-objects/StepId';
|
||||
import type { IBrowserAutomation } from '../../../../automation-application/ports/IScreenAutomation';
|
||||
import {
|
||||
NavigationResult,
|
||||
FormFillResult,
|
||||
@@ -7,7 +7,7 @@ import {
|
||||
WaitResult,
|
||||
ModalResult,
|
||||
AutomationResult,
|
||||
} from '../../../../application/ports/AutomationResults';
|
||||
} from '../../../../automation-application/ports/AutomationResults';
|
||||
|
||||
interface MockConfig {
|
||||
simulateFailures?: boolean;
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
import type { BrowserWindow } from 'electron';
|
||||
import { ipcMain } from 'electron';
|
||||
import { Result } from '../../../shared/result/Result';
|
||||
import type { ICheckoutConfirmationPort, CheckoutConfirmationRequest } from '../../../application/ports/ICheckoutConfirmationPort';
|
||||
import { CheckoutConfirmation } from '../../../domain/value-objects/CheckoutConfirmation';
|
||||
import type { ICheckoutConfirmationPort, CheckoutConfirmationRequest } from '../../../automation-application/ports/ICheckoutConfirmationPort';
|
||||
import { CheckoutConfirmation } from '../../../automation-domain/value-objects/CheckoutConfirmation';
|
||||
|
||||
export class ElectronCheckoutConfirmationAdapter implements ICheckoutConfirmationPort {
|
||||
private mainWindow: BrowserWindow;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import type { ILogger, LogContext } from '../../../application/ports/ILogger';
|
||||
import type { ILogger, LogContext } from '../../../automation-application/ports/ILogger';
|
||||
|
||||
export class NoOpLogAdapter implements ILogger {
|
||||
debug(_message: string, _context?: LogContext): void {}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import type { ILogger, LogContext, LogLevel } from '../../../application/ports/ILogger';
|
||||
import type { ILogger, LogContext, LogLevel } from '../../../automation-application/ports/ILogger';
|
||||
import { loadLoggingConfig, type LoggingEnvironmentConfig } from '../../config/LoggingConfig';
|
||||
|
||||
const LOG_LEVEL_PRIORITY: Record<LogLevel, number> = {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import type { LogLevel } from '../../application/ports/ILogger';
|
||||
import type { LogLevel } from '../../automation-application/ports/ILogger';
|
||||
|
||||
export type LogEnvironment = 'development' | 'production' | 'test';
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { AutomationSession } from '../../domain/entities/AutomationSession';
|
||||
import { SessionStateValue } from '../../domain/value-objects/SessionState';
|
||||
import { ISessionRepository } from '../../application/ports/ISessionRepository';
|
||||
import { AutomationSession } from '../../automation-domain/entities/AutomationSession';
|
||||
import { SessionStateValue } from '../../automation-domain/value-objects/SessionState';
|
||||
import { ISessionRepository } from '../../automation-application/ports/ISessionRepository';
|
||||
|
||||
export class InMemorySessionRepository implements ISessionRepository {
|
||||
private sessions: Map<string, AutomationSession> = new Map();
|
||||
|
||||
Reference in New Issue
Block a user