{"ast":null,"code":"import { BehaviorSubject } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport let ClientService = /*#__PURE__*/(() => {\n  class ClientService {\n    constructor() {\n      // Armazena a lista de clientes como um BehaviorSubject para emissão de atualizações.\n      this.clientsSource = new BehaviorSubject([]);\n      // Observable para expor a lista de clientes e permitir que outros componentes se inscrevam.\n      this.clients$ = this.clientsSource.asObservable();\n      // Armazena o cliente selecionado como um BehaviorSubject para emissão de atualizações.\n      this.selectedClientSource = new BehaviorSubject('');\n      // Observable para expor o cliente selecionado e permitir que outros componentes se inscrevam.\n      this.selectedClient$ = this.selectedClientSource.asObservable();\n    }\n    /**\n     * Atualiza a lista de clientes armazenada.\n     * @param clients Lista de clientes a ser armazenada.\n     */\n    updateClients(clients) {\n      this.clientsSource.next(clients);\n    }\n    /**\n     * Atualiza o cliente selecionado armazenado.\n     * @param clientId ID do cliente a ser selecionado.\n     */\n    updateSelectedClient(clientId) {\n      this.selectedClientSource.next(clientId);\n    }\n    /**\n     * Define o cliente selecionado como um número.\n     * @param clientId ID numérico do cliente a ser definido como selecionado.\n     */\n    setSelectedClient(clientId) {\n      this.selectedClientSource.next(clientId.toString());\n    }\n    /**\n     * Obtém o cliente selecionado armazenado.\n     * @returns ID do cliente selecionado como um número.\n     */\n    getSelectedClient() {\n      return Number(this.selectedClientSource.getValue());\n    }\n    /**\n     * Retorna o nome do cliente atualmente selecionado.\n     * @returns Nome do cliente ou string vazia se não encontrado.\n     */\n    getSelectedClientName() {\n      const selectedId = this.getSelectedClient();\n      const clients = this.clientsSource.getValue();\n      const match = clients.find(c => c.id === selectedId);\n      return match?.name || '';\n    }\n    static #_ = this.ɵfac = function ClientService_Factory(t) {\n      return new (t || ClientService)();\n    };\n    static #_2 = this.ɵprov = /*@__PURE__*/i0.ɵɵdefineInjectable({\n      token: ClientService,\n      factory: ClientService.ɵfac,\n      providedIn: 'root'\n    });\n  }\n  return ClientService;\n})();","map":null,"metadata":{},"sourceType":"module","externalDependencies":[]}