n8n-editor-ui 1.110.1 → 1.111.0-exp.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{AddDataStoreModal-BXMe2_Yo.js → AddDataStoreModal-Bqoboa0M.js} +9 -4
- package/dist/assets/{AnimatedSpinner-CxbOZIWM.js → AnimatedSpinner-tCPiU5Ns.js} +1 -1
- package/dist/assets/{AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-D-tU5Nsg.js → AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-8I74JP5K.js} +1 -1
- package/dist/assets/{AuthView-ty01eojq.js → AuthView-FtHhl9GZ.js} +2 -2
- package/dist/assets/{ChangePasswordView-nmwMP1GF.js → ChangePasswordView-DAgXSqZA.js} +3 -3
- package/dist/assets/CollectionParameter-z2OOW9Kt.js +4 -0
- package/dist/assets/{ConsumedTokensDetails.vue_vue_type_script_setup_true_lang-CSmXlf80.js → ConsumedTokensDetails.vue_vue_type_script_setup_true_lang-B5932E4v.js} +1 -1
- package/dist/assets/{CredentialsView-IHneFweR.js → CredentialsView-DYN2VsP1.js} +9 -9
- package/dist/assets/{DataStoreActions.vue_vue_type_script_setup_true_lang-Dug6Q9SH.js → DataStoreActions.vue_vue_type_script_setup_true_lang-D1xlypzq.js} +7 -2
- package/dist/assets/{DataStoreDetailsView-DSpK3R_L.css → DataStoreDetailsView-BPsHPucD.css} +44 -44
- package/dist/assets/{DataStoreDetailsView-BZ7cLl6L.js → DataStoreDetailsView-BQbcRsbK.js} +1077 -667
- package/dist/assets/{DataStoreView-CzuM5UmJ.js → DataStoreView-_kh6bnQf.js} +9 -9
- package/dist/assets/{DemoFooter-CTFaju55.js → DemoFooter-BDufcHLS.js} +6 -6
- package/dist/assets/{EmptySharedSectionActionBox.vue_vue_type_script_setup_true_lang-DirQeoxa.js → EmptySharedSectionActionBox.vue_vue_type_script_setup_true_lang-Cre0QVFy.js} +1 -1
- package/dist/assets/{EntityNotFound-SgHEB5Zx.js → EntityNotFound-CiMcygie.js} +1 -1
- package/dist/assets/{EntityUnAuthorised-Ba1UjrRW.js → EntityUnAuthorised-vyjymVdI.js} +1 -1
- package/dist/assets/{ErrorView-DR_boVdR.js → ErrorView-ByTVJeSm.js} +1 -1
- package/dist/assets/{EvaluationsRootView-DutxuCnH.js → EvaluationsRootView-Da6feAL4.js} +1 -1
- package/dist/assets/{EvaluationsView-ClUUTcAC.js → EvaluationsView-IiPycYmg.js} +3 -3
- package/dist/assets/{ExecutionsTime.vue_vue_type_script_setup_true_lang-_0D6TWFX.js → ExecutionsTime.vue_vue_type_script_setup_true_lang-Cfh2tQrt.js} +2 -2
- package/dist/assets/{ExecutionsView-gF8JMKIq.js → ExecutionsView-DAy8EjiJ.js} +9 -9
- package/dist/assets/{FixedCollectionParameter-D9zye2vX.js → FixedCollectionParameter-C2MyOC2y.js} +1 -1
- package/dist/assets/{ForgotMyPasswordView-EkWEVktJ.js → ForgotMyPasswordView-C8uiG_Wp.js} +3 -3
- package/dist/assets/{InfoAccordion-u7XlbH6a.js → InfoAccordion-1CXYTjmj.js} +1 -1
- package/dist/assets/{InsightsChartAverageRuntime-CoBgniUR.js → InsightsChartAverageRuntime-Bo2bK4g9.js} +4 -4
- package/dist/assets/{InsightsChartFailed-Dn6SuM16.js → InsightsChartFailed-Dobu3DUB.js} +4 -4
- package/dist/assets/{InsightsChartFailureRate-CJl1j0ob.js → InsightsChartFailureRate-DVWWIj5R.js} +4 -4
- package/dist/assets/{InsightsChartTimeSaved-B5DjojXI.js → InsightsChartTimeSaved-BV94wKeZ.js} +4 -4
- package/dist/assets/{InsightsChartTotal-T1SFp7S-.js → InsightsChartTotal-DGArceaX.js} +4 -4
- package/dist/assets/{InsightsDashboard-CCDahAm5.js → InsightsDashboard-QHtwDC2F.js} +10 -10
- package/dist/assets/{InsightsPaywall-Cp82bMTp.js → InsightsPaywall-DMauQx0S.js} +1 -1
- package/dist/assets/{InsightsSummary-I5vKNG0I.js → InsightsSummary-DQlTVk9p.js} +1 -1
- package/dist/assets/{InsightsTableWorkflows-D1U89HJ4.js → InsightsTableWorkflows-D-0lWzW9.js} +4 -4
- package/dist/assets/{Logo-DHG_oEvt.js → Logo-DQre7Y3k.js} +1 -1
- package/dist/assets/{LogsPanel-CvmnM4bL.js → LogsPanel-D5Qvj1cD.js} +7 -6
- package/dist/assets/{MainHeader-pDg5KXTB.css → MainHeader-6lIHYgJG.css} +16 -16
- package/dist/assets/{MainHeader-CTxGLJsC.js → MainHeader-s_9YtQ1K.js} +12 -13
- package/dist/assets/{MainSidebar-D_xwIVsL.js → MainSidebar-DAqyVtsS.js} +2 -2
- package/dist/assets/{NodeCreation-iNUuiza-.js → NodeCreation-KN27vULC.js} +3 -3
- package/dist/assets/{NodeCreator-DMpMHPcz.js → NodeCreator-C05UppJF.js} +3 -6
- package/dist/assets/{NodeDetailsView-BKEGFeZ7.js → NodeDetailsView-BNc6W929.js} +13 -13
- package/dist/assets/{NodeDetailsViewV2-XPdbzrLu.js → NodeDetailsViewV2-3f7o0G7f.js} +13 -13
- package/dist/assets/{NodeView-Bj14aKtm.js → NodeView-870Ju6SV.js} +106 -48
- package/dist/assets/{NodeView-BRa11kAq.css → NodeView-DMJpfBYR.css} +66 -30
- package/dist/assets/{PageViewLayout--7SkYsc9.js → PageViewLayout-CPi1JWux.js} +1 -1
- package/dist/assets/{PrebuiltAgentTemplatesView-B7fK6krA.js → PrebuiltAgentTemplatesView-Cusvnl-G.js} +2 -2
- package/dist/assets/{ProjectBreadcrumb-BxMwihEP.js → ProjectBreadcrumb-BELKVWln.js} +1 -1
- package/dist/assets/{ProjectHeader-CVfPUZNI.js → ProjectHeader-Bj0huB2U.js} +2 -2
- package/dist/assets/{ProjectSettings-t9C-Ly49.js → ProjectSettings-uzgB7K8j.js} +3 -3
- package/dist/assets/{PushConnectionTracker.vue_vue_type_script_setup_true_lang-zVio8c2n.js → PushConnectionTracker.vue_vue_type_script_setup_true_lang-D5coX5El.js} +1 -1
- package/dist/assets/{ResourcesListLayout-O-Z59wTE.js → ResourcesListLayout-DMMzgS05.js} +6 -6
- package/dist/assets/{ResourcesListLayout-B5eMf4SI.css → ResourcesListLayout-vTwRIDRz.css} +8 -8
- package/dist/assets/{RunDataJson-0J6_FxmM.js → RunDataJson-BUYYVAf9.js} +3 -3
- package/dist/assets/{RunDataJsonActions-ZbUSwg32.js → RunDataJsonActions-CTQ08FJN.js} +1 -1
- package/dist/assets/{RunDataParsedAiContent-Byf4f3hM.js → RunDataParsedAiContent-f_BUKfHP.js} +2 -2
- package/dist/assets/{RunDataSearch-CyCbN9Nc.js → RunDataSearch-CAb6EDAA.js} +1 -1
- package/dist/assets/{RunDataTable-Rj0zhULj.js → RunDataTable-CZn2r4pC.js} +1 -1
- package/dist/assets/{SamlOnboarding-UDfF4zGH.js → SamlOnboarding-DLL2MGXv.js} +3 -3
- package/dist/assets/{SelectedItemsInfo-64VntNmH.js → SelectedItemsInfo-DrRrX4SO.js} +1 -1
- package/dist/assets/{SettingsApiView-BMYiuOCY.js → SettingsApiView-DGV1mUjU.js} +1 -1
- package/dist/assets/{SettingsCommunityNodesView-BULfnkhp.js → SettingsCommunityNodesView-DsdfOXdt.js} +4 -4
- package/dist/assets/{SettingsExternalSecrets-DgYPNKtM.js → SettingsExternalSecrets-bfO4NBBJ.js} +1 -1
- package/dist/assets/{SettingsLdapView-B64PusRO.js → SettingsLdapView-D61_xg1c.js} +1 -1
- package/dist/assets/{SettingsLogStreamingView-DiDxOEmg.js → SettingsLogStreamingView-CWAkj--7.js} +1 -1
- package/dist/assets/{SettingsPersonalView-TP__Drcl.js → SettingsPersonalView-CyF4kIDT.js} +1 -1
- package/dist/assets/{SettingsSourceControl-FiqxT6qx.js → SettingsSourceControl-B2YOQl1Y.js} +1 -1
- package/dist/assets/{SettingsSso-e5ntwax1.js → SettingsSso-wVPchu99.js} +1 -1
- package/dist/assets/{SettingsUsageAndPlan-BiNhzaI3.js → SettingsUsageAndPlan-D0BDNq58.js} +1 -1
- package/dist/assets/{SettingsUsersView-g3odVDFj.js → SettingsUsersView-COVuKqZM.js} +1 -1
- package/dist/assets/{SettingsView-5M3uETdg.js → SettingsView-BJVqQ8cP.js} +1 -1
- package/dist/assets/{SetupView-DOX9lfRU.js → SetupView-PYEwxdR9.js} +3 -3
- package/dist/assets/{SetupWorkflowCredentialsButton-DMIEMB5C.js → SetupWorkflowCredentialsButton-CLnBGr_f.js} +1 -1
- package/dist/assets/{SetupWorkflowFromTemplateView-DEJsN9PM.js → SetupWorkflowFromTemplateView-DIMNEI2x.js} +3 -3
- package/dist/assets/{SigninView-FKXG_00n.js → SigninView-Dn52fTjJ.js} +3 -3
- package/dist/assets/{SignoutView-ppJ6lbCU.js → SignoutView-BayQb-KM.js} +1 -1
- package/dist/assets/{SignupView-CmcH1BYL.js → SignupView-BFKMtKqE.js} +3 -3
- package/dist/assets/{TableBase-DBeBHkOY.js → TableBase-2tfJlOnM.js} +1 -1
- package/dist/assets/{Tag-BQAJRKFE.js → Tag-BYzTMUiv.js} +1 -1
- package/dist/assets/{Tags-CdXa3Xx9.js → Tags-BOMCH_oa.js} +2 -2
- package/dist/assets/{TemplateDetails-BxvljQA3.js → TemplateDetails-DluXWqUQ.js} +2 -2
- package/dist/assets/{TemplateList-CV9csLUI.js → TemplateList-DUXFUeAA.js} +1 -1
- package/dist/assets/{TemplatesCollectionView-4dKgKAQR.js → TemplatesCollectionView-BWh4mmma.js} +7 -7
- package/dist/assets/{TemplatesSearchView-taSkU7cY.js → TemplatesSearchView-Do5m-n4u.js} +3 -3
- package/dist/assets/{TemplatesView-CXSlz1M1.js → TemplatesView-CkUyOPG5.js} +1 -1
- package/dist/assets/{TemplatesWorkflowView-C-x3Aov1.js → TemplatesWorkflowView-lAONO-f5.js} +7 -7
- package/dist/assets/{TriggerPanel-C-c5cPsc.js → TriggerPanel-h-10eDyS.js} +5 -5
- package/dist/assets/{VariablesView-Bh0OeH4s.css → VariablesView-BHcrNXsw.css} +6 -6
- package/dist/assets/{VariablesView-C3mX49G9.js → VariablesView-BOpHDH5g.js} +16 -14
- package/dist/assets/{WorkerView-DYK4TcTw.js → WorkerView-g_yChNHW.js} +6 -6
- package/dist/assets/{WorkflowActivator-DZIgVvgL.js → WorkflowActivator-BDK1VQo7.js} +3 -3
- package/dist/assets/{WorkflowExecutionsInfoAccordion-CivRIQhL.js → WorkflowExecutionsInfoAccordion-DK4GOfp7.js} +2 -2
- package/dist/assets/{WorkflowExecutionsLandingPage-kBAMGqy2.js → WorkflowExecutionsLandingPage-BHypBAhC.js} +3 -3
- package/dist/assets/{WorkflowExecutionsPreview-Bnd5-B-d.js → WorkflowExecutionsPreview-CylTDrwZ.js} +4 -4
- package/dist/assets/{WorkflowExecutionsView-CIfisPDk.js → WorkflowExecutionsView-Dh5w2GeL.js} +7 -7
- package/dist/assets/{WorkflowHistory-JXOUdJnK.js → WorkflowHistory-DczLVW3-.js} +2 -2
- package/dist/assets/{WorkflowOnboardingView-Dc1KYhGC.js → WorkflowOnboardingView-hXmpgkXC.js} +1 -1
- package/dist/assets/{WorkflowPreview-BF9SI0vn.js → WorkflowPreview-7FcBrz8O.js} +1 -1
- package/dist/assets/{WorkflowsView-CTnvp65F.js → WorkflowsView-BvxtNIzc.js} +14 -14
- package/dist/assets/{canvas-DbK7UyVG.js → canvas-DVR_BhuG.js} +1 -1
- package/dist/assets/{chartjs.utils-DIRvJRrn.js → chartjs.utils-CvJRQ6t0.js} +2 -2
- package/dist/assets/{core-Br-UFy15.js → core-Dc9H0vKH.js} +1 -1
- package/dist/assets/{dataStore.store-HuymAG46.js → dataStore.store-DYXWyVqW.js} +9 -6
- package/dist/assets/{en-DdNgUrpa.js → en-C3wg5zl_.js} +7 -6
- package/dist/assets/{global-link-actions--TiC75iP.js → global-link-actions-BPcHZGXR.js} +1 -1
- package/dist/assets/{index-D2apwRup.js → index-B0B7uxQ3.js} +1 -1
- package/dist/assets/{index--OJ5nhDf.js → index-BKn2rbcT.js} +962 -787
- package/dist/assets/{index-DXNU_2Fk.css → index-DnpNicM9.css} +72 -61
- package/dist/assets/{pickBy-BljOBsPy.js → pickBy-lWCr1wUC.js} +1 -1
- package/dist/assets/{readyToRunWorkflows.store-Dhb8bhvk.js → readyToRunWorkflows.store-DkMNQr3D.js} +1 -1
- package/dist/assets/{templateActions-B4GEcBXU.js → templateActions-RgYg86vz.js} +1 -1
- package/dist/assets/{useBeforeUnload-ZtUpNFCu.js → useBeforeUnload-BjjcUFnt.js} +1 -1
- package/dist/assets/{useExecutionDebugging-Bve-aaKO.js → useExecutionDebugging-eFW0Ew3P.js} +1 -1
- package/dist/assets/{useImportCurlCommand-CAuor9Pu.js → useImportCurlCommand-BBG_p0rN.js} +1 -1
- package/dist/assets/{useProjectPages-CH519D2j.js → useProjectPages-DManSFCm.js} +1 -1
- package/dist/assets/{usePushConnection-Db77V5LR.js → usePushConnection-XkGJMlO7.js} +3 -3
- package/dist/assets/{useWorkflowActivate-7Rw9KyzM.js → useWorkflowActivate-DJvhbzmN.js} +1 -1
- package/dist/index.html +3 -3
- package/index.html +1 -1
- package/package.json +1 -1
- package/vite.config.mts +8 -5
- package/dist/assets/CollectionParameter-CQji5w8u.js +0 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/RunDataTable-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/RunDataTable-CZn2r4pC.js","assets/RunDataTable-BZzteeuj.css","assets/RunDataJson-BUYYVAf9.js","assets/RunDataJson-BH9HLoGC.css","assets/RunDataParsedAiContent-f_BUKfHP.js","assets/core-Dc9H0vKH.js","assets/RunDataParsedAiContent-wfIiKsq7.css","assets/RunDataSearch-CAb6EDAA.js","assets/RunDataSearch-2eEalFoi.css","assets/useImportCurlCommand-BBG_p0rN.js","assets/_commonjs-dynamic-modules-TGKdzP3c.js","assets/MainSidebar-DAqyVtsS.js","assets/Logo-DQre7Y3k.js","assets/Logo-DaegEk2m.css","assets/MainSidebar-a73tcV9E.css","assets/DataStoreView-_kh6bnQf.js","assets/ResourcesListLayout-DMMzgS05.js","assets/TableBase-2tfJlOnM.js","assets/TableBase-Bf42_9Yp.css","assets/PageViewLayout-CPi1JWux.js","assets/PageViewLayout-CJlzbuVj.css","assets/useProjectPages-DManSFCm.js","assets/ResourcesListLayout-vTwRIDRz.css","assets/ProjectHeader-Bj0huB2U.js","assets/ProjectHeader-B5uv4DKo.css","assets/InsightsSummary-DQlTVk9p.js","assets/InsightsSummary-DTFIhBF3.css","assets/DataStoreActions.vue_vue_type_script_setup_true_lang-D1xlypzq.js","assets/dataStore.store-DYXWyVqW.js","assets/DataStoreView-D0R0E_jH.css","assets/DataStoreDetailsView-BQbcRsbK.js","assets/ProjectBreadcrumb-BELKVWln.js","assets/ProjectBreadcrumb-B1Hnf5da.css","assets/SelectedItemsInfo-DrRrX4SO.js","assets/SelectedItemsInfo-CfUb0ZrI.css","assets/DataStoreDetailsView-BPsHPucD.css","assets/AddDataStoreModal-Bqoboa0M.js","assets/AddDataStoreModal-D3j8deoq.css","assets/InsightsDashboard-QHtwDC2F.js","assets/InsightsDashboard-C27Avzrv.css","assets/WorkflowsView-BvxtNIzc.js","assets/EmptySharedSectionActionBox.vue_vue_type_script_setup_true_lang-Cre0QVFy.js","assets/WorkflowActivator-BDK1VQo7.js","assets/useWorkflowActivate-DJvhbzmN.js","assets/WorkflowActivator-jI4sUqXL.css","assets/Tags-BOMCH_oa.js","assets/Tag-BYzTMUiv.js","assets/Tag-Cg-Hqs2H.css","assets/Tags-CCemj7t9.css","assets/readyToRunWorkflows.store-DkMNQr3D.js","assets/WorkflowsView-BuvoAeDm.css","assets/CredentialsView-DYN2VsP1.js","assets/pickBy-lWCr1wUC.js","assets/CredentialsView-BAqjGrNq.css","assets/ProjectSettings-uzgB7K8j.js","assets/ProjectSettings-CCVXNK3G.css","assets/ExecutionsView-DAy8EjiJ.js","assets/ExecutionsTime.vue_vue_type_script_setup_true_lang-Cfh2tQrt.js","assets/AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-8I74JP5K.js","assets/ExecutionsTime-etWexlXm.css","assets/AnimatedSpinner-tCPiU5Ns.js","assets/AnimatedSpinner-ChSRgyeI.css","assets/ExecutionsView-DpVZbkhT.css","assets/ChangePasswordView-DAgXSqZA.js","assets/AuthView-FtHhl9GZ.js","assets/AuthView-CWVio_MZ.css","assets/ErrorView-ByTVJeSm.js","assets/ErrorView-DPS9icAS.css","assets/EntityNotFound-CiMcygie.js","assets/EntityNotFound-DvXhVSfv.css","assets/EntityUnAuthorised-vyjymVdI.js","assets/EntityUnAuthorised-BwDthxJU.css","assets/ForgotMyPasswordView-C8uiG_Wp.js","assets/MainHeader-s_9YtQ1K.js","assets/useBeforeUnload-BjjcUFnt.js","assets/PushConnectionTracker.vue_vue_type_script_setup_true_lang-D5coX5El.js","assets/usePushConnection-XkGJMlO7.js","assets/global-link-actions-BPcHZGXR.js","assets/MainHeader-6lIHYgJG.css","assets/LogsPanel-D5Qvj1cD.js","assets/ConsumedTokensDetails.vue_vue_type_script_setup_true_lang-B5932E4v.js","assets/canvas-DVR_BhuG.js","assets/LogsPanel-BinqqXXh.css","assets/DemoFooter-BDufcHLS.js","assets/NodeView-870Ju6SV.js","assets/useExecutionDebugging-eFW0Ew3P.js","assets/NodeView-DMJpfBYR.css","assets/WorkflowExecutionsView-Dh5w2GeL.js","assets/WorkflowExecutionsInfoAccordion-DK4GOfp7.js","assets/InfoAccordion-1CXYTjmj.js","assets/InfoAccordion-dxudNqVC.css","assets/WorkflowExecutionsInfoAccordion-53bC-IXN.css","assets/WorkflowExecutionsView-C_xuUSa8.css","assets/WorkflowExecutionsLandingPage-BHypBAhC.js","assets/WorkflowExecutionsLandingPage-Bm_hJMl4.css","assets/WorkflowExecutionsPreview-CylTDrwZ.js","assets/WorkflowPreview-7FcBrz8O.js","assets/WorkflowPreview-CIOAVgxK.css","assets/WorkflowExecutionsPreview-Bk3NJMZf.css","assets/SettingsView-BJVqQ8cP.js","assets/SettingsView-4yzof_Pb.css","assets/SettingsLdapView-D61_xg1c.js","assets/SettingsLdapView-D0SUO3ai.css","assets/SettingsPersonalView-CyF4kIDT.js","assets/SettingsPersonalView-Bt8bL5tJ.css","assets/SettingsUsersView-COVuKqZM.js","assets/SettingsUsersView-BG7JdfYz.css","assets/SettingsCommunityNodesView-DsdfOXdt.js","assets/SettingsCommunityNodesView-CAggjsaT.css","assets/SettingsApiView-DGV1mUjU.js","assets/SettingsApiView-k1hALKCX.css","assets/SettingsLogStreamingView-CWAkj--7.js","assets/SettingsLogStreamingView-CflEMmu9.css","assets/SetupView-PYEwxdR9.js","assets/SigninView-Dn52fTjJ.js","assets/SigninView-D57wRRHz.css","assets/SignupView-BFKMtKqE.js","assets/TemplatesCollectionView-BWh4mmma.js","assets/TemplateDetails-DluXWqUQ.js","assets/TemplateDetails-DyUqVhf2.css","assets/TemplateList-DUXFUeAA.js","assets/TemplateList-XNW-2Ugr.css","assets/TemplatesView-CkUyOPG5.js","assets/TemplatesView-Cyu28Dlo.css","assets/templateActions-RgYg86vz.js","assets/TemplatesCollectionView-2q1rzsOG.css","assets/TemplatesWorkflowView-lAONO-f5.js","assets/TemplatesWorkflowView-DpIiJjJp.css","assets/SetupWorkflowFromTemplateView-DIMNEI2x.js","assets/SetupWorkflowFromTemplateView-ZPJL_m2F.css","assets/TemplatesSearchView-Do5m-n4u.js","assets/TemplatesSearchView-DETaMpDt.css","assets/VariablesView-BOpHDH5g.js","assets/VariablesView-BHcrNXsw.css","assets/SettingsUsageAndPlan-D0BDNq58.js","assets/SettingsUsageAndPlan-_VxSs28G.css","assets/SettingsSso-wVPchu99.js","assets/SettingsSso-D4HKPLvV.css","assets/SamlOnboarding-DLL2MGXv.js","assets/SettingsSourceControl-B2YOQl1Y.js","assets/SettingsSourceControl-BBxJXbFC.css","assets/SettingsExternalSecrets-bfO4NBBJ.js","assets/SettingsExternalSecrets-BAX9ENm9.css","assets/WorkerView-g_yChNHW.js","assets/index-B0B7uxQ3.js","assets/WorkerView-BrSoYcbf.css","assets/WorkflowHistory-DczLVW3-.js","assets/WorkflowHistory-7Ad0Va7M.css","assets/EvaluationsView-IiPycYmg.js","assets/EvaluationsView-BTyYfInB.css","assets/EvaluationsRootView-Da6feAL4.js","assets/EvaluationsRootView-B5AhHo41.css","assets/PrebuiltAgentTemplatesView-Cusvnl-G.js","assets/PrebuiltAgentTemplatesView-COxu7Iih.css","assets/FixedCollectionParameter-C2MyOC2y.js","assets/FixedCollectionParameter-DTkvAml6.css"])))=>i.map(i=>d[i]);
|
|
2
2
|
(function polyfill() {
|
|
3
3
|
const relList = document.createElement("link").relList;
|
|
4
4
|
if (relList && relList.supports && relList.supports("modulepreload")) {
|
|
@@ -74391,8 +74391,8 @@ const _sfc_main$5w = /* @__PURE__ */ defineComponent({
|
|
|
74391
74391
|
const emit2 = __emit;
|
|
74392
74392
|
const onCommand = (value2) => emit2("action", value2);
|
|
74393
74393
|
const onVisibleChange = (value2) => emit2("visible-change", value2);
|
|
74394
|
-
const openActionToggle = (
|
|
74395
|
-
if (
|
|
74394
|
+
const openActionToggle = (isOpen) => {
|
|
74395
|
+
if (isOpen) {
|
|
74396
74396
|
actionToggleRef.value?.handleOpen();
|
|
74397
74397
|
} else {
|
|
74398
74398
|
actionToggleRef.value?.handleClose();
|
|
@@ -74498,17 +74498,17 @@ const _sfc_main$5w = /* @__PURE__ */ defineComponent({
|
|
|
74498
74498
|
};
|
|
74499
74499
|
}
|
|
74500
74500
|
});
|
|
74501
|
-
const container$Q = "
|
|
74502
|
-
const button$7 = "
|
|
74503
|
-
const dark = "
|
|
74504
|
-
const iconContainer = "
|
|
74505
|
-
const loading$4 = "
|
|
74501
|
+
const container$Q = "_container_lsgxo_123";
|
|
74502
|
+
const button$7 = "_button_lsgxo_127";
|
|
74503
|
+
const dark = "_dark_lsgxo_142";
|
|
74504
|
+
const iconContainer = "_iconContainer_lsgxo_149";
|
|
74505
|
+
const loading$4 = "_loading_lsgxo_157";
|
|
74506
74506
|
const style0$3B = {
|
|
74507
74507
|
container: container$Q,
|
|
74508
74508
|
button: button$7,
|
|
74509
74509
|
dark,
|
|
74510
74510
|
iconContainer,
|
|
74511
|
-
"loading-dropdown": "_loading-
|
|
74511
|
+
"loading-dropdown": "_loading-dropdown_lsgxo_157",
|
|
74512
74512
|
loading: loading$4
|
|
74513
74513
|
};
|
|
74514
74514
|
const cssModules$3H = {
|
|
@@ -91742,7 +91742,7 @@ function requireParser$4() {
|
|
|
91742
91742
|
if (hasRequiredParser$4) return parser$b;
|
|
91743
91743
|
hasRequiredParser$4 = 1;
|
|
91744
91744
|
var _2 = requireUtil$5();
|
|
91745
|
-
function
|
|
91745
|
+
function getTagName2(html2) {
|
|
91746
91746
|
var i = _2.spaceIndex(html2);
|
|
91747
91747
|
var tagName;
|
|
91748
91748
|
if (i === -1) {
|
|
@@ -91785,7 +91785,7 @@ function requireParser$4() {
|
|
|
91785
91785
|
if (c2 === ">" || currentPos === len - 1) {
|
|
91786
91786
|
rethtml += escapeHtml2(html2.slice(lastPos, tagStart2));
|
|
91787
91787
|
currentHtml = html2.slice(tagStart2, currentPos + 1);
|
|
91788
|
-
currentTagName =
|
|
91788
|
+
currentTagName = getTagName2(currentHtml);
|
|
91789
91789
|
rethtml += onTag(
|
|
91790
91790
|
tagStart2,
|
|
91791
91791
|
rethtml.length,
|
|
@@ -92206,7 +92206,7 @@ const _sfc_main$5c = /* @__PURE__ */ defineComponent({
|
|
|
92206
92206
|
tasklists: {
|
|
92207
92207
|
enabled: true,
|
|
92208
92208
|
label: true,
|
|
92209
|
-
labelAfter:
|
|
92209
|
+
labelAfter: false
|
|
92210
92210
|
},
|
|
92211
92211
|
youtube: {}
|
|
92212
92212
|
}) }
|
|
@@ -145767,7 +145767,10 @@ const ALLOWED_FORM_FIELDS_KEYS = [
|
|
|
145767
145767
|
"multipleFiles",
|
|
145768
145768
|
"acceptFileTypes",
|
|
145769
145769
|
"formatDate",
|
|
145770
|
-
"requiredField"
|
|
145770
|
+
"requiredField",
|
|
145771
|
+
"fieldValue",
|
|
145772
|
+
"elementName",
|
|
145773
|
+
"html"
|
|
145771
145774
|
];
|
|
145772
145775
|
const ALLOWED_FIELD_TYPES = [
|
|
145773
145776
|
"date",
|
|
@@ -145777,7 +145780,11 @@ const ALLOWED_FIELD_TYPES = [
|
|
|
145777
145780
|
"number",
|
|
145778
145781
|
"password",
|
|
145779
145782
|
"text",
|
|
145780
|
-
"textarea"
|
|
145783
|
+
"textarea",
|
|
145784
|
+
"checkbox",
|
|
145785
|
+
"radio",
|
|
145786
|
+
"html",
|
|
145787
|
+
"hiddenField"
|
|
145781
145788
|
];
|
|
145782
145789
|
const tryToParseJsonToFormFields = (value2) => {
|
|
145783
145790
|
const fields = [];
|
|
@@ -145792,7 +145799,7 @@ const tryToParseJsonToFormFields = (value2) => {
|
|
|
145792
145799
|
}
|
|
145793
145800
|
if (key2 !== "fieldOptions" && !["string", "number", "boolean"].includes(typeof field[key2])) {
|
|
145794
145801
|
field[key2] = String(field[key2]);
|
|
145795
|
-
} else if (typeof field[key2] === "string") {
|
|
145802
|
+
} else if (typeof field[key2] === "string" && key2 !== "html") {
|
|
145796
145803
|
field[key2] = field[key2].replace(/</g, "<").replace(/>/g, ">");
|
|
145797
145804
|
}
|
|
145798
145805
|
if (key2 === "fieldType" && !ALLOWED_FIELD_TYPES.includes(field[key2])) {
|
|
@@ -146728,7 +146735,8 @@ function getNodeOutputs(workflow, node2, nodeTypeData) {
|
|
|
146728
146735
|
outputs2 = nodeTypeData.outputs;
|
|
146729
146736
|
} else {
|
|
146730
146737
|
try {
|
|
146731
|
-
|
|
146738
|
+
const result2 = workflow.expression.getSimpleParameterValue(node2, nodeTypeData.outputs, "internal", {});
|
|
146739
|
+
outputs2 = Array.isArray(result2) ? result2 : [];
|
|
146732
146740
|
} catch (e2) {
|
|
146733
146741
|
console.warn("Could not calculate outputs dynamically for node: ", node2.name);
|
|
146734
146742
|
}
|
|
@@ -147081,11 +147089,13 @@ function isTool(nodeTypeDescription, parameters) {
|
|
|
147081
147089
|
const mode2 = parameters.mode;
|
|
147082
147090
|
return mode2 === "retrieve-as-tool";
|
|
147083
147091
|
}
|
|
147084
|
-
|
|
147085
|
-
|
|
147086
|
-
|
|
147087
|
-
|
|
147088
|
-
|
|
147092
|
+
if (Array.isArray(nodeTypeDescription.outputs)) {
|
|
147093
|
+
for (const output2 of nodeTypeDescription.outputs) {
|
|
147094
|
+
if (typeof output2 === "string") {
|
|
147095
|
+
return output2 === NodeConnectionTypes.AiTool;
|
|
147096
|
+
} else if (output2?.type && output2.type === NodeConnectionTypes.AiTool) {
|
|
147097
|
+
return true;
|
|
147098
|
+
}
|
|
147089
147099
|
}
|
|
147090
147100
|
}
|
|
147091
147101
|
return false;
|
|
@@ -147419,7 +147429,7 @@ function generateNodesGraph(workflow, nodeTypes, options2) {
|
|
|
147419
147429
|
}
|
|
147420
147430
|
} else if (node2.type === CODE_NODE_TYPE$1) {
|
|
147421
147431
|
const { language: language2 } = node2.parameters;
|
|
147422
|
-
nodeItem2.language = language2 === void 0 ? "javascript" : language2 === "python" ? "python" : "unknown";
|
|
147432
|
+
nodeItem2.language = language2 === void 0 ? "javascript" : language2 === "python" ? "python" : language2 === "pythonNative" ? "pythonNative" : "unknown";
|
|
147423
147433
|
} else {
|
|
147424
147434
|
try {
|
|
147425
147435
|
const nodeType = nodeTypes.getByNameAndVersion(node2.type, node2.typeVersion);
|
|
@@ -177231,12 +177241,14 @@ class WorkflowDataProxy {
|
|
|
177231
177241
|
});
|
|
177232
177242
|
}
|
|
177233
177243
|
if (!that.runExecutionData.resultData.runData.hasOwnProperty(nodeName2) && !getPinDataIfManualExecution(that.workflow, nodeName2, that.mode)) {
|
|
177234
|
-
throw new ExpressionError(
|
|
177244
|
+
throw new ExpressionError(`Node '${nodeName2}' hasn't been executed`, {
|
|
177245
|
+
messageTemplate: 'An expression references this node, but the node is unexecuted. Consider re-wiring your nodes or checking for execution first, i.e. {{ $if( $("{{nodeName}}").isExecuted, <action_if_executed>, "") }}',
|
|
177246
|
+
functionality: "pairedItem",
|
|
177247
|
+
descriptionKey: isScriptingNode(nodeName2, that.workflow) ? "pairedItemNoConnectionCodeNode" : "pairedItemNoConnection",
|
|
177248
|
+
type: "no_execution_data",
|
|
177249
|
+
nodeCause: nodeName2,
|
|
177235
177250
|
runIndex: that.runIndex,
|
|
177236
|
-
itemIndex: that.itemIndex
|
|
177237
|
-
type: "no_node_execution_data",
|
|
177238
|
-
descriptionKey: "noNodeExecutionData",
|
|
177239
|
-
nodeCause: nodeName2
|
|
177251
|
+
itemIndex: that.itemIndex
|
|
177240
177252
|
});
|
|
177241
177253
|
}
|
|
177242
177254
|
runIndex = runIndex === void 0 ? that.defaultReturnRunIndex : runIndex;
|
|
@@ -177297,11 +177309,14 @@ class WorkflowDataProxy {
|
|
|
177297
177309
|
return true;
|
|
177298
177310
|
name2 = name2.toString();
|
|
177299
177311
|
if (!node2) {
|
|
177300
|
-
throw new ExpressionError("Referenced node
|
|
177301
|
-
|
|
177302
|
-
|
|
177312
|
+
throw new ExpressionError("Referenced node does not exist", {
|
|
177313
|
+
messageTemplate: "Make sure to double-check the node name for typos",
|
|
177314
|
+
functionality: "pairedItem",
|
|
177315
|
+
descriptionKey: isScriptingNode(nodeName2, that.workflow) ? "pairedItemNoConnectionCodeNode" : "pairedItemNoConnection",
|
|
177316
|
+
type: "paired_item_no_connection",
|
|
177303
177317
|
nodeCause: nodeName2,
|
|
177304
|
-
|
|
177318
|
+
runIndex: that.runIndex,
|
|
177319
|
+
itemIndex: that.itemIndex
|
|
177305
177320
|
});
|
|
177306
177321
|
}
|
|
177307
177322
|
if (["binary", "data", "json"].includes(name2)) {
|
|
@@ -177313,24 +177328,23 @@ class WorkflowDataProxy {
|
|
|
177313
177328
|
return void 0;
|
|
177314
177329
|
}
|
|
177315
177330
|
if (executionData.length === 0) {
|
|
177316
|
-
|
|
177317
|
-
|
|
177318
|
-
|
|
177319
|
-
|
|
177320
|
-
|
|
177321
|
-
|
|
177322
|
-
itemIndex: that.itemIndex,
|
|
177323
|
-
type: "no_input_connection"
|
|
177324
|
-
});
|
|
177325
|
-
}
|
|
177326
|
-
throw new ExpressionError("No execution data available", {
|
|
177331
|
+
throw new ExpressionError(`Node '${nodeName2}' hasn't been executed`, {
|
|
177332
|
+
messageTemplate: 'An expression references this node, but the node is unexecuted. Consider re-wiring your nodes or checking for execution first, i.e. {{ $if( $("{{nodeName}}").isExecuted, <action_if_executed>, "") }}',
|
|
177333
|
+
functionality: "pairedItem",
|
|
177334
|
+
descriptionKey: isScriptingNode(nodeName2, that.workflow) ? "pairedItemNoConnectionCodeNode" : "pairedItemNoConnection",
|
|
177335
|
+
type: "no_execution_data",
|
|
177336
|
+
nodeCause: nodeName2,
|
|
177327
177337
|
runIndex: that.runIndex,
|
|
177328
|
-
itemIndex: that.itemIndex
|
|
177329
|
-
type: "no_execution_data"
|
|
177338
|
+
itemIndex: that.itemIndex
|
|
177330
177339
|
});
|
|
177331
177340
|
}
|
|
177332
177341
|
if (executionData.length <= that.itemIndex) {
|
|
177333
|
-
throw new ExpressionError(`
|
|
177342
|
+
throw new ExpressionError(`"${nodeName2}" node has ${executionData.length} item(s) but you're trying to access item ${that.itemIndex}`, {
|
|
177343
|
+
messageTemplate: "Adjust your expression to access an existing item index (0-{{maxIndex}})",
|
|
177344
|
+
functionality: "pairedItem",
|
|
177345
|
+
descriptionKey: "pairedItemInvalidIndex",
|
|
177346
|
+
type: "no_execution_data",
|
|
177347
|
+
nodeCause: nodeName2,
|
|
177334
177348
|
runIndex: that.runIndex,
|
|
177335
177349
|
itemIndex: that.itemIndex
|
|
177336
177350
|
});
|
|
@@ -177712,12 +177726,14 @@ class WorkflowDataProxy {
|
|
|
177712
177726
|
}
|
|
177713
177727
|
const ensureNodeExecutionData = () => {
|
|
177714
177728
|
if (!that?.runExecutionData?.resultData?.runData.hasOwnProperty(nodeName2) && !getPinDataIfManualExecution(that.workflow, nodeName2, that.mode)) {
|
|
177715
|
-
throw createExpressionError(
|
|
177729
|
+
throw createExpressionError(`Node '${nodeName2}' hasn't been executed`, {
|
|
177730
|
+
messageTemplate: 'An expression references this node, but the node is unexecuted. Consider re-wiring your nodes or checking for execution first, i.e. {{ $if( $("{{nodeName}}").isExecuted, <action_if_executed>, "") }}',
|
|
177731
|
+
functionality: "pairedItem",
|
|
177732
|
+
descriptionKey: isScriptingNode(nodeName2, that.workflow) ? "pairedItemNoConnectionCodeNode" : "pairedItemNoConnection",
|
|
177733
|
+
type: "no_execution_data",
|
|
177734
|
+
nodeCause: nodeName2,
|
|
177716
177735
|
runIndex: that.runIndex,
|
|
177717
|
-
itemIndex: that.itemIndex
|
|
177718
|
-
type: "no_node_execution_data",
|
|
177719
|
-
descriptionKey: "noNodeExecutionData",
|
|
177720
|
-
nodeCause: nodeName2
|
|
177736
|
+
itemIndex: that.itemIndex
|
|
177721
177737
|
});
|
|
177722
177738
|
}
|
|
177723
177739
|
};
|
|
@@ -177747,7 +177763,7 @@ class WorkflowDataProxy {
|
|
|
177747
177763
|
let contextNode = that.contextNodeName;
|
|
177748
177764
|
if (activeNode) {
|
|
177749
177765
|
const parentMainInputNode = that.workflow.getParentMainInputNode(activeNode);
|
|
177750
|
-
contextNode = parentMainInputNode
|
|
177766
|
+
contextNode = parentMainInputNode?.name ?? contextNode;
|
|
177751
177767
|
}
|
|
177752
177768
|
const parentNodes = that.workflow.getParentNodes(contextNode);
|
|
177753
177769
|
if (!parentNodes.includes(nodeName2)) {
|
|
@@ -181960,15 +181976,19 @@ ZodNullable.create;
|
|
|
181960
181976
|
const NEVER = INVALID;
|
|
181961
181977
|
class ParseError extends Error {
|
|
181962
181978
|
}
|
|
181963
|
-
function
|
|
181964
|
-
|
|
181965
|
-
|
|
181979
|
+
function isFromAIArgumentType(value2) {
|
|
181980
|
+
return ["string", "number", "boolean", "json"].includes(value2.toLowerCase());
|
|
181981
|
+
}
|
|
181982
|
+
function parseDefaultValue(value2, type4 = "string") {
|
|
181983
|
+
if (value2 === void 0)
|
|
181984
|
+
return value2;
|
|
181966
181985
|
const lowerValue = value2.toLowerCase();
|
|
181967
|
-
if (
|
|
181968
|
-
return
|
|
181969
|
-
|
|
181970
|
-
|
|
181971
|
-
|
|
181986
|
+
if (type4 === "string") {
|
|
181987
|
+
return value2.toString();
|
|
181988
|
+
}
|
|
181989
|
+
if (type4 === "boolean" && (lowerValue === "true" || lowerValue === "false"))
|
|
181990
|
+
return lowerValue === "true";
|
|
181991
|
+
if (type4 === "number" && !isNaN(Number(value2)))
|
|
181972
181992
|
return Number(value2);
|
|
181973
181993
|
try {
|
|
181974
181994
|
return jsonParse(value2);
|
|
@@ -182024,15 +182044,15 @@ function parseArguments(argsString) {
|
|
|
182024
182044
|
}
|
|
182025
182045
|
return trimmed;
|
|
182026
182046
|
});
|
|
182027
|
-
const type4 = cleanArgs?.[2]
|
|
182028
|
-
if (!
|
|
182047
|
+
const type4 = cleanArgs?.[2] ?? "string";
|
|
182048
|
+
if (!isFromAIArgumentType(type4)) {
|
|
182029
182049
|
throw new ParseError(`Invalid type: ${type4}`);
|
|
182030
182050
|
}
|
|
182031
182051
|
return {
|
|
182032
182052
|
key: cleanArgs[0] || "",
|
|
182033
182053
|
description: cleanArgs[1],
|
|
182034
|
-
type:
|
|
182035
|
-
defaultValue: parseDefaultValue(cleanArgs[3])
|
|
182054
|
+
type: type4,
|
|
182055
|
+
defaultValue: parseDefaultValue(cleanArgs[3], type4)
|
|
182036
182056
|
};
|
|
182037
182057
|
}
|
|
182038
182058
|
function extractFromAICalls(str) {
|
|
@@ -183535,18 +183555,33 @@ class Workflow {
|
|
|
183535
183555
|
getParentMainInputNode(node2) {
|
|
183536
183556
|
if (node2) {
|
|
183537
183557
|
const nodeType = this.nodeTypes.getByNameAndVersion(node2.type, node2.typeVersion);
|
|
183558
|
+
if (!nodeType?.description.outputs) {
|
|
183559
|
+
return node2;
|
|
183560
|
+
}
|
|
183538
183561
|
const outputs2 = getNodeOutputs(this, node2, nodeType.description);
|
|
183539
|
-
|
|
183540
|
-
|
|
183541
|
-
|
|
183542
|
-
|
|
183543
|
-
|
|
183562
|
+
const nonMainConnectionTypes = [];
|
|
183563
|
+
for (const output2 of outputs2) {
|
|
183564
|
+
const type4 = typeof output2 === "string" ? output2 : output2.type;
|
|
183565
|
+
if (type4 !== NodeConnectionTypes.Main) {
|
|
183566
|
+
nonMainConnectionTypes.push(type4);
|
|
183567
|
+
}
|
|
183568
|
+
}
|
|
183569
|
+
nonMainConnectionTypes.sort();
|
|
183570
|
+
if (nonMainConnectionTypes.length > 0) {
|
|
183571
|
+
const nonMainNodesConnected = [];
|
|
183572
|
+
const nodeConnections = this.connectionsBySourceNode[node2.name];
|
|
183573
|
+
for (const type4 of nonMainConnectionTypes) {
|
|
183574
|
+
if (nodeConnections?.[type4]) {
|
|
183575
|
+
const childNodes = this.getChildNodes(node2.name, type4);
|
|
183576
|
+
if (childNodes.length > 0) {
|
|
183577
|
+
nonMainNodesConnected.push(...childNodes);
|
|
183578
|
+
}
|
|
183544
183579
|
}
|
|
183545
|
-
|
|
183546
|
-
}, []);
|
|
183580
|
+
}
|
|
183547
183581
|
if (nonMainNodesConnected.length) {
|
|
183582
|
+
nonMainNodesConnected.sort();
|
|
183548
183583
|
const returnNode = this.getNode(nonMainNodesConnected[0]);
|
|
183549
|
-
if (returnNode
|
|
183584
|
+
if (!returnNode) {
|
|
183550
183585
|
throw new ApplicationError(`Node "${nonMainNodesConnected[0]}" not found`);
|
|
183551
183586
|
}
|
|
183552
183587
|
return this.getParentMainInputNode(returnNode);
|
|
@@ -185422,6 +185457,11 @@ const GLOBAL_OWNER_SCOPES = [
|
|
|
185422
185457
|
"project:delete",
|
|
185423
185458
|
"insights:list",
|
|
185424
185459
|
"folder:move",
|
|
185460
|
+
"folder:read",
|
|
185461
|
+
"folder:update",
|
|
185462
|
+
"folder:delete",
|
|
185463
|
+
"folder:create",
|
|
185464
|
+
"folder:list",
|
|
185425
185465
|
"oidc:manage",
|
|
185426
185466
|
"dataStore:list",
|
|
185427
185467
|
"role:manage"
|
|
@@ -186059,7 +186099,7 @@ const VALID_SORT_OPTIONS$2 = [
|
|
|
186059
186099
|
"updatedAt:asc",
|
|
186060
186100
|
"updatedAt:desc"
|
|
186061
186101
|
];
|
|
186062
|
-
const filterSchema$
|
|
186102
|
+
const filterSchema$1 = objectType({
|
|
186063
186103
|
parentFolderId: stringType().optional(),
|
|
186064
186104
|
name: stringType().optional(),
|
|
186065
186105
|
tags: arrayType(stringType()).optional(),
|
|
@@ -186070,7 +186110,7 @@ const filterValidator$2 = stringType().optional().transform((val, ctx) => {
|
|
|
186070
186110
|
try {
|
|
186071
186111
|
const parsed = jsonParse(val);
|
|
186072
186112
|
try {
|
|
186073
|
-
return filterSchema$
|
|
186113
|
+
return filterSchema$1.parse(parsed);
|
|
186074
186114
|
} catch (e2) {
|
|
186075
186115
|
ctx.addIssue({
|
|
186076
186116
|
code: ZodIssueCode.custom,
|
|
@@ -186346,6 +186386,19 @@ class UsersListFilterDto extends Z$3.class({
|
|
|
186346
186386
|
sortBy: usersListSortByValidator
|
|
186347
186387
|
}) {
|
|
186348
186388
|
}
|
|
186389
|
+
class UpdateRoleDto extends Z$3.class({
|
|
186390
|
+
displayName: stringType().min(2).max(100).optional(),
|
|
186391
|
+
description: stringType().max(500).optional(),
|
|
186392
|
+
scopes: arrayType(scopeSchema).optional()
|
|
186393
|
+
}) {
|
|
186394
|
+
}
|
|
186395
|
+
class CreateRoleDto extends Z$3.class({
|
|
186396
|
+
displayName: stringType().min(2).max(100),
|
|
186397
|
+
description: stringType().max(500).optional(),
|
|
186398
|
+
roleType: enumType(["project"]),
|
|
186399
|
+
scopes: arrayType(scopeSchema)
|
|
186400
|
+
}) {
|
|
186401
|
+
}
|
|
186349
186402
|
class OidcConfigDto extends Z$3.class({
|
|
186350
186403
|
clientId: stringType().min(1),
|
|
186351
186404
|
clientSecret: stringType().min(1),
|
|
@@ -186398,23 +186451,49 @@ class UpdateDataStoreDto extends Z$3.class({
|
|
|
186398
186451
|
name: dataStoreNameSchema
|
|
186399
186452
|
}) {
|
|
186400
186453
|
}
|
|
186401
|
-
const
|
|
186402
|
-
|
|
186403
|
-
|
|
186404
|
-
|
|
186454
|
+
const FilterConditionSchema = unionType([
|
|
186455
|
+
literalType("eq"),
|
|
186456
|
+
literalType("neq"),
|
|
186457
|
+
literalType("like"),
|
|
186458
|
+
literalType("ilike"),
|
|
186459
|
+
literalType("gt"),
|
|
186460
|
+
literalType("gte"),
|
|
186461
|
+
literalType("lt"),
|
|
186462
|
+
literalType("lte")
|
|
186463
|
+
]);
|
|
186464
|
+
const dataTableFilterRecordSchema = objectType({
|
|
186465
|
+
columnName: dataStoreColumnNameSchema,
|
|
186466
|
+
condition: FilterConditionSchema.default("eq"),
|
|
186467
|
+
value: unionType([stringType(), numberType(), booleanType(), dateType(), nullType()])
|
|
186468
|
+
});
|
|
186469
|
+
const dataTableFilterTypeSchema = unionType([literalType("and"), literalType("or")]);
|
|
186470
|
+
const dataTableFilterSchema = objectType({
|
|
186471
|
+
type: dataTableFilterTypeSchema.default("and"),
|
|
186472
|
+
filters: arrayType(dataTableFilterRecordSchema).default([])
|
|
186473
|
+
});
|
|
186474
|
+
const updateFilterSchema = dataTableFilterSchema.refine((filter3) => filter3.filters.length > 0, {
|
|
186475
|
+
message: "filter must not be empty"
|
|
186476
|
+
});
|
|
186477
|
+
const updateDataTableRowShape = {
|
|
186478
|
+
filter: updateFilterSchema,
|
|
186405
186479
|
data: recordType(dataStoreColumnNameSchema, dataStoreColumnValueSchema).refine((obj) => Object.keys(obj).length > 0, {
|
|
186406
186480
|
message: "data must not be empty"
|
|
186407
186481
|
}),
|
|
186408
|
-
returnData: booleanType().default(false)
|
|
186482
|
+
returnData: booleanType().optional().default(false)
|
|
186409
186483
|
};
|
|
186410
|
-
class
|
|
186484
|
+
class UpdateDataTableRowDto extends Z$3.class(updateDataTableRowShape) {
|
|
186411
186485
|
}
|
|
186412
|
-
const
|
|
186413
|
-
|
|
186414
|
-
|
|
186486
|
+
const upsertFilterSchema = dataTableFilterSchema.refine((filter3) => filter3.filters.length > 0, {
|
|
186487
|
+
message: "filter must not be empty"
|
|
186488
|
+
});
|
|
186489
|
+
const upsertDataStoreRowShape = {
|
|
186490
|
+
filter: upsertFilterSchema,
|
|
186491
|
+
data: recordType(dataStoreColumnNameSchema, dataStoreColumnValueSchema).refine((obj) => Object.keys(obj).length > 0, {
|
|
186492
|
+
message: "data must not be empty"
|
|
186493
|
+
}),
|
|
186415
186494
|
returnData: booleanType().optional().default(false)
|
|
186416
186495
|
};
|
|
186417
|
-
class
|
|
186496
|
+
class UpsertDataStoreRowDto extends Z$3.class(upsertDataStoreRowShape) {
|
|
186418
186497
|
}
|
|
186419
186498
|
const VALID_SORT_OPTIONS = [
|
|
186420
186499
|
"name:asc",
|
|
@@ -186432,13 +186511,13 @@ const FILTER_OPTIONS = {
|
|
|
186432
186511
|
projectId: unionType([stringType(), arrayType(stringType())]).optional()
|
|
186433
186512
|
// todo: can probably include others here as well?
|
|
186434
186513
|
};
|
|
186435
|
-
const filterSchema
|
|
186514
|
+
const filterSchema = objectType(FILTER_OPTIONS).strict();
|
|
186436
186515
|
const filterValidator$1 = stringType().optional().transform((val, ctx) => {
|
|
186437
186516
|
if (!val) return void 0;
|
|
186438
186517
|
try {
|
|
186439
186518
|
const parsed = jsonParse(val);
|
|
186440
186519
|
try {
|
|
186441
|
-
return filterSchema
|
|
186520
|
+
return filterSchema.parse(parsed);
|
|
186442
186521
|
} catch (e2) {
|
|
186443
186522
|
ctx.addIssue({
|
|
186444
186523
|
code: ZodIssueCode.custom,
|
|
@@ -186463,32 +186542,12 @@ class ListDataStoreQueryDto extends Z$3.class({
|
|
|
186463
186542
|
sortBy: sortByValidator$1
|
|
186464
186543
|
}) {
|
|
186465
186544
|
}
|
|
186466
|
-
const FilterConditionSchema = unionType([
|
|
186467
|
-
literalType("eq"),
|
|
186468
|
-
literalType("neq"),
|
|
186469
|
-
literalType("like"),
|
|
186470
|
-
literalType("ilike"),
|
|
186471
|
-
literalType("gt"),
|
|
186472
|
-
literalType("gte"),
|
|
186473
|
-
literalType("lt"),
|
|
186474
|
-
literalType("lte")
|
|
186475
|
-
]);
|
|
186476
|
-
const filterRecord = objectType({
|
|
186477
|
-
columnName: dataStoreColumnNameSchema,
|
|
186478
|
-
condition: FilterConditionSchema.default("eq"),
|
|
186479
|
-
value: unionType([stringType(), numberType(), booleanType(), dateType(), nullType()])
|
|
186480
|
-
});
|
|
186481
|
-
const chainedFilterSchema = unionType([literalType("and"), literalType("or")]);
|
|
186482
|
-
const filterSchema = objectType({
|
|
186483
|
-
type: chainedFilterSchema.default("and"),
|
|
186484
|
-
filters: arrayType(filterRecord).default([])
|
|
186485
|
-
});
|
|
186486
186545
|
const filterValidator = stringType().optional().transform((val, ctx) => {
|
|
186487
186546
|
if (!val) return void 0;
|
|
186488
186547
|
try {
|
|
186489
186548
|
const parsed = jsonParse(val);
|
|
186490
186549
|
try {
|
|
186491
|
-
return
|
|
186550
|
+
return dataTableFilterSchema.parse(parsed);
|
|
186492
186551
|
} catch (e2) {
|
|
186493
186552
|
ctx.addIssue({
|
|
186494
186553
|
code: ZodIssueCode.custom,
|
|
@@ -186546,7 +186605,7 @@ class ListDataStoreContentQueryDto extends Z$3.class({
|
|
|
186546
186605
|
}) {
|
|
186547
186606
|
}
|
|
186548
186607
|
class AddDataStoreRowsDto extends Z$3.class({
|
|
186549
|
-
returnData: booleanType().default(false),
|
|
186608
|
+
returnData: booleanType().optional().default(false),
|
|
186550
186609
|
data: arrayType(recordType(dataStoreColumnNameSchema, dataStoreColumnValueSchema))
|
|
186551
186610
|
}) {
|
|
186552
186611
|
}
|
|
@@ -187863,12 +187922,45 @@ const PiniaVuePlugin = function(_Vue) {
|
|
|
187863
187922
|
const STORES = {
|
|
187864
187923
|
ROOT: "root"
|
|
187865
187924
|
};
|
|
187925
|
+
function getTagName(configName) {
|
|
187926
|
+
return `n8n:config:${configName}`;
|
|
187927
|
+
}
|
|
187928
|
+
function getConfigFromMetaTag(configName) {
|
|
187929
|
+
const tagName = getTagName(configName);
|
|
187930
|
+
try {
|
|
187931
|
+
const metaTag = document.querySelector(`meta[name="${tagName}"]`);
|
|
187932
|
+
if (!metaTag) {
|
|
187933
|
+
return null;
|
|
187934
|
+
}
|
|
187935
|
+
const encodedContent = metaTag.getAttribute("content");
|
|
187936
|
+
if (!encodedContent) {
|
|
187937
|
+
return null;
|
|
187938
|
+
}
|
|
187939
|
+
const content2 = atob(encodedContent);
|
|
187940
|
+
return content2;
|
|
187941
|
+
} catch (error2) {
|
|
187942
|
+
console.warn(`Failed to read n8n config for "${tagName}":`, error2);
|
|
187943
|
+
return null;
|
|
187944
|
+
}
|
|
187945
|
+
}
|
|
187946
|
+
function getAndParseConfigFromMetaTag(configName) {
|
|
187947
|
+
const config2 = getConfigFromMetaTag(configName);
|
|
187948
|
+
if (!config2) {
|
|
187949
|
+
return null;
|
|
187950
|
+
}
|
|
187951
|
+
try {
|
|
187952
|
+
return JSON.parse(config2);
|
|
187953
|
+
} catch (error2) {
|
|
187954
|
+
console.warn(`Failed to parse n8n config for "${getTagName(configName)}":`, error2);
|
|
187955
|
+
return null;
|
|
187956
|
+
}
|
|
187957
|
+
}
|
|
187866
187958
|
const __vite_import_meta_env__ = { "LEGACY": false };
|
|
187867
187959
|
const { VUE_APP_URL_BASE_API } = __vite_import_meta_env__;
|
|
187868
187960
|
const useRootStore = /* @__PURE__ */ defineStore(STORES.ROOT, () => {
|
|
187869
187961
|
const state2 = ref$1({
|
|
187870
187962
|
baseUrl: VUE_APP_URL_BASE_API ?? window.BASE_PATH,
|
|
187871
|
-
restEndpoint:
|
|
187963
|
+
restEndpoint: getConfigFromMetaTag("rest-endpoint") ?? "rest",
|
|
187872
187964
|
defaultLocale: "en",
|
|
187873
187965
|
endpointForm: "form",
|
|
187874
187966
|
endpointFormTest: "form-test",
|
|
@@ -198665,7 +198757,7 @@ Return "Good morning" if time is before 10am, "Good day" it's before 5pm, otherw
|
|
|
198665
198757
|
"dataStore.dataStores": "Data tables",
|
|
198666
198758
|
"dataStore.empty.label": "You don't have any data tables yet",
|
|
198667
198759
|
"dataStore.empty.description": "Once you create data tables for your projects, they will appear here",
|
|
198668
|
-
"dataStore.empty.button.label": 'Create Data
|
|
198760
|
+
"dataStore.empty.button.label": 'Create Data table in "{projectName}"',
|
|
198669
198761
|
"dataStore.card.size": "{size}MB",
|
|
198670
198762
|
"dataStore.card.column.count": "{count} column | {count} columns",
|
|
198671
198763
|
"dataStore.card.row.count": "{count} record | {count} records",
|
|
@@ -198675,13 +198767,13 @@ Return "Good morning" if time is before 10am, "Good day" it's before 5pm, otherw
|
|
|
198675
198767
|
"dataStore.sort.nameDesc": "Sort by name (Z-A)",
|
|
198676
198768
|
"dataStore.search.placeholder": "Search",
|
|
198677
198769
|
"dataStore.error.fetching": "Error loading data tables",
|
|
198678
|
-
"dataStore.add.title": "Create new
|
|
198770
|
+
"dataStore.add.title": "Create new Data table",
|
|
198679
198771
|
"dataStore.add.description": "Set up a new data table to organize and manage your data.",
|
|
198680
|
-
"dataStore.add.button.label": "Create Data
|
|
198681
|
-
"dataStore.add.input.name.label": "Data
|
|
198772
|
+
"dataStore.add.button.label": "Create Data table",
|
|
198773
|
+
"dataStore.add.input.name.label": "Data table name",
|
|
198682
198774
|
"dataStore.add.input.name.placeholder": "Enter data table name",
|
|
198683
198775
|
"dataStore.add.error": "Error creating data table",
|
|
198684
|
-
"dataStore.delete.confirm.title": "Delete
|
|
198776
|
+
"dataStore.delete.confirm.title": "Delete Data table",
|
|
198685
198777
|
"dataStore.delete.confirm.message": 'Are you sure you want to delete the data table "{name}"? This action cannot be undone.',
|
|
198686
198778
|
"dataStore.delete.error": "Error deleting data table",
|
|
198687
198779
|
"dataStore.rename.error": "Error renaming data table",
|
|
@@ -198700,7 +198792,7 @@ Return "Good morning" if time is before 10am, "Good day" it's before 5pm, otherw
|
|
|
198700
198792
|
"dataStore.deleteColumn.confirm.title": "Delete column",
|
|
198701
198793
|
"dataStore.deleteColumn.confirm.message": 'Are you sure you want to delete the column "{name}"? This action cannot be undone.',
|
|
198702
198794
|
"dataStore.addColumn.invalidName.error": "Invalid column name",
|
|
198703
|
-
"dataStore.addColumn.invalidName.description": "
|
|
198795
|
+
"dataStore.addColumn.invalidName.description": "Column names must begin with a letter and can only include letters, numbers, or underscores",
|
|
198704
198796
|
"dataStore.fetchContent.error": "Error fetching data store content",
|
|
198705
198797
|
"dataStore.addRow.label": "Add Row",
|
|
198706
198798
|
"dataStore.addRow.error": "Error adding row",
|
|
@@ -199257,6 +199349,7 @@ Return "Good morning" if time is before 10am, "Good day" it's before 5pm, otherw
|
|
|
199257
199349
|
"workflowDiff.changes": "Changes",
|
|
199258
199350
|
"workflowDiff.nodes": "Nodes",
|
|
199259
199351
|
"workflowDiff.connectors": "Connectors",
|
|
199352
|
+
"workflowDiff.compare": "Compare versions",
|
|
199260
199353
|
"workflowDiff.settings": "Settings",
|
|
199261
199354
|
"workflowDiff.local": "Local",
|
|
199262
199355
|
"workflowDiff.remote": "Remote ({branchName})",
|
|
@@ -199564,7 +199657,7 @@ async function loadLanguage(language2) {
|
|
|
199564
199657
|
if (loadedLanguages.includes(language2)) {
|
|
199565
199658
|
return await setLanguage(language2);
|
|
199566
199659
|
}
|
|
199567
|
-
const { numberFormats, ...rest } = (await __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "../src/locales/en.json": () => __vitePreload(() => import("./en-
|
|
199660
|
+
const { numberFormats, ...rest } = (await __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "../src/locales/en.json": () => __vitePreload(() => import("./en-C3wg5zl_.js"), true ? [] : void 0) }), `../src/locales/${language2}.json`, 4)).default;
|
|
199568
199661
|
i18nInstance.global.setLocaleMessage(language2, rest);
|
|
199569
199662
|
if (numberFormats) {
|
|
199570
199663
|
i18nInstance.global.setNumberFormat(language2, numberFormats);
|
|
@@ -203154,9 +203247,10 @@ const useSettingsStore = /* @__PURE__ */ defineStore(STORES$1.SETTINGS, () => {
|
|
|
203154
203247
|
blockFileAccessToN8nFiles: settings2.value.security.blockFileAccessToN8nFiles,
|
|
203155
203248
|
secureCookie: settings2.value.authCookie.secure
|
|
203156
203249
|
}));
|
|
203157
|
-
const isEnterpriseFeatureEnabled2 = computed(() => settings2.value.enterprise);
|
|
203250
|
+
const isEnterpriseFeatureEnabled2 = computed(() => settings2.value.enterprise ?? {});
|
|
203158
203251
|
const nodeJsVersion = computed(() => settings2.value.nodeJsVersion);
|
|
203159
203252
|
const concurrency = computed(() => settings2.value.concurrency);
|
|
203253
|
+
const isNativePythonRunnerEnabled = computed(() => settings2.value.isNativePythonRunnerEnabled);
|
|
203160
203254
|
const isConcurrencyEnabled = computed(() => concurrency.value !== -1);
|
|
203161
203255
|
const isPublicApiEnabled = computed(() => api2.value.enabled);
|
|
203162
203256
|
const isSwaggerUIEnabled = computed(() => api2.value.swaggerUi.enabled);
|
|
@@ -203343,6 +203437,7 @@ const useSettingsStore = /* @__PURE__ */ defineStore(STORES$1.SETTINGS, () => {
|
|
|
203343
203437
|
security,
|
|
203344
203438
|
nodeJsVersion,
|
|
203345
203439
|
concurrency,
|
|
203440
|
+
isNativePythonRunnerEnabled,
|
|
203346
203441
|
isConcurrencyEnabled,
|
|
203347
203442
|
isPublicApiEnabled,
|
|
203348
203443
|
isSwaggerUIEnabled,
|
|
@@ -209036,7 +209131,7 @@ You have access to two tools:
|
|
|
209036
209131
|
2. Chosen labels with reasoning
|
|
209037
209132
|
3. Use "Add Labels" tool with selected labels
|
|
209038
209133
|
|
|
209039
|
-
Be efficient and accurate. Focus on helping the user maintain an organized inbox.` } }, "id": "a4dccc7a-008e-40c5-90dd-c91090a144fd", "name": "Email Classification Agent", "type": "@n8n/n8n-nodes-langchain.agent", "typeVersion": 2.2, "position": [224, -32] }, { "parameters": { "operation": "addLabels", "messageId": "={{ $json.id }}", "labelIds": "={{ $fromAI('Label_Names_or_IDs', `Array of Gmail label ids to add. Use the id field from the \"Get all labels\" tool`, 'string') }}" }, "id": "a5e4168b-1ce7-4cfe-ae6d-a1a4ab9b96df", "name": "Add Label", "type": "n8n-nodes-base.gmailTool", "typeVersion": 2.1, "position": [320, 192], "webhookId": "e7289911-d937-45bd-9e91-410a0dc959f8", "credentials": {} }, { "parameters": { "descriptionType": "manual", "toolDescription": "Use this tool to get all existing labels from Gmail", "resource": "label", "returnAll": true }, "type": "n8n-nodes-base.gmailTool", "typeVersion": 2.1, "position": [464, 192], "id": "79ee166d-4443-45c6-84e1-8820299cf2de", "name": "Get all Labels", "webhookId": "291b9995-7ae1-4f65-9ffb-ba62c980b829", "credentials": {} }, { "parameters": { "content": "
|
|
209134
|
+
Be efficient and accurate. Focus on helping the user maintain an organized inbox.` } }, "id": "a4dccc7a-008e-40c5-90dd-c91090a144fd", "name": "Email Classification Agent", "type": "@n8n/n8n-nodes-langchain.agent", "typeVersion": 2.2, "position": [224, -32] }, { "parameters": { "operation": "addLabels", "messageId": "={{ $json.id }}", "labelIds": "={{ $fromAI('Label_Names_or_IDs', `Array of Gmail label ids to add. Use the id field from the \"Get all labels\" tool`, 'string') }}" }, "id": "a5e4168b-1ce7-4cfe-ae6d-a1a4ab9b96df", "name": "Add Label", "type": "n8n-nodes-base.gmailTool", "typeVersion": 2.1, "position": [320, 192], "webhookId": "e7289911-d937-45bd-9e91-410a0dc959f8", "credentials": {} }, { "parameters": { "descriptionType": "manual", "toolDescription": "Use this tool to get all existing labels from Gmail", "resource": "label", "returnAll": true }, "type": "n8n-nodes-base.gmailTool", "typeVersion": 2.1, "position": [464, 192], "id": "79ee166d-4443-45c6-84e1-8820299cf2de", "name": "Get all Labels", "webhookId": "291b9995-7ae1-4f65-9ffb-ba62c980b829", "credentials": {} }, { "parameters": { "content": "## Start here!\n@[youtube](U1zxP7Ut1Kc)", "height": 320, "width": 464, "color": 5 }, "type": "n8n-nodes-base.stickyNote", "position": [-608, -144], "typeVersion": 1, "id": "db4fcd5d-7f0a-41f6-9dd7-4100a63f38cc", "name": "Sticky Note" }, { "parameters": { "model": { "__rl": true, "value": "gpt-4.1-mini", "mode": "list", "cachedResultName": "gpt-4.1-mini" }, "options": {} }, "id": "1fda1d78-a669-4be1-9aba-56c0abb7c247", "name": "Model", "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi", "typeVersion": 1.2, "position": [160, 192], "credentials": {} }];
|
|
209040
209135
|
const pinData$9 = {};
|
|
209041
209136
|
const connections$b = { "New Email Trigger": { "main": [[{ "node": "Email Classification Agent", "type": "main", "index": 0 }]] }, "Add Label": { "ai_tool": [[{ "node": "Email Classification Agent", "type": "ai_tool", "index": 0 }]] }, "Get all Labels": { "ai_tool": [[{ "node": "Email Classification Agent", "type": "ai_tool", "index": 0 }]] }, "Model": { "ai_languageModel": [[{ "node": "Email Classification Agent", "type": "ai_languageModel", "index": 0 }]] } };
|
|
209042
209137
|
const active$9 = false;
|
|
@@ -209127,7 +209222,7 @@ You are a fun and entertaining joke bot that brings laughter and good vibes to c
|
|
|
209127
209222
|
- Make people smile and brighten their day
|
|
209128
209223
|
- If a joke doesn't land, just move on cheerfully
|
|
209129
209224
|
|
|
209130
|
-
Remember: Your goal is to spread joy and laughter. Keep things fun, appropriate, and entertaining!` } }, "type": "@n8n/n8n-nodes-langchain.agent", "typeVersion": 2.2, "position": [-448, 0], "id": "fb541fe9-749d-4f22-a171-3a16eb1bdb4c", "name": "Joke agent" }, { "parameters": { "content": "
|
|
209225
|
+
Remember: Your goal is to spread joy and laughter. Keep things fun, appropriate, and entertaining!` } }, "type": "@n8n/n8n-nodes-langchain.agent", "typeVersion": 2.2, "position": [-448, 0], "id": "fb541fe9-749d-4f22-a171-3a16eb1bdb4c", "name": "Joke agent" }, { "parameters": { "content": "## Start here!\n@[youtube](q1TMyj3zrp0)", "height": 320, "width": 464, "color": 5 }, "type": "n8n-nodes-base.stickyNote", "position": [-1200, 0], "typeVersion": 1, "id": "b30452e2-c811-4191-8415-7ae444b15849", "name": "Sticky Note" }];
|
|
209131
209226
|
const pinData$8 = {};
|
|
209132
209227
|
const connections$a = { "When chat message received": { "main": [[{ "node": "Joke agent", "type": "main", "index": 0 }]] }, "Joke API": { "ai_tool": [[{ "node": "Joke agent", "type": "ai_tool", "index": 0 }]] }, "API docs": { "ai_tool": [[{ "node": "Joke agent", "type": "ai_tool", "index": 0 }]] }, "Model": { "ai_languageModel": [[{ "node": "Joke agent", "type": "ai_languageModel", "index": 0 }]] }, "Memory": { "ai_memory": [[{ "node": "Joke agent", "type": "ai_memory", "index": 0 }]] } };
|
|
209133
209228
|
const active$8 = false;
|
|
@@ -209145,7 +209240,7 @@ const jokeAgentWithHttpToolJson = {
|
|
|
209145
209240
|
};
|
|
209146
209241
|
const name$c = "Knowledge store agent (with Google Drive)";
|
|
209147
209242
|
const meta$b = { "templateCredsSetupCompleted": false, "templateId": "knowledge_store_agent_with_google_drive" };
|
|
209148
|
-
const nodes$b = [{ "parameters": { "dataType": "binary", "options": {} }, "type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader", "typeVersion": 1.1, "position": [-128, 256], "id": "708d9e4e-6566-4b18-86b8-8301bf0c72dd", "name": "Default Data Loader" }, { "parameters": { "operation": "download", "fileId": { "__rl": true, "value": "={{ $json.id }}", "mode": "id" }, "options": {} }, "type": "n8n-nodes-base.googleDrive", "typeVersion": 3, "position": [-432, 32], "id": "604a4e5e-5ccc-4db1-94dc-673711bea6af", "name": "Download file", "credentials": {} }, { "parameters": { "options": {} }, "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi", "typeVersion": 1.2, "position": [-336, 656], "id": "e8db240e-bb3f-43ab-b4ed-527c6c2e8f54", "name": "Embedding model", "credentials": {} }, { "parameters": { "options": { "systemMessage": "# Knowledge Store Agent System Prompt\n\nYou are a data analysis agent that retrieves and analyzes information from a vector store to answer user questions.\n\n## Your Task\n\n1. **Search the vector store** - Use similarity search to find relevant documents and data\n2. **Analyze the results** - Understand what the retrieved data tells you\n3. **Provide clear answers** - Give helpful responses based on the data you found\n\n## How to Work with Vector Data\n\n### Search Process\n- Use the user's question to search for similar content\n- Retrieve multiple relevant chunks of data\n- Look for patterns and connections across the results\n- Consider both exact matches and conceptually similar information\n\n### Analysis Guidelines\n- Read through all retrieved documents carefully\n- Identify key information that answers the user's question\n- Note any conflicting or incomplete information\n- Look for trends, patterns, or insights in the data\n\n### Response Format\n- Start with a direct answer to the user's question\n- Support your answer with specific information from the data\n- Cite which documents or sources your information comes from\n- Be clear about what you found and what you didn't find\n\n## Response Guidelines\n\n### When You Find Good Data\n- Give a confident, detailed answer\n- Include relevant quotes or data points\n- Explain how the information relates to their question\n- Offer additional insights if available\n\n### When Data is Limited\n- Be honest about what information is available\n- Share what you did find, even if partial\n- Suggest related questions you could help with\n- Don't make up information not in the data\n\n### When No Relevant Data is Found\n- Clearly state that you couldn't find relevant information\n- Suggest alternative ways to phrase the question\n- Offer to search for related topics\n\n## Key Principles\n\n- Always base answers on the retrieved data\n- Be transparent about your sources\n- Admit when information is unclear or missing\n- Help users understand what the data shows\n- Ask clarifying questions if the user's request is vague\n\nRemember: Your strength is finding and explaining information that already exists in the vector store. Focus on being accurate and helpful with the data you can retrieve." } }, "type": "@n8n/n8n-nodes-langchain.agent", "typeVersion": 2.2, "position": [384, 32], "id": "99f9315f-4f3d-48d9-a6f4-8c519b249eba", "name": "AI Agent" }, { "parameters": { "options": {} }, "type": "@n8n/n8n-nodes-langchain.chatTrigger", "typeVersion": 1.3, "position": [176, 32], "id": "bedf3615-c8b0-4fa8-afc5-574bca1003d4", "name": "When chat message received", "webhookId": "ddf4ea5b-94fc-4fbf-b856-95d39a04eb59" }, { "parameters": { "model": { "__rl": true, "value": "gpt-4o", "mode": "list", "cachedResultName": "gpt-4o" }, "options": {} }, "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi", "typeVersion": 1.2, "position": [288, 240], "id": "9751b75b-50ac-49c8-8f4d-24a8035b6e73", "name": "Model", "credentials": {} }, { "parameters": {}, "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow", "typeVersion": 1.3, "position": [432, 240], "id": "167d097a-69f6-4f1b-a741-8c8936adb3d2", "name": "Simple Memory" }, { "parameters": { "pollTimes": { "item": [{ "mode": "everyMinute" }] }, "triggerOn": "specificFolder", "folderToWatch": { "__rl": true, "value": "1y55jxSWMeFBBFOIXxHWofVA2vkro4YLI", "mode": "list", "cachedResultName": "Knowledge store", "cachedResultUrl": "https://drive.google.com/drive/folders/1y55jxSWMeFBBFOIXxHWofVA2vkro4YLI" }, "event": "fileCreated", "options": {} }, "type": "n8n-nodes-base.googleDriveTrigger", "typeVersion": 1, "position": [-640, 32], "id": "0cddc21e-a75f-48df-b168-8e288be12469", "name": "File uploaded", "credentials": {} }, { "parameters": { "content":
|
|
209243
|
+
const nodes$b = [{ "parameters": { "dataType": "binary", "options": {} }, "type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader", "typeVersion": 1.1, "position": [-128, 256], "id": "708d9e4e-6566-4b18-86b8-8301bf0c72dd", "name": "Default Data Loader" }, { "parameters": { "operation": "download", "fileId": { "__rl": true, "value": "={{ $json.id }}", "mode": "id" }, "options": {} }, "type": "n8n-nodes-base.googleDrive", "typeVersion": 3, "position": [-432, 32], "id": "604a4e5e-5ccc-4db1-94dc-673711bea6af", "name": "Download file", "credentials": {} }, { "parameters": { "options": {} }, "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi", "typeVersion": 1.2, "position": [-336, 656], "id": "e8db240e-bb3f-43ab-b4ed-527c6c2e8f54", "name": "Embedding model", "credentials": {} }, { "parameters": { "options": { "systemMessage": "# Knowledge Store Agent System Prompt\n\nYou are a data analysis agent that retrieves and analyzes information from a vector store to answer user questions.\n\n## Your Task\n\n1. **Search the vector store** - Use similarity search to find relevant documents and data\n2. **Analyze the results** - Understand what the retrieved data tells you\n3. **Provide clear answers** - Give helpful responses based on the data you found\n\n## How to Work with Vector Data\n\n### Search Process\n- Use the user's question to search for similar content\n- Retrieve multiple relevant chunks of data\n- Look for patterns and connections across the results\n- Consider both exact matches and conceptually similar information\n\n### Analysis Guidelines\n- Read through all retrieved documents carefully\n- Identify key information that answers the user's question\n- Note any conflicting or incomplete information\n- Look for trends, patterns, or insights in the data\n\n### Response Format\n- Start with a direct answer to the user's question\n- Support your answer with specific information from the data\n- Cite which documents or sources your information comes from\n- Be clear about what you found and what you didn't find\n\n## Response Guidelines\n\n### When You Find Good Data\n- Give a confident, detailed answer\n- Include relevant quotes or data points\n- Explain how the information relates to their question\n- Offer additional insights if available\n\n### When Data is Limited\n- Be honest about what information is available\n- Share what you did find, even if partial\n- Suggest related questions you could help with\n- Don't make up information not in the data\n\n### When No Relevant Data is Found\n- Clearly state that you couldn't find relevant information\n- Suggest alternative ways to phrase the question\n- Offer to search for related topics\n\n## Key Principles\n\n- Always base answers on the retrieved data\n- Be transparent about your sources\n- Admit when information is unclear or missing\n- Help users understand what the data shows\n- Ask clarifying questions if the user's request is vague\n\nRemember: Your strength is finding and explaining information that already exists in the vector store. Focus on being accurate and helpful with the data you can retrieve." } }, "type": "@n8n/n8n-nodes-langchain.agent", "typeVersion": 2.2, "position": [384, 32], "id": "99f9315f-4f3d-48d9-a6f4-8c519b249eba", "name": "AI Agent" }, { "parameters": { "options": {} }, "type": "@n8n/n8n-nodes-langchain.chatTrigger", "typeVersion": 1.3, "position": [176, 32], "id": "bedf3615-c8b0-4fa8-afc5-574bca1003d4", "name": "When chat message received", "webhookId": "ddf4ea5b-94fc-4fbf-b856-95d39a04eb59" }, { "parameters": { "model": { "__rl": true, "value": "gpt-4o", "mode": "list", "cachedResultName": "gpt-4o" }, "options": {} }, "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi", "typeVersion": 1.2, "position": [288, 240], "id": "9751b75b-50ac-49c8-8f4d-24a8035b6e73", "name": "Model", "credentials": {} }, { "parameters": {}, "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow", "typeVersion": 1.3, "position": [432, 240], "id": "167d097a-69f6-4f1b-a741-8c8936adb3d2", "name": "Simple Memory" }, { "parameters": { "pollTimes": { "item": [{ "mode": "everyMinute" }] }, "triggerOn": "specificFolder", "folderToWatch": { "__rl": true, "value": "1y55jxSWMeFBBFOIXxHWofVA2vkro4YLI", "mode": "list", "cachedResultName": "Knowledge store", "cachedResultUrl": "https://drive.google.com/drive/folders/1y55jxSWMeFBBFOIXxHWofVA2vkro4YLI" }, "event": "fileCreated", "options": {} }, "type": "n8n-nodes-base.googleDriveTrigger", "typeVersion": 1, "position": [-640, 32], "id": "0cddc21e-a75f-48df-b168-8e288be12469", "name": "File uploaded", "credentials": {} }, { "parameters": { "content": "### Embeddings\n\nThe Insert and Retrieve operation use the same embedding node.\n\nThis is to ensure that they are using the **exact same embeddings and settings**.\n\nDifferent embeddings might not work at all, or have unintended consequences.\n", "height": 240, "width": 320, "color": 4 }, "type": "n8n-nodes-base.stickyNote", "position": [-208, 656], "typeVersion": 1, "id": "2fa9684d-f20a-4262-9b8b-81babb2fecc5", "name": "Sticky Note3" }, { "parameters": { "mode": "insert", "memoryKey": { "__rl": true, "value": "vector_store_key", "mode": "list", "cachedResultName": "vector_store_key" } }, "type": "@n8n/n8n-nodes-langchain.vectorStoreInMemory", "typeVersion": 1.3, "position": [-240, 32], "id": "64d17551-1637-4a53-a3e0-db45894c12a6", "name": "Insert documents" }, { "parameters": { "mode": "retrieve-as-tool", "toolDescription": "Use this tool to retrieve any information required.", "memoryKey": { "__rl": true, "value": "vector_store_key", "mode": "list", "cachedResultName": "vector_store_key" }, "topK": 10 }, "type": "@n8n/n8n-nodes-langchain.vectorStoreInMemory", "typeVersion": 1.3, "position": [640, 368], "id": "4f8a4a45-28a4-4684-b838-66011cc6a4a5", "name": "Retrieve documents" }, { "parameters": { "content": "## Start here!\n@[youtube](v28IbZyoQEo)", "height": 320, "width": 464, "color": 5 }, "type": "n8n-nodes-base.stickyNote", "position": [-1152, 16], "typeVersion": 1, "id": "d5898954-ea28-4093-86d4-085887e8a34e", "name": "Sticky Note1" }];
|
|
209149
209244
|
const pinData$7 = {};
|
|
209150
209245
|
const connections$9 = { "Default Data Loader": { "ai_document": [[{ "node": "Insert documents", "type": "ai_document", "index": 0 }]] }, "Download file": { "main": [[{ "node": "Insert documents", "type": "main", "index": 0 }]] }, "Embedding model": { "ai_embedding": [[{ "node": "Insert documents", "type": "ai_embedding", "index": 0 }, { "node": "Retrieve documents", "type": "ai_embedding", "index": 0 }]] }, "When chat message received": { "main": [[{ "node": "AI Agent", "type": "main", "index": 0 }]] }, "Model": { "ai_languageModel": [[{ "node": "AI Agent", "type": "ai_languageModel", "index": 0 }]] }, "Simple Memory": { "ai_memory": [[{ "node": "AI Agent", "type": "ai_memory", "index": 0 }]] }, "File uploaded": { "main": [[{ "node": "Download file", "type": "main", "index": 0 }]] }, "Retrieve documents": { "ai_tool": [[{ "node": "AI Agent", "type": "ai_tool", "index": 0 }]] } };
|
|
209151
209246
|
const active$7 = false;
|
|
@@ -209163,7 +209258,7 @@ const knowledgeStoreAgentWithGoogleDriveJson = {
|
|
|
209163
209258
|
};
|
|
209164
209259
|
const name$b = "Task management agent (with Google Sheets)";
|
|
209165
209260
|
const meta$a = { "templateCredsSetupCompleted": false, "templateId": "task_management_agent_with_google_sheets" };
|
|
209166
|
-
const nodes$a = /* @__PURE__ */ JSON.parse(`[{"parameters":{"model":{"__rl":true,"value":"gpt-4o","mode":"list","cachedResultName":"gpt-4o"},"options":{}},"type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","typeVersion":1.2,"position":[-608,272],"id":"7ebac830-d775-47af-a56c-9ff428f385d0","name":"Model","credentials":{}},{"parameters":{"options":{}},"type":"@n8n/n8n-nodes-langchain.chatTrigger","typeVersion":1.3,"position":[-656,-32],"id":"3eb00ee5-cab6-4a07-b3d5-cee733bae08d","name":"When chat message received","webhookId":"df8223bf-119c-44d5-9bbf-f74ae26828e8"},{"parameters":{"contextWindowLength":10},"type":"@n8n/n8n-nodes-langchain.memoryBufferWindow","typeVersion":1.3,"position":[-496,272],"id":"5341bef1-5ba0-4898-85c2-ca8741210079","name":"Simple Memory"},{"parameters":{"documentId":{"__rl":true,"value":"1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o","mode":"list","cachedResultName":"Enrichment example","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit?usp=drivesdk"},"sheetName":{"__rl":true,"value":"gid=0","mode":"list","cachedResultName":"Tasks","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit#gid=0"},"options":{}},"type":"n8n-nodes-base.googleSheetsTool","typeVersion":4.7,"position":[-352,272],"id":"a1792c3e-4248-49e2-b4c2-db58c4eb1b59","name":"Get tasks","credentials":{}},{"parameters":{"operation":"append","documentId":{"__rl":true,"value":"1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o","mode":"list","cachedResultName":"Enrichment example","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit?usp=drivesdk"},"sheetName":{"__rl":true,"value":"gid=0","mode":"list","cachedResultName":"Tasks","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit#gid=0"},"columns":{"mappingMode":"defineBelow","value":{"Task":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Task', \`\`, 'string') }}","Description":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Description', \`\`, 'string') }}","Deadline":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Deadline', \`\`, 'string') }}","Status":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Status', \`\`, 'string') }}"},"matchingColumns":[],"schema":[{"id":"Task","displayName":"Task","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true},{"id":"Status","displayName":"Status","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true,"removed":false},{"id":"Description","displayName":"Description","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true},{"id":"Deadline","displayName":"Deadline","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true}],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{}},"type":"n8n-nodes-base.googleSheetsTool","typeVersion":4.7,"position":[-224,272],"id":"1ebd8dd5-13e0-4f57-bb37-a3a5d8cf4e80","name":"Create task","credentials":{}},{"parameters":{"operation":"update","documentId":{"__rl":true,"value":"1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o","mode":"list","cachedResultName":"Enrichment example","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit?usp=drivesdk"},"sheetName":{"__rl":true,"value":"gid=0","mode":"list","cachedResultName":"Tasks","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit#gid=0"},"columns":{"mappingMode":"defineBelow","value":{"Task":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Task', \`\`, 'string') }}","Description":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Description', \`\`, 'string') }}","Deadline":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Deadline', \`\`, 'string') }}","Status":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Status', \`\`, 'string') }}","row_number":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('row_number__using_to_match_', \`\`, 'number') }}"},"matchingColumns":["row_number"],"schema":[{"id":"ID","displayName":"ID","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true,"removed":true},{"id":"Task","displayName":"Task","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true,"removed":false},{"id":"Status","displayName":"Status","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true,"removed":false},{"id":"Description","displayName":"Description","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true},{"id":"Deadline","displayName":"Deadline","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true},{"id":"row_number","displayName":"row_number","required":false,"defaultMatch":false,"display":true,"type":"number","canBeUsedToMatch":true,"readOnly":true,"removed":false}],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{}},"type":"n8n-nodes-base.googleSheetsTool","typeVersion":4.7,"position":[-96,272],"id":"a118d819-41ef-4323-a4d1-d83d70e41ec5","name":"Update task","credentials":{}},{"parameters":{"operation":"delete","documentId":{"__rl":true,"value":"1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o","mode":"list","cachedResultName":"Enrichment example","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit?usp=drivesdk"},"sheetName":{"__rl":true,"value":"gid=0","mode":"list","cachedResultName":"Tasks","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit#gid=0"},"startIndex":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start_Row_Number', \`\`, 'number') }}","numberToDelete":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Number_of_Rows_to_Delete', \`\`, 'number') }}"},"type":"n8n-nodes-base.googleSheetsTool","typeVersion":4.7,"position":[32,272],"id":"c15d7d0f-d24c-4e5a-aa3f-a23abf2f6853","name":"Delete task","credentials":{}},{"parameters":{"options":{"systemMessage":"=# Task Management Agent System Prompt\\n\\nYou are a helpful task management assistant that helps users organize their tasks using a Google Sheets database. You can create, view, update, and delete tasks while maintaining data consistency.\\n\\n## Your Capabilities\\n\\nYou can help users with:\\n- **View tasks** - Show current tasks and their status\\n- **Create new tasks** - Add tasks with proper formatting\\n- **Update tasks** - Modify existing task details or status\\n- **Delete tasks** - Remove tasks after confirmation\\n- **Track progress** - Monitor task status changes\\n\\n## Task Data Structure\\n\\nEach task has these fields:\\n- **Task**: The task name/title (required - always ask if missing)\\n- **Status**: Must be one of: \\"TODO\\", \\"IN PROGRESS\\", or \\"DONE\\" (default: \\"TODO\\")\\n- **Description**: Optional additional details about the task\\n- **Deadline**: Optional due date (accept various date formats)\\n\\nNote: Google Sheets automatically provides a row_number field for tracking - you don't need to manage IDs manually.\\n\\n## Important Rules\\n\\n### Status Management\\n- Status must be exactly one of: \\"TODO\\", \\"IN PROGRESS\\", or \\"DONE\\"\\n- Default new tasks to \\"TODO\\" status\\n- When users say things like \\"mark as complete\\" or \\"finish task\\", change status to \\"DONE\\"\\n- When users say \\"start working on\\" or \\"begin task\\", change status to \\"IN PROGRESS\\"\\n\\n### Task Creation Process\\n1. Always ask for the task name if not provided\\n2. Ask if they want to add a description (optional)\\n3. Ask about deadline if relevant (optional)\\n4. Set status to \\"TODO\\" by default\\n5. Use the \\"Create task\\" tool to add to the sheet\\n\\n### Task Updates\\n- Ask which task to update (by name)\\n- Confirm what changes to make\\n- Use \\"Update task\\" tool with the task name as the matching column\\n- Provide clear feedback about what was changed\\n\\n### Task Deletion\\n- **ALWAYS ask for confirmation before deleting any task**\\n- Show the task details and ask \\"Are you sure you want to delete this task?\\"\\n- Only proceed with deletion after explicit user confirmation\\n- Use the row number from Google Sheets for the \\"Start_Row_Number\\" parameter\\n- Set \\"Number_of_Rows_to_Delete\\" to 1 (unless specifically told otherwise)\\n\\n## User Interaction Guidelines\\n\\n### When Creating Tasks\\n**User**: \\"Add a new task\\"\\n**You**: \\"I'd be happy to help you create a new task. What would you like to call this task?\\"\\n\\n### When Information is Missing\\n**User**: \\"Create a task for tomorrow\\"\\n**You**: \\"I can create a task with a deadline for tomorrow. What should I call this task?\\"\\n\\n### When Deleting Tasks\\n**User**: \\"Delete the marketing task\\"\\n**You**: \\"I found the task 'Marketing Campaign Planning'. Are you sure you want to delete this task? This action cannot be undone.\\"\\n\\n### When Updating Status\\n**User**: \\"Mark the report as done\\"\\n**You**: \\"I'll update the status of 'Monthly Report' to 'DONE'. Task completed!\\"\\n\\n## Response Style\\n\\n- Be helpful and efficient\\n- Always confirm actions taken\\n- Ask clarifying questions when needed\\n- Provide clear status updates\\n- Use friendly, professional language\\n- Show task details when relevant\\n\\n## Error Handling\\n\\n- If a task can't be found, offer to show all tasks\\n- If status values are invalid, explain the valid options\\n- If required information is missing, ask specific questions\\n- Provide helpful suggestions when commands are unclear\\n\\nRemember: Always prioritize data accuracy and user confirmation, especially for destructive actions like deletion. Keep the task list organized and up-to-date."}},"type":"@n8n/n8n-nodes-langchain.agent","typeVersion":2.2,"position":[-384,-32],"id":"e923a630-08b1-4e4d-a99c-23704085eaab","name":"Task management agent"},{"parameters":{"content":"### Task management agent\\nA chat-based task management assistant that helps users create, view, update, and delete tasks in a Google Sheets spreadsheet.\\n\\n#### Set up\\n- Configure credentials in the **Model** and **Google sheets** nodes\\n- Create a Google sheet with the columns: **Task, Description, Deadline and Status**. [Example sheet](https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit?usp=sharing)\\n- Select your document and sheet in each of the Google Sheet tools\\n- Open the chat and start talking to your agent\\n\\n#### Next steps\\nTry adding different columns or have the agent interact with multiple sheets in the document.\\n","height":480,"width":304,"color":5},"type":"n8n-nodes-base.stickyNote","position":[-1056,-64],"typeVersion":1,"id":"3f1162c3-7ff9-461b-a4e5-ad2fe8b92821","name":"Sticky Note"}]`);
|
|
209261
|
+
const nodes$a = /* @__PURE__ */ JSON.parse(`[{"parameters":{"model":{"__rl":true,"value":"gpt-4o","mode":"list","cachedResultName":"gpt-4o"},"options":{}},"type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","typeVersion":1.2,"position":[-608,272],"id":"7ebac830-d775-47af-a56c-9ff428f385d0","name":"Model","credentials":{}},{"parameters":{"options":{}},"type":"@n8n/n8n-nodes-langchain.chatTrigger","typeVersion":1.3,"position":[-656,-32],"id":"3eb00ee5-cab6-4a07-b3d5-cee733bae08d","name":"When chat message received","webhookId":"df8223bf-119c-44d5-9bbf-f74ae26828e8"},{"parameters":{"contextWindowLength":10},"type":"@n8n/n8n-nodes-langchain.memoryBufferWindow","typeVersion":1.3,"position":[-496,272],"id":"5341bef1-5ba0-4898-85c2-ca8741210079","name":"Simple Memory"},{"parameters":{"documentId":{"__rl":true,"value":"1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o","mode":"list","cachedResultName":"Enrichment example","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit?usp=drivesdk"},"sheetName":{"__rl":true,"value":"gid=0","mode":"list","cachedResultName":"Tasks","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit#gid=0"},"options":{}},"type":"n8n-nodes-base.googleSheetsTool","typeVersion":4.7,"position":[-352,272],"id":"a1792c3e-4248-49e2-b4c2-db58c4eb1b59","name":"Get tasks","credentials":{}},{"parameters":{"operation":"append","documentId":{"__rl":true,"value":"1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o","mode":"list","cachedResultName":"Enrichment example","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit?usp=drivesdk"},"sheetName":{"__rl":true,"value":"gid=0","mode":"list","cachedResultName":"Tasks","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit#gid=0"},"columns":{"mappingMode":"defineBelow","value":{"Task":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Task', \`\`, 'string') }}","Description":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Description', \`\`, 'string') }}","Deadline":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Deadline', \`\`, 'string') }}","Status":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Status', \`\`, 'string') }}"},"matchingColumns":[],"schema":[{"id":"Task","displayName":"Task","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true},{"id":"Status","displayName":"Status","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true,"removed":false},{"id":"Description","displayName":"Description","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true},{"id":"Deadline","displayName":"Deadline","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true}],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{}},"type":"n8n-nodes-base.googleSheetsTool","typeVersion":4.7,"position":[-224,272],"id":"1ebd8dd5-13e0-4f57-bb37-a3a5d8cf4e80","name":"Create task","credentials":{}},{"parameters":{"operation":"update","documentId":{"__rl":true,"value":"1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o","mode":"list","cachedResultName":"Enrichment example","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit?usp=drivesdk"},"sheetName":{"__rl":true,"value":"gid=0","mode":"list","cachedResultName":"Tasks","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit#gid=0"},"columns":{"mappingMode":"defineBelow","value":{"Task":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Task', \`\`, 'string') }}","Description":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Description', \`\`, 'string') }}","Deadline":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Deadline', \`\`, 'string') }}","Status":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Status', \`\`, 'string') }}","row_number":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('row_number__using_to_match_', \`\`, 'number') }}"},"matchingColumns":["row_number"],"schema":[{"id":"ID","displayName":"ID","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true,"removed":true},{"id":"Task","displayName":"Task","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true,"removed":false},{"id":"Status","displayName":"Status","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true,"removed":false},{"id":"Description","displayName":"Description","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true},{"id":"Deadline","displayName":"Deadline","required":false,"defaultMatch":false,"display":true,"type":"string","canBeUsedToMatch":true},{"id":"row_number","displayName":"row_number","required":false,"defaultMatch":false,"display":true,"type":"number","canBeUsedToMatch":true,"readOnly":true,"removed":false}],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{}},"type":"n8n-nodes-base.googleSheetsTool","typeVersion":4.7,"position":[-96,272],"id":"a118d819-41ef-4323-a4d1-d83d70e41ec5","name":"Update task","credentials":{}},{"parameters":{"operation":"delete","documentId":{"__rl":true,"value":"1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o","mode":"list","cachedResultName":"Enrichment example","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit?usp=drivesdk"},"sheetName":{"__rl":true,"value":"gid=0","mode":"list","cachedResultName":"Tasks","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1mrfeRU7qMBc9fXF7oteX4i2s50XU2qKJZNQWgmxGG5o/edit#gid=0"},"startIndex":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start_Row_Number', \`\`, 'number') }}","numberToDelete":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Number_of_Rows_to_Delete', \`\`, 'number') }}"},"type":"n8n-nodes-base.googleSheetsTool","typeVersion":4.7,"position":[32,272],"id":"c15d7d0f-d24c-4e5a-aa3f-a23abf2f6853","name":"Delete task","credentials":{}},{"parameters":{"options":{"systemMessage":"=# Task Management Agent System Prompt\\n\\nYou are a helpful task management assistant that helps users organize their tasks using a Google Sheets database. You can create, view, update, and delete tasks while maintaining data consistency.\\n\\n## Your Capabilities\\n\\nYou can help users with:\\n- **View tasks** - Show current tasks and their status\\n- **Create new tasks** - Add tasks with proper formatting\\n- **Update tasks** - Modify existing task details or status\\n- **Delete tasks** - Remove tasks after confirmation\\n- **Track progress** - Monitor task status changes\\n\\n## Task Data Structure\\n\\nEach task has these fields:\\n- **Task**: The task name/title (required - always ask if missing)\\n- **Status**: Must be one of: \\"TODO\\", \\"IN PROGRESS\\", or \\"DONE\\" (default: \\"TODO\\")\\n- **Description**: Optional additional details about the task\\n- **Deadline**: Optional due date (accept various date formats)\\n\\nNote: Google Sheets automatically provides a row_number field for tracking - you don't need to manage IDs manually.\\n\\n## Important Rules\\n\\n### Status Management\\n- Status must be exactly one of: \\"TODO\\", \\"IN PROGRESS\\", or \\"DONE\\"\\n- Default new tasks to \\"TODO\\" status\\n- When users say things like \\"mark as complete\\" or \\"finish task\\", change status to \\"DONE\\"\\n- When users say \\"start working on\\" or \\"begin task\\", change status to \\"IN PROGRESS\\"\\n\\n### Task Creation Process\\n1. Always ask for the task name if not provided\\n2. Ask if they want to add a description (optional)\\n3. Ask about deadline if relevant (optional)\\n4. Set status to \\"TODO\\" by default\\n5. Use the \\"Create task\\" tool to add to the sheet\\n\\n### Task Updates\\n- Ask which task to update (by name)\\n- Confirm what changes to make\\n- Use \\"Update task\\" tool with the task name as the matching column\\n- Provide clear feedback about what was changed\\n\\n### Task Deletion\\n- **ALWAYS ask for confirmation before deleting any task**\\n- Show the task details and ask \\"Are you sure you want to delete this task?\\"\\n- Only proceed with deletion after explicit user confirmation\\n- Use the row number from Google Sheets for the \\"Start_Row_Number\\" parameter\\n- Set \\"Number_of_Rows_to_Delete\\" to 1 (unless specifically told otherwise)\\n\\n## User Interaction Guidelines\\n\\n### When Creating Tasks\\n**User**: \\"Add a new task\\"\\n**You**: \\"I'd be happy to help you create a new task. What would you like to call this task?\\"\\n\\n### When Information is Missing\\n**User**: \\"Create a task for tomorrow\\"\\n**You**: \\"I can create a task with a deadline for tomorrow. What should I call this task?\\"\\n\\n### When Deleting Tasks\\n**User**: \\"Delete the marketing task\\"\\n**You**: \\"I found the task 'Marketing Campaign Planning'. Are you sure you want to delete this task? This action cannot be undone.\\"\\n\\n### When Updating Status\\n**User**: \\"Mark the report as done\\"\\n**You**: \\"I'll update the status of 'Monthly Report' to 'DONE'. Task completed!\\"\\n\\n## Response Style\\n\\n- Be helpful and efficient\\n- Always confirm actions taken\\n- Ask clarifying questions when needed\\n- Provide clear status updates\\n- Use friendly, professional language\\n- Show task details when relevant\\n\\n## Error Handling\\n\\n- If a task can't be found, offer to show all tasks\\n- If status values are invalid, explain the valid options\\n- If required information is missing, ask specific questions\\n- Provide helpful suggestions when commands are unclear\\n\\nRemember: Always prioritize data accuracy and user confirmation, especially for destructive actions like deletion. Keep the task list organized and up-to-date."}},"type":"@n8n/n8n-nodes-langchain.agent","typeVersion":2.2,"position":[-384,-32],"id":"e923a630-08b1-4e4d-a99c-23704085eaab","name":"Task management agent"},{"parameters":{"content":"## Start here!\\n@[youtube](cmR6m_p0-ro)","height":320,"width":464,"color":5},"type":"n8n-nodes-base.stickyNote","position":[-1200,-32],"typeVersion":1,"id":"56870cd2-d303-41cf-8f8a-2bba13c3d3ea","name":"Sticky Note"}]`);
|
|
209167
209262
|
const pinData$6 = {};
|
|
209168
209263
|
const connections$8 = { "Model": { "ai_languageModel": [[{ "node": "Task management agent", "type": "ai_languageModel", "index": 0 }]] }, "When chat message received": { "main": [[{ "node": "Task management agent", "type": "main", "index": 0 }]] }, "Simple Memory": { "ai_memory": [[{ "node": "Task management agent", "type": "ai_memory", "index": 0 }]] }, "Get tasks": { "ai_tool": [[{ "node": "Task management agent", "type": "ai_tool", "index": 0 }]] }, "Create task": { "ai_tool": [[{ "node": "Task management agent", "type": "ai_tool", "index": 0 }]] }, "Update task": { "ai_tool": [[{ "node": "Task management agent", "type": "ai_tool", "index": 0 }]] }, "Delete task": { "ai_tool": [[{ "node": "Task management agent", "type": "ai_tool", "index": 0 }]] } };
|
|
209169
209264
|
const active$6 = false;
|
|
@@ -209181,7 +209276,7 @@ const taskManagementAgentWithGoogleSheetsJson = {
|
|
|
209181
209276
|
};
|
|
209182
209277
|
const name$a = "Voice assistant agent";
|
|
209183
209278
|
const meta$9 = { "templateCredsSetupCompleted": false, "templateId": "voice_assistant_agent_with_telegram" };
|
|
209184
|
-
const nodes$9 = [{ "parameters": { "updates": ["message"], "additionalFields": { "download": false, "userIds": "YOUR_USER_ID" } }, "id": "0c402bdc-7fa2-4fa1-96d6-f02853cfdaa1", "name": "Telegram Message Trigger", "type": "n8n-nodes-base.telegramTrigger", "typeVersion": 1.2, "position": [-192, 0], "webhookId": "55acc711-c248-4ac9-b6cd-e295c2d33f4b", "credentials": {} }, { "parameters": { "
|
|
209279
|
+
const nodes$9 = [{ "parameters": { "updates": ["message"], "additionalFields": { "download": false, "userIds": "YOUR_USER_ID" } }, "id": "0c402bdc-7fa2-4fa1-96d6-f02853cfdaa1", "name": "Telegram Message Trigger", "type": "n8n-nodes-base.telegramTrigger", "typeVersion": 1.2, "position": [-192, 0], "webhookId": "55acc711-c248-4ac9-b6cd-e295c2d33f4b", "credentials": {} }, { "parameters": { "sessionIdType": "customKey", "sessionKey": "={{ $('Telegram Message Trigger').first().json.message.chat.id }}", "contextWindowLength": 10 }, "id": "30bef40d-efbe-4920-acad-ce9a42c0061c", "name": "Memory", "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow", "typeVersion": 1.3, "position": [752, 288] }, { "parameters": { "chatId": "={{ $('Telegram Message Trigger').first().json.message.chat.id }}", "text": "={{ $json.output }}", "additionalFields": {} }, "type": "n8n-nodes-base.telegram", "typeVersion": 1.2, "position": [1056, 0], "id": "7dea5c17-bfdb-4874-918b-a6583298efa2", "name": "Reply in Telegram", "webhookId": "b96b7a41-9806-455f-b72e-00aa638eda71", "credentials": {} }, { "parameters": { "resource": "file", "fileId": "={{ $json.message.voice.file_id }}", "additionalFields": {} }, "type": "n8n-nodes-base.telegram", "typeVersion": 1.2, "position": [256, -96], "id": "66219c83-6371-4cc6-ad43-57cee44f52da", "name": "Get a file", "webhookId": "e0769871-efe3-49da-81a5-2f88a6fdd33f", "credentials": {} }, { "parameters": { "conditions": { "options": { "caseSensitive": true, "leftValue": "", "typeValidation": "strict", "version": 2 }, "conditions": [{ "id": "2b538077-d3d3-4713-b973-68748313ff97", "leftValue": "={{ $json.message.voice }}", "rightValue": "", "operator": { "type": "object", "operation": "notEmpty", "singleValue": true } }], "combinator": "and" }, "options": {} }, "type": "n8n-nodes-base.if", "typeVersion": 2.2, "position": [32, 0], "id": "3a1a7f7f-f122-438d-a0f2-1e80d1072dba", "name": "Check if Audio file" }, { "parameters": { "resource": "audio", "operation": "transcribe", "options": {} }, "type": "@n8n/n8n-nodes-langchain.openAi", "typeVersion": 1.8, "position": [480, -96], "id": "6f314aef-7ff1-4211-8656-e2c1f8fea374", "name": "Transcribe audio", "credentials": {} }, { "parameters": { "assignments": { "assignments": [{ "id": "eb912219-2436-4f04-8ffc-c1c20eb07344", "name": "text", "value": "={{ $json.message.text }}", "type": "string" }] }, "options": {} }, "type": "n8n-nodes-base.set", "typeVersion": 3.4, "position": [480, 96], "id": "2e9b0ca3-2a0f-441d-89a0-28365c5ba3ef", "name": "Set field" }, { "parameters": { "model": { "__rl": true, "value": "gpt-4.1-mini", "mode": "list", "cachedResultName": "gpt-4.1-mini" }, "options": {} }, "id": "61f3b0a0-210a-4eaa-91b5-e381d5f56754", "name": "Model", "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi", "typeVersion": 1.2, "position": [624, 288], "credentials": {} }, { "parameters": { "promptType": "define", "text": "={{ $json.text || $json.message.text }}", "options": { "systemMessage": `=# Telegram Personal AI Assistant System Prompt
|
|
209185
209280
|
|
|
209186
209281
|
You are a helpful personal AI assistant that communicates with users through Telegram.
|
|
209187
209282
|
|
|
@@ -209219,7 +209314,7 @@ You can help users with:
|
|
|
209219
209314
|
|
|
209220
209315
|
Remember: You're a personal assistant, so be personable, helpful, and focused on making the user's day easier and more organized.
|
|
209221
209316
|
|
|
209222
|
-
Today is {{ $now.format('cccc') }} the {{ $now.format('yyyy-MM-dd HH:mm') }}.` } }, "id": "f958d2f6-6602-4443-bfae-ef628af09b84", "name": "Assistant Agent", "type": "@n8n/n8n-nodes-langchain.agent", "typeVersion": 2.2, "position": [704, 0] }];
|
|
209317
|
+
Today is {{ $now.format('cccc') }} the {{ $now.format('yyyy-MM-dd HH:mm') }}.` } }, "id": "f958d2f6-6602-4443-bfae-ef628af09b84", "name": "Assistant Agent", "type": "@n8n/n8n-nodes-langchain.agent", "typeVersion": 2.2, "position": [704, 0] }, { "parameters": { "content": "## Start here!\n@[youtube](aaOLJ2mUoVk)", "height": 320, "width": 464, "color": 5 }, "type": "n8n-nodes-base.stickyNote", "position": [-736, -80], "typeVersion": 1, "id": "cd6f0a09-148c-46e3-9858-11645de3a802", "name": "Sticky Note1" }];
|
|
209223
209318
|
const connections$7 = { "Telegram Message Trigger": { "main": [[{ "node": "Check if Audio file", "type": "main", "index": 0 }]] }, "Memory": { "ai_memory": [[{ "node": "Assistant Agent", "type": "ai_memory", "index": 0 }]] }, "Get a file": { "main": [[{ "node": "Transcribe audio", "type": "main", "index": 0 }]] }, "Check if Audio file": { "main": [[{ "node": "Get a file", "type": "main", "index": 0 }], [{ "node": "Set field", "type": "main", "index": 0 }]] }, "Transcribe audio": { "main": [[{ "node": "Assistant Agent", "type": "main", "index": 0 }]] }, "Set field": { "main": [[{ "node": "Assistant Agent", "type": "main", "index": 0 }]] }, "Model": { "ai_languageModel": [[{ "node": "Assistant Agent", "type": "ai_languageModel", "index": 0 }]] }, "Assistant Agent": { "main": [[{ "node": "Reply in Telegram", "type": "main", "index": 0 }]] } };
|
|
209224
209319
|
const pinData$5 = {};
|
|
209225
209320
|
const active$5 = false;
|
|
@@ -209237,7 +209332,7 @@ const voiceAssistantAgentJson = {
|
|
|
209237
209332
|
};
|
|
209238
209333
|
const name$9 = "Calendar agent";
|
|
209239
209334
|
const meta$8 = { "templateCredsSetupCompleted": false, "templateId": "calendar_agent_with_gcal" };
|
|
209240
|
-
const nodes$8 = [{ "parameters": { "resource": "calendar", "calendar": {}, "timeMin": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start_Time', `Start date for availability check`, 'string') }}", "timeMax": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End_Time', `End date for availability check`, 'string') }}", "options": {} }, "id": "e3eb2815-735f-4efd-a844-da9d53e45aae", "name": "Get availability", "type": "n8n-nodes-base.googleCalendarTool", "typeVersion": 1.3, "position": [-32, 224], "credentials": {} }, { "parameters": { "operation": "getAll", "calendar": {}, "returnAll": true, "timeMin": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('After', `Start date for events search`, 'string') }}", "timeMax": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Before', `End date for events search`, 'string') }}", "options": {} }, "id": "d6c00690-8d0c-4942-aa17-077e61c909d1", "name": "Get events", "type": "n8n-nodes-base.googleCalendarTool", "typeVersion": 1.3, "position": [112, 224], "credentials": {} }, { "parameters": { "options": {} }, "id": "719aaeb8-e985-4235-bcff-c2bfbc6a8e5c", "name": "Chat message", "type": "@n8n/n8n-nodes-langchain.chatTrigger", "typeVersion": 1.3, "position": [-400, -32], "webhookId": "d0b3a15a-8d1c-437c-8523-00e108af14a4" }, { "parameters": { "model": { "__rl": true, "mode": "id", "value": "gpt-4o-mini" }, "options": { "temperature": 0 } }, "id": "d23e09d0-ff7c-4f1b-8e67-6864801dbc44", "name": "Model", "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi", "typeVersion": 1.2, "position": [-304, 224], "credentials": {} }, { "parameters": {}, "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow", "typeVersion": 1.3, "position": [-176, 224], "id": "56bd33c7-bb31-4957-9f12-fdcc2351880d", "name": "Simple Memory" }, { "parameters": { "options": { "systemMessage": "=You are a helpful calendar assistant. You can check availability and retrieve events from Google Calendar. When users ask about dates, use the calendar tools to get the information. Always specify date ranges clearly when using the tools.\n\nTodays date is: {{ $now }}", "maxIterations": 10, "returnIntermediateSteps": false, "passthroughBinaryImages": true, "batching": {}, "enableStreaming": true } }, "id": "1e8be9e3-24a4-415b-9424-6f9010c5f333", "name": "Calendar agent", "type": "@n8n/n8n-nodes-langchain.agent", "typeVersion": 2.2, "position": [-160, -32] }, { "parameters": { "content": "
|
|
209335
|
+
const nodes$8 = [{ "parameters": { "resource": "calendar", "calendar": {}, "timeMin": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start_Time', `Start date for availability check`, 'string') }}", "timeMax": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End_Time', `End date for availability check`, 'string') }}", "options": {} }, "id": "e3eb2815-735f-4efd-a844-da9d53e45aae", "name": "Get availability", "type": "n8n-nodes-base.googleCalendarTool", "typeVersion": 1.3, "position": [-32, 224], "credentials": {} }, { "parameters": { "operation": "getAll", "calendar": {}, "returnAll": true, "timeMin": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('After', `Start date for events search`, 'string') }}", "timeMax": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Before', `End date for events search`, 'string') }}", "options": {} }, "id": "d6c00690-8d0c-4942-aa17-077e61c909d1", "name": "Get events", "type": "n8n-nodes-base.googleCalendarTool", "typeVersion": 1.3, "position": [112, 224], "credentials": {} }, { "parameters": { "options": {} }, "id": "719aaeb8-e985-4235-bcff-c2bfbc6a8e5c", "name": "Chat message", "type": "@n8n/n8n-nodes-langchain.chatTrigger", "typeVersion": 1.3, "position": [-400, -32], "webhookId": "d0b3a15a-8d1c-437c-8523-00e108af14a4" }, { "parameters": { "model": { "__rl": true, "mode": "id", "value": "gpt-4o-mini" }, "options": { "temperature": 0 } }, "id": "d23e09d0-ff7c-4f1b-8e67-6864801dbc44", "name": "Model", "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi", "typeVersion": 1.2, "position": [-304, 224], "credentials": {} }, { "parameters": {}, "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow", "typeVersion": 1.3, "position": [-176, 224], "id": "56bd33c7-bb31-4957-9f12-fdcc2351880d", "name": "Simple Memory" }, { "parameters": { "options": { "systemMessage": "=You are a helpful calendar assistant. You can check availability and retrieve events from Google Calendar. When users ask about dates, use the calendar tools to get the information. Always specify date ranges clearly when using the tools.\n\nTodays date is: {{ $now }}", "maxIterations": 10, "returnIntermediateSteps": false, "passthroughBinaryImages": true, "batching": {}, "enableStreaming": true } }, "id": "1e8be9e3-24a4-415b-9424-6f9010c5f333", "name": "Calendar agent", "type": "@n8n/n8n-nodes-langchain.agent", "typeVersion": 2.2, "position": [-160, -32] }, { "parameters": { "content": "## Start here!\n@[youtube](-S5k4sXrPws)", "height": 320, "width": 464, "color": 5 }, "type": "n8n-nodes-base.stickyNote", "position": [-928, -32], "typeVersion": 1, "id": "d3552acd-20f1-40e0-af3c-e2aabdbf3f27", "name": "Sticky Note" }];
|
|
209241
209336
|
const connections$6 = { "Get availability": { "ai_tool": [[{ "node": "Calendar agent", "type": "ai_tool", "index": 0 }]] }, "Get events": { "ai_tool": [[{ "node": "Calendar agent", "type": "ai_tool", "index": 0 }]] }, "Chat message": { "main": [[{ "node": "Calendar agent", "type": "main", "index": 0 }]] }, "Model": { "ai_languageModel": [[{ "node": "Calendar agent", "type": "ai_languageModel", "index": 0 }]] }, "Simple Memory": { "ai_memory": [[{ "node": "Calendar agent", "type": "ai_memory", "index": 0 }]] } };
|
|
209242
209337
|
const pinData$4 = {};
|
|
209243
209338
|
const active$4 = false;
|
|
@@ -210054,7 +210149,9 @@ function operationsCategory(nodeTypeDescription) {
|
|
|
210054
210149
|
languageProperty,
|
|
210055
210150
|
nodeTypeDescription
|
|
210056
210151
|
);
|
|
210057
|
-
if (customParsedItems)
|
|
210152
|
+
if (customParsedItems) {
|
|
210153
|
+
return useSettingsStore().isNativePythonRunnerEnabled ? customParsedItems : customParsedItems.filter((item2) => item2.actionKey !== "language_pythonNative");
|
|
210154
|
+
}
|
|
210058
210155
|
}
|
|
210059
210156
|
}
|
|
210060
210157
|
const matchedProperty = nodeTypeDescription.properties.find(
|
|
@@ -223288,10 +223385,10 @@ const LOG_DETAILS_PANEL_STATE = {
|
|
|
223288
223385
|
BOTH: "both"
|
|
223289
223386
|
};
|
|
223290
223387
|
const useLogsStore = /* @__PURE__ */ defineStore("logs", () => {
|
|
223291
|
-
const
|
|
223388
|
+
const isOpen = useLocalStorage(LOCAL_STORAGE_LOGS_PANEL_OPEN, false);
|
|
223292
223389
|
const preferPoppedOut = ref$1(false);
|
|
223293
223390
|
const state2 = computed(
|
|
223294
|
-
() =>
|
|
223391
|
+
() => isOpen.value ? preferPoppedOut.value ? LOGS_PANEL_STATE.FLOATING : LOGS_PANEL_STATE.ATTACHED : LOGS_PANEL_STATE.CLOSED
|
|
223295
223392
|
);
|
|
223296
223393
|
const height = ref$1(0);
|
|
223297
223394
|
const detailsState = useLocalStorage(
|
|
@@ -223313,7 +223410,7 @@ const useLogsStore = /* @__PURE__ */ defineStore("logs", () => {
|
|
|
223313
223410
|
height.value = value2;
|
|
223314
223411
|
}
|
|
223315
223412
|
function toggleOpen(value2) {
|
|
223316
|
-
|
|
223413
|
+
isOpen.value = value2 ?? !isOpen.value;
|
|
223317
223414
|
}
|
|
223318
223415
|
function setPreferPoppedOut(value2) {
|
|
223319
223416
|
preferPoppedOut.value = value2;
|
|
@@ -226753,9 +226850,6 @@ const useNodeCreatorStore = /* @__PURE__ */ defineStore(STORES$1.NODE_CREATOR, (
|
|
|
226753
226850
|
function onActionsCustomAPIClicked(properties2) {
|
|
226754
226851
|
trackNodeCreatorEvent("User clicked custom API from node actions", properties2);
|
|
226755
226852
|
}
|
|
226756
|
-
function onAddActions(properties2) {
|
|
226757
|
-
trackNodeCreatorEvent("User added action", properties2);
|
|
226758
|
-
}
|
|
226759
226853
|
function onSubcategorySelected(properties2) {
|
|
226760
226854
|
trackNodeCreatorEvent("User viewed node category", {
|
|
226761
226855
|
category_name: properties2.subcategory,
|
|
@@ -226798,7 +226892,6 @@ const useNodeCreatorStore = /* @__PURE__ */ defineStore(STORES$1.NODE_CREATOR, (
|
|
|
226798
226892
|
onCategoryExpanded,
|
|
226799
226893
|
onActionsCustomAPIClicked,
|
|
226800
226894
|
onViewActions,
|
|
226801
|
-
onAddActions,
|
|
226802
226895
|
onSubcategorySelected,
|
|
226803
226896
|
onNodeAddedToCanvas
|
|
226804
226897
|
};
|
|
@@ -227096,7 +227189,6 @@ const useActions = () => {
|
|
|
227096
227189
|
resource: action2.value.resource || ""
|
|
227097
227190
|
};
|
|
227098
227191
|
void useExternalHooks().run("nodeCreateList.addAction", payload);
|
|
227099
|
-
useNodeCreatorStore().onAddActions(payload);
|
|
227100
227192
|
}
|
|
227101
227193
|
return {
|
|
227102
227194
|
actionsCategoryLocales,
|
|
@@ -287099,12 +287191,14 @@ const useExpressionEditor = ({
|
|
|
287099
287191
|
skipSegments = [],
|
|
287100
287192
|
autocompleteTelemetry,
|
|
287101
287193
|
isReadOnly = false,
|
|
287194
|
+
disableSearchDialog = false,
|
|
287102
287195
|
onChange = () => {
|
|
287103
287196
|
}
|
|
287104
287197
|
}) => {
|
|
287105
287198
|
const ndvStore = useNDVStore();
|
|
287106
287199
|
const workflowsStore = useWorkflowsStore();
|
|
287107
287200
|
const workflowHelpers = useWorkflowHelpers();
|
|
287201
|
+
const { isMacOs: isMacOs2 } = useDeviceSupport();
|
|
287108
287202
|
const i18n2 = useI18n();
|
|
287109
287203
|
const editor2 = ref$1();
|
|
287110
287204
|
const hasFocus = ref$1(false);
|
|
@@ -287205,6 +287299,12 @@ const useExpressionEditor = ({
|
|
|
287205
287299
|
}
|
|
287206
287300
|
dragging2.value = false;
|
|
287207
287301
|
}
|
|
287302
|
+
function onKeyDown2(e2) {
|
|
287303
|
+
if (unref(disableSearchDialog) && // Avoid blocking editor shortcuts like `ctrl+f` to go to next character on mac
|
|
287304
|
+
(isMacOs2 && e2.metaKey || !isMacOs2 && e2.ctrlKey) && e2.key === "f") {
|
|
287305
|
+
e2.preventDefault();
|
|
287306
|
+
}
|
|
287307
|
+
}
|
|
287208
287308
|
watch$1(toRef$1(editorRef), () => {
|
|
287209
287309
|
const parent = toValue$4(editorRef);
|
|
287210
287310
|
if (!parent) return;
|
|
@@ -287240,6 +287340,7 @@ const useExpressionEditor = ({
|
|
|
287240
287340
|
editor2.value.destroy();
|
|
287241
287341
|
}
|
|
287242
287342
|
editor2.value = new EditorView$1({ parent, state: state2 });
|
|
287343
|
+
editor2.value.dom.addEventListener("keydown", onKeyDown2, { capture: true });
|
|
287243
287344
|
debouncedUpdateSegments();
|
|
287244
287345
|
});
|
|
287245
287346
|
watchEffect(() => {
|
|
@@ -305668,7 +305769,8 @@ const codeEditorTheme = ({ isReadOnly, minHeight, maxHeight, rows }) => [
|
|
|
305668
305769
|
},
|
|
305669
305770
|
"&.cm-editor": {
|
|
305670
305771
|
...isReadOnly ? { backgroundColor: "var(--color-code-background-readonly)" } : {},
|
|
305671
|
-
borderColor: "var(--border-color-base)"
|
|
305772
|
+
borderColor: "var(--border-color-base)",
|
|
305773
|
+
overflow: "hidden"
|
|
305672
305774
|
},
|
|
305673
305775
|
"&.cm-editor.cm-focused": {
|
|
305674
305776
|
outline: "none",
|
|
@@ -310230,6 +310332,7 @@ const _sfc_main$3s = /* @__PURE__ */ defineComponent({
|
|
|
310230
310332
|
editorRef: root2,
|
|
310231
310333
|
editorValue,
|
|
310232
310334
|
extensions: extensions2,
|
|
310335
|
+
disableSearchDialog: true,
|
|
310233
310336
|
isReadOnly: computed(() => props2.isReadOnly),
|
|
310234
310337
|
autocompleteTelemetry: { enabled: true, parameterPath: props2.path },
|
|
310235
310338
|
additionalData: props2.additionalData
|
|
@@ -310276,7 +310379,7 @@ const _sfc_main$3s = /* @__PURE__ */ defineComponent({
|
|
|
310276
310379
|
};
|
|
310277
310380
|
}
|
|
310278
310381
|
});
|
|
310279
|
-
const InlineExpressionEditorInput = /* @__PURE__ */ _export_sfc$1(_sfc_main$3s, [["__scopeId", "data-v-
|
|
310382
|
+
const InlineExpressionEditorInput = /* @__PURE__ */ _export_sfc$1(_sfc_main$3s, [["__scopeId", "data-v-5d2dd1c9"]]);
|
|
310280
310383
|
const _sfc_main$3r = /* @__PURE__ */ defineComponent({
|
|
310281
310384
|
__name: "ExpressionOutput",
|
|
310282
310385
|
props: {
|
|
@@ -310981,7 +311084,7 @@ const _sfc_main$3n = /* @__PURE__ */ defineComponent({
|
|
|
310981
311084
|
showHoverUrl.value = false;
|
|
310982
311085
|
}
|
|
310983
311086
|
function onResultsEnd() {
|
|
310984
|
-
if (props2.loading || !props2.
|
|
311087
|
+
if (props2.loading || !props2.hasMore) {
|
|
310985
311088
|
return;
|
|
310986
311089
|
}
|
|
310987
311090
|
if (resultsContainerRef.value) {
|
|
@@ -311341,7 +311444,7 @@ function useWorkflowResourcesLocator(router2) {
|
|
|
311341
311444
|
function onSearchFilter(filter3) {
|
|
311342
311445
|
searchFilter.value = filter3;
|
|
311343
311446
|
}
|
|
311344
|
-
function
|
|
311447
|
+
function applyDefaultExecuteWorkflowNodeName(workflowId) {
|
|
311345
311448
|
if (typeof workflowId !== "string") return;
|
|
311346
311449
|
const nodeName2 = ndvStore.activeNodeName;
|
|
311347
311450
|
if (nodeName2 === "Execute Workflow" || nodeName2 === "Call n8n Workflow Tool" || nodeName2?.startsWith("Call '") && nodeName2?.endsWith("'")) {
|
|
@@ -311361,7 +311464,7 @@ function useWorkflowResourcesLocator(router2) {
|
|
|
311361
311464
|
getWorkflowUrl,
|
|
311362
311465
|
onSearchFilter,
|
|
311363
311466
|
getWorkflowName,
|
|
311364
|
-
|
|
311467
|
+
applyDefaultExecuteWorkflowNodeName,
|
|
311365
311468
|
populateNextWorkflowsPage,
|
|
311366
311469
|
setWorkflowsResources
|
|
311367
311470
|
};
|
|
@@ -311554,7 +311657,7 @@ const _sfc_main$3k = /* @__PURE__ */ defineComponent({
|
|
|
311554
311657
|
searchFilter,
|
|
311555
311658
|
onSearchFilter,
|
|
311556
311659
|
getWorkflowName,
|
|
311557
|
-
|
|
311660
|
+
applyDefaultExecuteWorkflowNodeName,
|
|
311558
311661
|
populateNextWorkflowsPage,
|
|
311559
311662
|
setWorkflowsResources,
|
|
311560
311663
|
reloadWorkflows,
|
|
@@ -311621,7 +311724,7 @@ const _sfc_main$3k = /* @__PURE__ */ defineComponent({
|
|
|
311621
311724
|
telemetry2.track("User chose sub-workflow", {});
|
|
311622
311725
|
onInputChange(value2);
|
|
311623
311726
|
hideDropdown();
|
|
311624
|
-
|
|
311727
|
+
applyDefaultExecuteWorkflowNodeName(value2);
|
|
311625
311728
|
}
|
|
311626
311729
|
function onInputFocus() {
|
|
311627
311730
|
setWidth();
|
|
@@ -311677,7 +311780,7 @@ const _sfc_main$3k = /* @__PURE__ */ defineComponent({
|
|
|
311677
311780
|
() => props2.modelValue,
|
|
311678
311781
|
(val, old) => {
|
|
311679
311782
|
if (old.value !== val.value) {
|
|
311680
|
-
|
|
311783
|
+
applyDefaultExecuteWorkflowNodeName(val.value);
|
|
311681
311784
|
}
|
|
311682
311785
|
}
|
|
311683
311786
|
);
|
|
@@ -318470,6 +318573,9 @@ const commonThemeProps = (isReadOnly = false) => ({
|
|
|
318470
318573
|
".cm-cursor, .cm-dropCursor": {
|
|
318471
318574
|
borderLeftColor: "var(--color-code-caret)"
|
|
318472
318575
|
},
|
|
318576
|
+
"&.cm-editor": {
|
|
318577
|
+
overflow: "hidden"
|
|
318578
|
+
},
|
|
318473
318579
|
"&.cm-focused": {
|
|
318474
318580
|
borderColor: "var(--color-secondary)",
|
|
318475
318581
|
outline: "0 !important"
|
|
@@ -334389,10 +334495,10 @@ const _sfc_main$2L = /* @__PURE__ */ defineComponent({
|
|
|
334389
334495
|
emits: ["search", "runChange", "itemHover", "linkRun", "unlinkRun", "activatePane", "tableMounted", "displayModeChange", "collapsingTableColumnChanged", "captureWheelDataContainer"],
|
|
334390
334496
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
334391
334497
|
const LazyRunDataTable = /* @__PURE__ */ defineAsyncComponent(
|
|
334392
|
-
async () => await __vitePreload(() => import("./RunDataTable-
|
|
334498
|
+
async () => await __vitePreload(() => import("./RunDataTable-CZn2r4pC.js"), true ? __vite__mapDeps([0,1]) : void 0)
|
|
334393
334499
|
);
|
|
334394
334500
|
const LazyRunDataJson = /* @__PURE__ */ defineAsyncComponent(
|
|
334395
|
-
async () => await __vitePreload(() => import("./RunDataJson-
|
|
334501
|
+
async () => await __vitePreload(() => import("./RunDataJson-BUYYVAf9.js"), true ? __vite__mapDeps([2,3]) : void 0)
|
|
334396
334502
|
);
|
|
334397
334503
|
const LazyRunDataSchema = /* @__PURE__ */ defineAsyncComponent(
|
|
334398
334504
|
async () => await __vitePreload(() => Promise.resolve().then(() => VirtualSchema$1), true ? void 0 : void 0)
|
|
@@ -334401,10 +334507,10 @@ const _sfc_main$2L = /* @__PURE__ */ defineComponent({
|
|
|
334401
334507
|
async () => await __vitePreload(() => Promise.resolve().then(() => RunDataHtml$1), true ? void 0 : void 0)
|
|
334402
334508
|
);
|
|
334403
334509
|
const LazyRunDataAi = /* @__PURE__ */ defineAsyncComponent(
|
|
334404
|
-
async () => await __vitePreload(() => import("./RunDataParsedAiContent-
|
|
334510
|
+
async () => await __vitePreload(() => import("./RunDataParsedAiContent-f_BUKfHP.js").then((n2) => n2.d), true ? __vite__mapDeps([4,5,6]) : void 0)
|
|
334405
334511
|
);
|
|
334406
334512
|
const LazyRunDataSearch = /* @__PURE__ */ defineAsyncComponent(
|
|
334407
|
-
async () => await __vitePreload(() => import("./RunDataSearch-
|
|
334513
|
+
async () => await __vitePreload(() => import("./RunDataSearch-CAb6EDAA.js"), true ? __vite__mapDeps([7,8]) : void 0)
|
|
334408
334514
|
);
|
|
334409
334515
|
const props2 = __props;
|
|
334410
334516
|
const emit2 = __emit;
|
|
@@ -336970,6 +337076,9 @@ const _sfc_main$2H = /* @__PURE__ */ defineComponent({
|
|
|
336970
337076
|
const parameterOptions = computed(() => {
|
|
336971
337077
|
const options2 = hasRemoteMethod.value ? remoteParameterOptions.value : props2.parameter.options;
|
|
336972
337078
|
const safeOptions = (options2 ?? []).filter(isValidParameterOption);
|
|
337079
|
+
if (props2.parameter.name === "language" && !settingsStore.isNativePythonRunnerEnabled) {
|
|
337080
|
+
return safeOptions.filter((o3) => o3.value !== "pythonNative");
|
|
337081
|
+
}
|
|
336973
337082
|
return safeOptions;
|
|
336974
337083
|
});
|
|
336975
337084
|
const modelValueString = computed(() => {
|
|
@@ -337432,7 +337541,8 @@ const _sfc_main$2H = /* @__PURE__ */ defineComponent({
|
|
|
337432
337541
|
resource: node2.value?.parameters.resource,
|
|
337433
337542
|
is_custom: value2 === CUSTOM_API_CALL_KEY,
|
|
337434
337543
|
push_ref: ndvStore.pushRef,
|
|
337435
|
-
parameter: props2.parameter.name
|
|
337544
|
+
parameter: props2.parameter.name,
|
|
337545
|
+
value: value2
|
|
337436
337546
|
});
|
|
337437
337547
|
}
|
|
337438
337548
|
const isWorkflowInputParameter = props2.parameter.name === "inputSource" && props2.parameter.default === "workflowInputs";
|
|
@@ -338256,7 +338366,7 @@ const style22 = {
|
|
|
338256
338366
|
const cssModules$1X = {
|
|
338257
338367
|
"$style": style22
|
|
338258
338368
|
};
|
|
338259
|
-
const ParameterInput = /* @__PURE__ */ _export_sfc$1(_sfc_main$2H, [["__cssModules", cssModules$1X], ["__scopeId", "data-v-
|
|
338369
|
+
const ParameterInput = /* @__PURE__ */ _export_sfc$1(_sfc_main$2H, [["__cssModules", cssModules$1X], ["__scopeId", "data-v-54597816"]]);
|
|
338260
338370
|
const _hoisted_1$19 = { "data-test-id": "parameter-input-hint" };
|
|
338261
338371
|
const _sfc_main$2G = /* @__PURE__ */ defineComponent({
|
|
338262
338372
|
__name: "ParameterInputHint",
|
|
@@ -338755,11 +338865,11 @@ const _sfc_main$2E = /* @__PURE__ */ defineComponent({
|
|
|
338755
338865
|
};
|
|
338756
338866
|
}
|
|
338757
338867
|
});
|
|
338758
|
-
const container$u = "
|
|
338759
|
-
const loader = "
|
|
338760
|
-
const controlsContainer = "
|
|
338761
|
-
const noExpressionSelector = "
|
|
338762
|
-
const focusButton = "
|
|
338868
|
+
const container$u = "_container_1acy9_123";
|
|
338869
|
+
const loader = "_loader_1acy9_129";
|
|
338870
|
+
const controlsContainer = "_controlsContainer_1acy9_136";
|
|
338871
|
+
const noExpressionSelector = "_noExpressionSelector_1acy9_142";
|
|
338872
|
+
const focusButton = "_focusButton_1acy9_146";
|
|
338763
338873
|
const style0$1T = {
|
|
338764
338874
|
container: container$u,
|
|
338765
338875
|
loader,
|
|
@@ -342925,6 +343035,7 @@ const _sfc_main$2f = /* @__PURE__ */ defineComponent({
|
|
|
342925
343035
|
const router2 = useRouter();
|
|
342926
343036
|
const { runWorkflow } = useRunWorkflow({ router: router2 });
|
|
342927
343037
|
const agentRequestStore = useAgentRequestStore();
|
|
343038
|
+
const projectsStore = useProjectsStore();
|
|
342928
343039
|
const node2 = computed(
|
|
342929
343040
|
() => props2.data.nodeName ? workflowsStore.getNodeByName(props2.data.nodeName) : void 0
|
|
342930
343041
|
);
|
|
@@ -342936,6 +343047,7 @@ const _sfc_main$2f = /* @__PURE__ */ defineComponent({
|
|
|
342936
343047
|
});
|
|
342937
343048
|
const parameters = ref$1([]);
|
|
342938
343049
|
const selectedTool = ref$1("");
|
|
343050
|
+
const error2 = ref$1(void 0);
|
|
342939
343051
|
const nodeRunData = computed(() => {
|
|
342940
343052
|
if (!node2.value) return void 0;
|
|
342941
343053
|
const workflowExecutionData = workflowsStore.getWorkflowExecution;
|
|
@@ -342961,58 +343073,71 @@ const _sfc_main$2f = /* @__PURE__ */ defineComponent({
|
|
|
342961
343073
|
defaultValue: ""
|
|
342962
343074
|
}
|
|
342963
343075
|
};
|
|
343076
|
+
const getMCPTools = async (newNode, newSelectedTool) => {
|
|
343077
|
+
const result2 = [];
|
|
343078
|
+
const tools = await nodeTypesStore.getNodeParameterOptions({
|
|
343079
|
+
nodeTypeAndVersion: {
|
|
343080
|
+
name: newNode.type,
|
|
343081
|
+
version: newNode.typeVersion
|
|
343082
|
+
},
|
|
343083
|
+
path: "parameters.includedTools",
|
|
343084
|
+
methodName: "getTools",
|
|
343085
|
+
currentNodeParameters: newNode.parameters,
|
|
343086
|
+
credentials: newNode.credentials,
|
|
343087
|
+
projectId: projectsStore.currentProjectId
|
|
343088
|
+
});
|
|
343089
|
+
const toolOptions = tools?.map((tool) => ({
|
|
343090
|
+
label: tool.name,
|
|
343091
|
+
value: String(tool.value),
|
|
343092
|
+
disabled: false
|
|
343093
|
+
}));
|
|
343094
|
+
result2.push({
|
|
343095
|
+
name: "toolName",
|
|
343096
|
+
initialValue: "",
|
|
343097
|
+
properties: {
|
|
343098
|
+
label: "Tool name",
|
|
343099
|
+
type: "select",
|
|
343100
|
+
options: toolOptions,
|
|
343101
|
+
required: true
|
|
343102
|
+
}
|
|
343103
|
+
});
|
|
343104
|
+
if (newSelectedTool) {
|
|
343105
|
+
const selectedToolData = tools?.find((tool) => String(tool.value) === newSelectedTool);
|
|
343106
|
+
const schema2 = selectedToolData?.inputSchema;
|
|
343107
|
+
if (schema2.properties) {
|
|
343108
|
+
for (const [propertyName2, value2] of Object.entries(schema2.properties)) {
|
|
343109
|
+
const type4 = typeof value2 === "object" && "type" in value2 && typeof value2.type === "string" ? value2.type : "text";
|
|
343110
|
+
result2.push({
|
|
343111
|
+
name: "query." + propertyName2,
|
|
343112
|
+
initialValue: "",
|
|
343113
|
+
properties: {
|
|
343114
|
+
label: propertyName2,
|
|
343115
|
+
type: mapTypes[type4].inputType,
|
|
343116
|
+
required: true
|
|
343117
|
+
}
|
|
343118
|
+
});
|
|
343119
|
+
}
|
|
343120
|
+
}
|
|
343121
|
+
}
|
|
343122
|
+
return result2;
|
|
343123
|
+
};
|
|
342964
343124
|
watch$1(
|
|
342965
343125
|
[node2, selectedTool],
|
|
342966
343126
|
async ([newNode, newSelectedTool]) => {
|
|
343127
|
+
error2.value = void 0;
|
|
342967
343128
|
if (!newNode) {
|
|
342968
343129
|
parameters.value = [];
|
|
342969
343130
|
return;
|
|
342970
343131
|
}
|
|
342971
343132
|
const result2 = [];
|
|
342972
343133
|
if (newNode.type === AI_MCP_TOOL_NODE_TYPE) {
|
|
342973
|
-
|
|
342974
|
-
|
|
342975
|
-
|
|
342976
|
-
|
|
342977
|
-
|
|
342978
|
-
|
|
342979
|
-
methodName: "getTools",
|
|
342980
|
-
currentNodeParameters: newNode.parameters
|
|
342981
|
-
});
|
|
342982
|
-
const toolOptions = tools?.map((tool) => ({
|
|
342983
|
-
label: tool.name,
|
|
342984
|
-
value: String(tool.value),
|
|
342985
|
-
disabled: false
|
|
342986
|
-
}));
|
|
342987
|
-
result2.push({
|
|
342988
|
-
name: "toolName",
|
|
342989
|
-
initialValue: "",
|
|
342990
|
-
properties: {
|
|
342991
|
-
label: "Tool name",
|
|
342992
|
-
type: "select",
|
|
342993
|
-
options: toolOptions,
|
|
342994
|
-
required: true
|
|
342995
|
-
}
|
|
342996
|
-
});
|
|
342997
|
-
if (newSelectedTool) {
|
|
342998
|
-
const selectedToolData = tools?.find((tool) => String(tool.value) === newSelectedTool);
|
|
342999
|
-
const schema2 = selectedToolData?.inputSchema;
|
|
343000
|
-
if (schema2.properties) {
|
|
343001
|
-
for (const [propertyName2, value2] of Object.entries(schema2.properties)) {
|
|
343002
|
-
const typedValue = value2;
|
|
343003
|
-
result2.push({
|
|
343004
|
-
name: "query." + propertyName2,
|
|
343005
|
-
initialValue: "",
|
|
343006
|
-
properties: {
|
|
343007
|
-
label: propertyName2,
|
|
343008
|
-
type: mapTypes[typedValue.type ?? "text"].inputType,
|
|
343009
|
-
required: true
|
|
343010
|
-
}
|
|
343011
|
-
});
|
|
343012
|
-
}
|
|
343013
|
-
}
|
|
343134
|
+
try {
|
|
343135
|
+
const mcpResult = await getMCPTools(newNode, newSelectedTool);
|
|
343136
|
+
parameters.value = mcpResult;
|
|
343137
|
+
return;
|
|
343138
|
+
} catch (e2) {
|
|
343139
|
+
error2.value = e2 instanceof Error ? e2 : new Error("Unknown error occurred");
|
|
343014
343140
|
}
|
|
343015
|
-
parameters.value = result2;
|
|
343016
343141
|
}
|
|
343017
343142
|
const params = newNode.parameters;
|
|
343018
343143
|
const collectedArgs = [];
|
|
@@ -343091,6 +343216,7 @@ const _sfc_main$2f = /* @__PURE__ */ defineComponent({
|
|
|
343091
343216
|
}
|
|
343092
343217
|
};
|
|
343093
343218
|
return (_ctx, _cache) => {
|
|
343219
|
+
const _component_N8nCallout = N8nCallout;
|
|
343094
343220
|
const _component_n8n_text = N8nText;
|
|
343095
343221
|
const _component_el_row = resolveComponent("el-row");
|
|
343096
343222
|
const _component_el_col = resolveComponent("el-col");
|
|
@@ -343104,73 +343230,94 @@ const _sfc_main$2f = /* @__PURE__ */ defineComponent({
|
|
|
343104
343230
|
name: unref(FROM_AI_PARAMETERS_MODAL_KEY),
|
|
343105
343231
|
center: true,
|
|
343106
343232
|
"close-on-click-modal": false
|
|
343107
|
-
}, {
|
|
343108
|
-
|
|
343109
|
-
|
|
343110
|
-
|
|
343111
|
-
|
|
343112
|
-
|
|
343113
|
-
|
|
343114
|
-
|
|
343115
|
-
|
|
343116
|
-
|
|
343117
|
-
|
|
343118
|
-
|
|
343119
|
-
|
|
343120
|
-
|
|
343121
|
-
|
|
343122
|
-
|
|
343123
|
-
|
|
343124
|
-
|
|
343125
|
-
|
|
343126
|
-
|
|
343127
|
-
|
|
343128
|
-
|
|
343129
|
-
|
|
343130
|
-
|
|
343131
|
-
|
|
343132
|
-
|
|
343133
|
-
|
|
343134
|
-
|
|
343135
|
-
|
|
343136
|
-
|
|
343137
|
-
|
|
343138
|
-
|
|
343139
|
-
|
|
343140
|
-
|
|
343141
|
-
|
|
343142
|
-
|
|
343143
|
-
|
|
343144
|
-
|
|
343145
|
-
|
|
343146
|
-
|
|
343147
|
-
|
|
343148
|
-
|
|
343149
|
-
|
|
343150
|
-
|
|
343151
|
-
|
|
343152
|
-
|
|
343153
|
-
|
|
343154
|
-
|
|
343155
|
-
|
|
343156
|
-
|
|
343157
|
-
|
|
343158
|
-
|
|
343159
|
-
|
|
343160
|
-
|
|
343161
|
-
|
|
343162
|
-
|
|
343163
|
-
|
|
343164
|
-
|
|
343165
|
-
|
|
343166
|
-
|
|
343167
|
-
|
|
343168
|
-
|
|
343169
|
-
|
|
343170
|
-
|
|
343171
|
-
|
|
343172
|
-
|
|
343173
|
-
|
|
343233
|
+
}, createSlots({ _: 2 }, [
|
|
343234
|
+
error2.value ? {
|
|
343235
|
+
name: "content",
|
|
343236
|
+
fn: withCtx(() => [
|
|
343237
|
+
error2.value ? (openBlock(), createBlock(_component_N8nCallout, {
|
|
343238
|
+
key: 0,
|
|
343239
|
+
theme: "danger"
|
|
343240
|
+
}, {
|
|
343241
|
+
default: withCtx(() => [
|
|
343242
|
+
createTextVNode(toDisplayString$1(error2.value.message), 1)
|
|
343243
|
+
]),
|
|
343244
|
+
_: 1
|
|
343245
|
+
})) : createCommentVNode("", true)
|
|
343246
|
+
]),
|
|
343247
|
+
key: "0"
|
|
343248
|
+
} : {
|
|
343249
|
+
name: "content",
|
|
343250
|
+
fn: withCtx(() => [
|
|
343251
|
+
createVNode(_component_el_col, null, {
|
|
343252
|
+
default: withCtx(() => [
|
|
343253
|
+
createVNode(_component_el_row, {
|
|
343254
|
+
class: normalizeClass(_ctx.$style.row)
|
|
343255
|
+
}, {
|
|
343256
|
+
default: withCtx(() => [
|
|
343257
|
+
createVNode(_component_n8n_text, { "data-testid": "from-ai-parameters-modal-description" }, {
|
|
343258
|
+
default: withCtx(() => [
|
|
343259
|
+
createTextVNode(toDisplayString$1(unref(i18n2).baseText("fromAiParametersModal.description", {
|
|
343260
|
+
interpolate: { parentNodeName: parentNode.value || "" }
|
|
343261
|
+
})), 1)
|
|
343262
|
+
]),
|
|
343263
|
+
_: 1
|
|
343264
|
+
})
|
|
343265
|
+
]),
|
|
343266
|
+
_: 1
|
|
343267
|
+
}, 8, ["class"])
|
|
343268
|
+
]),
|
|
343269
|
+
_: 1
|
|
343270
|
+
}),
|
|
343271
|
+
createVNode(_component_el_col, null, {
|
|
343272
|
+
default: withCtx(() => [
|
|
343273
|
+
createVNode(_component_el_row, {
|
|
343274
|
+
class: normalizeClass(_ctx.$style.row)
|
|
343275
|
+
}, {
|
|
343276
|
+
default: withCtx(() => [
|
|
343277
|
+
createVNode(_component_N8nFormInputs, {
|
|
343278
|
+
ref_key: "inputs",
|
|
343279
|
+
ref: inputs2,
|
|
343280
|
+
inputs: parameters.value,
|
|
343281
|
+
"column-view": true,
|
|
343282
|
+
"data-test-id": "from-ai-parameters-modal-inputs",
|
|
343283
|
+
onSubmit: onExecute,
|
|
343284
|
+
onUpdate
|
|
343285
|
+
}, null, 8, ["inputs"])
|
|
343286
|
+
]),
|
|
343287
|
+
_: 1
|
|
343288
|
+
}, 8, ["class"])
|
|
343289
|
+
]),
|
|
343290
|
+
_: 1
|
|
343291
|
+
})
|
|
343292
|
+
]),
|
|
343293
|
+
key: "1"
|
|
343294
|
+
},
|
|
343295
|
+
!error2.value ? {
|
|
343296
|
+
name: "footer",
|
|
343297
|
+
fn: withCtx(() => [
|
|
343298
|
+
createVNode(_component_el_row, { justify: "end" }, {
|
|
343299
|
+
default: withCtx(() => [
|
|
343300
|
+
createVNode(_component_el_col, {
|
|
343301
|
+
span: 5,
|
|
343302
|
+
offset: 19
|
|
343303
|
+
}, {
|
|
343304
|
+
default: withCtx(() => [
|
|
343305
|
+
createVNode(_component_n8n_button, {
|
|
343306
|
+
"data-test-id": "execute-workflow-button",
|
|
343307
|
+
icon: "flask-conical",
|
|
343308
|
+
label: unref(i18n2).baseText("fromAiParametersModal.execute"),
|
|
343309
|
+
onClick: onExecute
|
|
343310
|
+
}, null, 8, ["label"])
|
|
343311
|
+
]),
|
|
343312
|
+
_: 1
|
|
343313
|
+
})
|
|
343314
|
+
]),
|
|
343315
|
+
_: 1
|
|
343316
|
+
})
|
|
343317
|
+
]),
|
|
343318
|
+
key: "2"
|
|
343319
|
+
} : void 0
|
|
343320
|
+
]), 1032, ["title", "event-bus", "name"]);
|
|
343174
343321
|
};
|
|
343175
343322
|
}
|
|
343176
343323
|
});
|
|
@@ -343236,7 +343383,7 @@ const _sfc_main$2e = /* @__PURE__ */ defineComponent({
|
|
|
343236
343383
|
}
|
|
343237
343384
|
async function onImport() {
|
|
343238
343385
|
const { useImportCurlCommand } = await __vitePreload(async () => {
|
|
343239
|
-
const { useImportCurlCommand: useImportCurlCommand2 } = await import("./useImportCurlCommand-
|
|
343386
|
+
const { useImportCurlCommand: useImportCurlCommand2 } = await import("./useImportCurlCommand-BBG_p0rN.js");
|
|
343240
343387
|
return { useImportCurlCommand: useImportCurlCommand2 };
|
|
343241
343388
|
}, true ? __vite__mapDeps([9,10]) : void 0);
|
|
343242
343389
|
const { importCurlCommand } = useImportCurlCommand({
|
|
@@ -345303,9 +345450,9 @@ const _sfc_main$2b = /* @__PURE__ */ defineComponent({
|
|
|
345303
345450
|
}
|
|
345304
345451
|
});
|
|
345305
345452
|
const i18n$1 = useI18n();
|
|
345306
|
-
const MainSidebar$3 = async () => await __vitePreload(() => import("./MainSidebar-
|
|
345307
|
-
const DataStoreView = async () => await __vitePreload(() => import("./DataStoreView-
|
|
345308
|
-
const DataStoreDetailsView = async () => await __vitePreload(() => import("./DataStoreDetailsView-
|
|
345453
|
+
const MainSidebar$3 = async () => await __vitePreload(() => import("./MainSidebar-DAqyVtsS.js"), true ? __vite__mapDeps([11,12,13,14]) : void 0);
|
|
345454
|
+
const DataStoreView = async () => await __vitePreload(() => import("./DataStoreView-_kh6bnQf.js"), true ? __vite__mapDeps([15,16,17,18,19,20,21,22,23,24,25,26,27,28,29]) : void 0);
|
|
345455
|
+
const DataStoreDetailsView = async () => await __vitePreload(() => import("./DataStoreDetailsView-BQbcRsbK.js"), true ? __vite__mapDeps([30,28,31,32,27,33,34,35]) : void 0);
|
|
345309
345456
|
const DataStoreModule = {
|
|
345310
345457
|
id: "data-table",
|
|
345311
345458
|
name: "Data Store",
|
|
@@ -345314,7 +345461,7 @@ const DataStoreModule = {
|
|
|
345314
345461
|
modals: [
|
|
345315
345462
|
{
|
|
345316
345463
|
key: ADD_DATA_STORE_MODAL_KEY,
|
|
345317
|
-
component: async () => await __vitePreload(() => import("./AddDataStoreModal-
|
|
345464
|
+
component: async () => await __vitePreload(() => import("./AddDataStoreModal-Bqoboa0M.js"), true ? __vite__mapDeps([36,28,37]) : void 0),
|
|
345318
345465
|
initialState: { open: false }
|
|
345319
345466
|
}
|
|
345320
345467
|
],
|
|
@@ -345389,8 +345536,8 @@ const resources = /* @__PURE__ */ new Map();
|
|
|
345389
345536
|
function registerResource(metadata) {
|
|
345390
345537
|
resources.set(metadata.key, metadata);
|
|
345391
345538
|
}
|
|
345392
|
-
const MainSidebar$2 = async () => await __vitePreload(() => import("./MainSidebar-
|
|
345393
|
-
const InsightsDashboard = async () => await __vitePreload(() => import("./InsightsDashboard-
|
|
345539
|
+
const MainSidebar$2 = async () => await __vitePreload(() => import("./MainSidebar-DAqyVtsS.js"), true ? __vite__mapDeps([11,12,13,14]) : void 0);
|
|
345540
|
+
const InsightsDashboard = async () => await __vitePreload(() => import("./InsightsDashboard-QHtwDC2F.js"), true ? __vite__mapDeps([38,25,26,39]) : void 0);
|
|
345394
345541
|
const InsightsModule = {
|
|
345395
345542
|
id: "insights",
|
|
345396
345543
|
name: "Insights",
|
|
@@ -345641,11 +345788,11 @@ function registerAuthenticationHooks() {
|
|
|
345641
345788
|
RBACStore.setGlobalScopes([]);
|
|
345642
345789
|
});
|
|
345643
345790
|
}
|
|
345644
|
-
const MainSidebar$1 = async () => await __vitePreload(() => import("./MainSidebar-
|
|
345645
|
-
const WorkflowsView = async () => await __vitePreload(() => import("./WorkflowsView-
|
|
345646
|
-
const CredentialsView = async () => await __vitePreload(() => import("./CredentialsView-
|
|
345647
|
-
const ProjectSettings = async () => await __vitePreload(() => import("./ProjectSettings-
|
|
345648
|
-
const ExecutionsView = async () => await __vitePreload(() => import("./ExecutionsView-
|
|
345791
|
+
const MainSidebar$1 = async () => await __vitePreload(() => import("./MainSidebar-DAqyVtsS.js"), true ? __vite__mapDeps([11,12,13,14]) : void 0);
|
|
345792
|
+
const WorkflowsView = async () => await __vitePreload(() => import("./WorkflowsView-BvxtNIzc.js"), true ? __vite__mapDeps([40,41,31,32,42,43,44,16,17,18,19,20,21,22,23,24,45,46,47,48,49,25,26,50]) : void 0);
|
|
345793
|
+
const CredentialsView = async () => await __vitePreload(() => import("./CredentialsView-DYN2VsP1.js"), true ? __vite__mapDeps([51,41,16,17,18,19,20,21,22,23,24,25,26,52,53]) : void 0);
|
|
345794
|
+
const ProjectSettings = async () => await __vitePreload(() => import("./ProjectSettings-uzgB7K8j.js"), true ? __vite__mapDeps([54,23,21,24,55]) : void 0);
|
|
345795
|
+
const ExecutionsView = async () => await __vitePreload(() => import("./ExecutionsView-DAy8EjiJ.js"), true ? __vite__mapDeps([56,23,21,24,57,58,59,60,61,33,34,17,18,25,26,62]) : void 0);
|
|
345649
345796
|
const checkProjectAvailability = (to2) => {
|
|
345650
345797
|
if (!to2?.params.projectId) {
|
|
345651
345798
|
return true;
|
|
@@ -346881,46 +347028,46 @@ const cssModules$1x = {
|
|
|
346881
347028
|
"$style": style1
|
|
346882
347029
|
};
|
|
346883
347030
|
const TestRunDetailView = /* @__PURE__ */ _export_sfc$1(_sfc_main$29, [["__cssModules", cssModules$1x], ["__scopeId", "data-v-44ca9e8e"]]);
|
|
346884
|
-
const ChangePasswordView = async () => await __vitePreload(() => import("./ChangePasswordView-
|
|
346885
|
-
const ErrorView = async () => await __vitePreload(() => import("./ErrorView-
|
|
346886
|
-
const EntityNotFound = async () => await __vitePreload(() => import("./EntityNotFound-
|
|
346887
|
-
const EntityUnAuthorised = async () => await __vitePreload(() => import("./EntityUnAuthorised-
|
|
346888
|
-
const ForgotMyPasswordView = async () => await __vitePreload(() => import("./ForgotMyPasswordView-
|
|
346889
|
-
const MainHeader = async () => await __vitePreload(() => import("./MainHeader-
|
|
346890
|
-
const MainSidebar = async () => await __vitePreload(() => import("./MainSidebar-
|
|
346891
|
-
const LogsPanel = async () => await __vitePreload(() => import("./LogsPanel-
|
|
346892
|
-
const DemoFooter = async () => await __vitePreload(() => import("./DemoFooter-
|
|
346893
|
-
const NodeView = async () => await __vitePreload(() => import("./NodeView-
|
|
346894
|
-
const WorkflowExecutionsView = async () => await __vitePreload(() => import("./WorkflowExecutionsView-
|
|
346895
|
-
const WorkflowExecutionsLandingPage = async () => await __vitePreload(() => import("./WorkflowExecutionsLandingPage-
|
|
346896
|
-
const WorkflowExecutionsPreview = async () => await __vitePreload(() => import("./WorkflowExecutionsPreview-
|
|
346897
|
-
const SettingsView = async () => await __vitePreload(() => import("./SettingsView-
|
|
346898
|
-
const SettingsLdapView = async () => await __vitePreload(() => import("./SettingsLdapView-
|
|
346899
|
-
const SettingsPersonalView = async () => await __vitePreload(() => import("./SettingsPersonalView-
|
|
346900
|
-
const SettingsUsersView = async () => await __vitePreload(() => import("./SettingsUsersView-
|
|
346901
|
-
const SettingsCommunityNodesView = async () => await __vitePreload(() => import("./SettingsCommunityNodesView-
|
|
346902
|
-
const SettingsApiView = async () => await __vitePreload(() => import("./SettingsApiView-
|
|
346903
|
-
const SettingsLogStreamingView = async () => await __vitePreload(() => import("./SettingsLogStreamingView-
|
|
346904
|
-
const SetupView = async () => await __vitePreload(() => import("./SetupView-
|
|
346905
|
-
const SigninView = async () => await __vitePreload(() => import("./SigninView-
|
|
346906
|
-
const SignupView = async () => await __vitePreload(() => import("./SignupView-
|
|
346907
|
-
const TemplatesCollectionView = async () => await __vitePreload(() => import("./TemplatesCollectionView-
|
|
346908
|
-
const TemplatesWorkflowView = async () => await __vitePreload(() => import("./TemplatesWorkflowView-
|
|
346909
|
-
const SetupWorkflowFromTemplateView = async () => await __vitePreload(() => import("./SetupWorkflowFromTemplateView-
|
|
346910
|
-
const TemplatesSearchView = async () => await __vitePreload(() => import("./TemplatesSearchView-
|
|
346911
|
-
const VariablesView = async () => await __vitePreload(() => import("./VariablesView-
|
|
346912
|
-
const SettingsUsageAndPlan = async () => await __vitePreload(() => import("./SettingsUsageAndPlan-
|
|
346913
|
-
const SettingsSso = async () => await __vitePreload(() => import("./SettingsSso-
|
|
346914
|
-
const SignoutView = async () => await __vitePreload(() => import("./SignoutView-
|
|
346915
|
-
const SamlOnboarding = async () => await __vitePreload(() => import("./SamlOnboarding-
|
|
346916
|
-
const SettingsSourceControl = async () => await __vitePreload(() => import("./SettingsSourceControl-
|
|
346917
|
-
const SettingsExternalSecrets = async () => await __vitePreload(() => import("./SettingsExternalSecrets-
|
|
346918
|
-
const WorkerView = async () => await __vitePreload(() => import("./WorkerView-
|
|
346919
|
-
const WorkflowHistory = async () => await __vitePreload(() => import("./WorkflowHistory-
|
|
346920
|
-
const WorkflowOnboardingView = async () => await __vitePreload(() => import("./WorkflowOnboardingView-
|
|
346921
|
-
const EvaluationsView = async () => await __vitePreload(() => import("./EvaluationsView-
|
|
346922
|
-
const EvaluationRootView = async () => await __vitePreload(() => import("./EvaluationsRootView-
|
|
346923
|
-
const PrebuiltAgentTemplatesView = async () => await __vitePreload(() => import("./PrebuiltAgentTemplatesView-
|
|
347031
|
+
const ChangePasswordView = async () => await __vitePreload(() => import("./ChangePasswordView-DAgXSqZA.js"), true ? __vite__mapDeps([63,64,12,13,65]) : void 0);
|
|
347032
|
+
const ErrorView = async () => await __vitePreload(() => import("./ErrorView-ByTVJeSm.js"), true ? __vite__mapDeps([66,67]) : void 0);
|
|
347033
|
+
const EntityNotFound = async () => await __vitePreload(() => import("./EntityNotFound-CiMcygie.js"), true ? __vite__mapDeps([68,69]) : void 0);
|
|
347034
|
+
const EntityUnAuthorised = async () => await __vitePreload(() => import("./EntityUnAuthorised-vyjymVdI.js"), true ? __vite__mapDeps([70,71]) : void 0);
|
|
347035
|
+
const ForgotMyPasswordView = async () => await __vitePreload(() => import("./ForgotMyPasswordView-C8uiG_Wp.js"), true ? __vite__mapDeps([72,64,12,13,65]) : void 0);
|
|
347036
|
+
const MainHeader = async () => await __vitePreload(() => import("./MainHeader-s_9YtQ1K.js"), true ? __vite__mapDeps([73,42,31,32,43,44,74,75,46,47,76,77,49,78]) : void 0);
|
|
347037
|
+
const MainSidebar = async () => await __vitePreload(() => import("./MainSidebar-DAqyVtsS.js"), true ? __vite__mapDeps([11,12,13,14]) : void 0);
|
|
347038
|
+
const LogsPanel = async () => await __vitePreload(() => import("./LogsPanel-D5Qvj1cD.js"), true ? __vite__mapDeps([79,60,61,80,5,81,82]) : void 0);
|
|
347039
|
+
const DemoFooter = async () => await __vitePreload(() => import("./DemoFooter-BDufcHLS.js"), true ? __vite__mapDeps([83,79,60,61,80,5,81,82]) : void 0);
|
|
347040
|
+
const NodeView = async () => await __vitePreload(() => import("./NodeView-870Ju6SV.js").then((n2) => n2.N), true ? __vite__mapDeps([84,77,85,74,81,49,86]) : void 0);
|
|
347041
|
+
const WorkflowExecutionsView = async () => await __vitePreload(() => import("./WorkflowExecutionsView-Dh5w2GeL.js"), true ? __vite__mapDeps([87,45,46,47,48,57,58,59,88,89,90,91,92]) : void 0);
|
|
347042
|
+
const WorkflowExecutionsLandingPage = async () => await __vitePreload(() => import("./WorkflowExecutionsLandingPage-BHypBAhC.js"), true ? __vite__mapDeps([93,88,89,90,91,94]) : void 0);
|
|
347043
|
+
const WorkflowExecutionsPreview = async () => await __vitePreload(() => import("./WorkflowExecutionsPreview-CylTDrwZ.js"), true ? __vite__mapDeps([95,58,96,97,85,98]) : void 0);
|
|
347044
|
+
const SettingsView = async () => await __vitePreload(() => import("./SettingsView-BJVqQ8cP.js"), true ? __vite__mapDeps([99,100]) : void 0);
|
|
347045
|
+
const SettingsLdapView = async () => await __vitePreload(() => import("./SettingsLdapView-D61_xg1c.js"), true ? __vite__mapDeps([101,102]) : void 0);
|
|
347046
|
+
const SettingsPersonalView = async () => await __vitePreload(() => import("./SettingsPersonalView-CyF4kIDT.js"), true ? __vite__mapDeps([103,104]) : void 0);
|
|
347047
|
+
const SettingsUsersView = async () => await __vitePreload(() => import("./SettingsUsersView-COVuKqZM.js"), true ? __vite__mapDeps([105,106]) : void 0);
|
|
347048
|
+
const SettingsCommunityNodesView = async () => await __vitePreload(() => import("./SettingsCommunityNodesView-DsdfOXdt.js"), true ? __vite__mapDeps([107,76,77,49,108]) : void 0);
|
|
347049
|
+
const SettingsApiView = async () => await __vitePreload(() => import("./SettingsApiView-DGV1mUjU.js"), true ? __vite__mapDeps([109,110]) : void 0);
|
|
347050
|
+
const SettingsLogStreamingView = async () => await __vitePreload(() => import("./SettingsLogStreamingView-CWAkj--7.js"), true ? __vite__mapDeps([111,112]) : void 0);
|
|
347051
|
+
const SetupView = async () => await __vitePreload(() => import("./SetupView-PYEwxdR9.js"), true ? __vite__mapDeps([113,64,12,13,65]) : void 0);
|
|
347052
|
+
const SigninView = async () => await __vitePreload(() => import("./SigninView-Dn52fTjJ.js"), true ? __vite__mapDeps([114,64,12,13,65,115]) : void 0);
|
|
347053
|
+
const SignupView = async () => await __vitePreload(() => import("./SignupView-BFKMtKqE.js"), true ? __vite__mapDeps([116,64,12,13,65]) : void 0);
|
|
347054
|
+
const TemplatesCollectionView = async () => await __vitePreload(() => import("./TemplatesCollectionView-BWh4mmma.js"), true ? __vite__mapDeps([117,118,45,46,47,48,119,120,121,122,123,124,125]) : void 0);
|
|
347055
|
+
const TemplatesWorkflowView = async () => await __vitePreload(() => import("./TemplatesWorkflowView-lAONO-f5.js"), true ? __vite__mapDeps([126,118,45,46,47,48,119,96,97,124,122,123,127]) : void 0);
|
|
347056
|
+
const SetupWorkflowFromTemplateView = async () => await __vitePreload(() => import("./SetupWorkflowFromTemplateView-DIMNEI2x.js"), true ? __vite__mapDeps([128,124,122,123,129]) : void 0);
|
|
347057
|
+
const TemplatesSearchView = async () => await __vitePreload(() => import("./TemplatesSearchView-Do5m-n4u.js"), true ? __vite__mapDeps([130,120,121,122,123,131]) : void 0);
|
|
347058
|
+
const VariablesView = async () => await __vitePreload(() => import("./VariablesView-BOpHDH5g.js"), true ? __vite__mapDeps([132,16,17,18,19,20,21,22,52,133]) : void 0);
|
|
347059
|
+
const SettingsUsageAndPlan = async () => await __vitePreload(() => import("./SettingsUsageAndPlan-D0BDNq58.js"), true ? __vite__mapDeps([134,135]) : void 0);
|
|
347060
|
+
const SettingsSso = async () => await __vitePreload(() => import("./SettingsSso-wVPchu99.js"), true ? __vite__mapDeps([136,137]) : void 0);
|
|
347061
|
+
const SignoutView = async () => await __vitePreload(() => import("./SignoutView-BayQb-KM.js"), true ? [] : void 0);
|
|
347062
|
+
const SamlOnboarding = async () => await __vitePreload(() => import("./SamlOnboarding-DLL2MGXv.js"), true ? __vite__mapDeps([138,64,12,13,65]) : void 0);
|
|
347063
|
+
const SettingsSourceControl = async () => await __vitePreload(() => import("./SettingsSourceControl-B2YOQl1Y.js"), true ? __vite__mapDeps([139,140]) : void 0);
|
|
347064
|
+
const SettingsExternalSecrets = async () => await __vitePreload(() => import("./SettingsExternalSecrets-bfO4NBBJ.js"), true ? __vite__mapDeps([141,142]) : void 0);
|
|
347065
|
+
const WorkerView = async () => await __vitePreload(() => import("./WorkerView-g_yChNHW.js"), true ? __vite__mapDeps([143,75,76,77,49,144,145]) : void 0);
|
|
347066
|
+
const WorkflowHistory = async () => await __vitePreload(() => import("./WorkflowHistory-DczLVW3-.js"), true ? __vite__mapDeps([146,96,97,147]) : void 0);
|
|
347067
|
+
const WorkflowOnboardingView = async () => await __vitePreload(() => import("./WorkflowOnboardingView-hXmpgkXC.js"), true ? [] : void 0);
|
|
347068
|
+
const EvaluationsView = async () => await __vitePreload(() => import("./EvaluationsView-IiPycYmg.js"), true ? __vite__mapDeps([148,144,60,61,149]) : void 0);
|
|
347069
|
+
const EvaluationRootView = async () => await __vitePreload(() => import("./EvaluationsRootView-Da6feAL4.js"), true ? __vite__mapDeps([150,151]) : void 0);
|
|
347070
|
+
const PrebuiltAgentTemplatesView = async () => await __vitePreload(() => import("./PrebuiltAgentTemplatesView-Cusvnl-G.js"), true ? __vite__mapDeps([152,19,20,153]) : void 0);
|
|
346924
347071
|
function getTemplatesRedirect(defaultRedirect) {
|
|
346925
347072
|
const settingsStore = useSettingsStore();
|
|
346926
347073
|
const isTemplatesEnabled = settingsStore.isTemplatesEnabled;
|
|
@@ -349711,20 +349858,20 @@ const _sfc_main$20 = /* @__PURE__ */ defineComponent({
|
|
|
349711
349858
|
};
|
|
349712
349859
|
}
|
|
349713
349860
|
});
|
|
349714
|
-
const triple = "
|
|
349715
|
-
const observer = "
|
|
349716
|
-
const background = "
|
|
349717
|
-
const item = "
|
|
349718
|
-
const middle = "
|
|
349719
|
-
const medium = "
|
|
349720
|
-
const noRightSlot = "
|
|
349721
|
-
const stacked = "
|
|
349861
|
+
const triple = "_triple_157xo_123";
|
|
349862
|
+
const observer = "_observer_157xo_129";
|
|
349863
|
+
const background = "_background_157xo_135";
|
|
349864
|
+
const item = "_item_157xo_146";
|
|
349865
|
+
const middle = "_middle_157xo_162";
|
|
349866
|
+
const medium = "_medium_157xo_182";
|
|
349867
|
+
const noRightSlot = "_noRightSlot_157xo_182";
|
|
349868
|
+
const stacked = "_stacked_157xo_204";
|
|
349722
349869
|
const style0$1r = {
|
|
349723
349870
|
triple,
|
|
349724
349871
|
observer,
|
|
349725
349872
|
background,
|
|
349726
349873
|
item,
|
|
349727
|
-
"default": "
|
|
349874
|
+
"default": "_default_157xo_158",
|
|
349728
349875
|
middle,
|
|
349729
349876
|
medium,
|
|
349730
349877
|
noRightSlot,
|
|
@@ -358902,7 +359049,7 @@ const _sfc_main$1Q = /* @__PURE__ */ defineComponent({
|
|
|
358902
359049
|
}
|
|
358903
359050
|
});
|
|
358904
359051
|
}
|
|
358905
|
-
if (props2.fieldsToMap.length === 0) {
|
|
359052
|
+
if (props2.fieldsToMap.length === 0 && !props2.typeOptions?.resourceMapper?.hideNoDataError) {
|
|
358906
359053
|
return (
|
|
358907
359054
|
// Use custom error message if defined
|
|
358908
359055
|
resourceMapperTypeOptions.value?.noFieldsError || i18n$2.baseText("resourceMapper.fetchingFields.noFieldsFound", {
|
|
@@ -360251,10 +360398,10 @@ const _sfc_main$1M = /* @__PURE__ */ defineComponent({
|
|
|
360251
360398
|
emits: ["activate", "valueChanged", "parameterBlur"],
|
|
360252
360399
|
setup(__props, { emit: __emit }) {
|
|
360253
360400
|
const LazyFixedCollectionParameter = /* @__PURE__ */ defineAsyncComponent(
|
|
360254
|
-
async () => await __vitePreload(() => import("./FixedCollectionParameter-
|
|
360401
|
+
async () => await __vitePreload(() => import("./FixedCollectionParameter-C2MyOC2y.js"), true ? __vite__mapDeps([154,155]) : void 0)
|
|
360255
360402
|
);
|
|
360256
360403
|
const LazyCollectionParameter = /* @__PURE__ */ defineAsyncComponent(
|
|
360257
|
-
async () => await __vitePreload(() => import("./CollectionParameter-
|
|
360404
|
+
async () => await __vitePreload(() => import("./CollectionParameter-z2OOW9Kt.js"), true ? [] : void 0)
|
|
360258
360405
|
);
|
|
360259
360406
|
const showIssuesInLabelFor = ["fixedCollection"];
|
|
360260
360407
|
const props2 = __props;
|
|
@@ -363267,12 +363414,20 @@ const _sfc_main$1D = /* @__PURE__ */ defineComponent({
|
|
|
363267
363414
|
_: 2
|
|
363268
363415
|
}, 1032, ["theme"]),
|
|
363269
363416
|
isWorkflowDiffsEnabled.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
363270
|
-
file.type === unref(SOURCE_CONTROL_FILE_TYPE).workflow ? (openBlock(), createBlock(
|
|
363417
|
+
file.type === unref(SOURCE_CONTROL_FILE_TYPE).workflow ? (openBlock(), createBlock(unref(Tooltip$1), {
|
|
363271
363418
|
key: 0,
|
|
363272
|
-
|
|
363273
|
-
|
|
363274
|
-
|
|
363275
|
-
|
|
363419
|
+
content: unref(i18n2).baseText("workflowDiff.compare"),
|
|
363420
|
+
placement: "top"
|
|
363421
|
+
}, {
|
|
363422
|
+
default: withCtx(() => [
|
|
363423
|
+
createVNode(_component_N8nIconButton, {
|
|
363424
|
+
icon: "file-diff",
|
|
363425
|
+
type: "secondary",
|
|
363426
|
+
onClick: ($event) => openDiffModal(file.id)
|
|
363427
|
+
}, null, 8, ["onClick"])
|
|
363428
|
+
]),
|
|
363429
|
+
_: 2
|
|
363430
|
+
}, 1032, ["content"])) : createCommentVNode("", true)
|
|
363276
363431
|
], 64)) : createCommentVNode("", true)
|
|
363277
363432
|
], 2)
|
|
363278
363433
|
], 2)
|
|
@@ -364175,12 +364330,20 @@ const _sfc_main$1C = /* @__PURE__ */ defineComponent({
|
|
|
364175
364330
|
_: 2
|
|
364176
364331
|
}, 1032, ["theme"]),
|
|
364177
364332
|
isWorkflowDiffsEnabled.value ? (openBlock(), createElementBlock(Fragment, { key: 2 }, [
|
|
364178
|
-
file.type === unref(SOURCE_CONTROL_FILE_TYPE).workflow ? (openBlock(), createBlock(
|
|
364333
|
+
file.type === unref(SOURCE_CONTROL_FILE_TYPE).workflow ? (openBlock(), createBlock(unref(Tooltip$1), {
|
|
364179
364334
|
key: 0,
|
|
364180
|
-
|
|
364181
|
-
|
|
364182
|
-
|
|
364183
|
-
|
|
364335
|
+
content: unref(i18n2).baseText("workflowDiff.compare"),
|
|
364336
|
+
placement: "top"
|
|
364337
|
+
}, {
|
|
364338
|
+
default: withCtx(() => [
|
|
364339
|
+
createVNode(_component_N8nIconButton, {
|
|
364340
|
+
icon: "file-diff",
|
|
364341
|
+
type: "secondary",
|
|
364342
|
+
onClick: ($event) => openDiffModal(file.id)
|
|
364343
|
+
}, null, 8, ["onClick"])
|
|
364344
|
+
]),
|
|
364345
|
+
_: 2
|
|
364346
|
+
}, 1032, ["content"])) : createCommentVNode("", true)
|
|
364184
364347
|
], 64)) : createCommentVNode("", true)
|
|
364185
364348
|
], 2)
|
|
364186
364349
|
]),
|
|
@@ -367960,6 +368123,18 @@ const cssModules$U = {
|
|
|
367960
368123
|
"$style": style0$U
|
|
367961
368124
|
};
|
|
367962
368125
|
const CanvasNodeSettingsIcons = /* @__PURE__ */ _export_sfc$1(_sfc_main$1h, [["__cssModules", cssModules$U]]);
|
|
368126
|
+
async function fetchInstalledPackageInfo(packageName) {
|
|
368127
|
+
const installedPackage = await useCommunityNodesStore().getInstalledPackage(packageName);
|
|
368128
|
+
const communityNodeType = useNodeTypesStore().communityNodeType(packageName);
|
|
368129
|
+
if (!installedPackage) {
|
|
368130
|
+
return void 0;
|
|
368131
|
+
}
|
|
368132
|
+
const checkIsUnverifiedUpdate = () => {
|
|
368133
|
+
if (!installedPackage?.updateAvailable || !communityNodeType) return false;
|
|
368134
|
+
return semver.gt(installedPackage.updateAvailable, communityNodeType.npmVersion);
|
|
368135
|
+
};
|
|
368136
|
+
return { ...installedPackage, unverifiedUpdate: checkIsUnverifiedUpdate() };
|
|
368137
|
+
}
|
|
367963
368138
|
const _sfc_main$1g = /* @__PURE__ */ defineComponent({
|
|
367964
368139
|
__name: "CommunityNodeFooter",
|
|
367965
368140
|
props: {
|
|
@@ -367997,7 +368172,7 @@ const _sfc_main$1g = /* @__PURE__ */ defineComponent({
|
|
|
367997
368172
|
onMounted(async () => {
|
|
367998
368173
|
if (props2.packageName) {
|
|
367999
368174
|
await getBugsUrl(props2.packageName);
|
|
368000
|
-
installedPackage.value = await
|
|
368175
|
+
installedPackage.value = await fetchInstalledPackageInfo(props2.packageName);
|
|
368001
368176
|
}
|
|
368002
368177
|
});
|
|
368003
368178
|
return (_ctx, _cache) => {
|
|
@@ -368015,7 +368190,7 @@ const _sfc_main$1g = /* @__PURE__ */ defineComponent({
|
|
|
368015
368190
|
style: { "margin-right": "auto" }
|
|
368016
368191
|
}, {
|
|
368017
368192
|
default: withCtx(() => [
|
|
368018
|
-
createTextVNode(" Package version " + toDisplayString$1(installedPackage.value.installedVersion) + " (" + toDisplayString$1(installedPackage.value.updateAvailable ? "Legacy" : "Latest") + ") ", 1)
|
|
368193
|
+
createTextVNode(" Package version " + toDisplayString$1(installedPackage.value.installedVersion) + " (" + toDisplayString$1(installedPackage.value.updateAvailable && !installedPackage.value.unverifiedUpdate ? "Legacy" : "Latest") + ") ", 1)
|
|
368019
368194
|
]),
|
|
368020
368195
|
_: 1
|
|
368021
368196
|
})) : createCommentVNode("", true),
|
|
@@ -370364,9 +370539,9 @@ const _sfc_main$13 = /* @__PURE__ */ defineComponent({
|
|
|
370364
370539
|
};
|
|
370365
370540
|
}
|
|
370366
370541
|
});
|
|
370367
|
-
const actions$
|
|
370542
|
+
const actions$2 = "_actions_1bl57_123";
|
|
370368
370543
|
const style0$L = {
|
|
370369
|
-
actions: actions$
|
|
370544
|
+
actions: actions$2
|
|
370370
370545
|
};
|
|
370371
370546
|
const cssModules$L = {
|
|
370372
370547
|
"$style": style0$L
|
|
@@ -373255,14 +373430,7 @@ const cssModules$x = {
|
|
|
373255
373430
|
"$style": style0$x
|
|
373256
373431
|
};
|
|
373257
373432
|
const CanvasHandleRenderer = /* @__PURE__ */ _export_sfc$1(_sfc_main$P, [["__cssModules", cssModules$x]]);
|
|
373258
|
-
|
|
373259
|
-
const isOpen = ref$1(false);
|
|
373260
|
-
const target = ref$1();
|
|
373261
|
-
const actions$2 = ref$1([]);
|
|
373262
|
-
const actionCallback = ref$1(() => {
|
|
373263
|
-
});
|
|
373264
|
-
const useContextMenu = (onAction = () => {
|
|
373265
|
-
}) => {
|
|
373433
|
+
function useContextMenuItems(targetNodeIds) {
|
|
373266
373434
|
const uiStore = useUIStore();
|
|
373267
373435
|
const nodeTypesStore = useNodeTypesStore();
|
|
373268
373436
|
const workflowsStore = useWorkflowsStore();
|
|
@@ -373281,11 +373449,6 @@ const useContextMenu = (onAction = () => {
|
|
|
373281
373449
|
if (!isNodeWithWorkflowSelector(node2)) return false;
|
|
373282
373450
|
return !!getSubworkflowId(node2);
|
|
373283
373451
|
});
|
|
373284
|
-
const targetNodeIds = computed(() => {
|
|
373285
|
-
if (!isOpen.value || !target.value) return [];
|
|
373286
|
-
const currentTarget = target.value;
|
|
373287
|
-
return currentTarget.source === "canvas" ? currentTarget.nodeIds : [currentTarget.nodeId];
|
|
373288
|
-
});
|
|
373289
373452
|
const targetNodes = computed(
|
|
373290
373453
|
() => targetNodeIds.value.map((nodeId) => workflowsStore.getNodeById(nodeId)).filter(isPresent)
|
|
373291
373454
|
);
|
|
@@ -373302,12 +373465,6 @@ const useContextMenu = (onAction = () => {
|
|
|
373302
373465
|
const hasPinData = (node2) => {
|
|
373303
373466
|
return !!workflowsStore.pinDataByNodeName(node2.name);
|
|
373304
373467
|
};
|
|
373305
|
-
const close2 = () => {
|
|
373306
|
-
target.value = void 0;
|
|
373307
|
-
isOpen.value = false;
|
|
373308
|
-
actions$2.value = [];
|
|
373309
|
-
position.value = [0, 0];
|
|
373310
|
-
};
|
|
373311
373468
|
const isExecutable$1 = (node2) => {
|
|
373312
373469
|
const workflowNode = workflowObject.value.getNode(node2.name);
|
|
373313
373470
|
const nodeType = nodeTypesStore.getNodeType(
|
|
@@ -373316,17 +373473,7 @@ const useContextMenu = (onAction = () => {
|
|
|
373316
373473
|
);
|
|
373317
373474
|
return isExecutable(workflowObject.value, workflowNode, nodeType);
|
|
373318
373475
|
};
|
|
373319
|
-
|
|
373320
|
-
event.stopPropagation();
|
|
373321
|
-
if (isOpen.value && menuTarget.source === target.value?.source && menuTarget.nodeId === target.value?.nodeId) {
|
|
373322
|
-
close2();
|
|
373323
|
-
return;
|
|
373324
|
-
}
|
|
373325
|
-
event.preventDefault();
|
|
373326
|
-
actionCallback.value = onAction;
|
|
373327
|
-
target.value = menuTarget;
|
|
373328
|
-
position.value = getMousePosition(event);
|
|
373329
|
-
isOpen.value = true;
|
|
373476
|
+
return computed(() => {
|
|
373330
373477
|
const nodes2 = targetNodes.value;
|
|
373331
373478
|
const onlyStickies = nodes2.every((node2) => node2.type === STICKY_NODE_TYPE);
|
|
373332
373479
|
const i18nOptions = {
|
|
@@ -373369,7 +373516,7 @@ const useContextMenu = (onAction = () => {
|
|
|
373369
373516
|
}
|
|
373370
373517
|
];
|
|
373371
373518
|
if (nodes2.length === 0) {
|
|
373372
|
-
|
|
373519
|
+
return [
|
|
373373
373520
|
{
|
|
373374
373521
|
id: "add_node",
|
|
373375
373522
|
shortcut: { keys: ["Tab"] },
|
|
@@ -373462,27 +373609,44 @@ const useContextMenu = (onAction = () => {
|
|
|
373462
373609
|
}
|
|
373463
373610
|
menuActions.unshift(...singleNodeActions);
|
|
373464
373611
|
}
|
|
373465
|
-
|
|
373612
|
+
return menuActions;
|
|
373466
373613
|
}
|
|
373614
|
+
});
|
|
373615
|
+
}
|
|
373616
|
+
const position = ref$1([0, 0]);
|
|
373617
|
+
const target = ref$1();
|
|
373618
|
+
const useContextMenu = () => {
|
|
373619
|
+
const uiStore = useUIStore();
|
|
373620
|
+
const isOpen = computed(() => target.value !== void 0);
|
|
373621
|
+
const targetNodeIds = computed(() => {
|
|
373622
|
+
if (!target.value) return [];
|
|
373623
|
+
const currentTarget = target.value;
|
|
373624
|
+
return currentTarget.source === "canvas" ? currentTarget.nodeIds : [currentTarget.nodeId];
|
|
373625
|
+
});
|
|
373626
|
+
const close2 = () => {
|
|
373627
|
+
target.value = void 0;
|
|
373628
|
+
position.value = [0, 0];
|
|
373467
373629
|
};
|
|
373468
|
-
const
|
|
373469
|
-
|
|
373470
|
-
|
|
373471
|
-
watch$1(
|
|
373472
|
-
() => uiStore.nodeViewOffsetPosition,
|
|
373473
|
-
() => {
|
|
373630
|
+
const open2 = (event, menuTarget) => {
|
|
373631
|
+
event.stopPropagation();
|
|
373632
|
+
if (isOpen.value && menuTarget.source === target.value?.source && menuTarget.nodeId === target.value?.nodeId) {
|
|
373474
373633
|
close2();
|
|
373634
|
+
return;
|
|
373475
373635
|
}
|
|
373476
|
-
|
|
373636
|
+
event.preventDefault();
|
|
373637
|
+
target.value = menuTarget;
|
|
373638
|
+
position.value = getMousePosition(event);
|
|
373639
|
+
};
|
|
373640
|
+
const actions2 = useContextMenuItems(targetNodeIds);
|
|
373641
|
+
watch$1(() => uiStore.nodeViewOffsetPosition, close2);
|
|
373477
373642
|
return {
|
|
373478
373643
|
isOpen,
|
|
373479
373644
|
position,
|
|
373480
373645
|
target,
|
|
373481
|
-
actions:
|
|
373646
|
+
actions: computed(() => isOpen.value ? actions2.value : []),
|
|
373482
373647
|
targetNodeIds,
|
|
373483
373648
|
open: open2,
|
|
373484
|
-
close: close2
|
|
373485
|
-
_dispatchAction
|
|
373649
|
+
close: close2
|
|
373486
373650
|
};
|
|
373487
373651
|
};
|
|
373488
373652
|
const _sfc_main$O = /* @__PURE__ */ defineComponent({
|
|
@@ -379938,7 +380102,7 @@ const _sfc_main$L = /* @__PURE__ */ defineComponent({
|
|
|
379938
380102
|
};
|
|
379939
380103
|
}
|
|
379940
380104
|
});
|
|
379941
|
-
const codeDiff = "
|
|
380105
|
+
const codeDiff = "_codeDiff_1lzuj_124";
|
|
379942
380106
|
const style0$t = {
|
|
379943
380107
|
codeDiff
|
|
379944
380108
|
};
|
|
@@ -380466,14 +380630,14 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
|
380466
380630
|
emits: ["action"],
|
|
380467
380631
|
setup(__props, { emit: __emit }) {
|
|
380468
380632
|
const contextMenu2 = useContextMenu();
|
|
380469
|
-
const { position: position2, isOpen
|
|
380633
|
+
const { position: position2, isOpen, actions: actions2, target: target2 } = contextMenu2;
|
|
380470
380634
|
const dropdown2 = ref$1();
|
|
380471
380635
|
const emit2 = __emit;
|
|
380472
380636
|
const { APP_Z_INDEXES: APP_Z_INDEXES2 } = useStyles();
|
|
380473
380637
|
watch$1(
|
|
380474
|
-
|
|
380638
|
+
isOpen,
|
|
380475
380639
|
() => {
|
|
380476
|
-
if (
|
|
380640
|
+
if (isOpen) {
|
|
380477
380641
|
dropdown2.value?.open();
|
|
380478
380642
|
} else {
|
|
380479
380643
|
dropdown2.value?.close();
|
|
@@ -380482,9 +380646,7 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
|
380482
380646
|
{ flush: "post" }
|
|
380483
380647
|
);
|
|
380484
380648
|
function onActionSelect(item2) {
|
|
380485
|
-
|
|
380486
|
-
contextMenu2._dispatchAction(action2);
|
|
380487
|
-
emit2("action", action2, contextMenu2.targetNodeIds.value);
|
|
380649
|
+
emit2("action", item2, contextMenu2.targetNodeIds.value);
|
|
380488
380650
|
}
|
|
380489
380651
|
function onVisibleChange(open2) {
|
|
380490
380652
|
if (!open2) {
|
|
@@ -380492,7 +380654,7 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
|
380492
380654
|
}
|
|
380493
380655
|
}
|
|
380494
380656
|
return (_ctx, _cache) => {
|
|
380495
|
-
return unref(
|
|
380657
|
+
return unref(isOpen) ? (openBlock(), createBlock(Teleport, {
|
|
380496
380658
|
key: 0,
|
|
380497
380659
|
to: "body"
|
|
380498
380660
|
}, [
|
|
@@ -387893,7 +388055,7 @@ const _sfc_main$y = /* @__PURE__ */ defineComponent({
|
|
|
387893
388055
|
loading: { type: Boolean, default: false }
|
|
387894
388056
|
},
|
|
387895
388057
|
emits: ["update:modelValue", "update:node:position", "update:nodes:position", "update:node:activated", "update:node:deactivated", "update:node:enabled", "update:node:selected", "update:node:name", "update:node:parameters", "update:node:inputs", "update:node:outputs", "update:logs-open", "update:logs:input-open", "update:logs:output-open", "update:has-range-selection", "click:node", "click:node:add", "run:node", "delete:node", "create:node", "create:sticky", "delete:nodes", "update:nodes:enabled", "copy:nodes", "duplicate:nodes", "update:nodes:pin", "cut:nodes", "delete:connection", "create:connection:start", "create:connection", "create:connection:end", "create:connection:cancelled", "click:connection:add", "click:pane", "run:workflow", "save:workflow", "create:workflow", "drag-and-drop", "tidy-up", "toggle:focus-panel", "viewport:change", "selection:end", "open:sub-workflow", "start-chat", "extract-workflow"],
|
|
387896
|
-
setup(__props, { emit: __emit }) {
|
|
388058
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
387897
388059
|
const $style = useCssModule();
|
|
387898
388060
|
const emit2 = __emit;
|
|
387899
388061
|
const props2 = __props;
|
|
@@ -388467,6 +388629,9 @@ const _sfc_main$y = /* @__PURE__ */ defineComponent({
|
|
|
388467
388629
|
isExperimentalNdvActive: isExperimentalNdvActive2,
|
|
388468
388630
|
isPaneMoving
|
|
388469
388631
|
});
|
|
388632
|
+
__expose({
|
|
388633
|
+
executeContextMenuAction: onContextMenuAction
|
|
388634
|
+
});
|
|
388470
388635
|
return (_ctx, _cache) => {
|
|
388471
388636
|
const _component_CanvasConnectionLine = __unplugin_components_0;
|
|
388472
388637
|
const _component_CanvasControlButtons = __unplugin_components_1;
|
|
@@ -388620,7 +388785,7 @@ const style0$n = {
|
|
|
388620
388785
|
const cssModules$n = {
|
|
388621
388786
|
"$style": style0$n
|
|
388622
388787
|
};
|
|
388623
|
-
const Canvas = /* @__PURE__ */ _export_sfc$1(_sfc_main$y, [["__cssModules", cssModules$n], ["__scopeId", "data-v-
|
|
388788
|
+
const Canvas = /* @__PURE__ */ _export_sfc$1(_sfc_main$y, [["__cssModules", cssModules$n], ["__scopeId", "data-v-f5528088"]]);
|
|
388624
388789
|
const [useProvideViewportSync, useInject] = createInjectionState(() => {
|
|
388625
388790
|
const onViewportChange = createEventHook();
|
|
388626
388791
|
const onNodeClick = createEventHook();
|
|
@@ -389100,9 +389265,15 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
|
|
|
389100
389265
|
const targetNode = targetWorkFlow.value?.state.value?.workflow?.nodes.find(
|
|
389101
389266
|
(node2) => node2.id === selectedDetailId.value
|
|
389102
389267
|
);
|
|
389268
|
+
function replacer2(key2, value2) {
|
|
389269
|
+
if (key2 === "position") {
|
|
389270
|
+
return void 0;
|
|
389271
|
+
}
|
|
389272
|
+
return value2;
|
|
389273
|
+
}
|
|
389103
389274
|
return {
|
|
389104
|
-
oldString: JSON.stringify(sourceNode2,
|
|
389105
|
-
newString: JSON.stringify(targetNode,
|
|
389275
|
+
oldString: JSON.stringify(sourceNode2, replacer2, 2) ?? "",
|
|
389276
|
+
newString: JSON.stringify(targetNode, replacer2, 2) ?? ""
|
|
389106
389277
|
};
|
|
389107
389278
|
});
|
|
389108
389279
|
function handleBeforeClose() {
|
|
@@ -389210,8 +389381,8 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
|
|
|
389210
389381
|
onClick: handleBeforeClose
|
|
389211
389382
|
}, null, 8, ["class"]),
|
|
389212
389383
|
createVNode(unref(N8nHeading), {
|
|
389213
|
-
tag: "
|
|
389214
|
-
size: "
|
|
389384
|
+
tag: "h4",
|
|
389385
|
+
size: "medium"
|
|
389215
389386
|
}, {
|
|
389216
389387
|
default: withCtx(() => [
|
|
389217
389388
|
createTextVNode(toDisplayString$1(sourceWorkFlow.value.state.value?.workflow?.name || targetWorkFlow.value.state.value?.workflow?.name), 1)
|
|
@@ -393396,8 +393567,8 @@ function useWorkflowDiffRouting() {
|
|
|
393396
393567
|
};
|
|
393397
393568
|
const handleDiffModal = (diffWorkflowId, direction2) => {
|
|
393398
393569
|
const shouldOpen = diffWorkflowId && direction2;
|
|
393399
|
-
const
|
|
393400
|
-
if (shouldOpen && !
|
|
393570
|
+
const isOpen = uiStore.modalsById[WORKFLOW_DIFF_MODAL_KEY]?.open;
|
|
393571
|
+
if (shouldOpen && !isOpen) {
|
|
393401
393572
|
uiStore.openModalWithData({
|
|
393402
393573
|
name: WORKFLOW_DIFF_MODAL_KEY,
|
|
393403
393574
|
data: {
|
|
@@ -393406,23 +393577,23 @@ function useWorkflowDiffRouting() {
|
|
|
393406
393577
|
direction: direction2
|
|
393407
393578
|
}
|
|
393408
393579
|
});
|
|
393409
|
-
} else if (!shouldOpen &&
|
|
393580
|
+
} else if (!shouldOpen && isOpen) {
|
|
393410
393581
|
uiStore.closeModal(WORKFLOW_DIFF_MODAL_KEY);
|
|
393411
393582
|
}
|
|
393412
393583
|
};
|
|
393413
393584
|
const handleSourceControlModals = (sourceControl, diffWorkflowId, direction2) => {
|
|
393414
393585
|
if (sourceControl && !diffWorkflowId) {
|
|
393415
393586
|
const modalKey = sourceControl === "push" ? SOURCE_CONTROL_PUSH_MODAL_KEY : SOURCE_CONTROL_PULL_MODAL_KEY;
|
|
393416
|
-
const
|
|
393417
|
-
if (!
|
|
393587
|
+
const isOpen = uiStore.modalsById[modalKey]?.open;
|
|
393588
|
+
if (!isOpen) {
|
|
393418
393589
|
reopenSourceControlModal(sourceControl);
|
|
393419
393590
|
}
|
|
393420
393591
|
return;
|
|
393421
393592
|
}
|
|
393422
393593
|
if (direction2 && !diffWorkflowId && !sourceControl) {
|
|
393423
393594
|
const modalKey = direction2 === "push" ? SOURCE_CONTROL_PUSH_MODAL_KEY : SOURCE_CONTROL_PULL_MODAL_KEY;
|
|
393424
|
-
const
|
|
393425
|
-
if (!
|
|
393595
|
+
const isOpen = uiStore.modalsById[modalKey]?.open;
|
|
393596
|
+
if (!isOpen) {
|
|
393426
393597
|
reopenSourceControlModal(direction2, true);
|
|
393427
393598
|
}
|
|
393428
393599
|
return;
|
|
@@ -407881,10 +408052,11 @@ function beforeSend(event, { originalException }) {
|
|
|
407881
408052
|
}
|
|
407882
408053
|
const SentryPlugin = {
|
|
407883
408054
|
install: (app2) => {
|
|
407884
|
-
|
|
408055
|
+
const sentryConfig = getAndParseConfigFromMetaTag("sentry");
|
|
408056
|
+
if (!sentryConfig?.dsn) {
|
|
407885
408057
|
return;
|
|
407886
408058
|
}
|
|
407887
|
-
const { dsn, release, environment, serverName } =
|
|
408059
|
+
const { dsn, release, environment, serverName } = sentryConfig;
|
|
407888
408060
|
init$1({
|
|
407889
408061
|
app: app2,
|
|
407890
408062
|
dsn,
|
|
@@ -408080,7 +408252,7 @@ export {
|
|
|
408080
408252
|
addTokenUsageData as by,
|
|
408081
408253
|
emptyTokenUsageData as bz,
|
|
408082
408254
|
useI18n as c,
|
|
408083
|
-
|
|
408255
|
+
N8nInput as c$,
|
|
408084
408256
|
isRef as c0,
|
|
408085
408257
|
toRefs$2 as c1,
|
|
408086
408258
|
normalizeProps as c2,
|
|
@@ -408093,31 +408265,31 @@ export {
|
|
|
408093
408265
|
useAttrs$1 as c9,
|
|
408094
408266
|
Canvas as cA,
|
|
408095
408267
|
useExpressionResolveCtx as cB,
|
|
408096
|
-
|
|
408097
|
-
|
|
408098
|
-
_sfc_main$
|
|
408099
|
-
|
|
408100
|
-
|
|
408101
|
-
|
|
408102
|
-
|
|
408103
|
-
|
|
408104
|
-
|
|
408105
|
-
|
|
408106
|
-
|
|
408107
|
-
|
|
408108
|
-
|
|
408109
|
-
|
|
408110
|
-
|
|
408111
|
-
|
|
408112
|
-
|
|
408113
|
-
|
|
408114
|
-
|
|
408115
|
-
|
|
408116
|
-
|
|
408117
|
-
|
|
408118
|
-
|
|
408119
|
-
|
|
408120
|
-
|
|
408268
|
+
useContextMenuItems as cC,
|
|
408269
|
+
N8nKeyboardShortcut as cD,
|
|
408270
|
+
_sfc_main$14 as cE,
|
|
408271
|
+
ExpressionLocalResolveContextSymbol as cF,
|
|
408272
|
+
_sfc_main$38 as cG,
|
|
408273
|
+
useFocusPanelStore as cH,
|
|
408274
|
+
useNodeSettingsParameters as cI,
|
|
408275
|
+
useEnvironmentsStore as cJ,
|
|
408276
|
+
useExperimentalNdvStore as cK,
|
|
408277
|
+
useDeviceSupport as cL,
|
|
408278
|
+
useTelemetryContext as cM,
|
|
408279
|
+
HTML_NODE_TYPE$1 as cN,
|
|
408280
|
+
isValueExpression as cO,
|
|
408281
|
+
isResourceLocatorValue as cP,
|
|
408282
|
+
AI_TRANSFORM_NODE_TYPE$1 as cQ,
|
|
408283
|
+
useResolvedExpression as cR,
|
|
408284
|
+
InfoTip as cS,
|
|
408285
|
+
__unplugin_components_2$2 as cT,
|
|
408286
|
+
__unplugin_components_3$1 as cU,
|
|
408287
|
+
__unplugin_components_4 as cV,
|
|
408288
|
+
__unplugin_components_5 as cW,
|
|
408289
|
+
__unplugin_components_6 as cX,
|
|
408290
|
+
__unplugin_components_7 as cY,
|
|
408291
|
+
__unplugin_components_8 as cZ,
|
|
408292
|
+
__unplugin_components_9 as c_,
|
|
408121
408293
|
useClipboard as ca,
|
|
408122
408294
|
PopOutWindowKey as cb,
|
|
408123
408295
|
resolveDirective as cc,
|
|
@@ -408145,371 +408317,374 @@ export {
|
|
|
408145
408317
|
useCanvasMapping as cy,
|
|
408146
408318
|
refThrottled as cz,
|
|
408147
408319
|
defineComponent as d,
|
|
408148
|
-
|
|
408149
|
-
|
|
408150
|
-
|
|
408151
|
-
|
|
408152
|
-
|
|
408153
|
-
|
|
408154
|
-
|
|
408155
|
-
|
|
408156
|
-
|
|
408157
|
-
|
|
408158
|
-
|
|
408159
|
-
|
|
408160
|
-
|
|
408161
|
-
|
|
408162
|
-
|
|
408163
|
-
|
|
408164
|
-
|
|
408165
|
-
|
|
408166
|
-
|
|
408167
|
-
|
|
408168
|
-
|
|
408169
|
-
|
|
408170
|
-
|
|
408171
|
-
|
|
408172
|
-
|
|
408173
|
-
|
|
408174
|
-
|
|
408175
|
-
|
|
408176
|
-
|
|
408177
|
-
|
|
408178
|
-
|
|
408179
|
-
|
|
408180
|
-
|
|
408181
|
-
|
|
408182
|
-
|
|
408183
|
-
|
|
408184
|
-
|
|
408185
|
-
|
|
408186
|
-
|
|
408187
|
-
|
|
408188
|
-
|
|
408189
|
-
|
|
408190
|
-
|
|
408191
|
-
|
|
408192
|
-
|
|
408193
|
-
|
|
408194
|
-
|
|
408195
|
-
|
|
408196
|
-
|
|
408197
|
-
|
|
408198
|
-
|
|
408199
|
-
|
|
408200
|
-
|
|
408201
|
-
|
|
408202
|
-
|
|
408203
|
-
|
|
408204
|
-
|
|
408205
|
-
|
|
408206
|
-
|
|
408207
|
-
|
|
408208
|
-
|
|
408209
|
-
|
|
408210
|
-
|
|
408320
|
+
createFormEventBus as d$,
|
|
408321
|
+
getParameterTypeOption as d0,
|
|
408322
|
+
htmlEditorEventBus as d1,
|
|
408323
|
+
parseFromExpression as d2,
|
|
408324
|
+
isValidParameterOption as d3,
|
|
408325
|
+
formatAsExpression as d4,
|
|
408326
|
+
hasFocusOnInput as d5,
|
|
408327
|
+
isFocusableEl as d6,
|
|
408328
|
+
truncateBeforeLast as d7,
|
|
408329
|
+
reactive as d8,
|
|
408330
|
+
_sfc_main$3L as d9,
|
|
408331
|
+
CanvasConnectionMode as dA,
|
|
408332
|
+
isValidNodeConnectionType as dB,
|
|
408333
|
+
sourceControlEventBus as dC,
|
|
408334
|
+
getNodesWithNormalizedPosition as dD,
|
|
408335
|
+
CanvasNodeRenderType as dE,
|
|
408336
|
+
shouldIgnoreCanvasShortcut as dF,
|
|
408337
|
+
needsAgentInput as dG,
|
|
408338
|
+
FROM_AI_PARAMETERS_MODAL_KEY as dH,
|
|
408339
|
+
historyBus as dI,
|
|
408340
|
+
DRAG_EVENT_DATA_KEY as dJ,
|
|
408341
|
+
useExecutionHelpers as dK,
|
|
408342
|
+
_sfc_main$5I as dL,
|
|
408343
|
+
N8nLoading as dM,
|
|
408344
|
+
TransitionGroup as dN,
|
|
408345
|
+
isComponentPublicInstance as dO,
|
|
408346
|
+
NO_NETWORK_ERROR_CODE as dP,
|
|
408347
|
+
executionRetryMessage as dQ,
|
|
408348
|
+
deepCopy$1 as dR,
|
|
408349
|
+
RouterLink as dS,
|
|
408350
|
+
DEBUG_PAYWALL_MODAL_KEY as dT,
|
|
408351
|
+
sanitizeHtml as dU,
|
|
408352
|
+
isFullExecutionResponse as dV,
|
|
408353
|
+
isRouteLocationRaw as dW,
|
|
408354
|
+
pushScopeId as dX,
|
|
408355
|
+
popScopeId as dY,
|
|
408356
|
+
useSSOStore as dZ,
|
|
408357
|
+
N8nActionBox as d_,
|
|
408358
|
+
useNodeCreatorStore as da,
|
|
408359
|
+
useCredentialsStore as db,
|
|
408360
|
+
useExternalSecretsStore as dc,
|
|
408361
|
+
useHistoryStore as dd,
|
|
408362
|
+
useBuilderStore as de,
|
|
408363
|
+
usePostHog as df,
|
|
408364
|
+
useAgentRequestStore as dg,
|
|
408365
|
+
useWorkflowExtraction as dh,
|
|
408366
|
+
NEW_WORKFLOW_ID as di,
|
|
408367
|
+
NDV_UI_OVERHAUL_EXPERIMENT as dj,
|
|
408368
|
+
getNodeViewTab as dk,
|
|
408369
|
+
VALID_WORKFLOW_IMPORT_URL_REGEX as dl,
|
|
408370
|
+
jsonParse as dm,
|
|
408371
|
+
EVALUATION_TRIGGER_NODE_TYPE as dn,
|
|
408372
|
+
getBounds as dp,
|
|
408373
|
+
onBeforeRouteLeave as dq,
|
|
408374
|
+
onActivated as dr,
|
|
408375
|
+
onDeactivated as ds,
|
|
408376
|
+
Suspense as dt,
|
|
408377
|
+
defineAsyncComponent as du,
|
|
408378
|
+
NODE_CREATOR_OPEN_SOURCES as dv,
|
|
408379
|
+
EVALUATION_NODE_TYPE as dw,
|
|
408380
|
+
getSampleWorkflowByTemplateId as dx,
|
|
408381
|
+
tryToParseNumber as dy,
|
|
408382
|
+
createCanvasConnectionHandleString as dz,
|
|
408211
408383
|
createBlock as e,
|
|
408212
|
-
|
|
408213
|
-
|
|
408214
|
-
|
|
408215
|
-
|
|
408216
|
-
|
|
408217
|
-
|
|
408218
|
-
|
|
408219
|
-
|
|
408220
|
-
|
|
408221
|
-
|
|
408222
|
-
|
|
408223
|
-
|
|
408224
|
-
|
|
408225
|
-
|
|
408226
|
-
|
|
408227
|
-
|
|
408228
|
-
|
|
408229
|
-
|
|
408230
|
-
|
|
408231
|
-
|
|
408232
|
-
|
|
408233
|
-
|
|
408234
|
-
|
|
408235
|
-
|
|
408236
|
-
|
|
408237
|
-
|
|
408238
|
-
|
|
408239
|
-
|
|
408240
|
-
|
|
408241
|
-
|
|
408242
|
-
|
|
408243
|
-
|
|
408244
|
-
|
|
408245
|
-
|
|
408246
|
-
|
|
408247
|
-
|
|
408248
|
-
|
|
408249
|
-
|
|
408250
|
-
|
|
408251
|
-
|
|
408252
|
-
|
|
408253
|
-
|
|
408254
|
-
|
|
408255
|
-
|
|
408256
|
-
|
|
408257
|
-
|
|
408258
|
-
|
|
408259
|
-
|
|
408260
|
-
|
|
408261
|
-
|
|
408262
|
-
|
|
408263
|
-
|
|
408264
|
-
|
|
408265
|
-
|
|
408266
|
-
|
|
408267
|
-
|
|
408268
|
-
|
|
408269
|
-
|
|
408270
|
-
|
|
408271
|
-
|
|
408272
|
-
|
|
408273
|
-
|
|
408274
|
-
|
|
408275
|
-
|
|
408384
|
+
N8nCheckbox as e$,
|
|
408385
|
+
N8nFormInputs as e0,
|
|
408386
|
+
ElTableColumn as e1,
|
|
408387
|
+
ElTable as e2,
|
|
408388
|
+
convertToDisplayDate$1 as e3,
|
|
408389
|
+
capitalizeFirstLetter as e4,
|
|
408390
|
+
ROLE as e5,
|
|
408391
|
+
promptMfaCodeBus as e6,
|
|
408392
|
+
N8nInputLabel as e7,
|
|
408393
|
+
MFA_DOCS_URL as e8,
|
|
408394
|
+
N8nNotice as e9,
|
|
408395
|
+
assert$1 as eA,
|
|
408396
|
+
getCurrentInstance as eB,
|
|
408397
|
+
LOG_STREAM_MODAL_KEY as eC,
|
|
408398
|
+
toRefs$1 as eD,
|
|
408399
|
+
MFA_FORM as eE,
|
|
408400
|
+
MFA_AUTHENTICATION_RECOVERY_CODE_INPUT_MAX_LENGTH as eF,
|
|
408401
|
+
mfaEventBus as eG,
|
|
408402
|
+
MFA_AUTHENTICATION_REQUIRED_ERROR_CODE as eH,
|
|
408403
|
+
isFullTemplatesCollection as eI,
|
|
408404
|
+
N8nMarkdown as eJ,
|
|
408405
|
+
filterTemplateNodes as eK,
|
|
408406
|
+
isTemplatesWorkflow as eL,
|
|
408407
|
+
_sfc_main$2u as eM,
|
|
408408
|
+
abbreviateNumber as eN,
|
|
408409
|
+
useCredentialSetupState as eO,
|
|
408410
|
+
AppsRequiringCredsNotice as eP,
|
|
408411
|
+
SetupTemplateFormStep as eQ,
|
|
408412
|
+
doesNodeHaveCredentialsToFill as eR,
|
|
408413
|
+
getNewWorkflow as eS,
|
|
408414
|
+
replaceAllTemplateNodeCredentials as eT,
|
|
408415
|
+
orderBy as eU,
|
|
408416
|
+
requireDebounce as eV,
|
|
408417
|
+
requireIsObject as eW,
|
|
408418
|
+
CREATOR_HUB_URL as eX,
|
|
408419
|
+
toRaw as eY,
|
|
408420
|
+
N8nFormInput as eZ,
|
|
408421
|
+
useAsyncState as e_,
|
|
408422
|
+
N8nSelect as ea,
|
|
408423
|
+
_sfc_main$5n as eb,
|
|
408424
|
+
CHANGE_PASSWORD_MODAL_KEY as ec,
|
|
408425
|
+
PROMPT_MFA_CODE_MODAL_KEY as ed,
|
|
408426
|
+
MFA_SETUP_MODAL_KEY as ee,
|
|
408427
|
+
N8nActionToggle as ef,
|
|
408428
|
+
formatTimeAgo as eg,
|
|
408429
|
+
mergeModels as eh,
|
|
408430
|
+
useModel as ei,
|
|
408431
|
+
N8nDataTableServer as ej,
|
|
408432
|
+
USERS_LIST_SORT_OPTIONS as ek,
|
|
408433
|
+
INVITE_USER_MODAL_KEY as el,
|
|
408434
|
+
DELETE_USER_MODAL_KEY as em,
|
|
408435
|
+
useDebounceFn as en,
|
|
408436
|
+
semver as eo,
|
|
408437
|
+
COMMUNITY_PACKAGE_MANAGE_ACTIONS as ep,
|
|
408438
|
+
NPM_PACKAGE_DOCS_BASE_URL as eq,
|
|
408439
|
+
useCommunityNodesStore as er,
|
|
408440
|
+
COMMUNITY_NODES_INSTALLATION_DOCS_URL as es,
|
|
408441
|
+
COMMUNITY_PACKAGE_INSTALL_MODAL_KEY as et,
|
|
408442
|
+
useApiKeysStore as eu,
|
|
408443
|
+
storeToRefs as ev,
|
|
408444
|
+
DOCS_DOMAIN as ew,
|
|
408445
|
+
API_KEY_CREATE_OR_EDIT_MODAL_KEY as ex,
|
|
408446
|
+
useLogStreamingStore as ey,
|
|
408447
|
+
defaultMessageEventBusDestinationOptions as ez,
|
|
408276
408448
|
createCommentVNode as f,
|
|
408277
|
-
|
|
408278
|
-
|
|
408279
|
-
|
|
408280
|
-
|
|
408281
|
-
|
|
408282
|
-
|
|
408283
|
-
|
|
408284
|
-
|
|
408285
|
-
|
|
408286
|
-
|
|
408287
|
-
|
|
408288
|
-
|
|
408289
|
-
_sfc_main$
|
|
408290
|
-
|
|
408291
|
-
|
|
408292
|
-
|
|
408293
|
-
|
|
408294
|
-
|
|
408295
|
-
|
|
408296
|
-
|
|
408297
|
-
|
|
408298
|
-
|
|
408299
|
-
|
|
408300
|
-
|
|
408301
|
-
|
|
408302
|
-
|
|
408303
|
-
|
|
408304
|
-
|
|
408305
|
-
|
|
408306
|
-
|
|
408307
|
-
|
|
408308
|
-
|
|
408309
|
-
|
|
408310
|
-
|
|
408311
|
-
|
|
408312
|
-
|
|
408313
|
-
|
|
408314
|
-
|
|
408315
|
-
|
|
408316
|
-
|
|
408317
|
-
|
|
408318
|
-
|
|
408319
|
-
|
|
408320
|
-
|
|
408321
|
-
|
|
408322
|
-
|
|
408323
|
-
|
|
408324
|
-
|
|
408325
|
-
|
|
408326
|
-
|
|
408327
|
-
|
|
408328
|
-
|
|
408329
|
-
|
|
408330
|
-
|
|
408331
|
-
|
|
408332
|
-
|
|
408333
|
-
|
|
408334
|
-
|
|
408335
|
-
|
|
408336
|
-
|
|
408337
|
-
|
|
408338
|
-
|
|
408339
|
-
|
|
408340
|
-
_sfc_main$
|
|
408449
|
+
watchEffect as f$,
|
|
408450
|
+
uid$2 as f0,
|
|
408451
|
+
useUsageStore as f1,
|
|
408452
|
+
i18n$2 as f2,
|
|
408453
|
+
COMMUNITY_PLUS_ENROLLMENT_MODAL as f3,
|
|
408454
|
+
telemetry as f4,
|
|
408455
|
+
SupportedProtocols as f5,
|
|
408456
|
+
CopyInput as f6,
|
|
408457
|
+
useFavicon as f7,
|
|
408458
|
+
makeRestApiRequest as f8,
|
|
408459
|
+
clearPopupWindowState as f9,
|
|
408460
|
+
useAnnotationTagsStore as fA,
|
|
408461
|
+
_sfc_main$2l as fB,
|
|
408462
|
+
ANNOTATION_TAGS_MANAGER_MODAL_KEY as fC,
|
|
408463
|
+
_sfc_main$5m as fD,
|
|
408464
|
+
ProjectSharing as fE,
|
|
408465
|
+
LOCAL_STORAGE_WORKFLOW_LIST_PREFERENCES_KEY as fF,
|
|
408466
|
+
isBaseTextKey as fG,
|
|
408467
|
+
useSlots as fH,
|
|
408468
|
+
isSharedResource as fI,
|
|
408469
|
+
isResourceSortableByDate as fJ,
|
|
408470
|
+
require_arrayMap as fK,
|
|
408471
|
+
require_baseIteratee as fL,
|
|
408472
|
+
require_basePickBy as fM,
|
|
408473
|
+
require_getAllKeysIn as fN,
|
|
408474
|
+
_sfc_main$5o as fO,
|
|
408475
|
+
useLoadingService as fP,
|
|
408476
|
+
useExternalSecretsProvider as fQ,
|
|
408477
|
+
isDateObject as fR,
|
|
408478
|
+
_sfc_main$2i as fS,
|
|
408479
|
+
ExternalSecretsProviderConnectionSwitch as fT,
|
|
408480
|
+
EXTERNAL_SECRETS_PROVIDER_MODAL_KEY as fU,
|
|
408481
|
+
Chart as fV,
|
|
408482
|
+
LineController as fW,
|
|
408483
|
+
version$5 as fX,
|
|
408484
|
+
isProxy as fY,
|
|
408485
|
+
BarController as fZ,
|
|
408486
|
+
dateFormat as f_,
|
|
408487
|
+
isPrebuiltAgentTemplateId as fa,
|
|
408488
|
+
isTutorialTemplateId as fb,
|
|
408489
|
+
hasTrimmedItem as fc,
|
|
408490
|
+
generateNodesGraph as fd,
|
|
408491
|
+
getExecutionErrorToastConfiguration as fe,
|
|
408492
|
+
getTriggerNodeServiceName as ff,
|
|
408493
|
+
hasTrimmedData as fg,
|
|
408494
|
+
codeNodeEditorEventBus as fh,
|
|
408495
|
+
SampleTemplates as fi,
|
|
408496
|
+
getExecutionErrorMessage as fj,
|
|
408497
|
+
useAssistantStore as fk,
|
|
408498
|
+
useSchemaPreviewStore as fl,
|
|
408499
|
+
isCommunityPackageName as fm,
|
|
408500
|
+
getActivatableTriggerNodes as fn,
|
|
408501
|
+
EXECUTE_WORKFLOW_TRIGGER_NODE_TYPE as fo,
|
|
408502
|
+
OPEN_AI_API_CREDENTIAL_TYPE as fp,
|
|
408503
|
+
WORKFLOW_ACTIVATION_CONFLICTING_WEBHOOK_MODAL_KEY as fq,
|
|
408504
|
+
TEMPLATE_ONBOARDING_EXPERIMENT as fr,
|
|
408505
|
+
BATCH_11AUG_EXPERIMENT as fs,
|
|
408506
|
+
isIconOrEmoji as ft,
|
|
408507
|
+
__unplugin_components_0$9 as fu,
|
|
408508
|
+
LOCAL_STORAGE_ACTIVATION_FLAG as fv,
|
|
408509
|
+
createStaticVNode as fw,
|
|
408510
|
+
MarkdownIt as fx,
|
|
408511
|
+
isEmpty$1 as fy,
|
|
408512
|
+
_sfc_main$54 as fz,
|
|
408341
408513
|
openBlock as g,
|
|
408342
|
-
|
|
408343
|
-
|
|
408344
|
-
|
|
408345
|
-
|
|
408346
|
-
|
|
408347
|
-
|
|
408348
|
-
|
|
408349
|
-
|
|
408350
|
-
|
|
408351
|
-
|
|
408352
|
-
|
|
408353
|
-
|
|
408354
|
-
|
|
408355
|
-
_sfc_main$
|
|
408356
|
-
|
|
408357
|
-
|
|
408358
|
-
|
|
408359
|
-
|
|
408360
|
-
|
|
408361
|
-
|
|
408362
|
-
|
|
408363
|
-
|
|
408364
|
-
|
|
408365
|
-
|
|
408366
|
-
|
|
408367
|
-
|
|
408368
|
-
|
|
408514
|
+
ElDialog as g$,
|
|
408515
|
+
WORKFLOW_HISTORY_VERSION_RESTORE as g0,
|
|
408516
|
+
useCssVar as g1,
|
|
408517
|
+
TestTableBase as g2,
|
|
408518
|
+
statusDictionary as g3,
|
|
408519
|
+
getErrorBaseKey as g4,
|
|
408520
|
+
convertToDisplayDate as g5,
|
|
408521
|
+
NodeCreatorNode as g6,
|
|
408522
|
+
ProjectCardBadge as g7,
|
|
408523
|
+
FOLDER_NAME_ILLEGAL_CHARACTERS_REGEX as g8,
|
|
408524
|
+
ILLEGAL_FOLDER_CHARACTERS as g9,
|
|
408525
|
+
ElSkeletonItem as gA,
|
|
408526
|
+
isINodePropertyCollectionList as gB,
|
|
408527
|
+
_sfc_main$1M as gC,
|
|
408528
|
+
Draggable as gD,
|
|
408529
|
+
_sfc_main$1S as gE,
|
|
408530
|
+
DATA_STORE_DETAILS as gF,
|
|
408531
|
+
DEFAULT_DATA_STORE_PAGE_SIZE as gG,
|
|
408532
|
+
ADD_DATA_STORE_MODAL_KEY as gH,
|
|
408533
|
+
DATA_STORE_STORE as gI,
|
|
408534
|
+
DATA_STORE_CARD_ACTIONS as gJ,
|
|
408535
|
+
markRaw as gK,
|
|
408536
|
+
mergeDefaults as gL,
|
|
408537
|
+
render$3m as gM,
|
|
408538
|
+
isReactive as gN,
|
|
408539
|
+
MAX_COLUMN_NAME_LENGTH as gO,
|
|
408540
|
+
COLUMN_NAME_REGEX as gP,
|
|
408369
408541
|
ADD_ROW_ROW_ID as gQ,
|
|
408370
|
-
|
|
408371
|
-
|
|
408372
|
-
|
|
408542
|
+
NULL_VALUE as gR,
|
|
408543
|
+
EMPTY_VALUE as gS,
|
|
408544
|
+
DEFAULT_ID_COLUMN_NAME as gT,
|
|
408373
408545
|
DATA_STORE_ID_COLUMN_WIDTH as gU,
|
|
408374
|
-
|
|
408375
|
-
|
|
408376
|
-
|
|
408377
|
-
|
|
408378
|
-
|
|
408379
|
-
|
|
408380
|
-
|
|
408381
|
-
|
|
408382
|
-
|
|
408383
|
-
|
|
408384
|
-
|
|
408385
|
-
|
|
408386
|
-
|
|
408387
|
-
|
|
408388
|
-
|
|
408389
|
-
|
|
408390
|
-
|
|
408391
|
-
|
|
408392
|
-
|
|
408393
|
-
|
|
408394
|
-
|
|
408395
|
-
|
|
408396
|
-
|
|
408397
|
-
|
|
408398
|
-
|
|
408399
|
-
|
|
408400
|
-
|
|
408401
|
-
|
|
408402
|
-
|
|
408403
|
-
|
|
408404
|
-
|
|
408405
|
-
|
|
408546
|
+
DATA_STORE_HEADER_HEIGHT as gV,
|
|
408547
|
+
DATA_STORE_ROW_HEIGHT as gW,
|
|
408548
|
+
MIN_LOADING_TIME as gX,
|
|
408549
|
+
DATA_STORE_VIEW as gY,
|
|
408550
|
+
__unplugin_components_3$3 as gZ,
|
|
408551
|
+
UNLICENSED_TIME_RANGE as g_,
|
|
408552
|
+
FOLDER_NAME_ONLY_DOTS_REGEX as ga,
|
|
408553
|
+
FOLDER_NAME_MAX_LENGTH as gb,
|
|
408554
|
+
LOCAL_STORAGE_EXPERIMENTAL_DISMISSED_SUGGESTED_WORKFLOWS as gc,
|
|
408555
|
+
useInsightsStore as gd,
|
|
408556
|
+
isExtraTemplateLinksExperimentEnabled as ge,
|
|
408557
|
+
PROJECT_ROOT as gf,
|
|
408558
|
+
Draggable$1 as gg,
|
|
408559
|
+
DEFAULT_WORKFLOW_PAGE_SIZE as gh,
|
|
408560
|
+
getEasyAiWorkflowJson as gi,
|
|
408561
|
+
N8nTabs as gj,
|
|
408562
|
+
useElementSize as gk,
|
|
408563
|
+
useResizeObserver as gl,
|
|
408564
|
+
PROJECT_DATA_STORES as gm,
|
|
408565
|
+
TIME_RANGE_LABELS as gn,
|
|
408566
|
+
INSIGHT_IMPACT_TYPES as go,
|
|
408567
|
+
INSIGHTS_UNIT_IMPACT_MAPPING as gp,
|
|
408568
|
+
CredentialIcon as gq,
|
|
408569
|
+
listenForModalChanges as gr,
|
|
408570
|
+
CREDENTIAL_EMPTY_VALUE as gs,
|
|
408571
|
+
CREDENTIAL_SELECT_MODAL_KEY as gt,
|
|
408572
|
+
CREDENTIAL_EDIT_MODAL_KEY as gu,
|
|
408573
|
+
isCredentialsResource as gv,
|
|
408574
|
+
useRolesStore as gw,
|
|
408575
|
+
N8nUsersList as gx,
|
|
408576
|
+
WAIT_INDEFINITELY as gy,
|
|
408577
|
+
useIntersectionObserver as gz,
|
|
408406
408578
|
createElementBlock as h,
|
|
408407
|
-
|
|
408408
|
-
|
|
408409
|
-
|
|
408410
|
-
|
|
408411
|
-
|
|
408412
|
-
|
|
408413
|
-
|
|
408414
|
-
|
|
408415
|
-
|
|
408416
|
-
|
|
408417
|
-
|
|
408418
|
-
|
|
408419
|
-
|
|
408420
|
-
|
|
408421
|
-
|
|
408422
|
-
|
|
408423
|
-
|
|
408424
|
-
|
|
408425
|
-
|
|
408426
|
-
|
|
408427
|
-
|
|
408428
|
-
|
|
408429
|
-
|
|
408430
|
-
|
|
408431
|
-
|
|
408432
|
-
|
|
408433
|
-
|
|
408434
|
-
|
|
408435
|
-
|
|
408436
|
-
|
|
408437
|
-
|
|
408438
|
-
|
|
408439
|
-
|
|
408440
|
-
|
|
408441
|
-
|
|
408442
|
-
|
|
408443
|
-
|
|
408444
|
-
|
|
408445
|
-
|
|
408446
|
-
|
|
408447
|
-
|
|
408448
|
-
|
|
408449
|
-
|
|
408450
|
-
|
|
408451
|
-
|
|
408452
|
-
|
|
408453
|
-
|
|
408454
|
-
|
|
408455
|
-
|
|
408456
|
-
|
|
408457
|
-
|
|
408458
|
-
|
|
408459
|
-
|
|
408460
|
-
|
|
408461
|
-
|
|
408462
|
-
|
|
408463
|
-
|
|
408464
|
-
|
|
408465
|
-
|
|
408466
|
-
|
|
408467
|
-
|
|
408468
|
-
|
|
408469
|
-
|
|
408470
|
-
|
|
408579
|
+
transformInsightsTimeSaved as h$,
|
|
408580
|
+
INSIGHT_TYPES as h0,
|
|
408581
|
+
TELEMETRY_TIME_RANGE as h1,
|
|
408582
|
+
process$1 as h2,
|
|
408583
|
+
requirePathBrowserify as h3,
|
|
408584
|
+
require$$0$3 as h4,
|
|
408585
|
+
Buffer as h5,
|
|
408586
|
+
CURL_IMPORT_NOT_SUPPORTED_PROTOCOLS as h6,
|
|
408587
|
+
importCurlEventBus as h7,
|
|
408588
|
+
CURL_IMPORT_NODES_PROTOCOLS as h8,
|
|
408589
|
+
__unplugin_components_0$6 as h9,
|
|
408590
|
+
convertToDisplayDateComponents as hA,
|
|
408591
|
+
requireCapitalize as hB,
|
|
408592
|
+
parseAiContent as hC,
|
|
408593
|
+
_sfc_main$2S as hD,
|
|
408594
|
+
ViewSubExecution as hE,
|
|
408595
|
+
ElTree as hF,
|
|
408596
|
+
useNodeDirtiness as hG,
|
|
408597
|
+
useNodeType as hH,
|
|
408598
|
+
CanvasNodeDirtiness as hI,
|
|
408599
|
+
__unplugin_components_2$3 as hJ,
|
|
408600
|
+
isTriggerPanelObject as hK,
|
|
408601
|
+
WEBHOOK_NODE_TYPE as hL,
|
|
408602
|
+
FORM_TRIGGER_NODE_TYPE as hM,
|
|
408603
|
+
Transition$2 as hN,
|
|
408604
|
+
LOCAL_STORAGE_NDV_PANEL_WIDTH as hO,
|
|
408605
|
+
toValue$4 as hP,
|
|
408606
|
+
FontAwesomeIcon as hQ,
|
|
408607
|
+
useNodeDocsUrl as hR,
|
|
408608
|
+
getNodeIconSource as hS,
|
|
408609
|
+
Teleport as hT,
|
|
408610
|
+
doesNodeHaveAllCredentialsFilled as hU,
|
|
408611
|
+
SETUP_CREDENTIALS_MODAL_KEY as hV,
|
|
408612
|
+
GRANULARITY_DATE_FORMAT_MASK as hW,
|
|
408613
|
+
merge$4 as hX,
|
|
408614
|
+
transformInsightsFailureRate as hY,
|
|
408615
|
+
INSIGHTS_UNIT_MAPPING as hZ,
|
|
408616
|
+
index as h_,
|
|
408617
|
+
MappingPill as ha,
|
|
408618
|
+
shorten as hb,
|
|
408619
|
+
getPairedItemId as hc,
|
|
408620
|
+
getMappedExpression as hd,
|
|
408621
|
+
executionDataToJson as he,
|
|
408622
|
+
VueJsonPretty as hf,
|
|
408623
|
+
isString$1 as hg,
|
|
408624
|
+
nonExistingJsonPath as hh,
|
|
408625
|
+
requireUtils$1 as hi,
|
|
408626
|
+
mapConnectionsByDestination as hj,
|
|
408627
|
+
getParentNodes$1 as hk,
|
|
408628
|
+
libExports$1 as hl,
|
|
408629
|
+
splitTextBySearch as hm,
|
|
408630
|
+
useActions as hn,
|
|
408631
|
+
getMidCanvasPosition as ho,
|
|
408632
|
+
DEFAULT_STICKY_WIDTH as hp,
|
|
408633
|
+
DEFAULT_STICKY_HEIGHT as hq,
|
|
408634
|
+
MAIN_NODE_PANEL_WIDTH as hr,
|
|
408635
|
+
LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH as hs,
|
|
408636
|
+
getNodeOutputs as ht,
|
|
408637
|
+
EXECUTABLE_TRIGGER_NODE_TYPES as hu,
|
|
408638
|
+
BASE_NODE_SURVEY_URL as hv,
|
|
408639
|
+
dataPinningEventBus as hw,
|
|
408640
|
+
NodeSettings as hx,
|
|
408641
|
+
InputPanel as hy,
|
|
408642
|
+
APP_MODALS_ELEMENT_ID as hz,
|
|
408471
408643
|
createVNode as i,
|
|
408472
|
-
|
|
408473
|
-
|
|
408474
|
-
|
|
408475
|
-
|
|
408476
|
-
|
|
408477
|
-
|
|
408478
|
-
|
|
408479
|
-
|
|
408480
|
-
|
|
408481
|
-
|
|
408482
|
-
|
|
408483
|
-
|
|
408484
|
-
|
|
408485
|
-
|
|
408486
|
-
|
|
408487
|
-
|
|
408488
|
-
|
|
408489
|
-
|
|
408490
|
-
|
|
408491
|
-
|
|
408492
|
-
|
|
408493
|
-
|
|
408494
|
-
|
|
408495
|
-
|
|
408496
|
-
|
|
408497
|
-
|
|
408498
|
-
|
|
408499
|
-
|
|
408500
|
-
|
|
408501
|
-
|
|
408502
|
-
|
|
408503
|
-
|
|
408504
|
-
|
|
408505
|
-
|
|
408506
|
-
|
|
408507
|
-
|
|
408508
|
-
|
|
408509
|
-
|
|
408510
|
-
|
|
408511
|
-
|
|
408512
|
-
|
|
408644
|
+
transformInsightsAverageRunTime as i0,
|
|
408645
|
+
commonjsGlobal$1 as i1,
|
|
408646
|
+
clearJsonKey as i2,
|
|
408647
|
+
convertPath as i3,
|
|
408648
|
+
REGULAR_NODE_CREATOR_VIEW as i4,
|
|
408649
|
+
useViewStacks as i5,
|
|
408650
|
+
_sfc_main$1f as i6,
|
|
408651
|
+
fetchInstalledPackageInfo as i7,
|
|
408652
|
+
captureException as i8,
|
|
408653
|
+
useKeyboardNavigation as i9,
|
|
408654
|
+
HITL_SUBCATEGORY as iA,
|
|
408655
|
+
getHumanInTheLoopActions as iB,
|
|
408656
|
+
AI_OTHERS_NODE_CREATOR_VIEW as iC,
|
|
408657
|
+
AI_NODE_CREATOR_VIEW as iD,
|
|
408658
|
+
OfficialIcon as iE,
|
|
408659
|
+
removePreviewToken as iF,
|
|
408660
|
+
AI_EVALUATION as iG,
|
|
408661
|
+
AI_UNCATEGORIZED_CATEGORY as iH,
|
|
408662
|
+
SlideTransition as iI,
|
|
408663
|
+
useActionsGenerator as iJ,
|
|
408664
|
+
CUSTOM_API_CALL_KEY as ia,
|
|
408665
|
+
TRIGGER_NODE_CREATOR_VIEW as ib,
|
|
408666
|
+
isNodePreviewKey as ic,
|
|
408667
|
+
OPEN_AI_NODE_TYPE as id,
|
|
408668
|
+
OPEN_AI_NODE_MESSAGE_ASSISTANT_TYPE as ie,
|
|
408669
|
+
getActiveViewCallouts as ig,
|
|
408670
|
+
ItemsRenderer as ih,
|
|
408671
|
+
withMemo as ii,
|
|
408672
|
+
CategorizedItemsRenderer as ij,
|
|
408673
|
+
CommunityNodeFooter as ik,
|
|
408674
|
+
HTTP_REQUEST_NODE_TYPE as il,
|
|
408675
|
+
REQUEST_NODE_FORM_URL as im,
|
|
408676
|
+
filterAndSearchNodes as io,
|
|
408677
|
+
getRootSearchCallouts as ip,
|
|
408678
|
+
PRE_BUILT_AGENTS_COLLECTION as iq,
|
|
408679
|
+
camelCase as ir,
|
|
408680
|
+
shouldShowCommunityNodeDetails as is,
|
|
408681
|
+
prepareCommunityNodeDetailsViewStack as it,
|
|
408682
|
+
transformNodeType as iu,
|
|
408683
|
+
AINodesView as iv,
|
|
408684
|
+
AIView as iw,
|
|
408685
|
+
RegularView as ix,
|
|
408686
|
+
TriggerView as iy,
|
|
408687
|
+
flattenCreateElements as iz,
|
|
408513
408688
|
createBaseVNode as j,
|
|
408514
408689
|
createTextVNode as k,
|
|
408515
408690
|
unref as l,
|