rasa-pro 3.12.22__py3-none-any.whl → 3.13.0__py3-none-any.whl

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.

Potentially problematic release.


This version of rasa-pro might be problematic. Click here for more details.

Files changed (354) hide show
  1. rasa/__main__.py +3 -4
  2. rasa/api.py +1 -1
  3. rasa/cli/dialogue_understanding_test.py +1 -1
  4. rasa/cli/e2e_test.py +1 -8
  5. rasa/cli/evaluate.py +2 -2
  6. rasa/cli/export.py +5 -3
  7. rasa/cli/inspect.py +7 -0
  8. rasa/cli/llm_fine_tuning.py +1 -1
  9. rasa/cli/project_templates/default/config.yml +5 -32
  10. rasa/cli/project_templates/{calm → default}/e2e_tests/cancelations/user_cancels_during_a_correction.yml +1 -1
  11. rasa/cli/project_templates/{calm → default}/e2e_tests/cancelations/user_changes_mind_on_a_whim.yml +1 -1
  12. rasa/cli/project_templates/{calm → default}/e2e_tests/corrections/user_corrects_contact_handle.yml +1 -1
  13. rasa/cli/project_templates/{calm → default}/e2e_tests/corrections/user_corrects_contact_name.yml +1 -1
  14. rasa/cli/project_templates/{calm → default}/e2e_tests/happy_paths/user_adds_contact_to_their_list.yml +1 -1
  15. rasa/cli/project_templates/{calm → default}/e2e_tests/happy_paths/user_lists_contacts.yml +1 -1
  16. rasa/cli/project_templates/{calm → default}/e2e_tests/happy_paths/user_removes_contact.yml +1 -1
  17. rasa/cli/project_templates/{calm → default}/e2e_tests/happy_paths/user_removes_contact_from_list.yml +1 -1
  18. rasa/cli/project_templates/default/endpoints.yml +18 -2
  19. rasa/cli/project_templates/defaults.py +133 -0
  20. rasa/cli/project_templates/tutorial/config.yml +1 -1
  21. rasa/cli/project_templates/tutorial/endpoints.yml +1 -1
  22. rasa/cli/run.py +1 -1
  23. rasa/cli/scaffold.py +2 -3
  24. rasa/cli/shell.py +6 -1
  25. rasa/cli/studio/download.py +0 -22
  26. rasa/cli/studio/link.py +36 -0
  27. rasa/cli/studio/pull.py +79 -0
  28. rasa/cli/studio/push.py +78 -0
  29. rasa/cli/studio/studio.py +12 -0
  30. rasa/cli/studio/train.py +1 -5
  31. rasa/cli/studio/upload.py +6 -4
  32. rasa/cli/train.py +5 -1
  33. rasa/cli/utils.py +1 -1
  34. rasa/cli/x.py +1 -1
  35. rasa/constants.py +2 -0
  36. rasa/core/__init__.py +0 -16
  37. rasa/core/actions/action.py +43 -29
  38. rasa/core/actions/action_repeat_bot_messages.py +18 -22
  39. rasa/core/actions/action_run_slot_rejections.py +1 -2
  40. rasa/core/agent.py +24 -3
  41. rasa/core/available_endpoints.py +146 -0
  42. rasa/core/brokers/kafka.py +4 -0
  43. rasa/core/brokers/pika.py +5 -2
  44. rasa/core/brokers/sql.py +1 -1
  45. rasa/core/channels/__init__.py +3 -0
  46. rasa/core/channels/botframework.py +2 -2
  47. rasa/core/channels/channel.py +2 -2
  48. rasa/core/channels/development_inspector.py +1 -1
  49. rasa/core/channels/facebook.py +1 -4
  50. rasa/core/channels/hangouts.py +8 -5
  51. rasa/core/channels/inspector/.eslintrc.cjs +12 -6
  52. rasa/core/channels/inspector/.prettierrc +5 -0
  53. rasa/core/channels/inspector/README.md +11 -5
  54. rasa/core/channels/inspector/dist/assets/{arc-9f75cc3b.js → arc-371401b1.js} +1 -1
  55. rasa/core/channels/inspector/dist/assets/{blockDiagram-38ab4fdb-7f34db23.js → blockDiagram-38ab4fdb-3f126156.js} +1 -1
  56. rasa/core/channels/inspector/dist/assets/{c4Diagram-3d4e48cf-948bab2c.js → c4Diagram-3d4e48cf-12f22eb7.js} +1 -1
  57. rasa/core/channels/inspector/dist/assets/channel-f1efda17.js +1 -0
  58. rasa/core/channels/inspector/dist/assets/{classDiagram-70f12bd4-53b0dd0e.js → classDiagram-70f12bd4-03b1d386.js} +1 -1
  59. rasa/core/channels/inspector/dist/assets/{classDiagram-v2-f2320105-fdf789e7.js → classDiagram-v2-f2320105-84f69d63.js} +1 -1
  60. rasa/core/channels/inspector/dist/assets/clone-fdf164e2.js +1 -0
  61. rasa/core/channels/inspector/dist/assets/{createText-2e5e7dd3-87c4ece5.js → createText-2e5e7dd3-ca47fd38.js} +1 -1
  62. rasa/core/channels/inspector/dist/assets/{edges-e0da2a9e-5a8b0749.js → edges-e0da2a9e-f837ca8a.js} +1 -1
  63. rasa/core/channels/inspector/dist/assets/{erDiagram-9861fffd-66da90e2.js → erDiagram-9861fffd-8717ac54.js} +1 -1
  64. rasa/core/channels/inspector/dist/assets/{flowDb-956e92f1-10044f05.js → flowDb-956e92f1-94f38b83.js} +1 -1
  65. rasa/core/channels/inspector/dist/assets/{flowDiagram-66a62f08-f338f66a.js → flowDiagram-66a62f08-b616f9fb.js} +1 -1
  66. rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-7d7a1629.js +1 -0
  67. rasa/core/channels/inspector/dist/assets/{flowchart-elk-definition-4a651766-b13140aa.js → flowchart-elk-definition-4a651766-f5d24bb8.js} +1 -1
  68. rasa/core/channels/inspector/dist/assets/{ganttDiagram-c361ad54-f2b4a55a.js → ganttDiagram-c361ad54-b43ba8d9.js} +1 -1
  69. rasa/core/channels/inspector/dist/assets/{gitGraphDiagram-72cf32ee-dedc298d.js → gitGraphDiagram-72cf32ee-c3aafaa5.js} +1 -1
  70. rasa/core/channels/inspector/dist/assets/{graph-4ede11ff.js → graph-0d0a2c10.js} +1 -1
  71. rasa/core/channels/inspector/dist/assets/{index-3862675e-65549d37.js → index-3862675e-58ea0305.js} +1 -1
  72. rasa/core/channels/inspector/dist/assets/{index-3a23e736.js → index-cce6f8a1.js} +123 -123
  73. rasa/core/channels/inspector/dist/assets/{infoDiagram-f8f76790-65439671.js → infoDiagram-f8f76790-b8f60461.js} +1 -1
  74. rasa/core/channels/inspector/dist/assets/{journeyDiagram-49397b02-56d03d98.js → journeyDiagram-49397b02-95be5545.js} +1 -1
  75. rasa/core/channels/inspector/dist/assets/{layout-dd48f7f4.js → layout-da885b9b.js} +1 -1
  76. rasa/core/channels/inspector/dist/assets/{line-1569ad2c.js → line-f1c817d3.js} +1 -1
  77. rasa/core/channels/inspector/dist/assets/{linear-48bf4935.js → linear-d42801e6.js} +1 -1
  78. rasa/core/channels/inspector/dist/assets/{mindmap-definition-fc14e90a-688504c1.js → mindmap-definition-fc14e90a-a38923a6.js} +1 -1
  79. rasa/core/channels/inspector/dist/assets/{pieDiagram-8a3498a8-78b6d7e6.js → pieDiagram-8a3498a8-ca6e71e9.js} +1 -1
  80. rasa/core/channels/inspector/dist/assets/{quadrantDiagram-120e2f19-048b84b3.js → quadrantDiagram-120e2f19-b290dae9.js} +1 -1
  81. rasa/core/channels/inspector/dist/assets/{requirementDiagram-deff3bca-dd67f107.js → requirementDiagram-deff3bca-03f02ceb.js} +1 -1
  82. rasa/core/channels/inspector/dist/assets/{sankeyDiagram-04a897e0-8128436e.js → sankeyDiagram-04a897e0-c49eee40.js} +1 -1
  83. rasa/core/channels/inspector/dist/assets/{sequenceDiagram-704730f1-1a0d1461.js → sequenceDiagram-704730f1-b2cd6a3d.js} +1 -1
  84. rasa/core/channels/inspector/dist/assets/{stateDiagram-587899a1-46d388ed.js → stateDiagram-587899a1-e53a2028.js} +1 -1
  85. rasa/core/channels/inspector/dist/assets/{stateDiagram-v2-d93cdb3a-ea42951a.js → stateDiagram-v2-d93cdb3a-e1982a03.js} +1 -1
  86. rasa/core/channels/inspector/dist/assets/{styles-6aaf32cf-7427ed0c.js → styles-6aaf32cf-d0226ca5.js} +1 -1
  87. rasa/core/channels/inspector/dist/assets/{styles-9a916d00-ff5e5a16.js → styles-9a916d00-0e21dc00.js} +1 -1
  88. rasa/core/channels/inspector/dist/assets/{styles-c10674c1-7b3680cf.js → styles-c10674c1-9588494e.js} +1 -1
  89. rasa/core/channels/inspector/dist/assets/{svgDrawCommon-08f97a94-f860f2ad.js → svgDrawCommon-08f97a94-be478d4f.js} +1 -1
  90. rasa/core/channels/inspector/dist/assets/{timeline-definition-85554ec2-2eebf0c8.js → timeline-definition-85554ec2-74631749.js} +1 -1
  91. rasa/core/channels/inspector/dist/assets/{xychartDiagram-e933f94c-5d7f4e96.js → xychartDiagram-e933f94c-a043552f.js} +1 -1
  92. rasa/core/channels/inspector/dist/index.html +1 -1
  93. rasa/core/channels/inspector/package.json +3 -1
  94. rasa/core/channels/inspector/src/App.tsx +91 -90
  95. rasa/core/channels/inspector/src/components/Chat.tsx +45 -41
  96. rasa/core/channels/inspector/src/components/DiagramFlow.tsx +40 -40
  97. rasa/core/channels/inspector/src/components/DialogueInformation.tsx +57 -57
  98. rasa/core/channels/inspector/src/components/DialogueStack.tsx +36 -27
  99. rasa/core/channels/inspector/src/components/ExpandIcon.tsx +4 -4
  100. rasa/core/channels/inspector/src/components/FullscreenButton.tsx +7 -7
  101. rasa/core/channels/inspector/src/components/LoadingSpinner.tsx +28 -12
  102. rasa/core/channels/inspector/src/components/NoActiveFlow.tsx +9 -9
  103. rasa/core/channels/inspector/src/components/RasaLogo.tsx +5 -5
  104. rasa/core/channels/inspector/src/components/RecruitmentPanel.tsx +55 -60
  105. rasa/core/channels/inspector/src/components/SaraDiagrams.tsx +5 -5
  106. rasa/core/channels/inspector/src/components/Slots.tsx +22 -22
  107. rasa/core/channels/inspector/src/components/Welcome.tsx +28 -31
  108. rasa/core/channels/inspector/src/helpers/audio/audiostream.ts +245 -0
  109. rasa/core/channels/inspector/src/helpers/audio/microphone-processor.js +12 -0
  110. rasa/core/channels/inspector/src/helpers/audio/playback-processor.js +36 -0
  111. rasa/core/channels/inspector/src/helpers/conversation.ts +7 -7
  112. rasa/core/channels/inspector/src/helpers/formatters.test.ts +181 -181
  113. rasa/core/channels/inspector/src/helpers/formatters.ts +111 -111
  114. rasa/core/channels/inspector/src/helpers/utils.ts +78 -61
  115. rasa/core/channels/inspector/src/main.tsx +8 -8
  116. rasa/core/channels/inspector/src/theme/Button/Button.ts +8 -8
  117. rasa/core/channels/inspector/src/theme/Heading/Heading.ts +7 -7
  118. rasa/core/channels/inspector/src/theme/Input/Input.ts +9 -9
  119. rasa/core/channels/inspector/src/theme/Link/Link.ts +6 -6
  120. rasa/core/channels/inspector/src/theme/Modal/Modal.ts +13 -13
  121. rasa/core/channels/inspector/src/theme/Table/Table.tsx +10 -10
  122. rasa/core/channels/inspector/src/theme/Tooltip/Tooltip.ts +5 -5
  123. rasa/core/channels/inspector/src/theme/base/breakpoints.ts +7 -7
  124. rasa/core/channels/inspector/src/theme/base/colors.ts +64 -64
  125. rasa/core/channels/inspector/src/theme/base/fonts/fontFaces.css +21 -18
  126. rasa/core/channels/inspector/src/theme/base/radii.ts +8 -8
  127. rasa/core/channels/inspector/src/theme/base/shadows.ts +5 -5
  128. rasa/core/channels/inspector/src/theme/base/sizes.ts +5 -5
  129. rasa/core/channels/inspector/src/theme/base/space.ts +12 -12
  130. rasa/core/channels/inspector/src/theme/base/styles.ts +5 -5
  131. rasa/core/channels/inspector/src/theme/base/typography.ts +12 -12
  132. rasa/core/channels/inspector/src/theme/base/zIndices.ts +3 -3
  133. rasa/core/channels/inspector/src/theme/index.ts +38 -38
  134. rasa/core/channels/inspector/src/types.ts +56 -50
  135. rasa/core/channels/inspector/yarn.lock +5 -0
  136. rasa/core/channels/mattermost.py +1 -1
  137. rasa/core/channels/rasa_chat.py +2 -4
  138. rasa/core/channels/rest.py +5 -4
  139. rasa/core/channels/socketio.py +56 -41
  140. rasa/core/channels/studio_chat.py +329 -68
  141. rasa/core/channels/vier_cvg.py +1 -2
  142. rasa/core/channels/voice_ready/audiocodes.py +4 -11
  143. rasa/core/channels/voice_ready/jambonz.py +5 -6
  144. rasa/core/channels/voice_ready/twilio_voice.py +13 -12
  145. rasa/core/channels/voice_ready/utils.py +22 -0
  146. rasa/core/channels/voice_stream/audiocodes.py +13 -16
  147. rasa/core/channels/voice_stream/browser_audio.py +1 -1
  148. rasa/core/channels/voice_stream/genesys.py +37 -18
  149. rasa/core/channels/voice_stream/jambonz.py +232 -0
  150. rasa/core/channels/voice_stream/tts/__init__.py +8 -0
  151. rasa/core/channels/voice_stream/twilio_media_streams.py +15 -12
  152. rasa/core/channels/voice_stream/voice_channel.py +71 -27
  153. rasa/core/concurrent_lock_store.py +24 -10
  154. rasa/core/evaluation/marker_tracker_loader.py +1 -1
  155. rasa/core/exporter.py +37 -1
  156. rasa/core/http_interpreter.py +3 -7
  157. rasa/core/information_retrieval/faiss.py +18 -11
  158. rasa/core/information_retrieval/ingestion/faq_parser.py +158 -0
  159. rasa/core/jobs.py +2 -1
  160. rasa/core/lock_store.py +151 -60
  161. rasa/core/nlg/contextual_response_rephraser.py +17 -7
  162. rasa/core/nlg/generator.py +5 -22
  163. rasa/core/nlg/interpolator.py +2 -3
  164. rasa/core/nlg/response.py +6 -43
  165. rasa/core/nlg/summarize.py +1 -1
  166. rasa/core/nlg/translate.py +0 -8
  167. rasa/core/policies/enterprise_search_policy.py +305 -189
  168. rasa/core/policies/enterprise_search_policy_config.py +241 -0
  169. rasa/core/policies/enterprise_search_prompt_with_relevancy_check_and_citation_template.jinja2 +67 -0
  170. rasa/core/policies/flow_policy.py +1 -1
  171. rasa/core/policies/flows/flow_executor.py +102 -17
  172. rasa/core/policies/intentless_policy.py +56 -17
  173. rasa/core/processor.py +70 -49
  174. rasa/core/run.py +33 -11
  175. rasa/core/tracker_stores/__init__.py +0 -0
  176. rasa/core/{auth_retry_tracker_store.py → tracker_stores/auth_retry_tracker_store.py} +66 -1
  177. rasa/core/tracker_stores/dynamo_tracker_store.py +256 -0
  178. rasa/core/tracker_stores/mongo_tracker_store.py +223 -0
  179. rasa/core/tracker_stores/redis_tracker_store.py +252 -0
  180. rasa/core/tracker_stores/sql_tracker_store.py +582 -0
  181. rasa/core/tracker_stores/tracker_store.py +839 -0
  182. rasa/core/training/interactive.py +1 -1
  183. rasa/core/utils.py +24 -95
  184. rasa/dialogue_understanding/coexistence/intent_based_router.py +2 -1
  185. rasa/dialogue_understanding/coexistence/llm_based_router.py +13 -11
  186. rasa/dialogue_understanding/commands/can_not_handle_command.py +2 -0
  187. rasa/dialogue_understanding/commands/cancel_flow_command.py +3 -1
  188. rasa/dialogue_understanding/commands/chit_chat_answer_command.py +2 -0
  189. rasa/dialogue_understanding/commands/clarify_command.py +6 -2
  190. rasa/dialogue_understanding/commands/command_syntax_manager.py +1 -0
  191. rasa/dialogue_understanding/commands/correct_slots_command.py +5 -6
  192. rasa/dialogue_understanding/commands/error_command.py +1 -1
  193. rasa/dialogue_understanding/commands/human_handoff_command.py +3 -3
  194. rasa/dialogue_understanding/commands/knowledge_answer_command.py +2 -0
  195. rasa/dialogue_understanding/commands/repeat_bot_messages_command.py +2 -0
  196. rasa/dialogue_understanding/commands/set_slot_command.py +8 -4
  197. rasa/dialogue_understanding/commands/skip_question_command.py +3 -3
  198. rasa/dialogue_understanding/commands/start_flow_command.py +7 -3
  199. rasa/dialogue_understanding/generator/__init__.py +7 -1
  200. rasa/dialogue_understanding/generator/command_generator.py +4 -2
  201. rasa/dialogue_understanding/generator/command_parser.py +2 -2
  202. rasa/dialogue_understanding/generator/command_parser_validator.py +63 -0
  203. rasa/dialogue_understanding/generator/llm_based_command_generator.py +1 -2
  204. rasa/dialogue_understanding/generator/multi_step/multi_step_llm_command_generator.py +3 -2
  205. rasa/dialogue_understanding/generator/nlu_command_adapter.py +2 -2
  206. rasa/dialogue_understanding/generator/prompt_templates/command_prompt_template.jinja2 +0 -2
  207. rasa/dialogue_understanding/generator/prompt_templates/command_prompt_v2_claude_3_5_sonnet_20240620_template.jinja2 +1 -0
  208. rasa/dialogue_understanding/generator/prompt_templates/command_prompt_v2_gpt_4o_2024_11_20_template.jinja2 +1 -0
  209. rasa/dialogue_understanding/generator/prompt_templates/command_prompt_v3_claude_3_5_sonnet_20240620_template.jinja2 +79 -0
  210. rasa/dialogue_understanding/generator/prompt_templates/command_prompt_v3_gpt_4o_2024_11_20_template.jinja2 +79 -0
  211. rasa/dialogue_understanding/generator/single_step/compact_llm_command_generator.py +26 -461
  212. rasa/dialogue_understanding/generator/single_step/search_ready_llm_command_generator.py +147 -0
  213. rasa/dialogue_understanding/generator/single_step/single_step_based_llm_command_generator.py +461 -0
  214. rasa/dialogue_understanding/generator/single_step/single_step_llm_command_generator.py +20 -64
  215. rasa/dialogue_understanding/patterns/cancel.py +1 -2
  216. rasa/dialogue_understanding/patterns/clarify.py +1 -1
  217. rasa/dialogue_understanding/patterns/correction.py +2 -2
  218. rasa/dialogue_understanding/patterns/default_flows_for_patterns.yml +42 -27
  219. rasa/dialogue_understanding/patterns/domain_for_patterns.py +190 -0
  220. rasa/dialogue_understanding/processor/command_processor.py +6 -7
  221. rasa/dialogue_understanding_test/command_metric_calculation.py +7 -40
  222. rasa/dialogue_understanding_test/command_metrics.py +38 -0
  223. rasa/dialogue_understanding_test/du_test_case.py +58 -25
  224. rasa/dialogue_understanding_test/du_test_result.py +228 -132
  225. rasa/dialogue_understanding_test/du_test_runner.py +11 -2
  226. rasa/dialogue_understanding_test/du_test_schema.yml +3 -3
  227. rasa/dialogue_understanding_test/io.py +35 -8
  228. rasa/e2e_test/constants.py +1 -1
  229. rasa/e2e_test/e2e_test_runner.py +1 -1
  230. rasa/e2e_test/e2e_test_schema.yml +3 -3
  231. rasa/engine/constants.py +1 -1
  232. rasa/engine/graph.py +2 -2
  233. rasa/engine/recipes/default_recipe.py +1 -1
  234. rasa/engine/validation.py +3 -2
  235. rasa/hooks.py +2 -30
  236. rasa/llm_fine_tuning/paraphrasing/conversation_rephraser.py +2 -6
  237. rasa/model_manager/model_api.py +89 -1
  238. rasa/model_manager/runner_service.py +20 -4
  239. rasa/model_manager/socket_bridge.py +0 -7
  240. rasa/model_manager/trainer_service.py +10 -4
  241. rasa/plugin.py +2 -15
  242. rasa/privacy/__init__.py +0 -0
  243. rasa/privacy/constants.py +83 -0
  244. rasa/privacy/event_broker_utils.py +77 -0
  245. rasa/privacy/privacy_config.py +281 -0
  246. rasa/privacy/privacy_config_schema.json +86 -0
  247. rasa/privacy/privacy_filter.py +393 -0
  248. rasa/privacy/privacy_manager.py +594 -0
  249. rasa/server.py +23 -2
  250. rasa/shared/constants.py +17 -0
  251. rasa/shared/core/command_payload_reader.py +1 -5
  252. rasa/shared/core/constants.py +4 -3
  253. rasa/shared/core/domain.py +172 -11
  254. rasa/shared/core/events.py +100 -6
  255. rasa/shared/core/flows/flow.py +30 -5
  256. rasa/shared/core/flows/flow_step.py +19 -3
  257. rasa/shared/core/flows/flow_step_links.py +15 -0
  258. rasa/shared/core/flows/flow_step_sequence.py +6 -0
  259. rasa/shared/core/flows/flows_yaml_schema.json +3 -0
  260. rasa/shared/core/flows/nlu_trigger.py +13 -0
  261. rasa/shared/core/flows/steps/action.py +7 -4
  262. rasa/shared/core/flows/steps/call.py +11 -4
  263. rasa/shared/core/flows/steps/collect.py +71 -6
  264. rasa/shared/core/flows/steps/internal.py +6 -1
  265. rasa/shared/core/flows/steps/link.py +7 -4
  266. rasa/shared/core/flows/steps/no_operation.py +7 -4
  267. rasa/shared/core/flows/steps/set_slots.py +8 -4
  268. rasa/shared/core/flows/validation.py +25 -5
  269. rasa/shared/core/flows/yaml_flows_io.py +106 -5
  270. rasa/shared/core/slots.py +29 -1
  271. rasa/shared/core/trackers.py +21 -10
  272. rasa/shared/core/training_data/story_reader/yaml_story_reader.py +1 -4
  273. rasa/shared/importers/importer.py +8 -0
  274. rasa/shared/providers/_configs/azure_openai_client_config.py +2 -2
  275. rasa/shared/providers/_configs/default_litellm_client_config.py +1 -1
  276. rasa/shared/providers/_configs/huggingface_local_embedding_client_config.py +1 -1
  277. rasa/shared/providers/_configs/openai_client_config.py +1 -1
  278. rasa/shared/providers/_configs/rasa_llm_client_config.py +1 -1
  279. rasa/shared/providers/_configs/self_hosted_llm_client_config.py +1 -1
  280. rasa/shared/providers/_configs/utils.py +0 -99
  281. rasa/shared/providers/llm/default_litellm_llm_client.py +2 -2
  282. rasa/shared/utils/common.py +43 -1
  283. rasa/shared/utils/configs.py +110 -0
  284. rasa/shared/utils/constants.py +0 -3
  285. rasa/shared/utils/llm.py +245 -8
  286. rasa/shared/utils/pykwalify_extensions.py +0 -9
  287. rasa/shared/utils/yaml.py +32 -0
  288. rasa/studio/constants.py +1 -0
  289. rasa/studio/data_handler.py +33 -12
  290. rasa/studio/download.py +117 -435
  291. rasa/studio/link.py +211 -0
  292. rasa/studio/prompts.py +221 -0
  293. rasa/studio/pull/__init__.py +0 -0
  294. rasa/studio/pull/data.py +222 -0
  295. rasa/studio/pull/domains.py +60 -0
  296. rasa/studio/pull/pull.py +239 -0
  297. rasa/studio/push.py +138 -0
  298. rasa/studio/results_logger.py +6 -1
  299. rasa/studio/train.py +1 -1
  300. rasa/studio/upload.py +243 -72
  301. rasa/studio/utils.py +33 -0
  302. rasa/telemetry.py +83 -26
  303. rasa/tracing/config.py +4 -5
  304. rasa/tracing/constants.py +19 -1
  305. rasa/tracing/instrumentation/attribute_extractors.py +68 -16
  306. rasa/tracing/instrumentation/instrumentation.py +54 -3
  307. rasa/tracing/instrumentation/metrics.py +98 -15
  308. rasa/tracing/metric_instrument_provider.py +75 -3
  309. rasa/utils/common.py +43 -22
  310. rasa/utils/endpoints.py +22 -1
  311. rasa/utils/licensing.py +2 -3
  312. rasa/utils/log_utils.py +1 -45
  313. rasa/validator.py +2 -8
  314. rasa/version.py +1 -1
  315. {rasa_pro-3.12.22.dist-info → rasa_pro-3.13.0.dist-info}/METADATA +11 -12
  316. {rasa_pro-3.12.22.dist-info → rasa_pro-3.13.0.dist-info}/RECORD +333 -309
  317. rasa/anonymization/__init__.py +0 -2
  318. rasa/anonymization/anonymisation_rule_yaml_reader.py +0 -91
  319. rasa/anonymization/anonymization_pipeline.py +0 -286
  320. rasa/anonymization/anonymization_rule_executor.py +0 -266
  321. rasa/anonymization/anonymization_rule_orchestrator.py +0 -119
  322. rasa/anonymization/schemas/config.yml +0 -47
  323. rasa/anonymization/utils.py +0 -118
  324. rasa/cli/project_templates/calm/config.yml +0 -10
  325. rasa/cli/project_templates/calm/credentials.yml +0 -33
  326. rasa/cli/project_templates/calm/endpoints.yml +0 -58
  327. rasa/cli/project_templates/default/actions/actions.py +0 -27
  328. rasa/cli/project_templates/default/data/nlu.yml +0 -91
  329. rasa/cli/project_templates/default/data/rules.yml +0 -13
  330. rasa/cli/project_templates/default/data/stories.yml +0 -30
  331. rasa/cli/project_templates/default/domain.yml +0 -34
  332. rasa/cli/project_templates/default/tests/test_stories.yml +0 -91
  333. rasa/core/channels/inspector/dist/assets/channel-dfa68278.js +0 -1
  334. rasa/core/channels/inspector/dist/assets/clone-edb7f119.js +0 -1
  335. rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-65e7c670.js +0 -1
  336. rasa/core/channels/inspector/src/helpers/audiostream.ts +0 -191
  337. rasa/core/tracker_store.py +0 -1792
  338. /rasa/cli/project_templates/{calm → default}/actions/action_template.py +0 -0
  339. /rasa/cli/project_templates/{calm → default}/actions/add_contact.py +0 -0
  340. /rasa/cli/project_templates/{calm → default}/actions/db.py +0 -0
  341. /rasa/cli/project_templates/{calm → default}/actions/list_contacts.py +0 -0
  342. /rasa/cli/project_templates/{calm → default}/actions/remove_contact.py +0 -0
  343. /rasa/cli/project_templates/{calm → default}/data/flows/add_contact.yml +0 -0
  344. /rasa/cli/project_templates/{calm → default}/data/flows/list_contacts.yml +0 -0
  345. /rasa/cli/project_templates/{calm → default}/data/flows/remove_contact.yml +0 -0
  346. /rasa/cli/project_templates/{calm → default}/db/contacts.json +0 -0
  347. /rasa/cli/project_templates/{calm → default}/domain/add_contact.yml +0 -0
  348. /rasa/cli/project_templates/{calm → default}/domain/list_contacts.yml +0 -0
  349. /rasa/cli/project_templates/{calm → default}/domain/remove_contact.yml +0 -0
  350. /rasa/cli/project_templates/{calm → default}/domain/shared.yml +0 -0
  351. /rasa/{cli/project_templates/calm/actions → core/information_retrieval/ingestion}/__init__.py +0 -0
  352. {rasa_pro-3.12.22.dist-info → rasa_pro-3.13.0.dist-info}/NOTICE +0 -0
  353. {rasa_pro-3.12.22.dist-info → rasa_pro-3.13.0.dist-info}/WHEEL +0 -0
  354. {rasa_pro-3.12.22.dist-info → rasa_pro-3.13.0.dist-info}/entry_points.txt +0 -0
