@orbe-agro/client-core 5.6.262 → 5.6.264
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/dist/@ecme/assets/styles/app.css +240 -7
- package/dist/@ecme/assets/styles/tailwind/index.css +252 -8
- package/dist/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.js +4 -0
- package/dist/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.js.map +1 -1
- package/dist/@ecme/components/layouts/PostLoginLayout/components/CollapsibleSide.stories.js.map +1 -1
- package/dist/@ecme/components/layouts/PostLoginLayout/components/ContentOverlay.stories.js.map +1 -1
- package/dist/@ecme/components/layouts/PostLoginLayout/components/FrameLessSide.stories.js.map +1 -1
- package/dist/@ecme/components/layouts/PostLoginLayout/components/StackedSide.stories.js.map +1 -1
- package/dist/@ecme/components/layouts/PostLoginLayout/components/TopBarClassic.stories.js.map +1 -1
- package/dist/@ecme/components/template/Footer.js +1 -1
- package/dist/@ecme/components/template/Header.stories.js.map +1 -1
- package/dist/@ecme/components/template/Notification/Notification.js +1 -4
- package/dist/@ecme/components/template/Notification/Notification.js.map +1 -1
- package/dist/@ecme/components/template/OrbeAiWidget/OrbeAiChatDrawer.js +121 -0
- package/dist/@ecme/components/template/OrbeAiWidget/OrbeAiChatDrawer.js.map +1 -0
- package/dist/@ecme/components/template/OrbeAiWidget/OrbeAiWidget.js +127 -0
- package/dist/@ecme/components/template/OrbeAiWidget/OrbeAiWidget.js.map +1 -0
- package/dist/@ecme/components/template/OrbeAiWidget/ResizeHandles.js +37 -0
- package/dist/@ecme/components/template/OrbeAiWidget/ResizeHandles.js.map +1 -0
- package/dist/@ecme/components/template/OrbeAiWidget/index.js +5 -0
- package/dist/@ecme/components/template/OrbeAiWidget/index.js.map +1 -0
- package/dist/@ecme/components/template/OrbeAiWidget/useResizablePanel.js +91 -0
- package/dist/@ecme/components/template/OrbeAiWidget/useResizablePanel.js.map +1 -0
- package/dist/@ecme/components/template/Search.js +280 -73
- package/dist/@ecme/components/template/Search.js.map +1 -1
- package/dist/@ecme/components/template/Search.stories.js +17 -2
- package/dist/@ecme/components/template/Search.stories.js.map +1 -1
- package/dist/@ecme/components/ui/Dropdown/DropdownMenu.js +5 -1
- package/dist/@ecme/components/ui/Dropdown/DropdownMenu.js.map +1 -1
- package/dist/@ecme/components/view/ChatBox/ChatBox.js +9 -1
- package/dist/@ecme/components/view/ChatBox/ChatBox.js.map +1 -1
- package/dist/@ecme/components/view/ChatBox/components/MessageList.js +8 -4
- package/dist/@ecme/components/view/ChatBox/components/MessageList.js.map +1 -1
- package/dist/@ecme/configs/navigation.config/concepts.navigation.config.js +0 -16
- package/dist/@ecme/configs/navigation.config/concepts.navigation.config.js.map +1 -1
- package/dist/@ecme/configs/routes.config/conceptsRoute.js +0 -9
- package/dist/@ecme/configs/routes.config/conceptsRoute.js.map +1 -1
- package/dist/@ecme/index.js +7 -7
- package/dist/@ecme/index.js.map +1 -1
- package/dist/@ecme/locales/index.js +1 -4
- package/dist/@ecme/locales/index.js.map +1 -1
- package/dist/@ecme/locales/lang/ptBR/nav.js +1 -0
- package/dist/@ecme/locales/lang/ptBR/nav.js.map +1 -1
- package/dist/@ecme/mock/data/favoritosMenuData.js +5 -0
- package/dist/@ecme/mock/data/favoritosMenuData.js.map +1 -0
- package/dist/@ecme/services/AiService.js +95 -12
- package/dist/@ecme/services/AiService.js.map +1 -1
- package/dist/@ecme/services/aiAuthHeaders.js +35 -0
- package/dist/@ecme/services/aiAuthHeaders.js.map +1 -0
- package/dist/@ecme/services/axios/AxiosBase.js +30 -24
- package/dist/@ecme/services/axios/AxiosBase.js.map +1 -1
- package/dist/@ecme/services/axios/AxiosRequestIntrceptorConfigCallback.js +4 -27
- package/dist/@ecme/services/axios/AxiosRequestIntrceptorConfigCallback.js.map +1 -1
- package/dist/@ecme/services/index.js +8 -3
- package/dist/@ecme/services/sseParser.js +42 -0
- package/dist/@ecme/services/sseParser.js.map +1 -0
- package/dist/@ecme/views/concepts/ai/Chat/components/AiErrorMessage.js +15 -0
- package/dist/@ecme/views/concepts/ai/Chat/components/AiErrorMessage.js.map +1 -0
- package/dist/@ecme/views/concepts/ai/Chat/components/AiThinkingIndicator.js +23 -0
- package/dist/@ecme/views/concepts/ai/Chat/components/AiThinkingIndicator.js.map +1 -0
- package/dist/@ecme/views/concepts/ai/Chat/components/ApprovalCard.js +73 -0
- package/dist/@ecme/views/concepts/ai/Chat/components/ApprovalCard.js.map +1 -0
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistory.js +9 -23
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistory.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.js +6 -16
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.js +10 -7
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatLandingView.js +37 -36
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatLandingView.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatView.js +62 -18
- package/dist/@ecme/views/concepts/ai/Chat/components/ChatView.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/components/DataRequestCard.js +99 -0
- package/dist/@ecme/views/concepts/ai/Chat/components/DataRequestCard.js.map +1 -0
- package/dist/@ecme/views/concepts/ai/Chat/components/ToolCallChip.js +153 -0
- package/dist/@ecme/views/concepts/ai/Chat/components/ToolCallChip.js.map +1 -0
- package/dist/@ecme/views/concepts/ai/Chat/components/toolPresentation.js +195 -0
- package/dist/@ecme/views/concepts/ai/Chat/components/toolPresentation.js.map +1 -0
- package/dist/@ecme/views/concepts/ai/Chat/hooks/useChatConversations.js +83 -0
- package/dist/@ecme/views/concepts/ai/Chat/hooks/useChatConversations.js.map +1 -0
- package/dist/@ecme/views/concepts/ai/Chat/hooks/useChatSend.js +139 -22
- package/dist/@ecme/views/concepts/ai/Chat/hooks/useChatSend.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/hooks/useConversationMessages.js +37 -0
- package/dist/@ecme/views/concepts/ai/Chat/hooks/useConversationMessages.js.map +1 -0
- package/dist/@ecme/views/concepts/ai/Chat/store/generativeChatStore.js +53 -13
- package/dist/@ecme/views/concepts/ai/Chat/store/generativeChatStore.js.map +1 -1
- package/dist/@ecme/views/concepts/ai/Chat/utils.js +16 -1
- package/dist/@ecme/views/concepts/ai/Chat/utils.js.map +1 -1
- package/dist/@ecme/views/dashboards/FavoritesLanding/FavoritesLanding.js +92 -0
- package/dist/@ecme/views/dashboards/FavoritesLanding/FavoritesLanding.js.map +1 -0
- package/dist/@ecme/views/dashboards/FavoritesLanding/index.js +5 -0
- package/dist/@ecme/views/dashboards/FavoritesLanding/index.js.map +1 -0
- package/dist/@ecme/views/dashboards/FavoritesLanding/types.js +2 -0
- package/dist/@ecme/views/dashboards/FavoritesLanding/types.js.map +1 -0
- package/dist/@ecme/views/dashboards/FavoritesLanding/utils.js +36 -0
- package/dist/@ecme/views/dashboards/FavoritesLanding/utils.js.map +1 -0
- package/dist/@ecme/views/dashboards/index.js +1 -4
- package/dist/@ecme/views/dashboards/index.js.map +1 -1
- package/dist/@ecme/views/index.js +0 -2
- package/dist/@ecme/views/index.js.map +1 -1
- package/dist/@types/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.d.ts.map +1 -1
- package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/CollapsibleSide.stories.d.ts +7 -0
- package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/CollapsibleSide.stories.d.ts.map +1 -0
- package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/ContentOverlay.stories.d.ts +7 -0
- package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/ContentOverlay.stories.d.ts.map +1 -0
- package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/FrameLessSide.stories.d.ts +7 -0
- package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/FrameLessSide.stories.d.ts.map +1 -0
- package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/StackedSide.stories.d.ts +7 -0
- package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/StackedSide.stories.d.ts.map +1 -0
- package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/TopBarClassic.stories.d.ts +7 -0
- package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/TopBarClassic.stories.d.ts.map +1 -0
- package/dist/@types/@ecme/components/template/Header.stories.d.ts +7 -0
- package/dist/@types/@ecme/components/template/Header.stories.d.ts.map +1 -0
- package/dist/@types/@ecme/components/template/OrbeAiWidget/OrbeAiChatDrawer.d.ts +14 -0
- package/dist/@types/@ecme/components/template/OrbeAiWidget/OrbeAiChatDrawer.d.ts.map +1 -0
- package/dist/@types/@ecme/components/template/OrbeAiWidget/OrbeAiWidget.d.ts +3 -0
- package/dist/@types/@ecme/components/template/OrbeAiWidget/OrbeAiWidget.d.ts.map +1 -0
- package/dist/@types/@ecme/components/template/OrbeAiWidget/ResizeHandles.d.ts +9 -0
- package/dist/@types/@ecme/components/template/OrbeAiWidget/ResizeHandles.d.ts.map +1 -0
- package/dist/@types/@ecme/components/template/OrbeAiWidget/index.d.ts +2 -0
- package/dist/@types/@ecme/components/template/OrbeAiWidget/index.d.ts.map +1 -0
- package/dist/@types/@ecme/components/template/OrbeAiWidget/useResizablePanel.d.ts +26 -0
- package/dist/@types/@ecme/components/template/OrbeAiWidget/useResizablePanel.d.ts.map +1 -0
- package/dist/@types/@ecme/components/template/Search.d.ts +2 -0
- package/dist/@types/@ecme/components/template/Search.d.ts.map +1 -1
- package/dist/@types/@ecme/components/template/Search.stories.d.ts +8 -0
- package/dist/@types/@ecme/components/template/Search.stories.d.ts.map +1 -0
- package/dist/@types/@ecme/components/ui/Dropdown/DropdownMenu.d.ts +2 -0
- package/dist/@types/@ecme/components/ui/Dropdown/DropdownMenu.d.ts.map +1 -1
- package/dist/@types/@ecme/components/view/ChatBox/ChatBox.d.ts.map +1 -1
- package/dist/@types/@ecme/components/view/ChatBox/components/MessageList.d.ts +5 -0
- package/dist/@types/@ecme/components/view/ChatBox/components/MessageList.d.ts.map +1 -1
- package/dist/@types/@ecme/configs/navigation.config/concepts.navigation.config.d.ts.map +1 -1
- package/dist/@types/@ecme/configs/routes.config/conceptsRoute.d.ts.map +1 -1
- package/dist/@types/@ecme/locales/index.d.ts +0 -1
- package/dist/@types/@ecme/locales/index.d.ts.map +1 -1
- package/dist/@types/@ecme/locales/lang/ptBR/nav.d.ts.map +1 -1
- package/dist/@types/@ecme/mock/data/favoritosMenuData.d.ts +3 -0
- package/dist/@types/@ecme/mock/data/favoritosMenuData.d.ts.map +1 -0
- package/dist/@types/@ecme/services/AiService.d.ts +44 -4
- package/dist/@types/@ecme/services/AiService.d.ts.map +1 -1
- package/dist/@types/@ecme/services/aiAuthHeaders.d.ts +12 -0
- package/dist/@types/@ecme/services/aiAuthHeaders.d.ts.map +1 -0
- package/dist/@types/@ecme/services/axios/AxiosBase.d.ts +12 -0
- package/dist/@types/@ecme/services/axios/AxiosBase.d.ts.map +1 -1
- package/dist/@types/@ecme/services/axios/AxiosRequestIntrceptorConfigCallback.d.ts +6 -0
- package/dist/@types/@ecme/services/axios/AxiosRequestIntrceptorConfigCallback.d.ts.map +1 -1
- package/dist/@types/@ecme/services/sseParser.d.ts +20 -0
- package/dist/@types/@ecme/services/sseParser.d.ts.map +1 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/AiErrorMessage.d.ts +8 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/AiErrorMessage.d.ts.map +1 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/AiThinkingIndicator.d.ts +7 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/AiThinkingIndicator.d.ts.map +1 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ApprovalCard.d.ts +15 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ApprovalCard.d.ts.map +1 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatHistory.d.ts +3 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatHistory.d.ts.map +1 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.d.ts +1 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.d.ts.map +1 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.d.ts +5 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.d.ts.map +1 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatLandingView.d.ts.map +1 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatView.d.ts +8 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatView.d.ts.map +1 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/DataRequestCard.d.ts +20 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/DataRequestCard.d.ts.map +1 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ToolCallChip.d.ts +7 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/ToolCallChip.d.ts.map +1 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/toolPresentation.d.ts +31 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/components/toolPresentation.d.ts.map +1 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/hooks/useChatConversations.d.ts +12 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/hooks/useChatConversations.d.ts.map +1 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/hooks/useChatSend.d.ts +3 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/hooks/useChatSend.d.ts.map +1 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/hooks/useConversationMessages.d.ts +12 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/hooks/useConversationMessages.d.ts.map +1 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/store/generativeChatStore.d.ts +5 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/store/generativeChatStore.d.ts.map +1 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/types.d.ts +144 -23
- package/dist/@types/@ecme/views/concepts/ai/Chat/types.d.ts.map +1 -1
- package/dist/@types/@ecme/views/concepts/ai/Chat/utils.d.ts +13 -0
- package/dist/@types/@ecme/views/concepts/ai/Chat/utils.d.ts.map +1 -1
- package/dist/@types/@ecme/views/dashboards/FavoritesLanding/FavoritesLanding.d.ts +9 -0
- package/dist/@types/@ecme/views/dashboards/FavoritesLanding/FavoritesLanding.d.ts.map +1 -0
- package/dist/@types/@ecme/views/dashboards/FavoritesLanding/index.d.ts +3 -0
- package/dist/@types/@ecme/views/dashboards/FavoritesLanding/index.d.ts.map +1 -0
- package/dist/@types/@ecme/views/dashboards/FavoritesLanding/types.d.ts +17 -0
- package/dist/@types/@ecme/views/dashboards/FavoritesLanding/types.d.ts.map +1 -0
- package/dist/@types/@ecme/views/dashboards/FavoritesLanding/utils.d.ts +5 -0
- package/dist/@types/@ecme/views/dashboards/FavoritesLanding/utils.d.ts.map +1 -0
- package/dist/@types/@ecme/views/dashboards/index.d.ts +0 -1
- package/dist/@types/@ecme/views/dashboards/index.d.ts.map +1 -1
- package/dist/@types/@ecme/views/index.d.ts +0 -1
- package/dist/@types/@ecme/views/index.d.ts.map +1 -1
- package/dist/@types/base/@types/api/request/dm/TCreateFavoritoMenuRequest.d.ts +4 -0
- package/dist/@types/base/@types/api/request/dm/TCreateFavoritoMenuRequest.d.ts.map +1 -0
- package/dist/@types/base/@types/api/request/dm/TReorderFavoritosMenuRequest.d.ts +4 -0
- package/dist/@types/base/@types/api/request/dm/TReorderFavoritosMenuRequest.d.ts.map +1 -0
- package/dist/@types/base/@types/api/request/originacao/TSimularConsumoManualSaldoRequest.d.ts +9 -0
- package/dist/@types/base/@types/api/request/originacao/TSimularConsumoManualSaldoRequest.d.ts.map +1 -0
- package/dist/@types/base/@types/api/response/dadosMestres/TFavoritoMenuResponse.d.ts +8 -0
- package/dist/@types/base/@types/api/response/dadosMestres/TFavoritoMenuResponse.d.ts.map +1 -0
- package/dist/@types/base/@types/api/response/originacao/TConsumoManualSaldoResponse.d.ts +21 -0
- package/dist/@types/base/@types/api/response/originacao/TConsumoManualSaldoResponse.d.ts.map +1 -0
- package/dist/@types/base/@types/api/response/originacao/TFindAllSaldoResponse.d.ts +1 -0
- package/dist/@types/base/@types/api/response/originacao/TFindAllSaldoResponse.d.ts.map +1 -1
- package/dist/@types/base/@types/api/response/originacao/TSimularConsumoManualSaldoResponse.d.ts +17 -0
- package/dist/@types/base/@types/api/response/originacao/TSimularConsumoManualSaldoResponse.d.ts.map +1 -0
- package/dist/@types/base/@types/enums/originacao/ModoConsumoManual.d.ts +5 -0
- package/dist/@types/base/@types/enums/originacao/ModoConsumoManual.d.ts.map +1 -0
- package/dist/@types/base/@types/enums/originacao/TipoSaldoConsumivel.d.ts +6 -0
- package/dist/@types/base/@types/enums/originacao/TipoSaldoConsumivel.d.ts.map +1 -0
- package/dist/@types/base/@types/models/racao/carga.d.ts +39 -0
- package/dist/@types/base/@types/models/racao/carga.d.ts.map +1 -1
- package/dist/@types/base/@types/models/template/example.d.ts +40 -0
- package/dist/@types/base/@types/models/template/example.d.ts.map +1 -0
- package/dist/@types/base/@types/models/template/exampleObject.d.ts +14 -0
- package/dist/@types/base/@types/models/template/exampleObject.d.ts.map +1 -0
- package/dist/@types/base/@types/models/transportadora/irpf.d.ts +1 -0
- package/dist/@types/base/@types/models/transportadora/irpf.d.ts.map +1 -1
- package/dist/@types/base/@types/models/transportadora/irpfFaixaDesconto.d.ts +0 -1
- package/dist/@types/base/@types/models/transportadora/irpfFaixaDesconto.d.ts.map +1 -1
- package/dist/@types/base/components/forms/GenericForms/GenericArrayFormSection.d.ts +2 -2
- package/dist/@types/base/components/forms/GenericForms/GenericArrayFormSection.d.ts.map +1 -1
- package/dist/@types/base/components/shared/AceitarProcessoDialog.d.ts +2 -1
- package/dist/@types/base/components/shared/AceitarProcessoDialog.d.ts.map +1 -1
- package/dist/@types/base/components/shared/AdicionarHistoricoDialog.d.ts.map +1 -1
- package/dist/@types/base/components/shared/CancelarProcessoDialog.d.ts.map +1 -1
- package/dist/@types/base/components/shared/ConcluirProcessoDialog.d.ts.map +1 -1
- package/dist/@types/base/components/shared/EncerrarProcessoDialog.d.ts.map +1 -1
- package/dist/@types/base/components/shared/ReabrirProcessoDialog.d.ts.map +1 -1
- package/dist/@types/base/components/shared/RetornarFluxAtendimentoDialog.d.ts.map +1 -1
- package/dist/@types/base/components/shared/TransferirParaAtendenteDialog.d.ts.map +1 -1
- package/dist/@types/base/components/shared/TransferirParaSolicitanteDialog.d.ts.map +1 -1
- package/dist/@types/base/components/shared/TransferirProcessoDialog.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/DadosMestres/FavoritoMenu/favoritoMenu.endpoint.config.d.ts +8 -0
- package/dist/@types/base/configs/endpoints.config/DadosMestres/FavoritoMenu/favoritoMenu.endpoint.config.d.ts.map +1 -0
- package/dist/@types/base/configs/endpoints.config/DadosMestres/Sap/incoterms.endpoint.config.d.ts +1 -0
- package/dist/@types/base/configs/endpoints.config/DadosMestres/Sap/incoterms.endpoint.config.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/DadosMestres/Sap/safra.endpoint.config.d.ts +1 -0
- package/dist/@types/base/configs/endpoints.config/DadosMestres/Sap/safra.endpoint.config.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/HubFiscal/nfe.endpoint.config.d.ts +1 -1
- package/dist/@types/base/configs/endpoints.config/SapService/Sap/executeSapApi.endpoint.config.d.ts +1 -0
- package/dist/@types/base/configs/endpoints.config/SapService/Sap/executeSapApi.endpoint.config.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/Ticket/ticket.endpoint.config.d.ts +2 -0
- package/dist/@types/base/configs/endpoints.config/Ticket/ticket.endpoint.config.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/agendamento/agendamento.d.ts +0 -1
- package/dist/@types/base/configs/endpoints.config/agendamento/agendamento.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/agendamento/config/contratoVenda.d.ts +0 -1
- package/dist/@types/base/configs/endpoints.config/agendamento/config/contratoVenda.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/centralNfe/centralNfe.d.ts +18 -0
- package/dist/@types/base/configs/endpoints.config/centralNfe/centralNfe.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/centralNfe/config/cfop.d.ts +4 -0
- package/dist/@types/base/configs/endpoints.config/centralNfe/config/cfop.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/centralNfe/config/historicoCfop.d.ts +12 -0
- package/dist/@types/base/configs/endpoints.config/centralNfe/config/historicoCfop.d.ts.map +1 -0
- package/dist/@types/base/configs/endpoints.config/centralNfe/config/vinculoOperacao.d.ts +4 -0
- package/dist/@types/base/configs/endpoints.config/centralNfe/config/vinculoOperacao.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/compras/compras.d.ts +6 -0
- package/dist/@types/base/configs/endpoints.config/compras/compras.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/compras/config/itemOrdemCompra.d.ts +8 -0
- package/dist/@types/base/configs/endpoints.config/compras/config/itemOrdemCompra.d.ts.map +1 -0
- package/dist/@types/base/configs/endpoints.config/dm/config/municipio.d.ts +4 -0
- package/dist/@types/base/configs/endpoints.config/dm/config/municipio.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/dm/dm.d.ts +4 -0
- package/dist/@types/base/configs/endpoints.config/dm/dm.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts +90 -21
- package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/insumos/config/estoque.d.ts +0 -20
- package/dist/@types/base/configs/endpoints.config/insumos/config/estoque.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/insumos/insumos.d.ts +0 -20
- package/dist/@types/base/configs/endpoints.config/insumos/insumos.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/originacao/config/consumoManualSaldo.d.ts +10 -0
- package/dist/@types/base/configs/endpoints.config/originacao/config/consumoManualSaldo.d.ts.map +1 -0
- package/dist/@types/base/configs/endpoints.config/originacao/originacao.d.ts +8 -0
- package/dist/@types/base/configs/endpoints.config/originacao/originacao.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/racao/config/carga.d.ts +8 -0
- package/dist/@types/base/configs/endpoints.config/racao/config/carga.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/racao/racao.d.ts +8 -0
- package/dist/@types/base/configs/endpoints.config/racao/racao.d.ts.map +1 -1
- package/dist/@types/base/configs/endpoints.config/trade/config/contratoArmazenagemGraosTrade.d.ts +33 -0
- package/dist/@types/base/configs/endpoints.config/trade/config/contratoArmazenagemGraosTrade.d.ts.map +1 -0
- package/dist/@types/base/configs/endpoints.config/trade/index.d.ts +34 -0
- package/dist/@types/base/configs/endpoints.config/trade/index.d.ts.map +1 -0
- package/dist/@types/base/configs/endpoints.config/transportadora/contratoFrete.d.ts +8 -0
- package/dist/@types/base/configs/endpoints.config/transportadora/contratoFrete.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/modules.navigation.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/modules.submenu/gestaoServicos/submenu.gestaoServicos.d.ts +4 -0
- package/dist/@types/base/configs/navigation.config/modules.submenu/gestaoServicos/submenu.gestaoServicos.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/modules.submenu/index.d.ts +1 -0
- package/dist/@types/base/configs/navigation.config/modules.submenu/index.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/modules.submenu/originacao/consumoManualSaldo/submenu.consumoManualSaldo.d.ts +4 -0
- package/dist/@types/base/configs/navigation.config/modules.submenu/originacao/consumoManualSaldo/submenu.consumoManualSaldo.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/modules.submenu/template/submenu.template.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/modules.submenu/trade/submenu.trade.d.ts +4 -0
- package/dist/@types/base/configs/navigation.config/modules.submenu/trade/submenu.trade.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/submenu/centralNfe/cadastros.submenu.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/submenu/centralNfe/config/cfop.submenu.d.ts +4 -0
- package/dist/@types/base/configs/navigation.config/submenu/centralNfe/config/cfop.submenu.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/submenu/index.d.ts +1 -2
- package/dist/@types/base/configs/navigation.config/submenu/index.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/submenu/originacao/originacao.submenu.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/submenu/template/cadastros.submenu.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/submenu/template/config/example.submenu.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/submenu/template/config/exampleObject.submenu.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/submenu/template/template.submenu.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/submenu/ticket/cadastros.submenu.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/submenu/ticket/config/relatorioTransferenciaArmazens.submenu.d.ts +4 -0
- package/dist/@types/base/configs/navigation.config/submenu/ticket/config/relatorioTransferenciaArmazens.submenu.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/submenu/ticket/config/relatorioVendasGraos.submenu.d.ts +4 -0
- package/dist/@types/base/configs/navigation.config/submenu/ticket/config/relatorioVendasGraos.submenu.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/submenu/ticket/relatorios.submenu.d.ts.map +1 -1
- package/dist/@types/base/configs/navigation.config/submenu/trade/configs/contratoArmazenagemGraosTrade.submenu.d.ts +4 -0
- package/dist/@types/base/configs/navigation.config/submenu/trade/configs/contratoArmazenagemGraosTrade.submenu.d.ts.map +1 -0
- package/dist/@types/base/configs/navigation.config/submenu/trade/trade.submenu.d.ts +4 -0
- package/dist/@types/base/configs/navigation.config/submenu/trade/trade.submenu.d.ts.map +1 -0
- package/dist/@types/base/locales/lang/ptBR/modules/Ticket/ticket.nav.d.ts +2 -0
- package/dist/@types/base/locales/lang/ptBR/modules/Ticket/ticket.nav.d.ts.map +1 -1
- package/dist/@types/base/services/modules/DadosMestres/FavoritoMenu/FavoritoMenuService.d.ts +8 -0
- package/dist/@types/base/services/modules/DadosMestres/FavoritoMenu/FavoritoMenuService.d.ts.map +1 -0
- package/dist/@types/base/services/modules/DadosMestres/Sap/IncotermsService.d.ts +1 -0
- package/dist/@types/base/services/modules/DadosMestres/Sap/IncotermsService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/DadosMestres/Sap/SafraService.d.ts +1 -0
- package/dist/@types/base/services/modules/DadosMestres/Sap/SafraService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/HubFiscal/NfeService.d.ts +1 -1
- package/dist/@types/base/services/modules/HubFiscal/NfeService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/SapService/Sap/ExecuteSapApiService.d.ts +1 -0
- package/dist/@types/base/services/modules/SapService/Sap/ExecuteSapApiService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/Ticket/TicketService.d.ts +2 -0
- package/dist/@types/base/services/modules/Ticket/TicketService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/centralNfe/cfop/CfopService.d.ts +1 -0
- package/dist/@types/base/services/modules/centralNfe/cfop/CfopService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/centralNfe/historicoCfop/HistoricoCfopService.d.ts +3 -0
- package/dist/@types/base/services/modules/centralNfe/historicoCfop/HistoricoCfopService.d.ts.map +1 -0
- package/dist/@types/base/services/modules/centralNfe/vinculoOperacao/VinculoOperacaoService.d.ts +1 -0
- package/dist/@types/base/services/modules/centralNfe/vinculoOperacao/VinculoOperacaoService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/compras/index.d.ts +1 -0
- package/dist/@types/base/services/modules/compras/index.d.ts.map +1 -1
- package/dist/@types/base/services/modules/compras/ordemCompra/ItemOrdemCompraService.d.ts +2 -0
- package/dist/@types/base/services/modules/compras/ordemCompra/ItemOrdemCompraService.d.ts.map +1 -0
- package/dist/@types/base/services/modules/dm/municipio/MunicipioService.d.ts +1 -0
- package/dist/@types/base/services/modules/dm/municipio/MunicipioService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/originacao/consumoManualSaldo/consumoManualSaldoService.d.ts +13 -0
- package/dist/@types/base/services/modules/originacao/consumoManualSaldo/consumoManualSaldoService.d.ts.map +1 -0
- package/dist/@types/base/services/modules/racao/carga/CargaService.d.ts +3 -1
- package/dist/@types/base/services/modules/racao/carga/CargaService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/template/example/ExampleService.d.ts +7 -4
- package/dist/@types/base/services/modules/template/example/ExampleService.d.ts.map +1 -1
- package/dist/@types/base/services/modules/template/exampleObject/ExampleObjectService.d.ts +8 -0
- package/dist/@types/base/services/modules/template/exampleObject/ExampleObjectService.d.ts.map +1 -0
- package/dist/@types/base/services/modules/template/index.d.ts +1 -1
- package/dist/@types/base/services/modules/template/index.d.ts.map +1 -1
- package/dist/@types/base/services/modules/trade/ContratoArmazenagemGraosTradeService.d.ts +14 -0
- package/dist/@types/base/services/modules/trade/ContratoArmazenagemGraosTradeService.d.ts.map +1 -0
- package/dist/@types/base/services/modules/transportadora/ContratoFrete/ContratoFreteService.d.ts +2 -0
- package/dist/@types/base/services/modules/transportadora/ContratoFrete/ContratoFreteService.d.ts.map +1 -1
- package/dist/base/@types/api/request/dm/TCreateFavoritoMenuRequest.js +2 -0
- package/dist/base/@types/api/request/dm/TCreateFavoritoMenuRequest.js.map +1 -0
- package/dist/base/@types/api/request/dm/TReorderFavoritosMenuRequest.js +2 -0
- package/dist/base/@types/api/request/dm/TReorderFavoritosMenuRequest.js.map +1 -0
- package/dist/base/@types/api/request/originacao/TSimularConsumoManualSaldoRequest.js +2 -0
- package/dist/base/@types/api/request/originacao/TSimularConsumoManualSaldoRequest.js.map +1 -0
- package/dist/base/@types/api/response/dadosMestres/TFavoritoMenuResponse.js +2 -0
- package/dist/base/@types/api/response/dadosMestres/TFavoritoMenuResponse.js.map +1 -0
- package/dist/base/@types/api/response/originacao/TConsumoManualSaldoResponse.js +2 -0
- package/dist/base/@types/api/response/originacao/TConsumoManualSaldoResponse.js.map +1 -0
- package/dist/base/@types/api/response/originacao/TSimularConsumoManualSaldoResponse.js +2 -0
- package/dist/base/@types/api/response/originacao/TSimularConsumoManualSaldoResponse.js.map +1 -0
- package/dist/base/@types/enums/originacao/ModoConsumoManual.js +9 -0
- package/dist/base/@types/enums/originacao/ModoConsumoManual.js.map +1 -0
- package/dist/base/@types/enums/originacao/TipoSaldoConsumivel.js +10 -0
- package/dist/base/@types/enums/originacao/TipoSaldoConsumivel.js.map +1 -0
- package/dist/base/@types/models/racao/carga.js.map +1 -1
- package/dist/base/@types/models/template/example.js +16 -0
- package/dist/base/@types/models/template/example.js.map +1 -0
- package/dist/base/@types/models/template/exampleObject.js +2 -0
- package/dist/base/@types/models/template/exampleObject.js.map +1 -0
- package/dist/base/assets/styles/init.css +258 -7
- package/dist/base/components/forms/GenericForms/GenericArrayFormSection.js.map +1 -1
- package/dist/base/components/shared/AceitarProcessoDialog.js +16 -2
- package/dist/base/components/shared/AceitarProcessoDialog.js.map +1 -1
- package/dist/base/components/shared/AdicionarHistoricoDialog.js +28 -24
- package/dist/base/components/shared/AdicionarHistoricoDialog.js.map +1 -1
- package/dist/base/components/shared/CancelarProcessoDialog.js +28 -24
- package/dist/base/components/shared/CancelarProcessoDialog.js.map +1 -1
- package/dist/base/components/shared/ConcluirProcessoDialog.js +27 -23
- package/dist/base/components/shared/ConcluirProcessoDialog.js.map +1 -1
- package/dist/base/components/shared/EncerrarProcessoDialog.js +28 -24
- package/dist/base/components/shared/EncerrarProcessoDialog.js.map +1 -1
- package/dist/base/components/shared/ReabrirProcessoDialog.js +27 -23
- package/dist/base/components/shared/ReabrirProcessoDialog.js.map +1 -1
- package/dist/base/components/shared/RetornarFluxAtendimentoDialog.js +27 -23
- package/dist/base/components/shared/RetornarFluxAtendimentoDialog.js.map +1 -1
- package/dist/base/components/shared/TransferirParaAtendenteDialog.js +28 -24
- package/dist/base/components/shared/TransferirParaAtendenteDialog.js.map +1 -1
- package/dist/base/components/shared/TransferirParaSolicitanteDialog.js +28 -24
- package/dist/base/components/shared/TransferirParaSolicitanteDialog.js.map +1 -1
- package/dist/base/components/shared/TransferirProcessoDialog.js +43 -33
- package/dist/base/components/shared/TransferirProcessoDialog.js.map +1 -1
- package/dist/base/configs/api.config.js.map +1 -1
- package/dist/base/configs/endpoints.config/DadosMestres/FavoritoMenu/favoritoMenu.endpoint.config.js +11 -0
- package/dist/base/configs/endpoints.config/DadosMestres/FavoritoMenu/favoritoMenu.endpoint.config.js.map +1 -0
- package/dist/base/configs/endpoints.config/DadosMestres/Sap/incoterms.endpoint.config.js +2 -1
- package/dist/base/configs/endpoints.config/DadosMestres/Sap/incoterms.endpoint.config.js.map +1 -1
- package/dist/base/configs/endpoints.config/DadosMestres/Sap/safra.endpoint.config.js +2 -1
- package/dist/base/configs/endpoints.config/DadosMestres/Sap/safra.endpoint.config.js.map +1 -1
- package/dist/base/configs/endpoints.config/HubFiscal/nfe.endpoint.config.js +1 -1
- package/dist/base/configs/endpoints.config/HubFiscal/nfe.endpoint.config.js.map +1 -1
- package/dist/base/configs/endpoints.config/SapService/Sap/executeSapApi.endpoint.config.js +2 -1
- package/dist/base/configs/endpoints.config/SapService/Sap/executeSapApi.endpoint.config.js.map +1 -1
- package/dist/base/configs/endpoints.config/Ticket/ticket.endpoint.config.js +3 -1
- package/dist/base/configs/endpoints.config/Ticket/ticket.endpoint.config.js.map +1 -1
- package/dist/base/configs/endpoints.config/agendamento/config/contratoVenda.js +0 -1
- package/dist/base/configs/endpoints.config/agendamento/config/contratoVenda.js.map +1 -1
- package/dist/base/configs/endpoints.config/centralNfe/centralNfe.js +2 -0
- package/dist/base/configs/endpoints.config/centralNfe/centralNfe.js.map +1 -1
- package/dist/base/configs/endpoints.config/centralNfe/config/cfop.js +2 -1
- package/dist/base/configs/endpoints.config/centralNfe/config/cfop.js.map +1 -1
- package/dist/base/configs/endpoints.config/centralNfe/config/historicoCfop.js +9 -0
- package/dist/base/configs/endpoints.config/centralNfe/config/historicoCfop.js.map +1 -0
- package/dist/base/configs/endpoints.config/centralNfe/config/vinculoOperacao.js +2 -1
- package/dist/base/configs/endpoints.config/centralNfe/config/vinculoOperacao.js.map +1 -1
- package/dist/base/configs/endpoints.config/compras/compras.js +3 -1
- package/dist/base/configs/endpoints.config/compras/compras.js.map +1 -1
- package/dist/base/configs/endpoints.config/compras/config/itemOrdemCompra.js +8 -0
- package/dist/base/configs/endpoints.config/compras/config/itemOrdemCompra.js.map +1 -0
- package/dist/base/configs/endpoints.config/dm/config/municipio.js +2 -1
- package/dist/base/configs/endpoints.config/dm/config/municipio.js.map +1 -1
- package/dist/base/configs/endpoints.config/endpoints.navigation.js +5 -1
- package/dist/base/configs/endpoints.config/endpoints.navigation.js.map +1 -1
- package/dist/base/configs/endpoints.config/insumos/config/estoque.js +1 -6
- package/dist/base/configs/endpoints.config/insumos/config/estoque.js.map +1 -1
- package/dist/base/configs/endpoints.config/originacao/config/consumoManualSaldo.js +12 -0
- package/dist/base/configs/endpoints.config/originacao/config/consumoManualSaldo.js.map +1 -0
- package/dist/base/configs/endpoints.config/originacao/originacao.js +2 -0
- package/dist/base/configs/endpoints.config/originacao/originacao.js.map +1 -1
- package/dist/base/configs/endpoints.config/racao/config/carga.js +2 -0
- package/dist/base/configs/endpoints.config/racao/config/carga.js.map +1 -1
- package/dist/base/configs/endpoints.config/trade/config/contratoArmazenagemGraosTrade.js +15 -0
- package/dist/base/configs/endpoints.config/trade/config/contratoArmazenagemGraosTrade.js.map +1 -0
- package/dist/base/configs/endpoints.config/trade/index.js +8 -0
- package/dist/base/configs/endpoints.config/trade/index.js.map +1 -0
- package/dist/base/configs/endpoints.config/transportadora/contratoFrete.js +3 -1
- package/dist/base/configs/endpoints.config/transportadora/contratoFrete.js.map +1 -1
- package/dist/base/configs/index.js +33 -33
- package/dist/base/configs/navigation.config/index.js +31 -31
- package/dist/base/configs/navigation.config/modules.navigation.js +3 -1
- package/dist/base/configs/navigation.config/modules.navigation.js.map +1 -1
- package/dist/base/configs/navigation.config/modules.submenu/gestaoServicos/submenu.gestaoServicos.js +107 -0
- package/dist/base/configs/navigation.config/modules.submenu/gestaoServicos/submenu.gestaoServicos.js.map +1 -0
- package/dist/base/configs/navigation.config/modules.submenu/index.js +2 -0
- package/dist/base/configs/navigation.config/modules.submenu/index.js.map +1 -1
- package/dist/base/configs/navigation.config/modules.submenu/originacao/consumoManualSaldo/submenu.consumoManualSaldo.js +16 -0
- package/dist/base/configs/navigation.config/modules.submenu/originacao/consumoManualSaldo/submenu.consumoManualSaldo.js.map +1 -0
- package/dist/base/configs/navigation.config/modules.submenu/template/cadastros/submenu.example.js +1 -1
- package/dist/base/configs/navigation.config/modules.submenu/template/cadastros/submenu.example.js.map +1 -1
- package/dist/base/configs/navigation.config/modules.submenu/template/submenu.template.js +1 -1
- package/dist/base/configs/navigation.config/modules.submenu/template/submenu.template.js.map +1 -1
- package/dist/base/configs/navigation.config/modules.submenu/trade/submenu.trade.js +17 -0
- package/dist/base/configs/navigation.config/modules.submenu/trade/submenu.trade.js.map +1 -0
- package/dist/base/configs/navigation.config/submenu/agendamento/config/relatorio-cotas.js +1 -1
- package/dist/base/configs/navigation.config/submenu/agendamento/config/relatorio-cotas.js.map +1 -1
- package/dist/base/configs/navigation.config/submenu/centralNfe/cadastros.submenu.js +3 -1
- package/dist/base/configs/navigation.config/submenu/centralNfe/cadastros.submenu.js.map +1 -1
- package/dist/base/configs/navigation.config/submenu/centralNfe/config/cfop.submenu.js +16 -0
- package/dist/base/configs/navigation.config/submenu/centralNfe/config/cfop.submenu.js.map +1 -0
- package/dist/base/configs/navigation.config/submenu/index.js +20 -22
- package/dist/base/configs/navigation.config/submenu/index.js.map +1 -1
- package/dist/base/configs/navigation.config/submenu/originacao/originacao.submenu.js +2 -0
- package/dist/base/configs/navigation.config/submenu/originacao/originacao.submenu.js.map +1 -1
- package/dist/base/configs/navigation.config/submenu/template/cadastros.submenu.js.map +1 -0
- package/dist/base/configs/navigation.config/submenu/{example → template}/config/example.submenu.js +3 -3
- package/dist/base/configs/navigation.config/submenu/template/config/example.submenu.js.map +1 -0
- package/dist/base/configs/navigation.config/submenu/{example → template}/config/exampleObject.submenu.js +3 -3
- package/dist/base/configs/navigation.config/submenu/template/config/exampleObject.submenu.js.map +1 -0
- package/dist/base/configs/navigation.config/submenu/template/template.submenu.js.map +1 -0
- package/dist/base/configs/navigation.config/submenu/ticket/cadastros.submenu.js +5 -1
- package/dist/base/configs/navigation.config/submenu/ticket/cadastros.submenu.js.map +1 -1
- package/dist/base/configs/navigation.config/submenu/ticket/config/relatorioTransferenciaArmazens.submenu.js +16 -0
- package/dist/base/configs/navigation.config/submenu/ticket/config/relatorioTransferenciaArmazens.submenu.js.map +1 -0
- package/dist/base/configs/navigation.config/submenu/ticket/config/relatorioVendasGraos.submenu.js +16 -0
- package/dist/base/configs/navigation.config/submenu/ticket/config/relatorioVendasGraos.submenu.js.map +1 -0
- package/dist/base/configs/navigation.config/submenu/ticket/relatorios.submenu.js +5 -13
- package/dist/base/configs/navigation.config/submenu/ticket/relatorios.submenu.js.map +1 -1
- package/dist/base/configs/navigation.config/submenu/trade/configs/contratoArmazenagemGraosTrade.submenu.js +16 -0
- package/dist/base/configs/navigation.config/submenu/trade/configs/contratoArmazenagemGraosTrade.submenu.js.map +1 -0
- package/dist/base/configs/navigation.config/submenu/trade/trade.submenu.js +8 -0
- package/dist/base/configs/navigation.config/submenu/trade/trade.submenu.js.map +1 -0
- package/dist/base/index.js +50 -40
- package/dist/base/index.js.map +1 -1
- package/dist/base/locales/lang/ptBR/modules/Ticket/ticket.nav.js +3 -1
- package/dist/base/locales/lang/ptBR/modules/Ticket/ticket.nav.js.map +1 -1
- package/dist/base/services/index.js +15 -5
- package/dist/base/services/index.js.map +1 -1
- package/dist/base/services/modules/DadosMestres/FavoritoMenu/FavoritoMenuService.js +35 -0
- package/dist/base/services/modules/DadosMestres/FavoritoMenu/FavoritoMenuService.js.map +1 -0
- package/dist/base/services/modules/DadosMestres/Sap/IncotermsService.js +9 -1
- package/dist/base/services/modules/DadosMestres/Sap/IncotermsService.js.map +1 -1
- package/dist/base/services/modules/DadosMestres/Sap/SafraService.js +9 -1
- package/dist/base/services/modules/DadosMestres/Sap/SafraService.js.map +1 -1
- package/dist/base/services/modules/HubFiscal/NfeService.js +3 -3
- package/dist/base/services/modules/HubFiscal/NfeService.js.map +1 -1
- package/dist/base/services/modules/SapService/Sap/ExecuteSapApiService.js +9 -1
- package/dist/base/services/modules/SapService/Sap/ExecuteSapApiService.js.map +1 -1
- package/dist/base/services/modules/Ticket/TicketService.js +16 -0
- package/dist/base/services/modules/Ticket/TicketService.js.map +1 -1
- package/dist/base/services/modules/agendamento/ContratoVendaService.js +2 -2
- package/dist/base/services/modules/agendamento/ContratoVendaService.js.map +1 -1
- package/dist/base/services/modules/centralNfe/cfop/CfopService.js +8 -0
- package/dist/base/services/modules/centralNfe/cfop/CfopService.js.map +1 -1
- package/dist/base/services/modules/centralNfe/historicoCfop/HistoricoCfopService.js +21 -0
- package/dist/base/services/modules/centralNfe/historicoCfop/HistoricoCfopService.js.map +1 -0
- package/dist/base/services/modules/centralNfe/vinculoOperacao/VinculoOperacaoService.js +7 -0
- package/dist/base/services/modules/centralNfe/vinculoOperacao/VinculoOperacaoService.js.map +1 -1
- package/dist/base/services/modules/compras/index.js +2 -0
- package/dist/base/services/modules/compras/index.js.map +1 -1
- package/dist/base/services/modules/compras/ordemCompra/ItemOrdemCompraService.js +14 -0
- package/dist/base/services/modules/compras/ordemCompra/ItemOrdemCompraService.js.map +1 -0
- package/dist/base/services/modules/dm/index.js +2 -1
- package/dist/base/services/modules/dm/municipio/MunicipioService.js +7 -0
- package/dist/base/services/modules/dm/municipio/MunicipioService.js.map +1 -1
- package/dist/base/services/modules/index.js +15 -5
- package/dist/base/services/modules/index.js.map +1 -1
- package/dist/base/services/modules/originacao/consumoManualSaldo/consumoManualSaldoService.js +50 -0
- package/dist/base/services/modules/originacao/consumoManualSaldo/consumoManualSaldoService.js.map +1 -0
- package/dist/base/services/modules/racao/carga/CargaService.js +14 -0
- package/dist/base/services/modules/racao/carga/CargaService.js.map +1 -1
- package/dist/base/services/modules/racao/index.js +3 -1
- package/dist/base/services/modules/template/example/ExampleService.js +26 -12
- package/dist/base/services/modules/template/example/ExampleService.js.map +1 -1
- package/dist/base/services/modules/template/exampleObject/ExampleObjectService.js +44 -0
- package/dist/base/services/modules/template/exampleObject/ExampleObjectService.js.map +1 -0
- package/dist/base/services/modules/template/index.js +5 -2
- package/dist/base/services/modules/trade/ContratoArmazenagemGraosTradeService.js +59 -0
- package/dist/base/services/modules/trade/ContratoArmazenagemGraosTradeService.js.map +1 -0
- package/dist/base/services/modules/transportadora/ContratoFrete/ContratoFreteService.js +14 -0
- package/dist/base/services/modules/transportadora/ContratoFrete/ContratoFreteService.js.map +1 -1
- package/dist/base/services/modules/transportadora/index.js +3 -1
- package/lib/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.tsx +5 -1
- package/lib/@ecme/components/layouts/PostLoginLayout/components/CollapsibleSide.stories.tsx +2 -2
- package/lib/@ecme/components/layouts/PostLoginLayout/components/ContentOverlay.stories.tsx +2 -2
- package/lib/@ecme/components/layouts/PostLoginLayout/components/FrameLessSide.stories.tsx +2 -2
- package/lib/@ecme/components/layouts/PostLoginLayout/components/StackedSide.stories.tsx +2 -2
- package/lib/@ecme/components/layouts/PostLoginLayout/components/TopBarClassic.stories.tsx +2 -2
- package/lib/@ecme/components/template/Header.stories.tsx +2 -2
- package/lib/@ecme/components/template/Notification/Notification.tsx +2 -2
- package/lib/@ecme/components/template/OrbeAiWidget/OrbeAiChatDrawer.tsx +140 -0
- package/lib/@ecme/components/template/OrbeAiWidget/OrbeAiWidget.tsx +155 -0
- package/lib/@ecme/components/template/OrbeAiWidget/ResizeHandles.tsx +47 -0
- package/lib/@ecme/components/template/OrbeAiWidget/index.ts +1 -0
- package/lib/@ecme/components/template/OrbeAiWidget/useResizablePanel.ts +143 -0
- package/lib/@ecme/components/template/Search.stories.tsx +20 -5
- package/lib/@ecme/components/template/Search.tsx +370 -84
- package/lib/@ecme/components/ui/Dropdown/DropdownMenu.tsx +7 -1
- package/lib/@ecme/components/view/ChatBox/ChatBox.tsx +8 -0
- package/lib/@ecme/components/view/ChatBox/components/MessageList.tsx +26 -8
- package/lib/@ecme/configs/navigation.config/concepts.navigation.config.ts +0 -16
- package/lib/@ecme/configs/routes.config/conceptsRoute.ts +0 -9
- package/lib/@ecme/locales/index.ts +0 -4
- package/lib/@ecme/locales/lang/ptBR/nav.ts +1 -0
- package/lib/@ecme/mock/data/favoritosMenuData.ts +3 -0
- package/lib/@ecme/services/AiService.ts +165 -13
- package/lib/@ecme/services/aiAuthHeaders.ts +58 -0
- package/lib/@ecme/services/axios/AxiosBase.ts +45 -24
- package/lib/@ecme/services/axios/AxiosRequestIntrceptorConfigCallback.ts +10 -39
- package/lib/@ecme/services/sseParser.ts +75 -0
- package/lib/@ecme/views/concepts/ai/Chat/components/AiErrorMessage.tsx +28 -0
- package/lib/@ecme/views/concepts/ai/Chat/components/AiThinkingIndicator.tsx +24 -0
- package/lib/@ecme/views/concepts/ai/Chat/components/ApprovalCard.tsx +103 -0
- package/lib/@ecme/views/concepts/ai/Chat/components/ChatHistory.tsx +11 -27
- package/lib/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.tsx +7 -13
- package/lib/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.tsx +17 -8
- package/lib/@ecme/views/concepts/ai/Chat/components/ChatLandingView.tsx +58 -50
- package/lib/@ecme/views/concepts/ai/Chat/components/ChatView.tsx +124 -18
- package/lib/@ecme/views/concepts/ai/Chat/components/DataRequestCard.tsx +144 -0
- package/lib/@ecme/views/concepts/ai/Chat/components/ToolCallChip.tsx +218 -0
- package/lib/@ecme/views/concepts/ai/Chat/components/toolPresentation.ts +283 -0
- package/lib/@ecme/views/concepts/ai/Chat/hooks/useChatConversations.tsx +128 -0
- package/lib/@ecme/views/concepts/ai/Chat/hooks/useChatSend.ts +233 -28
- package/lib/@ecme/views/concepts/ai/Chat/hooks/useConversationMessages.ts +68 -0
- package/lib/@ecme/views/concepts/ai/Chat/store/generativeChatStore.ts +84 -13
- package/lib/@ecme/views/concepts/ai/Chat/types.ts +133 -29
- package/lib/@ecme/views/concepts/ai/Chat/utils.ts +33 -0
- package/lib/@ecme/views/dashboards/FavoritesLanding/FavoritesLanding.tsx +124 -0
- package/lib/@ecme/views/dashboards/FavoritesLanding/index.ts +3 -0
- package/lib/@ecme/views/dashboards/FavoritesLanding/types.ts +17 -0
- package/lib/@ecme/views/dashboards/FavoritesLanding/utils.ts +51 -0
- package/lib/@ecme/views/dashboards/index.ts +1 -3
- package/lib/@ecme/views/index.ts +1 -1
- package/lib/base/@types/api/request/dm/TCreateFavoritoMenuRequest.ts +3 -0
- package/lib/base/@types/api/request/dm/TReorderFavoritosMenuRequest.ts +3 -0
- package/lib/base/@types/api/request/originacao/TSimularConsumoManualSaldoRequest.ts +8 -0
- package/lib/base/@types/api/response/dadosMestres/TFavoritoMenuResponse.ts +7 -0
- package/lib/base/@types/api/response/originacao/TConsumoManualSaldoResponse.ts +22 -0
- package/lib/base/@types/api/response/originacao/TFindAllSaldoResponse.ts +1 -0
- package/lib/base/@types/api/response/originacao/TSimularConsumoManualSaldoResponse.ts +17 -0
- package/lib/base/@types/enums/originacao/ModoConsumoManual.ts +4 -0
- package/lib/base/@types/enums/originacao/TipoSaldoConsumivel.ts +5 -0
- package/lib/base/@types/models/racao/carga.ts +51 -0
- package/lib/base/@types/models/template/example.ts +46 -0
- package/lib/base/@types/models/template/{exampleObject → exampleObject.ts} +3 -5
- package/lib/base/@types/models/transportadora/irpf.ts +1 -0
- package/lib/base/@types/models/transportadora/irpfFaixaDesconto.ts +0 -1
- package/lib/base/components/forms/GenericForms/GenericArrayFormSection.tsx +1 -1
- package/lib/base/components/shared/AceitarProcessoDialog.tsx +13 -2
- package/lib/base/components/shared/AdicionarHistoricoDialog.tsx +16 -13
- package/lib/base/components/shared/CancelarProcessoDialog.tsx +16 -13
- package/lib/base/components/shared/ConcluirProcessoDialog.tsx +16 -13
- package/lib/base/components/shared/EncerrarProcessoDialog.tsx +16 -13
- package/lib/base/components/shared/ReabrirProcessoDialog.tsx +16 -13
- package/lib/base/components/shared/RetornarFluxAtendimentoDialog.tsx +14 -12
- package/lib/base/components/shared/TransferirParaAtendenteDialog.tsx +14 -12
- package/lib/base/components/shared/TransferirParaSolicitanteDialog.tsx +14 -12
- package/lib/base/components/shared/TransferirProcessoDialog.tsx +20 -12
- package/lib/base/configs/api.config.ts +2 -2
- package/lib/base/configs/endpoints.config/DadosMestres/FavoritoMenu/favoritoMenu.endpoint.config.ts +10 -0
- package/lib/base/configs/endpoints.config/DadosMestres/Sap/incoterms.endpoint.config.ts +1 -0
- package/lib/base/configs/endpoints.config/DadosMestres/Sap/safra.endpoint.config.ts +1 -0
- package/lib/base/configs/endpoints.config/HubFiscal/nfe.endpoint.config.ts +1 -1
- package/lib/base/configs/endpoints.config/SapService/Sap/executeSapApi.endpoint.config.ts +1 -0
- package/lib/base/configs/endpoints.config/Ticket/ticket.endpoint.config.ts +2 -0
- package/lib/base/configs/endpoints.config/agendamento/config/contratoVenda.ts +0 -1
- package/lib/base/configs/endpoints.config/centralNfe/centralNfe.ts +2 -0
- package/lib/base/configs/endpoints.config/centralNfe/config/cfop.ts +3 -2
- package/lib/base/configs/endpoints.config/centralNfe/config/historicoCfop.ts +8 -0
- package/lib/base/configs/endpoints.config/centralNfe/config/vinculoOperacao.ts +2 -1
- package/lib/base/configs/endpoints.config/compras/compras.ts +3 -1
- package/lib/base/configs/endpoints.config/compras/config/itemOrdemCompra.ts +7 -0
- package/lib/base/configs/endpoints.config/dm/config/municipio.ts +2 -1
- package/lib/base/configs/endpoints.config/endpoints.navigation.ts +5 -1
- package/lib/base/configs/endpoints.config/insumos/config/estoque.ts +2 -7
- package/lib/base/configs/endpoints.config/originacao/config/consumoManualSaldo.ts +9 -0
- package/lib/base/configs/endpoints.config/originacao/originacao.ts +2 -0
- package/lib/base/configs/endpoints.config/racao/config/carga.ts +2 -0
- package/lib/base/configs/endpoints.config/trade/config/contratoArmazenagemGraosTrade.ts +13 -0
- package/lib/base/configs/endpoints.config/trade/index.ts +7 -0
- package/lib/base/configs/endpoints.config/transportadora/contratoFrete.ts +2 -0
- package/lib/base/configs/navigation.config/modules.navigation.ts +2 -0
- package/lib/base/configs/navigation.config/modules.submenu/gestaoServicos/submenu.gestaoServicos.ts +107 -0
- package/lib/base/configs/navigation.config/modules.submenu/index.ts +1 -0
- package/lib/base/configs/navigation.config/modules.submenu/originacao/consumoManualSaldo/submenu.consumoManualSaldo.ts +16 -0
- package/lib/base/configs/navigation.config/modules.submenu/template/cadastros/submenu.example.ts +1 -1
- package/lib/base/configs/navigation.config/modules.submenu/template/submenu.template.ts +2 -3
- package/lib/base/configs/navigation.config/modules.submenu/trade/submenu.trade.ts +18 -0
- package/lib/base/configs/navigation.config/submenu/agendamento/config/relatorio-cotas.ts +1 -1
- package/lib/base/configs/navigation.config/submenu/centralNfe/cadastros.submenu.ts +2 -0
- package/lib/base/configs/navigation.config/submenu/centralNfe/config/cfop.submenu.ts +16 -0
- package/lib/base/configs/navigation.config/submenu/index.ts +1 -2
- package/lib/base/configs/navigation.config/submenu/originacao/originacao.submenu.ts +2 -0
- package/lib/base/configs/navigation.config/submenu/{example → template}/config/example.submenu.ts +3 -3
- package/lib/base/configs/navigation.config/submenu/{example → template}/config/exampleObject.submenu.ts +3 -3
- package/lib/base/configs/navigation.config/submenu/ticket/cadastros.submenu.ts +4 -0
- package/lib/base/configs/navigation.config/submenu/ticket/config/relatorioTransferenciaArmazens.submenu.ts +16 -0
- package/lib/base/configs/navigation.config/submenu/ticket/config/relatorioVendasGraos.submenu.ts +16 -0
- package/lib/base/configs/navigation.config/submenu/ticket/relatorios.submenu.ts +4 -14
- package/lib/base/configs/navigation.config/submenu/trade/configs/contratoArmazenagemGraosTrade.submenu.ts +16 -0
- package/lib/base/configs/navigation.config/submenu/trade/trade.submenu.ts +8 -0
- package/lib/base/locales/lang/ptBR/modules/Ticket/ticket.nav.ts +2 -0
- package/lib/base/services/modules/DadosMestres/FavoritoMenu/FavoritoMenuService.ts +35 -0
- package/lib/base/services/modules/DadosMestres/Sap/IncotermsService.ts +8 -0
- package/lib/base/services/modules/DadosMestres/Sap/SafraService.ts +8 -0
- package/lib/base/services/modules/HubFiscal/NfeService.ts +2 -2
- package/lib/base/services/modules/SapService/Sap/ExecuteSapApiService.ts +8 -0
- package/lib/base/services/modules/Ticket/TicketService.ts +16 -0
- package/lib/base/services/modules/agendamento/ContratoVendaService.ts +2 -2
- package/lib/base/services/modules/centralNfe/cfop/CfopService.ts +9 -1
- package/lib/base/services/modules/centralNfe/historicoCfop/HistoricoCfopService.ts +21 -0
- package/lib/base/services/modules/centralNfe/vinculoOperacao/VinculoOperacaoService.ts +7 -0
- package/lib/base/services/modules/compras/index.ts +2 -1
- package/lib/base/services/modules/compras/ordemCompra/ItemOrdemCompraService.ts +12 -0
- package/lib/base/services/modules/dm/municipio/MunicipioService.tsx +7 -0
- package/lib/base/services/modules/originacao/consumoManualSaldo/consumoManualSaldoService.ts +54 -0
- package/lib/base/services/modules/racao/carga/CargaService.ts +15 -1
- package/lib/base/services/modules/template/example/ExampleService.ts +37 -19
- package/lib/base/services/modules/template/exampleObject/ExampleObjectService.ts +45 -0
- package/lib/base/services/modules/template/index.ts +2 -2
- package/lib/base/services/modules/trade/ContratoArmazenagemGraosTradeService.ts +62 -0
- package/lib/base/services/modules/transportadora/ContratoFrete/ContratoFreteService.ts +14 -0
- package/package.json +1 -1
- package/dist/@types/base/configs/navigation.config/submenu/example/cadastros.submenu.d.ts.map +0 -1
- package/dist/@types/base/configs/navigation.config/submenu/example/config/example.submenu.d.ts.map +0 -1
- package/dist/@types/base/configs/navigation.config/submenu/example/config/exampleObject.submenu.d.ts.map +0 -1
- package/dist/@types/base/configs/navigation.config/submenu/example/template.submenu.d.ts.map +0 -1
- package/dist/@types/base/services/modules/template/example/ExampleObjectService.d.ts +0 -6
- package/dist/@types/base/services/modules/template/example/ExampleObjectService.d.ts.map +0 -1
- package/dist/base/configs/navigation.config/submenu/example/cadastros.submenu.js.map +0 -1
- package/dist/base/configs/navigation.config/submenu/example/config/example.submenu.js.map +0 -1
- package/dist/base/configs/navigation.config/submenu/example/config/exampleObject.submenu.js.map +0 -1
- package/dist/base/configs/navigation.config/submenu/example/template.submenu.js.map +0 -1
- package/dist/base/services/modules/template/example/ExampleObjectService.js +0 -37
- package/dist/base/services/modules/template/example/ExampleObjectService.js.map +0 -1
- package/lib/base/@types/models/template/example +0 -37
- package/lib/base/services/modules/template/example/ExampleObjectService.ts +0 -34
- /package/dist/@types/base/configs/navigation.config/submenu/{example → template}/cadastros.submenu.d.ts +0 -0
- /package/dist/@types/base/configs/navigation.config/submenu/{example → template}/config/example.submenu.d.ts +0 -0
- /package/dist/@types/base/configs/navigation.config/submenu/{example → template}/config/exampleObject.submenu.d.ts +0 -0
- /package/dist/@types/base/configs/navigation.config/submenu/{example → template}/template.submenu.d.ts +0 -0
- /package/dist/base/configs/navigation.config/submenu/{example → template}/cadastros.submenu.js +0 -0
- /package/dist/base/configs/navigation.config/submenu/{example → template}/template.submenu.js +0 -0
- /package/lib/base/configs/navigation.config/submenu/{example → template}/cadastros.submenu.ts +0 -0
- /package/lib/base/configs/navigation.config/submenu/{example → template}/template.submenu.ts +0 -0
|
@@ -38,22 +38,6 @@ const conceptsNavigationConfig: NavigationTree[] = [
|
|
|
38
38
|
},
|
|
39
39
|
},
|
|
40
40
|
subMenu: [
|
|
41
|
-
{
|
|
42
|
-
key: 'concepts.ai.chat',
|
|
43
|
-
path: `${CONCEPTS_PREFIX_PATH}/ai/chat`,
|
|
44
|
-
title: 'Chat',
|
|
45
|
-
translateKey: 'nav.conceptsAi.chat',
|
|
46
|
-
icon: 'aiChat',
|
|
47
|
-
type: NAV_ITEM_TYPE_ITEM,
|
|
48
|
-
authority: [ADMIN, USER],
|
|
49
|
-
meta: {
|
|
50
|
-
description: {
|
|
51
|
-
translateKey: 'nav.conceptsAi.chatDesc',
|
|
52
|
-
label: 'AI-powered chat systems',
|
|
53
|
-
},
|
|
54
|
-
},
|
|
55
|
-
subMenu: [],
|
|
56
|
-
},
|
|
57
41
|
{
|
|
58
42
|
key: 'concepts.ai.image',
|
|
59
43
|
path: `${CONCEPTS_PREFIX_PATH}/ai/image`,
|
|
@@ -4,15 +4,6 @@ import { ADMIN, USER } from '@/constants/roles.constant'
|
|
|
4
4
|
import type { Routes } from '@/@types/routes'
|
|
5
5
|
|
|
6
6
|
const conceptsRoute: Routes = [
|
|
7
|
-
{
|
|
8
|
-
key: 'concepts.ai.chat',
|
|
9
|
-
path: `${CONCEPTS_PREFIX_PATH}/ai/chat`,
|
|
10
|
-
component: lazy(() => import('@/views/concepts/ai/Chat')),
|
|
11
|
-
authority: [ADMIN, USER],
|
|
12
|
-
meta: {
|
|
13
|
-
pageContainerType: 'contained',
|
|
14
|
-
},
|
|
15
|
-
},
|
|
16
7
|
{
|
|
17
8
|
key: 'concepts.ai.image',
|
|
18
9
|
path: `${CONCEPTS_PREFIX_PATH}/ai/image`,
|
|
@@ -62,6 +62,7 @@ export default {
|
|
|
62
62
|
vinculoUnidadeMedida: 'Vínculo de Unidade de Medida',
|
|
63
63
|
vinculoOperacao: 'Vínculo de Operação',
|
|
64
64
|
vinculoIva: 'Vínculo de IVA',
|
|
65
|
+
cfop: 'CFOP',
|
|
65
66
|
notificacaoCentralNfe: 'Notificação Central NFe',
|
|
66
67
|
nfe: 'NFe',
|
|
67
68
|
intervaloPrecoXml: 'Intervalo Preço XML',
|
|
@@ -1,27 +1,179 @@
|
|
|
1
|
+
import { authHeaders } from './aiAuthHeaders'
|
|
1
2
|
import ApiService from './ApiService'
|
|
3
|
+
import { readSse } from './sseParser'
|
|
4
|
+
import type { ChatEvent } from '@/views/concepts/ai/Chat/types'
|
|
5
|
+
import type { AxiosRequestConfig } from 'axios'
|
|
2
6
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
const AI_DEV_URL = 'http://localhost:8000'
|
|
8
|
+
const AI_BUILD_URL = 'https://orbe-ai.apps.qas.orbeagro.com.br'
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Host da API de IA.
|
|
12
|
+
*
|
|
13
|
+
* O /ai/* nao vive no gateway do resto da aplicacao, entao nao pode usar o
|
|
14
|
+
* baseURL do AxiosBase (API_URL). A resolucao e por origin em runtime, e nao
|
|
15
|
+
* por import.meta.env.MODE, porque o MODE e congelado na build da lib como
|
|
16
|
+
* "production" e nao reflete o dev do MFE consumidor.
|
|
17
|
+
*/
|
|
18
|
+
function getAiApiUrl() {
|
|
19
|
+
const origin = globalThis?.location?.origin ?? ''
|
|
20
|
+
|
|
21
|
+
if (origin.includes('localhost') || origin.includes('127.0.0.1')) {
|
|
22
|
+
return AI_DEV_URL
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// QAS e PRD compartilham a mesma URL por enquanto. Quando houver uma URL
|
|
26
|
+
// de PRD, o split entra aqui: if (origin.includes('.prd.')) return AI_PRD_URL
|
|
27
|
+
return AI_BUILD_URL
|
|
12
28
|
}
|
|
13
29
|
|
|
14
|
-
export
|
|
15
|
-
|
|
30
|
+
export const AI_API_URL = getAiApiUrl()
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Toda chamada de IA sai pelo AI_API_URL (o baseURL por requisicao vence o da
|
|
34
|
+
* instancia do AxiosBase) e fica fora do loading global — o chat mostra o
|
|
35
|
+
* proprio balaozinho de "digitando".
|
|
36
|
+
*/
|
|
37
|
+
const aiRequest = <T>(config: AxiosRequestConfig) =>
|
|
38
|
+
ApiService.fetchDataWithAxios<T>({
|
|
39
|
+
...config,
|
|
40
|
+
baseURL: AI_API_URL,
|
|
41
|
+
skipGlobalLoading: true,
|
|
42
|
+
})
|
|
43
|
+
|
|
44
|
+
export async function apiGetChatHistory<T>(conversationId?: string) {
|
|
45
|
+
return aiRequest<T>({
|
|
16
46
|
url: '/ai/chat/history',
|
|
17
47
|
method: 'get',
|
|
48
|
+
params: conversationId ? { conversation_id: conversationId } : undefined,
|
|
49
|
+
})
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/** Conversas do usuário (só o resumo), a mais recente primeiro. */
|
|
53
|
+
export async function apiGetConversations<T>() {
|
|
54
|
+
return aiRequest<T>({
|
|
55
|
+
url: '/ai/chat/conversations',
|
|
56
|
+
method: 'get',
|
|
57
|
+
})
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export async function apiRenameConversation(conversationId: string, title: string) {
|
|
61
|
+
return aiRequest<void>({
|
|
62
|
+
url: `/ai/chat/conversations/${encodeURIComponent(conversationId)}`,
|
|
63
|
+
method: 'patch',
|
|
64
|
+
data: { title },
|
|
65
|
+
})
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/** Apaga a conversa e toda a memória dela no backend. */
|
|
69
|
+
export async function apiDeleteConversation(conversationId: string) {
|
|
70
|
+
return aiRequest<void>({
|
|
71
|
+
url: `/ai/chat/conversations/${encodeURIComponent(conversationId)}`,
|
|
72
|
+
method: 'delete',
|
|
73
|
+
})
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export type StreamChatParams = {
|
|
77
|
+
prompt: string
|
|
78
|
+
/** Identifica a conversa; o backend usa como thread da memoria. */
|
|
79
|
+
conversationId?: string
|
|
80
|
+
signal?: AbortSignal
|
|
81
|
+
onEvent: (evento: ChatEvent) => void
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Resposta a pausa atual do agente. Ha duas, e um endpoint so:
|
|
86
|
+
* - `approved` responde ao `approval_required` (true aprova, false nega).
|
|
87
|
+
* - `dados` responde ao `input_required`; `null` = o usuario fechou o
|
|
88
|
+
* formulario sem preencher.
|
|
89
|
+
*/
|
|
90
|
+
export type ResumeChatParams = {
|
|
91
|
+
approved?: boolean
|
|
92
|
+
dados?: Record<string, unknown> | null
|
|
93
|
+
conversationId?: string
|
|
94
|
+
signal?: AbortSignal
|
|
95
|
+
onEvent: (evento: ChatEvent) => void
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Envia a mensagem e consome a resposta em streaming (SSE).
|
|
100
|
+
*
|
|
101
|
+
* Usa `fetch`, e nao o Axios, porque o Axios no browser so resolve a Promise
|
|
102
|
+
* com a resposta inteira — nao ha como ler o corpo enquanto ele chega.
|
|
103
|
+
*/
|
|
104
|
+
export async function streamChat({
|
|
105
|
+
prompt,
|
|
106
|
+
conversationId,
|
|
107
|
+
signal,
|
|
108
|
+
onEvent,
|
|
109
|
+
}: StreamChatParams): Promise<void> {
|
|
110
|
+
await postarEConsumir(
|
|
111
|
+
'/ai/chat/stream',
|
|
112
|
+
{ prompt, conversation_id: conversationId },
|
|
113
|
+
onEvent,
|
|
114
|
+
signal,
|
|
115
|
+
)
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Retoma uma conversa parada numa pausa (aprovacao ou coleta de dados).
|
|
120
|
+
*
|
|
121
|
+
* Devolve o mesmo tipo de stream do `streamChat`, e a resposta continua na
|
|
122
|
+
* MESMA mensagem do chat — o backend so volta do ponto onde parou.
|
|
123
|
+
*
|
|
124
|
+
* O `JSON.stringify` descarta chaves `undefined`, entao o backend recebe apenas
|
|
125
|
+
* o campo da pausa que esta sendo respondida.
|
|
126
|
+
*/
|
|
127
|
+
export async function resumeChat({
|
|
128
|
+
approved,
|
|
129
|
+
dados,
|
|
130
|
+
conversationId,
|
|
131
|
+
signal,
|
|
132
|
+
onEvent,
|
|
133
|
+
}: ResumeChatParams): Promise<void> {
|
|
134
|
+
await postarEConsumir(
|
|
135
|
+
'/ai/chat/resume',
|
|
136
|
+
{ approved, dados, conversation_id: conversationId },
|
|
137
|
+
onEvent,
|
|
138
|
+
signal,
|
|
139
|
+
)
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/** POST + leitura do SSE, comum ao envio e a retomada. */
|
|
143
|
+
async function postarEConsumir(
|
|
144
|
+
caminho: string,
|
|
145
|
+
corpo: Record<string, unknown>,
|
|
146
|
+
onEvent: (evento: ChatEvent) => void,
|
|
147
|
+
signal?: AbortSignal,
|
|
148
|
+
): Promise<void> {
|
|
149
|
+
const resposta = await fetch(`${AI_API_URL}${caminho}`, {
|
|
150
|
+
method: 'POST',
|
|
151
|
+
headers: {
|
|
152
|
+
...authHeaders(),
|
|
153
|
+
'Content-Type': 'application/json',
|
|
154
|
+
},
|
|
155
|
+
body: JSON.stringify(corpo),
|
|
156
|
+
signal,
|
|
157
|
+
})
|
|
158
|
+
|
|
159
|
+
if (!resposta.ok || !resposta.body) {
|
|
160
|
+
throw new Error(`Falha ao falar com a IA (HTTP ${resposta.status})`)
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
await readSse(resposta.body, ({ event, data }) => {
|
|
164
|
+
try {
|
|
165
|
+
onEvent({ type: event, data: JSON.parse(data) } as ChatEvent)
|
|
166
|
+
} catch (error) {
|
|
167
|
+
// Evento malformado nao pode derrubar o stream inteiro.
|
|
168
|
+
console.debug('Evento SSE ignorado:', event, error)
|
|
169
|
+
}
|
|
18
170
|
})
|
|
19
171
|
}
|
|
20
172
|
|
|
21
173
|
export async function apiGetImages<T, U extends Record<string, unknown>>(
|
|
22
174
|
params: U,
|
|
23
175
|
) {
|
|
24
|
-
return
|
|
176
|
+
return aiRequest<T>({
|
|
25
177
|
url: '/ai/images',
|
|
26
178
|
method: 'get',
|
|
27
179
|
params,
|
|
@@ -31,7 +183,7 @@ export async function apiGetImages<T, U extends Record<string, unknown>>(
|
|
|
31
183
|
export async function apiPostImages<T, U extends Record<string, unknown>>(
|
|
32
184
|
data: U,
|
|
33
185
|
) {
|
|
34
|
-
return
|
|
186
|
+
return aiRequest<T>({
|
|
35
187
|
url: '/ai/images',
|
|
36
188
|
method: 'post',
|
|
37
189
|
data,
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import appConfig from '@/configs/app.config'
|
|
2
|
+
import {
|
|
3
|
+
REQUEST_HEADER_AUTH_KEY,
|
|
4
|
+
TOKEN_NAME_IN_STORAGE,
|
|
5
|
+
TOKEN_TYPE,
|
|
6
|
+
} from '@/constants/api.constant'
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Headers de autenticacao lidos do storage.
|
|
10
|
+
*
|
|
11
|
+
* Existe porque o chat de IA usa `fetch` (o Axios nao faz streaming no
|
|
12
|
+
* browser) e portanto nao passa pelo interceptor. Em vez de duplicar as regras
|
|
13
|
+
* de onde mora o token, o interceptor e o fetch chamam esta funcao — uma
|
|
14
|
+
* verdade so.
|
|
15
|
+
*
|
|
16
|
+
* Ver AxiosRequestIntrceptorConfigCallback, que a consome.
|
|
17
|
+
*/
|
|
18
|
+
export const authHeaders = (): Record<string, string> => {
|
|
19
|
+
const storage = appConfig.accessTokenPersistStrategy
|
|
20
|
+
const headers: Record<string, string> = {}
|
|
21
|
+
|
|
22
|
+
if (storage !== 'localStorage' && storage !== 'sessionStorage') {
|
|
23
|
+
return headers
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
const source = storage === 'localStorage' ? localStorage : sessionStorage
|
|
27
|
+
const accessToken = source.getItem(TOKEN_NAME_IN_STORAGE) || ''
|
|
28
|
+
|
|
29
|
+
if (accessToken) {
|
|
30
|
+
headers[REQUEST_HEADER_AUTH_KEY] = `${TOKEN_TYPE}${accessToken}`
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const userId = readUserId()
|
|
34
|
+
if (userId) {
|
|
35
|
+
headers['X-User-Id'] = userId
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
return headers
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* userId da sessao persistida pelo zustand.
|
|
43
|
+
*
|
|
44
|
+
* Silencioso em caso de erro: um storage corrompido nao pode derrubar a
|
|
45
|
+
* requisicao — sem o header, o backend apenas trata o usuario como desconhecido.
|
|
46
|
+
*/
|
|
47
|
+
const readUserId = (): string | undefined => {
|
|
48
|
+
try {
|
|
49
|
+
const raw = localStorage.getItem('SessionUserPageStore')
|
|
50
|
+
if (!raw) {
|
|
51
|
+
return undefined
|
|
52
|
+
}
|
|
53
|
+
return JSON.parse(raw)?.state?.user?.userId
|
|
54
|
+
} catch (error) {
|
|
55
|
+
console.debug('Could not read userId from session store:', error)
|
|
56
|
+
return undefined
|
|
57
|
+
}
|
|
58
|
+
}
|
|
@@ -6,6 +6,19 @@ import { useLoadingConfigStore, getCurrentMicrofrontendId } from "@base/store";
|
|
|
6
6
|
import AxiosRequestIntrceptorConfigCallback from "./AxiosRequestIntrceptorConfigCallback";
|
|
7
7
|
import AxiosResponseIntrceptorErrorCallback from "./AxiosResponseIntrceptorErrorCallback";
|
|
8
8
|
|
|
9
|
+
/**
|
|
10
|
+
* Permite que uma requisição específica seja excluída do loading global
|
|
11
|
+
* (overlay de tela cheia). Útil para chamadas que exibem seu próprio
|
|
12
|
+
* indicador de carregamento — ex.: o chat de IA, que mostra o balãozinho
|
|
13
|
+
* de "digitando". Comportamento padrão inalterado: só afeta requisições
|
|
14
|
+
* que marcarem explicitamente `skipGlobalLoading: true`.
|
|
15
|
+
*/
|
|
16
|
+
declare module "axios" {
|
|
17
|
+
interface AxiosRequestConfig {
|
|
18
|
+
skipGlobalLoading?: boolean;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
9
22
|
const AxiosBase = axios.create({
|
|
10
23
|
timeout: 600000,
|
|
11
24
|
baseURL: API_URL,
|
|
@@ -13,25 +26,37 @@ const AxiosBase = axios.create({
|
|
|
13
26
|
|
|
14
27
|
let activeRequests = 0;
|
|
15
28
|
|
|
29
|
+
const startGlobalLoading = () => {
|
|
30
|
+
const microfrontendId = getCurrentMicrofrontendId();
|
|
31
|
+
const loadingConfig = useLoadingConfigStore.getState();
|
|
32
|
+
if (loadingConfig.getGlobalLoadingEnabled(microfrontendId)) {
|
|
33
|
+
useThemeStore.getState().setLoading(true);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
const stopGlobalLoading = () => {
|
|
38
|
+
const microfrontendId = getCurrentMicrofrontendId();
|
|
39
|
+
const loadingConfig = useLoadingConfigStore.getState();
|
|
40
|
+
if (loadingConfig.getGlobalLoadingEnabled(microfrontendId)) {
|
|
41
|
+
useThemeStore.getState().setLoading(false);
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
|
|
16
45
|
AxiosBase.interceptors.request.use(
|
|
17
46
|
(config) => {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
if (loadingConfig.getGlobalLoadingEnabled(microfrontendId)) {
|
|
23
|
-
useThemeStore.getState().setLoading(true);
|
|
47
|
+
if (!config.skipGlobalLoading) {
|
|
48
|
+
activeRequests++;
|
|
49
|
+
if (activeRequests === 1) {
|
|
50
|
+
startGlobalLoading();
|
|
24
51
|
}
|
|
25
52
|
}
|
|
26
53
|
return AxiosRequestIntrceptorConfigCallback(config);
|
|
27
54
|
},
|
|
28
55
|
(error) => {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
if (loadingConfig.getGlobalLoadingEnabled(microfrontendId)) {
|
|
34
|
-
useThemeStore.getState().setLoading(false);
|
|
56
|
+
if (!error?.config?.skipGlobalLoading) {
|
|
57
|
+
activeRequests = Math.max(0, activeRequests - 1);
|
|
58
|
+
if (activeRequests === 0) {
|
|
59
|
+
stopGlobalLoading();
|
|
35
60
|
}
|
|
36
61
|
}
|
|
37
62
|
return Promise.reject(error);
|
|
@@ -40,23 +65,19 @@ AxiosBase.interceptors.request.use(
|
|
|
40
65
|
|
|
41
66
|
AxiosBase.interceptors.response.use(
|
|
42
67
|
(response) => {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
if (loadingConfig.getGlobalLoadingEnabled(microfrontendId)) {
|
|
48
|
-
useThemeStore.getState().setLoading(false);
|
|
68
|
+
if (!response.config?.skipGlobalLoading) {
|
|
69
|
+
activeRequests = Math.max(0, activeRequests - 1);
|
|
70
|
+
if (activeRequests === 0) {
|
|
71
|
+
stopGlobalLoading();
|
|
49
72
|
}
|
|
50
73
|
}
|
|
51
74
|
return response;
|
|
52
75
|
},
|
|
53
76
|
(error: AxiosError) => {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
if (loadingConfig.getGlobalLoadingEnabled(microfrontendId)) {
|
|
59
|
-
useThemeStore.getState().setLoading(false);
|
|
77
|
+
if (!error.config?.skipGlobalLoading) {
|
|
78
|
+
activeRequests = Math.max(0, activeRequests - 1);
|
|
79
|
+
if (activeRequests === 0) {
|
|
80
|
+
stopGlobalLoading();
|
|
60
81
|
}
|
|
61
82
|
}
|
|
62
83
|
AxiosResponseIntrceptorErrorCallback(error);
|
|
@@ -1,47 +1,18 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
TOKEN_TYPE,
|
|
4
|
-
REQUEST_HEADER_AUTH_KEY,
|
|
5
|
-
TOKEN_NAME_IN_STORAGE,
|
|
6
|
-
} from '@/constants/api.constant'
|
|
1
|
+
import { authHeaders } from '../aiAuthHeaders'
|
|
7
2
|
import type { InternalAxiosRequestConfig } from 'axios'
|
|
8
3
|
|
|
4
|
+
/**
|
|
5
|
+
* Injeta Authorization e X-User-Id em toda requisicao do Axios.
|
|
6
|
+
*
|
|
7
|
+
* As regras de onde o token mora vivem em `authHeaders` — compartilhadas com o
|
|
8
|
+
* chat de IA, que usa `fetch` e nao passa por aqui.
|
|
9
|
+
*/
|
|
9
10
|
const AxiosRequestIntrceptorConfigCallback = (
|
|
10
11
|
config: InternalAxiosRequestConfig,
|
|
11
12
|
) => {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
let accessToken = ''
|
|
16
|
-
|
|
17
|
-
if (storage === 'localStorage') {
|
|
18
|
-
accessToken = localStorage.getItem(TOKEN_NAME_IN_STORAGE) || ''
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
if (storage === 'sessionStorage') {
|
|
22
|
-
accessToken = sessionStorage.getItem(TOKEN_NAME_IN_STORAGE) || ''
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
if (accessToken) {
|
|
26
|
-
config.headers[REQUEST_HEADER_AUTH_KEY] =
|
|
27
|
-
`${TOKEN_TYPE}${accessToken}`
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
// Adicionar X-User-Id header se o usuário estiver autenticado
|
|
31
|
-
try {
|
|
32
|
-
const sessionUserStore = localStorage.getItem('SessionUserPageStore')
|
|
33
|
-
if (sessionUserStore) {
|
|
34
|
-
const parsedStore = JSON.parse(sessionUserStore)
|
|
35
|
-
const userId = parsedStore?.state?.user?.userId
|
|
36
|
-
if (userId) {
|
|
37
|
-
config.headers['X-User-Id'] = userId
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
} catch (error) {
|
|
41
|
-
// Silently ignore errors reading user session
|
|
42
|
-
console.debug('Could not read userId from session store:', error)
|
|
43
|
-
}
|
|
44
|
-
}
|
|
13
|
+
Object.entries(authHeaders()).forEach(([chave, valor]) => {
|
|
14
|
+
config.headers[chave] = valor
|
|
15
|
+
})
|
|
45
16
|
|
|
46
17
|
return config
|
|
47
18
|
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parser de Server-Sent Events sobre um ReadableStream.
|
|
3
|
+
*
|
|
4
|
+
* O EventSource nativo do browser nao serve aqui: ele so faz GET e nao aceita
|
|
5
|
+
* headers, e o chat e um POST autenticado. Entao lemos o corpo do `fetch` na
|
|
6
|
+
* mao.
|
|
7
|
+
*
|
|
8
|
+
* Duas bordas do protocolo que uma implementacao ingenua erra:
|
|
9
|
+
*
|
|
10
|
+
* 1. um chunk da rede pode cortar um evento no meio — por isso o resto fica no
|
|
11
|
+
* buffer ate chegar o proximo `\n\n`;
|
|
12
|
+
* 2. um chunk pode trazer varios eventos de uma vez.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
export type SseEvent = {
|
|
16
|
+
event: string
|
|
17
|
+
data: string
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const SEPARADOR = /\r?\n\r?\n/
|
|
21
|
+
|
|
22
|
+
/** Le o stream ate o fim, chamando `onEvent` a cada evento completo. */
|
|
23
|
+
export async function readSse(
|
|
24
|
+
body: ReadableStream<Uint8Array>,
|
|
25
|
+
onEvent: (evento: SseEvent) => void,
|
|
26
|
+
): Promise<void> {
|
|
27
|
+
const reader = body.getReader()
|
|
28
|
+
const decoder = new TextDecoder()
|
|
29
|
+
let buffer = ''
|
|
30
|
+
|
|
31
|
+
try {
|
|
32
|
+
for (;;) {
|
|
33
|
+
const { done, value } = await reader.read()
|
|
34
|
+
|
|
35
|
+
if (done) {
|
|
36
|
+
// O ultimo evento pode nao vir seguido de linha em branco.
|
|
37
|
+
emitir(buffer, onEvent)
|
|
38
|
+
return
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
buffer += decoder.decode(value, { stream: true })
|
|
42
|
+
|
|
43
|
+
const blocos = buffer.split(SEPARADOR)
|
|
44
|
+
// O ultimo pedaco pode estar incompleto: volta para o buffer.
|
|
45
|
+
buffer = blocos.pop() ?? ''
|
|
46
|
+
blocos.forEach((bloco) => emitir(bloco, onEvent))
|
|
47
|
+
}
|
|
48
|
+
} finally {
|
|
49
|
+
reader.releaseLock()
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/** Converte um bloco "event: x\ndata: y" em SseEvent. */
|
|
54
|
+
function emitir(bloco: string, onEvent: (evento: SseEvent) => void) {
|
|
55
|
+
if (!bloco.trim()) {
|
|
56
|
+
return
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
let event = 'message'
|
|
60
|
+
const dados: string[] = []
|
|
61
|
+
|
|
62
|
+
bloco.split(/\r?\n/).forEach((linha) => {
|
|
63
|
+
if (linha.startsWith('event:')) {
|
|
64
|
+
event = linha.slice(6).trim()
|
|
65
|
+
} else if (linha.startsWith('data:')) {
|
|
66
|
+
// O espaco depois de "data:" e opcional no protocolo.
|
|
67
|
+
dados.push(linha.slice(5).replace(/^ /, ''))
|
|
68
|
+
}
|
|
69
|
+
// Linhas iniciadas por ":" sao comentarios (keep-alive) e sao ignoradas.
|
|
70
|
+
})
|
|
71
|
+
|
|
72
|
+
if (dados.length) {
|
|
73
|
+
onEvent({ event, data: dados.join('\n') })
|
|
74
|
+
}
|
|
75
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { TbPlugConnectedX } from 'react-icons/tb'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Mensagem de erro do agente Orbe AI — exibida no lugar da resposta quando a
|
|
5
|
+
* comunicação com o serviço de IA falha, com acento vermelho para sinalizar
|
|
6
|
+
* o erro sem quebrar o tom visual do chat.
|
|
7
|
+
*/
|
|
8
|
+
const AiErrorMessage = () => {
|
|
9
|
+
return (
|
|
10
|
+
<span className="flex items-start gap-3">
|
|
11
|
+
<span className="mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-full bg-red-100 text-red-500 dark:bg-red-500/15 dark:text-red-400">
|
|
12
|
+
<TbPlugConnectedX size={18} />
|
|
13
|
+
</span>
|
|
14
|
+
<span className="flex flex-col gap-0.5">
|
|
15
|
+
<span className="text-sm font-semibold text-red-600 dark:text-red-400">
|
|
16
|
+
Falha na comunicação
|
|
17
|
+
</span>
|
|
18
|
+
<span className="text-sm text-red-500/90 dark:text-red-300/90">
|
|
19
|
+
Desculpe, estou com um pequeno problema de comunicação e
|
|
20
|
+
não consigo te atender no momento. Tente novamente em
|
|
21
|
+
instantes.
|
|
22
|
+
</span>
|
|
23
|
+
</span>
|
|
24
|
+
</span>
|
|
25
|
+
)
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export default AiErrorMessage
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { TbSparkles } from 'react-icons/tb'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Indicador de "pensando" do agente Orbe AI — loader profissional exibido
|
|
5
|
+
* enquanto a resposta está sendo gerada (estado isTyping do chat).
|
|
6
|
+
*/
|
|
7
|
+
const AiThinkingIndicator = () => {
|
|
8
|
+
return (
|
|
9
|
+
<span className="flex items-center gap-2 text-gray-500 dark:text-gray-400">
|
|
10
|
+
<TbSparkles
|
|
11
|
+
size={18}
|
|
12
|
+
className="text-primary motion-safe:animate-pulse"
|
|
13
|
+
/>
|
|
14
|
+
<span className="text-sm">Orbe AI está pensando</span>
|
|
15
|
+
<span className="inline-flex items-center gap-1">
|
|
16
|
+
<span className="size-1.5 rounded-full bg-primary motion-safe:animate-bounce [animation-delay:-0.3s]" />
|
|
17
|
+
<span className="size-1.5 rounded-full bg-primary motion-safe:animate-bounce [animation-delay:-0.15s]" />
|
|
18
|
+
<span className="size-1.5 rounded-full bg-primary motion-safe:animate-bounce" />
|
|
19
|
+
</span>
|
|
20
|
+
</span>
|
|
21
|
+
)
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export default AiThinkingIndicator
|