import { IUserSelection } from '@/application/Context/State/Selection/IUserSelection' ; import { SelectedScript } from '@/application/Context/State/Selection/SelectedScript' ; import { IScript } from '@/domain/IScript' ; import { IEventSource } from '@/infrastructure/Events/IEventSource' ; import { EventSource } from '@/infrastructure/Events/EventSource' ; export class UserSelectionStub implements IUserSelection { public readonly changed : IEventSource < readonly SelectedScript [ ] > = new EventSource < readonly SelectedScript [ ] > ( ) ; public selectedScripts : readonly SelectedScript [ ] = [ ] ; constructor ( private readonly allScripts ) { } public withSelectedScripts ( selectedScripts ) { this . selectedScripts = selectedScripts ; } public areAllSelected ( ) { throw new Error ( 'Method not implemented.' ) ; } public isAnySelected ( ) { throw new Error ( 'Method not implemented.' ) ; } public removeAllInCategory ( ) { throw new Error ( 'Method not implemented.' ) ; } public addOrUpdateAllInCategory ( ) { throw new Error ( 'Method not implemented.' ) ; } public addSelectedScript ( ) { throw new Error ( 'Method not implemented.' ) ; } public addOrUpdateSelectedScript ( ) { throw new Error ( 'Method not implemented.' ) ; } public removeSelectedScript ( ) { throw new Error ( 'Method not implemented.' ) ; } public selectOnly ( scripts ) { this . selectedScripts = scripts . map ( ( s ) => new SelectedScript ( s , false ) ) ; } public isSelected ( ) { throw new Error ( 'Method not implemented.' ) ; } public selectAll ( ) { this . selectOnly ( this . allScripts ) ; } public deselectAll ( ) { this . selectedScripts = [ ] ; } }