@@ -12,86 +12,86 @@ import {
12
12
  useColorModeValue,
13
13
  useTab,
14
14
  useToast,
15
- } from "@chakra-ui/react";
16
- import { Light as SyntaxHighlighter } from "react-syntax-highlighter";
17
- import { useOurTheme } from "../theme";
18
- import { Event, Slot } from "../types";
19
- import { formatTestCases } from "../helpers/formatters";
20
- import { useCopyToClipboard } from "usehooks-ts";
21
- import { useEffect } from "react";
22
- import { FullscreenButton } from "./FullscreenButton";
23
- import { SlotTable, Slots } from "./Slots";
15
+ } from '@chakra-ui/react'
16
+ import { Light as SyntaxHighlighter } from 'react-syntax-highlighter'
17
+ import { useOurTheme } from '../theme'
18
+ import { Event, Slot } from '../types'
19
+ import { formatTestCases } from '../helpers/formatters'
20
+ import { useCopyToClipboard } from 'usehooks-ts'
21
+ import { useEffect } from 'react'
22
+ import { FullscreenButton } from './FullscreenButton'
23
+ import { SlotTable, Slots } from './Slots'
24
24
 
25
25
  interface Props extends FlexProps {
26
- rasaChatSessionId?: string;
27
- events: Event[];
28
- story: string;
29
- slots: Slot[];
26
+ rasaChatSessionId?: string
27
+ events: Event[]
28
+ story: string
29
+ slots: Slot[]
30
30
  }
