graphdb-workbench
Version:
The web application for GraphDB APIs
2 lines • 16.5 kB
JavaScript
export const __webpack_id__=95953;export const __webpack_ids__=[40618,65191,95953];export const __webpack_modules__={40618:()=>{angular.module("graphdb.framework.core.directives.multiselect",[]).directive("multiSelectDropdown",function(){return{restrict:"E",scope:{items:"=",placeholder:"@?",onChange:"&?",labelKeys:"=?"},templateUrl:"js/angular/core/directives/multiselect-search/templates/multiselect-search.html",controller:["$scope","$document","$element","$filter","$timeout",function(e,t,o,n,r){e.open=!1,e.search={query:""},e.visibleItems=[];const i=[],a=e=>null===e?"":(""+e).toLowerCase(),s=()=>{const t=Array.isArray(e.items)?e.items:[],o=a(e.search.query);e.visibleItems=o?t.filter(e=>a(e.label).includes(o)):t},l=t=>{e.open&&(o[0].contains(t.target)||e.$applyAsync(function(){e.open=!1}))};e.toggleOpen=function(t){t&&t.stopPropagation(),e.open=!e.open,e.open&&r(function(){const e=o[0].querySelector(".multiselect-search");e&&e.focus()})},e.onKeydownMenu=function(t){"Escape"===t.key&&(e.open=!1,t.stopPropagation(),t.preventDefault(),r(function(){const e=o[0].querySelector(".multiselect-button");e&&e.focus()}))},e.selectedCount=function(){return Array.isArray(e.items)?e.items.filter(e=>e.selected).length:0},e.allFilteredSelected=function(){const t=e.visibleItems||[];return 0!==t.length&&t.every(e=>e.selected)},e.someFilteredSelected=function(){const t=e.visibleItems||[],o=t.some(e=>e.selected),n=t.every(e=>e.selected);return o&&!n},e.toggleSelectAll=function(t){t&&t.stopPropagation();const o=e.visibleItems||[],n=!e.allFilteredSelected();for(const e of o)e.selected=n;e.emitChange()},e.emitChange=function(){if("function"==typeof e.onChange){const t=(e.items||[]).filter(e=>e.selected);e.onChange({selected:t})}},t.on("click",l),i.push(e.$watch("search.query",s),e.$watchCollection("items",s)),e.$on("$destroy",()=>{t.off("click",l);for(const e of i)e()}),s()}]}})},65191:()=>{function e(e,t,o,n,r){e.externalIntegrationConfiguration=r.externalIntegrationConfiguration,e.difyExtension=r.difyExtensionUrl,e.queryMethods=r.queryMethodsUrl,e.agentId=r.agentId,e.agentName=r.agentName,e.close=()=>{t.dismiss({})},e.onCloseExternalIntegrationConfigurationModal=()=>{t.dismiss({})}}angular.module("graphdb.framework.ttyg.controllers.external-integration-configuration-modal",[]).controller("ExternalIntegrationConfigurationModalController",e),e.$inject=["$scope","$uibModalInstance","ModalService","$translate","dialogModel"]},84430:(e,t,o)=>{o.r(t),o(65191);var n=o(70826);function r(e,t,o){return{open:function(r){return t.getExternalUrl().then(t=>{const o=function(e,t){return{agentName:e.name,agentId:e.id,queryMethodsUrl:`${t}/rest/llm/tool/ttyg/${e.id}`,difyExtensionUrl:`${t}/rest/llm/ttyg/${e.id}/dify`}}(r,t.data);return e.open({templateUrl:"js/angular/ttyg/templates/modal/external-integration-configuration-modal.html",controller:"ExternalIntegrationConfigurationModalController",windowClass:"external-integration-configuration-modal",backdrop:"static",resolve:{dialogModel:()=>o}}).result.then(()=>{}).catch(()=>{})}).catch(e=>{o.error(getError(e,0,n.TTYG_ERROR_MSG_LENGTH))})}}}angular.module("graphdb.framework.ttyg.services.externalIntegrationModal",["graphdb.framework.ttyg.controllers.external-integration-configuration-modal"]).factory("ExternalIntegrationModalService",r),r.$inject=["$uibModal","LocationsRestService","toastr"]},95953:(e,t,o)=>{o.r(t);var n=o(27030),r=o(28319),i=(o(51682),o(66989),o(36665),o(40618),o(69289),o(17187),o(84430),o(51445)),a=o(71920),s=o(70826),l=o(16135),c=o(76076),d=o(304),g=o(38940),m=o(62608);const u=d.LoggerProvider.logger;function p(e,t,o,d,p,y,h,_,f,E,M,I,v,S,x,T,F,A,C){e.AGENT_OPERATION=s.AGENT_OPERATION,e.operation=I.operation,e.savingAgent=!1,e.agentFormModel=I.agentFormModel,e.activeRepositoryInfo=I.activeRepositoryInfo,e.extractionMethodLoaderFlags={[r.ExtractionMethod.SIMILARITY]:!1},e.activeRepositoryList=I.activeRepositoryList,e.extractionMethods=r.ExtractionMethod,e.additionalExtractionMethods=r.AdditionalExtractionMethod,e.ExtractionMethodTemplates=x,e.showAdvancedSettings=!1,e.showHighTemperatureWarning=!1,e.showSystemInstructionWarning=!1,e.retrievalConnectors=[],e.ftsEnabled=!1,e.autocompleteSuggestions=[],e.showContextSize=null!==e.agentFormModel.contextSize,e.vectorFields=[],e.vectorFieldsMultiselectLabels={select_all:"ttyg.agent.create_agent_modal.form.vector_fields_in_connector.select_all",search_placeholder:"ttyg.agent.create_agent_modal.form.vector_fields_in_connector.search_placeholder",selected_count:" ttyg.agent.create_agent_modal.form.vector_fields_in_connector.selected_count",no_matches:"ttyg.agent.create_agent_modal.form.vector_fields_in_connector.no_matches"},e.documentationUrlForSimilarity=c.DocumentationUrlResolver.getDocumentationUrl(C.productShortVersion,"talk-to-graph.html#prerequisites-and-configuration"),e.similarityOptionsGrouped=[],e.toggleExtractionMethod=t=>{t.expanded=t.selected,e.agentSettingsForm.extractionMethods.$setTouched(),G(),Y[t.method](t)},e.onExtractionMethodPanelToggle=e=>{e.toggleCollapse(),Y[e.method](e)},e.toggleAdditionalExtractionMethod=t=>{t.expanded=t.selected,e.checkAutocompleteIndexEnabled(),j[t.method](t)},e.onAdditionalExtractionMethodPanelToggle=e=>{e.toggleCollapse(),j[e.method](e)},e.helpInfoForModel={ttygHelpInfo:function(){const e=(0,n.Gz)(M.instant("ttyg.agent.create_agent_modal.form.model.hint"));return _.trustAsHtml(e)}(),linkText:M.instant("ttyg.agent.create_agent_modal.form.model.link_text"),documentationUrl:c.DocumentationUrlResolver.getDocumentationUrl(C.productShortVersion,"talk-to-graph.html#prerequisites-and-configuration")},e.getFTSDisabledHelpMessage=()=>{const t=(0,n.Gz)(M.instant("ttyg.agent.create_agent_modal.form.fts_search.fts_disabled_message",{repositoryEditPage:"repository/edit/"+e.agentFormModel.repositoryId}));return _.trustAsHtml(t)},e.goToAutocompleteView=t=>{t.preventDefault(),v.emit(a.TTYGEventName.GO_TO_AUTOCOMPLETE_INDEX_VIEW,{repositoryId:e.agentFormModel.repositoryId})},e.goToCreateSimilarityView=t=>{t.preventDefault(),v.emit(a.TTYGEventName.GO_TO_CREATE_SIMILARITY_VIEW,{repositoryId:e.agentFormModel.repositoryId})},e.goToConnectorsView=t=>{t.preventDefault(),v.emit(a.TTYGEventName.GO_TO_CONNECTORS_VIEW,{repositoryId:e.agentFormModel.repositoryId})},e.ok=()=>{const t=e.agentFormModel.toPayload();return R[e.operation](t)},e.cancel=()=>{t.dismiss({})},e.close=()=>{t.dismiss({})},e.updateSimilaritySearchPanel=(t=!1)=>{const o=e.agentFormModel.assistantExtractionMethods.getSimilarityExtractionMethod();o.selected&&(t&&(o.similarityIndex=null),V(o))},e.updateRetrievalConnectorPanel=(t=!1)=>{const o=e.agentFormModel.assistantExtractionMethods.getRetrievalExtractionMethod();o.selected&&(t&&(o.retrievalConnectorInstance=null),U(o))},e.checkIfFTSEnabled=()=>{e.agentFormModel.repositoryId?e.agentFormModel.assistantExtractionMethods.getFTSSearchExtractionMethod().selected?(e.extractionMethodLoaderFlags[r.ExtractionMethod.FTS_SEARCH]=!0,h.getRepositoryModel({id:e.agentFormModel.repositoryId}).then(t=>{e.ftsEnabled=t.getParamValue(i.REPOSITORY_PARAMS.enableFtsIndex)}).catch(e=>{w(e,"ttyg.agent.messages.error_repository_config_loading")}).finally(()=>{e.extractionMethodLoaderFlags[r.ExtractionMethod.FTS_SEARCH]=!1,e.agentSettingsForm.$setValidity("FTSDisabled",e.ftsEnabled)})):e.agentSettingsForm.$setValidity("FTSDisabled",!0):e.agentSettingsForm.$setValidity("FTSDisabled",!1)},e.openExternalIntegrationConfig=()=>{const t=e.agentFormModel;A.open(t)},e.onRepositoryChange=()=>{W(!0,!0)},e.checkAutocompleteIndexEnabled=t=>{if(t||(t=e.agentFormModel.additionalExtractionMethods.additionalExtractionMethods.find(e=>e.method===r.AdditionalExtractionMethod.AUTOCOMPLETE_IRI_DISCOVERY_SEARCH)),t&&!t.selected||!e.agentFormModel.repositoryId)return;const o=L();T.checkAutocompleteStatus(o.repositoryId,o.repositoryLocation).then(t=>{e.autocompleteEnabled=t,e.agentSettingsForm.$setValidity("autocompleteDisabled",t)}).catch(t=>{e.agentSettingsForm.$setValidity("autocompleteDisabled",!1),f.error(getError(t))})},e.onRestoreDefaultContextSize=()=>{e.agentFormModel.contextSize=e.agentFormModel.contextSizeCopy},e.onRestoreDefaultSystemInstructions=()=>{e.agentFormModel.instructions.systemInstruction=e.agentFormModel.instructions.systemInstructionCopy},e.onRestoreDefaultUserInstructions=()=>{e.agentFormModel.instructions.userInstruction=e.agentFormModel.instructions.userInstructionCopy},e.onTemperatureChange=()=>{e.showHighTemperatureWarning=e.agentFormModel.temperature.value>1},e.onSystemInstructionChange=()=>{""===e.agentFormModel.instructions.systemInstruction||e.showSystemInstructionWarning||(e.showSystemInstructionWarning=!0,o.openModalAlert({title:M.instant("ttyg.agent.create_agent_modal.form.system_instruction.overriding_system_instruction_warning.title"),message:M.instant("ttyg.agent.create_agent_modal.form.system_instruction.overriding_system_instruction_warning.body")}).result.then(function(){})),""===e.agentFormModel.instructions.systemInstruction&&(e.showSystemInstructionWarning=!1)},e.onExplainAgentSettings=()=>{const t=e.agentFormModel.toPayload();S.explainAgentSettings(t).then(e=>{const t={templateUrl:"js/angular/ttyg/templates/modal/agent-instructions-explain-modal.html",controller:"AgentInstructionsExplainModalController",windowClass:"agent-instructions-explain-modal",backdrop:"static",resolve:{dialogModel:function(){return{agentInstructionsExplain:e}}},size:"lg"};d.open(t).result.then(()=>{})}).catch(e=>{f.error(getError(e,0,s.TTYG_ERROR_MSG_LENGTH))})},e.getSuggestions=t=>{const o=t.target.value;F.getAutocompleteSuggestions(o).then(l.mapUriAsNtripleAutocompleteResponse).then(t=>{e.autocompleteSuggestions=t.map(e=>({text:e.value}))}).catch(e=>{f.error(getError(e,0,s.TTYG_ERROR_MSG_LENGTH))})},e.onVectorFieldsChange=function(e,t){t.connectorFields=(e||[]).map(e=>e.label)},e.updateVectorFields=t=>{const o=t.similarityIndex,{provider:n,type:r}=N(o);if(!k(n))return void(e.vectorFields=[]);const i=e.connectorMap||{},a=i[n]&&i[n][r]?i[n][r]:[],s=new Set(t.connectorFields||[]);e.vectorFields=a.map(e=>({id:e,label:e,selected:s.has(e)}))},e.hasConnectorData=()=>!(!e.connectorMap||!Object.keys(e.connectorMap).length),e.shouldShowVectorFields=e=>{const t=e&&(e.connectorType||e.similarityIndex),{provider:o}=N(t);return k(o)},e.onSimilarityIndexChange=t=>{const o=t&&t.similarityIndex;if(!o)return t.connectorType=null,void(t.connectorFields=[]);const n=o.indexOf(":"),r=-1===n?o:o.substring(0,n),i=-1===n?o:o.substring(n+1);t.connectorType=r;const a=e.connectorMap||{};t.connectorFields=a[r]&&a[r][i]?a[r][i]:[],e.updateVectorFields(t)};const R={[s.AGENT_OPERATION.CREATE]:e=>b(e),[s.AGENT_OPERATION.EDIT]:e=>O(e),[s.AGENT_OPERATION.CLONE]:e=>$(e)},b=o=>(e.savingAgent=!0,S.createAgent(o).then(e=>{t.close(e),f.success(M.instant("ttyg.agent.messages.agent_save_successfully",{agentName:e.name}))}).catch(e=>{f.error(getError(e,0,s.TTYG_ERROR_MSG_LENGTH))}).finally(()=>{e.savingAgent=!1})),O=o=>(e.savingAgent=!0,S.editAgent(o).then(e=>{t.close(e),f.success(M.instant("ttyg.agent.messages.agent_save_successfully",{agentName:e.name}))}).catch(e=>{f.error(getError(e,0,s.TTYG_ERROR_MSG_LENGTH))}).finally(()=>{e.savingAgent=!1})),$=o=>(e.savingAgent=!0,S.createAgent(o).then(e=>{t.close(e),f.success(M.instant("ttyg.agent.messages.agent_save_successfully",{agentName:e.name}))}).catch(e=>{f.error(getError(e,0,s.TTYG_ERROR_MSG_LENGTH))}).finally(()=>{e.savingAgent=!1})),w=(e,t)=>{u.error(e),f.error(M.instant(t))},G=()=>{e.agentSettingsForm.extractionMethods.$setValidity("required",e.agentFormModel.hasExtractionMethodSelected())},L=()=>{const t=e.activeRepositoryList.find(t=>t.value===e.agentFormModel.repositoryId);return{repositoryId:t?t.data.repository.id:void 0,repositoryLocation:t?t.data.repository.location:void 0}},k=e=>e===m.SimilarityInstanceType.OPENSEARCH||e===m.SimilarityInstanceType.ELASTICSEARCH,N=e=>{if(!e||"string"!=typeof e)return{provider:null,type:null};const t=e.indexOf(":");return-1===t?{provider:e.trim(),type:e.trim()}:{provider:e.slice(0,t).trim(),type:e.slice(t+1).trim()}},V=t=>{if(t.selected||e.agentSettingsForm.$setValidity("missingIndex",!0),t.selected){const t=e.agentSettingsForm.connectorInstances;if((!t||!t.$pristine)&&e.connectorMap)return}if(e.agentFormModel.repositoryId&&t.expanded){const o=L();p.getSimilarityIndexesWithVectorFields(o.repositoryId).then(o=>{e.agentSettingsForm.$setValidity("missingIndex",!t.selected||!!o);const n=D(o);P(n,t),e.connectorMap=o,(t=>{e.similarityOptionsGrouped=[],Object.entries(t).forEach(([t,o])=>{const n=M.instant(`ttyg.agent.create_agent_modal.form.similarity_instance_type_label.${t}`);Object.keys(o||{}).forEach(o=>{e.similarityOptionsGrouped.push({provider:t,label:o,value:`${t}:${o}`,group:n})})})})(o),e.extractionMethodLoaderFlags[t.method]=!0,e.updateVectorFields(t),e.onSimilarityIndexChange(t)}).catch(t=>{e.connectorMap=null,e.agentSettingsForm.$setValidity("missingIndex",!1),w(t,"ttyg.agent.messages.error_similarity_indexes_loading")}).finally(()=>{e.extractionMethodLoaderFlags[t.method]=!1})}},P=(e,t)=>{if(0===e.length)return void(t.similarityIndex="");const o=e.find(e=>e.data.connectorType+":"+e.value==t.connectorType+":"+t.similarityIndex);t.similarityIndex=o?o.data.connectorType+":"+o.value:e[0].data.connectorType+":"+e[0].value},D=e=>{const t=[];return Object.entries(e).forEach(([e,o])=>{Object.entries(o).forEach(([o,n])=>{t.push(new g.SelectMenuOptionsModel({label:o,value:o,data:{connectorType:e,connectorFields:n}}))})}),t},U=t=>{if(e.agentFormModel.repositoryId&&(t.selected||e.agentSettingsForm.$setValidity("missingConnector",!0),t.expanded)){e.extractionMethodLoaderFlags[t.method]=!0;const o=L();y.getConnectorPrefixByName("ChatGPT Retrieval",o.repositoryId,o.repositoryLocation).then(e=>y.getConnectorsByTypeAsSelectMenuOptions(e,o.repositoryId,o.repositoryLocation)).then(o=>{e.retrievalConnectors=o,e.agentSettingsForm.$setValidity("missingConnector",!t.selected||!(!o||!o.length)),H(e.retrievalConnectors,t)}).catch(t=>{e.agentSettingsForm.$setValidity("missingConnector",!1),w(t,"ttyg.agent.messages.error_retrieval_connectors_loading")}).finally(()=>{e.extractionMethodLoaderFlags[t.method]=!1})}},H=(e,t)=>{if(0===e.length)return void(t.retrievalConnectorInstance=null);const o=e.find(e=>e.value===t.retrievalConnectorInstance);t.retrievalConnectorInstance=o?o.value:e[0].value},Y={[r.ExtractionMethod.FTS_SEARCH]:t=>{e.checkIfFTSEnabled()},[r.ExtractionMethod.SPARQL]:e=>{},[r.ExtractionMethod.SIMILARITY]:e=>V(e),[r.ExtractionMethod.RETRIEVAL]:e=>U(e)},j={[r.AdditionalExtractionMethod.AUTOCOMPLETE_IRI_DISCOVERY_SEARCH]:e=>q(e),[r.AdditionalExtractionMethod.IRI_DISCOVERY_SEARCH]:()=>{}},q=t=>{t.selected||e.agentSettingsForm.$setValidity("autocompleteDisabled",!0),e.checkAutocompleteIndexEnabled(t)},W=(t=!1,o=!1)=>{e.checkIfFTSEnabled(),e.updateSimilaritySearchPanel(t),e.updateRetrievalConnectorPanel(o),e.checkAutocompleteIndexEnabled()},z=()=>{document.hidden||W()},B=(e,t)=>{const o=document.getElementById(e);o&&(o.value=t)};document.addEventListener("visibilitychange",z),e.$on("$destroy",()=>{document.removeEventListener("visibilitychange",z)}),L().repositoryId||(e.agentFormModel.repositoryId=null),setTimeout(G,0),t.rendered.then(()=>{B("temperatureSlider",e.agentFormModel.temperature.value),B("topPSlider",e.agentFormModel.topP.value)})}angular.module("graphdb.framework.ttyg.controllers.agent-settings-modal",["graphdb.framework.core.services.similarity","graphdb.framework.core.services.connectors","graphdb.framework.rest.repositories.service","graphdb.framework.ttyg.controllers.agent-instructions-explain-modal","graphdb.framework.ttyg.services.externalIntegrationModal","ngTagsInput","graphdb.framework.core.directives.multiselect"]).constant("ExtractionMethodTemplates",{iri_discovery_search:"iri-discovery-search",autocomplete_iri_discovery_search:"autocomplete-iri-discovery-search"}).filter("map",function(){return function(e,t){return Array.isArray(e)?e.map(function(e){return e[t]}):e}}).controller("AgentSettingsModalController",p),p.$inject=["$scope","$uibModalInstance","ModalService","$uibModal","SimilarityService","ConnectorsService","RepositoriesRestService","$sce","toastr","UriUtils","$translate","dialogModel","TTYGContextService","TTYGService","ExtractionMethodTemplates","AutocompleteService","AutocompleteRestService","ExternalIntegrationModalService","productInfo"]}};
//# sourceMappingURL=95953.d4eab7f6181caaa5b1ad.bundle.js.map