@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.
Files changed (701) hide show
  1. package/dist/@ecme/assets/styles/app.css +240 -7
  2. package/dist/@ecme/assets/styles/tailwind/index.css +252 -8
  3. package/dist/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.js +4 -0
  4. package/dist/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.js.map +1 -1
  5. package/dist/@ecme/components/layouts/PostLoginLayout/components/CollapsibleSide.stories.js.map +1 -1
  6. package/dist/@ecme/components/layouts/PostLoginLayout/components/ContentOverlay.stories.js.map +1 -1
  7. package/dist/@ecme/components/layouts/PostLoginLayout/components/FrameLessSide.stories.js.map +1 -1
  8. package/dist/@ecme/components/layouts/PostLoginLayout/components/StackedSide.stories.js.map +1 -1
  9. package/dist/@ecme/components/layouts/PostLoginLayout/components/TopBarClassic.stories.js.map +1 -1
  10. package/dist/@ecme/components/template/Footer.js +1 -1
  11. package/dist/@ecme/components/template/Header.stories.js.map +1 -1
  12. package/dist/@ecme/components/template/Notification/Notification.js +1 -4
  13. package/dist/@ecme/components/template/Notification/Notification.js.map +1 -1
  14. package/dist/@ecme/components/template/OrbeAiWidget/OrbeAiChatDrawer.js +121 -0
  15. package/dist/@ecme/components/template/OrbeAiWidget/OrbeAiChatDrawer.js.map +1 -0
  16. package/dist/@ecme/components/template/OrbeAiWidget/OrbeAiWidget.js +127 -0
  17. package/dist/@ecme/components/template/OrbeAiWidget/OrbeAiWidget.js.map +1 -0
  18. package/dist/@ecme/components/template/OrbeAiWidget/ResizeHandles.js +37 -0
  19. package/dist/@ecme/components/template/OrbeAiWidget/ResizeHandles.js.map +1 -0
  20. package/dist/@ecme/components/template/OrbeAiWidget/index.js +5 -0
  21. package/dist/@ecme/components/template/OrbeAiWidget/index.js.map +1 -0
  22. package/dist/@ecme/components/template/OrbeAiWidget/useResizablePanel.js +91 -0
  23. package/dist/@ecme/components/template/OrbeAiWidget/useResizablePanel.js.map +1 -0
  24. package/dist/@ecme/components/template/Search.js +280 -73
  25. package/dist/@ecme/components/template/Search.js.map +1 -1
  26. package/dist/@ecme/components/template/Search.stories.js +17 -2
  27. package/dist/@ecme/components/template/Search.stories.js.map +1 -1
  28. package/dist/@ecme/components/ui/Dropdown/DropdownMenu.js +5 -1
  29. package/dist/@ecme/components/ui/Dropdown/DropdownMenu.js.map +1 -1
  30. package/dist/@ecme/components/view/ChatBox/ChatBox.js +9 -1
  31. package/dist/@ecme/components/view/ChatBox/ChatBox.js.map +1 -1
  32. package/dist/@ecme/components/view/ChatBox/components/MessageList.js +8 -4
  33. package/dist/@ecme/components/view/ChatBox/components/MessageList.js.map +1 -1
  34. package/dist/@ecme/configs/navigation.config/concepts.navigation.config.js +0 -16
  35. package/dist/@ecme/configs/navigation.config/concepts.navigation.config.js.map +1 -1
  36. package/dist/@ecme/configs/routes.config/conceptsRoute.js +0 -9
  37. package/dist/@ecme/configs/routes.config/conceptsRoute.js.map +1 -1
  38. package/dist/@ecme/index.js +7 -7
  39. package/dist/@ecme/index.js.map +1 -1
  40. package/dist/@ecme/locales/index.js +1 -4
  41. package/dist/@ecme/locales/index.js.map +1 -1
  42. package/dist/@ecme/locales/lang/ptBR/nav.js +1 -0
  43. package/dist/@ecme/locales/lang/ptBR/nav.js.map +1 -1
  44. package/dist/@ecme/mock/data/favoritosMenuData.js +5 -0
  45. package/dist/@ecme/mock/data/favoritosMenuData.js.map +1 -0
  46. package/dist/@ecme/services/AiService.js +95 -12
  47. package/dist/@ecme/services/AiService.js.map +1 -1
  48. package/dist/@ecme/services/aiAuthHeaders.js +35 -0
  49. package/dist/@ecme/services/aiAuthHeaders.js.map +1 -0
  50. package/dist/@ecme/services/axios/AxiosBase.js +30 -24
  51. package/dist/@ecme/services/axios/AxiosBase.js.map +1 -1
  52. package/dist/@ecme/services/axios/AxiosRequestIntrceptorConfigCallback.js +4 -27
  53. package/dist/@ecme/services/axios/AxiosRequestIntrceptorConfigCallback.js.map +1 -1
  54. package/dist/@ecme/services/index.js +8 -3
  55. package/dist/@ecme/services/sseParser.js +42 -0
  56. package/dist/@ecme/services/sseParser.js.map +1 -0
  57. package/dist/@ecme/views/concepts/ai/Chat/components/AiErrorMessage.js +15 -0
  58. package/dist/@ecme/views/concepts/ai/Chat/components/AiErrorMessage.js.map +1 -0
  59. package/dist/@ecme/views/concepts/ai/Chat/components/AiThinkingIndicator.js +23 -0
  60. package/dist/@ecme/views/concepts/ai/Chat/components/AiThinkingIndicator.js.map +1 -0
  61. package/dist/@ecme/views/concepts/ai/Chat/components/ApprovalCard.js +73 -0
  62. package/dist/@ecme/views/concepts/ai/Chat/components/ApprovalCard.js.map +1 -0
  63. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistory.js +9 -23
  64. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistory.js.map +1 -1
  65. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.js +6 -16
  66. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.js.map +1 -1
  67. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.js +10 -7
  68. package/dist/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.js.map +1 -1
  69. package/dist/@ecme/views/concepts/ai/Chat/components/ChatLandingView.js +37 -36
  70. package/dist/@ecme/views/concepts/ai/Chat/components/ChatLandingView.js.map +1 -1
  71. package/dist/@ecme/views/concepts/ai/Chat/components/ChatView.js +62 -18
  72. package/dist/@ecme/views/concepts/ai/Chat/components/ChatView.js.map +1 -1
  73. package/dist/@ecme/views/concepts/ai/Chat/components/DataRequestCard.js +99 -0
  74. package/dist/@ecme/views/concepts/ai/Chat/components/DataRequestCard.js.map +1 -0
  75. package/dist/@ecme/views/concepts/ai/Chat/components/ToolCallChip.js +153 -0
  76. package/dist/@ecme/views/concepts/ai/Chat/components/ToolCallChip.js.map +1 -0
  77. package/dist/@ecme/views/concepts/ai/Chat/components/toolPresentation.js +195 -0
  78. package/dist/@ecme/views/concepts/ai/Chat/components/toolPresentation.js.map +1 -0
  79. package/dist/@ecme/views/concepts/ai/Chat/hooks/useChatConversations.js +83 -0
  80. package/dist/@ecme/views/concepts/ai/Chat/hooks/useChatConversations.js.map +1 -0
  81. package/dist/@ecme/views/concepts/ai/Chat/hooks/useChatSend.js +139 -22
  82. package/dist/@ecme/views/concepts/ai/Chat/hooks/useChatSend.js.map +1 -1
  83. package/dist/@ecme/views/concepts/ai/Chat/hooks/useConversationMessages.js +37 -0
  84. package/dist/@ecme/views/concepts/ai/Chat/hooks/useConversationMessages.js.map +1 -0
  85. package/dist/@ecme/views/concepts/ai/Chat/store/generativeChatStore.js +53 -13
  86. package/dist/@ecme/views/concepts/ai/Chat/store/generativeChatStore.js.map +1 -1
  87. package/dist/@ecme/views/concepts/ai/Chat/utils.js +16 -1
  88. package/dist/@ecme/views/concepts/ai/Chat/utils.js.map +1 -1
  89. package/dist/@ecme/views/dashboards/FavoritesLanding/FavoritesLanding.js +92 -0
  90. package/dist/@ecme/views/dashboards/FavoritesLanding/FavoritesLanding.js.map +1 -0
  91. package/dist/@ecme/views/dashboards/FavoritesLanding/index.js +5 -0
  92. package/dist/@ecme/views/dashboards/FavoritesLanding/index.js.map +1 -0
  93. package/dist/@ecme/views/dashboards/FavoritesLanding/types.js +2 -0
  94. package/dist/@ecme/views/dashboards/FavoritesLanding/types.js.map +1 -0
  95. package/dist/@ecme/views/dashboards/FavoritesLanding/utils.js +36 -0
  96. package/dist/@ecme/views/dashboards/FavoritesLanding/utils.js.map +1 -0
  97. package/dist/@ecme/views/dashboards/index.js +1 -4
  98. package/dist/@ecme/views/dashboards/index.js.map +1 -1
  99. package/dist/@ecme/views/index.js +0 -2
  100. package/dist/@ecme/views/index.js.map +1 -1
  101. package/dist/@types/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.d.ts.map +1 -1
  102. package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/CollapsibleSide.stories.d.ts +7 -0
  103. package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/CollapsibleSide.stories.d.ts.map +1 -0
  104. package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/ContentOverlay.stories.d.ts +7 -0
  105. package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/ContentOverlay.stories.d.ts.map +1 -0
  106. package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/FrameLessSide.stories.d.ts +7 -0
  107. package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/FrameLessSide.stories.d.ts.map +1 -0
  108. package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/StackedSide.stories.d.ts +7 -0
  109. package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/StackedSide.stories.d.ts.map +1 -0
  110. package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/TopBarClassic.stories.d.ts +7 -0
  111. package/dist/@types/@ecme/components/layouts/PostLoginLayout/components/TopBarClassic.stories.d.ts.map +1 -0
  112. package/dist/@types/@ecme/components/template/Header.stories.d.ts +7 -0
  113. package/dist/@types/@ecme/components/template/Header.stories.d.ts.map +1 -0
  114. package/dist/@types/@ecme/components/template/OrbeAiWidget/OrbeAiChatDrawer.d.ts +14 -0
  115. package/dist/@types/@ecme/components/template/OrbeAiWidget/OrbeAiChatDrawer.d.ts.map +1 -0
  116. package/dist/@types/@ecme/components/template/OrbeAiWidget/OrbeAiWidget.d.ts +3 -0
  117. package/dist/@types/@ecme/components/template/OrbeAiWidget/OrbeAiWidget.d.ts.map +1 -0
  118. package/dist/@types/@ecme/components/template/OrbeAiWidget/ResizeHandles.d.ts +9 -0
  119. package/dist/@types/@ecme/components/template/OrbeAiWidget/ResizeHandles.d.ts.map +1 -0
  120. package/dist/@types/@ecme/components/template/OrbeAiWidget/index.d.ts +2 -0
  121. package/dist/@types/@ecme/components/template/OrbeAiWidget/index.d.ts.map +1 -0
  122. package/dist/@types/@ecme/components/template/OrbeAiWidget/useResizablePanel.d.ts +26 -0
  123. package/dist/@types/@ecme/components/template/OrbeAiWidget/useResizablePanel.d.ts.map +1 -0
  124. package/dist/@types/@ecme/components/template/Search.d.ts +2 -0
  125. package/dist/@types/@ecme/components/template/Search.d.ts.map +1 -1
  126. package/dist/@types/@ecme/components/template/Search.stories.d.ts +8 -0
  127. package/dist/@types/@ecme/components/template/Search.stories.d.ts.map +1 -0
  128. package/dist/@types/@ecme/components/ui/Dropdown/DropdownMenu.d.ts +2 -0
  129. package/dist/@types/@ecme/components/ui/Dropdown/DropdownMenu.d.ts.map +1 -1
  130. package/dist/@types/@ecme/components/view/ChatBox/ChatBox.d.ts.map +1 -1
  131. package/dist/@types/@ecme/components/view/ChatBox/components/MessageList.d.ts +5 -0
  132. package/dist/@types/@ecme/components/view/ChatBox/components/MessageList.d.ts.map +1 -1
  133. package/dist/@types/@ecme/configs/navigation.config/concepts.navigation.config.d.ts.map +1 -1
  134. package/dist/@types/@ecme/configs/routes.config/conceptsRoute.d.ts.map +1 -1
  135. package/dist/@types/@ecme/locales/index.d.ts +0 -1
  136. package/dist/@types/@ecme/locales/index.d.ts.map +1 -1
  137. package/dist/@types/@ecme/locales/lang/ptBR/nav.d.ts.map +1 -1
  138. package/dist/@types/@ecme/mock/data/favoritosMenuData.d.ts +3 -0
  139. package/dist/@types/@ecme/mock/data/favoritosMenuData.d.ts.map +1 -0
  140. package/dist/@types/@ecme/services/AiService.d.ts +44 -4
  141. package/dist/@types/@ecme/services/AiService.d.ts.map +1 -1
  142. package/dist/@types/@ecme/services/aiAuthHeaders.d.ts +12 -0
  143. package/dist/@types/@ecme/services/aiAuthHeaders.d.ts.map +1 -0
  144. package/dist/@types/@ecme/services/axios/AxiosBase.d.ts +12 -0
  145. package/dist/@types/@ecme/services/axios/AxiosBase.d.ts.map +1 -1
  146. package/dist/@types/@ecme/services/axios/AxiosRequestIntrceptorConfigCallback.d.ts +6 -0
  147. package/dist/@types/@ecme/services/axios/AxiosRequestIntrceptorConfigCallback.d.ts.map +1 -1
  148. package/dist/@types/@ecme/services/sseParser.d.ts +20 -0
  149. package/dist/@types/@ecme/services/sseParser.d.ts.map +1 -0
  150. package/dist/@types/@ecme/views/concepts/ai/Chat/components/AiErrorMessage.d.ts +8 -0
  151. package/dist/@types/@ecme/views/concepts/ai/Chat/components/AiErrorMessage.d.ts.map +1 -0
  152. package/dist/@types/@ecme/views/concepts/ai/Chat/components/AiThinkingIndicator.d.ts +7 -0
  153. package/dist/@types/@ecme/views/concepts/ai/Chat/components/AiThinkingIndicator.d.ts.map +1 -0
  154. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ApprovalCard.d.ts +15 -0
  155. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ApprovalCard.d.ts.map +1 -0
  156. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatHistory.d.ts +3 -1
  157. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatHistory.d.ts.map +1 -1
  158. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.d.ts +1 -1
  159. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.d.ts.map +1 -1
  160. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.d.ts +5 -1
  161. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.d.ts.map +1 -1
  162. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatLandingView.d.ts.map +1 -1
  163. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatView.d.ts +8 -1
  164. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ChatView.d.ts.map +1 -1
  165. package/dist/@types/@ecme/views/concepts/ai/Chat/components/DataRequestCard.d.ts +20 -0
  166. package/dist/@types/@ecme/views/concepts/ai/Chat/components/DataRequestCard.d.ts.map +1 -0
  167. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ToolCallChip.d.ts +7 -0
  168. package/dist/@types/@ecme/views/concepts/ai/Chat/components/ToolCallChip.d.ts.map +1 -0
  169. package/dist/@types/@ecme/views/concepts/ai/Chat/components/toolPresentation.d.ts +31 -0
  170. package/dist/@types/@ecme/views/concepts/ai/Chat/components/toolPresentation.d.ts.map +1 -0
  171. package/dist/@types/@ecme/views/concepts/ai/Chat/hooks/useChatConversations.d.ts +12 -0
  172. package/dist/@types/@ecme/views/concepts/ai/Chat/hooks/useChatConversations.d.ts.map +1 -0
  173. package/dist/@types/@ecme/views/concepts/ai/Chat/hooks/useChatSend.d.ts +3 -1
  174. package/dist/@types/@ecme/views/concepts/ai/Chat/hooks/useChatSend.d.ts.map +1 -1
  175. package/dist/@types/@ecme/views/concepts/ai/Chat/hooks/useConversationMessages.d.ts +12 -0
  176. package/dist/@types/@ecme/views/concepts/ai/Chat/hooks/useConversationMessages.d.ts.map +1 -0
  177. package/dist/@types/@ecme/views/concepts/ai/Chat/store/generativeChatStore.d.ts +5 -0
  178. package/dist/@types/@ecme/views/concepts/ai/Chat/store/generativeChatStore.d.ts.map +1 -1
  179. package/dist/@types/@ecme/views/concepts/ai/Chat/types.d.ts +144 -23
  180. package/dist/@types/@ecme/views/concepts/ai/Chat/types.d.ts.map +1 -1
  181. package/dist/@types/@ecme/views/concepts/ai/Chat/utils.d.ts +13 -0
  182. package/dist/@types/@ecme/views/concepts/ai/Chat/utils.d.ts.map +1 -1
  183. package/dist/@types/@ecme/views/dashboards/FavoritesLanding/FavoritesLanding.d.ts +9 -0
  184. package/dist/@types/@ecme/views/dashboards/FavoritesLanding/FavoritesLanding.d.ts.map +1 -0
  185. package/dist/@types/@ecme/views/dashboards/FavoritesLanding/index.d.ts +3 -0
  186. package/dist/@types/@ecme/views/dashboards/FavoritesLanding/index.d.ts.map +1 -0
  187. package/dist/@types/@ecme/views/dashboards/FavoritesLanding/types.d.ts +17 -0
  188. package/dist/@types/@ecme/views/dashboards/FavoritesLanding/types.d.ts.map +1 -0
  189. package/dist/@types/@ecme/views/dashboards/FavoritesLanding/utils.d.ts +5 -0
  190. package/dist/@types/@ecme/views/dashboards/FavoritesLanding/utils.d.ts.map +1 -0
  191. package/dist/@types/@ecme/views/dashboards/index.d.ts +0 -1
  192. package/dist/@types/@ecme/views/dashboards/index.d.ts.map +1 -1
  193. package/dist/@types/@ecme/views/index.d.ts +0 -1
  194. package/dist/@types/@ecme/views/index.d.ts.map +1 -1
  195. package/dist/@types/base/@types/api/request/dm/TCreateFavoritoMenuRequest.d.ts +4 -0
  196. package/dist/@types/base/@types/api/request/dm/TCreateFavoritoMenuRequest.d.ts.map +1 -0
  197. package/dist/@types/base/@types/api/request/dm/TReorderFavoritosMenuRequest.d.ts +4 -0
  198. package/dist/@types/base/@types/api/request/dm/TReorderFavoritosMenuRequest.d.ts.map +1 -0
  199. package/dist/@types/base/@types/api/request/originacao/TSimularConsumoManualSaldoRequest.d.ts +9 -0
  200. package/dist/@types/base/@types/api/request/originacao/TSimularConsumoManualSaldoRequest.d.ts.map +1 -0
  201. package/dist/@types/base/@types/api/response/dadosMestres/TFavoritoMenuResponse.d.ts +8 -0
  202. package/dist/@types/base/@types/api/response/dadosMestres/TFavoritoMenuResponse.d.ts.map +1 -0
  203. package/dist/@types/base/@types/api/response/originacao/TConsumoManualSaldoResponse.d.ts +21 -0
  204. package/dist/@types/base/@types/api/response/originacao/TConsumoManualSaldoResponse.d.ts.map +1 -0
  205. package/dist/@types/base/@types/api/response/originacao/TFindAllSaldoResponse.d.ts +1 -0
  206. package/dist/@types/base/@types/api/response/originacao/TFindAllSaldoResponse.d.ts.map +1 -1
  207. package/dist/@types/base/@types/api/response/originacao/TSimularConsumoManualSaldoResponse.d.ts +17 -0
  208. package/dist/@types/base/@types/api/response/originacao/TSimularConsumoManualSaldoResponse.d.ts.map +1 -0
  209. package/dist/@types/base/@types/enums/originacao/ModoConsumoManual.d.ts +5 -0
  210. package/dist/@types/base/@types/enums/originacao/ModoConsumoManual.d.ts.map +1 -0
  211. package/dist/@types/base/@types/enums/originacao/TipoSaldoConsumivel.d.ts +6 -0
  212. package/dist/@types/base/@types/enums/originacao/TipoSaldoConsumivel.d.ts.map +1 -0
  213. package/dist/@types/base/@types/models/racao/carga.d.ts +39 -0
  214. package/dist/@types/base/@types/models/racao/carga.d.ts.map +1 -1
  215. package/dist/@types/base/@types/models/template/example.d.ts +40 -0
  216. package/dist/@types/base/@types/models/template/example.d.ts.map +1 -0
  217. package/dist/@types/base/@types/models/template/exampleObject.d.ts +14 -0
  218. package/dist/@types/base/@types/models/template/exampleObject.d.ts.map +1 -0
  219. package/dist/@types/base/@types/models/transportadora/irpf.d.ts +1 -0
  220. package/dist/@types/base/@types/models/transportadora/irpf.d.ts.map +1 -1
  221. package/dist/@types/base/@types/models/transportadora/irpfFaixaDesconto.d.ts +0 -1
  222. package/dist/@types/base/@types/models/transportadora/irpfFaixaDesconto.d.ts.map +1 -1
  223. package/dist/@types/base/components/forms/GenericForms/GenericArrayFormSection.d.ts +2 -2
  224. package/dist/@types/base/components/forms/GenericForms/GenericArrayFormSection.d.ts.map +1 -1
  225. package/dist/@types/base/components/shared/AceitarProcessoDialog.d.ts +2 -1
  226. package/dist/@types/base/components/shared/AceitarProcessoDialog.d.ts.map +1 -1
  227. package/dist/@types/base/components/shared/AdicionarHistoricoDialog.d.ts.map +1 -1
  228. package/dist/@types/base/components/shared/CancelarProcessoDialog.d.ts.map +1 -1
  229. package/dist/@types/base/components/shared/ConcluirProcessoDialog.d.ts.map +1 -1
  230. package/dist/@types/base/components/shared/EncerrarProcessoDialog.d.ts.map +1 -1
  231. package/dist/@types/base/components/shared/ReabrirProcessoDialog.d.ts.map +1 -1
  232. package/dist/@types/base/components/shared/RetornarFluxAtendimentoDialog.d.ts.map +1 -1
  233. package/dist/@types/base/components/shared/TransferirParaAtendenteDialog.d.ts.map +1 -1
  234. package/dist/@types/base/components/shared/TransferirParaSolicitanteDialog.d.ts.map +1 -1
  235. package/dist/@types/base/components/shared/TransferirProcessoDialog.d.ts.map +1 -1
  236. package/dist/@types/base/configs/endpoints.config/DadosMestres/FavoritoMenu/favoritoMenu.endpoint.config.d.ts +8 -0
  237. package/dist/@types/base/configs/endpoints.config/DadosMestres/FavoritoMenu/favoritoMenu.endpoint.config.d.ts.map +1 -0
  238. package/dist/@types/base/configs/endpoints.config/DadosMestres/Sap/incoterms.endpoint.config.d.ts +1 -0
  239. package/dist/@types/base/configs/endpoints.config/DadosMestres/Sap/incoterms.endpoint.config.d.ts.map +1 -1
  240. package/dist/@types/base/configs/endpoints.config/DadosMestres/Sap/safra.endpoint.config.d.ts +1 -0
  241. package/dist/@types/base/configs/endpoints.config/DadosMestres/Sap/safra.endpoint.config.d.ts.map +1 -1
  242. package/dist/@types/base/configs/endpoints.config/HubFiscal/nfe.endpoint.config.d.ts +1 -1
  243. package/dist/@types/base/configs/endpoints.config/SapService/Sap/executeSapApi.endpoint.config.d.ts +1 -0
  244. package/dist/@types/base/configs/endpoints.config/SapService/Sap/executeSapApi.endpoint.config.d.ts.map +1 -1
  245. package/dist/@types/base/configs/endpoints.config/Ticket/ticket.endpoint.config.d.ts +2 -0
  246. package/dist/@types/base/configs/endpoints.config/Ticket/ticket.endpoint.config.d.ts.map +1 -1
  247. package/dist/@types/base/configs/endpoints.config/agendamento/agendamento.d.ts +0 -1
  248. package/dist/@types/base/configs/endpoints.config/agendamento/agendamento.d.ts.map +1 -1
  249. package/dist/@types/base/configs/endpoints.config/agendamento/config/contratoVenda.d.ts +0 -1
  250. package/dist/@types/base/configs/endpoints.config/agendamento/config/contratoVenda.d.ts.map +1 -1
  251. package/dist/@types/base/configs/endpoints.config/centralNfe/centralNfe.d.ts +18 -0
  252. package/dist/@types/base/configs/endpoints.config/centralNfe/centralNfe.d.ts.map +1 -1
  253. package/dist/@types/base/configs/endpoints.config/centralNfe/config/cfop.d.ts +4 -0
  254. package/dist/@types/base/configs/endpoints.config/centralNfe/config/cfop.d.ts.map +1 -1
  255. package/dist/@types/base/configs/endpoints.config/centralNfe/config/historicoCfop.d.ts +12 -0
  256. package/dist/@types/base/configs/endpoints.config/centralNfe/config/historicoCfop.d.ts.map +1 -0
  257. package/dist/@types/base/configs/endpoints.config/centralNfe/config/vinculoOperacao.d.ts +4 -0
  258. package/dist/@types/base/configs/endpoints.config/centralNfe/config/vinculoOperacao.d.ts.map +1 -1
  259. package/dist/@types/base/configs/endpoints.config/compras/compras.d.ts +6 -0
  260. package/dist/@types/base/configs/endpoints.config/compras/compras.d.ts.map +1 -1
  261. package/dist/@types/base/configs/endpoints.config/compras/config/itemOrdemCompra.d.ts +8 -0
  262. package/dist/@types/base/configs/endpoints.config/compras/config/itemOrdemCompra.d.ts.map +1 -0
  263. package/dist/@types/base/configs/endpoints.config/dm/config/municipio.d.ts +4 -0
  264. package/dist/@types/base/configs/endpoints.config/dm/config/municipio.d.ts.map +1 -1
  265. package/dist/@types/base/configs/endpoints.config/dm/dm.d.ts +4 -0
  266. package/dist/@types/base/configs/endpoints.config/dm/dm.d.ts.map +1 -1
  267. package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts +90 -21
  268. package/dist/@types/base/configs/endpoints.config/endpoints.navigation.d.ts.map +1 -1
  269. package/dist/@types/base/configs/endpoints.config/insumos/config/estoque.d.ts +0 -20
  270. package/dist/@types/base/configs/endpoints.config/insumos/config/estoque.d.ts.map +1 -1
  271. package/dist/@types/base/configs/endpoints.config/insumos/insumos.d.ts +0 -20
  272. package/dist/@types/base/configs/endpoints.config/insumos/insumos.d.ts.map +1 -1
  273. package/dist/@types/base/configs/endpoints.config/originacao/config/consumoManualSaldo.d.ts +10 -0
  274. package/dist/@types/base/configs/endpoints.config/originacao/config/consumoManualSaldo.d.ts.map +1 -0
  275. package/dist/@types/base/configs/endpoints.config/originacao/originacao.d.ts +8 -0
  276. package/dist/@types/base/configs/endpoints.config/originacao/originacao.d.ts.map +1 -1
  277. package/dist/@types/base/configs/endpoints.config/racao/config/carga.d.ts +8 -0
  278. package/dist/@types/base/configs/endpoints.config/racao/config/carga.d.ts.map +1 -1
  279. package/dist/@types/base/configs/endpoints.config/racao/racao.d.ts +8 -0
  280. package/dist/@types/base/configs/endpoints.config/racao/racao.d.ts.map +1 -1
  281. package/dist/@types/base/configs/endpoints.config/trade/config/contratoArmazenagemGraosTrade.d.ts +33 -0
  282. package/dist/@types/base/configs/endpoints.config/trade/config/contratoArmazenagemGraosTrade.d.ts.map +1 -0
  283. package/dist/@types/base/configs/endpoints.config/trade/index.d.ts +34 -0
  284. package/dist/@types/base/configs/endpoints.config/trade/index.d.ts.map +1 -0
  285. package/dist/@types/base/configs/endpoints.config/transportadora/contratoFrete.d.ts +8 -0
  286. package/dist/@types/base/configs/endpoints.config/transportadora/contratoFrete.d.ts.map +1 -1
  287. package/dist/@types/base/configs/navigation.config/modules.navigation.d.ts.map +1 -1
  288. package/dist/@types/base/configs/navigation.config/modules.submenu/gestaoServicos/submenu.gestaoServicos.d.ts +4 -0
  289. package/dist/@types/base/configs/navigation.config/modules.submenu/gestaoServicos/submenu.gestaoServicos.d.ts.map +1 -0
  290. package/dist/@types/base/configs/navigation.config/modules.submenu/index.d.ts +1 -0
  291. package/dist/@types/base/configs/navigation.config/modules.submenu/index.d.ts.map +1 -1
  292. package/dist/@types/base/configs/navigation.config/modules.submenu/originacao/consumoManualSaldo/submenu.consumoManualSaldo.d.ts +4 -0
  293. package/dist/@types/base/configs/navigation.config/modules.submenu/originacao/consumoManualSaldo/submenu.consumoManualSaldo.d.ts.map +1 -0
  294. package/dist/@types/base/configs/navigation.config/modules.submenu/template/submenu.template.d.ts.map +1 -1
  295. package/dist/@types/base/configs/navigation.config/modules.submenu/trade/submenu.trade.d.ts +4 -0
  296. package/dist/@types/base/configs/navigation.config/modules.submenu/trade/submenu.trade.d.ts.map +1 -0
  297. package/dist/@types/base/configs/navigation.config/submenu/centralNfe/cadastros.submenu.d.ts.map +1 -1
  298. package/dist/@types/base/configs/navigation.config/submenu/centralNfe/config/cfop.submenu.d.ts +4 -0
  299. package/dist/@types/base/configs/navigation.config/submenu/centralNfe/config/cfop.submenu.d.ts.map +1 -0
  300. package/dist/@types/base/configs/navigation.config/submenu/index.d.ts +1 -2
  301. package/dist/@types/base/configs/navigation.config/submenu/index.d.ts.map +1 -1
  302. package/dist/@types/base/configs/navigation.config/submenu/originacao/originacao.submenu.d.ts.map +1 -1
  303. package/dist/@types/base/configs/navigation.config/submenu/template/cadastros.submenu.d.ts.map +1 -0
  304. package/dist/@types/base/configs/navigation.config/submenu/template/config/example.submenu.d.ts.map +1 -0
  305. package/dist/@types/base/configs/navigation.config/submenu/template/config/exampleObject.submenu.d.ts.map +1 -0
  306. package/dist/@types/base/configs/navigation.config/submenu/template/template.submenu.d.ts.map +1 -0
  307. package/dist/@types/base/configs/navigation.config/submenu/ticket/cadastros.submenu.d.ts.map +1 -1
  308. package/dist/@types/base/configs/navigation.config/submenu/ticket/config/relatorioTransferenciaArmazens.submenu.d.ts +4 -0
  309. package/dist/@types/base/configs/navigation.config/submenu/ticket/config/relatorioTransferenciaArmazens.submenu.d.ts.map +1 -0
  310. package/dist/@types/base/configs/navigation.config/submenu/ticket/config/relatorioVendasGraos.submenu.d.ts +4 -0
  311. package/dist/@types/base/configs/navigation.config/submenu/ticket/config/relatorioVendasGraos.submenu.d.ts.map +1 -0
  312. package/dist/@types/base/configs/navigation.config/submenu/ticket/relatorios.submenu.d.ts.map +1 -1
  313. package/dist/@types/base/configs/navigation.config/submenu/trade/configs/contratoArmazenagemGraosTrade.submenu.d.ts +4 -0
  314. package/dist/@types/base/configs/navigation.config/submenu/trade/configs/contratoArmazenagemGraosTrade.submenu.d.ts.map +1 -0
  315. package/dist/@types/base/configs/navigation.config/submenu/trade/trade.submenu.d.ts +4 -0
  316. package/dist/@types/base/configs/navigation.config/submenu/trade/trade.submenu.d.ts.map +1 -0
  317. package/dist/@types/base/locales/lang/ptBR/modules/Ticket/ticket.nav.d.ts +2 -0
  318. package/dist/@types/base/locales/lang/ptBR/modules/Ticket/ticket.nav.d.ts.map +1 -1
  319. package/dist/@types/base/services/modules/DadosMestres/FavoritoMenu/FavoritoMenuService.d.ts +8 -0
  320. package/dist/@types/base/services/modules/DadosMestres/FavoritoMenu/FavoritoMenuService.d.ts.map +1 -0
  321. package/dist/@types/base/services/modules/DadosMestres/Sap/IncotermsService.d.ts +1 -0
  322. package/dist/@types/base/services/modules/DadosMestres/Sap/IncotermsService.d.ts.map +1 -1
  323. package/dist/@types/base/services/modules/DadosMestres/Sap/SafraService.d.ts +1 -0
  324. package/dist/@types/base/services/modules/DadosMestres/Sap/SafraService.d.ts.map +1 -1
  325. package/dist/@types/base/services/modules/HubFiscal/NfeService.d.ts +1 -1
  326. package/dist/@types/base/services/modules/HubFiscal/NfeService.d.ts.map +1 -1
  327. package/dist/@types/base/services/modules/SapService/Sap/ExecuteSapApiService.d.ts +1 -0
  328. package/dist/@types/base/services/modules/SapService/Sap/ExecuteSapApiService.d.ts.map +1 -1
  329. package/dist/@types/base/services/modules/Ticket/TicketService.d.ts +2 -0
  330. package/dist/@types/base/services/modules/Ticket/TicketService.d.ts.map +1 -1
  331. package/dist/@types/base/services/modules/centralNfe/cfop/CfopService.d.ts +1 -0
  332. package/dist/@types/base/services/modules/centralNfe/cfop/CfopService.d.ts.map +1 -1
  333. package/dist/@types/base/services/modules/centralNfe/historicoCfop/HistoricoCfopService.d.ts +3 -0
  334. package/dist/@types/base/services/modules/centralNfe/historicoCfop/HistoricoCfopService.d.ts.map +1 -0
  335. package/dist/@types/base/services/modules/centralNfe/vinculoOperacao/VinculoOperacaoService.d.ts +1 -0
  336. package/dist/@types/base/services/modules/centralNfe/vinculoOperacao/VinculoOperacaoService.d.ts.map +1 -1
  337. package/dist/@types/base/services/modules/compras/index.d.ts +1 -0
  338. package/dist/@types/base/services/modules/compras/index.d.ts.map +1 -1
  339. package/dist/@types/base/services/modules/compras/ordemCompra/ItemOrdemCompraService.d.ts +2 -0
  340. package/dist/@types/base/services/modules/compras/ordemCompra/ItemOrdemCompraService.d.ts.map +1 -0
  341. package/dist/@types/base/services/modules/dm/municipio/MunicipioService.d.ts +1 -0
  342. package/dist/@types/base/services/modules/dm/municipio/MunicipioService.d.ts.map +1 -1
  343. package/dist/@types/base/services/modules/originacao/consumoManualSaldo/consumoManualSaldoService.d.ts +13 -0
  344. package/dist/@types/base/services/modules/originacao/consumoManualSaldo/consumoManualSaldoService.d.ts.map +1 -0
  345. package/dist/@types/base/services/modules/racao/carga/CargaService.d.ts +3 -1
  346. package/dist/@types/base/services/modules/racao/carga/CargaService.d.ts.map +1 -1
  347. package/dist/@types/base/services/modules/template/example/ExampleService.d.ts +7 -4
  348. package/dist/@types/base/services/modules/template/example/ExampleService.d.ts.map +1 -1
  349. package/dist/@types/base/services/modules/template/exampleObject/ExampleObjectService.d.ts +8 -0
  350. package/dist/@types/base/services/modules/template/exampleObject/ExampleObjectService.d.ts.map +1 -0
  351. package/dist/@types/base/services/modules/template/index.d.ts +1 -1
  352. package/dist/@types/base/services/modules/template/index.d.ts.map +1 -1
  353. package/dist/@types/base/services/modules/trade/ContratoArmazenagemGraosTradeService.d.ts +14 -0
  354. package/dist/@types/base/services/modules/trade/ContratoArmazenagemGraosTradeService.d.ts.map +1 -0
  355. package/dist/@types/base/services/modules/transportadora/ContratoFrete/ContratoFreteService.d.ts +2 -0
  356. package/dist/@types/base/services/modules/transportadora/ContratoFrete/ContratoFreteService.d.ts.map +1 -1
  357. package/dist/base/@types/api/request/dm/TCreateFavoritoMenuRequest.js +2 -0
  358. package/dist/base/@types/api/request/dm/TCreateFavoritoMenuRequest.js.map +1 -0
  359. package/dist/base/@types/api/request/dm/TReorderFavoritosMenuRequest.js +2 -0
  360. package/dist/base/@types/api/request/dm/TReorderFavoritosMenuRequest.js.map +1 -0
  361. package/dist/base/@types/api/request/originacao/TSimularConsumoManualSaldoRequest.js +2 -0
  362. package/dist/base/@types/api/request/originacao/TSimularConsumoManualSaldoRequest.js.map +1 -0
  363. package/dist/base/@types/api/response/dadosMestres/TFavoritoMenuResponse.js +2 -0
  364. package/dist/base/@types/api/response/dadosMestres/TFavoritoMenuResponse.js.map +1 -0
  365. package/dist/base/@types/api/response/originacao/TConsumoManualSaldoResponse.js +2 -0
  366. package/dist/base/@types/api/response/originacao/TConsumoManualSaldoResponse.js.map +1 -0
  367. package/dist/base/@types/api/response/originacao/TSimularConsumoManualSaldoResponse.js +2 -0
  368. package/dist/base/@types/api/response/originacao/TSimularConsumoManualSaldoResponse.js.map +1 -0
  369. package/dist/base/@types/enums/originacao/ModoConsumoManual.js +9 -0
  370. package/dist/base/@types/enums/originacao/ModoConsumoManual.js.map +1 -0
  371. package/dist/base/@types/enums/originacao/TipoSaldoConsumivel.js +10 -0
  372. package/dist/base/@types/enums/originacao/TipoSaldoConsumivel.js.map +1 -0
  373. package/dist/base/@types/models/racao/carga.js.map +1 -1
  374. package/dist/base/@types/models/template/example.js +16 -0
  375. package/dist/base/@types/models/template/example.js.map +1 -0
  376. package/dist/base/@types/models/template/exampleObject.js +2 -0
  377. package/dist/base/@types/models/template/exampleObject.js.map +1 -0
  378. package/dist/base/assets/styles/init.css +258 -7
  379. package/dist/base/components/forms/GenericForms/GenericArrayFormSection.js.map +1 -1
  380. package/dist/base/components/shared/AceitarProcessoDialog.js +16 -2
  381. package/dist/base/components/shared/AceitarProcessoDialog.js.map +1 -1
  382. package/dist/base/components/shared/AdicionarHistoricoDialog.js +28 -24
  383. package/dist/base/components/shared/AdicionarHistoricoDialog.js.map +1 -1
  384. package/dist/base/components/shared/CancelarProcessoDialog.js +28 -24
  385. package/dist/base/components/shared/CancelarProcessoDialog.js.map +1 -1
  386. package/dist/base/components/shared/ConcluirProcessoDialog.js +27 -23
  387. package/dist/base/components/shared/ConcluirProcessoDialog.js.map +1 -1
  388. package/dist/base/components/shared/EncerrarProcessoDialog.js +28 -24
  389. package/dist/base/components/shared/EncerrarProcessoDialog.js.map +1 -1
  390. package/dist/base/components/shared/ReabrirProcessoDialog.js +27 -23
  391. package/dist/base/components/shared/ReabrirProcessoDialog.js.map +1 -1
  392. package/dist/base/components/shared/RetornarFluxAtendimentoDialog.js +27 -23
  393. package/dist/base/components/shared/RetornarFluxAtendimentoDialog.js.map +1 -1
  394. package/dist/base/components/shared/TransferirParaAtendenteDialog.js +28 -24
  395. package/dist/base/components/shared/TransferirParaAtendenteDialog.js.map +1 -1
  396. package/dist/base/components/shared/TransferirParaSolicitanteDialog.js +28 -24
  397. package/dist/base/components/shared/TransferirParaSolicitanteDialog.js.map +1 -1
  398. package/dist/base/components/shared/TransferirProcessoDialog.js +43 -33
  399. package/dist/base/components/shared/TransferirProcessoDialog.js.map +1 -1
  400. package/dist/base/configs/api.config.js.map +1 -1
  401. package/dist/base/configs/endpoints.config/DadosMestres/FavoritoMenu/favoritoMenu.endpoint.config.js +11 -0
  402. package/dist/base/configs/endpoints.config/DadosMestres/FavoritoMenu/favoritoMenu.endpoint.config.js.map +1 -0
  403. package/dist/base/configs/endpoints.config/DadosMestres/Sap/incoterms.endpoint.config.js +2 -1
  404. package/dist/base/configs/endpoints.config/DadosMestres/Sap/incoterms.endpoint.config.js.map +1 -1
  405. package/dist/base/configs/endpoints.config/DadosMestres/Sap/safra.endpoint.config.js +2 -1
  406. package/dist/base/configs/endpoints.config/DadosMestres/Sap/safra.endpoint.config.js.map +1 -1
  407. package/dist/base/configs/endpoints.config/HubFiscal/nfe.endpoint.config.js +1 -1
  408. package/dist/base/configs/endpoints.config/HubFiscal/nfe.endpoint.config.js.map +1 -1
  409. package/dist/base/configs/endpoints.config/SapService/Sap/executeSapApi.endpoint.config.js +2 -1
  410. package/dist/base/configs/endpoints.config/SapService/Sap/executeSapApi.endpoint.config.js.map +1 -1
  411. package/dist/base/configs/endpoints.config/Ticket/ticket.endpoint.config.js +3 -1
  412. package/dist/base/configs/endpoints.config/Ticket/ticket.endpoint.config.js.map +1 -1
  413. package/dist/base/configs/endpoints.config/agendamento/config/contratoVenda.js +0 -1
  414. package/dist/base/configs/endpoints.config/agendamento/config/contratoVenda.js.map +1 -1
  415. package/dist/base/configs/endpoints.config/centralNfe/centralNfe.js +2 -0
  416. package/dist/base/configs/endpoints.config/centralNfe/centralNfe.js.map +1 -1
  417. package/dist/base/configs/endpoints.config/centralNfe/config/cfop.js +2 -1
  418. package/dist/base/configs/endpoints.config/centralNfe/config/cfop.js.map +1 -1
  419. package/dist/base/configs/endpoints.config/centralNfe/config/historicoCfop.js +9 -0
  420. package/dist/base/configs/endpoints.config/centralNfe/config/historicoCfop.js.map +1 -0
  421. package/dist/base/configs/endpoints.config/centralNfe/config/vinculoOperacao.js +2 -1
  422. package/dist/base/configs/endpoints.config/centralNfe/config/vinculoOperacao.js.map +1 -1
  423. package/dist/base/configs/endpoints.config/compras/compras.js +3 -1
  424. package/dist/base/configs/endpoints.config/compras/compras.js.map +1 -1
  425. package/dist/base/configs/endpoints.config/compras/config/itemOrdemCompra.js +8 -0
  426. package/dist/base/configs/endpoints.config/compras/config/itemOrdemCompra.js.map +1 -0
  427. package/dist/base/configs/endpoints.config/dm/config/municipio.js +2 -1
  428. package/dist/base/configs/endpoints.config/dm/config/municipio.js.map +1 -1
  429. package/dist/base/configs/endpoints.config/endpoints.navigation.js +5 -1
  430. package/dist/base/configs/endpoints.config/endpoints.navigation.js.map +1 -1
  431. package/dist/base/configs/endpoints.config/insumos/config/estoque.js +1 -6
  432. package/dist/base/configs/endpoints.config/insumos/config/estoque.js.map +1 -1
  433. package/dist/base/configs/endpoints.config/originacao/config/consumoManualSaldo.js +12 -0
  434. package/dist/base/configs/endpoints.config/originacao/config/consumoManualSaldo.js.map +1 -0
  435. package/dist/base/configs/endpoints.config/originacao/originacao.js +2 -0
  436. package/dist/base/configs/endpoints.config/originacao/originacao.js.map +1 -1
  437. package/dist/base/configs/endpoints.config/racao/config/carga.js +2 -0
  438. package/dist/base/configs/endpoints.config/racao/config/carga.js.map +1 -1
  439. package/dist/base/configs/endpoints.config/trade/config/contratoArmazenagemGraosTrade.js +15 -0
  440. package/dist/base/configs/endpoints.config/trade/config/contratoArmazenagemGraosTrade.js.map +1 -0
  441. package/dist/base/configs/endpoints.config/trade/index.js +8 -0
  442. package/dist/base/configs/endpoints.config/trade/index.js.map +1 -0
  443. package/dist/base/configs/endpoints.config/transportadora/contratoFrete.js +3 -1
  444. package/dist/base/configs/endpoints.config/transportadora/contratoFrete.js.map +1 -1
  445. package/dist/base/configs/index.js +33 -33
  446. package/dist/base/configs/navigation.config/index.js +31 -31
  447. package/dist/base/configs/navigation.config/modules.navigation.js +3 -1
  448. package/dist/base/configs/navigation.config/modules.navigation.js.map +1 -1
  449. package/dist/base/configs/navigation.config/modules.submenu/gestaoServicos/submenu.gestaoServicos.js +107 -0
  450. package/dist/base/configs/navigation.config/modules.submenu/gestaoServicos/submenu.gestaoServicos.js.map +1 -0
  451. package/dist/base/configs/navigation.config/modules.submenu/index.js +2 -0
  452. package/dist/base/configs/navigation.config/modules.submenu/index.js.map +1 -1
  453. package/dist/base/configs/navigation.config/modules.submenu/originacao/consumoManualSaldo/submenu.consumoManualSaldo.js +16 -0
  454. package/dist/base/configs/navigation.config/modules.submenu/originacao/consumoManualSaldo/submenu.consumoManualSaldo.js.map +1 -0
  455. package/dist/base/configs/navigation.config/modules.submenu/template/cadastros/submenu.example.js +1 -1
  456. package/dist/base/configs/navigation.config/modules.submenu/template/cadastros/submenu.example.js.map +1 -1
  457. package/dist/base/configs/navigation.config/modules.submenu/template/submenu.template.js +1 -1
  458. package/dist/base/configs/navigation.config/modules.submenu/template/submenu.template.js.map +1 -1
  459. package/dist/base/configs/navigation.config/modules.submenu/trade/submenu.trade.js +17 -0
  460. package/dist/base/configs/navigation.config/modules.submenu/trade/submenu.trade.js.map +1 -0
  461. package/dist/base/configs/navigation.config/submenu/agendamento/config/relatorio-cotas.js +1 -1
  462. package/dist/base/configs/navigation.config/submenu/agendamento/config/relatorio-cotas.js.map +1 -1
  463. package/dist/base/configs/navigation.config/submenu/centralNfe/cadastros.submenu.js +3 -1
  464. package/dist/base/configs/navigation.config/submenu/centralNfe/cadastros.submenu.js.map +1 -1
  465. package/dist/base/configs/navigation.config/submenu/centralNfe/config/cfop.submenu.js +16 -0
  466. package/dist/base/configs/navigation.config/submenu/centralNfe/config/cfop.submenu.js.map +1 -0
  467. package/dist/base/configs/navigation.config/submenu/index.js +20 -22
  468. package/dist/base/configs/navigation.config/submenu/index.js.map +1 -1
  469. package/dist/base/configs/navigation.config/submenu/originacao/originacao.submenu.js +2 -0
  470. package/dist/base/configs/navigation.config/submenu/originacao/originacao.submenu.js.map +1 -1
  471. package/dist/base/configs/navigation.config/submenu/template/cadastros.submenu.js.map +1 -0
  472. package/dist/base/configs/navigation.config/submenu/{example → template}/config/example.submenu.js +3 -3
  473. package/dist/base/configs/navigation.config/submenu/template/config/example.submenu.js.map +1 -0
  474. package/dist/base/configs/navigation.config/submenu/{example → template}/config/exampleObject.submenu.js +3 -3
  475. package/dist/base/configs/navigation.config/submenu/template/config/exampleObject.submenu.js.map +1 -0
  476. package/dist/base/configs/navigation.config/submenu/template/template.submenu.js.map +1 -0
  477. package/dist/base/configs/navigation.config/submenu/ticket/cadastros.submenu.js +5 -1
  478. package/dist/base/configs/navigation.config/submenu/ticket/cadastros.submenu.js.map +1 -1
  479. package/dist/base/configs/navigation.config/submenu/ticket/config/relatorioTransferenciaArmazens.submenu.js +16 -0
  480. package/dist/base/configs/navigation.config/submenu/ticket/config/relatorioTransferenciaArmazens.submenu.js.map +1 -0
  481. package/dist/base/configs/navigation.config/submenu/ticket/config/relatorioVendasGraos.submenu.js +16 -0
  482. package/dist/base/configs/navigation.config/submenu/ticket/config/relatorioVendasGraos.submenu.js.map +1 -0
  483. package/dist/base/configs/navigation.config/submenu/ticket/relatorios.submenu.js +5 -13
  484. package/dist/base/configs/navigation.config/submenu/ticket/relatorios.submenu.js.map +1 -1
  485. package/dist/base/configs/navigation.config/submenu/trade/configs/contratoArmazenagemGraosTrade.submenu.js +16 -0
  486. package/dist/base/configs/navigation.config/submenu/trade/configs/contratoArmazenagemGraosTrade.submenu.js.map +1 -0
  487. package/dist/base/configs/navigation.config/submenu/trade/trade.submenu.js +8 -0
  488. package/dist/base/configs/navigation.config/submenu/trade/trade.submenu.js.map +1 -0
  489. package/dist/base/index.js +50 -40
  490. package/dist/base/index.js.map +1 -1
  491. package/dist/base/locales/lang/ptBR/modules/Ticket/ticket.nav.js +3 -1
  492. package/dist/base/locales/lang/ptBR/modules/Ticket/ticket.nav.js.map +1 -1
  493. package/dist/base/services/index.js +15 -5
  494. package/dist/base/services/index.js.map +1 -1
  495. package/dist/base/services/modules/DadosMestres/FavoritoMenu/FavoritoMenuService.js +35 -0
  496. package/dist/base/services/modules/DadosMestres/FavoritoMenu/FavoritoMenuService.js.map +1 -0
  497. package/dist/base/services/modules/DadosMestres/Sap/IncotermsService.js +9 -1
  498. package/dist/base/services/modules/DadosMestres/Sap/IncotermsService.js.map +1 -1
  499. package/dist/base/services/modules/DadosMestres/Sap/SafraService.js +9 -1
  500. package/dist/base/services/modules/DadosMestres/Sap/SafraService.js.map +1 -1
  501. package/dist/base/services/modules/HubFiscal/NfeService.js +3 -3
  502. package/dist/base/services/modules/HubFiscal/NfeService.js.map +1 -1
  503. package/dist/base/services/modules/SapService/Sap/ExecuteSapApiService.js +9 -1
  504. package/dist/base/services/modules/SapService/Sap/ExecuteSapApiService.js.map +1 -1
  505. package/dist/base/services/modules/Ticket/TicketService.js +16 -0
  506. package/dist/base/services/modules/Ticket/TicketService.js.map +1 -1
  507. package/dist/base/services/modules/agendamento/ContratoVendaService.js +2 -2
  508. package/dist/base/services/modules/agendamento/ContratoVendaService.js.map +1 -1
  509. package/dist/base/services/modules/centralNfe/cfop/CfopService.js +8 -0
  510. package/dist/base/services/modules/centralNfe/cfop/CfopService.js.map +1 -1
  511. package/dist/base/services/modules/centralNfe/historicoCfop/HistoricoCfopService.js +21 -0
  512. package/dist/base/services/modules/centralNfe/historicoCfop/HistoricoCfopService.js.map +1 -0
  513. package/dist/base/services/modules/centralNfe/vinculoOperacao/VinculoOperacaoService.js +7 -0
  514. package/dist/base/services/modules/centralNfe/vinculoOperacao/VinculoOperacaoService.js.map +1 -1
  515. package/dist/base/services/modules/compras/index.js +2 -0
  516. package/dist/base/services/modules/compras/index.js.map +1 -1
  517. package/dist/base/services/modules/compras/ordemCompra/ItemOrdemCompraService.js +14 -0
  518. package/dist/base/services/modules/compras/ordemCompra/ItemOrdemCompraService.js.map +1 -0
  519. package/dist/base/services/modules/dm/index.js +2 -1
  520. package/dist/base/services/modules/dm/municipio/MunicipioService.js +7 -0
  521. package/dist/base/services/modules/dm/municipio/MunicipioService.js.map +1 -1
  522. package/dist/base/services/modules/index.js +15 -5
  523. package/dist/base/services/modules/index.js.map +1 -1
  524. package/dist/base/services/modules/originacao/consumoManualSaldo/consumoManualSaldoService.js +50 -0
  525. package/dist/base/services/modules/originacao/consumoManualSaldo/consumoManualSaldoService.js.map +1 -0
  526. package/dist/base/services/modules/racao/carga/CargaService.js +14 -0
  527. package/dist/base/services/modules/racao/carga/CargaService.js.map +1 -1
  528. package/dist/base/services/modules/racao/index.js +3 -1
  529. package/dist/base/services/modules/template/example/ExampleService.js +26 -12
  530. package/dist/base/services/modules/template/example/ExampleService.js.map +1 -1
  531. package/dist/base/services/modules/template/exampleObject/ExampleObjectService.js +44 -0
  532. package/dist/base/services/modules/template/exampleObject/ExampleObjectService.js.map +1 -0
  533. package/dist/base/services/modules/template/index.js +5 -2
  534. package/dist/base/services/modules/trade/ContratoArmazenagemGraosTradeService.js +59 -0
  535. package/dist/base/services/modules/trade/ContratoArmazenagemGraosTradeService.js.map +1 -0
  536. package/dist/base/services/modules/transportadora/ContratoFrete/ContratoFreteService.js +14 -0
  537. package/dist/base/services/modules/transportadora/ContratoFrete/ContratoFreteService.js.map +1 -1
  538. package/dist/base/services/modules/transportadora/index.js +3 -1
  539. package/lib/@ecme/components/layouts/PostLoginLayout/PostLoginLayout.tsx +5 -1
  540. package/lib/@ecme/components/layouts/PostLoginLayout/components/CollapsibleSide.stories.tsx +2 -2
  541. package/lib/@ecme/components/layouts/PostLoginLayout/components/ContentOverlay.stories.tsx +2 -2
  542. package/lib/@ecme/components/layouts/PostLoginLayout/components/FrameLessSide.stories.tsx +2 -2
  543. package/lib/@ecme/components/layouts/PostLoginLayout/components/StackedSide.stories.tsx +2 -2
  544. package/lib/@ecme/components/layouts/PostLoginLayout/components/TopBarClassic.stories.tsx +2 -2
  545. package/lib/@ecme/components/template/Header.stories.tsx +2 -2
  546. package/lib/@ecme/components/template/Notification/Notification.tsx +2 -2
  547. package/lib/@ecme/components/template/OrbeAiWidget/OrbeAiChatDrawer.tsx +140 -0
  548. package/lib/@ecme/components/template/OrbeAiWidget/OrbeAiWidget.tsx +155 -0
  549. package/lib/@ecme/components/template/OrbeAiWidget/ResizeHandles.tsx +47 -0
  550. package/lib/@ecme/components/template/OrbeAiWidget/index.ts +1 -0
  551. package/lib/@ecme/components/template/OrbeAiWidget/useResizablePanel.ts +143 -0
  552. package/lib/@ecme/components/template/Search.stories.tsx +20 -5
  553. package/lib/@ecme/components/template/Search.tsx +370 -84
  554. package/lib/@ecme/components/ui/Dropdown/DropdownMenu.tsx +7 -1
  555. package/lib/@ecme/components/view/ChatBox/ChatBox.tsx +8 -0
  556. package/lib/@ecme/components/view/ChatBox/components/MessageList.tsx +26 -8
  557. package/lib/@ecme/configs/navigation.config/concepts.navigation.config.ts +0 -16
  558. package/lib/@ecme/configs/routes.config/conceptsRoute.ts +0 -9
  559. package/lib/@ecme/locales/index.ts +0 -4
  560. package/lib/@ecme/locales/lang/ptBR/nav.ts +1 -0
  561. package/lib/@ecme/mock/data/favoritosMenuData.ts +3 -0
  562. package/lib/@ecme/services/AiService.ts +165 -13
  563. package/lib/@ecme/services/aiAuthHeaders.ts +58 -0
  564. package/lib/@ecme/services/axios/AxiosBase.ts +45 -24
  565. package/lib/@ecme/services/axios/AxiosRequestIntrceptorConfigCallback.ts +10 -39
  566. package/lib/@ecme/services/sseParser.ts +75 -0
  567. package/lib/@ecme/views/concepts/ai/Chat/components/AiErrorMessage.tsx +28 -0
  568. package/lib/@ecme/views/concepts/ai/Chat/components/AiThinkingIndicator.tsx +24 -0
  569. package/lib/@ecme/views/concepts/ai/Chat/components/ApprovalCard.tsx +103 -0
  570. package/lib/@ecme/views/concepts/ai/Chat/components/ChatHistory.tsx +11 -27
  571. package/lib/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.tsx +7 -13
  572. package/lib/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.tsx +17 -8
  573. package/lib/@ecme/views/concepts/ai/Chat/components/ChatLandingView.tsx +58 -50
  574. package/lib/@ecme/views/concepts/ai/Chat/components/ChatView.tsx +124 -18
  575. package/lib/@ecme/views/concepts/ai/Chat/components/DataRequestCard.tsx +144 -0
  576. package/lib/@ecme/views/concepts/ai/Chat/components/ToolCallChip.tsx +218 -0
  577. package/lib/@ecme/views/concepts/ai/Chat/components/toolPresentation.ts +283 -0
  578. package/lib/@ecme/views/concepts/ai/Chat/hooks/useChatConversations.tsx +128 -0
  579. package/lib/@ecme/views/concepts/ai/Chat/hooks/useChatSend.ts +233 -28
  580. package/lib/@ecme/views/concepts/ai/Chat/hooks/useConversationMessages.ts +68 -0
  581. package/lib/@ecme/views/concepts/ai/Chat/store/generativeChatStore.ts +84 -13
  582. package/lib/@ecme/views/concepts/ai/Chat/types.ts +133 -29
  583. package/lib/@ecme/views/concepts/ai/Chat/utils.ts +33 -0
  584. package/lib/@ecme/views/dashboards/FavoritesLanding/FavoritesLanding.tsx +124 -0
  585. package/lib/@ecme/views/dashboards/FavoritesLanding/index.ts +3 -0
  586. package/lib/@ecme/views/dashboards/FavoritesLanding/types.ts +17 -0
  587. package/lib/@ecme/views/dashboards/FavoritesLanding/utils.ts +51 -0
  588. package/lib/@ecme/views/dashboards/index.ts +1 -3
  589. package/lib/@ecme/views/index.ts +1 -1
  590. package/lib/base/@types/api/request/dm/TCreateFavoritoMenuRequest.ts +3 -0
  591. package/lib/base/@types/api/request/dm/TReorderFavoritosMenuRequest.ts +3 -0
  592. package/lib/base/@types/api/request/originacao/TSimularConsumoManualSaldoRequest.ts +8 -0
  593. package/lib/base/@types/api/response/dadosMestres/TFavoritoMenuResponse.ts +7 -0
  594. package/lib/base/@types/api/response/originacao/TConsumoManualSaldoResponse.ts +22 -0
  595. package/lib/base/@types/api/response/originacao/TFindAllSaldoResponse.ts +1 -0
  596. package/lib/base/@types/api/response/originacao/TSimularConsumoManualSaldoResponse.ts +17 -0
  597. package/lib/base/@types/enums/originacao/ModoConsumoManual.ts +4 -0
  598. package/lib/base/@types/enums/originacao/TipoSaldoConsumivel.ts +5 -0
  599. package/lib/base/@types/models/racao/carga.ts +51 -0
  600. package/lib/base/@types/models/template/example.ts +46 -0
  601. package/lib/base/@types/models/template/{exampleObject → exampleObject.ts} +3 -5
  602. package/lib/base/@types/models/transportadora/irpf.ts +1 -0
  603. package/lib/base/@types/models/transportadora/irpfFaixaDesconto.ts +0 -1
  604. package/lib/base/components/forms/GenericForms/GenericArrayFormSection.tsx +1 -1
  605. package/lib/base/components/shared/AceitarProcessoDialog.tsx +13 -2
  606. package/lib/base/components/shared/AdicionarHistoricoDialog.tsx +16 -13
  607. package/lib/base/components/shared/CancelarProcessoDialog.tsx +16 -13
  608. package/lib/base/components/shared/ConcluirProcessoDialog.tsx +16 -13
  609. package/lib/base/components/shared/EncerrarProcessoDialog.tsx +16 -13
  610. package/lib/base/components/shared/ReabrirProcessoDialog.tsx +16 -13
  611. package/lib/base/components/shared/RetornarFluxAtendimentoDialog.tsx +14 -12
  612. package/lib/base/components/shared/TransferirParaAtendenteDialog.tsx +14 -12
  613. package/lib/base/components/shared/TransferirParaSolicitanteDialog.tsx +14 -12
  614. package/lib/base/components/shared/TransferirProcessoDialog.tsx +20 -12
  615. package/lib/base/configs/api.config.ts +2 -2
  616. package/lib/base/configs/endpoints.config/DadosMestres/FavoritoMenu/favoritoMenu.endpoint.config.ts +10 -0
  617. package/lib/base/configs/endpoints.config/DadosMestres/Sap/incoterms.endpoint.config.ts +1 -0
  618. package/lib/base/configs/endpoints.config/DadosMestres/Sap/safra.endpoint.config.ts +1 -0
  619. package/lib/base/configs/endpoints.config/HubFiscal/nfe.endpoint.config.ts +1 -1
  620. package/lib/base/configs/endpoints.config/SapService/Sap/executeSapApi.endpoint.config.ts +1 -0
  621. package/lib/base/configs/endpoints.config/Ticket/ticket.endpoint.config.ts +2 -0
  622. package/lib/base/configs/endpoints.config/agendamento/config/contratoVenda.ts +0 -1
  623. package/lib/base/configs/endpoints.config/centralNfe/centralNfe.ts +2 -0
  624. package/lib/base/configs/endpoints.config/centralNfe/config/cfop.ts +3 -2
  625. package/lib/base/configs/endpoints.config/centralNfe/config/historicoCfop.ts +8 -0
  626. package/lib/base/configs/endpoints.config/centralNfe/config/vinculoOperacao.ts +2 -1
  627. package/lib/base/configs/endpoints.config/compras/compras.ts +3 -1
  628. package/lib/base/configs/endpoints.config/compras/config/itemOrdemCompra.ts +7 -0
  629. package/lib/base/configs/endpoints.config/dm/config/municipio.ts +2 -1
  630. package/lib/base/configs/endpoints.config/endpoints.navigation.ts +5 -1
  631. package/lib/base/configs/endpoints.config/insumos/config/estoque.ts +2 -7
  632. package/lib/base/configs/endpoints.config/originacao/config/consumoManualSaldo.ts +9 -0
  633. package/lib/base/configs/endpoints.config/originacao/originacao.ts +2 -0
  634. package/lib/base/configs/endpoints.config/racao/config/carga.ts +2 -0
  635. package/lib/base/configs/endpoints.config/trade/config/contratoArmazenagemGraosTrade.ts +13 -0
  636. package/lib/base/configs/endpoints.config/trade/index.ts +7 -0
  637. package/lib/base/configs/endpoints.config/transportadora/contratoFrete.ts +2 -0
  638. package/lib/base/configs/navigation.config/modules.navigation.ts +2 -0
  639. package/lib/base/configs/navigation.config/modules.submenu/gestaoServicos/submenu.gestaoServicos.ts +107 -0
  640. package/lib/base/configs/navigation.config/modules.submenu/index.ts +1 -0
  641. package/lib/base/configs/navigation.config/modules.submenu/originacao/consumoManualSaldo/submenu.consumoManualSaldo.ts +16 -0
  642. package/lib/base/configs/navigation.config/modules.submenu/template/cadastros/submenu.example.ts +1 -1
  643. package/lib/base/configs/navigation.config/modules.submenu/template/submenu.template.ts +2 -3
  644. package/lib/base/configs/navigation.config/modules.submenu/trade/submenu.trade.ts +18 -0
  645. package/lib/base/configs/navigation.config/submenu/agendamento/config/relatorio-cotas.ts +1 -1
  646. package/lib/base/configs/navigation.config/submenu/centralNfe/cadastros.submenu.ts +2 -0
  647. package/lib/base/configs/navigation.config/submenu/centralNfe/config/cfop.submenu.ts +16 -0
  648. package/lib/base/configs/navigation.config/submenu/index.ts +1 -2
  649. package/lib/base/configs/navigation.config/submenu/originacao/originacao.submenu.ts +2 -0
  650. package/lib/base/configs/navigation.config/submenu/{example → template}/config/example.submenu.ts +3 -3
  651. package/lib/base/configs/navigation.config/submenu/{example → template}/config/exampleObject.submenu.ts +3 -3
  652. package/lib/base/configs/navigation.config/submenu/ticket/cadastros.submenu.ts +4 -0
  653. package/lib/base/configs/navigation.config/submenu/ticket/config/relatorioTransferenciaArmazens.submenu.ts +16 -0
  654. package/lib/base/configs/navigation.config/submenu/ticket/config/relatorioVendasGraos.submenu.ts +16 -0
  655. package/lib/base/configs/navigation.config/submenu/ticket/relatorios.submenu.ts +4 -14
  656. package/lib/base/configs/navigation.config/submenu/trade/configs/contratoArmazenagemGraosTrade.submenu.ts +16 -0
  657. package/lib/base/configs/navigation.config/submenu/trade/trade.submenu.ts +8 -0
  658. package/lib/base/locales/lang/ptBR/modules/Ticket/ticket.nav.ts +2 -0
  659. package/lib/base/services/modules/DadosMestres/FavoritoMenu/FavoritoMenuService.ts +35 -0
  660. package/lib/base/services/modules/DadosMestres/Sap/IncotermsService.ts +8 -0
  661. package/lib/base/services/modules/DadosMestres/Sap/SafraService.ts +8 -0
  662. package/lib/base/services/modules/HubFiscal/NfeService.ts +2 -2
  663. package/lib/base/services/modules/SapService/Sap/ExecuteSapApiService.ts +8 -0
  664. package/lib/base/services/modules/Ticket/TicketService.ts +16 -0
  665. package/lib/base/services/modules/agendamento/ContratoVendaService.ts +2 -2
  666. package/lib/base/services/modules/centralNfe/cfop/CfopService.ts +9 -1
  667. package/lib/base/services/modules/centralNfe/historicoCfop/HistoricoCfopService.ts +21 -0
  668. package/lib/base/services/modules/centralNfe/vinculoOperacao/VinculoOperacaoService.ts +7 -0
  669. package/lib/base/services/modules/compras/index.ts +2 -1
  670. package/lib/base/services/modules/compras/ordemCompra/ItemOrdemCompraService.ts +12 -0
  671. package/lib/base/services/modules/dm/municipio/MunicipioService.tsx +7 -0
  672. package/lib/base/services/modules/originacao/consumoManualSaldo/consumoManualSaldoService.ts +54 -0
  673. package/lib/base/services/modules/racao/carga/CargaService.ts +15 -1
  674. package/lib/base/services/modules/template/example/ExampleService.ts +37 -19
  675. package/lib/base/services/modules/template/exampleObject/ExampleObjectService.ts +45 -0
  676. package/lib/base/services/modules/template/index.ts +2 -2
  677. package/lib/base/services/modules/trade/ContratoArmazenagemGraosTradeService.ts +62 -0
  678. package/lib/base/services/modules/transportadora/ContratoFrete/ContratoFreteService.ts +14 -0
  679. package/package.json +1 -1
  680. package/dist/@types/base/configs/navigation.config/submenu/example/cadastros.submenu.d.ts.map +0 -1
  681. package/dist/@types/base/configs/navigation.config/submenu/example/config/example.submenu.d.ts.map +0 -1
  682. package/dist/@types/base/configs/navigation.config/submenu/example/config/exampleObject.submenu.d.ts.map +0 -1
  683. package/dist/@types/base/configs/navigation.config/submenu/example/template.submenu.d.ts.map +0 -1
  684. package/dist/@types/base/services/modules/template/example/ExampleObjectService.d.ts +0 -6
  685. package/dist/@types/base/services/modules/template/example/ExampleObjectService.d.ts.map +0 -1
  686. package/dist/base/configs/navigation.config/submenu/example/cadastros.submenu.js.map +0 -1
  687. package/dist/base/configs/navigation.config/submenu/example/config/example.submenu.js.map +0 -1
  688. package/dist/base/configs/navigation.config/submenu/example/config/exampleObject.submenu.js.map +0 -1
  689. package/dist/base/configs/navigation.config/submenu/example/template.submenu.js.map +0 -1
  690. package/dist/base/services/modules/template/example/ExampleObjectService.js +0 -37
  691. package/dist/base/services/modules/template/example/ExampleObjectService.js.map +0 -1
  692. package/lib/base/@types/models/template/example +0 -37
  693. package/lib/base/services/modules/template/example/ExampleObjectService.ts +0 -34
  694. /package/dist/@types/base/configs/navigation.config/submenu/{example → template}/cadastros.submenu.d.ts +0 -0
  695. /package/dist/@types/base/configs/navigation.config/submenu/{example → template}/config/example.submenu.d.ts +0 -0
  696. /package/dist/@types/base/configs/navigation.config/submenu/{example → template}/config/exampleObject.submenu.d.ts +0 -0
  697. /package/dist/@types/base/configs/navigation.config/submenu/{example → template}/template.submenu.d.ts +0 -0
  698. /package/dist/base/configs/navigation.config/submenu/{example → template}/cadastros.submenu.js +0 -0
  699. /package/dist/base/configs/navigation.config/submenu/{example → template}/template.submenu.js +0 -0
  700. /package/lib/base/configs/navigation.config/submenu/{example → template}/cadastros.submenu.ts +0 -0
  701. /package/lib/base/configs/navigation.config/submenu/{example → template}/template.submenu.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiThinkingIndicator.js","sources":["../../../../../../../lib/@ecme/views/concepts/ai/Chat/components/AiThinkingIndicator.tsx"],"sourcesContent":["import { TbSparkles } from 'react-icons/tb'\n\n/**\n * Indicador de \"pensando\" do agente Orbe AI — loader profissional exibido\n * enquanto a resposta está sendo gerada (estado isTyping do chat).\n */\nconst AiThinkingIndicator = () => {\n return (\n <span className=\"flex items-center gap-2 text-gray-500 dark:text-gray-400\">\n <TbSparkles\n size={18}\n className=\"text-primary motion-safe:animate-pulse\"\n />\n <span className=\"text-sm\">Orbe AI está pensando</span>\n <span className=\"inline-flex items-center gap-1\">\n <span className=\"size-1.5 rounded-full bg-primary motion-safe:animate-bounce [animation-delay:-0.3s]\" />\n <span className=\"size-1.5 rounded-full bg-primary motion-safe:animate-bounce [animation-delay:-0.15s]\" />\n <span className=\"size-1.5 rounded-full bg-primary motion-safe:animate-bounce\" />\n </span>\n </span>\n )\n}\n\nexport default AiThinkingIndicator\n"],"names":[],"mappings":";;AAMA,MAAM,sBAAsB,MAAM;AAC9B,SACI,qBAAC,QAAA,EAAK,WAAU,4DACZ,UAAA;AAAA,IAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,MAAM;AAAA,QACN,WAAU;AAAA,MAAA;AAAA,IAAA;AAAA,IAEd,oBAAC,QAAA,EAAK,WAAU,WAAU,UAAA,yBAAqB;AAAA,IAC/C,qBAAC,QAAA,EAAK,WAAU,kCACZ,UAAA;AAAA,MAAA,oBAAC,QAAA,EAAK,WAAU,sFAAA,CAAsF;AAAA,MACtG,oBAAC,QAAA,EAAK,WAAU,uFAAA,CAAuF;AAAA,MACvG,oBAAC,QAAA,EAAK,WAAU,8DAAA,CAA8D;AAAA,IAAA,EAAA,CAClF;AAAA,EAAA,GACJ;AAER;"}