31
31
 
32
32
  export const DialougeInformation = ({
33
33
  sx,
34
- rasaChatSessionId = "-",
34
+ rasaChatSessionId = '-',
35
35
  events,
36
36
  story,
37
37
  slots,
38
38
  ...props
39
39
  }: Props) => {
40
- const toast = useToast();
41
- const { rasaSpace, rasaFontSizes } = useOurTheme();
42
- const [copiedText, copyToClipboard] = useCopyToClipboard();
40
+ const toast = useToast()
41
+ const { rasaSpace, rasaFontSizes } = useOurTheme()
42
+ const [copiedText, copyToClipboard] = useCopyToClipboard()
43
43
 
44
44
  const containerSx = {
45
45
  ...sx,
46
46
  p: 0,
47
- flexDirection: "column",
48
- };
47
+ flexDirection: 'column',
48
+ }
49
49
  const tabsSx = {
50
- height: "100%",
51
- display: "flex",
52
- flexDirection: "column",
53
- };
50
+ height: '100%',
51
+ display: 'flex',
52
+ flexDirection: 'column',
53
+ }
54
54
  const tabListSx = {
55
55
  px: rasaSpace[1],
56
56
  py: rasaSpace[0.5],
57
- borderBottom: "1px solid",
58
- borderColor: useColorModeValue("neutral.400", "neutral.400"),
59
- };
57
+ borderBottom: '1px solid',
58
+ borderColor: useColorModeValue('neutral.400', 'neutral.400'),
59
+ }
60
60
  const tabPanelSx = {
61
- height: "100%",
62
- overflow: "hidden",
61
+ height: '100%',
62
+ overflow: 'hidden',
63
63
  padding: rasaSpace[0.5],
64
- position: "relative",
65
- };
64
+ position: 'relative',
65
+ }
66
66
  const overflowBox = {
67
- height: "100%",
68
- overflow: "auto",
67
+ height: '100%',
68
+ overflow: 'auto',
69
69
  padding: rasaSpace[0.5],
70
- };
70
+ }
71
71
  const highlighterSx = {
72
- background: useColorModeValue("neutral.50", "neutral.50"),
72
+ background: useColorModeValue('neutral.50', 'neutral.50'),
73
73
  fontSize: rasaFontSizes.sm,
74
- letterSpacing: "0",
75
- };
74
+ letterSpacing: '0',
75
+ }
76
76
  const buttonsProps = {
77
- position: "absolute",
78
- bg: useColorModeValue("neutral.50", "neutral.50"),
77
+ position: 'absolute',
78
+ bg: useColorModeValue('neutral.50', 'neutral.50'),
79
79
  right: rasaSpace[1],
80
80
  bottom: rasaSpace[1],
81
- };
81
+ }
82
82
 
