{"version":3,"file":"99079.cdc87f2d.js","sources":["webpack://app/./src/hooks/utils/useSimpleTextareaClassName.tsx","webpack://app/./src/protos/agents.ts","webpack://app/./src/utils/shared.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react'\n\ninterface UseSimpleTextareaClassNameProps {\n rows?: number\n initialHeight?: number\n}\n\nexport function useSimpleTextareaClassName({\n rows = 1,\n initialHeight\n}: UseSimpleTextareaClassNameProps) {\n const getHeightClass = (height: number) => {\n const clampedHeight = Math.max(1, Math.min(100, Math.round(height)))\n return `h-${clampedHeight}px`\n }\n\n const initialHeightPx = initialHeight || rows * 20 + 20 // 20px is the padding of the textarea\n const [className, setClassName] = useState(() => getHeightClass(initialHeightPx))\n const ref = useRef(null)\n\n useEffect(() => {\n const observer = new MutationObserver(() => {\n if (ref.current) {\n const cssText = ref.current.style.cssText\n if (cssText.includes('height')) {\n requestAnimationFrame(() => setClassName(''))\n }\n }\n })\n\n if (ref.current) {\n observer.observe(ref.current, {\n attributes: true,\n characterData: true,\n childList: true,\n subtree: true\n })\n }\n\n return () => observer.disconnect()\n }, [ref.current])\n\n return { className, ref } as const\n}\n","// Code generated by protoc-gen-ts_proto. DO NOT EDIT.\n// versions:\n// protoc-gen-ts_proto v1.181.0\n// protoc v5.28.1\n// source: agents/agents.proto\n\n/* eslint-disable */\nimport Long from \"long\";\nimport _m0 from \"protobufjs/minimal\";\nimport { Observable } from \"rxjs\";\nimport { map } from \"rxjs/operators\";\n\nexport const protobufPackage = \"agents\";\n\nexport enum AgentTaskStatus {\n /** NONE_TASK_STATUS - Default status */\n NONE_TASK_STATUS = 0,\n /** SUBMITTED - User has submitted the task */\n SUBMITTED = 1,\n /** IN_PROGRESS - Agent is working on the task */\n IN_PROGRESS = 2,\n /** COMPLETED - Agent has completed the task */\n COMPLETED = 3,\n /** ARCHIVED - User has archived the task */\n ARCHIVED = 4,\n /** ERRORED - Agent has errored out */\n ERRORED = 5,\n /** PLANNING_COMPLETED - Agent has completed the planning */\n PLANNING_COMPLETED = 6,\n /** DIFF_GENERATED - Agent has generated the diff */\n DIFF_GENERATED = 7,\n /** HUMAN_DIFF_UPDATED - User has updated the diff */\n HUMAN_DIFF_UPDATED = 8,\n /** DATAWEAVE_DATA_CREATION_ASST_DATA_TYPE_REQUESTED - User has requested the data type for data creation */\n DATAWEAVE_DATA_CREATION_ASST_DATA_TYPE_REQUESTED = 9,\n /** PLANNING_UPDATED - User has approved the planning */\n PLANNING_UPDATED = 10,\n /** DOCUMENT_GENERATED - Agent has generated the documentation */\n DOCUMENT_GENERATED = 11,\n /** DOCUMENT_UPDATED - User has updated the documentation */\n DOCUMENT_UPDATED = 12,\n /** MUNIT_SCENARIO_GENERATED - Agent has generated the Munit scenarios */\n MUNIT_SCENARIO_GENERATED = 13,\n /** PLANNING_REREQUESTED - User requested changes in the planning */\n PLANNING_REREQUESTED = 14,\n /** DIFF_COMMENT_ADDED - User requested changes in the diff */\n DIFF_COMMENT_ADDED = 15,\n /** STOPPED - User has stopped the task */\n STOPPED = 16,\n /** AGENT_INTERNAL_STATUS - PLANNING_UPDATED -> AGENT_INTERNAL_STATUS [loop] -> DIFF_GENERATED */\n AGENT_INTERNAL_STATUS = 17,\n /** STEPS_GENERATED - STEPS_GENERATED -> STEPS_UPDATED -> PLANNING_COMPLETED -> PLANNING_REREQUESTED [loop] -> PLANNING_UPDATED */\n STEPS_GENERATED = 18,\n STEPS_UPDATED = 19,\n QUESTION_ASKED = 20,\n QUESTION_ANSWERED = 21,\n FINAL_SPECIFICATION_GENERATED = 22,\n FINAL_SPECIFICATION_UPDATED = 23,\n IMAGE_GENERATED = 24,\n GENERAL_TXT_FEEDBACK_PROVIDED = 25,\n UNRECOGNIZED = -1,\n}\n\nexport function agentTaskStatusFromJSON(object: any): AgentTaskStatus {\n switch (object) {\n case 0:\n case \"NONE_TASK_STATUS\":\n return AgentTaskStatus.NONE_TASK_STATUS;\n case 1:\n case \"SUBMITTED\":\n return AgentTaskStatus.SUBMITTED;\n case 2:\n case \"IN_PROGRESS\":\n return AgentTaskStatus.IN_PROGRESS;\n case 3:\n case \"COMPLETED\":\n return AgentTaskStatus.COMPLETED;\n case 4:\n case \"ARCHIVED\":\n return AgentTaskStatus.ARCHIVED;\n case 5:\n case \"ERRORED\":\n return AgentTaskStatus.ERRORED;\n case 6:\n case \"PLANNING_COMPLETED\":\n return AgentTaskStatus.PLANNING_COMPLETED;\n case 7:\n case \"DIFF_GENERATED\":\n return AgentTaskStatus.DIFF_GENERATED;\n case 8:\n case \"HUMAN_DIFF_UPDATED\":\n return AgentTaskStatus.HUMAN_DIFF_UPDATED;\n case 9:\n case \"DATAWEAVE_DATA_CREATION_ASST_DATA_TYPE_REQUESTED\":\n return AgentTaskStatus.DATAWEAVE_DATA_CREATION_ASST_DATA_TYPE_REQUESTED;\n case 10:\n case \"PLANNING_UPDATED\":\n return AgentTaskStatus.PLANNING_UPDATED;\n case 11:\n case \"DOCUMENT_GENERATED\":\n return AgentTaskStatus.DOCUMENT_GENERATED;\n case 12:\n case \"DOCUMENT_UPDATED\":\n return AgentTaskStatus.DOCUMENT_UPDATED;\n case 13:\n case \"MUNIT_SCENARIO_GENERATED\":\n return AgentTaskStatus.MUNIT_SCENARIO_GENERATED;\n case 14:\n case \"PLANNING_REREQUESTED\":\n return AgentTaskStatus.PLANNING_REREQUESTED;\n case 15:\n case \"DIFF_COMMENT_ADDED\":\n return AgentTaskStatus.DIFF_COMMENT_ADDED;\n case 16:\n case \"STOPPED\":\n return AgentTaskStatus.STOPPED;\n case 17:\n case \"AGENT_INTERNAL_STATUS\":\n return AgentTaskStatus.AGENT_INTERNAL_STATUS;\n case 18:\n case \"STEPS_GENERATED\":\n return AgentTaskStatus.STEPS_GENERATED;\n case 19:\n case \"STEPS_UPDATED\":\n return AgentTaskStatus.STEPS_UPDATED;\n case 20:\n case \"QUESTION_ASKED\":\n return AgentTaskStatus.QUESTION_ASKED;\n case 21:\n case \"QUESTION_ANSWERED\":\n return AgentTaskStatus.QUESTION_ANSWERED;\n case 22:\n case \"FINAL_SPECIFICATION_GENERATED\":\n return AgentTaskStatus.FINAL_SPECIFICATION_GENERATED;\n case 23:\n case \"FINAL_SPECIFICATION_UPDATED\":\n return AgentTaskStatus.FINAL_SPECIFICATION_UPDATED;\n case 24:\n case \"IMAGE_GENERATED\":\n return AgentTaskStatus.IMAGE_GENERATED;\n case 25:\n case \"GENERAL_TXT_FEEDBACK_PROVIDED\":\n return AgentTaskStatus.GENERAL_TXT_FEEDBACK_PROVIDED;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return AgentTaskStatus.UNRECOGNIZED;\n }\n}\n\nexport function agentTaskStatusToJSON(object: AgentTaskStatus): string {\n switch (object) {\n case AgentTaskStatus.NONE_TASK_STATUS:\n return \"NONE_TASK_STATUS\";\n case AgentTaskStatus.SUBMITTED:\n return \"SUBMITTED\";\n case AgentTaskStatus.IN_PROGRESS:\n return \"IN_PROGRESS\";\n case AgentTaskStatus.COMPLETED:\n return \"COMPLETED\";\n case AgentTaskStatus.ARCHIVED:\n return \"ARCHIVED\";\n case AgentTaskStatus.ERRORED:\n return \"ERRORED\";\n case AgentTaskStatus.PLANNING_COMPLETED:\n return \"PLANNING_COMPLETED\";\n case AgentTaskStatus.DIFF_GENERATED:\n return \"DIFF_GENERATED\";\n case AgentTaskStatus.HUMAN_DIFF_UPDATED:\n return \"HUMAN_DIFF_UPDATED\";\n case AgentTaskStatus.DATAWEAVE_DATA_CREATION_ASST_DATA_TYPE_REQUESTED:\n return \"DATAWEAVE_DATA_CREATION_ASST_DATA_TYPE_REQUESTED\";\n case AgentTaskStatus.PLANNING_UPDATED:\n return \"PLANNING_UPDATED\";\n case AgentTaskStatus.DOCUMENT_GENERATED:\n return \"DOCUMENT_GENERATED\";\n case AgentTaskStatus.DOCUMENT_UPDATED:\n return \"DOCUMENT_UPDATED\";\n case AgentTaskStatus.MUNIT_SCENARIO_GENERATED:\n return \"MUNIT_SCENARIO_GENERATED\";\n case AgentTaskStatus.PLANNING_REREQUESTED:\n return \"PLANNING_REREQUESTED\";\n case AgentTaskStatus.DIFF_COMMENT_ADDED:\n return \"DIFF_COMMENT_ADDED\";\n case AgentTaskStatus.STOPPED:\n return \"STOPPED\";\n case AgentTaskStatus.AGENT_INTERNAL_STATUS:\n return \"AGENT_INTERNAL_STATUS\";\n case AgentTaskStatus.STEPS_GENERATED:\n return \"STEPS_GENERATED\";\n case AgentTaskStatus.STEPS_UPDATED:\n return \"STEPS_UPDATED\";\n case AgentTaskStatus.QUESTION_ASKED:\n return \"QUESTION_ASKED\";\n case AgentTaskStatus.QUESTION_ANSWERED:\n return \"QUESTION_ANSWERED\";\n case AgentTaskStatus.FINAL_SPECIFICATION_GENERATED:\n return \"FINAL_SPECIFICATION_GENERATED\";\n case AgentTaskStatus.FINAL_SPECIFICATION_UPDATED:\n return \"FINAL_SPECIFICATION_UPDATED\";\n case AgentTaskStatus.IMAGE_GENERATED:\n return \"IMAGE_GENERATED\";\n case AgentTaskStatus.GENERAL_TXT_FEEDBACK_PROVIDED:\n return \"GENERAL_TXT_FEEDBACK_PROVIDED\";\n case AgentTaskStatus.UNRECOGNIZED:\n default:\n return \"UNRECOGNIZED\";\n }\n}\n\nexport enum AgentInternalEnum {\n /** NONE_AGENT_INTERNAL_STATUS - Default status */\n NONE_AGENT_INTERNAL_STATUS = 0,\n /** BEGAN_TESTING - Agent has started testing */\n BEGAN_TESTING = 1,\n /** FIXING_CODE - Agent is fixing the code */\n FIXING_CODE = 2,\n UNRECOGNIZED = -1,\n}\n\nexport function agentInternalEnumFromJSON(object: any): AgentInternalEnum {\n switch (object) {\n case 0:\n case \"NONE_AGENT_INTERNAL_STATUS\":\n return AgentInternalEnum.NONE_AGENT_INTERNAL_STATUS;\n case 1:\n case \"BEGAN_TESTING\":\n return AgentInternalEnum.BEGAN_TESTING;\n case 2:\n case \"FIXING_CODE\":\n return AgentInternalEnum.FIXING_CODE;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return AgentInternalEnum.UNRECOGNIZED;\n }\n}\n\nexport function agentInternalEnumToJSON(object: AgentInternalEnum): string {\n switch (object) {\n case AgentInternalEnum.NONE_AGENT_INTERNAL_STATUS:\n return \"NONE_AGENT_INTERNAL_STATUS\";\n case AgentInternalEnum.BEGAN_TESTING:\n return \"BEGAN_TESTING\";\n case AgentInternalEnum.FIXING_CODE:\n return \"FIXING_CODE\";\n case AgentInternalEnum.UNRECOGNIZED:\n default:\n return \"UNRECOGNIZED\";\n }\n}\n\nexport enum EnvType {\n LOCAL_APP = 0,\n LOCAL_CAMPAIGN = 1,\n DEV_APP = 2,\n DEV_CAMPAIGN = 3,\n PROD_APP = 4,\n PROD_CAMPAIGN = 5,\n UNRECOGNIZED = -1,\n}\n\nexport function envTypeFromJSON(object: any): EnvType {\n switch (object) {\n case 0:\n case \"LOCAL_APP\":\n return EnvType.LOCAL_APP;\n case 1:\n case \"LOCAL_CAMPAIGN\":\n return EnvType.LOCAL_CAMPAIGN;\n case 2:\n case \"DEV_APP\":\n return EnvType.DEV_APP;\n case 3:\n case \"DEV_CAMPAIGN\":\n return EnvType.DEV_CAMPAIGN;\n case 4:\n case \"PROD_APP\":\n return EnvType.PROD_APP;\n case 5:\n case \"PROD_CAMPAIGN\":\n return EnvType.PROD_CAMPAIGN;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return EnvType.UNRECOGNIZED;\n }\n}\n\nexport function envTypeToJSON(object: EnvType): string {\n switch (object) {\n case EnvType.LOCAL_APP:\n return \"LOCAL_APP\";\n case EnvType.LOCAL_CAMPAIGN:\n return \"LOCAL_CAMPAIGN\";\n case EnvType.DEV_APP:\n return \"DEV_APP\";\n case EnvType.DEV_CAMPAIGN:\n return \"DEV_CAMPAIGN\";\n case EnvType.PROD_APP:\n return \"PROD_APP\";\n case EnvType.PROD_CAMPAIGN:\n return \"PROD_CAMPAIGN\";\n case EnvType.UNRECOGNIZED:\n default:\n return \"UNRECOGNIZED\";\n }\n}\n\nexport enum CodeEnhancerTaskType {\n ACC = 0,\n CVC = 1,\n REF = 2,\n CDL = 3,\n LOG = 4,\n CPC = 5,\n GEN = 6,\n UNRECOGNIZED = -1,\n}\n\nexport function codeEnhancerTaskTypeFromJSON(object: any): CodeEnhancerTaskType {\n switch (object) {\n case 0:\n case \"ACC\":\n return CodeEnhancerTaskType.ACC;\n case 1:\n case \"CVC\":\n return CodeEnhancerTaskType.CVC;\n case 2:\n case \"REF\":\n return CodeEnhancerTaskType.REF;\n case 3:\n case \"CDL\":\n return CodeEnhancerTaskType.CDL;\n case 4:\n case \"LOG\":\n return CodeEnhancerTaskType.LOG;\n case 5:\n case \"CPC\":\n return CodeEnhancerTaskType.CPC;\n case 6:\n case \"GEN\":\n return CodeEnhancerTaskType.GEN;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return CodeEnhancerTaskType.UNRECOGNIZED;\n }\n}\n\nexport function codeEnhancerTaskTypeToJSON(object: CodeEnhancerTaskType): string {\n switch (object) {\n case CodeEnhancerTaskType.ACC:\n return \"ACC\";\n case CodeEnhancerTaskType.CVC:\n return \"CVC\";\n case CodeEnhancerTaskType.REF:\n return \"REF\";\n case CodeEnhancerTaskType.CDL:\n return \"CDL\";\n case CodeEnhancerTaskType.LOG:\n return \"LOG\";\n case CodeEnhancerTaskType.CPC:\n return \"CPC\";\n case CodeEnhancerTaskType.GEN:\n return \"GEN\";\n case CodeEnhancerTaskType.UNRECOGNIZED:\n default:\n return \"UNRECOGNIZED\";\n }\n}\n\nexport enum ConnectionType {\n UNKNOWN = 0,\n GITHUB = 1,\n JIRA = 2,\n SLACK = 3,\n ECLIPSE_PLUGIN = 4,\n CURIE_UI = 5,\n UNRECOGNIZED = -1,\n}\n\nexport function connectionTypeFromJSON(object: any): ConnectionType {\n switch (object) {\n case 0:\n case \"UNKNOWN\":\n return ConnectionType.UNKNOWN;\n case 1:\n case \"GITHUB\":\n return ConnectionType.GITHUB;\n case 2:\n case \"JIRA\":\n return ConnectionType.JIRA;\n case 3:\n case \"SLACK\":\n return ConnectionType.SLACK;\n case 4:\n case \"ECLIPSE_PLUGIN\":\n return ConnectionType.ECLIPSE_PLUGIN;\n case 5:\n case \"CURIE_UI\":\n return ConnectionType.CURIE_UI;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return ConnectionType.UNRECOGNIZED;\n }\n}\n\nexport function connectionTypeToJSON(object: ConnectionType): string {\n switch (object) {\n case ConnectionType.UNKNOWN:\n return \"UNKNOWN\";\n case ConnectionType.GITHUB:\n return \"GITHUB\";\n case ConnectionType.JIRA:\n return \"JIRA\";\n case ConnectionType.SLACK:\n return \"SLACK\";\n case ConnectionType.ECLIPSE_PLUGIN:\n return \"ECLIPSE_PLUGIN\";\n case ConnectionType.CURIE_UI:\n return \"CURIE_UI\";\n case ConnectionType.UNRECOGNIZED:\n default:\n return \"UNRECOGNIZED\";\n }\n}\n\nexport enum MessageType {\n UNDEFINED = 0,\n PR = 1,\n IMAGE_BASE64 = 2,\n TEXT = 3,\n DIFF = 4,\n DOCUMENTATION = 5,\n UNRECOGNIZED = -1,\n}\n\nexport function messageTypeFromJSON(object: any): MessageType {\n switch (object) {\n case 0:\n case \"UNDEFINED\":\n return MessageType.UNDEFINED;\n case 1:\n case \"PR\":\n return MessageType.PR;\n case 2:\n case \"IMAGE_BASE64\":\n return MessageType.IMAGE_BASE64;\n case 3:\n case \"TEXT\":\n return MessageType.TEXT;\n case 4:\n case \"DIFF\":\n return MessageType.DIFF;\n case 5:\n case \"DOCUMENTATION\":\n return MessageType.DOCUMENTATION;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return MessageType.UNRECOGNIZED;\n }\n}\n\nexport function messageTypeToJSON(object: MessageType): string {\n switch (object) {\n case MessageType.UNDEFINED:\n return \"UNDEFINED\";\n case MessageType.PR:\n return \"PR\";\n case MessageType.IMAGE_BASE64:\n return \"IMAGE_BASE64\";\n case MessageType.TEXT:\n return \"TEXT\";\n case MessageType.DIFF:\n return \"DIFF\";\n case MessageType.DOCUMENTATION:\n return \"DOCUMENTATION\";\n case MessageType.UNRECOGNIZED:\n default:\n return \"UNRECOGNIZED\";\n }\n}\n\nexport enum CommandType {\n NONE = 0,\n QUESTION_ANSWERING = 1,\n GENERATE_IMAGE = 2,\n GENERATE_SIMPLE_CODE_PR = 3,\n FIX_PR = 4,\n GENERATE_DOCUMENTATION = 5,\n GENERATE_FULL_REPO_TECH_MANIFEST_DOCUMENTATION = 6,\n AUTODESK_MULE_TO_NODE_JS_MIGRATION = 7,\n GENERATE_MAPPING_TABLE = 8,\n GENERATE_MULTI_REPO_FLOW_DIAGRAM = 9,\n GENERATE_ADD_FLOW_CODE_PR = 10,\n DATAWEAVE_TO_DATA_CREATION = 11,\n MUNIT_TEST_CREATION = 12,\n GENERATE_DATAWEAVE = 13,\n MULTI_REPO_QA = 14,\n GENERAL_MULTI_REPO_QA_DEBUG_AGENT = 15,\n INPUT_OUTPUT_EXAMPLE_TO_DWL_GENERATION = 16,\n MIGRATION_DOCUMENT = 17,\n GENERATE_REPO_ADD_FLOW_CODE_PR = 18,\n INPUT_OUTPUT_EXAMPLE_TO_DWL_GENERATION_REPO_AWARE = 19,\n GENERATE_DATAWEAVE_REPO_AWARE = 20,\n DATAWEAVE_TO_DATA_CREATION_REPO_AWARE = 21,\n CODE_REVIEW = 22,\n MULESOFT_TO_CAMEL_MIGRATION = 23,\n MIGRATION_QUESTION_ANSWERING = 24,\n NON_REPO_AWARE_QA = 25,\n MULE_3_TO_MULE_4_MIGRATION = 26,\n UNRECOGNIZED = -1,\n}\n\nexport function commandTypeFromJSON(object: any): CommandType {\n switch (object) {\n case 0:\n case \"NONE\":\n return CommandType.NONE;\n case 1:\n case \"QUESTION_ANSWERING\":\n return CommandType.QUESTION_ANSWERING;\n case 2:\n case \"GENERATE_IMAGE\":\n return CommandType.GENERATE_IMAGE;\n case 3:\n case \"GENERATE_SIMPLE_CODE_PR\":\n return CommandType.GENERATE_SIMPLE_CODE_PR;\n case 4:\n case \"FIX_PR\":\n return CommandType.FIX_PR;\n case 5:\n case \"GENERATE_DOCUMENTATION\":\n return CommandType.GENERATE_DOCUMENTATION;\n case 6:\n case \"GENERATE_FULL_REPO_TECH_MANIFEST_DOCUMENTATION\":\n return CommandType.GENERATE_FULL_REPO_TECH_MANIFEST_DOCUMENTATION;\n case 7:\n case \"AUTODESK_MULE_TO_NODE_JS_MIGRATION\":\n return CommandType.AUTODESK_MULE_TO_NODE_JS_MIGRATION;\n case 8:\n case \"GENERATE_MAPPING_TABLE\":\n return CommandType.GENERATE_MAPPING_TABLE;\n case 9:\n case \"GENERATE_MULTI_REPO_FLOW_DIAGRAM\":\n return CommandType.GENERATE_MULTI_REPO_FLOW_DIAGRAM;\n case 10:\n case \"GENERATE_ADD_FLOW_CODE_PR\":\n return CommandType.GENERATE_ADD_FLOW_CODE_PR;\n case 11:\n case \"DATAWEAVE_TO_DATA_CREATION\":\n return CommandType.DATAWEAVE_TO_DATA_CREATION;\n case 12:\n case \"MUNIT_TEST_CREATION\":\n return CommandType.MUNIT_TEST_CREATION;\n case 13:\n case \"GENERATE_DATAWEAVE\":\n return CommandType.GENERATE_DATAWEAVE;\n case 14:\n case \"MULTI_REPO_QA\":\n return CommandType.MULTI_REPO_QA;\n case 15:\n case \"GENERAL_MULTI_REPO_QA_DEBUG_AGENT\":\n return CommandType.GENERAL_MULTI_REPO_QA_DEBUG_AGENT;\n case 16:\n case \"INPUT_OUTPUT_EXAMPLE_TO_DWL_GENERATION\":\n return CommandType.INPUT_OUTPUT_EXAMPLE_TO_DWL_GENERATION;\n case 17:\n case \"MIGRATION_DOCUMENT\":\n return CommandType.MIGRATION_DOCUMENT;\n case 18:\n case \"GENERATE_REPO_ADD_FLOW_CODE_PR\":\n return CommandType.GENERATE_REPO_ADD_FLOW_CODE_PR;\n case 19:\n case \"INPUT_OUTPUT_EXAMPLE_TO_DWL_GENERATION_REPO_AWARE\":\n return CommandType.INPUT_OUTPUT_EXAMPLE_TO_DWL_GENERATION_REPO_AWARE;\n case 20:\n case \"GENERATE_DATAWEAVE_REPO_AWARE\":\n return CommandType.GENERATE_DATAWEAVE_REPO_AWARE;\n case 21:\n case \"DATAWEAVE_TO_DATA_CREATION_REPO_AWARE\":\n return CommandType.DATAWEAVE_TO_DATA_CREATION_REPO_AWARE;\n case 22:\n case \"CODE_REVIEW\":\n return CommandType.CODE_REVIEW;\n case 23:\n case \"MULESOFT_TO_CAMEL_MIGRATION\":\n return CommandType.MULESOFT_TO_CAMEL_MIGRATION;\n case 24:\n case \"MIGRATION_QUESTION_ANSWERING\":\n return CommandType.MIGRATION_QUESTION_ANSWERING;\n case 25:\n case \"NON_REPO_AWARE_QA\":\n return CommandType.NON_REPO_AWARE_QA;\n case 26:\n case \"MULE_3_TO_MULE_4_MIGRATION\":\n return CommandType.MULE_3_TO_MULE_4_MIGRATION;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return CommandType.UNRECOGNIZED;\n }\n}\n\nexport function commandTypeToJSON(object: CommandType): string {\n switch (object) {\n case CommandType.NONE:\n return \"NONE\";\n case CommandType.QUESTION_ANSWERING:\n return \"QUESTION_ANSWERING\";\n case CommandType.GENERATE_IMAGE:\n return \"GENERATE_IMAGE\";\n case CommandType.GENERATE_SIMPLE_CODE_PR:\n return \"GENERATE_SIMPLE_CODE_PR\";\n case CommandType.FIX_PR:\n return \"FIX_PR\";\n case CommandType.GENERATE_DOCUMENTATION:\n return \"GENERATE_DOCUMENTATION\";\n case CommandType.GENERATE_FULL_REPO_TECH_MANIFEST_DOCUMENTATION:\n return \"GENERATE_FULL_REPO_TECH_MANIFEST_DOCUMENTATION\";\n case CommandType.AUTODESK_MULE_TO_NODE_JS_MIGRATION:\n return \"AUTODESK_MULE_TO_NODE_JS_MIGRATION\";\n case CommandType.GENERATE_MAPPING_TABLE:\n return \"GENERATE_MAPPING_TABLE\";\n case CommandType.GENERATE_MULTI_REPO_FLOW_DIAGRAM:\n return \"GENERATE_MULTI_REPO_FLOW_DIAGRAM\";\n case CommandType.GENERATE_ADD_FLOW_CODE_PR:\n return \"GENERATE_ADD_FLOW_CODE_PR\";\n case CommandType.DATAWEAVE_TO_DATA_CREATION:\n return \"DATAWEAVE_TO_DATA_CREATION\";\n case CommandType.MUNIT_TEST_CREATION:\n return \"MUNIT_TEST_CREATION\";\n case CommandType.GENERATE_DATAWEAVE:\n return \"GENERATE_DATAWEAVE\";\n case CommandType.MULTI_REPO_QA:\n return \"MULTI_REPO_QA\";\n case CommandType.GENERAL_MULTI_REPO_QA_DEBUG_AGENT:\n return \"GENERAL_MULTI_REPO_QA_DEBUG_AGENT\";\n case CommandType.INPUT_OUTPUT_EXAMPLE_TO_DWL_GENERATION:\n return \"INPUT_OUTPUT_EXAMPLE_TO_DWL_GENERATION\";\n case CommandType.MIGRATION_DOCUMENT:\n return \"MIGRATION_DOCUMENT\";\n case CommandType.GENERATE_REPO_ADD_FLOW_CODE_PR:\n return \"GENERATE_REPO_ADD_FLOW_CODE_PR\";\n case CommandType.INPUT_OUTPUT_EXAMPLE_TO_DWL_GENERATION_REPO_AWARE:\n return \"INPUT_OUTPUT_EXAMPLE_TO_DWL_GENERATION_REPO_AWARE\";\n case CommandType.GENERATE_DATAWEAVE_REPO_AWARE:\n return \"GENERATE_DATAWEAVE_REPO_AWARE\";\n case CommandType.DATAWEAVE_TO_DATA_CREATION_REPO_AWARE:\n return \"DATAWEAVE_TO_DATA_CREATION_REPO_AWARE\";\n case CommandType.CODE_REVIEW:\n return \"CODE_REVIEW\";\n case CommandType.MULESOFT_TO_CAMEL_MIGRATION:\n return \"MULESOFT_TO_CAMEL_MIGRATION\";\n case CommandType.MIGRATION_QUESTION_ANSWERING:\n return \"MIGRATION_QUESTION_ANSWERING\";\n case CommandType.NON_REPO_AWARE_QA:\n return \"NON_REPO_AWARE_QA\";\n case CommandType.MULE_3_TO_MULE_4_MIGRATION:\n return \"MULE_3_TO_MULE_4_MIGRATION\";\n case CommandType.UNRECOGNIZED:\n default:\n return \"UNRECOGNIZED\";\n }\n}\n\nexport enum IntegrationPlatform {\n UNKNOW_INTEGRATION_PLATFORM = 0,\n MULESOFT = 1,\n IBM_APP_CONNECT_ENTERPRISE = 2,\n JAVA_SPRING_BOOT = 3,\n TIBCO = 4,\n NODE_JS = 5,\n MICROSOFT_BIZTALK = 6,\n WEB_METHODS_CLOUD = 7,\n WEB_METHODS_CODE_BASED = 8,\n ORACLE_SERVICES_BUS = 9,\n TIBCO_6 = 11,\n MULESOFT_3 = 12,\n UNRECOGNIZED = -1,\n}\n\nexport function integrationPlatformFromJSON(object: any): IntegrationPlatform {\n switch (object) {\n case 0:\n case \"UNKNOW_INTEGRATION_PLATFORM\":\n return IntegrationPlatform.UNKNOW_INTEGRATION_PLATFORM;\n case 1:\n case \"MULESOFT\":\n return IntegrationPlatform.MULESOFT;\n case 2:\n case \"IBM_APP_CONNECT_ENTERPRISE\":\n return IntegrationPlatform.IBM_APP_CONNECT_ENTERPRISE;\n case 3:\n case \"JAVA_SPRING_BOOT\":\n return IntegrationPlatform.JAVA_SPRING_BOOT;\n case 4:\n case \"TIBCO\":\n return IntegrationPlatform.TIBCO;\n case 5:\n case \"NODE_JS\":\n return IntegrationPlatform.NODE_JS;\n case 6:\n case \"MICROSOFT_BIZTALK\":\n return IntegrationPlatform.MICROSOFT_BIZTALK;\n case 7:\n case \"WEB_METHODS_CLOUD\":\n return IntegrationPlatform.WEB_METHODS_CLOUD;\n case 8:\n case \"WEB_METHODS_CODE_BASED\":\n return IntegrationPlatform.WEB_METHODS_CODE_BASED;\n case 9:\n case \"ORACLE_SERVICES_BUS\":\n return IntegrationPlatform.ORACLE_SERVICES_BUS;\n case 11:\n case \"TIBCO_6\":\n return IntegrationPlatform.TIBCO_6;\n case 12:\n case \"MULESOFT_3\":\n return IntegrationPlatform.MULESOFT_3;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return IntegrationPlatform.UNRECOGNIZED;\n }\n}\n\nexport function integrationPlatformToJSON(object: IntegrationPlatform): string {\n switch (object) {\n case IntegrationPlatform.UNKNOW_INTEGRATION_PLATFORM:\n return \"UNKNOW_INTEGRATION_PLATFORM\";\n case IntegrationPlatform.MULESOFT:\n return \"MULESOFT\";\n case IntegrationPlatform.IBM_APP_CONNECT_ENTERPRISE:\n return \"IBM_APP_CONNECT_ENTERPRISE\";\n case IntegrationPlatform.JAVA_SPRING_BOOT:\n return \"JAVA_SPRING_BOOT\";\n case IntegrationPlatform.TIBCO:\n return \"TIBCO\";\n case IntegrationPlatform.NODE_JS:\n return \"NODE_JS\";\n case IntegrationPlatform.MICROSOFT_BIZTALK:\n return \"MICROSOFT_BIZTALK\";\n case IntegrationPlatform.WEB_METHODS_CLOUD:\n return \"WEB_METHODS_CLOUD\";\n case IntegrationPlatform.WEB_METHODS_CODE_BASED:\n return \"WEB_METHODS_CODE_BASED\";\n case IntegrationPlatform.ORACLE_SERVICES_BUS:\n return \"ORACLE_SERVICES_BUS\";\n case IntegrationPlatform.TIBCO_6:\n return \"TIBCO_6\";\n case IntegrationPlatform.MULESOFT_3:\n return \"MULESOFT_3\";\n case IntegrationPlatform.UNRECOGNIZED:\n default:\n return \"UNRECOGNIZED\";\n }\n}\n\nexport enum SourceOutputExampleType {\n DATA_TYPE_UNKNOWN = 0,\n DATA_TYPE_XML = 1,\n DATA_TYPE_YAML = 2,\n DATA_TYPE_JSON = 3,\n DATA_TYPE_CSV = 4,\n DATA_TYPE_MULTIPART = 5,\n DATA_TYPE_TEXT = 6,\n DATA_TYPE_EDI = 7,\n UNRECOGNIZED = -1,\n}\n\nexport function sourceOutputExampleTypeFromJSON(object: any): SourceOutputExampleType {\n switch (object) {\n case 0:\n case \"DATA_TYPE_UNKNOWN\":\n return SourceOutputExampleType.DATA_TYPE_UNKNOWN;\n case 1:\n case \"DATA_TYPE_XML\":\n return SourceOutputExampleType.DATA_TYPE_XML;\n case 2:\n case \"DATA_TYPE_YAML\":\n return SourceOutputExampleType.DATA_TYPE_YAML;\n case 3:\n case \"DATA_TYPE_JSON\":\n return SourceOutputExampleType.DATA_TYPE_JSON;\n case 4:\n case \"DATA_TYPE_CSV\":\n return SourceOutputExampleType.DATA_TYPE_CSV;\n case 5:\n case \"DATA_TYPE_MULTIPART\":\n return SourceOutputExampleType.DATA_TYPE_MULTIPART;\n case 6:\n case \"DATA_TYPE_TEXT\":\n return SourceOutputExampleType.DATA_TYPE_TEXT;\n case 7:\n case \"DATA_TYPE_EDI\":\n return SourceOutputExampleType.DATA_TYPE_EDI;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return SourceOutputExampleType.UNRECOGNIZED;\n }\n}\n\nexport function sourceOutputExampleTypeToJSON(object: SourceOutputExampleType): string {\n switch (object) {\n case SourceOutputExampleType.DATA_TYPE_UNKNOWN:\n return \"DATA_TYPE_UNKNOWN\";\n case SourceOutputExampleType.DATA_TYPE_XML:\n return \"DATA_TYPE_XML\";\n case SourceOutputExampleType.DATA_TYPE_YAML:\n return \"DATA_TYPE_YAML\";\n case SourceOutputExampleType.DATA_TYPE_JSON:\n return \"DATA_TYPE_JSON\";\n case SourceOutputExampleType.DATA_TYPE_CSV:\n return \"DATA_TYPE_CSV\";\n case SourceOutputExampleType.DATA_TYPE_MULTIPART:\n return \"DATA_TYPE_MULTIPART\";\n case SourceOutputExampleType.DATA_TYPE_TEXT:\n return \"DATA_TYPE_TEXT\";\n case SourceOutputExampleType.DATA_TYPE_EDI:\n return \"DATA_TYPE_EDI\";\n case SourceOutputExampleType.UNRECOGNIZED:\n default:\n return \"UNRECOGNIZED\";\n }\n}\n\nexport enum DiffType {\n DIFF_UNKNOWN_TYPE = 0,\n MODIFY = 1,\n ADD = 2,\n DELETE = 3,\n UNRECOGNIZED = -1,\n}\n\nexport function diffTypeFromJSON(object: any): DiffType {\n switch (object) {\n case 0:\n case \"DIFF_UNKNOWN_TYPE\":\n return DiffType.DIFF_UNKNOWN_TYPE;\n case 1:\n case \"MODIFY\":\n return DiffType.MODIFY;\n case 2:\n case \"ADD\":\n return DiffType.ADD;\n case 3:\n case \"DELETE\":\n return DiffType.DELETE;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return DiffType.UNRECOGNIZED;\n }\n}\n\nexport function diffTypeToJSON(object: DiffType): string {\n switch (object) {\n case DiffType.DIFF_UNKNOWN_TYPE:\n return \"DIFF_UNKNOWN_TYPE\";\n case DiffType.MODIFY:\n return \"MODIFY\";\n case DiffType.ADD:\n return \"ADD\";\n case DiffType.DELETE:\n return \"DELETE\";\n case DiffType.UNRECOGNIZED:\n default:\n return \"UNRECOGNIZED\";\n }\n}\n\nexport enum QuestionAnsweringType {\n QA_UNKNOWN = 0,\n GENERAL = 1,\n TROUBLESHOOT = 2,\n SECURITY = 3,\n BEST_PRACTICES = 4,\n BILLING = 5,\n API_SPEC_GEN = 6,\n UNRECOGNIZED = -1,\n}\n\nexport function questionAnsweringTypeFromJSON(object: any): QuestionAnsweringType {\n switch (object) {\n case 0:\n case \"QA_UNKNOWN\":\n return QuestionAnsweringType.QA_UNKNOWN;\n case 1:\n case \"GENERAL\":\n return QuestionAnsweringType.GENERAL;\n case 2:\n case \"TROUBLESHOOT\":\n return QuestionAnsweringType.TROUBLESHOOT;\n case 3:\n case \"SECURITY\":\n return QuestionAnsweringType.SECURITY;\n case 4:\n case \"BEST_PRACTICES\":\n return QuestionAnsweringType.BEST_PRACTICES;\n case 5:\n case \"BILLING\":\n return QuestionAnsweringType.BILLING;\n case 6:\n case \"API_SPEC_GEN\":\n return QuestionAnsweringType.API_SPEC_GEN;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return QuestionAnsweringType.UNRECOGNIZED;\n }\n}\n\nexport function questionAnsweringTypeToJSON(object: QuestionAnsweringType): string {\n switch (object) {\n case QuestionAnsweringType.QA_UNKNOWN:\n return \"QA_UNKNOWN\";\n case QuestionAnsweringType.GENERAL:\n return \"GENERAL\";\n case QuestionAnsweringType.TROUBLESHOOT:\n return \"TROUBLESHOOT\";\n case QuestionAnsweringType.SECURITY:\n return \"SECURITY\";\n case QuestionAnsweringType.BEST_PRACTICES:\n return \"BEST_PRACTICES\";\n case QuestionAnsweringType.BILLING:\n return \"BILLING\";\n case QuestionAnsweringType.API_SPEC_GEN:\n return \"API_SPEC_GEN\";\n case QuestionAnsweringType.UNRECOGNIZED:\n default:\n return \"UNRECOGNIZED\";\n }\n}\n\nexport enum TraceEvent {\n /** campaign_task_exposure - Task */\n campaign_task_exposure = 0,\n campaign_task_submit = 1,\n campaign_task_submitted = 2,\n campaign_task_completed = 3,\n /** signup_modal_exposure - Signup Wall */\n signup_modal_exposure = 4,\n signup_exposure = 5,\n signup_click = 6,\n signup_completed = 7,\n /** waitlist_exposure - Waitlist Wall */\n waitlist_exposure = 8,\n waitlist_send_verification_code = 9,\n waitlist_click_register = 10,\n waitlist_register_success = 11,\n waitlist_register_failure = 12,\n waitlist_pre_exposure = 13,\n /** user_guide_closed - User Guide Banner */\n user_guide_closed = 14,\n /** feedback_click - Feedback */\n feedback_click = 15,\n campaign_task_fields_not_filled = 16,\n campaign_task_submit_failed = 17,\n copy_to_clipboard = 18,\n /** ws_open - WebSocket */\n ws_open = 19,\n ws_message = 20,\n ws_close = 21,\n ws_error = 22,\n thumb_up_clicked = 23,\n thumb_down_clicked = 24,\n upgrade_plan = 25,\n /** campaign_trial_exposure - Campaign */\n campaign_trial_exposure = 26,\n campaign_trial_click_submit = 27,\n campaign_trial_submit_success = 28,\n tutorial_started = 29,\n tutorial_in_progress = 30,\n tutorial_end = 31,\n repo_setup = 32,\n try_builtin_example = 33,\n try_own_example = 34,\n campaign_register_email = 35,\n UNRECOGNIZED = -1,\n}\n\nexport function traceEventFromJSON(object: any): TraceEvent {\n switch (object) {\n case 0:\n case \"campaign_task_exposure\":\n return TraceEvent.campaign_task_exposure;\n case 1:\n case \"campaign_task_submit\":\n return TraceEvent.campaign_task_submit;\n case 2:\n case \"campaign_task_submitted\":\n return TraceEvent.campaign_task_submitted;\n case 3:\n case \"campaign_task_completed\":\n return TraceEvent.campaign_task_completed;\n case 4:\n case \"signup_modal_exposure\":\n return TraceEvent.signup_modal_exposure;\n case 5:\n case \"signup_exposure\":\n return TraceEvent.signup_exposure;\n case 6:\n case \"signup_click\":\n return TraceEvent.signup_click;\n case 7:\n case \"signup_completed\":\n return TraceEvent.signup_completed;\n case 8:\n case \"waitlist_exposure\":\n return TraceEvent.waitlist_exposure;\n case 9:\n case \"waitlist_send_verification_code\":\n return TraceEvent.waitlist_send_verification_code;\n case 10:\n case \"waitlist_click_register\":\n return TraceEvent.waitlist_click_register;\n case 11:\n case \"waitlist_register_success\":\n return TraceEvent.waitlist_register_success;\n case 12:\n case \"waitlist_register_failure\":\n return TraceEvent.waitlist_register_failure;\n case 13:\n case \"waitlist_pre_exposure\":\n return TraceEvent.waitlist_pre_exposure;\n case 14:\n case \"user_guide_closed\":\n return TraceEvent.user_guide_closed;\n case 15:\n case \"feedback_click\":\n return TraceEvent.feedback_click;\n case 16:\n case \"campaign_task_fields_not_filled\":\n return TraceEvent.campaign_task_fields_not_filled;\n case 17:\n case \"campaign_task_submit_failed\":\n return TraceEvent.campaign_task_submit_failed;\n case 18:\n case \"copy_to_clipboard\":\n return TraceEvent.copy_to_clipboard;\n case 19:\n case \"ws_open\":\n return TraceEvent.ws_open;\n case 20:\n case \"ws_message\":\n return TraceEvent.ws_message;\n case 21:\n case \"ws_close\":\n return TraceEvent.ws_close;\n case 22:\n case \"ws_error\":\n return TraceEvent.ws_error;\n case 23:\n case \"thumb_up_clicked\":\n return TraceEvent.thumb_up_clicked;\n case 24:\n case \"thumb_down_clicked\":\n return TraceEvent.thumb_down_clicked;\n case 25:\n case \"upgrade_plan\":\n return TraceEvent.upgrade_plan;\n case 26:\n case \"campaign_trial_exposure\":\n return TraceEvent.campaign_trial_exposure;\n case 27:\n case \"campaign_trial_click_submit\":\n return TraceEvent.campaign_trial_click_submit;\n case 28:\n case \"campaign_trial_submit_success\":\n return TraceEvent.campaign_trial_submit_success;\n case 29:\n case \"tutorial_started\":\n return TraceEvent.tutorial_started;\n case 30:\n case \"tutorial_in_progress\":\n return TraceEvent.tutorial_in_progress;\n case 31:\n case \"tutorial_end\":\n return TraceEvent.tutorial_end;\n case 32:\n case \"repo_setup\":\n return TraceEvent.repo_setup;\n case 33:\n case \"try_builtin_example\":\n return TraceEvent.try_builtin_example;\n case 34:\n case \"try_own_example\":\n return TraceEvent.try_own_example;\n case 35:\n case \"campaign_register_email\":\n return TraceEvent.campaign_register_email;\n case -1:\n case \"UNRECOGNIZED\":\n default:\n return TraceEvent.UNRECOGNIZED;\n }\n}\n\nexport function traceEventToJSON(object: TraceEvent): string {\n switch (object) {\n case TraceEvent.campaign_task_exposure:\n return \"campaign_task_exposure\";\n case TraceEvent.campaign_task_submit:\n return \"campaign_task_submit\";\n case TraceEvent.campaign_task_submitted:\n return \"campaign_task_submitted\";\n case TraceEvent.campaign_task_completed:\n return \"campaign_task_completed\";\n case TraceEvent.signup_modal_exposure:\n return \"signup_modal_exposure\";\n case TraceEvent.signup_exposure:\n return \"signup_exposure\";\n case TraceEvent.signup_click:\n return \"signup_click\";\n case TraceEvent.signup_completed:\n return \"signup_completed\";\n case TraceEvent.waitlist_exposure:\n return \"waitlist_exposure\";\n case TraceEvent.waitlist_send_verification_code:\n return \"waitlist_send_verification_code\";\n case TraceEvent.waitlist_click_register:\n return \"waitlist_click_register\";\n case TraceEvent.waitlist_register_success:\n return \"waitlist_register_success\";\n case TraceEvent.waitlist_register_failure:\n return \"waitlist_register_failure\";\n case TraceEvent.waitlist_pre_exposure:\n return \"waitlist_pre_exposure\";\n case TraceEvent.user_guide_closed:\n return \"user_guide_closed\";\n case TraceEvent.feedback_click:\n return \"feedback_click\";\n case TraceEvent.campaign_task_fields_not_filled:\n return \"campaign_task_fields_not_filled\";\n case TraceEvent.campaign_task_submit_failed:\n return \"campaign_task_submit_failed\";\n case TraceEvent.copy_to_clipboard:\n return \"copy_to_clipboard\";\n case TraceEvent.ws_open:\n return \"ws_open\";\n case TraceEvent.ws_message:\n return \"ws_message\";\n case TraceEvent.ws_close:\n return \"ws_close\";\n case TraceEvent.ws_error:\n return \"ws_error\";\n case TraceEvent.thumb_up_clicked:\n return \"thumb_up_clicked\";\n case TraceEvent.thumb_down_clicked:\n return \"thumb_down_clicked\";\n case TraceEvent.upgrade_plan:\n return \"upgrade_plan\";\n case TraceEvent.campaign_trial_exposure:\n return \"campaign_trial_exposure\";\n case TraceEvent.campaign_trial_click_submit:\n return \"campaign_trial_click_submit\";\n case TraceEvent.campaign_trial_submit_success:\n return \"campaign_trial_submit_success\";\n case TraceEvent.tutorial_started:\n return \"tutorial_started\";\n case TraceEvent.tutorial_in_progress:\n return \"tutorial_in_progress\";\n case TraceEvent.tutorial_end:\n return \"tutorial_end\";\n case TraceEvent.repo_setup:\n return \"repo_setup\";\n case TraceEvent.try_builtin_example:\n return \"try_builtin_example\";\n case TraceEvent.try_own_example:\n return \"try_own_example\";\n case TraceEvent.campaign_register_email:\n return \"campaign_register_email\";\n case TraceEvent.UNRECOGNIZED:\n default:\n return \"UNRECOGNIZED\";\n }\n}\n\nexport interface RadioButton {\n label: string;\n value: string;\n rawData: string;\n}\n\nexport interface RadioGroup {\n groupName: string;\n options: RadioButton[];\n selectedValue: string;\n defaultSelectedValue: string;\n}\n\nexport interface MultiSelectOption {\n fileName: string;\n plan: string;\n detailedPlan: string;\n fileChangeType: DiffType;\n}\n\nexport interface MultiSelect {\n groupName: string;\n options: MultiSelectOption[];\n selectedFileNames: string[];\n}\n\nexport interface TextBarInput {\n groupName: string;\n label: string;\n input: string;\n}\n\nexport interface ListSelectOption {\n label: string;\n value: string;\n rawData: string;\n}\n\nexport interface ListSelect {\n groupName: string;\n options: ListSelectOption[];\n selectedValue: string;\n defaultSelectedValue: string;\n}\n\nexport interface Form {\n groupName: string;\n formId: string;\n radioGroups: RadioGroup[];\n multiSelects: MultiSelect[];\n textBarInputs: TextBarInput[];\n listSelects: ListSelect[];\n rawData: string;\n}\n\nexport interface AgentInternalStatus {\n agentInternalStatus: AgentInternalEnum;\n agentInternalStatusMsg: string;\n}\n\nexport interface Step {\n stepDescription: string;\n mappingSheet: MappingSheet | undefined;\n}\n\nexport interface AddFlowSpec {\n base64EncodedSequenceDiagrams: string[];\n description: string;\n systemDetails: string;\n messageProcessingSteps: Step[];\n generalComments: string;\n}\n\nexport interface Image {\n imageExtension: string;\n imageBase64Content: string;\n}\n\nexport interface Env {\n url: string;\n envType: EnvType;\n}\n\nexport interface QuestionAskingInput {\n userQuery: string;\n base64EncodedImages: string[];\n mappingSheets: MappingSheet[];\n}\n\nexport interface AgentRequest {\n connectionType: ConnectionType;\n connectionDetail: ConnectionDetail | undefined;\n command: Command | undefined;\n metadata: Metadata | undefined;\n isStream: boolean;\n jsonMetadata: string;\n /** User ID */\n userId: number;\n diff: Diff[];\n codePlan: CodePlan | undefined;\n form: Form[];\n document: Documentation | undefined;\n munitScenarios: MunitScenarios | undefined;\n mappingSheet: MappingSheet[];\n sourceOutputExamples: SourceOutputExamples[];\n diffComments: DiffComment[];\n generalDiffComment: string;\n documentInlineComments: DocumentInlineComment[];\n inputOutputNotes: string;\n /** Organization ID */\n orgId: number;\n /** User name */\n userName: string;\n addFlowSpec:\n | AddFlowSpec\n | undefined;\n /** Device ID */\n deviceId: string;\n enableWebSearch: boolean;\n vmArgs: string;\n /** Is this a campaign task */\n isCampaign: boolean;\n /** Environment details */\n env:\n | Env\n | undefined;\n /** Additional user notes for a task */\n userNotes: string;\n /** Migration document input */\n migrationDocInput:\n | MigrationDocumentInput\n | undefined;\n /** DataWeave to Input/Output example */\n dwlToInputOutputExample:\n | DwlToInputOutputExample\n | undefined;\n /** Conversation UUID */\n uuid: string;\n munitNotes: string;\n runtimeSettings: RuntimeSettings | undefined;\n qaType: QuestionAnsweringType;\n codeEnhancerTaskType: CodeEnhancerTaskType;\n questionAskingInput: QuestionAskingInput | undefined;\n munitNumScenarios: number;\n munitEnableCoverage: boolean;\n agenticUiTesting: boolean;\n generateSeqDiag: boolean;\n generateFlowDiag: boolean;\n}\n\nexport interface RuntimeSettings {\n javaVersion: string;\n mavenVersion: string;\n settingsXmlRawTxt: string;\n settingsSecurityXmlRawTxt: string;\n}\n\nexport interface DwlToInputOutputExample {\n commandString: string;\n exampleType: SourceOutputExampleType;\n}\n\nexport interface QuestionAskingOutput {\n /** right now we only return the question asking output as a string */\n questionAskingOutput: string;\n /** final specification for the task in markdown format */\n finalSpecification: string;\n}\n\nexport interface ResponseContentStream {\n messageType: MessageType;\n deltaContent: string;\n jsonMetadata: string;\n taskMetadata: string;\n diff: Diff[];\n codePlan: CodePlan | undefined;\n form: Form[];\n document: Documentation | undefined;\n munitScenarios: MunitScenarios | undefined;\n dataweaveOutput: DataWeaveGenCodeOutput | undefined;\n agentInternalStatus: AgentInternalStatus | undefined;\n addFlowSpec: AddFlowSpec | undefined;\n migrationDocOutput: MigrationDocumentOutput | undefined;\n questionAskingOutput: QuestionAskingOutput | undefined;\n}\n\nexport interface MigrationDocumentInput {\n platform: IntegrationPlatform;\n endpointDesc: string;\n generateForAll: boolean;\n}\n\nexport interface MigrationDocumentOutput {\n docMd: string;\n}\n\nexport interface MappingSheet {\n id: string;\n base64EncodedXlsx: string;\n csv: string;\n}\n\nexport interface SourceOutputExamples {\n sourceData: string;\n outputData: string;\n sourceDataType: SourceOutputExampleType;\n outputDataType: SourceOutputExampleType;\n outputEdiSchemaType: EdiSchemaType | undefined;\n inputEdiSchemaType: EdiSchemaType | undefined;\n}\n\nexport interface EdiSchemaType {\n transactionVersion: string;\n transactionType: string;\n}\n\nexport interface JiraDetail {\n issueKey: string;\n accessToken: string;\n title: string;\n description: string;\n}\n\nexport interface SlackDetail {\n convoKey: string;\n}\n\nexport interface EclipseDetail {\n diffs: EclipseDiffsData | undefined;\n}\n\nexport interface EclipseDiffsData {\n}\n\nexport interface GithubDetail {\n accessToken: string;\n orgName: string;\n repoName: string;\n branchName: string;\n commitId: string;\n issueId: string;\n}\n\nexport interface ConnectionDetail {\n githubDetail?: GithubDetail | undefined;\n jiraDetail?: JiraDetail | undefined;\n slackDetail?: SlackDetail | undefined;\n eclipseDetail?: EclipseDetail | undefined;\n}\n\nexport interface CodeContext {\n /** Connections.TYPE_GITHUB | Connections.TYPE_BITBUCKET ... */\n connType: string;\n /** Organization name */\n orgName: string;\n /** Repository name */\n repoName: string;\n /** Branch name */\n branchName: string;\n commitId: string;\n /** S3 path to the tar file */\n s3TarFilePath: string;\n}\n\nexport interface Metadata {\n /** Connection details to fetch the code */\n codeConnectionDetail: ConnectionDetail | undefined;\n messages: Message[];\n /** Code context */\n codeContext:\n | CodeContext\n | undefined;\n /** Multiple code contexts */\n multiRepoCodeContext: CodeContext[];\n}\n\nexport interface Message {\n role: string;\n userName: string;\n content: string;\n messageType: MessageType;\n timestampMs: number;\n}\n\nexport interface Command {\n commandType: CommandType;\n commandString: string;\n images: Image[];\n}\n\nexport interface CodePlan {\n rawTxt: string;\n fileMultiSelect: MultiSelect | undefined;\n svgFlows: string[];\n}\n\nexport interface MunitScenarios {\n mdText: string;\n rawData: string;\n}\n\nexport interface DataWeaveGenCodeOutput {\n code: string;\n errorMsg: string;\n sourceData: string;\n outputData: string;\n userMarkdownMsg: string;\n}\n\nexport interface Diff {\n diffType: DiffType;\n aFilePath: string;\n bFilePath: string;\n aFileContent: string;\n bFileContent: string;\n patchBA: string;\n aCommitId: string;\n}\n\nexport interface DiffComment {\n comment: string;\n filePath: string;\n startLineNumber: number;\n endLineNumber: number;\n fileContent: string;\n}\n\nexport interface DocumentInlineComment {\n comment: string;\n startLineNumber: number;\n endLineNumber: number;\n}\n\nexport interface Documentation {\n flowDocMdTxt: string;\n flowDocMdHtmlPrLink: string;\n mappingSheetCsv: string;\n mappingSheetHtmlPrLink: string;\n mappingSheetMd: string;\n dwlMd: string;\n fullRepoMd: string;\n addFlowCode: string;\n addFlowSvgDiagram: string;\n}\n\nexport interface AgentStreamingResponse {\n responseContentStream: ResponseContentStream | undefined;\n}\n\nexport interface GetIndexReposRequest {\n userId: number;\n}\n\nexport interface GetIndexReposResponse {\n githubDetails: GithubDetail[];\n}\n\nexport interface AgentTaskRequest {\n taskId: number;\n agentRequest: AgentRequest | undefined;\n runSync: boolean;\n}\n\nexport interface AgentTaskResponse {\n taskId: number;\n taskStatus: AgentTaskStatus;\n metadata: string;\n}\n\nexport interface TaskStatusAndRequestResponseTuple {\n request: AgentRequest | undefined;\n response: AgentStreamingResponse[];\n taskStatus: AgentTaskStatus;\n createdTsSec: number;\n}\n\nexport interface DBAgentTaskRequestResponse {\n originalRequest: AgentRequest | undefined;\n orderedStateResponses: TaskStatusAndRequestResponseTuple[];\n}\n\nexport interface ConnectorKbAnnotationInputRequest {\n pomDep: string;\n configCode: string;\n actionCode: string;\n actionType: string;\n actionDescription: string;\n creatorEmail: string;\n snippetDescription: string;\n}\n\nexport interface ConnectorKbAnnotationInputResponse {\n result: string;\n}\n\nexport interface ConnectorKbAnnotationDisplayTaskRequest {\n}\n\nexport interface ConnectorKbAnnotationDisplayTaskTuple {\n pomDep: string;\n configKey: string;\n opKey: string;\n srcKey: string;\n}\n\nexport interface ConnectorKbAnnotationDisplayTaskResponse {\n tasks: ConnectorKbAnnotationDisplayTaskTuple[];\n}\n\nexport interface RepoMetadataRequest {\n userId: number;\n orgId: number;\n codeContext: CodeContext | undefined;\n platform: IntegrationPlatform;\n}\n\nexport interface RepoMetadataResponse {\n muleAllFlowNames: string[];\n muleApiFlowNames: string[];\n muleEventFlowNames: string[];\n}\n\nfunction createBaseRadioButton(): RadioButton {\n return { label: \"\", value: \"\", rawData: \"\" };\n}\n\nexport const RadioButton = {\n encode(message: RadioButton, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.label !== \"\") {\n writer.uint32(10).string(message.label);\n }\n if (message.value !== \"\") {\n writer.uint32(18).string(message.value);\n }\n if (message.rawData !== \"\") {\n writer.uint32(26).string(message.rawData);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RadioButton {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRadioButton();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.label = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.value = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.rawData = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): RadioButton {\n return {\n label: isSet(object.label) ? globalThis.String(object.label) : \"\",\n value: isSet(object.value) ? globalThis.String(object.value) : \"\",\n rawData: isSet(object.rawData) ? globalThis.String(object.rawData) : \"\",\n };\n },\n\n toJSON(message: RadioButton): unknown {\n const obj: any = {};\n if (message.label !== \"\") {\n obj.label = message.label;\n }\n if (message.value !== \"\") {\n obj.value = message.value;\n }\n if (message.rawData !== \"\") {\n obj.rawData = message.rawData;\n }\n return obj;\n },\n\n create, I>>(base?: I): RadioButton {\n return RadioButton.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): RadioButton {\n const message = createBaseRadioButton();\n message.label = object.label ?? \"\";\n message.value = object.value ?? \"\";\n message.rawData = object.rawData ?? \"\";\n return message;\n },\n};\n\nfunction createBaseRadioGroup(): RadioGroup {\n return { groupName: \"\", options: [], selectedValue: \"\", defaultSelectedValue: \"\" };\n}\n\nexport const RadioGroup = {\n encode(message: RadioGroup, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.groupName !== \"\") {\n writer.uint32(10).string(message.groupName);\n }\n for (const v of message.options) {\n RadioButton.encode(v!, writer.uint32(18).fork()).ldelim();\n }\n if (message.selectedValue !== \"\") {\n writer.uint32(26).string(message.selectedValue);\n }\n if (message.defaultSelectedValue !== \"\") {\n writer.uint32(34).string(message.defaultSelectedValue);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RadioGroup {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRadioGroup();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.groupName = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.options.push(RadioButton.decode(reader, reader.uint32()));\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.selectedValue = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.defaultSelectedValue = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): RadioGroup {\n return {\n groupName: isSet(object.groupName) ? globalThis.String(object.groupName) : \"\",\n options: globalThis.Array.isArray(object?.options) ? object.options.map((e: any) => RadioButton.fromJSON(e)) : [],\n selectedValue: isSet(object.selectedValue) ? globalThis.String(object.selectedValue) : \"\",\n defaultSelectedValue: isSet(object.defaultSelectedValue) ? globalThis.String(object.defaultSelectedValue) : \"\",\n };\n },\n\n toJSON(message: RadioGroup): unknown {\n const obj: any = {};\n if (message.groupName !== \"\") {\n obj.groupName = message.groupName;\n }\n if (message.options?.length) {\n obj.options = message.options.map((e) => RadioButton.toJSON(e));\n }\n if (message.selectedValue !== \"\") {\n obj.selectedValue = message.selectedValue;\n }\n if (message.defaultSelectedValue !== \"\") {\n obj.defaultSelectedValue = message.defaultSelectedValue;\n }\n return obj;\n },\n\n create, I>>(base?: I): RadioGroup {\n return RadioGroup.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): RadioGroup {\n const message = createBaseRadioGroup();\n message.groupName = object.groupName ?? \"\";\n message.options = object.options?.map((e) => RadioButton.fromPartial(e)) || [];\n message.selectedValue = object.selectedValue ?? \"\";\n message.defaultSelectedValue = object.defaultSelectedValue ?? \"\";\n return message;\n },\n};\n\nfunction createBaseMultiSelectOption(): MultiSelectOption {\n return { fileName: \"\", plan: \"\", detailedPlan: \"\", fileChangeType: 0 };\n}\n\nexport const MultiSelectOption = {\n encode(message: MultiSelectOption, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.fileName !== \"\") {\n writer.uint32(10).string(message.fileName);\n }\n if (message.plan !== \"\") {\n writer.uint32(18).string(message.plan);\n }\n if (message.detailedPlan !== \"\") {\n writer.uint32(26).string(message.detailedPlan);\n }\n if (message.fileChangeType !== 0) {\n writer.uint32(32).int32(message.fileChangeType);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): MultiSelectOption {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseMultiSelectOption();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.fileName = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.plan = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.detailedPlan = reader.string();\n continue;\n case 4:\n if (tag !== 32) {\n break;\n }\n\n message.fileChangeType = reader.int32() as any;\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): MultiSelectOption {\n return {\n fileName: isSet(object.fileName) ? globalThis.String(object.fileName) : \"\",\n plan: isSet(object.plan) ? globalThis.String(object.plan) : \"\",\n detailedPlan: isSet(object.detailedPlan) ? globalThis.String(object.detailedPlan) : \"\",\n fileChangeType: isSet(object.fileChangeType) ? diffTypeFromJSON(object.fileChangeType) : 0,\n };\n },\n\n toJSON(message: MultiSelectOption): unknown {\n const obj: any = {};\n if (message.fileName !== \"\") {\n obj.fileName = message.fileName;\n }\n if (message.plan !== \"\") {\n obj.plan = message.plan;\n }\n if (message.detailedPlan !== \"\") {\n obj.detailedPlan = message.detailedPlan;\n }\n if (message.fileChangeType !== 0) {\n obj.fileChangeType = diffTypeToJSON(message.fileChangeType);\n }\n return obj;\n },\n\n create, I>>(base?: I): MultiSelectOption {\n return MultiSelectOption.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): MultiSelectOption {\n const message = createBaseMultiSelectOption();\n message.fileName = object.fileName ?? \"\";\n message.plan = object.plan ?? \"\";\n message.detailedPlan = object.detailedPlan ?? \"\";\n message.fileChangeType = object.fileChangeType ?? 0;\n return message;\n },\n};\n\nfunction createBaseMultiSelect(): MultiSelect {\n return { groupName: \"\", options: [], selectedFileNames: [] };\n}\n\nexport const MultiSelect = {\n encode(message: MultiSelect, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.groupName !== \"\") {\n writer.uint32(10).string(message.groupName);\n }\n for (const v of message.options) {\n MultiSelectOption.encode(v!, writer.uint32(18).fork()).ldelim();\n }\n for (const v of message.selectedFileNames) {\n writer.uint32(26).string(v!);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): MultiSelect {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseMultiSelect();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.groupName = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.options.push(MultiSelectOption.decode(reader, reader.uint32()));\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.selectedFileNames.push(reader.string());\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): MultiSelect {\n return {\n groupName: isSet(object.groupName) ? globalThis.String(object.groupName) : \"\",\n options: globalThis.Array.isArray(object?.options)\n ? object.options.map((e: any) => MultiSelectOption.fromJSON(e))\n : [],\n selectedFileNames: globalThis.Array.isArray(object?.selectedFileNames)\n ? object.selectedFileNames.map((e: any) => globalThis.String(e))\n : [],\n };\n },\n\n toJSON(message: MultiSelect): unknown {\n const obj: any = {};\n if (message.groupName !== \"\") {\n obj.groupName = message.groupName;\n }\n if (message.options?.length) {\n obj.options = message.options.map((e) => MultiSelectOption.toJSON(e));\n }\n if (message.selectedFileNames?.length) {\n obj.selectedFileNames = message.selectedFileNames;\n }\n return obj;\n },\n\n create, I>>(base?: I): MultiSelect {\n return MultiSelect.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): MultiSelect {\n const message = createBaseMultiSelect();\n message.groupName = object.groupName ?? \"\";\n message.options = object.options?.map((e) => MultiSelectOption.fromPartial(e)) || [];\n message.selectedFileNames = object.selectedFileNames?.map((e) => e) || [];\n return message;\n },\n};\n\nfunction createBaseTextBarInput(): TextBarInput {\n return { groupName: \"\", label: \"\", input: \"\" };\n}\n\nexport const TextBarInput = {\n encode(message: TextBarInput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.groupName !== \"\") {\n writer.uint32(10).string(message.groupName);\n }\n if (message.label !== \"\") {\n writer.uint32(18).string(message.label);\n }\n if (message.input !== \"\") {\n writer.uint32(26).string(message.input);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): TextBarInput {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseTextBarInput();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.groupName = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.label = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.input = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): TextBarInput {\n return {\n groupName: isSet(object.groupName) ? globalThis.String(object.groupName) : \"\",\n label: isSet(object.label) ? globalThis.String(object.label) : \"\",\n input: isSet(object.input) ? globalThis.String(object.input) : \"\",\n };\n },\n\n toJSON(message: TextBarInput): unknown {\n const obj: any = {};\n if (message.groupName !== \"\") {\n obj.groupName = message.groupName;\n }\n if (message.label !== \"\") {\n obj.label = message.label;\n }\n if (message.input !== \"\") {\n obj.input = message.input;\n }\n return obj;\n },\n\n create, I>>(base?: I): TextBarInput {\n return TextBarInput.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): TextBarInput {\n const message = createBaseTextBarInput();\n message.groupName = object.groupName ?? \"\";\n message.label = object.label ?? \"\";\n message.input = object.input ?? \"\";\n return message;\n },\n};\n\nfunction createBaseListSelectOption(): ListSelectOption {\n return { label: \"\", value: \"\", rawData: \"\" };\n}\n\nexport const ListSelectOption = {\n encode(message: ListSelectOption, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.label !== \"\") {\n writer.uint32(10).string(message.label);\n }\n if (message.value !== \"\") {\n writer.uint32(18).string(message.value);\n }\n if (message.rawData !== \"\") {\n writer.uint32(26).string(message.rawData);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ListSelectOption {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseListSelectOption();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.label = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.value = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.rawData = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): ListSelectOption {\n return {\n label: isSet(object.label) ? globalThis.String(object.label) : \"\",\n value: isSet(object.value) ? globalThis.String(object.value) : \"\",\n rawData: isSet(object.rawData) ? globalThis.String(object.rawData) : \"\",\n };\n },\n\n toJSON(message: ListSelectOption): unknown {\n const obj: any = {};\n if (message.label !== \"\") {\n obj.label = message.label;\n }\n if (message.value !== \"\") {\n obj.value = message.value;\n }\n if (message.rawData !== \"\") {\n obj.rawData = message.rawData;\n }\n return obj;\n },\n\n create, I>>(base?: I): ListSelectOption {\n return ListSelectOption.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): ListSelectOption {\n const message = createBaseListSelectOption();\n message.label = object.label ?? \"\";\n message.value = object.value ?? \"\";\n message.rawData = object.rawData ?? \"\";\n return message;\n },\n};\n\nfunction createBaseListSelect(): ListSelect {\n return { groupName: \"\", options: [], selectedValue: \"\", defaultSelectedValue: \"\" };\n}\n\nexport const ListSelect = {\n encode(message: ListSelect, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.groupName !== \"\") {\n writer.uint32(10).string(message.groupName);\n }\n for (const v of message.options) {\n ListSelectOption.encode(v!, writer.uint32(18).fork()).ldelim();\n }\n if (message.selectedValue !== \"\") {\n writer.uint32(26).string(message.selectedValue);\n }\n if (message.defaultSelectedValue !== \"\") {\n writer.uint32(34).string(message.defaultSelectedValue);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ListSelect {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseListSelect();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.groupName = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.options.push(ListSelectOption.decode(reader, reader.uint32()));\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.selectedValue = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.defaultSelectedValue = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): ListSelect {\n return {\n groupName: isSet(object.groupName) ? globalThis.String(object.groupName) : \"\",\n options: globalThis.Array.isArray(object?.options)\n ? object.options.map((e: any) => ListSelectOption.fromJSON(e))\n : [],\n selectedValue: isSet(object.selectedValue) ? globalThis.String(object.selectedValue) : \"\",\n defaultSelectedValue: isSet(object.defaultSelectedValue) ? globalThis.String(object.defaultSelectedValue) : \"\",\n };\n },\n\n toJSON(message: ListSelect): unknown {\n const obj: any = {};\n if (message.groupName !== \"\") {\n obj.groupName = message.groupName;\n }\n if (message.options?.length) {\n obj.options = message.options.map((e) => ListSelectOption.toJSON(e));\n }\n if (message.selectedValue !== \"\") {\n obj.selectedValue = message.selectedValue;\n }\n if (message.defaultSelectedValue !== \"\") {\n obj.defaultSelectedValue = message.defaultSelectedValue;\n }\n return obj;\n },\n\n create, I>>(base?: I): ListSelect {\n return ListSelect.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): ListSelect {\n const message = createBaseListSelect();\n message.groupName = object.groupName ?? \"\";\n message.options = object.options?.map((e) => ListSelectOption.fromPartial(e)) || [];\n message.selectedValue = object.selectedValue ?? \"\";\n message.defaultSelectedValue = object.defaultSelectedValue ?? \"\";\n return message;\n },\n};\n\nfunction createBaseForm(): Form {\n return {\n groupName: \"\",\n formId: \"\",\n radioGroups: [],\n multiSelects: [],\n textBarInputs: [],\n listSelects: [],\n rawData: \"\",\n };\n}\n\nexport const Form = {\n encode(message: Form, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.groupName !== \"\") {\n writer.uint32(10).string(message.groupName);\n }\n if (message.formId !== \"\") {\n writer.uint32(18).string(message.formId);\n }\n for (const v of message.radioGroups) {\n RadioGroup.encode(v!, writer.uint32(26).fork()).ldelim();\n }\n for (const v of message.multiSelects) {\n MultiSelect.encode(v!, writer.uint32(34).fork()).ldelim();\n }\n for (const v of message.textBarInputs) {\n TextBarInput.encode(v!, writer.uint32(42).fork()).ldelim();\n }\n for (const v of message.listSelects) {\n ListSelect.encode(v!, writer.uint32(50).fork()).ldelim();\n }\n if (message.rawData !== \"\") {\n writer.uint32(58).string(message.rawData);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): Form {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseForm();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.groupName = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.formId = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.radioGroups.push(RadioGroup.decode(reader, reader.uint32()));\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.multiSelects.push(MultiSelect.decode(reader, reader.uint32()));\n continue;\n case 5:\n if (tag !== 42) {\n break;\n }\n\n message.textBarInputs.push(TextBarInput.decode(reader, reader.uint32()));\n continue;\n case 6:\n if (tag !== 50) {\n break;\n }\n\n message.listSelects.push(ListSelect.decode(reader, reader.uint32()));\n continue;\n case 7:\n if (tag !== 58) {\n break;\n }\n\n message.rawData = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): Form {\n return {\n groupName: isSet(object.groupName) ? globalThis.String(object.groupName) : \"\",\n formId: isSet(object.formId) ? globalThis.String(object.formId) : \"\",\n radioGroups: globalThis.Array.isArray(object?.radioGroups)\n ? object.radioGroups.map((e: any) => RadioGroup.fromJSON(e))\n : [],\n multiSelects: globalThis.Array.isArray(object?.multiSelects)\n ? object.multiSelects.map((e: any) => MultiSelect.fromJSON(e))\n : [],\n textBarInputs: globalThis.Array.isArray(object?.textBarInputs)\n ? object.textBarInputs.map((e: any) => TextBarInput.fromJSON(e))\n : [],\n listSelects: globalThis.Array.isArray(object?.listSelects)\n ? object.listSelects.map((e: any) => ListSelect.fromJSON(e))\n : [],\n rawData: isSet(object.rawData) ? globalThis.String(object.rawData) : \"\",\n };\n },\n\n toJSON(message: Form): unknown {\n const obj: any = {};\n if (message.groupName !== \"\") {\n obj.groupName = message.groupName;\n }\n if (message.formId !== \"\") {\n obj.formId = message.formId;\n }\n if (message.radioGroups?.length) {\n obj.radioGroups = message.radioGroups.map((e) => RadioGroup.toJSON(e));\n }\n if (message.multiSelects?.length) {\n obj.multiSelects = message.multiSelects.map((e) => MultiSelect.toJSON(e));\n }\n if (message.textBarInputs?.length) {\n obj.textBarInputs = message.textBarInputs.map((e) => TextBarInput.toJSON(e));\n }\n if (message.listSelects?.length) {\n obj.listSelects = message.listSelects.map((e) => ListSelect.toJSON(e));\n }\n if (message.rawData !== \"\") {\n obj.rawData = message.rawData;\n }\n return obj;\n },\n\n create, I>>(base?: I): Form {\n return Form.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): Form {\n const message = createBaseForm();\n message.groupName = object.groupName ?? \"\";\n message.formId = object.formId ?? \"\";\n message.radioGroups = object.radioGroups?.map((e) => RadioGroup.fromPartial(e)) || [];\n message.multiSelects = object.multiSelects?.map((e) => MultiSelect.fromPartial(e)) || [];\n message.textBarInputs = object.textBarInputs?.map((e) => TextBarInput.fromPartial(e)) || [];\n message.listSelects = object.listSelects?.map((e) => ListSelect.fromPartial(e)) || [];\n message.rawData = object.rawData ?? \"\";\n return message;\n },\n};\n\nfunction createBaseAgentInternalStatus(): AgentInternalStatus {\n return { agentInternalStatus: 0, agentInternalStatusMsg: \"\" };\n}\n\nexport const AgentInternalStatus = {\n encode(message: AgentInternalStatus, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.agentInternalStatus !== 0) {\n writer.uint32(8).int32(message.agentInternalStatus);\n }\n if (message.agentInternalStatusMsg !== \"\") {\n writer.uint32(18).string(message.agentInternalStatusMsg);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): AgentInternalStatus {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseAgentInternalStatus();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 8) {\n break;\n }\n\n message.agentInternalStatus = reader.int32() as any;\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.agentInternalStatusMsg = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): AgentInternalStatus {\n return {\n agentInternalStatus: isSet(object.agentInternalStatus)\n ? agentInternalEnumFromJSON(object.agentInternalStatus)\n : 0,\n agentInternalStatusMsg: isSet(object.agentInternalStatusMsg)\n ? globalThis.String(object.agentInternalStatusMsg)\n : \"\",\n };\n },\n\n toJSON(message: AgentInternalStatus): unknown {\n const obj: any = {};\n if (message.agentInternalStatus !== 0) {\n obj.agentInternalStatus = agentInternalEnumToJSON(message.agentInternalStatus);\n }\n if (message.agentInternalStatusMsg !== \"\") {\n obj.agentInternalStatusMsg = message.agentInternalStatusMsg;\n }\n return obj;\n },\n\n create, I>>(base?: I): AgentInternalStatus {\n return AgentInternalStatus.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): AgentInternalStatus {\n const message = createBaseAgentInternalStatus();\n message.agentInternalStatus = object.agentInternalStatus ?? 0;\n message.agentInternalStatusMsg = object.agentInternalStatusMsg ?? \"\";\n return message;\n },\n};\n\nfunction createBaseStep(): Step {\n return { stepDescription: \"\", mappingSheet: undefined };\n}\n\nexport const Step = {\n encode(message: Step, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.stepDescription !== \"\") {\n writer.uint32(10).string(message.stepDescription);\n }\n if (message.mappingSheet !== undefined) {\n MappingSheet.encode(message.mappingSheet, writer.uint32(18).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): Step {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseStep();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.stepDescription = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.mappingSheet = MappingSheet.decode(reader, reader.uint32());\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): Step {\n return {\n stepDescription: isSet(object.stepDescription) ? globalThis.String(object.stepDescription) : \"\",\n mappingSheet: isSet(object.mappingSheet) ? MappingSheet.fromJSON(object.mappingSheet) : undefined,\n };\n },\n\n toJSON(message: Step): unknown {\n const obj: any = {};\n if (message.stepDescription !== \"\") {\n obj.stepDescription = message.stepDescription;\n }\n if (message.mappingSheet !== undefined) {\n obj.mappingSheet = MappingSheet.toJSON(message.mappingSheet);\n }\n return obj;\n },\n\n create, I>>(base?: I): Step {\n return Step.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): Step {\n const message = createBaseStep();\n message.stepDescription = object.stepDescription ?? \"\";\n message.mappingSheet = (object.mappingSheet !== undefined && object.mappingSheet !== null)\n ? MappingSheet.fromPartial(object.mappingSheet)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseAddFlowSpec(): AddFlowSpec {\n return {\n base64EncodedSequenceDiagrams: [],\n description: \"\",\n systemDetails: \"\",\n messageProcessingSteps: [],\n generalComments: \"\",\n };\n}\n\nexport const AddFlowSpec = {\n encode(message: AddFlowSpec, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n for (const v of message.base64EncodedSequenceDiagrams) {\n writer.uint32(10).string(v!);\n }\n if (message.description !== \"\") {\n writer.uint32(18).string(message.description);\n }\n if (message.systemDetails !== \"\") {\n writer.uint32(26).string(message.systemDetails);\n }\n for (const v of message.messageProcessingSteps) {\n Step.encode(v!, writer.uint32(34).fork()).ldelim();\n }\n if (message.generalComments !== \"\") {\n writer.uint32(42).string(message.generalComments);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): AddFlowSpec {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseAddFlowSpec();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.base64EncodedSequenceDiagrams.push(reader.string());\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.description = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.systemDetails = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.messageProcessingSteps.push(Step.decode(reader, reader.uint32()));\n continue;\n case 5:\n if (tag !== 42) {\n break;\n }\n\n message.generalComments = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): AddFlowSpec {\n return {\n base64EncodedSequenceDiagrams: globalThis.Array.isArray(object?.base64EncodedSequenceDiagrams)\n ? object.base64EncodedSequenceDiagrams.map((e: any) => globalThis.String(e))\n : [],\n description: isSet(object.description) ? globalThis.String(object.description) : \"\",\n systemDetails: isSet(object.systemDetails) ? globalThis.String(object.systemDetails) : \"\",\n messageProcessingSteps: globalThis.Array.isArray(object?.messageProcessingSteps)\n ? object.messageProcessingSteps.map((e: any) => Step.fromJSON(e))\n : [],\n generalComments: isSet(object.generalComments) ? globalThis.String(object.generalComments) : \"\",\n };\n },\n\n toJSON(message: AddFlowSpec): unknown {\n const obj: any = {};\n if (message.base64EncodedSequenceDiagrams?.length) {\n obj.base64EncodedSequenceDiagrams = message.base64EncodedSequenceDiagrams;\n }\n if (message.description !== \"\") {\n obj.description = message.description;\n }\n if (message.systemDetails !== \"\") {\n obj.systemDetails = message.systemDetails;\n }\n if (message.messageProcessingSteps?.length) {\n obj.messageProcessingSteps = message.messageProcessingSteps.map((e) => Step.toJSON(e));\n }\n if (message.generalComments !== \"\") {\n obj.generalComments = message.generalComments;\n }\n return obj;\n },\n\n create, I>>(base?: I): AddFlowSpec {\n return AddFlowSpec.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): AddFlowSpec {\n const message = createBaseAddFlowSpec();\n message.base64EncodedSequenceDiagrams = object.base64EncodedSequenceDiagrams?.map((e) => e) || [];\n message.description = object.description ?? \"\";\n message.systemDetails = object.systemDetails ?? \"\";\n message.messageProcessingSteps = object.messageProcessingSteps?.map((e) => Step.fromPartial(e)) || [];\n message.generalComments = object.generalComments ?? \"\";\n return message;\n },\n};\n\nfunction createBaseImage(): Image {\n return { imageExtension: \"\", imageBase64Content: \"\" };\n}\n\nexport const Image = {\n encode(message: Image, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.imageExtension !== \"\") {\n writer.uint32(10).string(message.imageExtension);\n }\n if (message.imageBase64Content !== \"\") {\n writer.uint32(18).string(message.imageBase64Content);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): Image {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseImage();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.imageExtension = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.imageBase64Content = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): Image {\n return {\n imageExtension: isSet(object.imageExtension) ? globalThis.String(object.imageExtension) : \"\",\n imageBase64Content: isSet(object.imageBase64Content) ? globalThis.String(object.imageBase64Content) : \"\",\n };\n },\n\n toJSON(message: Image): unknown {\n const obj: any = {};\n if (message.imageExtension !== \"\") {\n obj.imageExtension = message.imageExtension;\n }\n if (message.imageBase64Content !== \"\") {\n obj.imageBase64Content = message.imageBase64Content;\n }\n return obj;\n },\n\n create, I>>(base?: I): Image {\n return Image.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): Image {\n const message = createBaseImage();\n message.imageExtension = object.imageExtension ?? \"\";\n message.imageBase64Content = object.imageBase64Content ?? \"\";\n return message;\n },\n};\n\nfunction createBaseEnv(): Env {\n return { url: \"\", envType: 0 };\n}\n\nexport const Env = {\n encode(message: Env, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.url !== \"\") {\n writer.uint32(10).string(message.url);\n }\n if (message.envType !== 0) {\n writer.uint32(16).int32(message.envType);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): Env {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseEnv();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.url = reader.string();\n continue;\n case 2:\n if (tag !== 16) {\n break;\n }\n\n message.envType = reader.int32() as any;\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): Env {\n return {\n url: isSet(object.url) ? globalThis.String(object.url) : \"\",\n envType: isSet(object.envType) ? envTypeFromJSON(object.envType) : 0,\n };\n },\n\n toJSON(message: Env): unknown {\n const obj: any = {};\n if (message.url !== \"\") {\n obj.url = message.url;\n }\n if (message.envType !== 0) {\n obj.envType = envTypeToJSON(message.envType);\n }\n return obj;\n },\n\n create, I>>(base?: I): Env {\n return Env.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): Env {\n const message = createBaseEnv();\n message.url = object.url ?? \"\";\n message.envType = object.envType ?? 0;\n return message;\n },\n};\n\nfunction createBaseQuestionAskingInput(): QuestionAskingInput {\n return { userQuery: \"\", base64EncodedImages: [], mappingSheets: [] };\n}\n\nexport const QuestionAskingInput = {\n encode(message: QuestionAskingInput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.userQuery !== \"\") {\n writer.uint32(10).string(message.userQuery);\n }\n for (const v of message.base64EncodedImages) {\n writer.uint32(18).string(v!);\n }\n for (const v of message.mappingSheets) {\n MappingSheet.encode(v!, writer.uint32(26).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): QuestionAskingInput {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseQuestionAskingInput();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.userQuery = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.base64EncodedImages.push(reader.string());\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.mappingSheets.push(MappingSheet.decode(reader, reader.uint32()));\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): QuestionAskingInput {\n return {\n userQuery: isSet(object.userQuery) ? globalThis.String(object.userQuery) : \"\",\n base64EncodedImages: globalThis.Array.isArray(object?.base64EncodedImages)\n ? object.base64EncodedImages.map((e: any) => globalThis.String(e))\n : [],\n mappingSheets: globalThis.Array.isArray(object?.mappingSheets)\n ? object.mappingSheets.map((e: any) => MappingSheet.fromJSON(e))\n : [],\n };\n },\n\n toJSON(message: QuestionAskingInput): unknown {\n const obj: any = {};\n if (message.userQuery !== \"\") {\n obj.userQuery = message.userQuery;\n }\n if (message.base64EncodedImages?.length) {\n obj.base64EncodedImages = message.base64EncodedImages;\n }\n if (message.mappingSheets?.length) {\n obj.mappingSheets = message.mappingSheets.map((e) => MappingSheet.toJSON(e));\n }\n return obj;\n },\n\n create, I>>(base?: I): QuestionAskingInput {\n return QuestionAskingInput.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): QuestionAskingInput {\n const message = createBaseQuestionAskingInput();\n message.userQuery = object.userQuery ?? \"\";\n message.base64EncodedImages = object.base64EncodedImages?.map((e) => e) || [];\n message.mappingSheets = object.mappingSheets?.map((e) => MappingSheet.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseAgentRequest(): AgentRequest {\n return {\n connectionType: 0,\n connectionDetail: undefined,\n command: undefined,\n metadata: undefined,\n isStream: false,\n jsonMetadata: \"\",\n userId: 0,\n diff: [],\n codePlan: undefined,\n form: [],\n document: undefined,\n munitScenarios: undefined,\n mappingSheet: [],\n sourceOutputExamples: [],\n diffComments: [],\n generalDiffComment: \"\",\n documentInlineComments: [],\n inputOutputNotes: \"\",\n orgId: 0,\n userName: \"\",\n addFlowSpec: undefined,\n deviceId: \"\",\n enableWebSearch: false,\n vmArgs: \"\",\n isCampaign: false,\n env: undefined,\n userNotes: \"\",\n migrationDocInput: undefined,\n dwlToInputOutputExample: undefined,\n uuid: \"\",\n munitNotes: \"\",\n runtimeSettings: undefined,\n qaType: 0,\n codeEnhancerTaskType: 0,\n questionAskingInput: undefined,\n munitNumScenarios: 0,\n munitEnableCoverage: false,\n agenticUiTesting: false,\n generateSeqDiag: false,\n generateFlowDiag: false,\n };\n}\n\nexport const AgentRequest = {\n encode(message: AgentRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.connectionType !== 0) {\n writer.uint32(8).int32(message.connectionType);\n }\n if (message.connectionDetail !== undefined) {\n ConnectionDetail.encode(message.connectionDetail, writer.uint32(18).fork()).ldelim();\n }\n if (message.command !== undefined) {\n Command.encode(message.command, writer.uint32(26).fork()).ldelim();\n }\n if (message.metadata !== undefined) {\n Metadata.encode(message.metadata, writer.uint32(34).fork()).ldelim();\n }\n if (message.isStream !== false) {\n writer.uint32(40).bool(message.isStream);\n }\n if (message.jsonMetadata !== \"\") {\n writer.uint32(50).string(message.jsonMetadata);\n }\n if (message.userId !== 0) {\n writer.uint32(56).int64(message.userId);\n }\n for (const v of message.diff) {\n Diff.encode(v!, writer.uint32(66).fork()).ldelim();\n }\n if (message.codePlan !== undefined) {\n CodePlan.encode(message.codePlan, writer.uint32(74).fork()).ldelim();\n }\n for (const v of message.form) {\n Form.encode(v!, writer.uint32(82).fork()).ldelim();\n }\n if (message.document !== undefined) {\n Documentation.encode(message.document, writer.uint32(98).fork()).ldelim();\n }\n if (message.munitScenarios !== undefined) {\n MunitScenarios.encode(message.munitScenarios, writer.uint32(106).fork()).ldelim();\n }\n for (const v of message.mappingSheet) {\n MappingSheet.encode(v!, writer.uint32(114).fork()).ldelim();\n }\n for (const v of message.sourceOutputExamples) {\n SourceOutputExamples.encode(v!, writer.uint32(122).fork()).ldelim();\n }\n for (const v of message.diffComments) {\n DiffComment.encode(v!, writer.uint32(130).fork()).ldelim();\n }\n if (message.generalDiffComment !== \"\") {\n writer.uint32(138).string(message.generalDiffComment);\n }\n for (const v of message.documentInlineComments) {\n DocumentInlineComment.encode(v!, writer.uint32(146).fork()).ldelim();\n }\n if (message.inputOutputNotes !== \"\") {\n writer.uint32(154).string(message.inputOutputNotes);\n }\n if (message.orgId !== 0) {\n writer.uint32(160).int64(message.orgId);\n }\n if (message.userName !== \"\") {\n writer.uint32(170).string(message.userName);\n }\n if (message.addFlowSpec !== undefined) {\n AddFlowSpec.encode(message.addFlowSpec, writer.uint32(178).fork()).ldelim();\n }\n if (message.deviceId !== \"\") {\n writer.uint32(186).string(message.deviceId);\n }\n if (message.enableWebSearch !== false) {\n writer.uint32(192).bool(message.enableWebSearch);\n }\n if (message.vmArgs !== \"\") {\n writer.uint32(202).string(message.vmArgs);\n }\n if (message.isCampaign !== false) {\n writer.uint32(208).bool(message.isCampaign);\n }\n if (message.env !== undefined) {\n Env.encode(message.env, writer.uint32(218).fork()).ldelim();\n }\n if (message.userNotes !== \"\") {\n writer.uint32(226).string(message.userNotes);\n }\n if (message.migrationDocInput !== undefined) {\n MigrationDocumentInput.encode(message.migrationDocInput, writer.uint32(234).fork()).ldelim();\n }\n if (message.dwlToInputOutputExample !== undefined) {\n DwlToInputOutputExample.encode(message.dwlToInputOutputExample, writer.uint32(242).fork()).ldelim();\n }\n if (message.uuid !== \"\") {\n writer.uint32(250).string(message.uuid);\n }\n if (message.munitNotes !== \"\") {\n writer.uint32(258).string(message.munitNotes);\n }\n if (message.runtimeSettings !== undefined) {\n RuntimeSettings.encode(message.runtimeSettings, writer.uint32(266).fork()).ldelim();\n }\n if (message.qaType !== 0) {\n writer.uint32(272).int32(message.qaType);\n }\n if (message.codeEnhancerTaskType !== 0) {\n writer.uint32(280).int32(message.codeEnhancerTaskType);\n }\n if (message.questionAskingInput !== undefined) {\n QuestionAskingInput.encode(message.questionAskingInput, writer.uint32(290).fork()).ldelim();\n }\n if (message.munitNumScenarios !== 0) {\n writer.uint32(296).int64(message.munitNumScenarios);\n }\n if (message.munitEnableCoverage !== false) {\n writer.uint32(304).bool(message.munitEnableCoverage);\n }\n if (message.agenticUiTesting !== false) {\n writer.uint32(312).bool(message.agenticUiTesting);\n }\n if (message.generateSeqDiag !== false) {\n writer.uint32(320).bool(message.generateSeqDiag);\n }\n if (message.generateFlowDiag !== false) {\n writer.uint32(328).bool(message.generateFlowDiag);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): AgentRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseAgentRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 8) {\n break;\n }\n\n message.connectionType = reader.int32() as any;\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.connectionDetail = ConnectionDetail.decode(reader, reader.uint32());\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.command = Command.decode(reader, reader.uint32());\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.metadata = Metadata.decode(reader, reader.uint32());\n continue;\n case 5:\n if (tag !== 40) {\n break;\n }\n\n message.isStream = reader.bool();\n continue;\n case 6:\n if (tag !== 50) {\n break;\n }\n\n message.jsonMetadata = reader.string();\n continue;\n case 7:\n if (tag !== 56) {\n break;\n }\n\n message.userId = longToNumber(reader.int64() as Long);\n continue;\n case 8:\n if (tag !== 66) {\n break;\n }\n\n message.diff.push(Diff.decode(reader, reader.uint32()));\n continue;\n case 9:\n if (tag !== 74) {\n break;\n }\n\n message.codePlan = CodePlan.decode(reader, reader.uint32());\n continue;\n case 10:\n if (tag !== 82) {\n break;\n }\n\n message.form.push(Form.decode(reader, reader.uint32()));\n continue;\n case 12:\n if (tag !== 98) {\n break;\n }\n\n message.document = Documentation.decode(reader, reader.uint32());\n continue;\n case 13:\n if (tag !== 106) {\n break;\n }\n\n message.munitScenarios = MunitScenarios.decode(reader, reader.uint32());\n continue;\n case 14:\n if (tag !== 114) {\n break;\n }\n\n message.mappingSheet.push(MappingSheet.decode(reader, reader.uint32()));\n continue;\n case 15:\n if (tag !== 122) {\n break;\n }\n\n message.sourceOutputExamples.push(SourceOutputExamples.decode(reader, reader.uint32()));\n continue;\n case 16:\n if (tag !== 130) {\n break;\n }\n\n message.diffComments.push(DiffComment.decode(reader, reader.uint32()));\n continue;\n case 17:\n if (tag !== 138) {\n break;\n }\n\n message.generalDiffComment = reader.string();\n continue;\n case 18:\n if (tag !== 146) {\n break;\n }\n\n message.documentInlineComments.push(DocumentInlineComment.decode(reader, reader.uint32()));\n continue;\n case 19:\n if (tag !== 154) {\n break;\n }\n\n message.inputOutputNotes = reader.string();\n continue;\n case 20:\n if (tag !== 160) {\n break;\n }\n\n message.orgId = longToNumber(reader.int64() as Long);\n continue;\n case 21:\n if (tag !== 170) {\n break;\n }\n\n message.userName = reader.string();\n continue;\n case 22:\n if (tag !== 178) {\n break;\n }\n\n message.addFlowSpec = AddFlowSpec.decode(reader, reader.uint32());\n continue;\n case 23:\n if (tag !== 186) {\n break;\n }\n\n message.deviceId = reader.string();\n continue;\n case 24:\n if (tag !== 192) {\n break;\n }\n\n message.enableWebSearch = reader.bool();\n continue;\n case 25:\n if (tag !== 202) {\n break;\n }\n\n message.vmArgs = reader.string();\n continue;\n case 26:\n if (tag !== 208) {\n break;\n }\n\n message.isCampaign = reader.bool();\n continue;\n case 27:\n if (tag !== 218) {\n break;\n }\n\n message.env = Env.decode(reader, reader.uint32());\n continue;\n case 28:\n if (tag !== 226) {\n break;\n }\n\n message.userNotes = reader.string();\n continue;\n case 29:\n if (tag !== 234) {\n break;\n }\n\n message.migrationDocInput = MigrationDocumentInput.decode(reader, reader.uint32());\n continue;\n case 30:\n if (tag !== 242) {\n break;\n }\n\n message.dwlToInputOutputExample = DwlToInputOutputExample.decode(reader, reader.uint32());\n continue;\n case 31:\n if (tag !== 250) {\n break;\n }\n\n message.uuid = reader.string();\n continue;\n case 32:\n if (tag !== 258) {\n break;\n }\n\n message.munitNotes = reader.string();\n continue;\n case 33:\n if (tag !== 266) {\n break;\n }\n\n message.runtimeSettings = RuntimeSettings.decode(reader, reader.uint32());\n continue;\n case 34:\n if (tag !== 272) {\n break;\n }\n\n message.qaType = reader.int32() as any;\n continue;\n case 35:\n if (tag !== 280) {\n break;\n }\n\n message.codeEnhancerTaskType = reader.int32() as any;\n continue;\n case 36:\n if (tag !== 290) {\n break;\n }\n\n message.questionAskingInput = QuestionAskingInput.decode(reader, reader.uint32());\n continue;\n case 37:\n if (tag !== 296) {\n break;\n }\n\n message.munitNumScenarios = longToNumber(reader.int64() as Long);\n continue;\n case 38:\n if (tag !== 304) {\n break;\n }\n\n message.munitEnableCoverage = reader.bool();\n continue;\n case 39:\n if (tag !== 312) {\n break;\n }\n\n message.agenticUiTesting = reader.bool();\n continue;\n case 40:\n if (tag !== 320) {\n break;\n }\n\n message.generateSeqDiag = reader.bool();\n continue;\n case 41:\n if (tag !== 328) {\n break;\n }\n\n message.generateFlowDiag = reader.bool();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): AgentRequest {\n return {\n connectionType: isSet(object.connectionType) ? connectionTypeFromJSON(object.connectionType) : 0,\n connectionDetail: isSet(object.connectionDetail) ? ConnectionDetail.fromJSON(object.connectionDetail) : undefined,\n command: isSet(object.command) ? Command.fromJSON(object.command) : undefined,\n metadata: isSet(object.metadata) ? Metadata.fromJSON(object.metadata) : undefined,\n isStream: isSet(object.isStream) ? globalThis.Boolean(object.isStream) : false,\n jsonMetadata: isSet(object.jsonMetadata) ? globalThis.String(object.jsonMetadata) : \"\",\n userId: isSet(object.userId) ? globalThis.Number(object.userId) : 0,\n diff: globalThis.Array.isArray(object?.diff) ? object.diff.map((e: any) => Diff.fromJSON(e)) : [],\n codePlan: isSet(object.codePlan) ? CodePlan.fromJSON(object.codePlan) : undefined,\n form: globalThis.Array.isArray(object?.form) ? object.form.map((e: any) => Form.fromJSON(e)) : [],\n document: isSet(object.document) ? Documentation.fromJSON(object.document) : undefined,\n munitScenarios: isSet(object.munitScenarios) ? MunitScenarios.fromJSON(object.munitScenarios) : undefined,\n mappingSheet: globalThis.Array.isArray(object?.mappingSheet)\n ? object.mappingSheet.map((e: any) => MappingSheet.fromJSON(e))\n : [],\n sourceOutputExamples: globalThis.Array.isArray(object?.sourceOutputExamples)\n ? object.sourceOutputExamples.map((e: any) => SourceOutputExamples.fromJSON(e))\n : [],\n diffComments: globalThis.Array.isArray(object?.diffComments)\n ? object.diffComments.map((e: any) => DiffComment.fromJSON(e))\n : [],\n generalDiffComment: isSet(object.generalDiffComment) ? globalThis.String(object.generalDiffComment) : \"\",\n documentInlineComments: globalThis.Array.isArray(object?.documentInlineComments)\n ? object.documentInlineComments.map((e: any) => DocumentInlineComment.fromJSON(e))\n : [],\n inputOutputNotes: isSet(object.inputOutputNotes) ? globalThis.String(object.inputOutputNotes) : \"\",\n orgId: isSet(object.orgId) ? globalThis.Number(object.orgId) : 0,\n userName: isSet(object.userName) ? globalThis.String(object.userName) : \"\",\n addFlowSpec: isSet(object.addFlowSpec) ? AddFlowSpec.fromJSON(object.addFlowSpec) : undefined,\n deviceId: isSet(object.deviceId) ? globalThis.String(object.deviceId) : \"\",\n enableWebSearch: isSet(object.enableWebSearch) ? globalThis.Boolean(object.enableWebSearch) : false,\n vmArgs: isSet(object.vmArgs) ? globalThis.String(object.vmArgs) : \"\",\n isCampaign: isSet(object.isCampaign) ? globalThis.Boolean(object.isCampaign) : false,\n env: isSet(object.env) ? Env.fromJSON(object.env) : undefined,\n userNotes: isSet(object.userNotes) ? globalThis.String(object.userNotes) : \"\",\n migrationDocInput: isSet(object.migrationDocInput)\n ? MigrationDocumentInput.fromJSON(object.migrationDocInput)\n : undefined,\n dwlToInputOutputExample: isSet(object.dwlToInputOutputExample)\n ? DwlToInputOutputExample.fromJSON(object.dwlToInputOutputExample)\n : undefined,\n uuid: isSet(object.uuid) ? globalThis.String(object.uuid) : \"\",\n munitNotes: isSet(object.munitNotes) ? globalThis.String(object.munitNotes) : \"\",\n runtimeSettings: isSet(object.runtimeSettings) ? RuntimeSettings.fromJSON(object.runtimeSettings) : undefined,\n qaType: isSet(object.qaType) ? questionAnsweringTypeFromJSON(object.qaType) : 0,\n codeEnhancerTaskType: isSet(object.codeEnhancerTaskType)\n ? codeEnhancerTaskTypeFromJSON(object.codeEnhancerTaskType)\n : 0,\n questionAskingInput: isSet(object.questionAskingInput)\n ? QuestionAskingInput.fromJSON(object.questionAskingInput)\n : undefined,\n munitNumScenarios: isSet(object.munitNumScenarios) ? globalThis.Number(object.munitNumScenarios) : 0,\n munitEnableCoverage: isSet(object.munitEnableCoverage) ? globalThis.Boolean(object.munitEnableCoverage) : false,\n agenticUiTesting: isSet(object.agenticUiTesting) ? globalThis.Boolean(object.agenticUiTesting) : false,\n generateSeqDiag: isSet(object.generateSeqDiag) ? globalThis.Boolean(object.generateSeqDiag) : false,\n generateFlowDiag: isSet(object.generateFlowDiag) ? globalThis.Boolean(object.generateFlowDiag) : false,\n };\n },\n\n toJSON(message: AgentRequest): unknown {\n const obj: any = {};\n if (message.connectionType !== 0) {\n obj.connectionType = connectionTypeToJSON(message.connectionType);\n }\n if (message.connectionDetail !== undefined) {\n obj.connectionDetail = ConnectionDetail.toJSON(message.connectionDetail);\n }\n if (message.command !== undefined) {\n obj.command = Command.toJSON(message.command);\n }\n if (message.metadata !== undefined) {\n obj.metadata = Metadata.toJSON(message.metadata);\n }\n if (message.isStream !== false) {\n obj.isStream = message.isStream;\n }\n if (message.jsonMetadata !== \"\") {\n obj.jsonMetadata = message.jsonMetadata;\n }\n if (message.userId !== 0) {\n obj.userId = Math.round(message.userId);\n }\n if (message.diff?.length) {\n obj.diff = message.diff.map((e) => Diff.toJSON(e));\n }\n if (message.codePlan !== undefined) {\n obj.codePlan = CodePlan.toJSON(message.codePlan);\n }\n if (message.form?.length) {\n obj.form = message.form.map((e) => Form.toJSON(e));\n }\n if (message.document !== undefined) {\n obj.document = Documentation.toJSON(message.document);\n }\n if (message.munitScenarios !== undefined) {\n obj.munitScenarios = MunitScenarios.toJSON(message.munitScenarios);\n }\n if (message.mappingSheet?.length) {\n obj.mappingSheet = message.mappingSheet.map((e) => MappingSheet.toJSON(e));\n }\n if (message.sourceOutputExamples?.length) {\n obj.sourceOutputExamples = message.sourceOutputExamples.map((e) => SourceOutputExamples.toJSON(e));\n }\n if (message.diffComments?.length) {\n obj.diffComments = message.diffComments.map((e) => DiffComment.toJSON(e));\n }\n if (message.generalDiffComment !== \"\") {\n obj.generalDiffComment = message.generalDiffComment;\n }\n if (message.documentInlineComments?.length) {\n obj.documentInlineComments = message.documentInlineComments.map((e) => DocumentInlineComment.toJSON(e));\n }\n if (message.inputOutputNotes !== \"\") {\n obj.inputOutputNotes = message.inputOutputNotes;\n }\n if (message.orgId !== 0) {\n obj.orgId = Math.round(message.orgId);\n }\n if (message.userName !== \"\") {\n obj.userName = message.userName;\n }\n if (message.addFlowSpec !== undefined) {\n obj.addFlowSpec = AddFlowSpec.toJSON(message.addFlowSpec);\n }\n if (message.deviceId !== \"\") {\n obj.deviceId = message.deviceId;\n }\n if (message.enableWebSearch !== false) {\n obj.enableWebSearch = message.enableWebSearch;\n }\n if (message.vmArgs !== \"\") {\n obj.vmArgs = message.vmArgs;\n }\n if (message.isCampaign !== false) {\n obj.isCampaign = message.isCampaign;\n }\n if (message.env !== undefined) {\n obj.env = Env.toJSON(message.env);\n }\n if (message.userNotes !== \"\") {\n obj.userNotes = message.userNotes;\n }\n if (message.migrationDocInput !== undefined) {\n obj.migrationDocInput = MigrationDocumentInput.toJSON(message.migrationDocInput);\n }\n if (message.dwlToInputOutputExample !== undefined) {\n obj.dwlToInputOutputExample = DwlToInputOutputExample.toJSON(message.dwlToInputOutputExample);\n }\n if (message.uuid !== \"\") {\n obj.uuid = message.uuid;\n }\n if (message.munitNotes !== \"\") {\n obj.munitNotes = message.munitNotes;\n }\n if (message.runtimeSettings !== undefined) {\n obj.runtimeSettings = RuntimeSettings.toJSON(message.runtimeSettings);\n }\n if (message.qaType !== 0) {\n obj.qaType = questionAnsweringTypeToJSON(message.qaType);\n }\n if (message.codeEnhancerTaskType !== 0) {\n obj.codeEnhancerTaskType = codeEnhancerTaskTypeToJSON(message.codeEnhancerTaskType);\n }\n if (message.questionAskingInput !== undefined) {\n obj.questionAskingInput = QuestionAskingInput.toJSON(message.questionAskingInput);\n }\n if (message.munitNumScenarios !== 0) {\n obj.munitNumScenarios = Math.round(message.munitNumScenarios);\n }\n if (message.munitEnableCoverage !== false) {\n obj.munitEnableCoverage = message.munitEnableCoverage;\n }\n if (message.agenticUiTesting !== false) {\n obj.agenticUiTesting = message.agenticUiTesting;\n }\n if (message.generateSeqDiag !== false) {\n obj.generateSeqDiag = message.generateSeqDiag;\n }\n if (message.generateFlowDiag !== false) {\n obj.generateFlowDiag = message.generateFlowDiag;\n }\n return obj;\n },\n\n create, I>>(base?: I): AgentRequest {\n return AgentRequest.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): AgentRequest {\n const message = createBaseAgentRequest();\n message.connectionType = object.connectionType ?? 0;\n message.connectionDetail = (object.connectionDetail !== undefined && object.connectionDetail !== null)\n ? ConnectionDetail.fromPartial(object.connectionDetail)\n : undefined;\n message.command = (object.command !== undefined && object.command !== null)\n ? Command.fromPartial(object.command)\n : undefined;\n message.metadata = (object.metadata !== undefined && object.metadata !== null)\n ? Metadata.fromPartial(object.metadata)\n : undefined;\n message.isStream = object.isStream ?? false;\n message.jsonMetadata = object.jsonMetadata ?? \"\";\n message.userId = object.userId ?? 0;\n message.diff = object.diff?.map((e) => Diff.fromPartial(e)) || [];\n message.codePlan = (object.codePlan !== undefined && object.codePlan !== null)\n ? CodePlan.fromPartial(object.codePlan)\n : undefined;\n message.form = object.form?.map((e) => Form.fromPartial(e)) || [];\n message.document = (object.document !== undefined && object.document !== null)\n ? Documentation.fromPartial(object.document)\n : undefined;\n message.munitScenarios = (object.munitScenarios !== undefined && object.munitScenarios !== null)\n ? MunitScenarios.fromPartial(object.munitScenarios)\n : undefined;\n message.mappingSheet = object.mappingSheet?.map((e) => MappingSheet.fromPartial(e)) || [];\n message.sourceOutputExamples = object.sourceOutputExamples?.map((e) => SourceOutputExamples.fromPartial(e)) || [];\n message.diffComments = object.diffComments?.map((e) => DiffComment.fromPartial(e)) || [];\n message.generalDiffComment = object.generalDiffComment ?? \"\";\n message.documentInlineComments = object.documentInlineComments?.map((e) => DocumentInlineComment.fromPartial(e)) ||\n [];\n message.inputOutputNotes = object.inputOutputNotes ?? \"\";\n message.orgId = object.orgId ?? 0;\n message.userName = object.userName ?? \"\";\n message.addFlowSpec = (object.addFlowSpec !== undefined && object.addFlowSpec !== null)\n ? AddFlowSpec.fromPartial(object.addFlowSpec)\n : undefined;\n message.deviceId = object.deviceId ?? \"\";\n message.enableWebSearch = object.enableWebSearch ?? false;\n message.vmArgs = object.vmArgs ?? \"\";\n message.isCampaign = object.isCampaign ?? false;\n message.env = (object.env !== undefined && object.env !== null) ? Env.fromPartial(object.env) : undefined;\n message.userNotes = object.userNotes ?? \"\";\n message.migrationDocInput = (object.migrationDocInput !== undefined && object.migrationDocInput !== null)\n ? MigrationDocumentInput.fromPartial(object.migrationDocInput)\n : undefined;\n message.dwlToInputOutputExample =\n (object.dwlToInputOutputExample !== undefined && object.dwlToInputOutputExample !== null)\n ? DwlToInputOutputExample.fromPartial(object.dwlToInputOutputExample)\n : undefined;\n message.uuid = object.uuid ?? \"\";\n message.munitNotes = object.munitNotes ?? \"\";\n message.runtimeSettings = (object.runtimeSettings !== undefined && object.runtimeSettings !== null)\n ? RuntimeSettings.fromPartial(object.runtimeSettings)\n : undefined;\n message.qaType = object.qaType ?? 0;\n message.codeEnhancerTaskType = object.codeEnhancerTaskType ?? 0;\n message.questionAskingInput = (object.questionAskingInput !== undefined && object.questionAskingInput !== null)\n ? QuestionAskingInput.fromPartial(object.questionAskingInput)\n : undefined;\n message.munitNumScenarios = object.munitNumScenarios ?? 0;\n message.munitEnableCoverage = object.munitEnableCoverage ?? false;\n message.agenticUiTesting = object.agenticUiTesting ?? false;\n message.generateSeqDiag = object.generateSeqDiag ?? false;\n message.generateFlowDiag = object.generateFlowDiag ?? false;\n return message;\n },\n};\n\nfunction createBaseRuntimeSettings(): RuntimeSettings {\n return { javaVersion: \"\", mavenVersion: \"\", settingsXmlRawTxt: \"\", settingsSecurityXmlRawTxt: \"\" };\n}\n\nexport const RuntimeSettings = {\n encode(message: RuntimeSettings, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.javaVersion !== \"\") {\n writer.uint32(10).string(message.javaVersion);\n }\n if (message.mavenVersion !== \"\") {\n writer.uint32(18).string(message.mavenVersion);\n }\n if (message.settingsXmlRawTxt !== \"\") {\n writer.uint32(26).string(message.settingsXmlRawTxt);\n }\n if (message.settingsSecurityXmlRawTxt !== \"\") {\n writer.uint32(34).string(message.settingsSecurityXmlRawTxt);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RuntimeSettings {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRuntimeSettings();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.javaVersion = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.mavenVersion = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.settingsXmlRawTxt = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.settingsSecurityXmlRawTxt = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): RuntimeSettings {\n return {\n javaVersion: isSet(object.javaVersion) ? globalThis.String(object.javaVersion) : \"\",\n mavenVersion: isSet(object.mavenVersion) ? globalThis.String(object.mavenVersion) : \"\",\n settingsXmlRawTxt: isSet(object.settingsXmlRawTxt) ? globalThis.String(object.settingsXmlRawTxt) : \"\",\n settingsSecurityXmlRawTxt: isSet(object.settingsSecurityXmlRawTxt)\n ? globalThis.String(object.settingsSecurityXmlRawTxt)\n : \"\",\n };\n },\n\n toJSON(message: RuntimeSettings): unknown {\n const obj: any = {};\n if (message.javaVersion !== \"\") {\n obj.javaVersion = message.javaVersion;\n }\n if (message.mavenVersion !== \"\") {\n obj.mavenVersion = message.mavenVersion;\n }\n if (message.settingsXmlRawTxt !== \"\") {\n obj.settingsXmlRawTxt = message.settingsXmlRawTxt;\n }\n if (message.settingsSecurityXmlRawTxt !== \"\") {\n obj.settingsSecurityXmlRawTxt = message.settingsSecurityXmlRawTxt;\n }\n return obj;\n },\n\n create, I>>(base?: I): RuntimeSettings {\n return RuntimeSettings.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): RuntimeSettings {\n const message = createBaseRuntimeSettings();\n message.javaVersion = object.javaVersion ?? \"\";\n message.mavenVersion = object.mavenVersion ?? \"\";\n message.settingsXmlRawTxt = object.settingsXmlRawTxt ?? \"\";\n message.settingsSecurityXmlRawTxt = object.settingsSecurityXmlRawTxt ?? \"\";\n return message;\n },\n};\n\nfunction createBaseDwlToInputOutputExample(): DwlToInputOutputExample {\n return { commandString: \"\", exampleType: 0 };\n}\n\nexport const DwlToInputOutputExample = {\n encode(message: DwlToInputOutputExample, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.commandString !== \"\") {\n writer.uint32(10).string(message.commandString);\n }\n if (message.exampleType !== 0) {\n writer.uint32(16).int32(message.exampleType);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): DwlToInputOutputExample {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDwlToInputOutputExample();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.commandString = reader.string();\n continue;\n case 2:\n if (tag !== 16) {\n break;\n }\n\n message.exampleType = reader.int32() as any;\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): DwlToInputOutputExample {\n return {\n commandString: isSet(object.commandString) ? globalThis.String(object.commandString) : \"\",\n exampleType: isSet(object.exampleType) ? sourceOutputExampleTypeFromJSON(object.exampleType) : 0,\n };\n },\n\n toJSON(message: DwlToInputOutputExample): unknown {\n const obj: any = {};\n if (message.commandString !== \"\") {\n obj.commandString = message.commandString;\n }\n if (message.exampleType !== 0) {\n obj.exampleType = sourceOutputExampleTypeToJSON(message.exampleType);\n }\n return obj;\n },\n\n create, I>>(base?: I): DwlToInputOutputExample {\n return DwlToInputOutputExample.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): DwlToInputOutputExample {\n const message = createBaseDwlToInputOutputExample();\n message.commandString = object.commandString ?? \"\";\n message.exampleType = object.exampleType ?? 0;\n return message;\n },\n};\n\nfunction createBaseQuestionAskingOutput(): QuestionAskingOutput {\n return { questionAskingOutput: \"\", finalSpecification: \"\" };\n}\n\nexport const QuestionAskingOutput = {\n encode(message: QuestionAskingOutput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.questionAskingOutput !== \"\") {\n writer.uint32(10).string(message.questionAskingOutput);\n }\n if (message.finalSpecification !== \"\") {\n writer.uint32(18).string(message.finalSpecification);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): QuestionAskingOutput {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseQuestionAskingOutput();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.questionAskingOutput = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.finalSpecification = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): QuestionAskingOutput {\n return {\n questionAskingOutput: isSet(object.questionAskingOutput) ? globalThis.String(object.questionAskingOutput) : \"\",\n finalSpecification: isSet(object.finalSpecification) ? globalThis.String(object.finalSpecification) : \"\",\n };\n },\n\n toJSON(message: QuestionAskingOutput): unknown {\n const obj: any = {};\n if (message.questionAskingOutput !== \"\") {\n obj.questionAskingOutput = message.questionAskingOutput;\n }\n if (message.finalSpecification !== \"\") {\n obj.finalSpecification = message.finalSpecification;\n }\n return obj;\n },\n\n create, I>>(base?: I): QuestionAskingOutput {\n return QuestionAskingOutput.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): QuestionAskingOutput {\n const message = createBaseQuestionAskingOutput();\n message.questionAskingOutput = object.questionAskingOutput ?? \"\";\n message.finalSpecification = object.finalSpecification ?? \"\";\n return message;\n },\n};\n\nfunction createBaseResponseContentStream(): ResponseContentStream {\n return {\n messageType: 0,\n deltaContent: \"\",\n jsonMetadata: \"\",\n taskMetadata: \"\",\n diff: [],\n codePlan: undefined,\n form: [],\n document: undefined,\n munitScenarios: undefined,\n dataweaveOutput: undefined,\n agentInternalStatus: undefined,\n addFlowSpec: undefined,\n migrationDocOutput: undefined,\n questionAskingOutput: undefined,\n };\n}\n\nexport const ResponseContentStream = {\n encode(message: ResponseContentStream, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.messageType !== 0) {\n writer.uint32(8).int32(message.messageType);\n }\n if (message.deltaContent !== \"\") {\n writer.uint32(18).string(message.deltaContent);\n }\n if (message.jsonMetadata !== \"\") {\n writer.uint32(26).string(message.jsonMetadata);\n }\n if (message.taskMetadata !== \"\") {\n writer.uint32(34).string(message.taskMetadata);\n }\n for (const v of message.diff) {\n Diff.encode(v!, writer.uint32(42).fork()).ldelim();\n }\n if (message.codePlan !== undefined) {\n CodePlan.encode(message.codePlan, writer.uint32(50).fork()).ldelim();\n }\n for (const v of message.form) {\n Form.encode(v!, writer.uint32(82).fork()).ldelim();\n }\n if (message.document !== undefined) {\n Documentation.encode(message.document, writer.uint32(90).fork()).ldelim();\n }\n if (message.munitScenarios !== undefined) {\n MunitScenarios.encode(message.munitScenarios, writer.uint32(98).fork()).ldelim();\n }\n if (message.dataweaveOutput !== undefined) {\n DataWeaveGenCodeOutput.encode(message.dataweaveOutput, writer.uint32(106).fork()).ldelim();\n }\n if (message.agentInternalStatus !== undefined) {\n AgentInternalStatus.encode(message.agentInternalStatus, writer.uint32(114).fork()).ldelim();\n }\n if (message.addFlowSpec !== undefined) {\n AddFlowSpec.encode(message.addFlowSpec, writer.uint32(122).fork()).ldelim();\n }\n if (message.migrationDocOutput !== undefined) {\n MigrationDocumentOutput.encode(message.migrationDocOutput, writer.uint32(130).fork()).ldelim();\n }\n if (message.questionAskingOutput !== undefined) {\n QuestionAskingOutput.encode(message.questionAskingOutput, writer.uint32(138).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ResponseContentStream {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseResponseContentStream();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 8) {\n break;\n }\n\n message.messageType = reader.int32() as any;\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.deltaContent = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.jsonMetadata = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.taskMetadata = reader.string();\n continue;\n case 5:\n if (tag !== 42) {\n break;\n }\n\n message.diff.push(Diff.decode(reader, reader.uint32()));\n continue;\n case 6:\n if (tag !== 50) {\n break;\n }\n\n message.codePlan = CodePlan.decode(reader, reader.uint32());\n continue;\n case 10:\n if (tag !== 82) {\n break;\n }\n\n message.form.push(Form.decode(reader, reader.uint32()));\n continue;\n case 11:\n if (tag !== 90) {\n break;\n }\n\n message.document = Documentation.decode(reader, reader.uint32());\n continue;\n case 12:\n if (tag !== 98) {\n break;\n }\n\n message.munitScenarios = MunitScenarios.decode(reader, reader.uint32());\n continue;\n case 13:\n if (tag !== 106) {\n break;\n }\n\n message.dataweaveOutput = DataWeaveGenCodeOutput.decode(reader, reader.uint32());\n continue;\n case 14:\n if (tag !== 114) {\n break;\n }\n\n message.agentInternalStatus = AgentInternalStatus.decode(reader, reader.uint32());\n continue;\n case 15:\n if (tag !== 122) {\n break;\n }\n\n message.addFlowSpec = AddFlowSpec.decode(reader, reader.uint32());\n continue;\n case 16:\n if (tag !== 130) {\n break;\n }\n\n message.migrationDocOutput = MigrationDocumentOutput.decode(reader, reader.uint32());\n continue;\n case 17:\n if (tag !== 138) {\n break;\n }\n\n message.questionAskingOutput = QuestionAskingOutput.decode(reader, reader.uint32());\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): ResponseContentStream {\n return {\n messageType: isSet(object.messageType) ? messageTypeFromJSON(object.messageType) : 0,\n deltaContent: isSet(object.deltaContent) ? globalThis.String(object.deltaContent) : \"\",\n jsonMetadata: isSet(object.jsonMetadata) ? globalThis.String(object.jsonMetadata) : \"\",\n taskMetadata: isSet(object.taskMetadata) ? globalThis.String(object.taskMetadata) : \"\",\n diff: globalThis.Array.isArray(object?.diff) ? object.diff.map((e: any) => Diff.fromJSON(e)) : [],\n codePlan: isSet(object.codePlan) ? CodePlan.fromJSON(object.codePlan) : undefined,\n form: globalThis.Array.isArray(object?.form) ? object.form.map((e: any) => Form.fromJSON(e)) : [],\n document: isSet(object.document) ? Documentation.fromJSON(object.document) : undefined,\n munitScenarios: isSet(object.munitScenarios) ? MunitScenarios.fromJSON(object.munitScenarios) : undefined,\n dataweaveOutput: isSet(object.dataweaveOutput)\n ? DataWeaveGenCodeOutput.fromJSON(object.dataweaveOutput)\n : undefined,\n agentInternalStatus: isSet(object.agentInternalStatus)\n ? AgentInternalStatus.fromJSON(object.agentInternalStatus)\n : undefined,\n addFlowSpec: isSet(object.addFlowSpec) ? AddFlowSpec.fromJSON(object.addFlowSpec) : undefined,\n migrationDocOutput: isSet(object.migrationDocOutput)\n ? MigrationDocumentOutput.fromJSON(object.migrationDocOutput)\n : undefined,\n questionAskingOutput: isSet(object.questionAskingOutput)\n ? QuestionAskingOutput.fromJSON(object.questionAskingOutput)\n : undefined,\n };\n },\n\n toJSON(message: ResponseContentStream): unknown {\n const obj: any = {};\n if (message.messageType !== 0) {\n obj.messageType = messageTypeToJSON(message.messageType);\n }\n if (message.deltaContent !== \"\") {\n obj.deltaContent = message.deltaContent;\n }\n if (message.jsonMetadata !== \"\") {\n obj.jsonMetadata = message.jsonMetadata;\n }\n if (message.taskMetadata !== \"\") {\n obj.taskMetadata = message.taskMetadata;\n }\n if (message.diff?.length) {\n obj.diff = message.diff.map((e) => Diff.toJSON(e));\n }\n if (message.codePlan !== undefined) {\n obj.codePlan = CodePlan.toJSON(message.codePlan);\n }\n if (message.form?.length) {\n obj.form = message.form.map((e) => Form.toJSON(e));\n }\n if (message.document !== undefined) {\n obj.document = Documentation.toJSON(message.document);\n }\n if (message.munitScenarios !== undefined) {\n obj.munitScenarios = MunitScenarios.toJSON(message.munitScenarios);\n }\n if (message.dataweaveOutput !== undefined) {\n obj.dataweaveOutput = DataWeaveGenCodeOutput.toJSON(message.dataweaveOutput);\n }\n if (message.agentInternalStatus !== undefined) {\n obj.agentInternalStatus = AgentInternalStatus.toJSON(message.agentInternalStatus);\n }\n if (message.addFlowSpec !== undefined) {\n obj.addFlowSpec = AddFlowSpec.toJSON(message.addFlowSpec);\n }\n if (message.migrationDocOutput !== undefined) {\n obj.migrationDocOutput = MigrationDocumentOutput.toJSON(message.migrationDocOutput);\n }\n if (message.questionAskingOutput !== undefined) {\n obj.questionAskingOutput = QuestionAskingOutput.toJSON(message.questionAskingOutput);\n }\n return obj;\n },\n\n create, I>>(base?: I): ResponseContentStream {\n return ResponseContentStream.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): ResponseContentStream {\n const message = createBaseResponseContentStream();\n message.messageType = object.messageType ?? 0;\n message.deltaContent = object.deltaContent ?? \"\";\n message.jsonMetadata = object.jsonMetadata ?? \"\";\n message.taskMetadata = object.taskMetadata ?? \"\";\n message.diff = object.diff?.map((e) => Diff.fromPartial(e)) || [];\n message.codePlan = (object.codePlan !== undefined && object.codePlan !== null)\n ? CodePlan.fromPartial(object.codePlan)\n : undefined;\n message.form = object.form?.map((e) => Form.fromPartial(e)) || [];\n message.document = (object.document !== undefined && object.document !== null)\n ? Documentation.fromPartial(object.document)\n : undefined;\n message.munitScenarios = (object.munitScenarios !== undefined && object.munitScenarios !== null)\n ? MunitScenarios.fromPartial(object.munitScenarios)\n : undefined;\n message.dataweaveOutput = (object.dataweaveOutput !== undefined && object.dataweaveOutput !== null)\n ? DataWeaveGenCodeOutput.fromPartial(object.dataweaveOutput)\n : undefined;\n message.agentInternalStatus = (object.agentInternalStatus !== undefined && object.agentInternalStatus !== null)\n ? AgentInternalStatus.fromPartial(object.agentInternalStatus)\n : undefined;\n message.addFlowSpec = (object.addFlowSpec !== undefined && object.addFlowSpec !== null)\n ? AddFlowSpec.fromPartial(object.addFlowSpec)\n : undefined;\n message.migrationDocOutput = (object.migrationDocOutput !== undefined && object.migrationDocOutput !== null)\n ? MigrationDocumentOutput.fromPartial(object.migrationDocOutput)\n : undefined;\n message.questionAskingOutput = (object.questionAskingOutput !== undefined && object.questionAskingOutput !== null)\n ? QuestionAskingOutput.fromPartial(object.questionAskingOutput)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseMigrationDocumentInput(): MigrationDocumentInput {\n return { platform: 0, endpointDesc: \"\", generateForAll: false };\n}\n\nexport const MigrationDocumentInput = {\n encode(message: MigrationDocumentInput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.platform !== 0) {\n writer.uint32(8).int32(message.platform);\n }\n if (message.endpointDesc !== \"\") {\n writer.uint32(18).string(message.endpointDesc);\n }\n if (message.generateForAll !== false) {\n writer.uint32(24).bool(message.generateForAll);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): MigrationDocumentInput {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseMigrationDocumentInput();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 8) {\n break;\n }\n\n message.platform = reader.int32() as any;\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.endpointDesc = reader.string();\n continue;\n case 3:\n if (tag !== 24) {\n break;\n }\n\n message.generateForAll = reader.bool();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): MigrationDocumentInput {\n return {\n platform: isSet(object.platform) ? integrationPlatformFromJSON(object.platform) : 0,\n endpointDesc: isSet(object.endpointDesc) ? globalThis.String(object.endpointDesc) : \"\",\n generateForAll: isSet(object.generateForAll) ? globalThis.Boolean(object.generateForAll) : false,\n };\n },\n\n toJSON(message: MigrationDocumentInput): unknown {\n const obj: any = {};\n if (message.platform !== 0) {\n obj.platform = integrationPlatformToJSON(message.platform);\n }\n if (message.endpointDesc !== \"\") {\n obj.endpointDesc = message.endpointDesc;\n }\n if (message.generateForAll !== false) {\n obj.generateForAll = message.generateForAll;\n }\n return obj;\n },\n\n create, I>>(base?: I): MigrationDocumentInput {\n return MigrationDocumentInput.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): MigrationDocumentInput {\n const message = createBaseMigrationDocumentInput();\n message.platform = object.platform ?? 0;\n message.endpointDesc = object.endpointDesc ?? \"\";\n message.generateForAll = object.generateForAll ?? false;\n return message;\n },\n};\n\nfunction createBaseMigrationDocumentOutput(): MigrationDocumentOutput {\n return { docMd: \"\" };\n}\n\nexport const MigrationDocumentOutput = {\n encode(message: MigrationDocumentOutput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.docMd !== \"\") {\n writer.uint32(10).string(message.docMd);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): MigrationDocumentOutput {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseMigrationDocumentOutput();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.docMd = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): MigrationDocumentOutput {\n return { docMd: isSet(object.docMd) ? globalThis.String(object.docMd) : \"\" };\n },\n\n toJSON(message: MigrationDocumentOutput): unknown {\n const obj: any = {};\n if (message.docMd !== \"\") {\n obj.docMd = message.docMd;\n }\n return obj;\n },\n\n create, I>>(base?: I): MigrationDocumentOutput {\n return MigrationDocumentOutput.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): MigrationDocumentOutput {\n const message = createBaseMigrationDocumentOutput();\n message.docMd = object.docMd ?? \"\";\n return message;\n },\n};\n\nfunction createBaseMappingSheet(): MappingSheet {\n return { id: \"\", base64EncodedXlsx: \"\", csv: \"\" };\n}\n\nexport const MappingSheet = {\n encode(message: MappingSheet, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.id !== \"\") {\n writer.uint32(10).string(message.id);\n }\n if (message.base64EncodedXlsx !== \"\") {\n writer.uint32(18).string(message.base64EncodedXlsx);\n }\n if (message.csv !== \"\") {\n writer.uint32(26).string(message.csv);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): MappingSheet {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseMappingSheet();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.id = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.base64EncodedXlsx = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.csv = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): MappingSheet {\n return {\n id: isSet(object.id) ? globalThis.String(object.id) : \"\",\n base64EncodedXlsx: isSet(object.base64EncodedXlsx) ? globalThis.String(object.base64EncodedXlsx) : \"\",\n csv: isSet(object.csv) ? globalThis.String(object.csv) : \"\",\n };\n },\n\n toJSON(message: MappingSheet): unknown {\n const obj: any = {};\n if (message.id !== \"\") {\n obj.id = message.id;\n }\n if (message.base64EncodedXlsx !== \"\") {\n obj.base64EncodedXlsx = message.base64EncodedXlsx;\n }\n if (message.csv !== \"\") {\n obj.csv = message.csv;\n }\n return obj;\n },\n\n create, I>>(base?: I): MappingSheet {\n return MappingSheet.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): MappingSheet {\n const message = createBaseMappingSheet();\n message.id = object.id ?? \"\";\n message.base64EncodedXlsx = object.base64EncodedXlsx ?? \"\";\n message.csv = object.csv ?? \"\";\n return message;\n },\n};\n\nfunction createBaseSourceOutputExamples(): SourceOutputExamples {\n return {\n sourceData: \"\",\n outputData: \"\",\n sourceDataType: 0,\n outputDataType: 0,\n outputEdiSchemaType: undefined,\n inputEdiSchemaType: undefined,\n };\n}\n\nexport const SourceOutputExamples = {\n encode(message: SourceOutputExamples, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.sourceData !== \"\") {\n writer.uint32(10).string(message.sourceData);\n }\n if (message.outputData !== \"\") {\n writer.uint32(18).string(message.outputData);\n }\n if (message.sourceDataType !== 0) {\n writer.uint32(24).int32(message.sourceDataType);\n }\n if (message.outputDataType !== 0) {\n writer.uint32(32).int32(message.outputDataType);\n }\n if (message.outputEdiSchemaType !== undefined) {\n EdiSchemaType.encode(message.outputEdiSchemaType, writer.uint32(42).fork()).ldelim();\n }\n if (message.inputEdiSchemaType !== undefined) {\n EdiSchemaType.encode(message.inputEdiSchemaType, writer.uint32(50).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): SourceOutputExamples {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseSourceOutputExamples();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.sourceData = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.outputData = reader.string();\n continue;\n case 3:\n if (tag !== 24) {\n break;\n }\n\n message.sourceDataType = reader.int32() as any;\n continue;\n case 4:\n if (tag !== 32) {\n break;\n }\n\n message.outputDataType = reader.int32() as any;\n continue;\n case 5:\n if (tag !== 42) {\n break;\n }\n\n message.outputEdiSchemaType = EdiSchemaType.decode(reader, reader.uint32());\n continue;\n case 6:\n if (tag !== 50) {\n break;\n }\n\n message.inputEdiSchemaType = EdiSchemaType.decode(reader, reader.uint32());\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): SourceOutputExamples {\n return {\n sourceData: isSet(object.sourceData) ? globalThis.String(object.sourceData) : \"\",\n outputData: isSet(object.outputData) ? globalThis.String(object.outputData) : \"\",\n sourceDataType: isSet(object.sourceDataType) ? sourceOutputExampleTypeFromJSON(object.sourceDataType) : 0,\n outputDataType: isSet(object.outputDataType) ? sourceOutputExampleTypeFromJSON(object.outputDataType) : 0,\n outputEdiSchemaType: isSet(object.outputEdiSchemaType)\n ? EdiSchemaType.fromJSON(object.outputEdiSchemaType)\n : undefined,\n inputEdiSchemaType: isSet(object.inputEdiSchemaType)\n ? EdiSchemaType.fromJSON(object.inputEdiSchemaType)\n : undefined,\n };\n },\n\n toJSON(message: SourceOutputExamples): unknown {\n const obj: any = {};\n if (message.sourceData !== \"\") {\n obj.sourceData = message.sourceData;\n }\n if (message.outputData !== \"\") {\n obj.outputData = message.outputData;\n }\n if (message.sourceDataType !== 0) {\n obj.sourceDataType = sourceOutputExampleTypeToJSON(message.sourceDataType);\n }\n if (message.outputDataType !== 0) {\n obj.outputDataType = sourceOutputExampleTypeToJSON(message.outputDataType);\n }\n if (message.outputEdiSchemaType !== undefined) {\n obj.outputEdiSchemaType = EdiSchemaType.toJSON(message.outputEdiSchemaType);\n }\n if (message.inputEdiSchemaType !== undefined) {\n obj.inputEdiSchemaType = EdiSchemaType.toJSON(message.inputEdiSchemaType);\n }\n return obj;\n },\n\n create, I>>(base?: I): SourceOutputExamples {\n return SourceOutputExamples.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): SourceOutputExamples {\n const message = createBaseSourceOutputExamples();\n message.sourceData = object.sourceData ?? \"\";\n message.outputData = object.outputData ?? \"\";\n message.sourceDataType = object.sourceDataType ?? 0;\n message.outputDataType = object.outputDataType ?? 0;\n message.outputEdiSchemaType = (object.outputEdiSchemaType !== undefined && object.outputEdiSchemaType !== null)\n ? EdiSchemaType.fromPartial(object.outputEdiSchemaType)\n : undefined;\n message.inputEdiSchemaType = (object.inputEdiSchemaType !== undefined && object.inputEdiSchemaType !== null)\n ? EdiSchemaType.fromPartial(object.inputEdiSchemaType)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseEdiSchemaType(): EdiSchemaType {\n return { transactionVersion: \"\", transactionType: \"\" };\n}\n\nexport const EdiSchemaType = {\n encode(message: EdiSchemaType, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.transactionVersion !== \"\") {\n writer.uint32(10).string(message.transactionVersion);\n }\n if (message.transactionType !== \"\") {\n writer.uint32(18).string(message.transactionType);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): EdiSchemaType {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseEdiSchemaType();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.transactionVersion = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.transactionType = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): EdiSchemaType {\n return {\n transactionVersion: isSet(object.transactionVersion) ? globalThis.String(object.transactionVersion) : \"\",\n transactionType: isSet(object.transactionType) ? globalThis.String(object.transactionType) : \"\",\n };\n },\n\n toJSON(message: EdiSchemaType): unknown {\n const obj: any = {};\n if (message.transactionVersion !== \"\") {\n obj.transactionVersion = message.transactionVersion;\n }\n if (message.transactionType !== \"\") {\n obj.transactionType = message.transactionType;\n }\n return obj;\n },\n\n create, I>>(base?: I): EdiSchemaType {\n return EdiSchemaType.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): EdiSchemaType {\n const message = createBaseEdiSchemaType();\n message.transactionVersion = object.transactionVersion ?? \"\";\n message.transactionType = object.transactionType ?? \"\";\n return message;\n },\n};\n\nfunction createBaseJiraDetail(): JiraDetail {\n return { issueKey: \"\", accessToken: \"\", title: \"\", description: \"\" };\n}\n\nexport const JiraDetail = {\n encode(message: JiraDetail, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.issueKey !== \"\") {\n writer.uint32(10).string(message.issueKey);\n }\n if (message.accessToken !== \"\") {\n writer.uint32(18).string(message.accessToken);\n }\n if (message.title !== \"\") {\n writer.uint32(26).string(message.title);\n }\n if (message.description !== \"\") {\n writer.uint32(34).string(message.description);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): JiraDetail {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseJiraDetail();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.issueKey = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.accessToken = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.title = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.description = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): JiraDetail {\n return {\n issueKey: isSet(object.issueKey) ? globalThis.String(object.issueKey) : \"\",\n accessToken: isSet(object.accessToken) ? globalThis.String(object.accessToken) : \"\",\n title: isSet(object.title) ? globalThis.String(object.title) : \"\",\n description: isSet(object.description) ? globalThis.String(object.description) : \"\",\n };\n },\n\n toJSON(message: JiraDetail): unknown {\n const obj: any = {};\n if (message.issueKey !== \"\") {\n obj.issueKey = message.issueKey;\n }\n if (message.accessToken !== \"\") {\n obj.accessToken = message.accessToken;\n }\n if (message.title !== \"\") {\n obj.title = message.title;\n }\n if (message.description !== \"\") {\n obj.description = message.description;\n }\n return obj;\n },\n\n create, I>>(base?: I): JiraDetail {\n return JiraDetail.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): JiraDetail {\n const message = createBaseJiraDetail();\n message.issueKey = object.issueKey ?? \"\";\n message.accessToken = object.accessToken ?? \"\";\n message.title = object.title ?? \"\";\n message.description = object.description ?? \"\";\n return message;\n },\n};\n\nfunction createBaseSlackDetail(): SlackDetail {\n return { convoKey: \"\" };\n}\n\nexport const SlackDetail = {\n encode(message: SlackDetail, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.convoKey !== \"\") {\n writer.uint32(10).string(message.convoKey);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): SlackDetail {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseSlackDetail();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.convoKey = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): SlackDetail {\n return { convoKey: isSet(object.convoKey) ? globalThis.String(object.convoKey) : \"\" };\n },\n\n toJSON(message: SlackDetail): unknown {\n const obj: any = {};\n if (message.convoKey !== \"\") {\n obj.convoKey = message.convoKey;\n }\n return obj;\n },\n\n create, I>>(base?: I): SlackDetail {\n return SlackDetail.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): SlackDetail {\n const message = createBaseSlackDetail();\n message.convoKey = object.convoKey ?? \"\";\n return message;\n },\n};\n\nfunction createBaseEclipseDetail(): EclipseDetail {\n return { diffs: undefined };\n}\n\nexport const EclipseDetail = {\n encode(message: EclipseDetail, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.diffs !== undefined) {\n EclipseDiffsData.encode(message.diffs, writer.uint32(10).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): EclipseDetail {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseEclipseDetail();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.diffs = EclipseDiffsData.decode(reader, reader.uint32());\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): EclipseDetail {\n return { diffs: isSet(object.diffs) ? EclipseDiffsData.fromJSON(object.diffs) : undefined };\n },\n\n toJSON(message: EclipseDetail): unknown {\n const obj: any = {};\n if (message.diffs !== undefined) {\n obj.diffs = EclipseDiffsData.toJSON(message.diffs);\n }\n return obj;\n },\n\n create, I>>(base?: I): EclipseDetail {\n return EclipseDetail.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): EclipseDetail {\n const message = createBaseEclipseDetail();\n message.diffs = (object.diffs !== undefined && object.diffs !== null)\n ? EclipseDiffsData.fromPartial(object.diffs)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseEclipseDiffsData(): EclipseDiffsData {\n return {};\n}\n\nexport const EclipseDiffsData = {\n encode(_: EclipseDiffsData, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): EclipseDiffsData {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseEclipseDiffsData();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(_: any): EclipseDiffsData {\n return {};\n },\n\n toJSON(_: EclipseDiffsData): unknown {\n const obj: any = {};\n return obj;\n },\n\n create, I>>(base?: I): EclipseDiffsData {\n return EclipseDiffsData.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(_: I): EclipseDiffsData {\n const message = createBaseEclipseDiffsData();\n return message;\n },\n};\n\nfunction createBaseGithubDetail(): GithubDetail {\n return { accessToken: \"\", orgName: \"\", repoName: \"\", branchName: \"\", commitId: \"\", issueId: \"\" };\n}\n\nexport const GithubDetail = {\n encode(message: GithubDetail, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.accessToken !== \"\") {\n writer.uint32(10).string(message.accessToken);\n }\n if (message.orgName !== \"\") {\n writer.uint32(18).string(message.orgName);\n }\n if (message.repoName !== \"\") {\n writer.uint32(26).string(message.repoName);\n }\n if (message.branchName !== \"\") {\n writer.uint32(34).string(message.branchName);\n }\n if (message.commitId !== \"\") {\n writer.uint32(42).string(message.commitId);\n }\n if (message.issueId !== \"\") {\n writer.uint32(50).string(message.issueId);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GithubDetail {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGithubDetail();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.accessToken = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.orgName = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.repoName = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.branchName = reader.string();\n continue;\n case 5:\n if (tag !== 42) {\n break;\n }\n\n message.commitId = reader.string();\n continue;\n case 6:\n if (tag !== 50) {\n break;\n }\n\n message.issueId = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): GithubDetail {\n return {\n accessToken: isSet(object.accessToken) ? globalThis.String(object.accessToken) : \"\",\n orgName: isSet(object.orgName) ? globalThis.String(object.orgName) : \"\",\n repoName: isSet(object.repoName) ? globalThis.String(object.repoName) : \"\",\n branchName: isSet(object.branchName) ? globalThis.String(object.branchName) : \"\",\n commitId: isSet(object.commitId) ? globalThis.String(object.commitId) : \"\",\n issueId: isSet(object.issueId) ? globalThis.String(object.issueId) : \"\",\n };\n },\n\n toJSON(message: GithubDetail): unknown {\n const obj: any = {};\n if (message.accessToken !== \"\") {\n obj.accessToken = message.accessToken;\n }\n if (message.orgName !== \"\") {\n obj.orgName = message.orgName;\n }\n if (message.repoName !== \"\") {\n obj.repoName = message.repoName;\n }\n if (message.branchName !== \"\") {\n obj.branchName = message.branchName;\n }\n if (message.commitId !== \"\") {\n obj.commitId = message.commitId;\n }\n if (message.issueId !== \"\") {\n obj.issueId = message.issueId;\n }\n return obj;\n },\n\n create, I>>(base?: I): GithubDetail {\n return GithubDetail.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): GithubDetail {\n const message = createBaseGithubDetail();\n message.accessToken = object.accessToken ?? \"\";\n message.orgName = object.orgName ?? \"\";\n message.repoName = object.repoName ?? \"\";\n message.branchName = object.branchName ?? \"\";\n message.commitId = object.commitId ?? \"\";\n message.issueId = object.issueId ?? \"\";\n return message;\n },\n};\n\nfunction createBaseConnectionDetail(): ConnectionDetail {\n return { githubDetail: undefined, jiraDetail: undefined, slackDetail: undefined, eclipseDetail: undefined };\n}\n\nexport const ConnectionDetail = {\n encode(message: ConnectionDetail, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.githubDetail !== undefined) {\n GithubDetail.encode(message.githubDetail, writer.uint32(10).fork()).ldelim();\n }\n if (message.jiraDetail !== undefined) {\n JiraDetail.encode(message.jiraDetail, writer.uint32(18).fork()).ldelim();\n }\n if (message.slackDetail !== undefined) {\n SlackDetail.encode(message.slackDetail, writer.uint32(26).fork()).ldelim();\n }\n if (message.eclipseDetail !== undefined) {\n EclipseDetail.encode(message.eclipseDetail, writer.uint32(34).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ConnectionDetail {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseConnectionDetail();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.githubDetail = GithubDetail.decode(reader, reader.uint32());\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.jiraDetail = JiraDetail.decode(reader, reader.uint32());\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.slackDetail = SlackDetail.decode(reader, reader.uint32());\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.eclipseDetail = EclipseDetail.decode(reader, reader.uint32());\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): ConnectionDetail {\n return {\n githubDetail: isSet(object.githubDetail) ? GithubDetail.fromJSON(object.githubDetail) : undefined,\n jiraDetail: isSet(object.jiraDetail) ? JiraDetail.fromJSON(object.jiraDetail) : undefined,\n slackDetail: isSet(object.slackDetail) ? SlackDetail.fromJSON(object.slackDetail) : undefined,\n eclipseDetail: isSet(object.eclipseDetail) ? EclipseDetail.fromJSON(object.eclipseDetail) : undefined,\n };\n },\n\n toJSON(message: ConnectionDetail): unknown {\n const obj: any = {};\n if (message.githubDetail !== undefined) {\n obj.githubDetail = GithubDetail.toJSON(message.githubDetail);\n }\n if (message.jiraDetail !== undefined) {\n obj.jiraDetail = JiraDetail.toJSON(message.jiraDetail);\n }\n if (message.slackDetail !== undefined) {\n obj.slackDetail = SlackDetail.toJSON(message.slackDetail);\n }\n if (message.eclipseDetail !== undefined) {\n obj.eclipseDetail = EclipseDetail.toJSON(message.eclipseDetail);\n }\n return obj;\n },\n\n create, I>>(base?: I): ConnectionDetail {\n return ConnectionDetail.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): ConnectionDetail {\n const message = createBaseConnectionDetail();\n message.githubDetail = (object.githubDetail !== undefined && object.githubDetail !== null)\n ? GithubDetail.fromPartial(object.githubDetail)\n : undefined;\n message.jiraDetail = (object.jiraDetail !== undefined && object.jiraDetail !== null)\n ? JiraDetail.fromPartial(object.jiraDetail)\n : undefined;\n message.slackDetail = (object.slackDetail !== undefined && object.slackDetail !== null)\n ? SlackDetail.fromPartial(object.slackDetail)\n : undefined;\n message.eclipseDetail = (object.eclipseDetail !== undefined && object.eclipseDetail !== null)\n ? EclipseDetail.fromPartial(object.eclipseDetail)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseCodeContext(): CodeContext {\n return { connType: \"\", orgName: \"\", repoName: \"\", branchName: \"\", commitId: \"\", s3TarFilePath: \"\" };\n}\n\nexport const CodeContext = {\n encode(message: CodeContext, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.connType !== \"\") {\n writer.uint32(10).string(message.connType);\n }\n if (message.orgName !== \"\") {\n writer.uint32(18).string(message.orgName);\n }\n if (message.repoName !== \"\") {\n writer.uint32(26).string(message.repoName);\n }\n if (message.branchName !== \"\") {\n writer.uint32(34).string(message.branchName);\n }\n if (message.commitId !== \"\") {\n writer.uint32(42).string(message.commitId);\n }\n if (message.s3TarFilePath !== \"\") {\n writer.uint32(50).string(message.s3TarFilePath);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): CodeContext {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseCodeContext();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.connType = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.orgName = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.repoName = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.branchName = reader.string();\n continue;\n case 5:\n if (tag !== 42) {\n break;\n }\n\n message.commitId = reader.string();\n continue;\n case 6:\n if (tag !== 50) {\n break;\n }\n\n message.s3TarFilePath = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): CodeContext {\n return {\n connType: isSet(object.connType) ? globalThis.String(object.connType) : \"\",\n orgName: isSet(object.orgName) ? globalThis.String(object.orgName) : \"\",\n repoName: isSet(object.repoName) ? globalThis.String(object.repoName) : \"\",\n branchName: isSet(object.branchName) ? globalThis.String(object.branchName) : \"\",\n commitId: isSet(object.commitId) ? globalThis.String(object.commitId) : \"\",\n s3TarFilePath: isSet(object.s3TarFilePath) ? globalThis.String(object.s3TarFilePath) : \"\",\n };\n },\n\n toJSON(message: CodeContext): unknown {\n const obj: any = {};\n if (message.connType !== \"\") {\n obj.connType = message.connType;\n }\n if (message.orgName !== \"\") {\n obj.orgName = message.orgName;\n }\n if (message.repoName !== \"\") {\n obj.repoName = message.repoName;\n }\n if (message.branchName !== \"\") {\n obj.branchName = message.branchName;\n }\n if (message.commitId !== \"\") {\n obj.commitId = message.commitId;\n }\n if (message.s3TarFilePath !== \"\") {\n obj.s3TarFilePath = message.s3TarFilePath;\n }\n return obj;\n },\n\n create, I>>(base?: I): CodeContext {\n return CodeContext.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): CodeContext {\n const message = createBaseCodeContext();\n message.connType = object.connType ?? \"\";\n message.orgName = object.orgName ?? \"\";\n message.repoName = object.repoName ?? \"\";\n message.branchName = object.branchName ?? \"\";\n message.commitId = object.commitId ?? \"\";\n message.s3TarFilePath = object.s3TarFilePath ?? \"\";\n return message;\n },\n};\n\nfunction createBaseMetadata(): Metadata {\n return { codeConnectionDetail: undefined, messages: [], codeContext: undefined, multiRepoCodeContext: [] };\n}\n\nexport const Metadata = {\n encode(message: Metadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.codeConnectionDetail !== undefined) {\n ConnectionDetail.encode(message.codeConnectionDetail, writer.uint32(10).fork()).ldelim();\n }\n for (const v of message.messages) {\n Message.encode(v!, writer.uint32(18).fork()).ldelim();\n }\n if (message.codeContext !== undefined) {\n CodeContext.encode(message.codeContext, writer.uint32(26).fork()).ldelim();\n }\n for (const v of message.multiRepoCodeContext) {\n CodeContext.encode(v!, writer.uint32(34).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): Metadata {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseMetadata();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.codeConnectionDetail = ConnectionDetail.decode(reader, reader.uint32());\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.messages.push(Message.decode(reader, reader.uint32()));\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.codeContext = CodeContext.decode(reader, reader.uint32());\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.multiRepoCodeContext.push(CodeContext.decode(reader, reader.uint32()));\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): Metadata {\n return {\n codeConnectionDetail: isSet(object.codeConnectionDetail)\n ? ConnectionDetail.fromJSON(object.codeConnectionDetail)\n : undefined,\n messages: globalThis.Array.isArray(object?.messages) ? object.messages.map((e: any) => Message.fromJSON(e)) : [],\n codeContext: isSet(object.codeContext) ? CodeContext.fromJSON(object.codeContext) : undefined,\n multiRepoCodeContext: globalThis.Array.isArray(object?.multiRepoCodeContext)\n ? object.multiRepoCodeContext.map((e: any) => CodeContext.fromJSON(e))\n : [],\n };\n },\n\n toJSON(message: Metadata): unknown {\n const obj: any = {};\n if (message.codeConnectionDetail !== undefined) {\n obj.codeConnectionDetail = ConnectionDetail.toJSON(message.codeConnectionDetail);\n }\n if (message.messages?.length) {\n obj.messages = message.messages.map((e) => Message.toJSON(e));\n }\n if (message.codeContext !== undefined) {\n obj.codeContext = CodeContext.toJSON(message.codeContext);\n }\n if (message.multiRepoCodeContext?.length) {\n obj.multiRepoCodeContext = message.multiRepoCodeContext.map((e) => CodeContext.toJSON(e));\n }\n return obj;\n },\n\n create, I>>(base?: I): Metadata {\n return Metadata.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): Metadata {\n const message = createBaseMetadata();\n message.codeConnectionDetail = (object.codeConnectionDetail !== undefined && object.codeConnectionDetail !== null)\n ? ConnectionDetail.fromPartial(object.codeConnectionDetail)\n : undefined;\n message.messages = object.messages?.map((e) => Message.fromPartial(e)) || [];\n message.codeContext = (object.codeContext !== undefined && object.codeContext !== null)\n ? CodeContext.fromPartial(object.codeContext)\n : undefined;\n message.multiRepoCodeContext = object.multiRepoCodeContext?.map((e) => CodeContext.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseMessage(): Message {\n return { role: \"\", userName: \"\", content: \"\", messageType: 0, timestampMs: 0 };\n}\n\nexport const Message = {\n encode(message: Message, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.role !== \"\") {\n writer.uint32(10).string(message.role);\n }\n if (message.userName !== \"\") {\n writer.uint32(18).string(message.userName);\n }\n if (message.content !== \"\") {\n writer.uint32(26).string(message.content);\n }\n if (message.messageType !== 0) {\n writer.uint32(32).int32(message.messageType);\n }\n if (message.timestampMs !== 0) {\n writer.uint32(40).int64(message.timestampMs);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): Message {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseMessage();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.role = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.userName = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.content = reader.string();\n continue;\n case 4:\n if (tag !== 32) {\n break;\n }\n\n message.messageType = reader.int32() as any;\n continue;\n case 5:\n if (tag !== 40) {\n break;\n }\n\n message.timestampMs = longToNumber(reader.int64() as Long);\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): Message {\n return {\n role: isSet(object.role) ? globalThis.String(object.role) : \"\",\n userName: isSet(object.userName) ? globalThis.String(object.userName) : \"\",\n content: isSet(object.content) ? globalThis.String(object.content) : \"\",\n messageType: isSet(object.messageType) ? messageTypeFromJSON(object.messageType) : 0,\n timestampMs: isSet(object.timestampMs) ? globalThis.Number(object.timestampMs) : 0,\n };\n },\n\n toJSON(message: Message): unknown {\n const obj: any = {};\n if (message.role !== \"\") {\n obj.role = message.role;\n }\n if (message.userName !== \"\") {\n obj.userName = message.userName;\n }\n if (message.content !== \"\") {\n obj.content = message.content;\n }\n if (message.messageType !== 0) {\n obj.messageType = messageTypeToJSON(message.messageType);\n }\n if (message.timestampMs !== 0) {\n obj.timestampMs = Math.round(message.timestampMs);\n }\n return obj;\n },\n\n create, I>>(base?: I): Message {\n return Message.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): Message {\n const message = createBaseMessage();\n message.role = object.role ?? \"\";\n message.userName = object.userName ?? \"\";\n message.content = object.content ?? \"\";\n message.messageType = object.messageType ?? 0;\n message.timestampMs = object.timestampMs ?? 0;\n return message;\n },\n};\n\nfunction createBaseCommand(): Command {\n return { commandType: 0, commandString: \"\", images: [] };\n}\n\nexport const Command = {\n encode(message: Command, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.commandType !== 0) {\n writer.uint32(8).int32(message.commandType);\n }\n if (message.commandString !== \"\") {\n writer.uint32(18).string(message.commandString);\n }\n for (const v of message.images) {\n Image.encode(v!, writer.uint32(26).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): Command {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseCommand();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 8) {\n break;\n }\n\n message.commandType = reader.int32() as any;\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.commandString = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.images.push(Image.decode(reader, reader.uint32()));\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): Command {\n return {\n commandType: isSet(object.commandType) ? commandTypeFromJSON(object.commandType) : 0,\n commandString: isSet(object.commandString) ? globalThis.String(object.commandString) : \"\",\n images: globalThis.Array.isArray(object?.images) ? object.images.map((e: any) => Image.fromJSON(e)) : [],\n };\n },\n\n toJSON(message: Command): unknown {\n const obj: any = {};\n if (message.commandType !== 0) {\n obj.commandType = commandTypeToJSON(message.commandType);\n }\n if (message.commandString !== \"\") {\n obj.commandString = message.commandString;\n }\n if (message.images?.length) {\n obj.images = message.images.map((e) => Image.toJSON(e));\n }\n return obj;\n },\n\n create, I>>(base?: I): Command {\n return Command.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): Command {\n const message = createBaseCommand();\n message.commandType = object.commandType ?? 0;\n message.commandString = object.commandString ?? \"\";\n message.images = object.images?.map((e) => Image.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseCodePlan(): CodePlan {\n return { rawTxt: \"\", fileMultiSelect: undefined, svgFlows: [] };\n}\n\nexport const CodePlan = {\n encode(message: CodePlan, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.rawTxt !== \"\") {\n writer.uint32(10).string(message.rawTxt);\n }\n if (message.fileMultiSelect !== undefined) {\n MultiSelect.encode(message.fileMultiSelect, writer.uint32(18).fork()).ldelim();\n }\n for (const v of message.svgFlows) {\n writer.uint32(26).string(v!);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): CodePlan {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseCodePlan();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.rawTxt = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.fileMultiSelect = MultiSelect.decode(reader, reader.uint32());\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.svgFlows.push(reader.string());\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): CodePlan {\n return {\n rawTxt: isSet(object.rawTxt) ? globalThis.String(object.rawTxt) : \"\",\n fileMultiSelect: isSet(object.fileMultiSelect) ? MultiSelect.fromJSON(object.fileMultiSelect) : undefined,\n svgFlows: globalThis.Array.isArray(object?.svgFlows) ? object.svgFlows.map((e: any) => globalThis.String(e)) : [],\n };\n },\n\n toJSON(message: CodePlan): unknown {\n const obj: any = {};\n if (message.rawTxt !== \"\") {\n obj.rawTxt = message.rawTxt;\n }\n if (message.fileMultiSelect !== undefined) {\n obj.fileMultiSelect = MultiSelect.toJSON(message.fileMultiSelect);\n }\n if (message.svgFlows?.length) {\n obj.svgFlows = message.svgFlows;\n }\n return obj;\n },\n\n create, I>>(base?: I): CodePlan {\n return CodePlan.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): CodePlan {\n const message = createBaseCodePlan();\n message.rawTxt = object.rawTxt ?? \"\";\n message.fileMultiSelect = (object.fileMultiSelect !== undefined && object.fileMultiSelect !== null)\n ? MultiSelect.fromPartial(object.fileMultiSelect)\n : undefined;\n message.svgFlows = object.svgFlows?.map((e) => e) || [];\n return message;\n },\n};\n\nfunction createBaseMunitScenarios(): MunitScenarios {\n return { mdText: \"\", rawData: \"\" };\n}\n\nexport const MunitScenarios = {\n encode(message: MunitScenarios, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.mdText !== \"\") {\n writer.uint32(10).string(message.mdText);\n }\n if (message.rawData !== \"\") {\n writer.uint32(18).string(message.rawData);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): MunitScenarios {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseMunitScenarios();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.mdText = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.rawData = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): MunitScenarios {\n return {\n mdText: isSet(object.mdText) ? globalThis.String(object.mdText) : \"\",\n rawData: isSet(object.rawData) ? globalThis.String(object.rawData) : \"\",\n };\n },\n\n toJSON(message: MunitScenarios): unknown {\n const obj: any = {};\n if (message.mdText !== \"\") {\n obj.mdText = message.mdText;\n }\n if (message.rawData !== \"\") {\n obj.rawData = message.rawData;\n }\n return obj;\n },\n\n create, I>>(base?: I): MunitScenarios {\n return MunitScenarios.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): MunitScenarios {\n const message = createBaseMunitScenarios();\n message.mdText = object.mdText ?? \"\";\n message.rawData = object.rawData ?? \"\";\n return message;\n },\n};\n\nfunction createBaseDataWeaveGenCodeOutput(): DataWeaveGenCodeOutput {\n return { code: \"\", errorMsg: \"\", sourceData: \"\", outputData: \"\", userMarkdownMsg: \"\" };\n}\n\nexport const DataWeaveGenCodeOutput = {\n encode(message: DataWeaveGenCodeOutput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.code !== \"\") {\n writer.uint32(10).string(message.code);\n }\n if (message.errorMsg !== \"\") {\n writer.uint32(18).string(message.errorMsg);\n }\n if (message.sourceData !== \"\") {\n writer.uint32(26).string(message.sourceData);\n }\n if (message.outputData !== \"\") {\n writer.uint32(34).string(message.outputData);\n }\n if (message.userMarkdownMsg !== \"\") {\n writer.uint32(42).string(message.userMarkdownMsg);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): DataWeaveGenCodeOutput {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDataWeaveGenCodeOutput();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.code = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.errorMsg = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.sourceData = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.outputData = reader.string();\n continue;\n case 5:\n if (tag !== 42) {\n break;\n }\n\n message.userMarkdownMsg = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): DataWeaveGenCodeOutput {\n return {\n code: isSet(object.code) ? globalThis.String(object.code) : \"\",\n errorMsg: isSet(object.errorMsg) ? globalThis.String(object.errorMsg) : \"\",\n sourceData: isSet(object.sourceData) ? globalThis.String(object.sourceData) : \"\",\n outputData: isSet(object.outputData) ? globalThis.String(object.outputData) : \"\",\n userMarkdownMsg: isSet(object.userMarkdownMsg) ? globalThis.String(object.userMarkdownMsg) : \"\",\n };\n },\n\n toJSON(message: DataWeaveGenCodeOutput): unknown {\n const obj: any = {};\n if (message.code !== \"\") {\n obj.code = message.code;\n }\n if (message.errorMsg !== \"\") {\n obj.errorMsg = message.errorMsg;\n }\n if (message.sourceData !== \"\") {\n obj.sourceData = message.sourceData;\n }\n if (message.outputData !== \"\") {\n obj.outputData = message.outputData;\n }\n if (message.userMarkdownMsg !== \"\") {\n obj.userMarkdownMsg = message.userMarkdownMsg;\n }\n return obj;\n },\n\n create, I>>(base?: I): DataWeaveGenCodeOutput {\n return DataWeaveGenCodeOutput.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): DataWeaveGenCodeOutput {\n const message = createBaseDataWeaveGenCodeOutput();\n message.code = object.code ?? \"\";\n message.errorMsg = object.errorMsg ?? \"\";\n message.sourceData = object.sourceData ?? \"\";\n message.outputData = object.outputData ?? \"\";\n message.userMarkdownMsg = object.userMarkdownMsg ?? \"\";\n return message;\n },\n};\n\nfunction createBaseDiff(): Diff {\n return { diffType: 0, aFilePath: \"\", bFilePath: \"\", aFileContent: \"\", bFileContent: \"\", patchBA: \"\", aCommitId: \"\" };\n}\n\nexport const Diff = {\n encode(message: Diff, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.diffType !== 0) {\n writer.uint32(8).int32(message.diffType);\n }\n if (message.aFilePath !== \"\") {\n writer.uint32(18).string(message.aFilePath);\n }\n if (message.bFilePath !== \"\") {\n writer.uint32(26).string(message.bFilePath);\n }\n if (message.aFileContent !== \"\") {\n writer.uint32(34).string(message.aFileContent);\n }\n if (message.bFileContent !== \"\") {\n writer.uint32(42).string(message.bFileContent);\n }\n if (message.patchBA !== \"\") {\n writer.uint32(50).string(message.patchBA);\n }\n if (message.aCommitId !== \"\") {\n writer.uint32(58).string(message.aCommitId);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): Diff {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDiff();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 8) {\n break;\n }\n\n message.diffType = reader.int32() as any;\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.aFilePath = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.bFilePath = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.aFileContent = reader.string();\n continue;\n case 5:\n if (tag !== 42) {\n break;\n }\n\n message.bFileContent = reader.string();\n continue;\n case 6:\n if (tag !== 50) {\n break;\n }\n\n message.patchBA = reader.string();\n continue;\n case 7:\n if (tag !== 58) {\n break;\n }\n\n message.aCommitId = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): Diff {\n return {\n diffType: isSet(object.diffType) ? diffTypeFromJSON(object.diffType) : 0,\n aFilePath: isSet(object.aFilePath) ? globalThis.String(object.aFilePath) : \"\",\n bFilePath: isSet(object.bFilePath) ? globalThis.String(object.bFilePath) : \"\",\n aFileContent: isSet(object.aFileContent) ? globalThis.String(object.aFileContent) : \"\",\n bFileContent: isSet(object.bFileContent) ? globalThis.String(object.bFileContent) : \"\",\n patchBA: isSet(object.patchBA) ? globalThis.String(object.patchBA) : \"\",\n aCommitId: isSet(object.aCommitId) ? globalThis.String(object.aCommitId) : \"\",\n };\n },\n\n toJSON(message: Diff): unknown {\n const obj: any = {};\n if (message.diffType !== 0) {\n obj.diffType = diffTypeToJSON(message.diffType);\n }\n if (message.aFilePath !== \"\") {\n obj.aFilePath = message.aFilePath;\n }\n if (message.bFilePath !== \"\") {\n obj.bFilePath = message.bFilePath;\n }\n if (message.aFileContent !== \"\") {\n obj.aFileContent = message.aFileContent;\n }\n if (message.bFileContent !== \"\") {\n obj.bFileContent = message.bFileContent;\n }\n if (message.patchBA !== \"\") {\n obj.patchBA = message.patchBA;\n }\n if (message.aCommitId !== \"\") {\n obj.aCommitId = message.aCommitId;\n }\n return obj;\n },\n\n create, I>>(base?: I): Diff {\n return Diff.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): Diff {\n const message = createBaseDiff();\n message.diffType = object.diffType ?? 0;\n message.aFilePath = object.aFilePath ?? \"\";\n message.bFilePath = object.bFilePath ?? \"\";\n message.aFileContent = object.aFileContent ?? \"\";\n message.bFileContent = object.bFileContent ?? \"\";\n message.patchBA = object.patchBA ?? \"\";\n message.aCommitId = object.aCommitId ?? \"\";\n return message;\n },\n};\n\nfunction createBaseDiffComment(): DiffComment {\n return { comment: \"\", filePath: \"\", startLineNumber: 0, endLineNumber: 0, fileContent: \"\" };\n}\n\nexport const DiffComment = {\n encode(message: DiffComment, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.comment !== \"\") {\n writer.uint32(10).string(message.comment);\n }\n if (message.filePath !== \"\") {\n writer.uint32(18).string(message.filePath);\n }\n if (message.startLineNumber !== 0) {\n writer.uint32(24).int32(message.startLineNumber);\n }\n if (message.endLineNumber !== 0) {\n writer.uint32(32).int32(message.endLineNumber);\n }\n if (message.fileContent !== \"\") {\n writer.uint32(42).string(message.fileContent);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): DiffComment {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDiffComment();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.comment = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.filePath = reader.string();\n continue;\n case 3:\n if (tag !== 24) {\n break;\n }\n\n message.startLineNumber = reader.int32();\n continue;\n case 4:\n if (tag !== 32) {\n break;\n }\n\n message.endLineNumber = reader.int32();\n continue;\n case 5:\n if (tag !== 42) {\n break;\n }\n\n message.fileContent = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): DiffComment {\n return {\n comment: isSet(object.comment) ? globalThis.String(object.comment) : \"\",\n filePath: isSet(object.filePath) ? globalThis.String(object.filePath) : \"\",\n startLineNumber: isSet(object.startLineNumber) ? globalThis.Number(object.startLineNumber) : 0,\n endLineNumber: isSet(object.endLineNumber) ? globalThis.Number(object.endLineNumber) : 0,\n fileContent: isSet(object.fileContent) ? globalThis.String(object.fileContent) : \"\",\n };\n },\n\n toJSON(message: DiffComment): unknown {\n const obj: any = {};\n if (message.comment !== \"\") {\n obj.comment = message.comment;\n }\n if (message.filePath !== \"\") {\n obj.filePath = message.filePath;\n }\n if (message.startLineNumber !== 0) {\n obj.startLineNumber = Math.round(message.startLineNumber);\n }\n if (message.endLineNumber !== 0) {\n obj.endLineNumber = Math.round(message.endLineNumber);\n }\n if (message.fileContent !== \"\") {\n obj.fileContent = message.fileContent;\n }\n return obj;\n },\n\n create, I>>(base?: I): DiffComment {\n return DiffComment.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): DiffComment {\n const message = createBaseDiffComment();\n message.comment = object.comment ?? \"\";\n message.filePath = object.filePath ?? \"\";\n message.startLineNumber = object.startLineNumber ?? 0;\n message.endLineNumber = object.endLineNumber ?? 0;\n message.fileContent = object.fileContent ?? \"\";\n return message;\n },\n};\n\nfunction createBaseDocumentInlineComment(): DocumentInlineComment {\n return { comment: \"\", startLineNumber: 0, endLineNumber: 0 };\n}\n\nexport const DocumentInlineComment = {\n encode(message: DocumentInlineComment, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.comment !== \"\") {\n writer.uint32(10).string(message.comment);\n }\n if (message.startLineNumber !== 0) {\n writer.uint32(16).int32(message.startLineNumber);\n }\n if (message.endLineNumber !== 0) {\n writer.uint32(24).int32(message.endLineNumber);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): DocumentInlineComment {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDocumentInlineComment();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.comment = reader.string();\n continue;\n case 2:\n if (tag !== 16) {\n break;\n }\n\n message.startLineNumber = reader.int32();\n continue;\n case 3:\n if (tag !== 24) {\n break;\n }\n\n message.endLineNumber = reader.int32();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): DocumentInlineComment {\n return {\n comment: isSet(object.comment) ? globalThis.String(object.comment) : \"\",\n startLineNumber: isSet(object.startLineNumber) ? globalThis.Number(object.startLineNumber) : 0,\n endLineNumber: isSet(object.endLineNumber) ? globalThis.Number(object.endLineNumber) : 0,\n };\n },\n\n toJSON(message: DocumentInlineComment): unknown {\n const obj: any = {};\n if (message.comment !== \"\") {\n obj.comment = message.comment;\n }\n if (message.startLineNumber !== 0) {\n obj.startLineNumber = Math.round(message.startLineNumber);\n }\n if (message.endLineNumber !== 0) {\n obj.endLineNumber = Math.round(message.endLineNumber);\n }\n return obj;\n },\n\n create, I>>(base?: I): DocumentInlineComment {\n return DocumentInlineComment.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): DocumentInlineComment {\n const message = createBaseDocumentInlineComment();\n message.comment = object.comment ?? \"\";\n message.startLineNumber = object.startLineNumber ?? 0;\n message.endLineNumber = object.endLineNumber ?? 0;\n return message;\n },\n};\n\nfunction createBaseDocumentation(): Documentation {\n return {\n flowDocMdTxt: \"\",\n flowDocMdHtmlPrLink: \"\",\n mappingSheetCsv: \"\",\n mappingSheetHtmlPrLink: \"\",\n mappingSheetMd: \"\",\n dwlMd: \"\",\n fullRepoMd: \"\",\n addFlowCode: \"\",\n addFlowSvgDiagram: \"\",\n };\n}\n\nexport const Documentation = {\n encode(message: Documentation, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.flowDocMdTxt !== \"\") {\n writer.uint32(10).string(message.flowDocMdTxt);\n }\n if (message.flowDocMdHtmlPrLink !== \"\") {\n writer.uint32(18).string(message.flowDocMdHtmlPrLink);\n }\n if (message.mappingSheetCsv !== \"\") {\n writer.uint32(26).string(message.mappingSheetCsv);\n }\n if (message.mappingSheetHtmlPrLink !== \"\") {\n writer.uint32(34).string(message.mappingSheetHtmlPrLink);\n }\n if (message.mappingSheetMd !== \"\") {\n writer.uint32(42).string(message.mappingSheetMd);\n }\n if (message.dwlMd !== \"\") {\n writer.uint32(50).string(message.dwlMd);\n }\n if (message.fullRepoMd !== \"\") {\n writer.uint32(58).string(message.fullRepoMd);\n }\n if (message.addFlowCode !== \"\") {\n writer.uint32(66).string(message.addFlowCode);\n }\n if (message.addFlowSvgDiagram !== \"\") {\n writer.uint32(74).string(message.addFlowSvgDiagram);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): Documentation {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDocumentation();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.flowDocMdTxt = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.flowDocMdHtmlPrLink = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.mappingSheetCsv = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.mappingSheetHtmlPrLink = reader.string();\n continue;\n case 5:\n if (tag !== 42) {\n break;\n }\n\n message.mappingSheetMd = reader.string();\n continue;\n case 6:\n if (tag !== 50) {\n break;\n }\n\n message.dwlMd = reader.string();\n continue;\n case 7:\n if (tag !== 58) {\n break;\n }\n\n message.fullRepoMd = reader.string();\n continue;\n case 8:\n if (tag !== 66) {\n break;\n }\n\n message.addFlowCode = reader.string();\n continue;\n case 9:\n if (tag !== 74) {\n break;\n }\n\n message.addFlowSvgDiagram = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): Documentation {\n return {\n flowDocMdTxt: isSet(object.flowDocMdTxt) ? globalThis.String(object.flowDocMdTxt) : \"\",\n flowDocMdHtmlPrLink: isSet(object.flowDocMdHtmlPrLink) ? globalThis.String(object.flowDocMdHtmlPrLink) : \"\",\n mappingSheetCsv: isSet(object.mappingSheetCsv) ? globalThis.String(object.mappingSheetCsv) : \"\",\n mappingSheetHtmlPrLink: isSet(object.mappingSheetHtmlPrLink)\n ? globalThis.String(object.mappingSheetHtmlPrLink)\n : \"\",\n mappingSheetMd: isSet(object.mappingSheetMd) ? globalThis.String(object.mappingSheetMd) : \"\",\n dwlMd: isSet(object.dwlMd) ? globalThis.String(object.dwlMd) : \"\",\n fullRepoMd: isSet(object.fullRepoMd) ? globalThis.String(object.fullRepoMd) : \"\",\n addFlowCode: isSet(object.addFlowCode) ? globalThis.String(object.addFlowCode) : \"\",\n addFlowSvgDiagram: isSet(object.addFlowSvgDiagram) ? globalThis.String(object.addFlowSvgDiagram) : \"\",\n };\n },\n\n toJSON(message: Documentation): unknown {\n const obj: any = {};\n if (message.flowDocMdTxt !== \"\") {\n obj.flowDocMdTxt = message.flowDocMdTxt;\n }\n if (message.flowDocMdHtmlPrLink !== \"\") {\n obj.flowDocMdHtmlPrLink = message.flowDocMdHtmlPrLink;\n }\n if (message.mappingSheetCsv !== \"\") {\n obj.mappingSheetCsv = message.mappingSheetCsv;\n }\n if (message.mappingSheetHtmlPrLink !== \"\") {\n obj.mappingSheetHtmlPrLink = message.mappingSheetHtmlPrLink;\n }\n if (message.mappingSheetMd !== \"\") {\n obj.mappingSheetMd = message.mappingSheetMd;\n }\n if (message.dwlMd !== \"\") {\n obj.dwlMd = message.dwlMd;\n }\n if (message.fullRepoMd !== \"\") {\n obj.fullRepoMd = message.fullRepoMd;\n }\n if (message.addFlowCode !== \"\") {\n obj.addFlowCode = message.addFlowCode;\n }\n if (message.addFlowSvgDiagram !== \"\") {\n obj.addFlowSvgDiagram = message.addFlowSvgDiagram;\n }\n return obj;\n },\n\n create, I>>(base?: I): Documentation {\n return Documentation.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): Documentation {\n const message = createBaseDocumentation();\n message.flowDocMdTxt = object.flowDocMdTxt ?? \"\";\n message.flowDocMdHtmlPrLink = object.flowDocMdHtmlPrLink ?? \"\";\n message.mappingSheetCsv = object.mappingSheetCsv ?? \"\";\n message.mappingSheetHtmlPrLink = object.mappingSheetHtmlPrLink ?? \"\";\n message.mappingSheetMd = object.mappingSheetMd ?? \"\";\n message.dwlMd = object.dwlMd ?? \"\";\n message.fullRepoMd = object.fullRepoMd ?? \"\";\n message.addFlowCode = object.addFlowCode ?? \"\";\n message.addFlowSvgDiagram = object.addFlowSvgDiagram ?? \"\";\n return message;\n },\n};\n\nfunction createBaseAgentStreamingResponse(): AgentStreamingResponse {\n return { responseContentStream: undefined };\n}\n\nexport const AgentStreamingResponse = {\n encode(message: AgentStreamingResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.responseContentStream !== undefined) {\n ResponseContentStream.encode(message.responseContentStream, writer.uint32(10).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): AgentStreamingResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseAgentStreamingResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.responseContentStream = ResponseContentStream.decode(reader, reader.uint32());\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): AgentStreamingResponse {\n return {\n responseContentStream: isSet(object.responseContentStream)\n ? ResponseContentStream.fromJSON(object.responseContentStream)\n : undefined,\n };\n },\n\n toJSON(message: AgentStreamingResponse): unknown {\n const obj: any = {};\n if (message.responseContentStream !== undefined) {\n obj.responseContentStream = ResponseContentStream.toJSON(message.responseContentStream);\n }\n return obj;\n },\n\n create, I>>(base?: I): AgentStreamingResponse {\n return AgentStreamingResponse.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): AgentStreamingResponse {\n const message = createBaseAgentStreamingResponse();\n message.responseContentStream =\n (object.responseContentStream !== undefined && object.responseContentStream !== null)\n ? ResponseContentStream.fromPartial(object.responseContentStream)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseGetIndexReposRequest(): GetIndexReposRequest {\n return { userId: 0 };\n}\n\nexport const GetIndexReposRequest = {\n encode(message: GetIndexReposRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.userId !== 0) {\n writer.uint32(8).int64(message.userId);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetIndexReposRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetIndexReposRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 8) {\n break;\n }\n\n message.userId = longToNumber(reader.int64() as Long);\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): GetIndexReposRequest {\n return { userId: isSet(object.userId) ? globalThis.Number(object.userId) : 0 };\n },\n\n toJSON(message: GetIndexReposRequest): unknown {\n const obj: any = {};\n if (message.userId !== 0) {\n obj.userId = Math.round(message.userId);\n }\n return obj;\n },\n\n create, I>>(base?: I): GetIndexReposRequest {\n return GetIndexReposRequest.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): GetIndexReposRequest {\n const message = createBaseGetIndexReposRequest();\n message.userId = object.userId ?? 0;\n return message;\n },\n};\n\nfunction createBaseGetIndexReposResponse(): GetIndexReposResponse {\n return { githubDetails: [] };\n}\n\nexport const GetIndexReposResponse = {\n encode(message: GetIndexReposResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n for (const v of message.githubDetails) {\n GithubDetail.encode(v!, writer.uint32(10).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetIndexReposResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetIndexReposResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.githubDetails.push(GithubDetail.decode(reader, reader.uint32()));\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): GetIndexReposResponse {\n return {\n githubDetails: globalThis.Array.isArray(object?.githubDetails)\n ? object.githubDetails.map((e: any) => GithubDetail.fromJSON(e))\n : [],\n };\n },\n\n toJSON(message: GetIndexReposResponse): unknown {\n const obj: any = {};\n if (message.githubDetails?.length) {\n obj.githubDetails = message.githubDetails.map((e) => GithubDetail.toJSON(e));\n }\n return obj;\n },\n\n create, I>>(base?: I): GetIndexReposResponse {\n return GetIndexReposResponse.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): GetIndexReposResponse {\n const message = createBaseGetIndexReposResponse();\n message.githubDetails = object.githubDetails?.map((e) => GithubDetail.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseAgentTaskRequest(): AgentTaskRequest {\n return { taskId: 0, agentRequest: undefined, runSync: false };\n}\n\nexport const AgentTaskRequest = {\n encode(message: AgentTaskRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.taskId !== 0) {\n writer.uint32(8).int64(message.taskId);\n }\n if (message.agentRequest !== undefined) {\n AgentRequest.encode(message.agentRequest, writer.uint32(18).fork()).ldelim();\n }\n if (message.runSync !== false) {\n writer.uint32(24).bool(message.runSync);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): AgentTaskRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseAgentTaskRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 8) {\n break;\n }\n\n message.taskId = longToNumber(reader.int64() as Long);\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.agentRequest = AgentRequest.decode(reader, reader.uint32());\n continue;\n case 3:\n if (tag !== 24) {\n break;\n }\n\n message.runSync = reader.bool();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): AgentTaskRequest {\n return {\n taskId: isSet(object.taskId) ? globalThis.Number(object.taskId) : 0,\n agentRequest: isSet(object.agentRequest) ? AgentRequest.fromJSON(object.agentRequest) : undefined,\n runSync: isSet(object.runSync) ? globalThis.Boolean(object.runSync) : false,\n };\n },\n\n toJSON(message: AgentTaskRequest): unknown {\n const obj: any = {};\n if (message.taskId !== 0) {\n obj.taskId = Math.round(message.taskId);\n }\n if (message.agentRequest !== undefined) {\n obj.agentRequest = AgentRequest.toJSON(message.agentRequest);\n }\n if (message.runSync !== false) {\n obj.runSync = message.runSync;\n }\n return obj;\n },\n\n create, I>>(base?: I): AgentTaskRequest {\n return AgentTaskRequest.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): AgentTaskRequest {\n const message = createBaseAgentTaskRequest();\n message.taskId = object.taskId ?? 0;\n message.agentRequest = (object.agentRequest !== undefined && object.agentRequest !== null)\n ? AgentRequest.fromPartial(object.agentRequest)\n : undefined;\n message.runSync = object.runSync ?? false;\n return message;\n },\n};\n\nfunction createBaseAgentTaskResponse(): AgentTaskResponse {\n return { taskId: 0, taskStatus: 0, metadata: \"\" };\n}\n\nexport const AgentTaskResponse = {\n encode(message: AgentTaskResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.taskId !== 0) {\n writer.uint32(8).int64(message.taskId);\n }\n if (message.taskStatus !== 0) {\n writer.uint32(16).int32(message.taskStatus);\n }\n if (message.metadata !== \"\") {\n writer.uint32(26).string(message.metadata);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): AgentTaskResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseAgentTaskResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 8) {\n break;\n }\n\n message.taskId = longToNumber(reader.int64() as Long);\n continue;\n case 2:\n if (tag !== 16) {\n break;\n }\n\n message.taskStatus = reader.int32() as any;\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.metadata = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): AgentTaskResponse {\n return {\n taskId: isSet(object.taskId) ? globalThis.Number(object.taskId) : 0,\n taskStatus: isSet(object.taskStatus) ? agentTaskStatusFromJSON(object.taskStatus) : 0,\n metadata: isSet(object.metadata) ? globalThis.String(object.metadata) : \"\",\n };\n },\n\n toJSON(message: AgentTaskResponse): unknown {\n const obj: any = {};\n if (message.taskId !== 0) {\n obj.taskId = Math.round(message.taskId);\n }\n if (message.taskStatus !== 0) {\n obj.taskStatus = agentTaskStatusToJSON(message.taskStatus);\n }\n if (message.metadata !== \"\") {\n obj.metadata = message.metadata;\n }\n return obj;\n },\n\n create, I>>(base?: I): AgentTaskResponse {\n return AgentTaskResponse.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): AgentTaskResponse {\n const message = createBaseAgentTaskResponse();\n message.taskId = object.taskId ?? 0;\n message.taskStatus = object.taskStatus ?? 0;\n message.metadata = object.metadata ?? \"\";\n return message;\n },\n};\n\nfunction createBaseTaskStatusAndRequestResponseTuple(): TaskStatusAndRequestResponseTuple {\n return { request: undefined, response: [], taskStatus: 0, createdTsSec: 0 };\n}\n\nexport const TaskStatusAndRequestResponseTuple = {\n encode(message: TaskStatusAndRequestResponseTuple, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.request !== undefined) {\n AgentRequest.encode(message.request, writer.uint32(10).fork()).ldelim();\n }\n for (const v of message.response) {\n AgentStreamingResponse.encode(v!, writer.uint32(18).fork()).ldelim();\n }\n if (message.taskStatus !== 0) {\n writer.uint32(24).int32(message.taskStatus);\n }\n if (message.createdTsSec !== 0) {\n writer.uint32(32).int64(message.createdTsSec);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): TaskStatusAndRequestResponseTuple {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseTaskStatusAndRequestResponseTuple();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.request = AgentRequest.decode(reader, reader.uint32());\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.response.push(AgentStreamingResponse.decode(reader, reader.uint32()));\n continue;\n case 3:\n if (tag !== 24) {\n break;\n }\n\n message.taskStatus = reader.int32() as any;\n continue;\n case 4:\n if (tag !== 32) {\n break;\n }\n\n message.createdTsSec = longToNumber(reader.int64() as Long);\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): TaskStatusAndRequestResponseTuple {\n return {\n request: isSet(object.request) ? AgentRequest.fromJSON(object.request) : undefined,\n response: globalThis.Array.isArray(object?.response)\n ? object.response.map((e: any) => AgentStreamingResponse.fromJSON(e))\n : [],\n taskStatus: isSet(object.taskStatus) ? agentTaskStatusFromJSON(object.taskStatus) : 0,\n createdTsSec: isSet(object.createdTsSec) ? globalThis.Number(object.createdTsSec) : 0,\n };\n },\n\n toJSON(message: TaskStatusAndRequestResponseTuple): unknown {\n const obj: any = {};\n if (message.request !== undefined) {\n obj.request = AgentRequest.toJSON(message.request);\n }\n if (message.response?.length) {\n obj.response = message.response.map((e) => AgentStreamingResponse.toJSON(e));\n }\n if (message.taskStatus !== 0) {\n obj.taskStatus = agentTaskStatusToJSON(message.taskStatus);\n }\n if (message.createdTsSec !== 0) {\n obj.createdTsSec = Math.round(message.createdTsSec);\n }\n return obj;\n },\n\n create, I>>(\n base?: I,\n ): TaskStatusAndRequestResponseTuple {\n return TaskStatusAndRequestResponseTuple.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(\n object: I,\n ): TaskStatusAndRequestResponseTuple {\n const message = createBaseTaskStatusAndRequestResponseTuple();\n message.request = (object.request !== undefined && object.request !== null)\n ? AgentRequest.fromPartial(object.request)\n : undefined;\n message.response = object.response?.map((e) => AgentStreamingResponse.fromPartial(e)) || [];\n message.taskStatus = object.taskStatus ?? 0;\n message.createdTsSec = object.createdTsSec ?? 0;\n return message;\n },\n};\n\nfunction createBaseDBAgentTaskRequestResponse(): DBAgentTaskRequestResponse {\n return { originalRequest: undefined, orderedStateResponses: [] };\n}\n\nexport const DBAgentTaskRequestResponse = {\n encode(message: DBAgentTaskRequestResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.originalRequest !== undefined) {\n AgentRequest.encode(message.originalRequest, writer.uint32(10).fork()).ldelim();\n }\n for (const v of message.orderedStateResponses) {\n TaskStatusAndRequestResponseTuple.encode(v!, writer.uint32(18).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): DBAgentTaskRequestResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDBAgentTaskRequestResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.originalRequest = AgentRequest.decode(reader, reader.uint32());\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.orderedStateResponses.push(TaskStatusAndRequestResponseTuple.decode(reader, reader.uint32()));\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): DBAgentTaskRequestResponse {\n return {\n originalRequest: isSet(object.originalRequest) ? AgentRequest.fromJSON(object.originalRequest) : undefined,\n orderedStateResponses: globalThis.Array.isArray(object?.orderedStateResponses)\n ? object.orderedStateResponses.map((e: any) => TaskStatusAndRequestResponseTuple.fromJSON(e))\n : [],\n };\n },\n\n toJSON(message: DBAgentTaskRequestResponse): unknown {\n const obj: any = {};\n if (message.originalRequest !== undefined) {\n obj.originalRequest = AgentRequest.toJSON(message.originalRequest);\n }\n if (message.orderedStateResponses?.length) {\n obj.orderedStateResponses = message.orderedStateResponses.map((e) => TaskStatusAndRequestResponseTuple.toJSON(e));\n }\n return obj;\n },\n\n create, I>>(base?: I): DBAgentTaskRequestResponse {\n return DBAgentTaskRequestResponse.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): DBAgentTaskRequestResponse {\n const message = createBaseDBAgentTaskRequestResponse();\n message.originalRequest = (object.originalRequest !== undefined && object.originalRequest !== null)\n ? AgentRequest.fromPartial(object.originalRequest)\n : undefined;\n message.orderedStateResponses =\n object.orderedStateResponses?.map((e) => TaskStatusAndRequestResponseTuple.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseConnectorKbAnnotationInputRequest(): ConnectorKbAnnotationInputRequest {\n return {\n pomDep: \"\",\n configCode: \"\",\n actionCode: \"\",\n actionType: \"\",\n actionDescription: \"\",\n creatorEmail: \"\",\n snippetDescription: \"\",\n };\n}\n\nexport const ConnectorKbAnnotationInputRequest = {\n encode(message: ConnectorKbAnnotationInputRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.pomDep !== \"\") {\n writer.uint32(10).string(message.pomDep);\n }\n if (message.configCode !== \"\") {\n writer.uint32(18).string(message.configCode);\n }\n if (message.actionCode !== \"\") {\n writer.uint32(26).string(message.actionCode);\n }\n if (message.actionType !== \"\") {\n writer.uint32(34).string(message.actionType);\n }\n if (message.actionDescription !== \"\") {\n writer.uint32(42).string(message.actionDescription);\n }\n if (message.creatorEmail !== \"\") {\n writer.uint32(50).string(message.creatorEmail);\n }\n if (message.snippetDescription !== \"\") {\n writer.uint32(58).string(message.snippetDescription);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ConnectorKbAnnotationInputRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseConnectorKbAnnotationInputRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.pomDep = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.configCode = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.actionCode = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.actionType = reader.string();\n continue;\n case 5:\n if (tag !== 42) {\n break;\n }\n\n message.actionDescription = reader.string();\n continue;\n case 6:\n if (tag !== 50) {\n break;\n }\n\n message.creatorEmail = reader.string();\n continue;\n case 7:\n if (tag !== 58) {\n break;\n }\n\n message.snippetDescription = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): ConnectorKbAnnotationInputRequest {\n return {\n pomDep: isSet(object.pomDep) ? globalThis.String(object.pomDep) : \"\",\n configCode: isSet(object.configCode) ? globalThis.String(object.configCode) : \"\",\n actionCode: isSet(object.actionCode) ? globalThis.String(object.actionCode) : \"\",\n actionType: isSet(object.actionType) ? globalThis.String(object.actionType) : \"\",\n actionDescription: isSet(object.actionDescription) ? globalThis.String(object.actionDescription) : \"\",\n creatorEmail: isSet(object.creatorEmail) ? globalThis.String(object.creatorEmail) : \"\",\n snippetDescription: isSet(object.snippetDescription) ? globalThis.String(object.snippetDescription) : \"\",\n };\n },\n\n toJSON(message: ConnectorKbAnnotationInputRequest): unknown {\n const obj: any = {};\n if (message.pomDep !== \"\") {\n obj.pomDep = message.pomDep;\n }\n if (message.configCode !== \"\") {\n obj.configCode = message.configCode;\n }\n if (message.actionCode !== \"\") {\n obj.actionCode = message.actionCode;\n }\n if (message.actionType !== \"\") {\n obj.actionType = message.actionType;\n }\n if (message.actionDescription !== \"\") {\n obj.actionDescription = message.actionDescription;\n }\n if (message.creatorEmail !== \"\") {\n obj.creatorEmail = message.creatorEmail;\n }\n if (message.snippetDescription !== \"\") {\n obj.snippetDescription = message.snippetDescription;\n }\n return obj;\n },\n\n create, I>>(\n base?: I,\n ): ConnectorKbAnnotationInputRequest {\n return ConnectorKbAnnotationInputRequest.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(\n object: I,\n ): ConnectorKbAnnotationInputRequest {\n const message = createBaseConnectorKbAnnotationInputRequest();\n message.pomDep = object.pomDep ?? \"\";\n message.configCode = object.configCode ?? \"\";\n message.actionCode = object.actionCode ?? \"\";\n message.actionType = object.actionType ?? \"\";\n message.actionDescription = object.actionDescription ?? \"\";\n message.creatorEmail = object.creatorEmail ?? \"\";\n message.snippetDescription = object.snippetDescription ?? \"\";\n return message;\n },\n};\n\nfunction createBaseConnectorKbAnnotationInputResponse(): ConnectorKbAnnotationInputResponse {\n return { result: \"\" };\n}\n\nexport const ConnectorKbAnnotationInputResponse = {\n encode(message: ConnectorKbAnnotationInputResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.result !== \"\") {\n writer.uint32(10).string(message.result);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ConnectorKbAnnotationInputResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseConnectorKbAnnotationInputResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.result = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): ConnectorKbAnnotationInputResponse {\n return { result: isSet(object.result) ? globalThis.String(object.result) : \"\" };\n },\n\n toJSON(message: ConnectorKbAnnotationInputResponse): unknown {\n const obj: any = {};\n if (message.result !== \"\") {\n obj.result = message.result;\n }\n return obj;\n },\n\n create, I>>(\n base?: I,\n ): ConnectorKbAnnotationInputResponse {\n return ConnectorKbAnnotationInputResponse.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(\n object: I,\n ): ConnectorKbAnnotationInputResponse {\n const message = createBaseConnectorKbAnnotationInputResponse();\n message.result = object.result ?? \"\";\n return message;\n },\n};\n\nfunction createBaseConnectorKbAnnotationDisplayTaskRequest(): ConnectorKbAnnotationDisplayTaskRequest {\n return {};\n}\n\nexport const ConnectorKbAnnotationDisplayTaskRequest = {\n encode(_: ConnectorKbAnnotationDisplayTaskRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ConnectorKbAnnotationDisplayTaskRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseConnectorKbAnnotationDisplayTaskRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(_: any): ConnectorKbAnnotationDisplayTaskRequest {\n return {};\n },\n\n toJSON(_: ConnectorKbAnnotationDisplayTaskRequest): unknown {\n const obj: any = {};\n return obj;\n },\n\n create, I>>(\n base?: I,\n ): ConnectorKbAnnotationDisplayTaskRequest {\n return ConnectorKbAnnotationDisplayTaskRequest.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(\n _: I,\n ): ConnectorKbAnnotationDisplayTaskRequest {\n const message = createBaseConnectorKbAnnotationDisplayTaskRequest();\n return message;\n },\n};\n\nfunction createBaseConnectorKbAnnotationDisplayTaskTuple(): ConnectorKbAnnotationDisplayTaskTuple {\n return { pomDep: \"\", configKey: \"\", opKey: \"\", srcKey: \"\" };\n}\n\nexport const ConnectorKbAnnotationDisplayTaskTuple = {\n encode(message: ConnectorKbAnnotationDisplayTaskTuple, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.pomDep !== \"\") {\n writer.uint32(10).string(message.pomDep);\n }\n if (message.configKey !== \"\") {\n writer.uint32(18).string(message.configKey);\n }\n if (message.opKey !== \"\") {\n writer.uint32(26).string(message.opKey);\n }\n if (message.srcKey !== \"\") {\n writer.uint32(34).string(message.srcKey);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ConnectorKbAnnotationDisplayTaskTuple {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseConnectorKbAnnotationDisplayTaskTuple();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.pomDep = reader.string();\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.configKey = reader.string();\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.opKey = reader.string();\n continue;\n case 4:\n if (tag !== 34) {\n break;\n }\n\n message.srcKey = reader.string();\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): ConnectorKbAnnotationDisplayTaskTuple {\n return {\n pomDep: isSet(object.pomDep) ? globalThis.String(object.pomDep) : \"\",\n configKey: isSet(object.configKey) ? globalThis.String(object.configKey) : \"\",\n opKey: isSet(object.opKey) ? globalThis.String(object.opKey) : \"\",\n srcKey: isSet(object.srcKey) ? globalThis.String(object.srcKey) : \"\",\n };\n },\n\n toJSON(message: ConnectorKbAnnotationDisplayTaskTuple): unknown {\n const obj: any = {};\n if (message.pomDep !== \"\") {\n obj.pomDep = message.pomDep;\n }\n if (message.configKey !== \"\") {\n obj.configKey = message.configKey;\n }\n if (message.opKey !== \"\") {\n obj.opKey = message.opKey;\n }\n if (message.srcKey !== \"\") {\n obj.srcKey = message.srcKey;\n }\n return obj;\n },\n\n create, I>>(\n base?: I,\n ): ConnectorKbAnnotationDisplayTaskTuple {\n return ConnectorKbAnnotationDisplayTaskTuple.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(\n object: I,\n ): ConnectorKbAnnotationDisplayTaskTuple {\n const message = createBaseConnectorKbAnnotationDisplayTaskTuple();\n message.pomDep = object.pomDep ?? \"\";\n message.configKey = object.configKey ?? \"\";\n message.opKey = object.opKey ?? \"\";\n message.srcKey = object.srcKey ?? \"\";\n return message;\n },\n};\n\nfunction createBaseConnectorKbAnnotationDisplayTaskResponse(): ConnectorKbAnnotationDisplayTaskResponse {\n return { tasks: [] };\n}\n\nexport const ConnectorKbAnnotationDisplayTaskResponse = {\n encode(message: ConnectorKbAnnotationDisplayTaskResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n for (const v of message.tasks) {\n ConnectorKbAnnotationDisplayTaskTuple.encode(v!, writer.uint32(10).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ConnectorKbAnnotationDisplayTaskResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseConnectorKbAnnotationDisplayTaskResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.tasks.push(ConnectorKbAnnotationDisplayTaskTuple.decode(reader, reader.uint32()));\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): ConnectorKbAnnotationDisplayTaskResponse {\n return {\n tasks: globalThis.Array.isArray(object?.tasks)\n ? object.tasks.map((e: any) => ConnectorKbAnnotationDisplayTaskTuple.fromJSON(e))\n : [],\n };\n },\n\n toJSON(message: ConnectorKbAnnotationDisplayTaskResponse): unknown {\n const obj: any = {};\n if (message.tasks?.length) {\n obj.tasks = message.tasks.map((e) => ConnectorKbAnnotationDisplayTaskTuple.toJSON(e));\n }\n return obj;\n },\n\n create, I>>(\n base?: I,\n ): ConnectorKbAnnotationDisplayTaskResponse {\n return ConnectorKbAnnotationDisplayTaskResponse.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(\n object: I,\n ): ConnectorKbAnnotationDisplayTaskResponse {\n const message = createBaseConnectorKbAnnotationDisplayTaskResponse();\n message.tasks = object.tasks?.map((e) => ConnectorKbAnnotationDisplayTaskTuple.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseRepoMetadataRequest(): RepoMetadataRequest {\n return { userId: 0, orgId: 0, codeContext: undefined, platform: 0 };\n}\n\nexport const RepoMetadataRequest = {\n encode(message: RepoMetadataRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.userId !== 0) {\n writer.uint32(8).int64(message.userId);\n }\n if (message.orgId !== 0) {\n writer.uint32(16).int64(message.orgId);\n }\n if (message.codeContext !== undefined) {\n CodeContext.encode(message.codeContext, writer.uint32(26).fork()).ldelim();\n }\n if (message.platform !== 0) {\n writer.uint32(32).int32(message.platform);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RepoMetadataRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRepoMetadataRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 8) {\n break;\n }\n\n message.userId = longToNumber(reader.int64() as Long);\n continue;\n case 2:\n if (tag !== 16) {\n break;\n }\n\n message.orgId = longToNumber(reader.int64() as Long);\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.codeContext = CodeContext.decode(reader, reader.uint32());\n continue;\n case 4:\n if (tag !== 32) {\n break;\n }\n\n message.platform = reader.int32() as any;\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): RepoMetadataRequest {\n return {\n userId: isSet(object.userId) ? globalThis.Number(object.userId) : 0,\n orgId: isSet(object.orgId) ? globalThis.Number(object.orgId) : 0,\n codeContext: isSet(object.codeContext) ? CodeContext.fromJSON(object.codeContext) : undefined,\n platform: isSet(object.platform) ? integrationPlatformFromJSON(object.platform) : 0,\n };\n },\n\n toJSON(message: RepoMetadataRequest): unknown {\n const obj: any = {};\n if (message.userId !== 0) {\n obj.userId = Math.round(message.userId);\n }\n if (message.orgId !== 0) {\n obj.orgId = Math.round(message.orgId);\n }\n if (message.codeContext !== undefined) {\n obj.codeContext = CodeContext.toJSON(message.codeContext);\n }\n if (message.platform !== 0) {\n obj.platform = integrationPlatformToJSON(message.platform);\n }\n return obj;\n },\n\n create, I>>(base?: I): RepoMetadataRequest {\n return RepoMetadataRequest.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): RepoMetadataRequest {\n const message = createBaseRepoMetadataRequest();\n message.userId = object.userId ?? 0;\n message.orgId = object.orgId ?? 0;\n message.codeContext = (object.codeContext !== undefined && object.codeContext !== null)\n ? CodeContext.fromPartial(object.codeContext)\n : undefined;\n message.platform = object.platform ?? 0;\n return message;\n },\n};\n\nfunction createBaseRepoMetadataResponse(): RepoMetadataResponse {\n return { muleAllFlowNames: [], muleApiFlowNames: [], muleEventFlowNames: [] };\n}\n\nexport const RepoMetadataResponse = {\n encode(message: RepoMetadataResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n for (const v of message.muleAllFlowNames) {\n writer.uint32(10).string(v!);\n }\n for (const v of message.muleApiFlowNames) {\n writer.uint32(18).string(v!);\n }\n for (const v of message.muleEventFlowNames) {\n writer.uint32(26).string(v!);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): RepoMetadataResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseRepoMetadataResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag !== 10) {\n break;\n }\n\n message.muleAllFlowNames.push(reader.string());\n continue;\n case 2:\n if (tag !== 18) {\n break;\n }\n\n message.muleApiFlowNames.push(reader.string());\n continue;\n case 3:\n if (tag !== 26) {\n break;\n }\n\n message.muleEventFlowNames.push(reader.string());\n continue;\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): RepoMetadataResponse {\n return {\n muleAllFlowNames: globalThis.Array.isArray(object?.muleAllFlowNames)\n ? object.muleAllFlowNames.map((e: any) => globalThis.String(e))\n : [],\n muleApiFlowNames: globalThis.Array.isArray(object?.muleApiFlowNames)\n ? object.muleApiFlowNames.map((e: any) => globalThis.String(e))\n : [],\n muleEventFlowNames: globalThis.Array.isArray(object?.muleEventFlowNames)\n ? object.muleEventFlowNames.map((e: any) => globalThis.String(e))\n : [],\n };\n },\n\n toJSON(message: RepoMetadataResponse): unknown {\n const obj: any = {};\n if (message.muleAllFlowNames?.length) {\n obj.muleAllFlowNames = message.muleAllFlowNames;\n }\n if (message.muleApiFlowNames?.length) {\n obj.muleApiFlowNames = message.muleApiFlowNames;\n }\n if (message.muleEventFlowNames?.length) {\n obj.muleEventFlowNames = message.muleEventFlowNames;\n }\n return obj;\n },\n\n create, I>>(base?: I): RepoMetadataResponse {\n return RepoMetadataResponse.fromPartial(base ?? ({} as any));\n },\n fromPartial, I>>(object: I): RepoMetadataResponse {\n const message = createBaseRepoMetadataResponse();\n message.muleAllFlowNames = object.muleAllFlowNames?.map((e) => e) || [];\n message.muleApiFlowNames = object.muleApiFlowNames?.map((e) => e) || [];\n message.muleEventFlowNames = object.muleEventFlowNames?.map((e) => e) || [];\n return message;\n },\n};\n\nexport interface AgentService {\n /**\n * If the stream is set as false in request, then each chunk of the streaming response would be a complete message of its own.\n * If the stream is set as True in request:\n * Each message of type IMAGE_BASE64/PR would be a complete message\n * For TEXT message, it be chunked and would have to aggregated at client side i.e\n *\n * images = []\n * pr = []\n * text_content = \"\"\n * for chunk in response:\n * if chunk.message_type == IMAGE_BASE64:\n * images.append(chunk.delta_content)\n * elif chunk.message_type == PR:\n * pr.append(chunk.delta_content)\n * elif chunk.message_type == TEXT:\n * text_content = text_content + chunk.delta_content\n */\n RunAgent(request: AgentRequest): Observable;\n GetIndexRepos(request: GetIndexReposRequest): Promise;\n SubmitAgentTask(request: AgentTaskRequest): Promise;\n RepoMetadata(request: RepoMetadataRequest): Promise;\n ConnectorKbAnnotationInput(request: ConnectorKbAnnotationInputRequest): Promise;\n ConnectorKbAnnotationDisplayTask(\n request: ConnectorKbAnnotationDisplayTaskRequest,\n ): Promise;\n}\n\nexport const AgentServiceServiceName = \"agents.AgentService\";\nexport class AgentServiceClientImpl implements AgentService {\n private readonly rpc: Rpc;\n private readonly service: string;\n constructor(rpc: Rpc, opts?: { service?: string }) {\n this.service = opts?.service || AgentServiceServiceName;\n this.rpc = rpc;\n this.RunAgent = this.RunAgent.bind(this);\n this.GetIndexRepos = this.GetIndexRepos.bind(this);\n this.SubmitAgentTask = this.SubmitAgentTask.bind(this);\n this.RepoMetadata = this.RepoMetadata.bind(this);\n this.ConnectorKbAnnotationInput = this.ConnectorKbAnnotationInput.bind(this);\n this.ConnectorKbAnnotationDisplayTask = this.ConnectorKbAnnotationDisplayTask.bind(this);\n }\n RunAgent(request: AgentRequest): Observable {\n const data = AgentRequest.encode(request).finish();\n const result = this.rpc.serverStreamingRequest(this.service, \"RunAgent\", data);\n return result.pipe(map((data) => AgentStreamingResponse.decode(_m0.Reader.create(data))));\n }\n\n GetIndexRepos(request: GetIndexReposRequest): Promise {\n const data = GetIndexReposRequest.encode(request).finish();\n const promise = this.rpc.request(this.service, \"GetIndexRepos\", data);\n return promise.then((data) => GetIndexReposResponse.decode(_m0.Reader.create(data)));\n }\n\n SubmitAgentTask(request: AgentTaskRequest): Promise {\n const data = AgentTaskRequest.encode(request).finish();\n const promise = this.rpc.request(this.service, \"SubmitAgentTask\", data);\n return promise.then((data) => AgentTaskResponse.decode(_m0.Reader.create(data)));\n }\n\n RepoMetadata(request: RepoMetadataRequest): Promise {\n const data = RepoMetadataRequest.encode(request).finish();\n const promise = this.rpc.request(this.service, \"RepoMetadata\", data);\n return promise.then((data) => RepoMetadataResponse.decode(_m0.Reader.create(data)));\n }\n\n ConnectorKbAnnotationInput(request: ConnectorKbAnnotationInputRequest): Promise {\n const data = ConnectorKbAnnotationInputRequest.encode(request).finish();\n const promise = this.rpc.request(this.service, \"ConnectorKbAnnotationInput\", data);\n return promise.then((data) => ConnectorKbAnnotationInputResponse.decode(_m0.Reader.create(data)));\n }\n\n ConnectorKbAnnotationDisplayTask(\n request: ConnectorKbAnnotationDisplayTaskRequest,\n ): Promise {\n const data = ConnectorKbAnnotationDisplayTaskRequest.encode(request).finish();\n const promise = this.rpc.request(this.service, \"ConnectorKbAnnotationDisplayTask\", data);\n return promise.then((data) => ConnectorKbAnnotationDisplayTaskResponse.decode(_m0.Reader.create(data)));\n }\n}\n\ninterface Rpc {\n request(service: string, method: string, data: Uint8Array): Promise;\n clientStreamingRequest(service: string, method: string, data: Observable): Promise;\n serverStreamingRequest(service: string, method: string, data: Uint8Array): Observable;\n bidirectionalStreamingRequest(service: string, method: string, data: Observable): Observable;\n}\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\nexport type DeepPartial = T extends Builtin ? T\n : T extends globalThis.Array ? globalThis.Array>\n : T extends ReadonlyArray ? ReadonlyArray>\n : T extends {} ? { [K in keyof T]?: DeepPartial }\n : Partial;\n\ntype KeysOfUnion = T extends T ? keyof T : never;\nexport type Exact = P extends Builtin ? P\n : P & { [K in keyof P]: Exact } & { [K in Exclude>]: never };\n\nfunction longToNumber(long: Long): number {\n if (long.gt(globalThis.Number.MAX_SAFE_INTEGER)) {\n throw new globalThis.Error(\"Value is larger than Number.MAX_SAFE_INTEGER\");\n }\n if (long.lt(globalThis.Number.MIN_SAFE_INTEGER)) {\n throw new globalThis.Error(\"Value is smaller than Number.MIN_SAFE_INTEGER\");\n }\n return long.toNumber();\n}\n\nif (_m0.util.Long !== Long) {\n _m0.util.Long = Long as any;\n _m0.configure();\n}\n\nfunction isSet(value: any): boolean {\n return value !== null && value !== undefined;\n}\n","import * as docx from 'docx'\nimport { EventEmitter } from 'events'\n\n/**\n * CurieEventEmitter is a singleton class that manages event listeners for the app.\n */\nexport class CurieEventEmitter extends EventEmitter {\n static #createdAppEvents: Map void> = new Map()\n\n globalOn(event: AppEvents, listener: (...args: any[]) => void) {\n if (CurieEventEmitter.#createdAppEvents.has(event)) {\n const oldListener = CurieEventEmitter.#createdAppEvents.get(event)\n if (oldListener != null) {\n this.off(event, oldListener)\n }\n }\n this.on(event, listener)\n CurieEventEmitter.#createdAppEvents.set(event, listener)\n }\n}\n\nexport const globalEventEmitter = new CurieEventEmitter()\nglobalEventEmitter.setMaxListeners(1024)\n\nexport enum AppEvents {\n ScrollMessagesToBottom = 'ScrollMessagesToBottom',\n setActiveTab = 'setActiveTab',\n CreateTask = 'CreateTask',\n TaskSubmitted = 'TaskSubmitted',\n SubmitTask = 'SubmitTask',\n SocketEvent = 'SocketEvent',\n ReviewCommentsUpdated = 'ReviewCommentsUpdated',\n OpenModal = 'OpenModal',\n CloseModal = 'CloseModal',\n OpenDocCommentPopover = 'OpenDocCommentPopover',\n OpenDocCommentPopoverCallback = 'OpenDocCommentPopoverCallback',\n SetTextAreaValue = 'SetTextAreaValue',\n SubmitTutorial = 'SubmitTutorial',\n OpenTaskForm = 'OpenTaskForm',\n CloseTaskForm = 'CloseTaskForm',\n GetNewConversation = 'GetNewConversation',\n SubmitFixedPromptTask = 'SubmitFixedPromptTask'\n}\n\ninterface Inputs {\n html: string\n markdown?: string\n doc?: docx.Document\n dwl?: string\n}\n\nexport async function saveAsFile(inputs: Inputs, contentType = 'text/html') {\n const { markdown, html, doc, dwl } = inputs\n function getFilename(content: string, ext: string) {\n const titleMatch = content.match(/]*>([\\s\\S]*?)<\\/h[1-6]>/i)\n if (titleMatch) {\n const titleText = titleMatch[1]\n .replace(/<[^>]+>/g, '')\n .trim()\n .replace(/\\s+/g, '-')\n .toLowerCase()\n return titleText + '.' + ext\n }\n\n const textContent = content.replace(/<[^>]+>/g, '').trim()\n const firstWords = textContent.split(/\\s+/).slice(0, 5).join('-').toLowerCase()\n if (firstWords.length > 0) {\n return firstWords + '.' + ext\n }\n\n const date = new Date().toISOString().split('T')[0]\n return `doc-${date}.${ext}`\n }\n\n let blob\n let ext = 'html'\n if (contentType === 'text/dwl') {\n blob = new Blob([dwl!], { type: 'text/plain' })\n ext = 'dwl'\n } else if (contentType === 'text/markdown') {\n blob = new Blob([markdown!], { type: 'text/markdown' })\n ext = 'md'\n } else if (\n contentType === 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'\n ) {\n blob = await docx.Packer.toBlob(doc!)\n ext = 'docx'\n } else {\n blob = new Blob([addCssToHtml(html)], { type: contentType })\n }\n\n let filename = getFilename(html, ext)\n if (ext === 'dwl') {\n filename = getFilename('script', ext)\n }\n const a = document.createElement('a')\n a.href = URL.createObjectURL(blob)\n a.download = filename\n a.click()\n URL.revokeObjectURL(a.href)\n}\n\nexport function csvToMarkdown(csv: string): string {\n const rows = csv.split('\\n').map(row => row.split(','))\n const headers = rows[0]\n const table = []\n\n // Create header row\n table.push(`| ${headers.join(' | ')} |`)\n table.push(`| ${headers.map(() => '---').join(' | ')} |`)\n\n // Create data rows\n for (let i = 1; i < rows.length; i++) {\n table.push(`| ${rows[i].join(' | ')} |`)\n }\n\n return table.join('\\n')\n}\n\nexport function sleep(msec: number = 1e3) {\n return new Promise(resolve => {\n setTimeout(resolve, msec)\n })\n}\n\nexport function getFileBase64(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader()\n reader.onloadend = () => {\n const base64 = reader.result as string\n const base64WitoutPrefix = base64.split(',')[1]\n resolve(base64WitoutPrefix)\n }\n reader.onerror = reject\n reader.readAsDataURL(file)\n })\n}\n\nexport function svg2base64(svg: string, width = 1200): string {\n const svgWithBg = svg.replace(\n /]+)>/,\n `\n `\n )\n return `data:image/svg+xml;base64,${btoa(\n encodeURIComponent(svgWithBg).replace(/%([0-9A-F]{2})/g, (match, p1) =>\n String.fromCharCode(parseInt(p1, 16))\n )\n )}`\n}\n\nexport function toCamelCase(str: string): string {\n str = str.replace(/_/g, ' ')\n return str\n .split(' ')\n .map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())\n .join(' ')\n}\n\nexport function extractDataWeaveCode(markdownContent: string): string {\n const codeBlockRegex = /```[\\s\\S]*?```/g\n const codeBlocks = markdownContent.match(codeBlockRegex)\n\n if (codeBlocks && codeBlocks.length > 0) {\n let dataWeaveCode = codeBlocks[0]\n\n dataWeaveCode = dataWeaveCode.replace(/```[\\s\\S]?|```$/g, '')\n\n dataWeaveCode = dataWeaveCode.replace(/^dw 2\\.0\\n/, '')\n\n return dataWeaveCode.trim()\n }\n\n return markdownContent\n}\n\n/**\n * @description Add CSS to the HTML content, if the HTML content does not have a head tag\n * it will add the head tag and the CSS to the head tag.\n *\n * @param html string\n * @returns string\n */\nexport function addCssToHtml(htmlContent: string): string {\n const hasDoctype = htmlContent.includes('')\n const hasHeadTag = htmlContent.includes('')\n const hasBodyTag = htmlContent.includes('')\n\n let fullHtmlContent = htmlContent\n const css = `\nbody {\n font-family: sans-serif;\n line-height: 1.6;\n color: #333;\n padding: 20px;\n}\n\nh1, h2, h3, h4, h5, h6 {\n color: #333;\n margin: 1em 0 0.5em;\n}\n\np {\n margin: 0.5em 0;\n}\n\na {\n color: #0066cc;\n}\n\nul, ol {\n padding-left: 20px;\n}\n\nli {\n margin: 0.3em 0;\n}\n\nblockquote {\n padding-left: 1em;\n border-left: 3px solid #ddd;\n color: #555;\n}\n\ncode {\n font-family: monospace;\n background-color: #f4f4f4;\n padding: 2px 4px;\n}\n\npre {\n background-color: #f4f4f4;\n padding: 10px;\n overflow-x: auto;\n}\n\nimg {\n width: auto;\n height: auto;\n}\n\ntable {\n border-collapse: collapse;\n width: 100%;\n margin: 1em 0;\n}\n\nth, td {\n border: 1px solid #ddd;\n padding: 8px;\n text-align: left;\n}`\n\n if (!hasBodyTag) {\n fullHtmlContent = `${fullHtmlContent}`\n }\n if (!hasHeadTag) {\n fullHtmlContent = `${fullHtmlContent}`\n } else {\n fullHtmlContent = fullHtmlContent.replace('', ``)\n }\n if (!hasHtmlTag) {\n fullHtmlContent = `${fullHtmlContent}`\n }\n if (!hasDoctype) {\n fullHtmlContent = `${fullHtmlContent}`\n }\n\n return fullHtmlContent\n}\n\nexport function extractDWLCode(content: string): string {\n const dwPattern = /(?:%dw\\s+2\\.0\\s*[\\s\\S]*?(?:---|$)[\\s\\S]*?)(?=(?:%dw|$))/g\n const matches = content.match(dwPattern)\n if (matches && matches.length > 0) {\n return matches[0].trim()\n }\n if (content.trim().startsWith('%dw')) {\n return content.trim()\n }\n return ''\n}\n"],"names":["useSimpleTextareaClassName","rows","initialHeight","getHeightClass","height","clampedHeight","Math","initialHeightPx","className","setClassName","useState","ref","useRef","useEffect","observer","MutationObserver","cssText","requestAnimationFrame","AgentTaskStatus","CommandType","SourceOutputExampleType","DiffType","agentTaskStatusFromJSON","object","agentTaskStatusToJSON","messageTypeFromJSON","messageTypeToJSON","commandTypeFromJSON","commandTypeToJSON","integrationPlatformFromJSON","integrationPlatformToJSON","sourceOutputExampleTypeFromJSON","sourceOutputExampleTypeToJSON","diffTypeFromJSON","diffTypeToJSON","createBaseRadioButton","RadioButton","message","writer","_m0","input","length","reader","end","undefined","tag","isSet","globalThis","obj","base","createBaseRadioGroup","RadioGroup","v","e","createBaseMultiSelectOption","MultiSelectOption","createBaseMultiSelect","MultiSelect","createBaseTextBarInput","TextBarInput","createBaseListSelectOption","ListSelectOption","createBaseListSelect","ListSelect","createBaseForm","Form","createBaseAgentInternalStatus","AgentInternalStatus","agentInternalEnumFromJSON","agentInternalEnumToJSON","createBaseStep","Step","MappingSheet","createBaseAddFlowSpec","AddFlowSpec","createBaseImage","Image","createBaseEnv","Env","envTypeFromJSON","envTypeToJSON","createBaseQuestionAskingInput","QuestionAskingInput","createBaseAgentRequest","AgentRequest","ConnectionDetail","Command","Metadata","Diff","CodePlan","Documentation","MunitScenarios","SourceOutputExamples","DiffComment","DocumentInlineComment","MigrationDocumentInput","DwlToInputOutputExample","RuntimeSettings","longToNumber","connectionTypeFromJSON","questionAnsweringTypeFromJSON","codeEnhancerTaskTypeFromJSON","connectionTypeToJSON","questionAnsweringTypeToJSON","codeEnhancerTaskTypeToJSON","createBaseRuntimeSettings","createBaseDwlToInputOutputExample","createBaseQuestionAskingOutput","QuestionAskingOutput","createBaseResponseContentStream","ResponseContentStream","DataWeaveGenCodeOutput","MigrationDocumentOutput","createBaseMigrationDocumentInput","createBaseMigrationDocumentOutput","createBaseMappingSheet","createBaseSourceOutputExamples","EdiSchemaType","createBaseEdiSchemaType","createBaseJiraDetail","JiraDetail","createBaseSlackDetail","SlackDetail","createBaseEclipseDetail","EclipseDetail","EclipseDiffsData","_","createBaseGithubDetail","GithubDetail","createBaseConnectionDetail","createBaseCodeContext","CodeContext","createBaseMetadata","Message","createBaseMessage","createBaseCommand","createBaseCodePlan","createBaseMunitScenarios","createBaseDataWeaveGenCodeOutput","createBaseDiff","createBaseDiffComment","createBaseDocumentInlineComment","createBaseDocumentation","createBaseAgentStreamingResponse","AgentStreamingResponse","createBaseTaskStatusAndRequestResponseTuple","TaskStatusAndRequestResponseTuple","createBaseDBAgentTaskRequestResponse","DBAgentTaskRequestResponse","createBaseRepoMetadataRequest","RepoMetadataRequest","long","value","Long","AppEvents","CurieEventEmitter","EventEmitter","Map","event","listener","oldListener","globalEventEmitter","csvToMarkdown","csv","row","headers","table","i","sleep","msec","Promise","resolve","setTimeout","svg2base64","svg","width","svgWithBg","btoa","encodeURIComponent","match","p1","String","parseInt","toCamelCase","str","word"],"mappings":"yPAOO,SAASA,EAA2B,CACzCC,KAAAA,EAAO,CAAC,CACRC,cAAAA,CAAa,CACmB,EAChC,IAAMC,EAAiB,AAACC,IACtB,IAAMC,EAAgBC,KAAK,GAAG,CAAC,EAAGA,KAAK,GAAG,CAAC,IAAKA,KAAK,KAAK,CAACF,KAC3D,MAAO,CAAC,EAAE,EAAEC,EAAc,EAAE,CAAC,AAC/B,EAEME,EAAkBL,GAAiBD,AAAO,GAAPA,EAAY,GAC/C,CAACO,EAAWC,EAAa,CAAGC,AAAAA,GAAAA,EAAAA,QAAAA,AAAAA,EAAS,IAAMP,EAAeI,IAC1DI,EAAMC,AAAAA,GAAAA,EAAAA,MAAAA,AAAAA,EAAmC,MAwB/C,MAtBAC,AAAAA,GAAAA,EAAAA,SAAAA,AAAAA,EAAU,KACR,IAAMC,EAAW,IAAIC,iBAAiB,KAChCJ,EAAI,OAAO,EAETK,AADYL,EAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAC7B,QAAQ,CAAC,WACnBM,sBAAsB,IAAMR,EAAa,IAG/C,GAWA,OATIE,EAAI,OAAO,EACbG,EAAS,OAAO,CAACH,EAAI,OAAO,CAAE,CAC5B,WAAY,GACZ,cAAe,GACf,UAAW,GACX,QAAS,EACX,GAGK,IAAMG,EAAS,UAAU,EAClC,EAAG,CAACH,EAAI,OAAO,CAAC,EAET,CAAEH,UAAAA,EAAWG,IAAAA,CAAI,CAC1B,C,oNC7BYO,EAwdAC,EAoRAC,EAqEAC,E,+BAjzBAH,GAC4B,CAD5BA,E,GAC4B,0CAEM,6BAEG,iCAEF,6BAEH,2BAEN,yBAEsB,+CAER,uCAEC,+CAEuD,2GAEpD,4CAES,gDAEL,4CAEa,4DAEL,oDAEN,gDAEpB,0BAEuD,sDAEiC,0C,wZArCtHA,GAiDL,SAASI,EAAwBC,CAAW,EACjD,OAAQA,GACN,KAAK,EACL,IAAK,mBACH,OAAO,CACT,MAAK,EACL,IAAK,YACH,OAAO,CACT,MAAK,EACL,IAAK,cACH,OAAO,CACT,MAAK,EACL,IAAK,YACH,OAAO,CACT,MAAK,EACL,IAAK,WACH,OAAO,CACT,MAAK,EACL,IAAK,UACH,OAAO,CACT,MAAK,EACL,IAAK,qBACH,OAAO,CACT,MAAK,EACL,IAAK,iBACH,OAAO,CACT,MAAK,EACL,IAAK,qBACH,OAAO,CACT,MAAK,EACL,IAAK,mDACH,OAAO,CACT,MAAK,GACL,IAAK,mBACH,OAAO,EACT,MAAK,GACL,IAAK,qBACH,OAAO,EACT,MAAK,GACL,IAAK,mBACH,OAAO,EACT,MAAK,GACL,IAAK,2BACH,OAAO,EACT,MAAK,GACL,IAAK,uBACH,OAAO,EACT,MAAK,GACL,IAAK,qBACH,OAAO,EACT,MAAK,GACL,IAAK,UACH,OAAO,EACT,MAAK,GACL,IAAK,wBACH,OAAO,EACT,MAAK,GACL,IAAK,kBACH,OAAO,EACT,MAAK,GACL,IAAK,gBACH,OAAO,EACT,MAAK,GACL,IAAK,iBACH,OAAO,EACT,MAAK,GACL,IAAK,oBACH,OAAO,EACT,MAAK,GACL,IAAK,gCACH,OAAO,EACT,MAAK,GACL,IAAK,8BACH,OAAO,EACT,MAAK,GACL,IAAK,kBACH,OAAO,EACT,MAAK,GACL,IAAK,gCACH,OAAO,EACT,SAGE,OAAO,EACX,CACF,CAEO,SAASC,EAAsBD,CAAuB,EAC3D,OAAQA,GACN,KAAK,EACH,MAAO,kBACT,MAAK,EACH,MAAO,WACT,MAAK,EACH,MAAO,aACT,MAAK,EACH,MAAO,WACT,MAAK,EACH,MAAO,UACT,MAAK,EACH,MAAO,SACT,MAAK,EACH,MAAO,oBACT,MAAK,EACH,MAAO,gBACT,MAAK,EACH,MAAO,oBACT,MAAK,EACH,MAAO,kDACT,MAAK,GACH,MAAO,kBACT,MAAK,GACH,MAAO,oBACT,MAAK,GACH,MAAO,kBACT,MAAK,GACH,MAAO,0BACT,MAAK,GACH,MAAO,sBACT,MAAK,GACH,MAAO,oBACT,MAAK,GACH,MAAO,SACT,MAAK,GACH,MAAO,uBACT,MAAK,GACH,MAAO,iBACT,MAAK,GACH,MAAO,eACT,MAAK,GACH,MAAO,gBACT,MAAK,GACH,MAAO,mBACT,MAAK,GACH,MAAO,+BACT,MAAK,GACH,MAAO,6BACT,MAAK,GACH,MAAO,iBACT,MAAK,GACH,MAAO,+BACT,SAEE,MAAO,cACX,CACF,CAuOO,SAASE,EAAoBF,CAAW,EAC7C,OAAQA,GACN,KAAK,EACL,IAAK,YACH,OAAO,CACT,MAAK,EACL,IAAK,KACH,OAAO,CACT,MAAK,EACL,IAAK,eACH,OAAO,CACT,MAAK,EACL,IAAK,OACH,OAAO,CACT,MAAK,EACL,IAAK,OACH,OAAO,CACT,MAAK,EACL,IAAK,gBACH,OAAO,CACT,SAGE,OAAO,EACX,CACF,CAEO,SAASG,EAAkBH,CAAmB,EACnD,OAAQA,GACN,KAAK,EACH,MAAO,WACT,MAAK,EACH,MAAO,IACT,MAAK,EACH,MAAO,cACT,MAAK,EACH,MAAO,MACT,MAAK,EACH,MAAO,MACT,MAAK,EACH,MAAO,eACT,SAEE,MAAO,cACX,CACF,CAEO,IAAKJ,G,CAAAA,E,kpDAAAA,GA+BL,SAASQ,EAAoBJ,CAAW,EAC7C,OAAQA,GACN,KAAK,EACL,IAAK,OACH,OAAO,CACT,MAAK,EACL,IAAK,qBACH,OAAO,CACT,MAAK,EACL,IAAK,iBACH,OAAO,CACT,MAAK,EACL,IAAK,0BACH,OAAO,CACT,MAAK,EACL,IAAK,SACH,OAAO,CACT,MAAK,EACL,IAAK,yBACH,OAAO,CACT,MAAK,EACL,IAAK,iDACH,OAAO,CACT,MAAK,EACL,IAAK,qCACH,OAAO,CACT,MAAK,EACL,IAAK,yBACH,OAAO,CACT,MAAK,EACL,IAAK,mCACH,OAAO,CACT,MAAK,GACL,IAAK,4BACH,OAAO,EACT,MAAK,GACL,IAAK,6BACH,OAAO,EACT,MAAK,GACL,IAAK,sBACH,OAAO,EACT,MAAK,GACL,IAAK,qBACH,OAAO,EACT,MAAK,GACL,IAAK,gBACH,OAAO,EACT,MAAK,GACL,IAAK,oCACH,OAAO,EACT,MAAK,GACL,IAAK,yCACH,OAAO,EACT,MAAK,GACL,IAAK,qBACH,OAAO,EACT,MAAK,GACL,IAAK,iCACH,OAAO,EACT,MAAK,GACL,IAAK,oDACH,OAAO,EACT,MAAK,GACL,IAAK,gCACH,OAAO,EACT,MAAK,GACL,IAAK,wCACH,OAAO,EACT,MAAK,GACL,IAAK,cACH,OAAO,EACT,MAAK,GACL,IAAK,8BACH,OAAO,EACT,MAAK,GACL,IAAK,+BACH,OAAO,EACT,MAAK,GACL,IAAK,oBACH,OAAO,EACT,MAAK,GACL,IAAK,6BACH,OAAO,EACT,SAGE,OAAO,EACX,CACF,CAEO,SAASK,EAAkBL,CAAmB,EACnD,OAAQA,GACN,KAAK,EACH,MAAO,MACT,MAAK,EACH,MAAO,oBACT,MAAK,EACH,MAAO,gBACT,MAAK,EACH,MAAO,yBACT,MAAK,EACH,MAAO,QACT,MAAK,EACH,MAAO,wBACT,MAAK,EACH,MAAO,gDACT,MAAK,EACH,MAAO,oCACT,MAAK,EACH,MAAO,wBACT,MAAK,EACH,MAAO,kCACT,MAAK,GACH,MAAO,2BACT,MAAK,GACH,MAAO,4BACT,MAAK,GACH,MAAO,qBACT,MAAK,GACH,MAAO,oBACT,MAAK,GACH,MAAO,eACT,MAAK,GACH,MAAO,mCACT,MAAK,GACH,MAAO,wCACT,MAAK,GACH,MAAO,oBACT,MAAK,GACH,MAAO,gCACT,MAAK,GACH,MAAO,mDACT,MAAK,GACH,MAAO,+BACT,MAAK,GACH,MAAO,uCACT,MAAK,GACH,MAAO,aACT,MAAK,GACH,MAAO,6BACT,MAAK,GACH,MAAO,8BACT,MAAK,GACH,MAAO,mBACT,MAAK,GACH,MAAO,4BACT,SAEE,MAAO,cACX,CACF,CAkBO,SAASM,EAA4BN,CAAW,EACrD,OAAQA,GACN,KAAK,EACL,IAAK,8BACH,OAAO,CACT,MAAK,EACL,IAAK,WACH,OAAO,CACT,MAAK,EACL,IAAK,6BACH,OAAO,CACT,MAAK,EACL,IAAK,mBACH,OAAO,CACT,MAAK,EACL,IAAK,QACH,OAAO,CACT,MAAK,EACL,IAAK,UACH,OAAO,CACT,MAAK,EACL,IAAK,oBACH,OAAO,CACT,MAAK,EACL,IAAK,oBACH,OAAO,CACT,MAAK,EACL,IAAK,yBACH,OAAO,CACT,MAAK,EACL,IAAK,sBACH,OAAO,CACT,MAAK,GACL,IAAK,UACH,OAAO,EACT,MAAK,GACL,IAAK,aACH,OAAO,EACT,SAGE,OAAO,EACX,C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"}