@@ -0,0 +1,73 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { useState } from "react";
3
+ import { TbLock } from "react-icons/tb";
4
+ import "../../../../../components/ui/Button/index.js";
5
+ import { iconeFerramenta, camposVisiveis, rotularFerramenta } from "./toolPresentation.js";
6
+ import Button from "../../../../../components/ui/Button/Button.js";
7
+ const ApprovalCard = ({ approval, onDecide }) => {
8
+ const [decisao, setDecisao] = useState(null);
9
+ const decidir = (aprovado) => {
10
+ setDecisao(aprovado ? "aprovar" : "negar");
11
+ onDecide(aprovado);
12
+ };
13
+ return /* @__PURE__ */ jsxs("div", { className: "not-prose mt-1 overflow-hidden rounded-xl border border-gray-200 bg-white shadow-sm dark:border-gray-700 dark:bg-gray-800", children: [
14
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 border-b border-gray-200 px-4 py-2.5 dark:border-gray-700", children: [
15
+ /* @__PURE__ */ jsx(TbLock, { size: 16, className: "text-gray-400 dark:text-gray-500" }),
16
+ /* @__PURE__ */ jsx("span", { className: "text-xs font-semibold uppercase tracking-wide text-gray-500 dark:text-gray-400", children: "Confirmação necessária" })
17
+ ] }),
18
+ /* @__PURE__ */ jsxs("div", { className: "px-4 py-3.5", children: [
19
+ approval.calls.map((call) => {
20
+ const Icone = iconeFerramenta(call.name);
21
+ const campos = camposVisiveis(call.args, call.name);
22
+ return /* @__PURE__ */ jsxs("div", { className: "mb-4 last:mb-0", children: [
23
+ /* @__PURE__ */ jsxs("div", { className: "mb-3 flex items-start gap-2.5", children: [
24
+ /* @__PURE__ */ jsx("span", { className: "mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-lg bg-primary-subtle text-primary", children: /* @__PURE__ */ jsx(Icone, { size: 17 }) }),
25
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
26
+ /* @__PURE__ */ jsx("div", { className: "font-semibold text-gray-900 dark:text-gray-100", children: rotularFerramenta(call.name) }),
27
+ /* @__PURE__ */ jsx("div", { className: "text-sm text-gray-500 dark:text-gray-400", children: "Revise os dados antes de confirmar." })
28
+ ] })
29
+ ] }),
30
+ /* @__PURE__ */ jsx("dl", { className: "divide-y divide-gray-100 rounded-lg border border-gray-100 dark:divide-gray-700 dark:border-gray-700", children: campos.map((campo) => /* @__PURE__ */ jsxs(
31
+ "div",
32
+ {
33
+ className: "flex items-baseline justify-between gap-4 px-3 py-2",
34
+ children: [
35
+ /* @__PURE__ */ jsx("dt", { className: "shrink-0 text-sm text-gray-500 dark:text-gray-400", children: campo.rotulo }),
36
+ /* @__PURE__ */ jsx("dd", { className: "truncate text-sm font-medium text-gray-900 dark:text-gray-100", children: campo.valor })
37
+ ]
38
+ },
39
+ campo.chave
40
+ )) })
41
+ ] }, call.id);
42
+ }),
43
+ /* @__PURE__ */ jsxs("div", { className: "mt-4 flex items-center gap-2", children: [
44
+ /* @__PURE__ */ jsx(
45
+ Button,
46
+ {
47
+ variant: "solid",
48
+ size: "sm",
49
+ loading: decisao === "aprovar",
50
+ disabled: decisao !== null,
51
+ onClick: () => decidir(true),
52
+ children: "Confirmar"
53
+ }
54
+ ),
55
+ /* @__PURE__ */ jsx(
56
+ Button,
57
+ {
58
+ size: "sm",
59
+ loading: decisao === "negar",
60
+ disabled: decisao !== null,
61
+ onClick: () => decidir(false),
62
+ children: "Cancelar"
63
+ }
64
+ ),
65
+ /* @__PURE__ */ jsx("span", { className: "ml-auto text-xs text-gray-400 dark:text-gray-500", children: "Nada é gravado até você confirmar" })
66
+ ] })
67
+ ] })
68
+ ] });
69
+ };
70
+ export {
71
+ ApprovalCard as default
72
+ };
73
+ //# sourceMappingURL=ApprovalCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApprovalCard.js","sources":["../../../../../../../lib/@ecme/views/concepts/ai/Chat/components/ApprovalCard.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { TbLock } from 'react-icons/tb'\nimport Button from '@/components/ui/Button'\nimport { camposVisiveis, iconeFerramenta, rotularFerramenta } from './toolPresentation'\nimport type { PendingApproval } from '../types'\n\ntype ApprovalCardProps = {\n approval: PendingApproval\n onDecide: (approved: boolean) => void\n}\n\n/**\n * Confirmacao de uma operacao que grava no ERP.\n *\n * O agente fica PARADO enquanto este card estiver na tela — so volta a\n * responder depois do clique. Por isso ele nao usa a paleta de alerta: nao e um\n * aviso de erro, e uma decisao de negocio que o usuario precisa tomar.\n */\nconst ApprovalCard = ({ approval, onDecide }: ApprovalCardProps) => {\n const [decisao, setDecisao] = useState<'aprovar' | 'negar' | null>(null)\n\n const decidir = (aprovado: boolean) => {\n setDecisao(aprovado ? 'aprovar' : 'negar')\n onDecide(aprovado)\n }\n\n return (\n <div className=\"not-prose mt-1 overflow-hidden rounded-xl border border-gray-200 bg-white shadow-sm dark:border-gray-700 dark:bg-gray-800\">\n <div className=\"flex items-center gap-2 border-b border-gray-200 px-4 py-2.5 dark:border-gray-700\">\n <TbLock size={16} className=\"text-gray-400 dark:text-gray-500\" />\n <span className=\"text-xs font-semibold uppercase tracking-wide text-gray-500 dark:text-gray-400\">\n Confirmação necessária\n </span>\n </div>\n\n <div className=\"px-4 py-3.5\">\n {approval.calls.map((call) => {\n const Icone = iconeFerramenta(call.name)\n const campos = camposVisiveis(call.args, call.name)\n\n return (\n <div key={call.id} className=\"mb-4 last:mb-0\">\n <div className=\"mb-3 flex items-start gap-2.5\">\n <span className=\"mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-lg bg-primary-subtle text-primary\">\n <Icone size={17} />\n </span>\n <div className=\"min-w-0\">\n <div className=\"font-semibold text-gray-900 dark:text-gray-100\">\n {rotularFerramenta(call.name)}\n </div>\n <div className=\"text-sm text-gray-500 dark:text-gray-400\">\n Revise os dados antes de confirmar.\n </div>\n </div>\n </div>\n\n <dl className=\"divide-y divide-gray-100 rounded-lg border border-gray-100 dark:divide-gray-700 dark:border-gray-700\">\n {campos.map((campo) => (\n <div\n key={campo.chave}\n className=\"flex items-baseline justify-between gap-4 px-3 py-2\"\n >\n <dt className=\"shrink-0 text-sm text-gray-500 dark:text-gray-400\">\n {campo.rotulo}\n </dt>\n <dd className=\"truncate text-sm font-medium text-gray-900 dark:text-gray-100\">\n {campo.valor}\n </dd>\n </div>\n ))}\n </dl>\n </div>\n )\n })}\n\n <div className=\"mt-4 flex items-center gap-2\">\n <Button\n variant=\"solid\"\n size=\"sm\"\n loading={decisao === 'aprovar'}\n disabled={decisao !== null}\n onClick={() => decidir(true)}\n >\n Confirmar\n </Button>\n <Button\n size=\"sm\"\n loading={decisao === 'negar'}\n disabled={decisao !== null}\n onClick={() => decidir(false)}\n >\n Cancelar\n </Button>\n <span className=\"ml-auto text-xs text-gray-400 dark:text-gray-500\">\n Nada é gravado até você confirmar\n </span>\n </div>\n </div>\n </div>\n )\n}\n\nexport default ApprovalCard\n"],"names":[],"mappings":";;;;;;AAkBA,MAAM,eAAe,CAAC,EAAE,UAAU,eAAkC;AAChE,QAAM,CAAC,SAAS,UAAU,IAAI,SAAqC,IAAI;AAEvE,QAAM,UAAU,CAAC,aAAsB;AACnC,eAAW,WAAW,YAAY,OAAO;AACzC,aAAS,QAAQ;AAAA,EACrB;AAEA,SACI,qBAAC,OAAA,EAAI,WAAU,6HACX,UAAA;AAAA,IAAA,qBAAC,OAAA,EAAI,WAAU,qFACX,UAAA;AAAA,MAAA,oBAAC,QAAA,EAAO,MAAM,IAAI,WAAU,oCAAmC;AAAA,MAC/D,oBAAC,QAAA,EAAK,WAAU,kFAAiF,UAAA,yBAAA,CAEjG;AAAA,IAAA,GACJ;AAAA,IAEA,qBAAC,OAAA,EAAI,WAAU,eACV,UAAA;AAAA,MAAA,SAAS,MAAM,IAAI,CAAC,SAAS;AAC1B,cAAM,QAAQ,gBAAgB,KAAK,IAAI;AACvC,cAAM,SAAS,eAAe,KAAK,MAAM,KAAK,IAAI;AAElD,eACI,qBAAC,OAAA,EAAkB,WAAU,kBACzB,UAAA;AAAA,UAAA,qBAAC,OAAA,EAAI,WAAU,iCACX,UAAA;AAAA,YAAA,oBAAC,UAAK,WAAU,qGACZ,8BAAC,OAAA,EAAM,MAAM,IAAI,EAAA,CACrB;AAAA,YACA,qBAAC,OAAA,EAAI,WAAU,WACX,UAAA;AAAA,cAAA,oBAAC,SAAI,WAAU,kDACV,UAAA,kBAAkB,KAAK,IAAI,GAChC;AAAA,cACA,oBAAC,OAAA,EAAI,WAAU,4CAA2C,UAAA,sCAAA,CAE1D;AAAA,YAAA,EAAA,CACJ;AAAA,UAAA,GACJ;AAAA,8BAEC,MAAA,EAAG,WAAU,wGACT,UAAA,OAAO,IAAI,CAAC,UACT;AAAA,YAAC;AAAA,YAAA;AAAA,cAEG,WAAU;AAAA,cAEV,UAAA;AAAA,gBAAA,oBAAC,MAAA,EAAG,WAAU,qDACT,UAAA,MAAM,QACX;AAAA,gBACA,oBAAC,MAAA,EAAG,WAAU,iEACT,gBAAM,MAAA,CACX;AAAA,cAAA;AAAA,YAAA;AAAA,YARK,MAAM;AAAA,UAAA,CAUlB,EAAA,CACL;AAAA,QAAA,EAAA,GA7BM,KAAK,EA8Bf;AAAA,MAER,CAAC;AAAA,MAED,qBAAC,OAAA,EAAI,WAAU,gCACX,UAAA;AAAA,QAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACG,SAAQ;AAAA,YACR,MAAK;AAAA,YACL,SAAS,YAAY;AAAA,YACrB,UAAU,YAAY;AAAA,YACtB,SAAS,MAAM,QAAQ,IAAI;AAAA,YAC9B,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAGD;AAAA,UAAC;AAAA,UAAA;AAAA,YACG,MAAK;AAAA,YACL,SAAS,YAAY;AAAA,YACrB,UAAU,YAAY;AAAA,YACtB,SAAS,MAAM,QAAQ,KAAK;AAAA,YAC/B,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAGD,oBAAC,QAAA,EAAK,WAAU,oDAAmD,UAAA,oCAAA,CAEnE;AAAA,MAAA,EAAA,CACJ;AAAA,IAAA,EAAA,CACJ;AAAA,EAAA,GACJ;AAER;"}
@@ -3,36 +3,22 @@ import { Fragment } from "react";
3
3
  import "../../../../../components/ui/ScrollBar/index.js";