83
83
  useEffect(() => {
84
- if (toast.isActive("copy-to-clipboard") || !copiedText) return;
84
+ if (toast.isActive('copy-to-clipboard') || !copiedText) return
85
85
  toast({
86
- id: "copy-to-clipboard",
87
- title: "Text copied to clipboard",
88
- status: "success",
86
+ id: 'copy-to-clipboard',
87
+ title: 'Text copied to clipboard',
88
+ status: 'success',
89
89
  duration: 2000,
90
90
  isClosable: true,
91
- });
92
- }, [copiedText, toast]);
91
+ })
92
+ }, [copiedText, toast])
93
93
 
94
- const testCases = formatTestCases(events, rasaChatSessionId);
94
+ const testCases = formatTestCases(events, rasaChatSessionId)
95
95
 
96
96
  return (
97
97
  <Flex sx={containerSx} {...props}>
@@ -163,25 +163,25 @@ export const DialougeInformation = ({
163
163
  </TabPanels>
164
164
  </Tabs>
165
165
  </Flex>
166
- );
167
- };
166
+ )
167
+ }
168
168
 
169
169
  const CustomTab = (props: TabProps) => {
170
- const { rasaRadii } = useOurTheme();
171
- const tabProps = useTab(props);
172
- const isSelected = !!tabProps["aria-selected"];
173
- const variant = isSelected ? "solidRasa" : "ghost";
174
- const selectedColor = useColorModeValue("neutral.50", "neutral.50");
175
- const unselectedColor = useColorModeValue("neutral.900", "neutral.900");
170
+ const { rasaRadii } = useOurTheme()
171
+ const tabProps = useTab(props)
172
+ const isSelected = !!tabProps['aria-selected']
173
+ const variant = isSelected ? 'solidRasa' : 'ghost'
174
+ const selectedColor = useColorModeValue('neutral.50', 'neutral.50')
175
+ const unselectedColor = useColorModeValue('neutral.900', 'neutral.900')
176
176
 
177
177
  const buttonSx = {
178
178
  borderRadius: rasaRadii.full,
179
179
  color: isSelected ? selectedColor : unselectedColor,
180
- };
180
+ }
181
181
 
182
182
  return (
183
183
  <Button sx={buttonSx} variant={variant} {...tabProps} size="sm">
184
184
  {tabProps.children}
185
185
  </Button>
186
- );
187
- };
186
+ )
187
+ }
@@ -12,15 +12,15 @@ import {
12
12
  useColorModeValue,
13
13
  Flex,
14
14
  Tooltip,
15
- } from "@chakra-ui/react";
16
- import { useOurTheme } from "../theme";
17
- import { Stack } from "../types";
18
- import { shouldShowTooltip } from "../helpers/utils";
15
+ } from '@chakra-ui/react'
16
+ import { useOurTheme } from '../theme'
17
+ import { Stack } from '../types'
18
+ import { shouldShowTooltip } from '../helpers/utils'
19
19
 
20
20
  interface Props extends FlexProps {
21
- stack: Stack[];
22
- active?: Stack;
23
- onItemClick?: (stack: Stack) => void;
21
+ stack: Stack[]
22
+ active?: Stack
23
+ onItemClick?: (stack: Stack) => void
24
24
  }
25
25
 
26
26
  function StackRow({
@@ -29,32 +29,34 @@ function StackRow({
29
29
  selectable,
30
30
  onItemClick,
31
31
  }: {
32
- stack: Stack;
33
- highlighted?: boolean;
34
- selectable?: boolean;
35
- onItemClick?: (stack: Stack) => void;
32
+ stack: Stack
33
+ highlighted?: boolean
34
+ selectable?: boolean
35
+ onItemClick?: (stack: Stack) => void
36
36
  }) {
37
37
  // use pointy hand cursor when hovering over a row
38
38
  const clickableTrSx = {
39
39
  _hover: {
40
- cursor: "pointer",
40
+ cursor: 'pointer',
41
41
  },
42
- };
42
+ }
43
43
 
44
44
  const highlightedTrSx = {
45
45
  td: {
46
- bg: useColorModeValue("warning.50", "warning.50"),
46
+ bg: useColorModeValue('warning.50', 'warning.50'),
47
47
  },
48
48
  _last: {
49
49
  td: {
50
- border: "none",
50
+ border: 'none',
51
51
  },
52
52
  },
53
- };
53
+ }
54
54
 
55
55
  return (
56
56
  <Tr
57
- sx={highlighted ? highlightedTrSx : selectable ? clickableTrSx : undefined}
57
+ sx={
58
+ highlighted ? highlightedTrSx : selectable ? clickableTrSx : undefined
59
+ }
58
60
  onClick={() => onItemClick?.(stack)}
59
61
  >
60
62
  <Td>
@@ -72,7 +74,7 @@ function StackRow({
72
74
  )}
73
75
  </Td>
74
76
  </Tr>
75
- );
77
+ )
76
78
  }