4
4
  import ChatHistoryItem from "./ChatHistoryItem.js";
5
5
  import { usGenerativeChatStore } from "../store/generativeChatStore.js";
6
- import { apiGetChatHistory } from "../../../../../services/AiService.js";
7
- import useSWR from "swr";
6
+ import useChatConversations from "../hooks/useChatConversations.js";
8
7
  import ScrollBar from "../../../../../components/ui/ScrollBar/ScrollBar.js";
9
- const ChatHistory = ({ queryText = "", onClick }) => {
8
+ const ChatHistory = ({
9
+ queryText = "",
10
+ onClick,
11
+ dropdownFloatingClass
12
+ }) => {
10
13
  const {
11
14
  chatHistory,
12
- setChatHistory,
13
15
  setRenameDialog,
14
16
  setSelectedConversation,
15
17
  selectedConversation
16
18
  } = usGenerativeChatStore();
17
- useSWR(
18
- ["/api/ai/chat/history"],
19
- () => apiGetChatHistory(),
20
- {
21
- revalidateOnFocus: false,
22
- revalidateIfStale: false,
23
- revalidateOnReconnect: false,
24
- onSuccess: (data) => {
25
- setChatHistory(data);
26
- }
27
- }
28
- );
19
+ const { remover } = useChatConversations();
29
20
  const handleDelete = (id) => {
30
- setChatHistory(chatHistory.filter((item) => item.id !== id));
31
- setSelectedConversation("");
32
- };
33
- const handleArchive = (id) => {
34
- setChatHistory(chatHistory.filter((item) => item.id !== id));
35
- setSelectedConversation("");
21
+ remover(id);
36
22
  };
37
23
  const handleRename = (id, title) => {
38
24
  setRenameDialog({
@@ -58,8 +44,8 @@ const ChatHistory = ({ queryText = "", onClick }) => {
58
44
  title: item.title,
59
45
  conversation: item.lastConversation,
60
46
  active: selectedConversation === item.id,
47
+ dropdownFloatingClass,
61
48
  onDelete: () => handleDelete(item.id),
62
- onArchive: () => handleArchive(item.id),
63
49
  onRename: () => handleRename(item.id, item.title),
64
50
  onClick: () => handleClick(item.id)
65
51
  },
@@ -1 +1 @@
1
- {"version":3,"file":"ChatHistory.js","sources":["../../../../../../../lib/@ecme/views/concepts/ai/Chat/components/ChatHistory.tsx"],"sourcesContent":["import { Fragment } from 'react'\nimport ScrollBar from '@/components/ui/ScrollBar'\nimport ChatHistoryItem from './ChatHistoryItem'\nimport { usGenerativeChatStore } from '../store/generativeChatStore'\nimport { apiGetChatHistory } from '@/services/AiService'\n\nimport useSWR from 'swr'\nimport type { GetChatHistoryResponse } from '../types'\n\ntype ChatHistoryProps = {\n queryText?: string\n onClick?: () => void\n}\n\nconst ChatHistory = ({ queryText = '', onClick }: ChatHistoryProps) => {\n const {\n chatHistory,\n setChatHistory,\n setRenameDialog,\n setSelectedConversation,\n selectedConversation,\n } = usGenerativeChatStore()\n\n useSWR(\n ['/api/ai/chat/history'],\n () => apiGetChatHistory<GetChatHistoryResponse>(),\n {\n revalidateOnFocus: false,\n revalidateIfStale: false,\n revalidateOnReconnect: false,\n onSuccess: (data) => {\n setChatHistory(data)\n },\n },\n )\n\n const handleDelete = (id: string) => {\n setChatHistory(chatHistory.filter((item) => item.id !== id))\n setSelectedConversation('')\n }\n\n const handleArchive = (id: string) => {\n setChatHistory(chatHistory.filter((item) => item.id !== id))\n setSelectedConversation('')\n }\n\n const handleRename = (id: string, title: string) => {\n setRenameDialog({\n id,\n title,\n open: true,\n })\n }\n\n const handleClick = (id: string) => {\n setSelectedConversation(id)\n onClick?.()\n }\n\n return (\n <ScrollBar className=\"h-full\">\n <div className=\"flex flex-col gap-2 py-2 px-3\">\n {chatHistory\n .filter((item) =>\n item.title\n .toLowerCase()\n .includes(queryText.toLowerCase()),\n )\n .map((item) => {\n if (!item.enable) {\n return <Fragment key={item.id} />\n }\n return (\n <ChatHistoryItem\n key={item.id}\n data-testid={item.id}\n title={item.title}\n conversation={item.lastConversation}\n active={selectedConversation === item.id}\n onDelete={() => handleDelete(item.id)}\n onArchive={() => handleArchive(item.id)}\n onRename={() =>\n handleRename(item.id, item.title)\n }\n onClick={() => handleClick(item.id)}\n />\n )\n })}\n </div>\n </ScrollBar>\n )\n}\n\nexport default ChatHistory\n"],"names":[],"mappings":";;;;;;;;AAcA,MAAM,cAAc,CAAC,EAAE,YAAY,IAAI,cAAgC;AACnE,QAAM;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,IACA,sBAAA;AAEJ;AAAA,IACI,CAAC,sBAAsB;AAAA,IACvB,MAAM,kBAAA;AAAA,IACN;AAAA,MACI,mBAAmB;AAAA,MACnB,mBAAmB;AAAA,MACnB,uBAAuB;AAAA,MACvB,WAAW,CAAC,SAAS;AACjB,uBAAe,IAAI;AAAA,MACvB;AAAA,IAAA;AAAA,EACJ;AAGJ,QAAM,eAAe,CAAC,OAAe;AACjC,mBAAe,YAAY,OAAO,CAAC,SAAS,KAAK,OAAO,EAAE,CAAC;AAC3D,4BAAwB,EAAE;AAAA,EAC9B;AAEA,QAAM,gBAAgB,CAAC,OAAe;AAClC,mBAAe,YAAY,OAAO,CAAC,SAAS,KAAK,OAAO,EAAE,CAAC;AAC3D,4BAAwB,EAAE;AAAA,EAC9B;AAEA,QAAM,eAAe,CAAC,IAAY,UAAkB;AAChD,oBAAgB;AAAA,MACZ;AAAA,MACA;AAAA,MACA,MAAM;AAAA,IAAA,CACT;AAAA,EACL;AAEA,QAAM,cAAc,CAAC,OAAe;AAChC,4BAAwB,EAAE;AAC1B,cAAA;AAAA,EACJ;AAEA,SACI,oBAAC,aAAU,WAAU,UACjB,8BAAC,OAAA,EAAI,WAAU,iCACV,UAAA,YACI;AAAA,IAAO,CAAC,SACL,KAAK,MACA,cACA,SAAS,UAAU,YAAA,CAAa;AAAA,EAAA,EAExC,IAAI,CAAC,SAAS;AACX,QAAI,CAAC,KAAK,QAAQ;AACd,aAAO,oBAAC,UAAA,IAAc,KAAK,EAAI;AAAA,IACnC;AACA,WACI;AAAA,MAAC;AAAA,MAAA;AAAA,QAEG,eAAa,KAAK;AAAA,QAClB,OAAO,KAAK;AAAA,QACZ,cAAc,KAAK;AAAA,QACnB,QAAQ,yBAAyB,KAAK;AAAA,QACtC,UAAU,MAAM,aAAa,KAAK,EAAE;AAAA,QACpC,WAAW,MAAM,cAAc,KAAK,EAAE;AAAA,QACtC,UAAU,MACN,aAAa,KAAK,IAAI,KAAK,KAAK;AAAA,QAEpC,SAAS,MAAM,YAAY,KAAK,EAAE;AAAA,MAAA;AAAA,MAV7B,KAAK;AAAA,IAAA;AAAA,EAatB,CAAC,GACT,GACJ;AAER;"}
1
+ {"version":3,"file":"ChatHistory.js","sources":["../../../../../../../lib/@ecme/views/concepts/ai/Chat/components/ChatHistory.tsx"],"sourcesContent":["import { Fragment } from 'react'\nimport ScrollBar from '@/components/ui/ScrollBar'\nimport ChatHistoryItem from './ChatHistoryItem'\nimport { usGenerativeChatStore } from '../store/generativeChatStore'\nimport useChatConversations from '../hooks/useChatConversations'\n\ntype ChatHistoryProps = {\n queryText?: string\n onClick?: () => void\n /** Repassado ao menu de cada item (ex.: subir o z-index dentro do widget). */\n dropdownFloatingClass?: string\n}\n\nconst ChatHistory = ({\n queryText = '',\n onClick,\n dropdownFloatingClass,\n}: ChatHistoryProps) => {\n const {\n chatHistory,\n setRenameDialog,\n setSelectedConversation,\n selectedConversation,\n } = usGenerativeChatStore()\n const { remover } = useChatConversations()\n\n const handleDelete = (id: string) => {\n remover(id)\n }\n\n const handleRename = (id: string, title: string) => {\n setRenameDialog({\n id,\n title,\n open: true,\n })\n }\n\n const handleClick = (id: string) => {\n setSelectedConversation(id)\n onClick?.()\n }\n\n return (\n <ScrollBar className=\"h-full\">\n <div className=\"flex flex-col gap-2 py-2 px-3\">\n {chatHistory\n .filter((item) =>\n item.title\n .toLowerCase()\n .includes(queryText.toLowerCase()),\n )\n .map((item) => {\n if (!item.enable) {\n return <Fragment key={item.id} />\n }\n return (\n <ChatHistoryItem\n key={item.id}\n data-testid={item.id}\n title={item.title}\n conversation={item.lastConversation}\n active={selectedConversation === item.id}\n dropdownFloatingClass={dropdownFloatingClass}\n onDelete={() => handleDelete(item.id)}\n onRename={() =>\n handleRename(item.id, item.title)\n }\n onClick={() => handleClick(item.id)}\n />\n )\n })}\n </div>\n </ScrollBar>\n )\n}\n\nexport default ChatHistory\n"],"names":[],"mappings":";;;;;;;AAaA,MAAM,cAAc,CAAC;AAAA,EACjB,YAAY;AAAA,EACZ;AAAA,EACA;AACJ,MAAwB;AACpB,QAAM;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,IACA,sBAAA;AACJ,QAAM,EAAE,QAAA,IAAY,qBAAA;AAEpB,QAAM,eAAe,CAAC,OAAe;AACjC,YAAQ,EAAE;AAAA,EACd;AAEA,QAAM,eAAe,CAAC,IAAY,UAAkB;AAChD,oBAAgB;AAAA,MACZ;AAAA,MACA;AAAA,MACA,MAAM;AAAA,IAAA,CACT;AAAA,EACL;AAEA,QAAM,cAAc,CAAC,OAAe;AAChC,4BAAwB,EAAE;AAC1B,cAAA;AAAA,EACJ;AAEA,SACI,oBAAC,aAAU,WAAU,UACjB,8BAAC,OAAA,EAAI,WAAU,iCACV,UAAA,YACI;AAAA,IAAO,CAAC,SACL,KAAK,MACA,cACA,SAAS,UAAU,YAAA,CAAa;AAAA,EAAA,EAExC,IAAI,CAAC,SAAS;AACX,QAAI,CAAC,KAAK,QAAQ;AACd,aAAO,oBAAC,UAAA,IAAc,KAAK,EAAI;AAAA,IACnC;AACA,WACI;AAAA,MAAC;AAAA,MAAA;AAAA,QAEG,eAAa,KAAK;AAAA,QAClB,OAAO,KAAK;AAAA,QACZ,cAAc,KAAK;AAAA,QACnB,QAAQ,yBAAyB,KAAK;AAAA,QACtC;AAAA,QACA,UAAU,MAAM,aAAa,KAAK,EAAE;AAAA,QACpC,UAAU,MACN,aAAa,KAAK,IAAI,KAAK,KAAK;AAAA,QAEpC,SAAS,MAAM,YAAY,KAAK,EAAE;AAAA,MAAA;AAAA,MAV7B,KAAK;AAAA,IAAA;AAAA,EAatB,CAAC,GACT,GACJ;AAER;"}
@@ -2,7 +2,7 @@ import { jsxs, jsx } from "react/jsx-runtime";
2
2
  import { useState, useRef } from "react";
3
3
  import { Dropdown } from "../../../../../components/ui/Dropdown/index.js";
4
4
  import classNames from "classnames";
5
- import { TbPencil, TbArchive, TbTrash, TbDots } from "react-icons/tb";
5
+ import { TbPencil, TbTrash, TbDots } from "react-icons/tb";
6
6
  const ChatHistoryItem = (props) => {
7
7
  const [dropdownOpen, setDropdownOpen] = useState(false);
8
8
  const dropdownRef = useRef(null);
@@ -11,9 +11,9 @@ const ChatHistoryItem = (props) => {
11
11
  conversation,
12
12
  active,
13
13
  onRename,
14
- onArchive,
15
14
  onDelete,
16
15
  onClick,
16
+ dropdownFloatingClass,
17
17
  ...rest
18
18
  } = props;
19
19
  const handleCallback = (e, callback) => {
@@ -50,6 +50,7 @@ const ChatHistoryItem = (props) => {
50
50
  {
51
51
  ref: dropdownRef,
52
52
  placement: "bottom-end",
53
+ floatingClass: dropdownFloatingClass,
53
54
  renderTitle: /* @__PURE__ */ jsx(
54
55
  "div",
55
56
  {
@@ -75,18 +76,7 @@ const ChatHistoryItem = (props) => {
75
76
  onClick: (e) => handleCallback(e, onRename),
76
77
  children: [
77
78
  /* @__PURE__ */ jsx(TbPencil, { className: "text-xl" }),
78
- /* @__PURE__ */ jsx("span", { children: "Rename" })
79
- ]
80
- }
81
- ),
82
- /* @__PURE__ */ jsxs(
83
- Dropdown.Item,
84
- {
85
- eventKey: "rename",
86
- onClick: (e) => handleCallback(e, onArchive),
87
- children: [
88
- /* @__PURE__ */ jsx(TbArchive, { className: "text-xl" }),
89
- /* @__PURE__ */ jsx("span", { children: "Archive" })
79
+ /* @__PURE__ */ jsx("span", { children: "Renomear" })
90
80
  ]
91
81
  }
92
82
  ),
@@ -94,11 +84,11 @@ const ChatHistoryItem = (props) => {
94
84
  Dropdown.Item,
95
85
  {
96
86
  className: "text-error",
97
- eventKey: "rename",
87
+ eventKey: "delete",
98
88
  onClick: (e) => handleCallback(e, onDelete),
99
89
  children: [
100
90
  /* @__PURE__ */ jsx(TbTrash, { className: "text-xl text-error" }),
101
- /* @__PURE__ */ jsx("span", { className: "text-error", children: "Deleted" })
91
+ /* @__PURE__ */ jsx("span", { className: "text-error", children: "Excluir" })
102
92
  ]
103
93
  }
104
94
  )
@@ -1 +1 @@
1
- {"version":3,"file":"ChatHistoryItem.js","sources":["../../../../../../../lib/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.tsx"],"sourcesContent":["import { useState, useRef } from 'react'\nimport Dropdown from '@/components/ui/Dropdown'\nimport classNames from 'classnames'\nimport { TbDots, TbArchive, TbPencil, TbTrash } from 'react-icons/tb'\nimport type { DropdownRef } from '@/components/ui/Dropdown'\n\nimport type { MouseEvent, SyntheticEvent } from 'react'\n\ntype ChatHistoryItemProps = {\n title: string\n conversation: string\n active?: boolean\n onDelete?: () => void\n onArchive?: () => void\n onRename?: () => void\n onClick?: () => void\n}\n\nconst ChatHistoryItem = (props: ChatHistoryItemProps) => {\n const [dropdownOpen, setDropdownOpen] = useState(false)\n\n const dropdownRef = useRef<DropdownRef>(null)\n\n const {\n title,\n conversation,\n active,\n onRename,\n onArchive,\n onDelete,\n onClick,\n ...rest\n } = props\n\n const handleCallback = (\n e: SyntheticEvent<Element, Event>,\n callback?: () => void,\n ) => {\n e.stopPropagation()\n callback?.()\n }\n\n const handleDropdownToggleClick = (e: MouseEvent) => {\n e.stopPropagation()\n dropdownRef.current?.handleDropdownOpen()\n }\n\n return (\n <div\n className={classNames(\n 'rounded-xl p-3 px-5 hover:bg-gray-100 dark:hover:bg-gray-700 cursor-pointer group relative',\n (dropdownOpen || active) && 'bg-gray-100 dark:bg-gray-700',\n )}\n onClick={onClick}\n {...rest}\n >\n <div>\n <div className=\"heading-text font-bold truncate\">{title}</div>\n <div className=\"truncate\">{conversation}</div>\n </div>\n <div\n className={classNames(\n 'rounded-xl absolute bottom-0 top-0 to-transparent ltr:right-0 ltr:bg-gradient-to-l rtl:left-0 rtl:bg-gradient-to-r group-hover:from-gray-100 dark:group-hover:from-gray-700 w-8 from-0% group-hover:w-20 group-hover:from-60% flex items-center justify-end',\n dropdownOpen &&\n 'from-gray-100 dark:from-gray-700 w-20 from-60%',\n )}\n >\n <Dropdown\n ref={dropdownRef}\n placement=\"bottom-end\"\n renderTitle={\n <div\n className={classNames(\n 'p-2 opacity-0 group-hover:opacity-100',\n dropdownOpen && 'opacity-100',\n )}\n >\n <TbDots\n className=\"text-xl\"\n onClick={handleDropdownToggleClick}\n />\n </div>\n }\n onOpen={(bool) => setDropdownOpen(bool)}\n >\n <Dropdown.Item\n eventKey=\"rename\"\n onClick={(e) => handleCallback(e, onRename)}\n >\n <TbPencil className=\"text-xl\" />\n <span>Rename</span>\n </Dropdown.Item>\n <Dropdown.Item\n eventKey=\"rename\"\n onClick={(e) => handleCallback(e, onArchive)}\n >\n <TbArchive className=\"text-xl\" />\n <span>Archive</span>\n </Dropdown.Item>\n <Dropdown.Item\n className=\"text-error\"\n eventKey=\"rename\"\n onClick={(e) => handleCallback(e, onDelete)}\n >\n <TbTrash className=\"text-xl text-error\" />\n <span className=\"text-error\">Deleted</span>\n </Dropdown.Item>\n </Dropdown>\n </div>\n </div>\n )\n}\n\nexport default ChatHistoryItem\n"],"names":[],"mappings":";;;;;AAkBA,MAAM,kBAAkB,CAAC,UAAgC;AACrD,QAAM,CAAC,cAAc,eAAe,IAAI,SAAS,KAAK;AAEtD,QAAM,cAAc,OAAoB,IAAI;AAE5C,QAAM;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EAAA,IACH;AAEJ,QAAM,iBAAiB,CACnB,GACA,aACC;AACD,MAAE,gBAAA;AACF,eAAA;AAAA,EACJ;AAEA,QAAM,4BAA4B,CAAC,MAAkB;AACjD,MAAE,gBAAA;AACF,gBAAY,SAAS,mBAAA;AAAA,EACzB;AAEA,SACI;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,WAAW;AAAA,QACP;AAAA,SACC,gBAAgB,WAAW;AAAA,MAAA;AAAA,MAEhC;AAAA,MACC,GAAG;AAAA,MAEJ,UAAA;AAAA,QAAA,qBAAC,OAAA,EACG,UAAA;AAAA,UAAA,oBAAC,OAAA,EAAI,WAAU,mCAAmC,UAAA,OAAM;AAAA,UACxD,oBAAC,OAAA,EAAI,WAAU,YAAY,UAAA,aAAA,CAAa;AAAA,QAAA,GAC5C;AAAA,QACA;AAAA,UAAC;AAAA,UAAA;AAAA,YACG,WAAW;AAAA,cACP;AAAA,cACA,gBACI;AAAA,YAAA;AAAA,YAGR,UAAA;AAAA,cAAC;AAAA,cAAA;AAAA,gBACG,KAAK;AAAA,gBACL,WAAU;AAAA,gBACV,aACI;AAAA,kBAAC;AAAA,kBAAA;AAAA,oBACG,WAAW;AAAA,sBACP;AAAA,sBACA,gBAAgB;AAAA,oBAAA;AAAA,oBAGpB,UAAA;AAAA,sBAAC;AAAA,sBAAA;AAAA,wBACG,WAAU;AAAA,wBACV,SAAS;AAAA,sBAAA;AAAA,oBAAA;AAAA,kBACb;AAAA,gBAAA;AAAA,gBAGR,QAAQ,CAAC,SAAS,gBAAgB,IAAI;AAAA,gBAEtC,UAAA;AAAA,kBAAA;AAAA,oBAAC,SAAS;AAAA,oBAAT;AAAA,sBACG,UAAS;AAAA,sBACT,SAAS,CAAC,MAAM,eAAe,GAAG,QAAQ;AAAA,sBAE1C,UAAA;AAAA,wBAAA,oBAAC,UAAA,EAAS,WAAU,UAAA,CAAU;AAAA,wBAC9B,oBAAC,UAAK,UAAA,SAAA,CAAM;AAAA,sBAAA;AAAA,oBAAA;AAAA,kBAAA;AAAA,kBAEhB;AAAA,oBAAC,SAAS;AAAA,oBAAT;AAAA,sBACG,UAAS;AAAA,sBACT,SAAS,CAAC,MAAM,eAAe,GAAG,SAAS;AAAA,sBAE3C,UAAA;AAAA,wBAAA,oBAAC,WAAA,EAAU,WAAU,UAAA,CAAU;AAAA,wBAC/B,oBAAC,UAAK,UAAA,UAAA,CAAO;AAAA,sBAAA;AAAA,oBAAA;AAAA,kBAAA;AAAA,kBAEjB;AAAA,oBAAC,SAAS;AAAA,oBAAT;AAAA,sBACG,WAAU;AAAA,sBACV,UAAS;AAAA,sBACT,SAAS,CAAC,MAAM,eAAe,GAAG,QAAQ;AAAA,sBAE1C,UAAA;AAAA,wBAAA,oBAAC,SAAA,EAAQ,WAAU,qBAAA,CAAqB;AAAA,wBACxC,oBAAC,QAAA,EAAK,WAAU,cAAa,UAAA,UAAA,CAAO;AAAA,sBAAA;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBACxC;AAAA,cAAA;AAAA,YAAA;AAAA,UACJ;AAAA,QAAA;AAAA,MACJ;AAAA,IAAA;AAAA,EAAA;AAGZ;"}
1
+ {"version":3,"file":"ChatHistoryItem.js","sources":["../../../../../../../lib/@ecme/views/concepts/ai/Chat/components/ChatHistoryItem.tsx"],"sourcesContent":["import { useState, useRef } from 'react'\nimport Dropdown from '@/components/ui/Dropdown'\nimport classNames from 'classnames'\nimport { TbDots, TbPencil, TbTrash } from 'react-icons/tb'\nimport type { DropdownRef } from '@/components/ui/Dropdown'\n\nimport type { MouseEvent, SyntheticEvent } from 'react'\n\ntype ChatHistoryItemProps = {\n title: string\n conversation: string\n active?: boolean\n onDelete?: () => void\n onRename?: () => void\n onClick?: () => void\n dropdownFloatingClass?: string\n}\n\nconst ChatHistoryItem = (props: ChatHistoryItemProps) => {\n const [dropdownOpen, setDropdownOpen] = useState(false)\n\n const dropdownRef = useRef<DropdownRef>(null)\n\n const {\n title,\n conversation,\n active,\n onRename,\n onDelete,\n onClick,\n dropdownFloatingClass,\n ...rest\n } = props\n\n const handleCallback = (\n e: SyntheticEvent<Element, Event>,\n callback?: () => void,\n ) => {\n e.stopPropagation()\n callback?.()\n }\n\n const handleDropdownToggleClick = (e: MouseEvent) => {\n e.stopPropagation()\n dropdownRef.current?.handleDropdownOpen()\n }\n\n return (\n <div\n className={classNames(\n 'rounded-xl p-3 px-5 hover:bg-gray-100 dark:hover:bg-gray-700 cursor-pointer group relative',\n (dropdownOpen || active) && 'bg-gray-100 dark:bg-gray-700',\n )}\n onClick={onClick}\n {...rest}\n >\n <div>\n <div className=\"heading-text font-bold truncate\">{title}</div>\n <div className=\"truncate\">{conversation}</div>\n </div>\n <div\n className={classNames(\n 'rounded-xl absolute bottom-0 top-0 to-transparent ltr:right-0 ltr:bg-gradient-to-l rtl:left-0 rtl:bg-gradient-to-r group-hover:from-gray-100 dark:group-hover:from-gray-700 w-8 from-0% group-hover:w-20 group-hover:from-60% flex items-center justify-end',\n dropdownOpen &&\n 'from-gray-100 dark:from-gray-700 w-20 from-60%',\n )}\n >\n <Dropdown\n ref={dropdownRef}\n placement=\"bottom-end\"\n floatingClass={dropdownFloatingClass}\n renderTitle={\n <div\n className={classNames(\n 'p-2 opacity-0 group-hover:opacity-100',\n dropdownOpen && 'opacity-100',\n )}\n >\n <TbDots\n className=\"text-xl\"\n onClick={handleDropdownToggleClick}\n />\n </div>\n }\n onOpen={(bool) => setDropdownOpen(bool)}\n >\n <Dropdown.Item\n eventKey=\"rename\"\n onClick={(e) => handleCallback(e, onRename)}\n >\n <TbPencil className=\"text-xl\" />\n <span>Renomear</span>\n </Dropdown.Item>\n <Dropdown.Item\n className=\"text-error\"\n eventKey=\"delete\"\n onClick={(e) => handleCallback(e, onDelete)}\n >\n <TbTrash className=\"text-xl text-error\" />\n <span className=\"text-error\">Excluir</span>\n </Dropdown.Item>\n </Dropdown>\n </div>\n </div>\n )\n}\n\nexport default ChatHistoryItem\n"],"names":[],"mappings":";;;;;AAkBA,MAAM,kBAAkB,CAAC,UAAgC;AACrD,QAAM,CAAC,cAAc,eAAe,IAAI,SAAS,KAAK;AAEtD,QAAM,cAAc,OAAoB,IAAI;AAE5C,QAAM;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EAAA,IACH;AAEJ,QAAM,iBAAiB,CACnB,GACA,aACC;AACD,MAAE,gBAAA;AACF,eAAA;AAAA,EACJ;AAEA,QAAM,4BAA4B,CAAC,MAAkB;AACjD,MAAE,gBAAA;AACF,gBAAY,SAAS,mBAAA;AAAA,EACzB;AAEA,SACI;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,WAAW;AAAA,QACP;AAAA,SACC,gBAAgB,WAAW;AAAA,MAAA;AAAA,MAEhC;AAAA,MACC,GAAG;AAAA,MAEJ,UAAA;AAAA,QAAA,qBAAC,OAAA,EACG,UAAA;AAAA,UAAA,oBAAC,OAAA,EAAI,WAAU,mCAAmC,UAAA,OAAM;AAAA,UACxD,oBAAC,OAAA,EAAI,WAAU,YAAY,UAAA,aAAA,CAAa;AAAA,QAAA,GAC5C;AAAA,QACA;AAAA,UAAC;AAAA,UAAA;AAAA,YACG,WAAW;AAAA,cACP;AAAA,cACA,gBACI;AAAA,YAAA;AAAA,YAGR,UAAA;AAAA,cAAC;AAAA,cAAA;AAAA,gBACG,KAAK;AAAA,gBACL,WAAU;AAAA,gBACV,eAAe;AAAA,gBACf,aACI;AAAA,kBAAC;AAAA,kBAAA;AAAA,oBACG,WAAW;AAAA,sBACP;AAAA,sBACA,gBAAgB;AAAA,oBAAA;AAAA,oBAGpB,UAAA;AAAA,sBAAC;AAAA,sBAAA;AAAA,wBACG,WAAU;AAAA,wBACV,SAAS;AAAA,sBAAA;AAAA,oBAAA;AAAA,kBACb;AAAA,gBAAA;AAAA,gBAGR,QAAQ,CAAC,SAAS,gBAAgB,IAAI;AAAA,gBAEtC,UAAA;AAAA,kBAAA;AAAA,oBAAC,SAAS;AAAA,oBAAT;AAAA,sBACG,UAAS;AAAA,sBACT,SAAS,CAAC,MAAM,eAAe,GAAG,QAAQ;AAAA,sBAE1C,UAAA;AAAA,wBAAA,oBAAC,UAAA,EAAS,WAAU,UAAA,CAAU;AAAA,wBAC9B,oBAAC,UAAK,UAAA,WAAA,CAAQ;AAAA,sBAAA;AAAA,oBAAA;AAAA,kBAAA;AAAA,kBAElB;AAAA,oBAAC,SAAS;AAAA,oBAAT;AAAA,sBACG,WAAU;AAAA,sBACV,UAAS;AAAA,sBACT,SAAS,CAAC,MAAM,eAAe,GAAG,QAAQ;AAAA,sBAE1C,UAAA;AAAA,wBAAA,oBAAC,SAAA,EAAQ,WAAU,qBAAA,CAAqB;AAAA,wBACxC,oBAAC,QAAA,EAAK,WAAU,cAAa,UAAA,UAAA,CAAO;AAAA,sBAAA;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBACxC;AAAA,cAAA;AAAA,YAAA;AAAA,UACJ;AAAA,QAAA;AAAA,MACJ;AAAA,IAAA;AAAA,EAAA;AAGZ;"}
@@ -5,6 +5,7 @@ import "../../../../../components/ui/Form/index.js";
5
5
  import "../../../../../components/ui/Input/index.js";
6
6
  import "../../../../../components/ui/Button/index.js";
7
7
  import { usGenerativeChatStore } from "../store/generativeChatStore.js";
8
+ import useChatConversations from "../hooks/useChatConversations.js";
8
9
  import { useForm, Controller } from "react-hook-form";
9
10
  import { zodResolver } from "@hookform/resolvers/zod";
10
11
  import { z } from "zod";
@@ -14,10 +15,13 @@ import FormItem from "../../../../../components/ui/Form/FormItem.js";
14
15
  import Input from "../../../../../components/ui/Input/Input.js";
15
16
  import Button from "../../../../../components/ui/Button/Button.js";
16
17
  const validationSchema = z.object({
17
- title: z.string().min(1, "Please do not leave chat title blank!")
18
+ title: z.string().trim().min(1, "Informe um título para a conversa.")
18
19
  });
19
- const ChatHistoryRenameDialog = () => {
20
- const { renameDialog, setRenameDialog, setChatHistoryName } = usGenerativeChatStore();
20
+ const ChatHistoryRenameDialog = ({
21
+ overlayClassName
22
+ }) => {
23
+ const { renameDialog, setRenameDialog } = usGenerativeChatStore();
24
+ const { renomear } = useChatConversations();
21
25
  const {
22
26
  control,
23
27
  formState: { errors },
@@ -44,16 +48,15 @@ const ChatHistoryRenameDialog = () => {
44
48
  });
45
49
  };
46
50
  const onFormSubmit = async ({ title }) => {
47
- setChatHistoryName({
48
- id: renameDialog.id,
49
- title
50
- });
51
+ const { id } = renameDialog;
51
52
  handleDialogClose();
53
+ await renomear(id, title.trim());
52
54
  };
53
55
  return /* @__PURE__ */ jsxs(
54
56
  Dialog,
55
57
  {
56
58
  isOpen: renameDialog.open,
59
+ overlayClassName,
57
60
  onClose: handleDialogClose,
58
61
  onRequestClose: handleDialogClose,
59
62
  children: [
@@ -1 +1 @@
1
- {"version":3,"file":"ChatHistoryRenameDialog.js","sources":["../../../../../../../lib/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.tsx"],"sourcesContent":["import { useEffect } from 'react'\nimport Dialog from '@/components/ui/Dialog'\nimport { Form, FormItem } from '@/components/ui/Form'\nimport Input from '@/components/ui/Input'\nimport Button from '@/components/ui/Button'\nimport { usGenerativeChatStore } from '../store/generativeChatStore'\nimport { useForm, Controller } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport type { ZodType } from 'zod'\n\ntype FormSchema = {\n title: string\n}\n\nconst validationSchema: ZodType<FormSchema> = z.object({\n title: z.string().min(1, 'Please do not leave chat title blank!'),\n})\n\nconst ChatHistoryRenameDialog = () => {\n const { renameDialog, setRenameDialog, setChatHistoryName } =\n usGenerativeChatStore()\n\n const {\n control,\n formState: { errors },\n handleSubmit,\n reset,\n } = useForm<FormSchema>({\n defaultValues: {\n title: renameDialog.title,\n },\n resolver: zodResolver(validationSchema),\n })\n\n useEffect(() => {\n if (renameDialog.open) {\n reset({\n title: renameDialog.title,\n })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [renameDialog.title, renameDialog.open])\n\n const handleDialogClose = () => {\n setRenameDialog({\n id: '',\n title: '',\n open: false,\n })\n }\n\n const onFormSubmit = async ({ title }: FormSchema) => {\n setChatHistoryName({\n id: renameDialog.id,\n title,\n })\n handleDialogClose()\n }\n\n return (\n <Dialog\n isOpen={renameDialog.open}\n onClose={handleDialogClose}\n onRequestClose={handleDialogClose}\n >\n <h5>Rename chat</h5>\n <div className=\"mt-8\">\n <Form onSubmit={handleSubmit(onFormSubmit)}>\n <FormItem\n label=\"Chat title\"\n invalid={Boolean(errors.title)}\n errorMessage={errors.title?.message}\n >\n <Controller\n name=\"title\"\n control={control}\n rules={{ required: true }}\n render={({ field }) => (\n <Input\n placeholder=\"Rename chat\"\n type=\"text\"\n autoComplete=\"off\"\n {...field}\n />\n )}\n />\n </FormItem>\n <div className=\"flex justify-end gap-2\">\n <Button type=\"button\" onClick={handleDialogClose}>\n Cancel\n </Button>\n <Button variant=\"solid\" type=\"submit\">\n Rename\n </Button>\n </div>\n </Form>\n </div>\n </Dialog>\n )\n}\n\nexport default ChatHistoryRenameDialog\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAeA,MAAM,mBAAwC,EAAE,OAAO;AAAA,EACnD,OAAO,EAAE,OAAA,EAAS,IAAI,GAAG,uCAAuC;AACpE,CAAC;AAED,MAAM,0BAA0B,MAAM;AAClC,QAAM,EAAE,cAAc,iBAAiB,mBAAA,IACnC,sBAAA;AAEJ,QAAM;AAAA,IACF;AAAA,IACA,WAAW,EAAE,OAAA;AAAA,IACb;AAAA,IACA;AAAA,EAAA,IACA,QAAoB;AAAA,IACpB,eAAe;AAAA,MACX,OAAO,aAAa;AAAA,IAAA;AAAA,IAExB,UAAU,YAAY,gBAAgB;AAAA,EAAA,CACzC;AAED,YAAU,MAAM;AACZ,QAAI,aAAa,MAAM;AACnB,YAAM;AAAA,QACF,OAAO,aAAa;AAAA,MAAA,CACvB;AAAA,IACL;AAAA,EAEJ,GAAG,CAAC,aAAa,OAAO,aAAa,IAAI,CAAC;AAE1C,QAAM,oBAAoB,MAAM;AAC5B,oBAAgB;AAAA,MACZ,IAAI;AAAA,MACJ,OAAO;AAAA,MACP,MAAM;AAAA,IAAA,CACT;AAAA,EACL;AAEA,QAAM,eAAe,OAAO,EAAE,YAAwB;AAClD,uBAAmB;AAAA,MACf,IAAI,aAAa;AAAA,MACjB;AAAA,IAAA,CACH;AACD,sBAAA;AAAA,EACJ;AAEA,SACI;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,QAAQ,aAAa;AAAA,MACrB,SAAS;AAAA,MACT,gBAAgB;AAAA,MAEhB,UAAA;AAAA,QAAA,oBAAC,QAAG,UAAA,cAAA,CAAW;AAAA,QACf,oBAAC,SAAI,WAAU,QACX,+BAAC,MAAA,EAAK,UAAU,aAAa,YAAY,GACrC,UAAA;AAAA,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACG,OAAM;AAAA,cACN,SAAS,QAAQ,OAAO,KAAK;AAAA,cAC7B,cAAc,OAAO,OAAO;AAAA,cAE5B,UAAA;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACG,MAAK;AAAA,kBACL;AAAA,kBACA,OAAO,EAAE,UAAU,KAAA;AAAA,kBACnB,QAAQ,CAAC,EAAE,MAAA,MACP;AAAA,oBAAC;AAAA,oBAAA;AAAA,sBACG,aAAY;AAAA,sBACZ,MAAK;AAAA,sBACL,cAAa;AAAA,sBACZ,GAAG;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBACR;AAAA,cAAA;AAAA,YAER;AAAA,UAAA;AAAA,UAEJ,qBAAC,OAAA,EAAI,WAAU,0BACX,UAAA;AAAA,YAAA,oBAAC,QAAA,EAAO,MAAK,UAAS,SAAS,mBAAmB,UAAA,UAElD;AAAA,gCACC,QAAA,EAAO,SAAQ,SAAQ,MAAK,UAAS,UAAA,SAAA,CAEtC;AAAA,UAAA,EAAA,CACJ;AAAA,QAAA,EAAA,CACJ,EAAA,CACJ;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGZ;"}
1
+ {"version":3,"file":"ChatHistoryRenameDialog.js","sources":["../../../../../../../lib/@ecme/views/concepts/ai/Chat/components/ChatHistoryRenameDialog.tsx"],"sourcesContent":["import { useEffect } from 'react'\nimport Dialog from '@/components/ui/Dialog'\nimport { Form, FormItem } from '@/components/ui/Form'\nimport Input from '@/components/ui/Input'\nimport Button from '@/components/ui/Button'\nimport { usGenerativeChatStore } from '../store/generativeChatStore'\nimport useChatConversations from '../hooks/useChatConversations'\nimport { useForm, Controller } from 'react-hook-form'\nimport { zodResolver } from '@hookform/resolvers/zod'\nimport { z } from 'zod'\nimport type { ZodType } from 'zod'\n\ntype FormSchema = {\n title: string\n}\n\nconst validationSchema: ZodType<FormSchema> = z.object({\n title: z.string().trim().min(1, 'Informe um título para a conversa.'),\n})\n\ntype ChatHistoryRenameDialogProps = {\n /** Classes do overlay (ex.: subir o z-index acima do widget flutuante). */\n overlayClassName?: string\n}\n\nconst ChatHistoryRenameDialog = ({\n overlayClassName,\n}: ChatHistoryRenameDialogProps) => {\n const { renameDialog, setRenameDialog } = usGenerativeChatStore()\n const { renomear } = useChatConversations()\n\n const {\n control,\n formState: { errors },\n handleSubmit,\n reset,\n } = useForm<FormSchema>({\n defaultValues: {\n title: renameDialog.title,\n },\n resolver: zodResolver(validationSchema),\n })\n\n useEffect(() => {\n if (renameDialog.open) {\n reset({\n title: renameDialog.title,\n })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [renameDialog.title, renameDialog.open])\n\n const handleDialogClose = () => {\n setRenameDialog({\n id: '',\n title: '',\n open: false,\n })\n }\n\n const onFormSubmit = async ({ title }: FormSchema) => {\n // Fecha antes da resposta: o rename é otimista e desfaz sozinho se o\n // backend recusar.\n const { id } = renameDialog\n handleDialogClose()\n await renomear(id, title.trim())\n }\n\n return (\n <Dialog\n isOpen={renameDialog.open}\n overlayClassName={overlayClassName}\n onClose={handleDialogClose}\n onRequestClose={handleDialogClose}\n >\n <h5>Rename chat</h5>\n <div className=\"mt-8\">\n <Form onSubmit={handleSubmit(onFormSubmit)}>\n <FormItem\n label=\"Chat title\"\n invalid={Boolean(errors.title)}\n errorMessage={errors.title?.message}\n >\n <Controller\n name=\"title\"\n control={control}\n rules={{ required: true }}\n render={({ field }) => (\n <Input\n placeholder=\"Rename chat\"\n type=\"text\"\n autoComplete=\"off\"\n {...field}\n />\n )}\n />\n </FormItem>\n <div className=\"flex justify-end gap-2\">\n <Button type=\"button\" onClick={handleDialogClose}>\n Cancel\n </Button>\n <Button variant=\"solid\" type=\"submit\">\n Rename\n </Button>\n </div>\n </Form>\n </div>\n </Dialog>\n )\n}\n\nexport default ChatHistoryRenameDialog\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAgBA,MAAM,mBAAwC,EAAE,OAAO;AAAA,EACnD,OAAO,EAAE,OAAA,EAAS,OAAO,IAAI,GAAG,oCAAoC;AACxE,CAAC;AAOD,MAAM,0BAA0B,CAAC;AAAA,EAC7B;AACJ,MAAoC;AAChC,QAAM,EAAE,cAAc,gBAAA,IAAoB,sBAAA;AAC1C,QAAM,EAAE,SAAA,IAAa,qBAAA;AAErB,QAAM;AAAA,IACF;AAAA,IACA,WAAW,EAAE,OAAA;AAAA,IACb;AAAA,IACA;AAAA,EAAA,IACA,QAAoB;AAAA,IACpB,eAAe;AAAA,MACX,OAAO,aAAa;AAAA,IAAA;AAAA,IAExB,UAAU,YAAY,gBAAgB;AAAA,EAAA,CACzC;AAED,YAAU,MAAM;AACZ,QAAI,aAAa,MAAM;AACnB,YAAM;AAAA,QACF,OAAO,aAAa;AAAA,MAAA,CACvB;AAAA,IACL;AAAA,EAEJ,GAAG,CAAC,aAAa,OAAO,aAAa,IAAI,CAAC;AAE1C,QAAM,oBAAoB,MAAM;AAC5B,oBAAgB;AAAA,MACZ,IAAI;AAAA,MACJ,OAAO;AAAA,MACP,MAAM;AAAA,IAAA,CACT;AAAA,EACL;AAEA,QAAM,eAAe,OAAO,EAAE,YAAwB;AAGlD,UAAM,EAAE,OAAO;AACf,sBAAA;AACA,UAAM,SAAS,IAAI,MAAM,KAAA,CAAM;AAAA,EACnC;AAEA,SACI;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,QAAQ,aAAa;AAAA,MACrB;AAAA,MACA,SAAS;AAAA,MACT,gBAAgB;AAAA,MAEhB,UAAA;AAAA,QAAA,oBAAC,QAAG,UAAA,cAAA,CAAW;AAAA,QACf,oBAAC,SAAI,WAAU,QACX,+BAAC,MAAA,EAAK,UAAU,aAAa,YAAY,GACrC,UAAA;AAAA,UAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACG,OAAM;AAAA,cACN,SAAS,QAAQ,OAAO,KAAK;AAAA,cAC7B,cAAc,OAAO,OAAO;AAAA,cAE5B,UAAA;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACG,MAAK;AAAA,kBACL;AAAA,kBACA,OAAO,EAAE,UAAU,KAAA;AAAA,kBACnB,QAAQ,CAAC,EAAE,MAAA,MACP;AAAA,oBAAC;AAAA,oBAAA;AAAA,sBACG,aAAY;AAAA,sBACZ,MAAK;AAAA,sBACL,cAAa;AAAA,sBACZ,GAAG;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBACR;AAAA,cAAA;AAAA,YAER;AAAA,UAAA;AAAA,UAEJ,qBAAC,OAAA,EAAI,WAAU,0BACX,UAAA;AAAA,YAAA,oBAAC,QAAA,EAAO,MAAK,UAAS,SAAS,mBAAmB,UAAA,UAElD;AAAA,gCACC,QAAA,EAAO,SAAQ,SAAQ,MAAK,UAAS,UAAA,SAAA,CAEtC;AAAA,UAAA,EAAA,CACJ;AAAA,QAAA,EAAA,CACJ,EAAA,CACJ;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGZ;"}
@@ -1,55 +1,56 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import useChatSend from "../hooks/useChatSend.js";
3
- import { PiCodeDuotone, PiBookOpenTextDuotone, PiCompassDuotone, PiLightbulbDuotone } from "react-icons/pi";
4
- const suggeustionIcon = {
5
- idea: /* @__PURE__ */ jsx(PiLightbulbDuotone, { className: "text-blue-500" }),
6
- guide: /* @__PURE__ */ jsx(PiCompassDuotone, { className: "text-emerald-500" }),
7
- writing: /* @__PURE__ */ jsx(PiBookOpenTextDuotone, { className: "text-amber-500" }),
8
- coding: /* @__PURE__ */ jsx(PiCodeDuotone, { className: "text-indigo-500" })
9
- };
3
+ import { iconeFerramenta } from "./toolPresentation.js";
10
4
  const promptSuggestion = [
11
5
  {
12
- title: "Help me sound like an expert for an upcoming trip",
13
- prompt: `I'm going whale watching this weekend and want to appear knowledgeable about killer whales. Tell me a few unique and interesting facts I can share.`,
14
- type: "guide"
6
+ title: "Buscar um usuário pelo ID",
7
+ prompt: "Quem é o usuário de um dado id?",
8
+ tool: "buscar_usuario",
9
+ cor: "text-blue-500"
15
10
  },
16
11
  {
17
- title: "Outline an logical sales pitch for a new product",
18
- prompt: `Structure a sales pitch for a hair dryer that's also a microphone. Be concise and organize the sales pitch logically. `,
19
- type: "writing"
12
+ title: "Consultar uma área pelo código",
13
+ prompt: "Me mostra a área de um dado id?",
14
+ tool: "buscar_area",
15
+ cor: "text-emerald-500"
20
16
  },
21
17
  {
22
- title: "Help me get organized with a list of 10 tips",
23
- prompt: `Give me 10 tips for room organization. `,
24
- type: "idea"
18
+ title: "Criar uma nova área",
19
+ prompt: "Quero criar uma área nova",
20
+ tool: "criar_area",
21
+ cor: "text-amber-500"
25
22
  },
26
23
  {
27
- title: "Write code for a specific task, including edge cases",
28
- prompt: `Write a Java function that takes a path as an input and creates a file storing the current system date. Consider edge cases.`,
29
- type: "coding"
24
+ title: "Criar um contrato de compra de grãos",
25
+ prompt: "Quero criar um contrato de compra de armazenagem de grãos",
26
+ tool: "criar_contrato_armazenagem_graos",
27
+ cor: "text-indigo-500"
30
28
  }
31
29
  ];
32
30
  const ChatLandingView = () => {
33
31
  const { handleSend } = useChatSend();
34
- return /* @__PURE__ */ jsx("div", { className: "max-w-[900px] w-full mx-auto mt-20", children: /* @__PURE__ */ jsxs("div", { children: [
35
- /* @__PURE__ */ jsxs("div", { className: "heading-text text-4xl leading-snug", children: [
36
- /* @__PURE__ */ jsx("span", { className: "font-semibold bg-gradient-to-r from-indigo-500 to-red-400 bg-clip-text text-transparent text-5xl", children: "Hello, there" }),
32
+ return /* @__PURE__ */ jsx("div", { className: "max-w-[900px] w-full mx-auto mt-6", children: /* @__PURE__ */ jsxs("div", { children: [
33
+ /* @__PURE__ */ jsxs("div", { className: "heading-text text-2xl leading-snug", children: [
34
+ /* @__PURE__ */ jsx("span", { className: "font-semibold bg-gradient-to-r from-indigo-500 to-red-400 bg-clip-text text-transparent text-3xl", children: "Olá!" }),
37
35
  /* @__PURE__ */ jsx("br", {}),
38
- /* @__PURE__ */ jsx("span", { children: "How can I help you today?" })
36
+ /* @__PURE__ */ jsx("span", { children: "Como posso te ajudar hoje?" })
39
37
  ] }),
40
- /* @__PURE__ */ jsx("div", { className: "mt-8 grid grid-cols-2 xl:grid-cols-4 gap-4", children: promptSuggestion.map((suggestion) => /* @__PURE__ */ jsxs(
41
- "div",
42
- {
43
- className: "flex flex-col gap-4 justify-between rounded-xl bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 p-5 min-h-40 2xl:min-h-60 cursor-pointer",
44
- role: "button",
45
- onClick: () => handleSend(suggestion.title),
46
- children: [
47
- /* @__PURE__ */ jsx("h6", { className: "font-normal", children: suggestion.title }),
48
- /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("div", { className: "bg-white dark:bg-gray-800 rounded-full p-2 inline-flex", children: /* @__PURE__ */ jsx("span", { className: "text-2xl", children: suggeustionIcon[suggestion.type] }) }) })
49
- ]
50
- },
51
- suggestion.title
52
- )) })
38
+ /* @__PURE__ */ jsx("div", { className: "mt-6 grid grid-cols-1 sm:grid-cols-2 gap-3", children: promptSuggestion.map((suggestion) => {
39
+ const Icone = iconeFerramenta(suggestion.tool);
40
+ return /* @__PURE__ */ jsxs(
41
+ "div",
42
+ {
43
+ className: "flex flex-col gap-3 justify-between rounded-xl bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 p-4 min-h-28 cursor-pointer",
44
+ role: "button",
45
+ onClick: () => handleSend(suggestion.prompt),
46
+ children: [
47
+ /* @__PURE__ */ jsx("h6", { className: "font-normal", children: suggestion.title }),
48
+ /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("div", { className: "bg-white dark:bg-gray-800 rounded-full p-2 inline-flex", children: /* @__PURE__ */ jsx("span", { className: "text-2xl", children: /* @__PURE__ */ jsx(Icone, { className: suggestion.cor }) }) }) })
49
+ ]
50
+ },
51
+ suggestion.title
52
+ );
53
+ }) })
53
54
  ] }) });
54
55
  };
55
56
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"ChatLandingView.js","sources":["../../../../../../../lib/@ecme/views/concepts/ai/Chat/components/ChatLandingView.tsx"],"sourcesContent":["import useChatSend from '../hooks/useChatSend'\nimport {\n PiLightbulbDuotone,\n PiBookOpenTextDuotone,\n PiCompassDuotone,\n PiCodeDuotone,\n} from 'react-icons/pi'\nimport type { ReactNode } from 'react'\n\ntype PromptType = 'idea' | 'guide' | 'writing' | 'coding'\n\nconst suggeustionIcon: Record<PromptType, ReactNode> = {\n idea: <PiLightbulbDuotone className=\"text-blue-500\" />,\n guide: <PiCompassDuotone className=\"text-emerald-500\" />,\n writing: <PiBookOpenTextDuotone className=\"text-amber-500\" />,\n coding: <PiCodeDuotone className=\"text-indigo-500\" />,\n}\n\nconst promptSuggestion: {\n title: string\n prompt: string\n type: PromptType\n}[] = [\n {\n title: 'Help me sound like an expert for an upcoming trip',\n prompt: `I'm going whale watching this weekend and want to appear knowledgeable about killer whales. Tell me a few unique and interesting facts I can share.`,\n type: 'guide',\n },\n {\n title: 'Outline an logical sales pitch for a new product',\n prompt: `Structure a sales pitch for a hair dryer that's also a microphone. Be concise and organize the sales pitch logically. `,\n type: 'writing',\n },\n {\n title: 'Help me get organized with a list of 10 tips',\n prompt: `Give me 10 tips for room organization. `,\n type: 'idea',\n },\n {\n title: 'Write code for a specific task, including edge cases',\n prompt: `Write a Java function that takes a path as an input and creates a file storing the current system date. Consider edge cases.`,\n type: 'coding',\n },\n]\n\nconst ChatLandingView = () => {\n const { handleSend } = useChatSend()\n\n return (\n <div className=\"max-w-[900px] w-full mx-auto mt-20\">\n <div>\n <div className=\"heading-text text-4xl leading-snug\">\n <span className=\"font-semibold bg-gradient-to-r from-indigo-500 to-red-400 bg-clip-text text-transparent text-5xl\">\n Hello, there\n </span>\n <br />\n <span>How can I help you today?</span>\n </div>\n <div className=\"mt-8 grid grid-cols-2 xl:grid-cols-4 gap-4\">\n {promptSuggestion.map((suggestion) => (\n <div\n key={suggestion.title}\n className=\"flex flex-col gap-4 justify-between rounded-xl bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 p-5 min-h-40 2xl:min-h-60 cursor-pointer\"\n role=\"button\"\n onClick={() => handleSend(suggestion.title)}\n >\n <h6 className=\"font-normal\">{suggestion.title}</h6>\n <div>\n <div className=\"bg-white dark:bg-gray-800 rounded-full p-2 inline-flex\">\n <span className=\"text-2xl\">\n {suggeustionIcon[suggestion.type]}\n </span>\n </div>\n </div>\n </div>\n ))}\n </div>\n </div>\n </div>\n )\n}\n\nexport default ChatLandingView\n"],"names":[],"mappings":";;;AAWA,MAAM,kBAAiD;AAAA,EACnD,MAAM,oBAAC,oBAAA,EAAmB,WAAU,gBAAA,CAAgB;AAAA,EACpD,OAAO,oBAAC,kBAAA,EAAiB,WAAU,mBAAA,CAAmB;AAAA,EACtD,SAAS,oBAAC,uBAAA,EAAsB,WAAU,iBAAA,CAAiB;AAAA,EAC3D,QAAQ,oBAAC,eAAA,EAAc,WAAU,kBAAA,CAAkB;AACvD;AAEA,MAAM,mBAIA;AAAA,EACF;AAAA,IACI,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,EAAA;AAAA,EAEV;AAAA,IACI,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,EAAA;AAAA,EAEV;AAAA,IACI,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,EAAA;AAAA,EAEV;AAAA,IACI,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,EAAA;AAEd;AAEA,MAAM,kBAAkB,MAAM;AAC1B,QAAM,EAAE,WAAA,IAAe,YAAA;AAEvB,SACI,oBAAC,OAAA,EAAI,WAAU,sCACX,+BAAC,OAAA,EACG,UAAA;AAAA,IAAA,qBAAC,OAAA,EAAI,WAAU,sCACX,UAAA;AAAA,MAAA,oBAAC,QAAA,EAAK,WAAU,oGAAmG,UAAA,gBAEnH;AAAA,0BACC,MAAA,EAAG;AAAA,MACJ,oBAAC,UAAK,UAAA,4BAAA,CAAyB;AAAA,IAAA,GACnC;AAAA,wBACC,OAAA,EAAI,WAAU,8CACV,UAAA,iBAAiB,IAAI,CAAC,eACnB;AAAA,MAAC;AAAA,MAAA;AAAA,QAEG,WAAU;AAAA,QACV,MAAK;AAAA,QACL,SAAS,MAAM,WAAW,WAAW,KAAK;AAAA,QAE1C,UAAA;AAAA,UAAA,oBAAC,MAAA,EAAG,WAAU,eAAe,UAAA,WAAW,OAAM;AAAA,UAC9C,oBAAC,OAAA,EACG,UAAA,oBAAC,OAAA,EAAI,WAAU,0DACX,UAAA,oBAAC,QAAA,EAAK,WAAU,YACX,UAAA,gBAAgB,WAAW,IAAI,GACpC,GACJ,EAAA,CACJ;AAAA,QAAA;AAAA,MAAA;AAAA,MAZK,WAAW;AAAA,IAAA,CAcvB,EAAA,CACL;AAAA,EAAA,EAAA,CACJ,EAAA,CACJ;AAER;"}
1
+ {"version":3,"file":"ChatLandingView.js","sources":["../../../../../../../lib/@ecme/views/concepts/ai/Chat/components/ChatLandingView.tsx"],"sourcesContent":["import useChatSend from '../hooks/useChatSend'\nimport { iconeFerramenta } from './toolPresentation'\n\n/**\n * O que o agente sabe fazer, em quatro exemplos que executam de verdade.\n *\n * `title` e o rotulo curto do card; `prompt` e a frase enviada ao agente.\n * `tool` nomeia a ferramenta que o exemplo exercita e de onde sai o icone —\n * o MESMO que aparecera no chip quando ela rodar, entao o card e a execucao\n * falam a mesma lingua e ha um registro so (ver toolPresentation.ts).\n *\n * Os dois exemplos de criacao mandam a intencao SEM os dados de proposito: o\n * agente pede os campos que faltam por formulario e so entao abre a tela de\n * aprovacao — o fluxo humano inteiro em um clique. Nada e gravado sem confirmar.\n */\nconst promptSuggestion: {\n title: string\n prompt: string\n tool: string\n cor: string\n}[] = [\n {\n title: 'Buscar um usuário pelo ID',\n prompt: 'Quem é o usuário de um dado id?',\n tool: 'buscar_usuario',\n cor: 'text-blue-500',\n },\n {\n title: 'Consultar uma área pelo código',\n prompt: 'Me mostra a área de um dado id?',\n tool: 'buscar_area',\n cor: 'text-emerald-500',\n },\n {\n title: 'Criar uma nova área',\n prompt: 'Quero criar uma área nova',\n tool: 'criar_area',\n cor: 'text-amber-500',\n },\n {\n title: 'Criar um contrato de compra de grãos',\n prompt: 'Quero criar um contrato de compra de armazenagem de grãos',\n tool: 'criar_contrato_armazenagem_graos',\n cor: 'text-indigo-500',\n },\n]\n\nconst ChatLandingView = () => {\n const { handleSend } = useChatSend()\n\n return (\n <div className=\"max-w-[900px] w-full mx-auto mt-6\">\n <div>\n <div className=\"heading-text text-2xl leading-snug\">\n <span className=\"font-semibold bg-gradient-to-r from-indigo-500 to-red-400 bg-clip-text text-transparent text-3xl\">\n Olá!\n </span>\n <br />\n <span>Como posso te ajudar hoje?</span>\n </div>\n <div className=\"mt-6 grid grid-cols-1 sm:grid-cols-2 gap-3\">\n {promptSuggestion.map((suggestion) => {\n const Icone = iconeFerramenta(suggestion.tool)\n\n return (\n <div\n key={suggestion.title}\n className=\"flex flex-col gap-3 justify-between rounded-xl bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 p-4 min-h-28 cursor-pointer\"\n role=\"button\"\n onClick={() => handleSend(suggestion.prompt)}\n >\n <h6 className=\"font-normal\">\n {suggestion.title}\n </h6>\n <div>\n <div className=\"bg-white dark:bg-gray-800 rounded-full p-2 inline-flex\">\n <span className=\"text-2xl\">\n <Icone className={suggestion.cor} />\n </span>\n </div>\n </div>\n </div>\n )\n })}\n </div>\n </div>\n </div>\n )\n}\n\nexport default ChatLandingView\n"],"names":[],"mappings":";;;AAeA,MAAM,mBAKA;AAAA,EACF;AAAA,IACI,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,KAAK;AAAA,EAAA;AAAA,EAET;AAAA,IACI,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,KAAK;AAAA,EAAA;AAAA,EAET;AAAA,IACI,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,KAAK;AAAA,EAAA;AAAA,EAET;AAAA,IACI,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,KAAK;AAAA,EAAA;AAEb;AAEA,MAAM,kBAAkB,MAAM;AAC1B,QAAM,EAAE,WAAA,IAAe,YAAA;AAEvB,SACI,oBAAC,OAAA,EAAI,WAAU,qCACX,+BAAC,OAAA,EACG,UAAA;AAAA,IAAA,qBAAC,OAAA,EAAI,WAAU,sCACX,UAAA;AAAA,MAAA,oBAAC,QAAA,EAAK,WAAU,oGAAmG,UAAA,QAEnH;AAAA,0BACC,MAAA,EAAG;AAAA,MACJ,oBAAC,UAAK,UAAA,6BAAA,CAA0B;AAAA,IAAA,GACpC;AAAA,wBACC,OAAA,EAAI,WAAU,8CACV,UAAA,iBAAiB,IAAI,CAAC,eAAe;AAClC,YAAM,QAAQ,gBAAgB,WAAW,IAAI;AAE7C,aACI;AAAA,QAAC;AAAA,QAAA;AAAA,UAEG,WAAU;AAAA,UACV,MAAK;AAAA,UACL,SAAS,MAAM,WAAW,WAAW,MAAM;AAAA,UAE3C,UAAA;AAAA,YAAA,oBAAC,MAAA,EAAG,WAAU,eACT,UAAA,WAAW,OAChB;AAAA,gCACC,OAAA,EACG,UAAA,oBAAC,OAAA,EAAI,WAAU,0DACX,UAAA,oBAAC,QAAA,EAAK,WAAU,YACZ,8BAAC,OAAA,EAAM,WAAW,WAAW,IAAA,CAAK,EAAA,CACtC,GACJ,EAAA,CACJ;AAAA,UAAA;AAAA,QAAA;AAAA,QAdK,WAAW;AAAA,MAAA;AAAA,IAiB5B,CAAC,EAAA,CACL;AAAA,EAAA,EAAA,CACJ,EAAA,CACJ;AAER;"}
@@ -6,14 +6,22 @@ import ChatLandingView from "./ChatLandingView.js";
6
6
  import ChatMobileNav from "./ChatMobileNav.js";
7
7
  import ChatCustomContent from "./ChatCustomContent.js";
8
8
  import ChatCustomAction from "./ChatCustomAction.js";
9
+ import AiThinkingIndicator from "./AiThinkingIndicator.js";
10
+ import AiErrorMessage from "./AiErrorMessage.js";
11
+ import ToolCallChip from "./ToolCallChip.js";
12
+ import ApprovalCard from "./ApprovalCard.js";
13
+ import DataRequestCard from "./DataRequestCard.js";
9
14
  import { usGenerativeChatStore } from "../store/generativeChatStore.js";
10
15
  import useChatSend from "../hooks/useChatSend.js";
16
+ import useConversationMessages from "../hooks/useConversationMessages.js";
11
17
  import Card from "../../../../../components/ui/Card/Card.js";
12
18
  import ChatBox from "../../../../../components/view/ChatBox/ChatBox.js";
13
- const ChatView = () => {
19
+ const BALAO_AGENTE = "prose rounded-xl bg-gray-100 px-5 py-2.5 text-sm text-gray-900 dark:bg-gray-700 dark:text-gray-100";
20
+ const ChatView = ({ showMobileNav = true }) => {
14
21
  const scrollRef = useRef(null);
15
22
  const { selectedConversation, chatHistory, isTyping, disabledChatFresh } = usGenerativeChatStore();
16
- const { handleSend } = useChatSend();
23
+ const { handleSend, handleApproval, handleDataSubmit } = useChatSend();
24
+ const { carregando } = useConversationMessages();
17
25
  const scrollToBottom = () => {
18
26
  if (scrollRef.current?.getScrollElement) {
19
27
  const scrollElement = scrollRef.current.getScrollElement();
@@ -41,38 +49,74 @@ const ChatView = () => {
41
49
  scrollToBottom();
42
50
  };
43
51
  return /* @__PURE__ */ jsxs(Card, { className: "flex-1 h-full", bodyClass: "h-full", children: [
44
- /* @__PURE__ */ jsx(ChatMobileNav, {}),
52
+ showMobileNav && /* @__PURE__ */ jsx(ChatMobileNav, {}),
45
53
  /* @__PURE__ */ jsx(
46
54
  ChatBox,
47
55
  {
48
56
  ref: scrollRef,
49
57
  messageList,
50
- placeholder: "Enter a prompt here",
58
+ placeholder: "Pergunte algo sobre o Orbe Agro…",
51
59
  showMessageList: Boolean(selectedConversation),
52
- showAvatar: true,
53
- avatarGap: true,
54
- containerClass: "h-[calc(100%-30px)] xl:h-full",
55
- messageListClass: "h-[calc(100%-100px)] xl:h-[calc(100%-70px)]",
56
- typing: isTyping ? {
60
+ showAvatar: false,
61
+ avatarGap: false,
62
+ myBubbleClass: "bg-primary text-white",
63
+ botBubbleClass: "bg-transparent dark:bg-transparent p-0 rounded-none",
64
+ errorBubbleClass: "bg-red-50 dark:bg-red-500/10 border border-red-200 dark:border-red-500/20",
65
+ renderTyping: () => /* @__PURE__ */ jsx("div", { className: BALAO_AGENTE, children: /* @__PURE__ */ jsx(AiThinkingIndicator, {}) }),
66
+ containerClass: showMobileNav ? "h-[calc(100%-30px)] xl:h-full" : "h-full",
67
+ messageListClass: "h-[calc(100%-124px)] xl:h-[calc(100%-94px)]",
68
+ typing: isTyping || carregando ? {
57
69
  id: "ai",
58
70
  name: "Chat AI",
59
71
  avatarImageUrl: "/img/thumbs/ai.jpg"
60
72
  } : false,
61
73
  customRenderer: (message) => {
74
+ if (message.isError) {
75
+ return /* @__PURE__ */ jsx(AiErrorMessage, {});
76
+ }
62
77
  if (message.sender.id === "ai") {
63
- return /* @__PURE__ */ jsx(
64
- ChatCustomContent,
65
- {
66
- content: message.content,
67
- triggerTyping: message.fresh ? message.fresh : false,
68
- onFinish: () => handleFinish(message.id)
69
- }
78
+ const { tools, pendingApproval, pendingInput } = message;
79
+ const temTexto = Boolean(
80
+ message.content?.trim()
70
81
  );
82
+ return /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-start gap-1.5", children: [
83
+ tools?.map((tool) => /* @__PURE__ */ jsx(ToolCallChip, { tool }, tool.id)),
84
+ temTexto && /* @__PURE__ */ jsx("div", { className: BALAO_AGENTE, children: /* @__PURE__ */ jsx(
85
+ ChatCustomContent,
86
+ {
87
+ content: message.content,
88
+ triggerTyping: message.fresh ? message.fresh : false,
89
+ onFinish: () => handleFinish(message.id)
90
+ }
91
+ ) }),
92
+ pendingInput && /* @__PURE__ */ jsx(
93
+ DataRequestCard,
94
+ {
95
+ input: pendingInput,
96
+ onSubmit: (dados) => handleDataSubmit(
97
+ selectedConversation,
98
+ message.id,
99
+ dados
100
+ )
101
+ }
102
+ ),
103
+ pendingApproval && /* @__PURE__ */ jsx(
104
+ ApprovalCard,
105
+ {
106
+ approval: pendingApproval,
107
+ onDecide: (aprovado) => handleApproval(
108
+ selectedConversation,
109
+ message.id,
110
+ aprovado
111
+ )
112
+ }
113
+ )
114
+ ] });
71
115
  }
72
116
  return message.content;
73
117
  },
74
118
  customAction: (message) => {
75
- if (message.sender.id === "ai") {
119
+ if (message.sender.id === "ai" && !message.isError) {
76
120
  return /* @__PURE__ */ jsx(
77
121
  ChatCustomAction,
78
122
  {
@@ -83,7 +127,7 @@ const ChatView = () => {
83
127
  return null;
84
128
  },
85
129
  onInputChange: handleInputChange,
86
- children: !selectedConversation && /* @__PURE__ */ jsx(ChatLandingView, {})
130
+ children: selectedConversation ? /* @__PURE__ */ jsx("p", { className: "py-1 text-center text-xs text-gray-500 dark:text-gray-400", children: "Orbe-AI é uma inteligência artificial e pode cometer erros." }) : /* @__PURE__ */ jsx("div", { className: "flex-1 min-h-0 overflow-y-auto", children: /* @__PURE__ */ jsx(ChatLandingView, {}) })
87
131
  }
88
132
  )
89
133
  ] });