77
79
 
78
80
  export const DialogueStack = ({
@@ -82,20 +84,20 @@ export const DialogueStack = ({
82
84
  onItemClick,
83
85
  ...props
84
86
  }: Props) => {
85
- const { rasaSpace } = useOurTheme();
87
+ const { rasaSpace } = useOurTheme()
86
88
 
87
89
  const containerSx = {
88
90
  ...sx,
89
91
  pr: 0,
90
92
  pb: 0,
91
- flexDirection: "column",
92
- };
93
+ flexDirection: 'column',
94
+ }
93
95
  const overflowBox = {
94
- height: "100%",
95
- overflow: "auto",
96
+ height: '100%',
97
+ overflow: 'auto',
96
98
  pr: rasaSpace[1],
97
99
  pb: rasaSpace[0.5],
98
- };
100
+ }
99
101
 
100
102
  return (
101
103
  <Flex sx={containerSx} {...props}>
@@ -126,11 +128,18 @@ export const DialogueStack = ({
126
128
  />
127
129
  ))}
128
130
  {stack.length === 0 && (
129
- <StackRow stack={{ frame_id: "-", flow_id: "-", step_id: "-", ended: false }} />
131
+ <StackRow
132
+ stack={{
133
+ frame_id: '-',
134
+ flow_id: '-',
135
+ step_id: '-',
136
+ ended: false,
137
+ }}
138
+ />
130
139
  )}
131
140
  </Tbody>
132
141
  </Table>
133
142
  </Box>
134
143
  </Flex>
135
- );
136
- };
144
+ )
145
+ }
@@ -1,4 +1,4 @@
1
- import { Box, BoxProps, useColorModeValue } from "@chakra-ui/react";
1
+ import { Box, BoxProps, useColorModeValue } from '@chakra-ui/react'
2
2
 
3
3
  export const ExpandIcon = (props: BoxProps) => {
4
4
  return (
@@ -7,10 +7,10 @@ export const ExpandIcon = (props: BoxProps) => {
7
7
  xmlns="http://www.w3.org/2000/svg"
8
8
  height="1em"
9
9
  viewBox="0 0 448 512"
10
- fill={useColorModeValue("rasaPurple.500", "rasaPurple.500")}
10
+ fill={useColorModeValue('rasaPurple.500', 'rasaPurple.500')}
11
11
  {...props}
12
12
  >
13
13
  <path d="M32 32C14.3 32 0 46.3 0 64v96c0 17.7 14.3 32 32 32s32-14.3 32-32V96h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H32zm32 320c0-17.7-14.3-32-32-32S0 334.3 0 352v96c0 17.7 14.3 32 32 32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H64v-64zM320 32c-17.7 0-32 14.3-32 32s14.3 32 32 32h64v64c0 17.7 14.3 32 32 32s32-14.3 32-32V64c0-17.7-14.3-32-32-32h-96zm128 320c0-17.7-14.3-32-32-32s-32 14.3-32 32v64h-64c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c17.7 0 32-14.3 32-32v-96z"></path>
14
14
  </Box>
15
- );
16
- };
15
+ )
16
+ }
@@ -9,15 +9,15 @@ import {
9
9
  ModalOverlay,
10
10
  Tooltip,
11
11
  useDisclosure,
12
- } from "@chakra-ui/react";
13
- import { ExpandIcon } from "./ExpandIcon";
12
+ } from '@chakra-ui/react'
13
+ import { ExpandIcon } from './ExpandIcon'
14
14
 
15
- interface Props extends Omit<IconButtonProps, "aria-label"> {
16
- title: string;
15
+ interface Props extends Omit<IconButtonProps, 'aria-label'> {
16
+ title: string
17
17
  }
18
18
 
19
19
  export const FullscreenButton = ({ title, children, ...props }: Props) => {
20
- const { isOpen, onOpen, onClose } = useDisclosure();
20
+ const { isOpen, onOpen, onClose } = useDisclosure()
21
21
 
22
22
  return (
23
23
  <>
@@ -41,5 +41,5 @@ export const FullscreenButton = ({ title, children, ...props }: Props) => {
41
41
  </ModalContent>
42
42
  </Modal>
43
43
  </>
44
- );
45
- };
44
+ )
45
+ }
@@ -1,22 +1,38 @@
1
- import { Center, Spinner, Text, Button, useColorModeValue } from "@chakra-ui/react";
2
- import { useOurTheme } from "../theme";
3
- import {createAudioConnection} from "../helpers/audiostream.ts";
1
+ import {
2
+ Center,
3
+ Spinner,
4
+ Text,
5
+ Button,
6
+ useColorModeValue,
7
+ } from '@chakra-ui/react'
8
+ import { useOurTheme } from '../theme'
9
+ import { createAudioConnection } from '../helpers/audio/audiostream.ts'
4
10
 
5
11
  export const LoadingSpinner = () => {
6
- const { rasaSpace } = useOurTheme();
7
- const isVoice = window.location.href.includes("browser_audio");
8
- const text = isVoice ? "Start a new conversation" : "Waiting for a new conversation"
12
+ const { rasaSpace } = useOurTheme()
13
+ const isVoice = window.location.href.includes('browser_audio')
14
+ const text = isVoice
15
+ ? 'Start a new conversation'
16
+ : 'Waiting for a new conversation'
9
17
  return (
10
- <Center height={"100vh"} flexDirection="column">
18
+ <Center height={'100vh'} flexDirection="column">
11
19
  <Spinner
12
20
  speed="1s"
13
- emptyColor={useColorModeValue("neutral.500", "neutral.500")}
14
- color={useColorModeValue("rasaPurple.800", "rasaPurple.800")}
21
+ emptyColor={useColorModeValue('neutral.500', 'neutral.500')}
22
+ color={useColorModeValue('rasaPurple.800', 'rasaPurple.800')}
15
23
  size="lg"
16
24
  mb={rasaSpace[1]}
17
25
  />
18
26
  <Text fontSize="lg">{text}</Text>
19
- {isVoice ? <Button onClick={async () => await createAudioConnection(window.location.href)}>Go</Button> : null}
27
+ {isVoice ? (
28
+ <Button
29
+ onClick={async () =>
30
+ await createAudioConnection(window.location.href)
31
+ }
32
+ >
33
+ Go
34
+ </Button>
35
+ ) : null}
20
36
  </Center>
21
- );
22
- };
37
+ )
38
+ }
@@ -1,15 +1,15 @@
1
- import { Center, CenterProps, Text, useColorModeValue } from "@chakra-ui/react";
2
- import { useOurTheme } from "../theme";
3
- import { SaraDiagrams } from "./SaraDiagrams";
1
+ import { Center, CenterProps, Text, useColorModeValue } from '@chakra-ui/react'
2
+ import { useOurTheme } from '../theme'
3
+ import { SaraDiagrams } from './SaraDiagrams'
4
4
 
5
5
  export const NoActiveFlow = (props: CenterProps) => {
6
- const { rasaSpace, rasaFontSizes } = useOurTheme();
7
- const textColor = useColorModeValue("neutral.700", "neutral.700");
6
+ const { rasaSpace, rasaFontSizes } = useOurTheme()
7
+ const textColor = useColorModeValue('neutral.700', 'neutral.700')
8
8
 
9
9
  return (
10
- <Center height={"100%"} flexDirection="column" {...props}>
10
+ <Center height={'100%'} flexDirection="column" {...props}>
11
11
  <SaraDiagrams mb={rasaSpace[1]} size={220} />
12
- <Text as={"b"} fontSize={rasaFontSizes.lg} mb={rasaSpace[0.5]}>
12
+ <Text as={'b'} fontSize={rasaFontSizes.lg} mb={rasaSpace[0.5]}>
13
13
  No flow is currently active
14
14
  </Text>
15
15
  <Text maxW="21.25rem" color={textColor}>
@@ -17,5 +17,5 @@ export const NoActiveFlow = (props: CenterProps) => {
17
17
  activate one
18
18
  </Text>
19
19
  </Center>
20
- );
21
- };
20
+ )
21
+ }
@@ -1,4 +1,4 @@
1
- import { Box, BoxProps } from "@chakra-ui/react";
1
+ import { Box, BoxProps } from '@chakra-ui/react'
2
2
 
3
3
  export const RasaLogo = (props: BoxProps) => {
4
4
  return (
@@ -28,8 +28,8 @@ export const RasaLogo = (props: BoxProps) => {
28
28
  clipRule="evenodd"
29
29
  ></path>
30
30
  </Box>
31
- );
32
- };
31
+ )
32
+ }
33
33
 
34
34
  export const RasaLogoDark = (props: BoxProps) => {
35
35
  return (
@@ -59,5 +59,5 @@ export const RasaLogoDark = (props: BoxProps) => {
59
59
  clipRule="evenodd"
60
60
  ></path>
61
61
  </Box>
62
- );
63
- };
62
+ )
63
+ }
@@ -1,68 +1,63 @@
1
1
  // RecruitmentPanel.tsx
2
- import {
3
- Box,
4
- Flex,
5
- Heading,
6
- IconButton,
7
- Text,
8
- Button,
9
- } from "@chakra-ui/react";
10
- import { CloseIcon } from "@chakra-ui/icons";
11
- import { useOurTheme } from "../theme";
2
+ import { Box, Flex, Heading, IconButton, Text, Button } from '@chakra-ui/react'
3
+ import { CloseIcon } from '@chakra-ui/icons'
4
+ import { useOurTheme } from '../theme'
12
5
 
13
6
  interface RecruitmentPanelProps {
14
- onClose: () => void;
7
+ onClose: () => void
15
8
  }
16
9
 
17
- export const RecruitmentPanel: React.FC<RecruitmentPanelProps> = ({ onClose }) => {
18
- const { rasaRadii } = useOurTheme();
10
+ export const RecruitmentPanel: React.FC<RecruitmentPanelProps> = ({
11
+ onClose,
12
+ }) => {
13
+ const { rasaRadii } = useOurTheme()
19
14
 
20
- const textColor = "white";
21
- const iconColor = "white";
15
+ const textColor = 'white'
16
+ const iconColor = 'white'
22
17
 
23
- const boxSx = {
24
- borderRadius: rasaRadii.normal,
25
- padding: "1rem",
26
- bgGradient: "linear(to-b, #4E61E1, #7622D2)",
27
- color: textColor,
28
- };
18
+ const boxSx = {
19
+ borderRadius: rasaRadii.normal,
20
+ padding: '1rem',
21
+ bgGradient: 'linear(to-b, #4E61E1, #7622D2)',
22
+ color: textColor,
23
+ }
29
24
 
30
- return (
31
- <Box sx={boxSx}>
32
- <Flex justify="space-between" align="center">
33
- <Flex align="center">
34
- <Heading as="h3" size="lg" fontWeight="bold" color={textColor}>
35
- Help us Improve Rasa Pro!
36
- </Heading>
37
- </Flex>
38
- <IconButton
39
- aria-label="Close"
40
- icon={<CloseIcon color={iconColor} />}
41
- size="sm"
42
- onClick={onClose}
43
- bg="transparent"
44
- _hover={{ bg: "rgba(255, 255, 255, 0.2)" }}
45
- />
46
- </Flex>
47
- <Flex align="center" mt="0.5rem" justify="space-between">
48
- <Text fontSize="sm" color={textColor}>
49
- We're looking for users to share their feedback.
50
- </Text>
51
- <Button
52
- as="a"
53
- href="https://calendly.com/alvaro-rasa/rasa-pro-installation"
54
- target="_blank"
55
- rel="noopener noreferrer"
56
- color="#7622D2"
57
- bg="white"
58
- fontWeight="bold"
59
- ml="1rem"
60
- size="sm"
61
- _hover={{ bg: "whiteAlpha.800" }}
62
- >
63
- Sign up
64
- </Button>
65
- </Flex>
66
- </Box>
67
- );
68
- };
25
+ return (
26
+ <Box sx={boxSx}>
27
+ <Flex justify="space-between" align="center">
28
+ <Flex align="center">
29
+ <Heading as="h3" size="lg" fontWeight="bold" color={textColor}>
30
+ Help us Improve Rasa Pro!
31
+ </Heading>
32
+ </Flex>
33
+ <IconButton
34
+ aria-label="Close"
35
+ icon={<CloseIcon color={iconColor} />}
36
+ size="sm"
37
+ onClick={onClose}
38
+ bg="transparent"
39
+ _hover={{ bg: 'rgba(255, 255, 255, 0.2)' }}
40
+ />
41
+ </Flex>
42
+ <Flex align="center" mt="0.5rem" justify="space-between">
43
+ <Text fontSize="sm" color={textColor}>
44
+ We're looking for users to share their feedback.
45
+ </Text>
46
+ <Button
47
+ as="a"
48
+ href="https://feedback.rasa.com"
49
+ target="_blank"
50
+ rel="noopener noreferrer"
51
+ color="#7622D2"
52
+ bg="white"
53
+ fontWeight="bold"
54
+ ml="1rem"
55
+ size="sm"
56
+ _hover={{ bg: 'whiteAlpha.800' }}
57
+ >
58
+ Sign up
59
+ </Button>
60
+ </Flex>
61
+ </Box>
62
+ )
63
+ }
@@ -1,11 +1,11 @@
1
- import { Box, BoxProps } from "@chakra-ui/react";
1
+ import { Box, BoxProps } from '@chakra-ui/react'
2
2
 
3
3
  interface Props extends BoxProps {
4
- size?: number;
4
+ size?: number
5
5
  }
6
6
 
7
7
  export const SaraDiagrams = (props: Props) => {
8
- const { size = 440, ...otherProps } = props;
8
+ const { size = 440, ...otherProps } = props
9
9
 
10
10
  return (
11
11
  <Box
@@ -35,5 +35,5 @@ export const SaraDiagrams = (props: Props) => {
35
35
  />
36
36
  </defs>
37
37
  </Box>
38
- );
39
- };
38
+ )
39
+ }