n8n-editor-ui 1.44.0 → 1.44.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/.turbo/turbo-build.log +77 -77
  2. package/dist/assets/{AuthView-1FRMwQ3r.js → AuthView-DfyvaM6i.js} +2 -2
  3. package/dist/assets/{AuthView-1FRMwQ3r.js.map → AuthView-DfyvaM6i.js.map} +1 -1
  4. package/dist/assets/{CanvasControls-FCzUEVOQ.js → CanvasControls-DFdnF5qb.js} +2 -2
  5. package/dist/assets/{CanvasControls-FCzUEVOQ.js.map → CanvasControls-DFdnF5qb.js.map} +1 -1
  6. package/dist/assets/{ChangePasswordView-DdWHauKg.js → ChangePasswordView-B4v8DwW9.js} +2 -2
  7. package/dist/assets/{ChangePasswordView-DdWHauKg.js.map → ChangePasswordView-B4v8DwW9.js.map} +1 -1
  8. package/dist/assets/{CollectionParameter-CiMzJaXg.js → CollectionParameter-5V5xJsjs.js} +2 -2
  9. package/dist/assets/CollectionParameter-5V5xJsjs.js.map +1 -0
  10. package/dist/assets/{CredentialsView-Bn6PVi9E.js → CredentialsView-tyjXlz4Z.js} +2 -2
  11. package/dist/assets/{CredentialsView-Bn6PVi9E.js.map → CredentialsView-tyjXlz4Z.js.map} +1 -1
  12. package/dist/assets/{ExecutionsFilter-nFboBzV2.js → ExecutionsFilter-0t_omffh.js} +2 -2
  13. package/dist/assets/{ExecutionsFilter-nFboBzV2.js.map → ExecutionsFilter-0t_omffh.js.map} +1 -1
  14. package/dist/assets/{ExecutionsView-CbkLSsSW.js → ExecutionsView-DzCvkqXG.js} +2 -2
  15. package/dist/assets/{ExecutionsView-CbkLSsSW.js.map → ExecutionsView-DzCvkqXG.js.map} +1 -1
  16. package/dist/assets/{ForgotMyPasswordView-vPMSx22g.js → ForgotMyPasswordView-D_90K80j.js} +2 -2
  17. package/dist/assets/{ForgotMyPasswordView-vPMSx22g.js.map → ForgotMyPasswordView-D_90K80j.js.map} +1 -1
  18. package/dist/assets/{MainHeader-DedFNVir.js → MainHeader-BYoa1H_e.js} +2 -2
  19. package/dist/assets/{MainHeader-DedFNVir.js.map → MainHeader-BYoa1H_e.js.map} +1 -1
  20. package/dist/assets/{MainSidebar-BNq07OnD.js → MainSidebar-BNsdraIv.js} +2 -2
  21. package/dist/assets/{MainSidebar-BNq07OnD.js.map → MainSidebar-BNsdraIv.js.map} +1 -1
  22. package/dist/assets/{NodeCreation-C0AAIhNs.js → NodeCreation-R9yLdNU1.js} +3 -3
  23. package/dist/assets/{NodeCreation-C0AAIhNs.js.map → NodeCreation-R9yLdNU1.js.map} +1 -1
  24. package/dist/assets/{NodeCreator-ESjCn1LZ.js → NodeCreator-CLzfNOJ5.js} +2 -2
  25. package/dist/assets/{NodeCreator-ESjCn1LZ.js.map → NodeCreator-CLzfNOJ5.js.map} +1 -1
  26. package/dist/assets/{NodeList-baCRAzNs.js → NodeList-B4yRfzDq.js} +2 -2
  27. package/dist/assets/{NodeList-baCRAzNs.js.map → NodeList-B4yRfzDq.js.map} +1 -1
  28. package/dist/assets/{NodeView-BucVYztm.js → NodeView-BGtpd_Bb.js} +4 -4
  29. package/dist/assets/{NodeView-BucVYztm.js.map → NodeView-BGtpd_Bb.js.map} +1 -1
  30. package/dist/assets/{NodeView.v2-Oz2vwdfG.js → NodeView.v2-DnTCsiDE.js} +3 -3
  31. package/dist/assets/{NodeView.v2-Oz2vwdfG.js.map → NodeView.v2-DnTCsiDE.js.map} +1 -1
  32. package/dist/assets/{ProjectCardBadge.vue_vue_type_script_setup_true_lang-BRGRmswR.js → ProjectCardBadge.vue_vue_type_script_setup_true_lang-CYFr8_zj.js} +2 -2
  33. package/dist/assets/{ProjectCardBadge.vue_vue_type_script_setup_true_lang-BRGRmswR.js.map → ProjectCardBadge.vue_vue_type_script_setup_true_lang-CYFr8_zj.js.map} +1 -1
  34. package/dist/assets/{ProjectSettings-D3FAGvAm.js → ProjectSettings-kayD4yS7.js} +2 -2
  35. package/dist/assets/{ProjectSettings-D3FAGvAm.js.map → ProjectSettings-kayD4yS7.js.map} +1 -1
  36. package/dist/assets/{ProjectTabs-B_U7Q16t.js → ProjectTabs-1jmisSQb.js} +2 -2
  37. package/dist/assets/{ProjectTabs-B_U7Q16t.js.map → ProjectTabs-1jmisSQb.js.map} +1 -1
  38. package/dist/assets/{PushConnectionTracker-DQVvJ6kh.js → PushConnectionTracker-Dfvjg1ts.js} +2 -2
  39. package/dist/assets/{PushConnectionTracker-DQVvJ6kh.js.map → PushConnectionTracker-Dfvjg1ts.js.map} +1 -1
  40. package/dist/assets/{ResourcesListLayout-CfzMCzp5.js → ResourcesListLayout-BOYOLez8.js} +2 -2
  41. package/dist/assets/{ResourcesListLayout-CfzMCzp5.js.map → ResourcesListLayout-BOYOLez8.js.map} +1 -1
  42. package/dist/assets/{RunDataAi-CwnKkFZ1.js → RunDataAi-CFKU0i2R.js} +2 -2
  43. package/dist/assets/{RunDataAi-CwnKkFZ1.js.map → RunDataAi-CFKU0i2R.js.map} +1 -1
  44. package/dist/assets/{RunDataJson-DTMT_R5P.js → RunDataJson-DHI409Ix.js} +3 -3
  45. package/dist/assets/{RunDataJson-DTMT_R5P.js.map → RunDataJson-DHI409Ix.js.map} +1 -1
  46. package/dist/assets/{RunDataJsonActions-dNlM_YO3.js → RunDataJsonActions-LAsoJBBD.js} +2 -2
  47. package/dist/assets/{RunDataJsonActions-dNlM_YO3.js.map → RunDataJsonActions-LAsoJBBD.js.map} +1 -1
  48. package/dist/assets/{RunDataSchema-D7rSFQ4v.js → RunDataSchema-CgYDgOLN.js} +2 -2
  49. package/dist/assets/{RunDataSchema-D7rSFQ4v.js.map → RunDataSchema-CgYDgOLN.js.map} +1 -1
  50. package/dist/assets/{RunDataSearch-BLxgvPWc.js → RunDataSearch-ZJd98FoH.js} +2 -2
  51. package/dist/assets/{RunDataSearch-BLxgvPWc.js.map → RunDataSearch-ZJd98FoH.js.map} +1 -1
  52. package/dist/assets/{RunDataTable-CTYOMGVf.js → RunDataTable-IMqti3UV.js} +2 -2
  53. package/dist/assets/{RunDataTable-CTYOMGVf.js.map → RunDataTable-IMqti3UV.js.map} +1 -1
  54. package/dist/assets/{SamlOnboarding-B0SKUJ7w.js → SamlOnboarding-6S1cZAZQ.js} +2 -2
  55. package/dist/assets/{SamlOnboarding-B0SKUJ7w.js.map → SamlOnboarding-6S1cZAZQ.js.map} +1 -1
  56. package/dist/assets/{SettingsApiView-04CpGWS3.js → SettingsApiView-DzACRdqO.js} +2 -2
  57. package/dist/assets/{SettingsApiView-04CpGWS3.js.map → SettingsApiView-DzACRdqO.js.map} +1 -1
  58. package/dist/assets/{SettingsCommunityNodesView-CNryAAn3.js → SettingsCommunityNodesView-DI8tm65K.js} +2 -2
  59. package/dist/assets/{SettingsCommunityNodesView-CNryAAn3.js.map → SettingsCommunityNodesView-DI8tm65K.js.map} +1 -1
  60. package/dist/assets/{SettingsExternalSecrets-B39P4p2-.js → SettingsExternalSecrets-DFb1WNlI.js} +2 -2
  61. package/dist/assets/{SettingsExternalSecrets-B39P4p2-.js.map → SettingsExternalSecrets-DFb1WNlI.js.map} +1 -1
  62. package/dist/assets/{SettingsFakeDoorView-BOQAY92v.js → SettingsFakeDoorView-CDAZibIu.js} +2 -2
  63. package/dist/assets/{SettingsFakeDoorView-BOQAY92v.js.map → SettingsFakeDoorView-CDAZibIu.js.map} +1 -1
  64. package/dist/assets/{SettingsLdapView-VTF-EB0a.js → SettingsLdapView-yXjpScE1.js} +2 -2
  65. package/dist/assets/{SettingsLdapView-VTF-EB0a.js.map → SettingsLdapView-yXjpScE1.js.map} +1 -1
  66. package/dist/assets/{SettingsLogStreamingView-JsodKkoJ.js → SettingsLogStreamingView-DQTUJczt.js} +2 -2
  67. package/dist/assets/{SettingsLogStreamingView-JsodKkoJ.js.map → SettingsLogStreamingView-DQTUJczt.js.map} +1 -1
  68. package/dist/assets/{SettingsPersonalView-DxQ-hHrk.js → SettingsPersonalView-CYfSdpu7.js} +2 -2
  69. package/dist/assets/{SettingsPersonalView-DxQ-hHrk.js.map → SettingsPersonalView-CYfSdpu7.js.map} +1 -1
  70. package/dist/assets/{SettingsSourceControl-aqaWVYCl.js → SettingsSourceControl-SrxQOR5H.js} +2 -2
  71. package/dist/assets/{SettingsSourceControl-aqaWVYCl.js.map → SettingsSourceControl-SrxQOR5H.js.map} +1 -1
  72. package/dist/assets/{SettingsSso-Chwn0xrx.js → SettingsSso-DrB162SI.js} +2 -2
  73. package/dist/assets/{SettingsSso-Chwn0xrx.js.map → SettingsSso-DrB162SI.js.map} +1 -1
  74. package/dist/assets/{SettingsUsageAndPlan-CIj5SQKn.js → SettingsUsageAndPlan-vOGNFMVq.js} +2 -2
  75. package/dist/assets/{SettingsUsageAndPlan-CIj5SQKn.js.map → SettingsUsageAndPlan-vOGNFMVq.js.map} +1 -1
  76. package/dist/assets/{SettingsUsersView-CY4kSRaG.js → SettingsUsersView-Tx1-g18F.js} +2 -2
  77. package/dist/assets/{SettingsUsersView-CY4kSRaG.js.map → SettingsUsersView-Tx1-g18F.js.map} +1 -1
  78. package/dist/assets/{SettingsView-jgK3_oOB.js → SettingsView-BOZ2SBsQ.js} +2 -2
  79. package/dist/assets/{SettingsView-jgK3_oOB.js.map → SettingsView-BOZ2SBsQ.js.map} +1 -1
  80. package/dist/assets/{SetupView-O6xv77jO.js → SetupView-DY7tVzgF.js} +2 -2
  81. package/dist/assets/{SetupView-O6xv77jO.js.map → SetupView-DY7tVzgF.js.map} +1 -1
  82. package/dist/assets/{SetupWorkflowCredentialsButton-oGzzXD7H.js → SetupWorkflowCredentialsButton-B9Acgowu.js} +2 -2
  83. package/dist/assets/{SetupWorkflowCredentialsButton-oGzzXD7H.js.map → SetupWorkflowCredentialsButton-B9Acgowu.js.map} +1 -1
  84. package/dist/assets/{SetupWorkflowFromTemplateView-BDUp9JWx.js → SetupWorkflowFromTemplateView-C2E8A8g4.js} +2 -2
  85. package/dist/assets/{SetupWorkflowFromTemplateView-BDUp9JWx.js.map → SetupWorkflowFromTemplateView-C2E8A8g4.js.map} +1 -1
  86. package/dist/assets/{SigninView-BLgTm7p4.js → SigninView-DlT1Bv9l.js} +2 -2
  87. package/dist/assets/{SigninView-BLgTm7p4.js.map → SigninView-DlT1Bv9l.js.map} +1 -1
  88. package/dist/assets/{SignoutView-DFSKFmE2.js → SignoutView-DisgJoQS.js} +2 -2
  89. package/dist/assets/{SignoutView-DFSKFmE2.js.map → SignoutView-DisgJoQS.js.map} +1 -1
  90. package/dist/assets/{SignupView-DSmDdbRA.js → SignupView-CQZSGNCi.js} +2 -2
  91. package/dist/assets/{SignupView-DSmDdbRA.js.map → SignupView-CQZSGNCi.js.map} +1 -1
  92. package/dist/assets/{TemplateDetails-DW6dTHAk.js → TemplateDetails-DZzMxROe.js} +2 -2
  93. package/dist/assets/{TemplateDetails-DW6dTHAk.js.map → TemplateDetails-DZzMxROe.js.map} +1 -1
  94. package/dist/assets/{TemplateList-DHLgDv5f.js → TemplateList-DS0lnbxA.js} +2 -2
  95. package/dist/assets/{TemplateList-DHLgDv5f.js.map → TemplateList-DS0lnbxA.js.map} +1 -1
  96. package/dist/assets/{TemplatesCollectionView-Bix3khnw.js → TemplatesCollectionView-BMck3jn9.js} +2 -2
  97. package/dist/assets/{TemplatesCollectionView-Bix3khnw.js.map → TemplatesCollectionView-BMck3jn9.js.map} +1 -1
  98. package/dist/assets/{TemplatesInfoCarousel-B3u16wII.js → TemplatesInfoCarousel-BYIB7MKZ.js} +2 -2
  99. package/dist/assets/{TemplatesInfoCarousel-B3u16wII.js.map → TemplatesInfoCarousel-BYIB7MKZ.js.map} +1 -1
  100. package/dist/assets/{TemplatesSearchView-CvtrqPXg.js → TemplatesSearchView-aVpZ2G9F.js} +2 -2
  101. package/dist/assets/{TemplatesSearchView-CvtrqPXg.js.map → TemplatesSearchView-aVpZ2G9F.js.map} +1 -1
  102. package/dist/assets/{TemplatesView-DuT3R1EI.js → TemplatesView-CuyRlzAM.js} +2 -2
  103. package/dist/assets/{TemplatesView-DuT3R1EI.js.map → TemplatesView-CuyRlzAM.js.map} +1 -1
  104. package/dist/assets/{TemplatesWorkflowView-C_-zPrQW.js → TemplatesWorkflowView-DAa2SCYE.js} +2 -2
  105. package/dist/assets/{TemplatesWorkflowView-C_-zPrQW.js.map → TemplatesWorkflowView-DAa2SCYE.js.map} +1 -1
  106. package/dist/assets/{VariablesView-CMrDg4Fx.js → VariablesView-57BdyEmO.js} +2 -2
  107. package/dist/assets/{VariablesView-CMrDg4Fx.js.map → VariablesView-57BdyEmO.js.map} +1 -1
  108. package/dist/assets/{WorkerView-BcfdfxOO.js → WorkerView-BLv_CYeM.js} +2 -2
  109. package/dist/assets/{WorkerView-BcfdfxOO.js.map → WorkerView-BLv_CYeM.js.map} +1 -1
  110. package/dist/assets/{WorkflowActivator-BiqeeeBc.js → WorkflowActivator-WjfZFpnK.js} +2 -2
  111. package/dist/assets/{WorkflowActivator-BiqeeeBc.js.map → WorkflowActivator-WjfZFpnK.js.map} +1 -1
  112. package/dist/assets/{WorkflowExecutionsInfoAccordion-CITQoihQ.js → WorkflowExecutionsInfoAccordion-Dv9rbNek.js} +2 -2
  113. package/dist/assets/{WorkflowExecutionsInfoAccordion-CITQoihQ.js.map → WorkflowExecutionsInfoAccordion-Dv9rbNek.js.map} +1 -1
  114. package/dist/assets/{WorkflowExecutionsLandingPage-CnHdLYgR.js → WorkflowExecutionsLandingPage-CsbJPayv.js} +2 -2
  115. package/dist/assets/{WorkflowExecutionsLandingPage-CnHdLYgR.js.map → WorkflowExecutionsLandingPage-CsbJPayv.js.map} +1 -1
  116. package/dist/assets/{WorkflowExecutionsPreview-By0_k6NX.js → WorkflowExecutionsPreview-xxP83pWI.js} +2 -2
  117. package/dist/assets/{WorkflowExecutionsPreview-By0_k6NX.js.map → WorkflowExecutionsPreview-xxP83pWI.js.map} +1 -1
  118. package/dist/assets/WorkflowExecutionsView-c7NCTwks.js +2 -0
  119. package/dist/assets/WorkflowExecutionsView-c7NCTwks.js.map +1 -0
  120. package/dist/assets/{WorkflowHistory-C5ALmvoB.js → WorkflowHistory-DI6sDGlZ.js} +2 -2
  121. package/dist/assets/{WorkflowHistory-C5ALmvoB.js.map → WorkflowHistory-DI6sDGlZ.js.map} +1 -1
  122. package/dist/assets/{WorkflowOnboardingView-hQxsQlm1.js → WorkflowOnboardingView-DVqrTjM4.js} +2 -2
  123. package/dist/assets/{WorkflowOnboardingView-hQxsQlm1.js.map → WorkflowOnboardingView-DVqrTjM4.js.map} +1 -1
  124. package/dist/assets/{WorkflowsView-TF6zcpi6.js → WorkflowsView-DpB66gWH.js} +2 -2
  125. package/dist/assets/{WorkflowsView-TF6zcpi6.js.map → WorkflowsView-DpB66gWH.js.map} +1 -1
  126. package/dist/assets/{cloud-CZc2nauc.js → cloud-bM1gshor.js} +2 -2
  127. package/dist/assets/{cloud-CZc2nauc.js.map → cloud-bM1gshor.js.map} +1 -1
  128. package/dist/assets/{collaboration.store-BkSXOsR4.js → collaboration.store-Ct7EpGqG.js} +2 -2
  129. package/dist/assets/{collaboration.store-BkSXOsR4.js.map → collaboration.store-Ct7EpGqG.js.map} +1 -1
  130. package/dist/assets/{index-CY2ZfL2U.js → index-BQ6Z7VRj.js} +4 -4
  131. package/dist/assets/{index-CY2ZfL2U.js.map → index-BQ6Z7VRj.js.map} +1 -1
  132. package/dist/assets/{nodeCreator.store-CmYeJsEL.js → nodeCreator.store-DAcGJEHy.js} +2 -2
  133. package/dist/assets/{nodeCreator.store-CmYeJsEL.js.map → nodeCreator.store-DAcGJEHy.js.map} +1 -1
  134. package/dist/assets/{templateActions-DvpFnju7.js → templateActions-F64sfZ3n.js} +2 -2
  135. package/dist/assets/{templateActions-DvpFnju7.js.map → templateActions-F64sfZ3n.js.map} +1 -1
  136. package/dist/assets/{useExecutionDebugging-6-sjTvWS.js → useExecutionDebugging-DuMp5DdQ.js} +2 -2
  137. package/dist/assets/{useExecutionDebugging-6-sjTvWS.js.map → useExecutionDebugging-DuMp5DdQ.js.map} +1 -1
  138. package/dist/assets/{useExecutionHelpers-BZpwMJs_.js → useExecutionHelpers-Dt-UJW97.js} +2 -2
  139. package/dist/assets/{useExecutionHelpers-BZpwMJs_.js.map → useExecutionHelpers-Dt-UJW97.js.map} +1 -1
  140. package/dist/assets/{usePushConnection-DI_JaC-X.js → usePushConnection-Kek6sJ0j.js} +2 -2
  141. package/dist/assets/{usePushConnection-DI_JaC-X.js.map → usePushConnection-Kek6sJ0j.js.map} +1 -1
  142. package/dist/assets/{useViewStacks-D-hnVv3F.js → useViewStacks-CSn_e3gA.js} +2 -2
  143. package/dist/assets/{useViewStacks-D-hnVv3F.js.map → useViewStacks-CSn_e3gA.js.map} +1 -1
  144. package/dist/assets/{useWorkflowActivate-lrYalAwm.js → useWorkflowActivate-Bl43vPgP.js} +2 -2
  145. package/dist/assets/{useWorkflowActivate-lrYalAwm.js.map → useWorkflowActivate-Bl43vPgP.js.map} +1 -1
  146. package/dist/index.html +1 -1
  147. package/package.json +1 -1
  148. package/dist/assets/CollectionParameter-CiMzJaXg.js.map +0 -1
  149. package/dist/assets/WorkflowExecutionsView-fiAM1R-f.js +0 -2
  150. package/dist/assets/WorkflowExecutionsView-fiAM1R-f.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"mappings":"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","names":["useActions","nodeCreatorStore","useNodeCreatorStore","i18n","useI18n","singleNodeOpenSources","NODE_CREATOR_OPEN_SOURCES","actionsCategoryLocales","computed","getPlaceholderTriggerActions","subcategory","nodes","WEBHOOK_NODE_TYPE","SCHEDULE_TRIGGER_NODE_TYPE","node","n","transformed","transformNodeType","localeKey","overwriteLocale","filterActionsCategory","items","category","item","injectActionsLabels","extendedActions","sortNodeCreateElements","labelsSet","action","label","_b","_a","firstIndexMap","i","_d","_c","insertedLabels","newLabel","insertIndex","parseCategoryActions","actions","withLabels","filteredActions","getActionData","actionItem","displayOptions","displayConditions","acc","showCondition","shouldConnectWithExistingTrigger","addedNodes","useNodeTypesStore","shouldPrependManualTrigger","selectedView","openSource","workflowTriggerNodes","useWorkflowsStore","hasTrigger","workflowContainsTrigger","isTriggerPanel","TRIGGER_NODE_CREATOR_VIEW","onlyStickyNodes","STICKY_NODE_TYPE","shouldPrependChatTrigger","allNodes","COMPATIBLE_CHAT_NODES","QA_CHAIN_NODE_TYPE","AGENT_NODE_TYPE","BASIC_CHAIN_NODE_TYPE","OPEN_AI_ASSISTANT_NODE_TYPE","OPEN_AI_NODE_MESSAGE_ASSISTANT_TYPE","isChatTriggerMissing","MANUAL_CHAT_TRIGGER_NODE_TYPE","CHAT_TRIGGER_NODE_TYPE","getAddedNodesAndConnections","connections","nodeToAutoOpen","MANUAL_TRIGGER_NODE_TYPE","index","OPEN_AI_NODE_TYPE","SPLIT_IN_BATCHES_NODE_TYPE","splitInBatchesIndex","noOpIndex","NO_OP_NODE_TYPE","setAddedNodeActionParameters","telemetry","rootView","onWorkflowStoreAction","storeWatcher","name","after","setLastNodeParameters","args","trackActionSelected","payload","useExternalHooks","NodeCreator","defineAsyncComponent","__vitePreload","props","__props","emit","__emit","state","reactive","uiStore","useUIStore","onCreateMenuHoverIn","mouseinEvent","buttonsWrapper","moveCallback","mousemoveEvent","wrapperBounds","wrapperH","wrapperW","wrapperLeftNear","wrapperLeftFar","wrapperTopNear","wrapperTopFar","openNodeCreator","addStickyNote","offset","position","getMidCanvasPosition","DEFAULT_STICKY_WIDTH","DEFAULT_STICKY_HEIGHT","closeNodeCreator","nodeTypeSelected","nodeTypes","type"],"ignoreList":[],"sources":["../../src/components/Node/NodeCreator/composables/useActions.ts","../../src/components/Node/NodeCreation.vue"],"sourcesContent":["import { computed } from 'vue';\nimport type { IDataObject, INodeParameters } from 'n8n-workflow';\nimport type {\n\tActionTypeDescription,\n\tAddedNode,\n\tAddedNodeConnection,\n\tAddedNodesAndConnections,\n\tINodeCreateElement,\n\tIUpdateInformation,\n\tLabelCreateElement,\n} from '@/Interface';\nimport {\n\tAGENT_NODE_TYPE,\n\tBASIC_CHAIN_NODE_TYPE,\n\tCHAT_TRIGGER_NODE_TYPE,\n\tMANUAL_CHAT_TRIGGER_NODE_TYPE,\n\tMANUAL_TRIGGER_NODE_TYPE,\n\tNODE_CREATOR_OPEN_SOURCES,\n\tNO_OP_NODE_TYPE,\n\tOPEN_AI_ASSISTANT_NODE_TYPE,\n\tOPEN_AI_NODE_MESSAGE_ASSISTANT_TYPE,\n\tOPEN_AI_NODE_TYPE,\n\tQA_CHAIN_NODE_TYPE,\n\tSCHEDULE_TRIGGER_NODE_TYPE,\n\tSPLIT_IN_BATCHES_NODE_TYPE,\n\tSTICKY_NODE_TYPE,\n\tTRIGGER_NODE_CREATOR_VIEW,\n\tWEBHOOK_NODE_TYPE,\n} from '@/constants';\n\nimport type { BaseTextKey } from '@/plugins/i18n';\nimport type { Telemetry } from '@/plugins/telemetry';\nimport { useNodeCreatorStore } from '@/stores/nodeCreator.store';\nimport { useWorkflowsStore } from '@/stores/workflows.store';\nimport { useNodeTypesStore } from '@/stores/nodeTypes.store';\nimport { useExternalHooks } from '@/composables/useExternalHooks';\n\nimport { sortNodeCreateElements, transformNodeType } from '../utils';\nimport { useI18n } from '@/composables/useI18n';\n\nexport const useActions = () => {\n\tconst nodeCreatorStore = useNodeCreatorStore();\n\tconst i18n = useI18n();\n\n\tconst singleNodeOpenSources = [\n\t\tNODE_CREATOR_OPEN_SOURCES.PLUS_ENDPOINT,\n\t\tNODE_CREATOR_OPEN_SOURCES.NODE_CONNECTION_ACTION,\n\t\tNODE_CREATOR_OPEN_SOURCES.NODE_CONNECTION_DROP,\n\t];\n\n\tconst actionsCategoryLocales = computed(() => {\n\t\treturn {\n\t\t\tactions: i18n.baseText('nodeCreator.actionsCategory.actions') ?? '',\n\t\t\ttriggers: i18n.baseText('nodeCreator.actionsCategory.triggers') ?? '',\n\t\t};\n\t});\n\n\tfunction getPlaceholderTriggerActions(subcategory: string) {\n\t\tconst nodes = [WEBHOOK_NODE_TYPE, SCHEDULE_TRIGGER_NODE_TYPE];\n\n\t\tconst matchedNodeTypes = nodeCreatorStore.mergedNodes\n\t\t\t.filter((node) => nodes.some((n) => n === node.name))\n\t\t\t.map((node) => {\n\t\t\t\tconst transformed = transformNodeType(node, subcategory, 'action');\n\n\t\t\t\tif (transformed.type === 'action') {\n\t\t\t\t\tconst nameBase = node.name.replace('n8n-nodes-base.', '');\n\t\t\t\t\tconst localeKey = `nodeCreator.actionsPlaceholderNode.${nameBase}` as BaseTextKey;\n\t\t\t\t\tconst overwriteLocale = i18n.baseText(localeKey);\n\n\t\t\t\t\t// If the locale key is not the same as the node name, it means it contain a translation\n\t\t\t\t\t// and we should use it\n\t\t\t\t\tif (overwriteLocale !== localeKey) {\n\t\t\t\t\t\ttransformed.properties.displayName = overwriteLocale;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn transformed;\n\t\t\t});\n\n\t\treturn matchedNodeTypes;\n\t}\n\n\tfunction filterActionsCategory(items: INodeCreateElement[], category: string) {\n\t\treturn items.filter(\n\t\t\t(item) => item.type === 'action' && item.properties.codex.categories.includes(category),\n\t\t);\n\t}\n\n\tfunction injectActionsLabels(items: INodeCreateElement[]): INodeCreateElement[] {\n\t\tconst extendedActions = sortNodeCreateElements([...items]);\n\t\tconst labelsSet = new Set<string>();\n\n\t\t// Collect unique labels\n\t\tfor (const action of extendedActions) {\n\t\t\tif (action.type !== 'action') continue;\n\t\t\tconst label = action.properties?.codex?.label;\n\t\t\tlabelsSet.add(label);\n\t\t}\n\n\t\tif (labelsSet.size <= 1) return extendedActions;\n\n\t\t// Create a map to store the first index of each label\n\t\tconst firstIndexMap = new Map<string, number>();\n\n\t\t// Iterate through the extendedActions to find the first index of each label\n\t\tfor (let i = 0; i < extendedActions.length; i++) {\n\t\t\tconst action = extendedActions[i];\n\t\t\tif (action.type !== 'action') continue;\n\t\t\tconst label = action.properties?.codex?.label;\n\t\t\tif (!firstIndexMap.has(label)) {\n\t\t\t\tfirstIndexMap.set(label, i);\n\t\t\t}\n\t\t}\n\n\t\t// Keep track of the number of inserted labels\n\t\tlet insertedLabels = 0;\n\n\t\t// Create and insert new label objects at the first index of each label\n\t\tfor (const label of labelsSet) {\n\t\t\tconst newLabel: LabelCreateElement = {\n\t\t\t\tuuid: label,\n\t\t\t\ttype: 'label',\n\t\t\t\tkey: label,\n\t\t\t\tsubcategory: extendedActions[0].key,\n\t\t\t\tproperties: {\n\t\t\t\t\tkey: label,\n\t\t\t\t},\n\t\t\t};\n\n\t\t\tconst insertIndex = firstIndexMap.get(label);\n\t\t\tif (insertIndex !== undefined) {\n\t\t\t\textendedActions.splice(insertIndex + insertedLabels, 0, newLabel);\n\t\t\t\tinsertedLabels++;\n\t\t\t}\n\t\t}\n\n\t\treturn extendedActions;\n\t}\n\n\tfunction parseCategoryActions(\n\t\tactions: INodeCreateElement[],\n\t\tcategory: string,\n\t\twithLabels = true,\n\t) {\n\t\tconst filteredActions = filterActionsCategory(actions, category);\n\t\tif (withLabels) return injectActionsLabels(filteredActions);\n\t\treturn filteredActions;\n\t}\n\n\tfunction getActionData(actionItem: ActionTypeDescription): IUpdateInformation {\n\t\tconst displayOptions = actionItem.displayOptions;\n\n\t\tconst displayConditions = Object.keys(displayOptions?.show ?? {}).reduce(\n\t\t\t(acc: IDataObject, showCondition: string) => {\n\t\t\t\tacc[showCondition] = displayOptions?.show?.[showCondition]?.[0];\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t{},\n\t\t);\n\n\t\treturn {\n\t\t\tname: actionItem.displayName,\n\t\t\tkey: actionItem.name,\n\t\t\tvalue: { ...actionItem.values, ...displayConditions } as INodeParameters,\n\t\t};\n\t}\n\n\t/**\n\t * Checks if added nodes contain trigger followed by another node\n\t * In this case, we should connect the trigger with the following node\n\t */\n\tfunction shouldConnectWithExistingTrigger(addedNodes: AddedNode[]): boolean {\n\t\tif (addedNodes.length === 2) {\n\t\t\tconst isTriggerNode = useNodeTypesStore().isTriggerNode(addedNodes[0].type);\n\t\t\treturn isTriggerNode;\n\t\t}\n\t\treturn false;\n\t}\n\n\tfunction shouldPrependManualTrigger(addedNodes: AddedNode[]): boolean {\n\t\tconst { selectedView, openSource } = useNodeCreatorStore();\n\t\tconst { workflowTriggerNodes } = useWorkflowsStore();\n\t\tconst hasTrigger = addedNodes.some((node) => useNodeTypesStore().isTriggerNode(node.type));\n\t\tconst workflowContainsTrigger = workflowTriggerNodes.length > 0;\n\t\tconst isTriggerPanel = selectedView === TRIGGER_NODE_CREATOR_VIEW;\n\t\tconst onlyStickyNodes = addedNodes.every((node) => node.type === STICKY_NODE_TYPE);\n\n\t\t// If the node creator was opened from the plus endpoint, node connection action, or node connection drop\n\t\t// then we do not want to append the manual trigger\n\t\tconst isSingleNodeOpenSource = singleNodeOpenSources.includes(openSource);\n\t\treturn (\n\t\t\t!isSingleNodeOpenSource &&\n\t\t\t!hasTrigger &&\n\t\t\t!workflowContainsTrigger &&\n\t\t\tisTriggerPanel &&\n\t\t\t!onlyStickyNodes\n\t\t);\n\t}\n\tfunction shouldPrependChatTrigger(addedNodes: AddedNode[]): boolean {\n\t\tconst { allNodes } = useWorkflowsStore();\n\n\t\tconst COMPATIBLE_CHAT_NODES = [\n\t\t\tQA_CHAIN_NODE_TYPE,\n\t\t\tAGENT_NODE_TYPE,\n\t\t\tBASIC_CHAIN_NODE_TYPE,\n\t\t\tOPEN_AI_ASSISTANT_NODE_TYPE,\n\t\t\tOPEN_AI_NODE_MESSAGE_ASSISTANT_TYPE,\n\t\t];\n\n\t\tconst isChatTriggerMissing =\n\t\t\tallNodes.find((node) =>\n\t\t\t\t[MANUAL_CHAT_TRIGGER_NODE_TYPE, CHAT_TRIGGER_NODE_TYPE].includes(node.type),\n\t\t\t) === undefined;\n\t\tconst isCompatibleNode = addedNodes.some((node) => COMPATIBLE_CHAT_NODES.includes(node.type));\n\n\t\treturn isCompatibleNode && isChatTriggerMissing;\n\t}\n\n\tfunction getAddedNodesAndConnections(addedNodes: AddedNode[]): AddedNodesAndConnections {\n\t\tif (addedNodes.length === 0) {\n\t\t\treturn { nodes: [], connections: [] };\n\t\t}\n\n\t\tconst nodes: AddedNode[] = [];\n\t\tconst connections: AddedNodeConnection[] = [];\n\n\t\tconst nodeToAutoOpen = addedNodes.find((node) => node.type !== MANUAL_TRIGGER_NODE_TYPE);\n\n\t\tif (nodeToAutoOpen) {\n\t\t\tnodeToAutoOpen.openDetail = true;\n\t\t}\n\n\t\tif (shouldPrependChatTrigger(addedNodes)) {\n\t\t\taddedNodes.unshift({ type: CHAT_TRIGGER_NODE_TYPE, isAutoAdd: true });\n\t\t\tconnections.push({\n\t\t\t\tfrom: { nodeIndex: 0 },\n\t\t\t\tto: { nodeIndex: 1 },\n\t\t\t});\n\t\t} else if (shouldPrependManualTrigger(addedNodes)) {\n\t\t\taddedNodes.unshift({ type: MANUAL_TRIGGER_NODE_TYPE, isAutoAdd: true });\n\t\t\tconnections.push({\n\t\t\t\tfrom: { nodeIndex: 0 },\n\t\t\t\tto: { nodeIndex: 1 },\n\t\t\t});\n\t\t} else if (shouldConnectWithExistingTrigger(addedNodes)) {\n\t\t\tconnections.push({\n\t\t\t\tfrom: { nodeIndex: 0 },\n\t\t\t\tto: { nodeIndex: 1 },\n\t\t\t});\n\t\t}\n\n\t\taddedNodes.forEach((node, index) => {\n\t\t\tif (node.type === OPEN_AI_NODE_MESSAGE_ASSISTANT_TYPE) {\n\t\t\t\tnode.type = OPEN_AI_NODE_TYPE;\n\t\t\t}\n\n\t\t\tnodes.push(node);\n\n\t\t\tswitch (node.type) {\n\t\t\t\tcase SPLIT_IN_BATCHES_NODE_TYPE: {\n\t\t\t\t\tconst splitInBatchesIndex = index;\n\t\t\t\t\tconst noOpIndex = splitInBatchesIndex + 1;\n\t\t\t\t\tnodes.push({\n\t\t\t\t\t\ttype: NO_OP_NODE_TYPE,\n\t\t\t\t\t\tisAutoAdd: true,\n\t\t\t\t\t\tname: i18n.baseText('nodeView.replaceMe'),\n\t\t\t\t\t});\n\t\t\t\t\tconnections.push(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfrom: { nodeIndex: splitInBatchesIndex, outputIndex: 1 },\n\t\t\t\t\t\t\tto: { nodeIndex: noOpIndex },\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfrom: { nodeIndex: noOpIndex },\n\t\t\t\t\t\t\tto: { nodeIndex: splitInBatchesIndex },\n\t\t\t\t\t\t},\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treturn { nodes, connections };\n\t}\n\n\t// Hook into addNode action to set the last node parameters & track the action selected\n\tfunction setAddedNodeActionParameters(\n\t\taction: IUpdateInformation,\n\t\ttelemetry?: Telemetry,\n\t\trootView = '',\n\t) {\n\t\tconst { $onAction: onWorkflowStoreAction } = useWorkflowsStore();\n\t\tconst storeWatcher = onWorkflowStoreAction(\n\t\t\t({ name, after, store: { setLastNodeParameters }, args }) => {\n\t\t\t\tif (name !== 'addNode' || args[0].type !== action.key) return;\n\t\t\t\tafter(() => {\n\t\t\t\t\tsetLastNodeParameters(action);\n\t\t\t\t\tif (telemetry) trackActionSelected(action, telemetry, rootView);\n\t\t\t\t\t// Unsubscribe from the store watcher\n\t\t\t\t\tstoreWatcher();\n\t\t\t\t});\n\t\t\t},\n\t\t);\n\n\t\treturn storeWatcher;\n\t}\n\n\tfunction trackActionSelected(action: IUpdateInformation, telemetry: Telemetry, rootView: string) {\n\t\tconst payload = {\n\t\t\tnode_type: action.key,\n\t\t\taction: action.name,\n\t\t\tsource_mode: rootView.toLowerCase(),\n\t\t\tresource: (action.value as INodeParameters).resource || '',\n\t\t};\n\t\tvoid useExternalHooks().run('nodeCreateList.addAction', payload);\n\t\ttelemetry?.trackNodesPanel('nodeCreateList.addAction', payload);\n\t}\n\n\treturn {\n\t\tactionsCategoryLocales,\n\t\tgetPlaceholderTriggerActions,\n\t\tparseCategoryActions,\n\t\tgetAddedNodesAndConnections,\n\t\tgetActionData,\n\t\tsetAddedNodeActionParameters,\n\t};\n};\n","<script setup lang=\"ts\">\nimport { defineAsyncComponent, reactive } from 'vue';\nimport { getMidCanvasPosition } from '@/utils/nodeViewUtils';\nimport {\n\tDEFAULT_STICKY_HEIGHT,\n\tDEFAULT_STICKY_WIDTH,\n\tNODE_CREATOR_OPEN_SOURCES,\n\tSTICKY_NODE_TYPE,\n} from '@/constants';\nimport { useUIStore } from '@/stores/ui.store';\nimport type { AddedNodesAndConnections, ToggleNodeCreatorOptions } from '@/Interface';\nimport { useActions } from './NodeCreator/composables/useActions';\nimport KeyboardShortcutTooltip from '@/components/KeyboardShortcutTooltip.vue';\n\ntype Props = {\n\tnodeViewScale: number;\n\tcreateNodeActive?: boolean;\n};\n\n// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\nconst NodeCreator = defineAsyncComponent(\n\tasync () => await import('@/components/Node/NodeCreator/NodeCreator.vue'),\n);\n\nconst props = withDefaults(defineProps<Props>(), {\n\tcreateNodeActive: false,\n});\n\nconst emit = defineEmits<{\n\t(event: 'addNodes', value: AddedNodesAndConnections): void;\n\t(event: 'toggleNodeCreator', value: ToggleNodeCreatorOptions): void;\n}>();\n\nconst state = reactive({\n\tshowStickyButton: false,\n});\n\nconst uiStore = useUIStore();\n\nconst { getAddedNodesAndConnections } = useActions();\n\nfunction onCreateMenuHoverIn(mouseinEvent: MouseEvent) {\n\tconst buttonsWrapper = mouseinEvent.target as Element;\n\n\t// Once the popup menu is hovered, it's pointer events are disabled so it's not interfering with element underneath it.\n\tstate.showStickyButton = true;\n\tconst moveCallback = (mousemoveEvent: MouseEvent) => {\n\t\tif (buttonsWrapper) {\n\t\t\tconst wrapperBounds = buttonsWrapper.getBoundingClientRect();\n\t\t\tconst wrapperH = wrapperBounds.height;\n\t\t\tconst wrapperW = wrapperBounds.width;\n\t\t\tconst wrapperLeftNear = wrapperBounds.left;\n\t\t\tconst wrapperLeftFar = wrapperLeftNear + wrapperW;\n\t\t\tconst wrapperTopNear = wrapperBounds.top;\n\t\t\tconst wrapperTopFar = wrapperTopNear + wrapperH;\n\t\t\tconst inside =\n\t\t\t\tmousemoveEvent.pageX > wrapperLeftNear &&\n\t\t\t\tmousemoveEvent.pageX < wrapperLeftFar &&\n\t\t\t\tmousemoveEvent.pageY > wrapperTopNear &&\n\t\t\t\tmousemoveEvent.pageY < wrapperTopFar;\n\t\t\tif (!inside) {\n\t\t\t\tstate.showStickyButton = false;\n\t\t\t\tdocument.removeEventListener('mousemove', moveCallback, false);\n\t\t\t}\n\t\t}\n\t};\n\tdocument.addEventListener('mousemove', moveCallback, false);\n}\n\nfunction openNodeCreator() {\n\temit('toggleNodeCreator', {\n\t\tsource: NODE_CREATOR_OPEN_SOURCES.ADD_NODE_BUTTON,\n\t\tcreateNodeActive: true,\n\t});\n}\n\nfunction addStickyNote() {\n\tif (document.activeElement) {\n\t\t(document.activeElement as HTMLElement).blur();\n\t}\n\n\tconst offset: [number, number] = [...uiStore.nodeViewOffsetPosition];\n\n\tconst position = getMidCanvasPosition(props.nodeViewScale, offset);\n\tposition[0] -= DEFAULT_STICKY_WIDTH / 2;\n\tposition[1] -= DEFAULT_STICKY_HEIGHT / 2;\n\n\temit('addNodes', getAddedNodesAndConnections([{ type: STICKY_NODE_TYPE, position }]));\n}\n\nfunction closeNodeCreator() {\n\temit('toggleNodeCreator', { createNodeActive: false });\n}\n\nfunction nodeTypeSelected(nodeTypes: string[]) {\n\temit('addNodes', getAddedNodesAndConnections(nodeTypes.map((type) => ({ type }))));\n\tcloseNodeCreator();\n}\n</script>\n\n<template>\n\t<div>\n\t\t<div\n\t\t\tv-if=\"!createNodeActive\"\n\t\t\t:class=\"[$style.nodeButtonsWrapper, state.showStickyButton ? $style.noEvents : '']\"\n\t\t\t@mouseenter=\"onCreateMenuHoverIn\"\n\t\t>\n\t\t\t<div :class=\"$style.nodeCreatorButton\" data-test-id=\"node-creator-plus-button\">\n\t\t\t\t<KeyboardShortcutTooltip\n\t\t\t\t\t:label=\"$locale.baseText('nodeView.openNodesPanel')\"\n\t\t\t\t\t:shortcut=\"{ keys: ['Tab'] }\"\n\t\t\t\t\tplacement=\"left\"\n\t\t\t\t>\n\t\t\t\t\t<n8n-icon-button\n\t\t\t\t\t\tsize=\"xlarge\"\n\t\t\t\t\t\ticon=\"plus\"\n\t\t\t\t\t\ttype=\"tertiary\"\n\t\t\t\t\t\t:class=\"$style.nodeCreatorPlus\"\n\t\t\t\t\t\t@click=\"openNodeCreator\"\n\t\t\t\t\t/>\n\t\t\t\t</KeyboardShortcutTooltip>\n\t\t\t\t<div\n\t\t\t\t\t:class=\"[$style.addStickyButton, state.showStickyButton ? $style.visibleButton : '']\"\n\t\t\t\t\tdata-test-id=\"add-sticky-button\"\n\t\t\t\t\t@click=\"addStickyNote\"\n\t\t\t\t>\n\t\t\t\t\t<KeyboardShortcutTooltip\n\t\t\t\t\t\t:label=\"$locale.baseText('nodeView.addStickyHint')\"\n\t\t\t\t\t\t:shortcut=\"{ keys: ['s'], shiftKey: true }\"\n\t\t\t\t\t\tplacement=\"left\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<n8n-icon-button type=\"tertiary\" :icon=\"['far', 'note-sticky']\" />\n\t\t\t\t\t</KeyboardShortcutTooltip>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<Suspense>\n\t\t\t<NodeCreator\n\t\t\t\t:active=\"createNodeActive\"\n\t\t\t\t@node-type-selected=\"nodeTypeSelected\"\n\t\t\t\t@close-node-creator=\"closeNodeCreator\"\n\t\t\t/>\n\t\t</Suspense>\n\t</div>\n</template>\n\n<style lang=\"scss\" module>\n.nodeButtonsWrapper {\n\tposition: absolute;\n\twidth: 150px;\n\theight: 200px;\n\ttop: 0;\n\tright: 0;\n\tdisplay: flex;\n}\n\n.addStickyButton {\n\tmargin-top: var(--spacing-2xs);\n\topacity: 0;\n\ttransition: 0.1s;\n\ttransition-timing-function: linear;\n}\n\n.visibleButton {\n\topacity: 1;\n\tpointer-events: all;\n}\n\n.noEvents {\n\tpointer-events: none;\n}\n\n.nodeCreatorButton {\n\tposition: absolute;\n\ttext-align: center;\n\ttop: var(--spacing-l);\n\tright: var(--spacing-l);\n\tpointer-events: all !important;\n\n\tbutton {\n\t\tborder-color: var(--color-button-node-creator-border-font);\n\t\tcolor: var(--color-button-node-creator-border-font);\n\n\t\t&:hover {\n\t\t\tcolor: var(--color-button-node-creator-hover-font);\n\t\t\tborder-color: var(--color-button-node-creator-hover-border);\n\t\t\tbackground: var(--color-button-node-creator-background);\n\t\t}\n\t}\n}\n.nodeCreatorPlus {\n\tborder-width: 2px;\n\tborder-radius: var(--border-radius-base);\n\twidth: 36px;\n\theight: 36px;\n}\n</style>\n"],"file":"assets/NodeCreation-C0AAIhNs.js"}
1
+ {"version":3,"mappings":"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","names":["useActions","nodeCreatorStore","useNodeCreatorStore","i18n","useI18n","singleNodeOpenSources","NODE_CREATOR_OPEN_SOURCES","actionsCategoryLocales","computed","getPlaceholderTriggerActions","subcategory","nodes","WEBHOOK_NODE_TYPE","SCHEDULE_TRIGGER_NODE_TYPE","node","n","transformed","transformNodeType","localeKey","overwriteLocale","filterActionsCategory","items","category","item","injectActionsLabels","extendedActions","sortNodeCreateElements","labelsSet","action","label","_b","_a","firstIndexMap","i","_d","_c","insertedLabels","newLabel","insertIndex","parseCategoryActions","actions","withLabels","filteredActions","getActionData","actionItem","displayOptions","displayConditions","acc","showCondition","shouldConnectWithExistingTrigger","addedNodes","useNodeTypesStore","shouldPrependManualTrigger","selectedView","openSource","workflowTriggerNodes","useWorkflowsStore","hasTrigger","workflowContainsTrigger","isTriggerPanel","TRIGGER_NODE_CREATOR_VIEW","onlyStickyNodes","STICKY_NODE_TYPE","shouldPrependChatTrigger","allNodes","COMPATIBLE_CHAT_NODES","QA_CHAIN_NODE_TYPE","AGENT_NODE_TYPE","BASIC_CHAIN_NODE_TYPE","OPEN_AI_ASSISTANT_NODE_TYPE","OPEN_AI_NODE_MESSAGE_ASSISTANT_TYPE","isChatTriggerMissing","MANUAL_CHAT_TRIGGER_NODE_TYPE","CHAT_TRIGGER_NODE_TYPE","getAddedNodesAndConnections","connections","nodeToAutoOpen","MANUAL_TRIGGER_NODE_TYPE","index","OPEN_AI_NODE_TYPE","SPLIT_IN_BATCHES_NODE_TYPE","splitInBatchesIndex","noOpIndex","NO_OP_NODE_TYPE","setAddedNodeActionParameters","telemetry","rootView","onWorkflowStoreAction","storeWatcher","name","after","setLastNodeParameters","args","trackActionSelected","payload","useExternalHooks","NodeCreator","defineAsyncComponent","__vitePreload","props","__props","emit","__emit","state","reactive","uiStore","useUIStore","onCreateMenuHoverIn","mouseinEvent","buttonsWrapper","moveCallback","mousemoveEvent","wrapperBounds","wrapperH","wrapperW","wrapperLeftNear","wrapperLeftFar","wrapperTopNear","wrapperTopFar","openNodeCreator","addStickyNote","offset","position","getMidCanvasPosition","DEFAULT_STICKY_WIDTH","DEFAULT_STICKY_HEIGHT","closeNodeCreator","nodeTypeSelected","nodeTypes","type"],"ignoreList":[],"sources":["../../src/components/Node/NodeCreator/composables/useActions.ts","../../src/components/Node/NodeCreation.vue"],"sourcesContent":["import { computed } from 'vue';\nimport type { IDataObject, INodeParameters } from 'n8n-workflow';\nimport type {\n\tActionTypeDescription,\n\tAddedNode,\n\tAddedNodeConnection,\n\tAddedNodesAndConnections,\n\tINodeCreateElement,\n\tIUpdateInformation,\n\tLabelCreateElement,\n} from '@/Interface';\nimport {\n\tAGENT_NODE_TYPE,\n\tBASIC_CHAIN_NODE_TYPE,\n\tCHAT_TRIGGER_NODE_TYPE,\n\tMANUAL_CHAT_TRIGGER_NODE_TYPE,\n\tMANUAL_TRIGGER_NODE_TYPE,\n\tNODE_CREATOR_OPEN_SOURCES,\n\tNO_OP_NODE_TYPE,\n\tOPEN_AI_ASSISTANT_NODE_TYPE,\n\tOPEN_AI_NODE_MESSAGE_ASSISTANT_TYPE,\n\tOPEN_AI_NODE_TYPE,\n\tQA_CHAIN_NODE_TYPE,\n\tSCHEDULE_TRIGGER_NODE_TYPE,\n\tSPLIT_IN_BATCHES_NODE_TYPE,\n\tSTICKY_NODE_TYPE,\n\tTRIGGER_NODE_CREATOR_VIEW,\n\tWEBHOOK_NODE_TYPE,\n} from '@/constants';\n\nimport type { BaseTextKey } from '@/plugins/i18n';\nimport type { Telemetry } from '@/plugins/telemetry';\nimport { useNodeCreatorStore } from '@/stores/nodeCreator.store';\nimport { useWorkflowsStore } from '@/stores/workflows.store';\nimport { useNodeTypesStore } from '@/stores/nodeTypes.store';\nimport { useExternalHooks } from '@/composables/useExternalHooks';\n\nimport { sortNodeCreateElements, transformNodeType } from '../utils';\nimport { useI18n } from '@/composables/useI18n';\n\nexport const useActions = () => {\n\tconst nodeCreatorStore = useNodeCreatorStore();\n\tconst i18n = useI18n();\n\n\tconst singleNodeOpenSources = [\n\t\tNODE_CREATOR_OPEN_SOURCES.PLUS_ENDPOINT,\n\t\tNODE_CREATOR_OPEN_SOURCES.NODE_CONNECTION_ACTION,\n\t\tNODE_CREATOR_OPEN_SOURCES.NODE_CONNECTION_DROP,\n\t];\n\n\tconst actionsCategoryLocales = computed(() => {\n\t\treturn {\n\t\t\tactions: i18n.baseText('nodeCreator.actionsCategory.actions') ?? '',\n\t\t\ttriggers: i18n.baseText('nodeCreator.actionsCategory.triggers') ?? '',\n\t\t};\n\t});\n\n\tfunction getPlaceholderTriggerActions(subcategory: string) {\n\t\tconst nodes = [WEBHOOK_NODE_TYPE, SCHEDULE_TRIGGER_NODE_TYPE];\n\n\t\tconst matchedNodeTypes = nodeCreatorStore.mergedNodes\n\t\t\t.filter((node) => nodes.some((n) => n === node.name))\n\t\t\t.map((node) => {\n\t\t\t\tconst transformed = transformNodeType(node, subcategory, 'action');\n\n\t\t\t\tif (transformed.type === 'action') {\n\t\t\t\t\tconst nameBase = node.name.replace('n8n-nodes-base.', '');\n\t\t\t\t\tconst localeKey = `nodeCreator.actionsPlaceholderNode.${nameBase}` as BaseTextKey;\n\t\t\t\t\tconst overwriteLocale = i18n.baseText(localeKey);\n\n\t\t\t\t\t// If the locale key is not the same as the node name, it means it contain a translation\n\t\t\t\t\t// and we should use it\n\t\t\t\t\tif (overwriteLocale !== localeKey) {\n\t\t\t\t\t\ttransformed.properties.displayName = overwriteLocale;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn transformed;\n\t\t\t});\n\n\t\treturn matchedNodeTypes;\n\t}\n\n\tfunction filterActionsCategory(items: INodeCreateElement[], category: string) {\n\t\treturn items.filter(\n\t\t\t(item) => item.type === 'action' && item.properties.codex.categories.includes(category),\n\t\t);\n\t}\n\n\tfunction injectActionsLabels(items: INodeCreateElement[]): INodeCreateElement[] {\n\t\tconst extendedActions = sortNodeCreateElements([...items]);\n\t\tconst labelsSet = new Set<string>();\n\n\t\t// Collect unique labels\n\t\tfor (const action of extendedActions) {\n\t\t\tif (action.type !== 'action') continue;\n\t\t\tconst label = action.properties?.codex?.label;\n\t\t\tlabelsSet.add(label);\n\t\t}\n\n\t\tif (labelsSet.size <= 1) return extendedActions;\n\n\t\t// Create a map to store the first index of each label\n\t\tconst firstIndexMap = new Map<string, number>();\n\n\t\t// Iterate through the extendedActions to find the first index of each label\n\t\tfor (let i = 0; i < extendedActions.length; i++) {\n\t\t\tconst action = extendedActions[i];\n\t\t\tif (action.type !== 'action') continue;\n\t\t\tconst label = action.properties?.codex?.label;\n\t\t\tif (!firstIndexMap.has(label)) {\n\t\t\t\tfirstIndexMap.set(label, i);\n\t\t\t}\n\t\t}\n\n\t\t// Keep track of the number of inserted labels\n\t\tlet insertedLabels = 0;\n\n\t\t// Create and insert new label objects at the first index of each label\n\t\tfor (const label of labelsSet) {\n\t\t\tconst newLabel: LabelCreateElement = {\n\t\t\t\tuuid: label,\n\t\t\t\ttype: 'label',\n\t\t\t\tkey: label,\n\t\t\t\tsubcategory: extendedActions[0].key,\n\t\t\t\tproperties: {\n\t\t\t\t\tkey: label,\n\t\t\t\t},\n\t\t\t};\n\n\t\t\tconst insertIndex = firstIndexMap.get(label);\n\t\t\tif (insertIndex !== undefined) {\n\t\t\t\textendedActions.splice(insertIndex + insertedLabels, 0, newLabel);\n\t\t\t\tinsertedLabels++;\n\t\t\t}\n\t\t}\n\n\t\treturn extendedActions;\n\t}\n\n\tfunction parseCategoryActions(\n\t\tactions: INodeCreateElement[],\n\t\tcategory: string,\n\t\twithLabels = true,\n\t) {\n\t\tconst filteredActions = filterActionsCategory(actions, category);\n\t\tif (withLabels) return injectActionsLabels(filteredActions);\n\t\treturn filteredActions;\n\t}\n\n\tfunction getActionData(actionItem: ActionTypeDescription): IUpdateInformation {\n\t\tconst displayOptions = actionItem.displayOptions;\n\n\t\tconst displayConditions = Object.keys(displayOptions?.show ?? {}).reduce(\n\t\t\t(acc: IDataObject, showCondition: string) => {\n\t\t\t\tacc[showCondition] = displayOptions?.show?.[showCondition]?.[0];\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t{},\n\t\t);\n\n\t\treturn {\n\t\t\tname: actionItem.displayName,\n\t\t\tkey: actionItem.name,\n\t\t\tvalue: { ...actionItem.values, ...displayConditions } as INodeParameters,\n\t\t};\n\t}\n\n\t/**\n\t * Checks if added nodes contain trigger followed by another node\n\t * In this case, we should connect the trigger with the following node\n\t */\n\tfunction shouldConnectWithExistingTrigger(addedNodes: AddedNode[]): boolean {\n\t\tif (addedNodes.length === 2) {\n\t\t\tconst isTriggerNode = useNodeTypesStore().isTriggerNode(addedNodes[0].type);\n\t\t\treturn isTriggerNode;\n\t\t}\n\t\treturn false;\n\t}\n\n\tfunction shouldPrependManualTrigger(addedNodes: AddedNode[]): boolean {\n\t\tconst { selectedView, openSource } = useNodeCreatorStore();\n\t\tconst { workflowTriggerNodes } = useWorkflowsStore();\n\t\tconst hasTrigger = addedNodes.some((node) => useNodeTypesStore().isTriggerNode(node.type));\n\t\tconst workflowContainsTrigger = workflowTriggerNodes.length > 0;\n\t\tconst isTriggerPanel = selectedView === TRIGGER_NODE_CREATOR_VIEW;\n\t\tconst onlyStickyNodes = addedNodes.every((node) => node.type === STICKY_NODE_TYPE);\n\n\t\t// If the node creator was opened from the plus endpoint, node connection action, or node connection drop\n\t\t// then we do not want to append the manual trigger\n\t\tconst isSingleNodeOpenSource = singleNodeOpenSources.includes(openSource);\n\t\treturn (\n\t\t\t!isSingleNodeOpenSource &&\n\t\t\t!hasTrigger &&\n\t\t\t!workflowContainsTrigger &&\n\t\t\tisTriggerPanel &&\n\t\t\t!onlyStickyNodes\n\t\t);\n\t}\n\tfunction shouldPrependChatTrigger(addedNodes: AddedNode[]): boolean {\n\t\tconst { allNodes } = useWorkflowsStore();\n\n\t\tconst COMPATIBLE_CHAT_NODES = [\n\t\t\tQA_CHAIN_NODE_TYPE,\n\t\t\tAGENT_NODE_TYPE,\n\t\t\tBASIC_CHAIN_NODE_TYPE,\n\t\t\tOPEN_AI_ASSISTANT_NODE_TYPE,\n\t\t\tOPEN_AI_NODE_MESSAGE_ASSISTANT_TYPE,\n\t\t];\n\n\t\tconst isChatTriggerMissing =\n\t\t\tallNodes.find((node) =>\n\t\t\t\t[MANUAL_CHAT_TRIGGER_NODE_TYPE, CHAT_TRIGGER_NODE_TYPE].includes(node.type),\n\t\t\t) === undefined;\n\t\tconst isCompatibleNode = addedNodes.some((node) => COMPATIBLE_CHAT_NODES.includes(node.type));\n\n\t\treturn isCompatibleNode && isChatTriggerMissing;\n\t}\n\n\tfunction getAddedNodesAndConnections(addedNodes: AddedNode[]): AddedNodesAndConnections {\n\t\tif (addedNodes.length === 0) {\n\t\t\treturn { nodes: [], connections: [] };\n\t\t}\n\n\t\tconst nodes: AddedNode[] = [];\n\t\tconst connections: AddedNodeConnection[] = [];\n\n\t\tconst nodeToAutoOpen = addedNodes.find((node) => node.type !== MANUAL_TRIGGER_NODE_TYPE);\n\n\t\tif (nodeToAutoOpen) {\n\t\t\tnodeToAutoOpen.openDetail = true;\n\t\t}\n\n\t\tif (shouldPrependChatTrigger(addedNodes)) {\n\t\t\taddedNodes.unshift({ type: CHAT_TRIGGER_NODE_TYPE, isAutoAdd: true });\n\t\t\tconnections.push({\n\t\t\t\tfrom: { nodeIndex: 0 },\n\t\t\t\tto: { nodeIndex: 1 },\n\t\t\t});\n\t\t} else if (shouldPrependManualTrigger(addedNodes)) {\n\t\t\taddedNodes.unshift({ type: MANUAL_TRIGGER_NODE_TYPE, isAutoAdd: true });\n\t\t\tconnections.push({\n\t\t\t\tfrom: { nodeIndex: 0 },\n\t\t\t\tto: { nodeIndex: 1 },\n\t\t\t});\n\t\t} else if (shouldConnectWithExistingTrigger(addedNodes)) {\n\t\t\tconnections.push({\n\t\t\t\tfrom: { nodeIndex: 0 },\n\t\t\t\tto: { nodeIndex: 1 },\n\t\t\t});\n\t\t}\n\n\t\taddedNodes.forEach((node, index) => {\n\t\t\tif (node.type === OPEN_AI_NODE_MESSAGE_ASSISTANT_TYPE) {\n\t\t\t\tnode.type = OPEN_AI_NODE_TYPE;\n\t\t\t}\n\n\t\t\tnodes.push(node);\n\n\t\t\tswitch (node.type) {\n\t\t\t\tcase SPLIT_IN_BATCHES_NODE_TYPE: {\n\t\t\t\t\tconst splitInBatchesIndex = index;\n\t\t\t\t\tconst noOpIndex = splitInBatchesIndex + 1;\n\t\t\t\t\tnodes.push({\n\t\t\t\t\t\ttype: NO_OP_NODE_TYPE,\n\t\t\t\t\t\tisAutoAdd: true,\n\t\t\t\t\t\tname: i18n.baseText('nodeView.replaceMe'),\n\t\t\t\t\t});\n\t\t\t\t\tconnections.push(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfrom: { nodeIndex: splitInBatchesIndex, outputIndex: 1 },\n\t\t\t\t\t\t\tto: { nodeIndex: noOpIndex },\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfrom: { nodeIndex: noOpIndex },\n\t\t\t\t\t\t\tto: { nodeIndex: splitInBatchesIndex },\n\t\t\t\t\t\t},\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treturn { nodes, connections };\n\t}\n\n\t// Hook into addNode action to set the last node parameters & track the action selected\n\tfunction setAddedNodeActionParameters(\n\t\taction: IUpdateInformation,\n\t\ttelemetry?: Telemetry,\n\t\trootView = '',\n\t) {\n\t\tconst { $onAction: onWorkflowStoreAction } = useWorkflowsStore();\n\t\tconst storeWatcher = onWorkflowStoreAction(\n\t\t\t({ name, after, store: { setLastNodeParameters }, args }) => {\n\t\t\t\tif (name !== 'addNode' || args[0].type !== action.key) return;\n\t\t\t\tafter(() => {\n\t\t\t\t\tsetLastNodeParameters(action);\n\t\t\t\t\tif (telemetry) trackActionSelected(action, telemetry, rootView);\n\t\t\t\t\t// Unsubscribe from the store watcher\n\t\t\t\t\tstoreWatcher();\n\t\t\t\t});\n\t\t\t},\n\t\t);\n\n\t\treturn storeWatcher;\n\t}\n\n\tfunction trackActionSelected(action: IUpdateInformation, telemetry: Telemetry, rootView: string) {\n\t\tconst payload = {\n\t\t\tnode_type: action.key,\n\t\t\taction: action.name,\n\t\t\tsource_mode: rootView.toLowerCase(),\n\t\t\tresource: (action.value as INodeParameters).resource || '',\n\t\t};\n\t\tvoid useExternalHooks().run('nodeCreateList.addAction', payload);\n\t\ttelemetry?.trackNodesPanel('nodeCreateList.addAction', payload);\n\t}\n\n\treturn {\n\t\tactionsCategoryLocales,\n\t\tgetPlaceholderTriggerActions,\n\t\tparseCategoryActions,\n\t\tgetAddedNodesAndConnections,\n\t\tgetActionData,\n\t\tsetAddedNodeActionParameters,\n\t};\n};\n","<script setup lang=\"ts\">\nimport { defineAsyncComponent, reactive } from 'vue';\nimport { getMidCanvasPosition } from '@/utils/nodeViewUtils';\nimport {\n\tDEFAULT_STICKY_HEIGHT,\n\tDEFAULT_STICKY_WIDTH,\n\tNODE_CREATOR_OPEN_SOURCES,\n\tSTICKY_NODE_TYPE,\n} from '@/constants';\nimport { useUIStore } from '@/stores/ui.store';\nimport type { AddedNodesAndConnections, ToggleNodeCreatorOptions } from '@/Interface';\nimport { useActions } from './NodeCreator/composables/useActions';\nimport KeyboardShortcutTooltip from '@/components/KeyboardShortcutTooltip.vue';\n\ntype Props = {\n\tnodeViewScale: number;\n\tcreateNodeActive?: boolean;\n};\n\n// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\nconst NodeCreator = defineAsyncComponent(\n\tasync () => await import('@/components/Node/NodeCreator/NodeCreator.vue'),\n);\n\nconst props = withDefaults(defineProps<Props>(), {\n\tcreateNodeActive: false,\n});\n\nconst emit = defineEmits<{\n\t(event: 'addNodes', value: AddedNodesAndConnections): void;\n\t(event: 'toggleNodeCreator', value: ToggleNodeCreatorOptions): void;\n}>();\n\nconst state = reactive({\n\tshowStickyButton: false,\n});\n\nconst uiStore = useUIStore();\n\nconst { getAddedNodesAndConnections } = useActions();\n\nfunction onCreateMenuHoverIn(mouseinEvent: MouseEvent) {\n\tconst buttonsWrapper = mouseinEvent.target as Element;\n\n\t// Once the popup menu is hovered, it's pointer events are disabled so it's not interfering with element underneath it.\n\tstate.showStickyButton = true;\n\tconst moveCallback = (mousemoveEvent: MouseEvent) => {\n\t\tif (buttonsWrapper) {\n\t\t\tconst wrapperBounds = buttonsWrapper.getBoundingClientRect();\n\t\t\tconst wrapperH = wrapperBounds.height;\n\t\t\tconst wrapperW = wrapperBounds.width;\n\t\t\tconst wrapperLeftNear = wrapperBounds.left;\n\t\t\tconst wrapperLeftFar = wrapperLeftNear + wrapperW;\n\t\t\tconst wrapperTopNear = wrapperBounds.top;\n\t\t\tconst wrapperTopFar = wrapperTopNear + wrapperH;\n\t\t\tconst inside =\n\t\t\t\tmousemoveEvent.pageX > wrapperLeftNear &&\n\t\t\t\tmousemoveEvent.pageX < wrapperLeftFar &&\n\t\t\t\tmousemoveEvent.pageY > wrapperTopNear &&\n\t\t\t\tmousemoveEvent.pageY < wrapperTopFar;\n\t\t\tif (!inside) {\n\t\t\t\tstate.showStickyButton = false;\n\t\t\t\tdocument.removeEventListener('mousemove', moveCallback, false);\n\t\t\t}\n\t\t}\n\t};\n\tdocument.addEventListener('mousemove', moveCallback, false);\n}\n\nfunction openNodeCreator() {\n\temit('toggleNodeCreator', {\n\t\tsource: NODE_CREATOR_OPEN_SOURCES.ADD_NODE_BUTTON,\n\t\tcreateNodeActive: true,\n\t});\n}\n\nfunction addStickyNote() {\n\tif (document.activeElement) {\n\t\t(document.activeElement as HTMLElement).blur();\n\t}\n\n\tconst offset: [number, number] = [...uiStore.nodeViewOffsetPosition];\n\n\tconst position = getMidCanvasPosition(props.nodeViewScale, offset);\n\tposition[0] -= DEFAULT_STICKY_WIDTH / 2;\n\tposition[1] -= DEFAULT_STICKY_HEIGHT / 2;\n\n\temit('addNodes', getAddedNodesAndConnections([{ type: STICKY_NODE_TYPE, position }]));\n}\n\nfunction closeNodeCreator() {\n\temit('toggleNodeCreator', { createNodeActive: false });\n}\n\nfunction nodeTypeSelected(nodeTypes: string[]) {\n\temit('addNodes', getAddedNodesAndConnections(nodeTypes.map((type) => ({ type }))));\n\tcloseNodeCreator();\n}\n</script>\n\n<template>\n\t<div>\n\t\t<div\n\t\t\tv-if=\"!createNodeActive\"\n\t\t\t:class=\"[$style.nodeButtonsWrapper, state.showStickyButton ? $style.noEvents : '']\"\n\t\t\t@mouseenter=\"onCreateMenuHoverIn\"\n\t\t>\n\t\t\t<div :class=\"$style.nodeCreatorButton\" data-test-id=\"node-creator-plus-button\">\n\t\t\t\t<KeyboardShortcutTooltip\n\t\t\t\t\t:label=\"$locale.baseText('nodeView.openNodesPanel')\"\n\t\t\t\t\t:shortcut=\"{ keys: ['Tab'] }\"\n\t\t\t\t\tplacement=\"left\"\n\t\t\t\t>\n\t\t\t\t\t<n8n-icon-button\n\t\t\t\t\t\tsize=\"xlarge\"\n\t\t\t\t\t\ticon=\"plus\"\n\t\t\t\t\t\ttype=\"tertiary\"\n\t\t\t\t\t\t:class=\"$style.nodeCreatorPlus\"\n\t\t\t\t\t\t@click=\"openNodeCreator\"\n\t\t\t\t\t/>\n\t\t\t\t</KeyboardShortcutTooltip>\n\t\t\t\t<div\n\t\t\t\t\t:class=\"[$style.addStickyButton, state.showStickyButton ? $style.visibleButton : '']\"\n\t\t\t\t\tdata-test-id=\"add-sticky-button\"\n\t\t\t\t\t@click=\"addStickyNote\"\n\t\t\t\t>\n\t\t\t\t\t<KeyboardShortcutTooltip\n\t\t\t\t\t\t:label=\"$locale.baseText('nodeView.addStickyHint')\"\n\t\t\t\t\t\t:shortcut=\"{ keys: ['s'], shiftKey: true }\"\n\t\t\t\t\t\tplacement=\"left\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<n8n-icon-button type=\"tertiary\" :icon=\"['far', 'note-sticky']\" />\n\t\t\t\t\t</KeyboardShortcutTooltip>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<Suspense>\n\t\t\t<NodeCreator\n\t\t\t\t:active=\"createNodeActive\"\n\t\t\t\t@node-type-selected=\"nodeTypeSelected\"\n\t\t\t\t@close-node-creator=\"closeNodeCreator\"\n\t\t\t/>\n\t\t</Suspense>\n\t</div>\n</template>\n\n<style lang=\"scss\" module>\n.nodeButtonsWrapper {\n\tposition: absolute;\n\twidth: 150px;\n\theight: 200px;\n\ttop: 0;\n\tright: 0;\n\tdisplay: flex;\n}\n\n.addStickyButton {\n\tmargin-top: var(--spacing-2xs);\n\topacity: 0;\n\ttransition: 0.1s;\n\ttransition-timing-function: linear;\n}\n\n.visibleButton {\n\topacity: 1;\n\tpointer-events: all;\n}\n\n.noEvents {\n\tpointer-events: none;\n}\n\n.nodeCreatorButton {\n\tposition: absolute;\n\ttext-align: center;\n\ttop: var(--spacing-l);\n\tright: var(--spacing-l);\n\tpointer-events: all !important;\n\n\tbutton {\n\t\tborder-color: var(--color-button-node-creator-border-font);\n\t\tcolor: var(--color-button-node-creator-border-font);\n\n\t\t&:hover {\n\t\t\tcolor: var(--color-button-node-creator-hover-font);\n\t\t\tborder-color: var(--color-button-node-creator-hover-border);\n\t\t\tbackground: var(--color-button-node-creator-background);\n\t\t}\n\t}\n}\n.nodeCreatorPlus {\n\tborder-width: 2px;\n\tborder-radius: var(--border-radius-base);\n\twidth: 36px;\n\theight: 36px;\n}\n</style>\n"],"file":"assets/NodeCreation-R9yLdNU1.js"}
@@ -1,2 +1,2 @@
1
- import{N as Xe,dR as re,eo as Ze,bb as ie,a3 as be,aP as Je,cp as Qe,ep as xe,aa as et,ad as tt,a9 as le,w as pe,bG as $e,bF as Ae,bH as ce,F as se,an as Ee,j as ot,a as nt,bA as te,ea as st,e9 as at,ch as ge,eq as rt,l as it,c7 as Le,dc as Re,i as lt,bg as ct,ar as dt,a4 as ut}from"./index-CY2ZfL2U.js";import{u as Q,t as pt,f as gt}from"./nodeCreator.store-CmYeJsEL.js";import{G as K,l as g,M as N,O as A,H as G,W as Ve,Z as we,b as ye,y as Me,_ as ke,ag as H,m as E,p as T,U as O,I as u,R as V,r as Z,e as b,a9 as de,u as z,P as Oe,J as Ce,a2 as me,V as Be,K as oe,T as W,d as J,ab as De,al as yt,Y as Pe,F as mt,a7 as ft,af as vt,aR as _t,S as ee}from"./vendor-CUQSof8H.js";import{_ as U}from"./n8n-DT_bOwuZ.js";import{u as D,a as X,T as He,R as Ke,A as Ue,b as ze}from"./useViewStacks-D-hnVv3F.js";import{m as ht,D as fe,E as qe}from"./lodash-es-BFdF4Er8.js";import{u as Te}from"./NodeCreation-C0AAIhNs.js";import"./pinia-Dh4cxKZ0.js";import"./axios-Mm4CS0gO.js";import"./flatted-DN8lQ2XG.js";import"./@vueuse/core-BiGWdRh4.js";import"./@n8n/permissions-BxxteU-C.js";import"./dateformat-C0ZgbPvs.js";import"./vue-i18n-CG6eDDlD.js";import"./uuid-SoommWqA.js";import"./luxon-CLwAIbs0.js";import"./@n8n/codemirror-lang-sql-x14jMqbG.js";import"./@lezer/common-B6ct0j_v.js";import"./prettier-bS6l4Vb1.js";import"./@jsplumb/util-DS-9vq_E.js";import"./@jsplumb/core-CVBraiyY.js";import"./@jsplumb/common-CF-b-6-M.js";import"./@jsplumb/connector-bezier-BGU0Ovbw.js";import"./@jsplumb/browser-ui-BVF2KoJK.js";import"./codemirror-lang-html-n8n-DcTmlMkf.js";import"./@n8n/codemirror-lang-Qkdx7NoQ.js";import"./esprima-next-nhoSXAeq.js";import"./fast-json-stable-stringify-wY6jAr7b.js";import"./timeago.js-CiyKClrF.js";import"./qrcode.vue-DOxvr88t.js";import"./vue3-touch-events-mV0oX_Sl.js";import"./chart.js-343vZi4M.js";const bt=K({name:"SlideTransition"});function $t(i,e,d,s,n,_){return g(),N(Ve,{name:"slide"},{default:A(()=>[G(i.$slots,"default",{},void 0,!0)]),_:3})}const wt=U(bt,[["render",$t],["__scopeId","data-v-88e2114c"]]),Ye="placeholder_recommended";function kt(...i){return Xe.baseText(...i)}const x=ht(kt,(...i)=>JSON.stringify(i)),he={"n8n-nodes-base.hubspotTrigger":(i,e)=>{var s,n,_;const d=(s=i==null?void 0:i.options)==null?void 0:s[0];return(_=(n=d==null?void 0:d.values[0])==null?void 0:n.options)==null?void 0:_.map(v=>({...ne(e),actionKey:v.value,displayName:x("nodeCreator.actionsCategory.onEvent",{interpolate:{event:fe(v.name)}}),description:v.description??"",displayOptions:i.displayOptions,values:{eventsUi:{eventValues:[{name:v.value}]}}}))}};function ne(i,e){const d=i.group.includes("trigger"),s=x(d?"nodeCreator.actionsCategory.triggers":"nodeCreator.actionsCategory.actions");return{name:i.name,group:i.group,codex:{label:e??"",categories:[s]},iconUrl:i.iconUrl,outputs:i.outputs,icon:i.icon,defaults:i.defaults}}function Ct(i){if(i.properties.find(n=>n.name==="resource"))return[];const e=i.properties.find(n=>{var _;return((_=n.name)==null?void 0:_.toLowerCase())==="operation"});if(!(e!=null&&e.options))return[];const s=e.options.filter(n=>!["*",""," "].includes(n.name)).map(n=>({...ne(i),actionKey:n.value,displayName:n.action??fe(n.name),description:n.description??"",displayOptions:e.displayOptions,values:{[e.name]:e.type==="multiOptions"?[n.value]:n.value}}));return s.length===0?[]:s}function Tt(i){var y,p;const e=["event","events","trigger on"],d=(y=i.displayName)==null?void 0:y.toLowerCase().includes("trigger"),s=i.properties.find(o=>{var r;return e.includes((r=o.displayName)==null?void 0:r.toLowerCase())});if(!d)return[];if(!(s!=null&&s.options))return[{...ne(i),actionKey:Ye,displayName:x("nodeCreator.actionsCategory.onNewEvent",{interpolate:{event:i.displayName.replace("Trigger","").trimEnd()}}),description:""}];const n=s.options.filter(o=>!["*",""," "].includes(o.name));return((p=he[i.name])==null?void 0:p.call(he,s,i))??n.map(o=>({...ne(i),actionKey:o.value,displayName:o.action??x("nodeCreator.actionsCategory.onEvent",{interpolate:{event:fe(o.name)}}),description:o.description??"",displayOptions:s.displayOptions,values:{[s.name]:s.type==="multiOptions"?[o.value]:o.value}}))}function Nt(i){const e=[];return i.properties.filter(s=>{var n;return((n=s.displayName)==null?void 0:n.toLowerCase())==="resource"}).forEach(s=>{(s.options||[]).filter(n=>n.value!==ie).forEach((n,_,v)=>{const y=v.length===1,p=i.properties.find(r=>{var c,I,f,a,C;const $=r.name==="operation",m=((f=(I=(c=r.displayOptions)==null?void 0:c.show)==null?void 0:I.resource)==null?void 0:f.includes(n.value))??y,t=(C=(a=r.displayOptions)==null?void 0:a.show)==null?void 0:C["@version"],h=Array.isArray(i.version)?i.version:[i.version],B=t?t.some(L=>typeof L=="number"&&h.includes(L)):!0;return $&&m&&B});if(!(p!=null&&p.options))return;const o=(p.options||[]).map(r=>{var t;const $=r.action??`${n.name} ${fe(r.name)}`,m=y?{show:{resource:[(t=v[0])==null?void 0:t.value]}}:p==null?void 0:p.displayOptions;return{...ne(i,`${n.name} ${x("nodeCreator.actionsCategory.actions")}`),actionKey:r.value,description:(r==null?void 0:r.description)??"",displayOptions:m,values:{operation:(p==null?void 0:p.type)==="multiOptions"?[r.value]:r.value},displayName:$,group:["trigger"]}});e.push(...o)})}),e}function It(){function i(n){return n?[...Tt(n),...Ct(n),...Nt(n)]:[]}function e(n){return n.length<=1?[]:n.filter((_,v,y)=>{if(_.actionKey===ie)return!1;const o=_.actionKey===Ye;return!o||o&&y.length>1})}function d(n){const{displayName:_,defaults:v,description:y,name:p,group:o,icon:r,iconUrl:$,badgeIconUrl:m,outputs:t,codex:h}=n;return{displayName:_,defaults:v,description:y,name:p,group:o,icon:r,iconUrl:$,badgeIconUrl:m,outputs:t,codex:h}}function s(n,_){const v=[...n],y={},p=[];return v.filter(o=>!o.group.includes("trigger")).forEach(o=>{const r=i(o);if(y[o.name]=r,o.name===re){const m=_.map(t=>{const h=Ze(o,t);return h?d(h):null}).filter(t=>t!==null);p.push(...m)}p.push(d(o))}),v.filter(o=>o.group.includes("trigger")).forEach(o=>{const r=o.name.replace("Trigger",""),$=i(o),m=(y==null?void 0:y[r])||[],t=p.find(h=>h.name===r);if(t&&(m==null?void 0:m.length)>0){const h=e([...m,...$]);y[r]=h,t.description=o.description}else y[o.name]=e($),p.push(d(o))}),{actions:y,mergedNodes:p}}return{generateMergedNodesAndActions:s}}const St=["placeholder","value"],At=K({__name:"SearchBar",props:{placeholder:{default:""},modelValue:{default:""}},emits:["update:modelValue"],setup(i,{expose:e,emit:d}){const s=d,n=we({inputRef:null}),_=be();function v(){var r;(r=n.inputRef)==null||r.focus()}function y(r){const $=r.target;s("update:modelValue",$.value)}function p(){s("update:modelValue","")}ye(()=>{_.run("nodeCreatorSearchBar.mount",{inputRef:n.inputRef}),setTimeout(v,0)}),Me(()=>{var r;(r=n.inputRef)==null||r.remove()});const{inputRef:o}=ke(n);return e({focus:v}),(r,$)=>{const m=H("font-awesome-icon");return g(),E("div",{class:u(r.$style.searchContainer),"data-test-id":"search-bar"},[T("div",{class:u({[r.$style.prefix]:!0,[r.$style.active]:r.modelValue.length>0})},[O(m,{icon:"search",size:"sm"})],2),T("div",{class:u(r.$style.text)},[T("input",{ref_key:"inputRef",ref:o,placeholder:r.placeholder,value:r.modelValue,class:u(r.$style.input),autofocus:"","data-test-id":"node-creator-search-bar",tabindex:"0",onInput:y},null,42,St)],2),r.modelValue.length>0?(g(),E("div",{key:0,class:u(r.$style.suffix),onClick:p},[T("button",{class:u([r.$style.clear,r.$style.clickable])},[O(m,{icon:"times-circle"})],2)],2)):V("",!0)],2)}}}),Et="_searchContainer_dci3d_1",Lt="_prefix_dci3d_17",Rt="_active_dci3d_22",Vt="_text_dci3d_26",Mt="_suffix_dci3d_42",Ot="_clear_dci3d_48",Bt={searchContainer:Et,prefix:Lt,active:Rt,text:Vt,suffix:Mt,clear:Ot},Dt={$style:Bt},Pt=U(At,[["__cssModules",Dt]]),Ht=["innerHTML"],Kt=K({__name:"NodeItem",props:{nodeType:{},subcategory:{default:void 0},active:{type:Boolean,default:!1}},setup(i){const e=i,d=pe(),s=se(),{actions:n}=Q(),{getAddedNodesAndConnections:_}=Te(),{isSubNodeType:v}=Je({nodeType:e.nodeType}),y=Z(!1),p=Z({x:-100,y:-100}),o=Z(null),r=b(()=>e.subcategory===Qe&&!e.nodeType.name.startsWith(xe)?"":d.headerText({key:`headers.${B.value}.description`,fallback:e.nodeType.description})),$=b(()=>t.value),m=b(()=>t.value?"node-creator-action-item":"node-creator-node-item"),t=b(()=>h.value.length>1),h=b(()=>n[e.nodeType.name]||[]),B=b(()=>d.shortNodeType(e.nodeType.name)||""),c=b(()=>({top:`${p.value.y}px`,left:`${p.value.x}px`})),I=b(()=>et(e.nodeType.name)),f=b(()=>{const l=e.nodeType.displayName.trimEnd();return d.headerText({key:`headers.${B.value}.displayName`,fallback:t.value?l.replace("Trigger",""):l})}),a=b(()=>e.nodeType.group.includes("trigger")&&!t.value);function C(l){document.body.addEventListener("dragover",L);const{pageX:M,pageY:R}=l;l.dataTransfer&&(l.dataTransfer.effectAllowed="copy",l.dataTransfer.dropEffect="copy",l.dataTransfer.setDragImage(o.value,0,0),l.dataTransfer.setData($e,JSON.stringify(_([{type:e.nodeType.name}])))),y.value=!0,p.value={x:M,y:R}}function L(l){if(!y.value||l.pageX===0&&l.pageY===0)return;const[M,R]=Ae([],[l.pageX-ce/2,l.pageY-ce/2]);p.value={x:M,y:R}}function S(){document.body.removeEventListener("dragover",L),y.value=!1,setTimeout(()=>{p.value={x:-100,y:-100}},300)}function P(l){l.target.localName==="a"&&s.track("user clicked cnr docs link",{source:"nodes panel node"})}return(l,M)=>{const R=H("n8n-node-creator-node");return g(),N(R,{draggable:!$.value,class:u(l.$style.nodeItem),description:r.value,title:f.value,"show-action-arrow":$.value,"is-trigger":a.value,"data-test-id":m.value,onDragstart:C,onDragend:S},de({icon:A(()=>[z(v)?(g(),E("div",{key:0,class:u(l.$style.subNodeBackground)},null,2)):V("",!0),O(le,{class:u(l.$style.nodeIcon),"node-type":l.nodeType},null,8,["class","node-type"])]),dragContent:A(()=>[T("div",{ref_key:"draggableDataTransfer",ref:o,class:u(l.$style.draggableDataTransfer)},null,2),Oe(T("div",{class:u(l.$style.draggable),style:Ce(c.value)},[O(le,{"node-type":l.nodeType,size:40,shrink:!1,onClickCapture:M[0]||(M[0]=me(()=>{},["stop"]))},null,8,["node-type"])],6),[[Be,y.value]])]),_:2},[I.value?{name:"tooltip",fn:A(()=>[T("p",{class:u(l.$style.communityNodeIcon),onClick:P,innerHTML:z(d).baseText("generic.communityNode.tooltip",{interpolate:{packageName:l.nodeType.name.split(".")[0],docURL:z(tt)}})},null,10,Ht)]),key:"0"}:void 0]),1032,["draggable","class","description","title","show-action-arrow","is-trigger","data-test-id"])}}}),Ut="_nodeItem_124lg_1",zt="_nodeIcon_124lg_9",qt="_subNodeBackground_124lg_13",Yt="_communityNodeIcon_124lg_23",Wt="_draggable_124lg_27",jt="_draggableDataTransfer_124lg_41",Ft={nodeItem:Ut,nodeIcon:zt,subNodeBackground:qt,communityNodeIcon:Yt,draggable:Wt,draggableDataTransfer:jt},Gt={$style:Ft},Xt=U(Kt,[["__cssModules",Gt]]),Zt=K({__name:"SubcategoryItem",props:{item:{}},setup(i){const e=i,d=pe(),s=b(()=>qe(e.item.subcategory||e.item.title));return(n,_)=>{const v=H("n8n-node-icon"),y=H("n8n-node-creator-node");return g(),N(y,{class:u(n.$style.subCategory),title:z(d).baseText(`nodeCreator.subcategoryNames.${s.value}`),"is-trigger":!1,description:z(d).baseText(`nodeCreator.subcategoryDescriptions.${s.value}`),"show-action-arrow":!0},{icon:A(()=>[O(v,oe({type:"icon",name:n.item.icon,circle:!1,"show-tooltip":!1},n.item.iconProps),null,16,["name"])]),_:1},8,["class","title","description"])}}}),Jt="_subCategory_qrigt_1",Qt={subCategory:Jt},xt={$style:Qt},eo=U(Zt,[["__cssModules",xt]]),to=["textContent"],oo=K({__name:"LabelItem",props:{item:{}},setup(i){return(e,d)=>(g(),E("div",{class:u(e.$style.label)},[T("span",{class:u(e.$style.name),textContent:W(e.item.key)},null,10,to)],2))}}),no="_label_7jmhw_1",so={label:no},ao={$style:so},ro=U(oo,[["__cssModules",ao]]),io=K({__name:"ActionItem",props:{nodeType:{},action:{}},setup(i){const e=i,d=se(),{getActionData:s,getAddedNodesAndConnections:n,setAddedNodeActionParameters:_}=Te(),{activeViewStack:v}=D(),y=we({dragging:!1,draggablePosition:{x:-100,y:-100},storeWatcher:null,draggableDataTransfer:null}),p=b(()=>({top:`${y.draggablePosition.y}px`,left:`${y.draggablePosition.x}px`})),o=b(()=>s(e.action)),r=c=>{var I;return((I=c.name)==null?void 0:I.toLowerCase().includes("trigger"))||c.name===Ee};function $(c){document.body.addEventListener("dragover",m);const{pageX:I,pageY:f}=c;c.dataTransfer&&o.value.key&&(c.dataTransfer.effectAllowed="copy",c.dataTransfer.dropEffect="copy",c.dataTransfer.setDragImage(y.draggableDataTransfer,0,0),c.dataTransfer.setData($e,JSON.stringify(n([{type:o.value.key}]))),d&&(y.storeWatcher=_(o.value,d,v.rootView)),document.body.addEventListener("dragend",t)),y.dragging=!0,y.draggablePosition={x:I,y:f}}function m(c){if(!y.dragging||c.pageX===0&&c.pageY===0)return;const[I,f]=Ae([],[c.pageX-ce/2,c.pageY-ce/2]);y.draggablePosition={x:I,y:f}}function t(){y.storeWatcher&&y.storeWatcher(),document.body.removeEventListener("dragend",t),document.body.removeEventListener("dragover",m),y.dragging=!1,setTimeout(()=>{y.draggablePosition={x:-100,y:-100}},300)}const{draggableDataTransfer:h,dragging:B}=ke(y);return(c,I)=>{const f=H("n8n-node-creator-node");return g(),N(f,{draggable:"",class:u(c.$style.action),title:c.action.displayName,"is-trigger":r(c.action),"data-keyboard-nav":"true",onDragstart:$,onDragend:t},{dragContent:A(()=>[T("div",{ref_key:"draggableDataTransfer",ref:h,class:u(c.$style.draggableDataTransfer)},null,2),Oe(T("div",{class:u(c.$style.draggable),style:Ce(p.value)},[O(le,{"node-type":c.nodeType,size:40,shrink:!1,onClickCapture:I[0]||(I[0]=me(()=>{},["stop"]))},null,8,["node-type"])],6),[[Be,z(B)]])]),icon:A(()=>[O(le,{"node-type":c.action},null,8,["node-type"])]),_:1},8,["class","title","is-trigger"])}}}),lo="_action_139su_1",co="_nodeIcon_139su_13",uo="_draggable_139su_17",po="_draggableDataTransfer_139su_31",go={action:lo,nodeIcon:co,draggable:uo,draggableDataTransfer:po},yo={$style:go},mo=U(io,[["__cssModules",yo]]),fo=K({__name:"ViewItem",props:{view:{}},setup(i){return(e,d)=>{const s=H("n8n-node-icon"),n=H("n8n-node-creator-node");return g(),N(n,{class:u(e.$style.view),title:e.view.title,tag:e.view.tag,"is-trigger":!1,description:e.view.description,"show-action-arrow":!0},{icon:A(()=>[O(s,{type:"icon",name:e.view.icon,circle:!1,"show-tooltip":!1},null,8,["name"])]),_:1},8,["class","title","tag","description"])}}}),vo="_view_71tui_1",_o={view:vo},ho={$style:_o},bo=U(fo,[["__cssModules",ho]]),$o=["textContent"],wo=K({__name:"CategoryItem",props:{expanded:{type:Boolean,default:!0},active:{type:Boolean},count:{},name:{},isTrigger:{type:Boolean}},setup(i){const e=i,d=b(()=>{const s=e.count||0;return s>0?`${e.name} (${s})`:e.name});return(s,n)=>{const _=H("font-awesome-icon");return g(),E("div",oe({class:s.$style.categoryWrapper},s.$attrs,{"data-keyboard-nav":"true","data-test-id":"node-creator-category-item"}),[T("div",{class:u({[s.$style.category]:!0,[s.$style.active]:s.active})},[T("span",{class:u(s.$style.name)},[T("span",{textContent:W(d.value)},null,8,$o),s.isTrigger?(g(),N(_,{key:0,icon:"bolt",size:"xs",class:u(s.$style.triggerIcon)},null,8,["class"])):V("",!0),G(s.$slots,"default")],2),s.expanded?(g(),N(_,{key:0,icon:"chevron-down",class:u(s.$style.arrow)},null,8,["class"])):(g(),N(_,{key:1,class:u(s.$style.arrow),icon:"chevron-up"},null,8,["class"]))],2)],16)}}}),ko="_triggerIcon_b4ocq_1",Co="_category_b4ocq_6",To="_active_b4ocq_27",No="_name_b4ocq_31",Io="_arrow_b4ocq_36",So={triggerIcon:ko,category:Co,active:To,name:No,arrow:Io},Ao={$style:So},Eo=U(wo,[["__cssModules",Ao]]),Lo=["data-category-collapsed"],Ro=["innerHTML"],Vo=K({__name:"CategorizedItemsRenderer",props:{elements:{default:()=>[]},category:{},disabled:{type:Boolean},activeIndex:{},isTriggerCategory:{type:Boolean},mouseOverTooltip:{},expanded:{type:Boolean}},setup(i){const e=i,d=se(),{popViewStack:s}=D(),{registerKeyHook:n}=X(),{workflowId:_}=ot(),v=b(()=>{var t;return(t=X())==null?void 0:t.activeItemId}),y=b(()=>e.elements.filter(({type:t})=>t==="action").length),p=Z(e.expanded??!1);function o(){r(!p.value)}function r(t){p.value=t,p.value&&d.trackNodesPanel("nodeCreateList.onCategoryExpanded",{category_name:e.category,workflow_id:_})}function $(){p.value||r(!0)}function m(){if(!p.value){s();return}r(!1)}return J(()=>e.elements,()=>{r(!0)}),n(`CategoryRight_${e.category}`,{keyboardKeys:["ArrowRight"],condition:(t,h)=>t==="category"&&e.category===h,handler:$}),n(`CategoryToggle_${e.category}`,{keyboardKeys:["Enter"],condition:(t,h)=>t==="category"&&e.category===h,handler:o}),n(`CategoryLeft_${e.category}`,{keyboardKeys:["ArrowLeft"],condition:(t,h)=>t==="category"&&e.category===h,handler:m}),(t,h)=>{const B=H("n8n-icon"),c=H("n8n-tooltip");return g(),E("div",{class:u(t.$style.categorizedItemsRenderer),"data-category-collapsed":!p.value},[O(Eo,{class:u(t.$style.categoryItem),name:t.category,disabled:t.disabled,active:v.value===t.category,count:y.value,expanded:p.value,"is-trigger":t.isTriggerCategory,"data-keyboard-nav-type":"category","data-keyboard-nav-id":t.category,onClick:o},{default:A(()=>[t.mouseOverTooltip?(g(),E("span",{key:0,class:u(t.$style.mouseOverTooltip)},[O(c,{placement:"top","popper-class":t.$style.tooltipPopper},{content:A(()=>[T("div",{innerHTML:t.mouseOverTooltip},null,8,Ro)]),default:A(()=>[O(B,{icon:"question-circle",size:"small"})]),_:1},8,["popper-class"])],2)):V("",!0)]),_:1},8,["class","name","disabled","active","count","expanded","is-trigger","data-keyboard-nav-id"]),p.value&&y.value>0&&t.$slots.default?(g(),E("div",{key:0,class:u(t.$style.contentSlot)},[G(t.$slots,"default")],2)):V("",!0),p.value?(g(),N(Ne,oe({key:1},t.$attrs,{elements:t.elements,"is-trigger":t.isTriggerCategory}),{default:A(()=>[]),empty:A(()=>[G(t.$slots,"empty",De(yt({elements:t.elements})))]),_:3},16,["elements","is-trigger"])):V("",!0)],10,Lo)}}}),Mo="_mouseOverTooltip_1smyb_1",Oo="_categorizedItemsRenderer_1smyb_9",Bo="_tooltipPopper_1smyb_13",Do="_contentSlot_1smyb_17",Po={mouseOverTooltip:Mo,categorizedItemsRenderer:Oo,tooltipPopper:Bo,contentSlot:Do},Ho={$style:Po},ue=U(Vo,[["__cssModules",Ho]]),Ko={key:0},Uo=["data-keyboard-nav-type","data-keyboard-nav-id","onClick"],zo=20,qo=5,Yo=K({__name:"ItemsRenderer",props:{elements:{default:()=>[]},activeIndex:{},disabled:{type:Boolean},lazyRender:{type:Boolean,default:!0}},emits:["selected","dragstart","dragend"],setup(i,{emit:e}){const d=i,s=e,n=Z([]),_=Z(0),v=b(()=>{var t;return(t=X())==null?void 0:t.activeItemId});function y(){if(d.elements.length<=zo||!d.lazyRender){n.value=d.elements;return}n.value.length<d.elements.length&&(n.value.push(...d.elements.slice(n.value.length,n.value.length+qo)),_.value=window.requestAnimationFrame(y))}function p(t,h,B){if(!d.disabled)switch(t){case"dragstart":case"dragend":case"selected":s("selected",h,B);break;default:s(t,h,B)}}function o(t){t.style.height="0"}function r(t){t.style.height=`${t.scrollHeight}px`}function $(t){t.style.height=`${t.scrollHeight}px`}function m(t){t.style.height="0"}return ye(()=>{y()}),Pe(()=>{window.cancelAnimationFrame(_.value),n.value=[]}),J(()=>d.elements,()=>{window.cancelAnimationFrame(_.value),n.value=[],y()}),(t,h)=>{const B=H("n8n-loading");return t.elements.length>0?(g(),E("div",{key:0,class:u(t.$style.itemsRenderer),name:"accordion",onBeforeEnter:o,onEnter:r,onBeforeLeave:$,onLeave:m},[G(t.$slots,"default"),(g(!0),E(mt,null,ft(t.elements,c=>(g(),E("div",{key:c.uuid},[n.value.includes(c)?(g(),E("div",Ko,[c.type==="section"?(g(),N(ue,{key:0,elements:c.children,expanded:"",category:c.title,onSelected:h[0]||(h[0]=I=>p("selected",I))},null,8,["elements","category"])):(g(),E("div",{key:1,ref_for:!0,ref:"iteratorItems",class:u({clickable:!t.disabled,[t.$style.active]:v.value===c.uuid,[t.$style.iteratorItem]:!0,[t.$style[c.type]]:!0}),"data-test-id":"item-iterator-item","data-keyboard-nav-type":c.type!=="label"?c.type:void 0,"data-keyboard-nav-id":c.uuid,onClick:I=>p("selected",c)},[c.type==="label"?(g(),N(ro,{key:0,item:c},null,8,["item"])):V("",!0),c.type==="subcategory"?(g(),N(eo,{key:1,item:c.properties},null,8,["item"])):V("",!0),c.type==="node"?(g(),N(Xt,{key:2,"node-type":c.properties,active:!0,subcategory:c.subcategory},null,8,["node-type","subcategory"])):V("",!0),c.type==="action"?(g(),N(mo,{key:3,"node-type":c.properties,action:c.properties,active:!0},null,8,["node-type","action"])):c.type==="view"?(g(),N(bo,{key:4,view:c.properties,class:u(t.$style.viewItem)},null,8,["view","class"])):V("",!0)],10,Uo))])):(g(),N(B,{key:1,loading:!0,rows:1,variant:"p",class:u(t.$style.itemSkeleton)},null,8,["class"]))]))),128))],34)):(g(),E("div",{key:1,class:u(t.$style.empty)},[G(t.$slots,"empty")],2))}}}),Wo="_itemSkeleton_5orht_1",jo="_iteratorItem_5orht_5",Fo="_label_5orht_17",Go="_category_5orht_17",Xo="_active_5orht_20",Zo="_empty_5orht_24",Jo="_itemsRenderer_5orht_28",Qo="_view_5orht_37",xo={itemSkeleton:Wo,iteratorItem:jo,label:Fo,category:Go,active:Xo,empty:Zo,itemsRenderer:Jo,view:Qo},en={$style:xo},Ne=U(Yo,[["__cssModules",en]]),tn=["innerHTML"],on=["innerHTML"],nn=["innerHTML"],sn=["innerHTML"],an=["innerHTML"],rn=K({__name:"ActionsMode",emits:{nodeTypeSelected:i=>!0},setup(i,{emit:e}){const d=e,s=se(),{userActivated:n}=nt(),{popViewStack:_,updateCurrentViewStack:v}=D(),{registerKeyHook:y}=X(),{setAddedNodeActionParameters:p,getActionData:o,getPlaceholderTriggerActions:r,parseCategoryActions:$,actionsCategoryLocales:m}=Te(),t=b(()=>R(f.value,m.value.triggers,!1)),h=b(()=>R(f.value,m.value.actions,!a.value)),B=b(()=>R(D().activeViewStack.baselineItems||[],m.value.triggers,!1)),c=b(()=>R(D().activeViewStack.baselineItems||[],m.value.actions,!a.value)),I=b(()=>t.value.length||a.value?m.value.triggers:`${m.value.triggers} (${S.length})`),f=b(()=>(D().activeViewStack.items||[]).filter(w=>w.properties.actionKey!==ie)),a=b(()=>D().activeViewStack.search),C=b(()=>D().activeViewStack.subcategory),L=b(()=>D().activeViewStack.rootView),S=r(C.value||""),P=b(()=>$(D().activeViewStack.baselineItems||[],m.value.triggers,!a.value).length===0),l=b(()=>(D().activeViewStack.baselineItems||[]).some(q=>(q.properties.actionKey??"")===ie)),M=b(()=>L.value===te);y("ActionsKeyRight",{keyboardKeys:["ArrowRight","Enter"],condition:w=>w==="action",handler:We}),y("ActionsKeyLeft",{keyboardKeys:["ArrowLeft"],condition:w=>w==="action",handler:ve});function R(w,k,q=!1){return $(w,k,q)}function ve(){_()}function We(w){const q=[...f.value,...S].find(Y=>Y.uuid===w);q&&ae(q)}function ae(w){var Y,F;if(w.type!=="action")return;const k=o(w.properties);if(S.some(j=>j.key===w.key)&&M.value){const j=f.value[0].key;d("nodeTypeSelected",[k.key,j])}else k.key===st&&((Y=k==null?void 0:k.value)==null?void 0:Y.resource)==="assistant"&&((F=k==null?void 0:k.value)==null?void 0:F.operation)==="message"?d("nodeTypeSelected",[at]):d("nodeTypeSelected",[k.key]);s&&p(k,s,L.value)}function je(){var F,j,Se;const w=D().activeViewStack,k=(F=w.baselineItems||[])==null?void 0:F.filter(_e=>_e.key.toLowerCase().includes("trigger")).length,Y={app_identifier:[...f.value,...S][0].key,actions:(j=w.baselineItems||[])==null?void 0:j.map(_e=>_e.properties.displayName),regular_action_count:((Se=w.baselineItems||[])==null?void 0:Se.length)-k,trigger_action_count:k};be().run("nodeCreateList.onViewActions",Y),s==null||s.trackNodesPanel("nodeCreateList.onViewActions",Y)}function Ie(){v({search:""})}function Fe(){const w={name:"",key:re,value:{authentication:"predefinedCredentialType"}};d("nodeTypeSelected",[re]),s&&p(w);const k=f.value[0].key;be().run("nodeCreateList.onActionsCustmAPIClicked",{app_identifier:k}),s==null||s.trackNodesPanel("nodeCreateList.onActionsCustmAPIClicked",{app_identifier:k})}const Ge=K({props:{rootView:{type:String,required:!0}},setup(w,{slots:k}){return()=>{var q,Y,F,j;return vt("div",{},w.rootView===ge?[(q=k.actions)==null?void 0:q.call(k),(Y=k.triggers)==null?void 0:Y.call(k)]:[(F=k.triggers)==null?void 0:F.call(k),(j=k.actions)==null?void 0:j.call(k)])}}});return ye(()=>{je()}),(w,k)=>{const q=H("n8n-callout"),Y=H("n8n-info-tip");return g(),E("div",{class:u(w.$style.container)},[L.value?(g(),N(z(Ge),{key:0,"root-view":L.value},de({_:2},[M.value||B.value.length!==0?{name:"triggers",fn:A(()=>[O(ue,{elements:t.value,category:I.value,"mouse-over-tooltip":w.$locale.baseText("nodeCreator.actionsTooltip.triggersStartWorkflow"),"is-trigger-category":"",expanded:M.value||h.value.length===0,onSelected:ae},de({_:2},[P.value?{name:"empty",fn:A(()=>[P.value?(g(),N(q,{key:0,theme:"info",iconless:"",slim:"","data-test-id":"actions-panel-no-triggers-callout"},{default:A(()=>[T("span",{innerHTML:w.$locale.baseText("nodeCreator.actionsCallout.noTriggerItems",{interpolate:{nodeName:C.value??""}})},null,8,tn)]),_:1})):V("",!0),O(Ne,{elements:z(S),onSelected:ae},null,8,["elements"])]),key:"0"}:{name:"empty",fn:A(()=>[T("p",{class:u(w.$style.resetSearch),onClick:Ie,innerHTML:w.$locale.baseText("nodeCreator.actionsCategory.noMatchingTriggers")},null,10,["innerHTML"])]),key:"1"}]),1032,["elements","category","mouse-over-tooltip","expanded"])]),key:"0"}:void 0,!M.value||c.value.length!==0?{name:"actions",fn:A(()=>[O(ue,{elements:h.value,category:z(m).actions,"mouse-over-tooltip":w.$locale.baseText("nodeCreator.actionsTooltip.actionsPerformStep"),expanded:!M.value||t.value.length===0,onSelected:ae},{empty:A(()=>[a.value?(g(),E("p",{key:1,class:u(w.$style.resetSearch),"data-test-id":"actions-panel-no-matching-actions",onClick:Ie,innerHTML:w.$locale.baseText("nodeCreator.actionsCategory.noMatchingActions")},null,10,sn)):(g(),N(Y,{key:0,theme:"info",type:"note",class:u(w.$style.actionsEmpty)},{default:A(()=>[T("span",{innerHTML:w.$locale.baseText("nodeCreator.actionsCallout.noActionItems",{interpolate:{nodeName:C.value??""}})},null,8,nn)]),_:1},8,["class"]))]),default:A(()=>[!z(n)&&M.value?(g(),N(q,{key:0,theme:"info",iconless:"",slim:"","data-test-id":"actions-panel-activation-callout"},{default:A(()=>[T("span",{innerHTML:w.$locale.baseText("nodeCreator.actionsCallout.triggersStartWorkflow")},null,8,on)]),_:1})):V("",!0)]),_:1},8,["elements","category","mouse-over-tooltip","expanded"])]),key:"1"}:void 0]),1032,["root-view"])):V("",!0),l.value?(g(),E("div",{key:1,class:u(w.$style.apiHint)},[T("span",{onClick:me(Fe,["prevent"]),innerHTML:w.$locale.baseText("nodeCreator.actionsList.apiCall",{interpolate:{node:C.value??""}})},null,8,an)],2)):V("",!0)],2)}}}),ln="_container_25ezu_1",cn="_resetSearch_25ezu_7",dn="_actionsEmpty_25ezu_21",un="_apiHint_25ezu_29",pn={container:ln,resetSearch:cn,actionsEmpty:dn,apiHint:un},gn={$style:pn},yn=U(rn,[["__cssModules",gn]]),mn={},fn={width:"75px",height:"75px",viewBox:"0 0 75 75",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},vn=_t('<title>no-nodes-keyart</title><g id="Nodes-panel-prototype-V2.1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="nodes-panel-(component)" transform="translate(-2085.000000, -352.000000)"><g id="nodes_panel" transform="translate(1880.000000, 151.000000)"><g id="Panel" transform="translate(50.000000, 0.000000)"><g id="Group-3" transform="translate(105.000000, 171.000000)"><g id="no-nodes-keyart" transform="translate(50.000000, 30.000000)"><rect id="Rectangle" x="0" y="0" width="75" height="75"></rect><g id="Group" transform="translate(6.562500, 8.164062)" fill="#C4C8D1" fill-rule="nonzero"><polygon id="Rectangle" transform="translate(49.192016, 45.302553) rotate(-45.000000) translate(-49.192016, -45.302553) " points="44.5045606 32.0526802 53.8794707 32.0526802 53.8794707 58.5524261 44.5045606 58.5524261"></polygon><path id="Path" d="M48.125,23.0859375 C54.15625,23.0859375 59.0625,18.1796875 59.0625,12.1484375 C59.0625,10.3359375 58.5625,8.6484375 57.78125,7.1484375 L49.34375,15.5859375 L44.6875,10.9296875 L53.125,2.4921875 C51.625,1.7109375 49.9375,1.2109375 48.125,1.2109375 C42.09375,1.2109375 37.1875,6.1171875 37.1875,12.1484375 C37.1875,13.4296875 37.4375,14.6484375 37.84375,15.7734375 L32.0625,21.5546875 L26.5,15.9921875 L28.71875,13.7734375 L24.3125,9.3671875 L30.9375,2.7421875 C27.28125,-0.9140625 21.34375,-0.9140625 17.6875,2.7421875 L6.625,13.8046875 L11.03125,18.2109375 L2.21875,18.2109375 L1.38777878e-15,20.4296875 L11.0625,31.4921875 L13.28125,29.2734375 L13.28125,20.4296875 L17.6875,24.8359375 L19.90625,22.6171875 L25.46875,28.1796875 L2.3125,51.3359375 L8.9375,57.9609375 L44.5,22.4296875 C45.625,22.8359375 46.84375,23.0859375 48.125,23.0859375 Z"></path></g></g></g></g></g></g></g>',2),_n=[vn];function hn(i,e){return g(),E("svg",fn,_n)}const bn=U(mn,[["render",hn]]),$n=["textContent"],wn=["textContent"],kn=K({__name:"NoResults",props:{showIcon:{type:Boolean},showRequest:{type:Boolean},rootView:{}},setup(i){return(e,d)=>{const s=H("n8n-link"),n=H("font-awesome-icon");return g(),E("div",{class:u({[e.$style.noResults]:!0,[e.$style.iconless]:!e.showIcon}),"data-test-id":"node-creator-no-results"},[e.showIcon?(g(),E("div",{key:0,class:u(e.$style.icon)},[O(bn)],2)):V("",!0),T("div",{class:u(e.$style.title)},[G(e.$slots,"title"),T("p",{textContent:W(e.$locale.baseText("nodeCreator.noResults.weDidntMakeThatYet"))},null,8,$n),T("div",{class:u(e.$style.action)},[ee(W(e.$locale.baseText("nodeCreator.noResults.dontWorryYouCanProbablyDoItWithThe"))+" ",1),e.rootView===z(ge)?(g(),N(s,{key:0,onClick:d[0]||(d[0]=_=>e.$emit("addHttpNode"))},{default:A(()=>[ee(W(e.$locale.baseText("nodeCreator.noResults.httpRequest")),1)]),_:1})):V("",!0),e.rootView===z(te)?(g(),N(s,{key:1,onClick:d[1]||(d[1]=_=>e.$emit("addWebhookNode"))},{default:A(()=>[ee(W(e.$locale.baseText("nodeCreator.noResults.webhook")),1)]),_:1})):V("",!0),ee(" "+W(e.$locale.baseText("nodeCreator.noResults.node")),1)],2)],2),e.showRequest?(g(),E("div",{key:1,class:u(e.$style.request)},[T("p",{textContent:W(e.$locale.baseText("nodeCreator.noResults.wantUsToMakeItFaster"))},null,8,wn),T("div",null,[O(s,{to:z(rt)},{default:A(()=>[T("span",null,W(e.$locale.baseText("nodeCreator.noResults.requestTheNode")),1),ee("  "),T("span",null,[O(n,{class:u(e.$style.external),icon:"external-link-alt",title:e.$locale.baseText("nodeCreator.noResults.requestTheNode")},null,8,["class","title"])])]),_:1},8,["to"])])],2)):V("",!0)],2)}}}),Cn="_noResults_8axui_1",Tn="_title_8axui_14",Nn="_action_8axui_23",In="_request_8axui_24",Sn="_icon_8axui_40",An="_external_8axui_46",En={noResults:Cn,title:Tn,action:Nn,request:In,icon:Sn,external:An},Ln={$style:En},Rn=U(kn,[["__cssModules",Ln]]),Vn=K({__name:"NodesMode",emits:{nodeTypeSelected:i=>!0},setup(i,{emit:e}){const d=e,s=pe(),n=se(),{mergedNodes:_,actions:v}=Q(),{baseUrl:y}=it(),{pushViewStack:p,popViewStack:o}=D(),{registerKeyHook:r}=X(),$=b(()=>D().activeViewStack),m=b(()=>D().globalSearchItemsDiff);function t(a){d("nodeTypeSelected",a)}function h(a){var C,L,S;if(a.type==="subcategory"){const P=qe(a.properties.title),l=s.baseText(`nodeCreator.subcategoryNames.${P}`);p({subcategory:a.key,title:l,mode:"nodes",...a.properties.icon?{nodeIcon:{icon:a.properties.icon,iconType:"icon"}}:{},...a.properties.panelClass?{panelClass:a.properties.panelClass}:{},rootView:$.value.rootView,forceIncludeNodes:a.properties.forceIncludeNodes,baseFilter:c,itemsMapper:B,sections:a.properties.sections}),n.trackNodesPanel("nodeCreateList.onSubcategorySelected",{subcategory:a.key})}if(a.type==="node"){const P=(v==null?void 0:v[a.key])||[];if(P.length<=1){t([a.key]);return}const l=a.properties.iconUrl?`${y}${a.properties.iconUrl}`:(C=a.properties.icon)==null?void 0:C.split(":")[1],M=P==null?void 0:P.map(R=>pt(R,a.properties.displayName,"action"));p({subcategory:a.properties.displayName,title:a.properties.displayName,nodeIcon:{color:(S=(L=a.properties.defaults)==null?void 0:L.color)==null?void 0:S.toString(),icon:l,iconType:a.properties.iconUrl?"file":"icon"},rootView:$.value.rootView,hasSearch:!0,mode:"actions",items:M})}if(a.type==="view"){const P={[te]:He,[ge]:Ke,[Le]:Ue,[Re]:ze},l=a.key,M=P[l];if(!M){console.warn(`No view found for ${l}`);return}const R=M(_);p({title:R.title,subtitle:(R==null?void 0:R.subtitle)??"",info:(R==null?void 0:R.info)??"",items:R.items,hasSearch:!0,rootView:R.value,mode:"nodes",searchItems:_})}}function B(a){var P,l;if(a.type!=="node")return a;const C=a.properties.group.includes("trigger"),S=((v==null?void 0:v[a.key])||[]).length>0;return C&&S&&((P=a.properties)!=null&&P.codex&&(a.properties.codex.alias=[...((l=a.properties.codex)==null?void 0:l.alias)||[],a.properties.displayName]),a.properties.displayName=a.properties.displayName.replace(" Trigger","")),a}function c(a){if(a.type==="section")return!0;if(a.type!=="node")return!1;const C=a.properties.group.includes("trigger"),S=((v==null?void 0:v[a.key])||[]).length>0;return $.value.rootView===te?S||C:S||!C}function I(){o()}function f(a){const L=gt([...$.value.items??[],...m.value??[]]).find(S=>S.uuid===a);L&&h(L)}return r("MainViewArrowRight",{keyboardKeys:["ArrowRight","Enter"],condition:a=>["subcategory","node","view"].includes(a),handler:f}),r("MainViewArrowLeft",{keyboardKeys:["ArrowLeft"],condition:a=>["subcategory","node","view"].includes(a),handler:I}),(a,C)=>(g(),E("span",null,[O(Ne,{elements:$.value.items,class:u(a.$style.items),onSelected:h},de({_:2},[($.value.items||[]).length===0&&m.value.length===0?{name:"empty",fn:A(()=>[O(Rn,{"root-view":$.value.rootView,"show-icon":"","show-request":"",onAddWebhookNode:C[0]||(C[0]=L=>t([z(Ee)])),onAddHttpNode:C[1]||(C[1]=L=>t([z(re)]))},null,8,["root-view"])]),key:"0"}:void 0]),1032,["elements","class"]),m.value.length>0?(g(),N(ue,{key:0,elements:m.value,category:a.$locale.baseText("nodeCreator.categoryNames.otherCategories"),onSelected:h},null,8,["elements","category"])):V("",!0)]))}}),Mn="_items_1mzys_1",On={items:Mn},Bn={$style:On},Dn=U(Vn,[["__cssModules",Bn]]),Pn=["textContent"],Hn=["textContent"],Kn=K({__name:"NodesListPanel",setup(i){const e=pe(),{mergedNodes:d}=Q(),{pushViewStack:s,popViewStack:n,updateCurrentViewStack:_}=D(),{setActiveItemIndex:v,attachKeydownEvent:y,detachKeydownEvent:p}=X(),o=b(()=>D().activeViewStack),r=b(()=>D().viewStacks),$=b(()=>D().activeViewStackMode==="actions"),m=b(()=>$.value?e.baseText("nodeCreator.actionsCategory.searchActions",{interpolate:{node:o.value.title}}):e.baseText("nodeCreator.searchBar.searchNodes")),t=b(()=>Q().selectedView);function h(f=""){return o.value.activeIndex?o.value.activeIndex:o.value.mode==="actions"?1:o.value.sections?f?0:1:0}function B(f){o.value.uuid&&(_({search:f}),v(h(f)))}function c(){v(h())}ye(()=>{y(),v(h())}),Pe(()=>{p()}),J(()=>t.value,f=>{const a={[te]:He,[ge]:Ke,[Le]:Ue,[Re]:ze},C=f,L=a[C];if(!L){console.warn(`No view found for ${C}`);return}const S=L(d);s({title:S.title,subtitle:(S==null?void 0:S.subtitle)??"",items:S.items,info:S.info,hasSearch:!0,mode:"nodes",rootView:f,searchItems:d})},{immediate:!0});function I(){n()}return(f,a)=>{const C=H("font-awesome-icon"),L=H("n8n-node-icon"),S=H("n8n-notice");return r.value.length>0?(g(),N(Ve,{key:0,name:`panel-slide-${o.value.transitionDirection}`,onAfterLeave:c},{default:A(()=>[(g(),E("aside",{key:`${o.value.uuid}`,class:u([f.$style.nodesListPanel,o.value.panelClass]),onKeydownCapture:a[0]||(a[0]=me(()=>{},["stop"]))},[T("header",{class:u({[f.$style.header]:!0,[f.$style.hasBg]:!o.value.subtitle,"nodes-list-panel-header":!0}),"data-test-id":"nodes-list-header"},[T("div",{class:u(f.$style.top)},[r.value.length>1&&!o.value.preventBack?(g(),E("button",{key:0,class:u(f.$style.backButton),onClick:I},[O(C,{class:u(f.$style.backButtonIcon),icon:"arrow-left",size:"2x"},null,8,["class"])],2)):V("",!0),o.value.nodeIcon?(g(),N(L,{key:1,class:u(f.$style.nodeIcon),type:o.value.nodeIcon.iconType||"unknown",src:o.value.nodeIcon.icon,name:o.value.nodeIcon.icon,color:o.value.nodeIcon.color,circle:!1,"show-tooltip":!1,size:20},null,8,["class","type","src","name","color"])):V("",!0),o.value.title?(g(),E("p",{key:2,class:u(f.$style.title),textContent:W(o.value.title)},null,10,Pn)):V("",!0)],2),o.value.subtitle?(g(),E("p",{key:0,class:u({[f.$style.subtitle]:!0,[f.$style.offsetSubtitle]:r.value.length>1}),textContent:W(o.value.subtitle)},null,10,Hn)):V("",!0)],2),o.value.hasSearch?(g(),N(Pt,{key:0,class:u(f.$style.searchBar),placeholder:m.value?m.value:f.$locale.baseText("nodeCreator.searchBar.searchNodes"),"model-value":o.value.search,"onUpdate:modelValue":B},null,8,["class","placeholder","model-value"])):V("",!0),T("div",{class:u(f.$style.renderedItems)},[o.value.info&&!o.value.search?(g(),N(S,{key:0,class:u(f.$style.info),content:o.value.info,theme:"warning"},null,8,["class","content"])):V("",!0),$.value&&o.value.subcategory?(g(),N(yn,De(oe({key:1},f.$attrs)),null,16)):(g(),N(Dn,oe({key:2,"root-view":t.value},f.$attrs),null,16,["root-view"]))],2)],34))]),_:1},8,["name"])):V("",!0)}}}),Un="_info_vhrjt_23",zn="_backButton_vhrjt_27",qn="_backButtonIcon_vhrjt_34",Yn="_nodeIcon_vhrjt_40",Wn="_renderedItems_vhrjt_45",jn="_searchBar_vhrjt_57",Fn="_nodesListPanel_vhrjt_61",Gn="_footer_vhrjt_79",Xn="_top_vhrjt_90",Zn="_header_vhrjt_95",Jn="_hasBg_vhrjt_101",Qn="_title_vhrjt_106",xn="_subtitle_vhrjt_116",es="_offsetSubtitle_vhrjt_124",ts={info:Un,backButton:zn,backButtonIcon:qn,nodeIcon:Yn,renderedItems:Wn,searchBar:jn,nodesListPanel:Fn,footer:Gn,top:Xn,header:Zn,hasBg:Jn,title:Qn,subtitle:xn,offsetSubtitle:es},os={$style:ts},ns=U(Kn,[["__cssModules",os]]),ss=K({__name:"NodeCreator",props:{active:{type:Boolean},onNodeTypeSelected:{type:Function}},emits:["closeNodeCreator","nodeTypeSelected"],setup(i,{emit:e}){const d=i,{resetViewStacks:s}=D(),{registerKeyHook:n}=X(),_=e,v=lt(),y=ct(),{setShowScrim:p,setActions:o,setMergeNodes:r}=Q(),{generateMergedNodesAndActions:$}=It(),m=we({nodeCreator:null,mousedownInsideEvent:null}),t=b(()=>Q().showScrim),h=b(()=>D().viewStacks.length),B=b(()=>y.assistantChatOpen),c=b(()=>({top:`${v.bannersHeight+v.headerHeight}px`}));function I(){var l;if(m.mousedownInsideEvent){const M=new MouseEvent("click",{bubbles:!0,cancelable:!0});(l=m.mousedownInsideEvent.target)==null||l.dispatchEvent(M),m.mousedownInsideEvent=null,f()}}function f(){document.removeEventListener("mouseup",I),document.removeEventListener("touchstart",I)}function a(){m.mousedownInsideEvent=null,f()}function C(l){m.mousedownInsideEvent=l,document.addEventListener("mouseup",I),document.addEventListener("touchstart",I)}function L(l){l.preventDefault()}function S(l){if(!l.dataTransfer)return;const M=l.dataTransfer.getData($e),R=m.nodeCreator.getBoundingClientRect();M&&l.pageX>=R.x&&l.pageY>=R.y&&l.stopPropagation()}J(()=>d.active,l=>{l||(p(!1),s())}),J(h,l=>{l===0&&(_("closeNodeCreator"),p(!1))}),n("NodeCreatorCloseEscape",{keyboardKeys:["Escape"],handler:()=>_("closeNodeCreator")}),n("NodeCreatorCloseTab",{keyboardKeys:["Tab"],handler:()=>_("closeNodeCreator")}),J(()=>({httpOnlyCredentials:dt().httpOnlyCredentialTypes,nodeTypes:ut().visibleNodeTypes}),({nodeTypes:l,httpOnlyCredentials:M})=>{const{actions:R,mergedNodes:ve}=$(l,M);o(R),r(ve)},{immediate:!0});const{nodeCreator:P}=ke(m);return Me(()=>{f()}),(l,M)=>(g(),E("div",null,[T("aside",{class:u({[l.$style.nodeCreatorScrim]:!0,[l.$style.active]:t.value})},null,2),O(wt,null,{default:A(()=>[l.active?(g(),E("div",{key:0,ref_key:"nodeCreator",ref:P,class:u({[l.$style.nodeCreator]:!0,[l.$style.chatOpened]:B.value}),style:Ce(c.value),"data-test-id":"node-creator",onDragover:L,onDrop:S,onMousedown:C,onMouseup:a},[O(ns,{onNodeTypeSelected:l.onNodeTypeSelected},null,8,["onNodeTypeSelected"])],38)):V("",!0)]),_:1})]))}}),as="_nodeCreator_1q30p_5",rs="_chatOpened_1q30p_15",is="_nodeCreatorScrim_1q30p_19",ls="_active_1q30p_31",cs={nodeCreator:as,chatOpened:rs,nodeCreatorScrim:is,active:ls},ds={$style:cs},qs=U(ss,[["__cssModules",ds]]);export{qs as default};
2
- //# sourceMappingURL=NodeCreator-ESjCn1LZ.js.map
1
+ import{N as Xe,dR as re,eo as Ze,bb as ie,a3 as be,aP as Je,cp as Qe,ep as xe,aa as et,ad as tt,a9 as le,w as pe,bG as $e,bF as Ae,bH as ce,F as se,an as Ee,j as ot,a as nt,bA as te,ea as st,e9 as at,ch as ge,eq as rt,l as it,c7 as Le,dc as Re,i as lt,bg as ct,ar as dt,a4 as ut}from"./index-BQ6Z7VRj.js";import{u as Q,t as pt,f as gt}from"./nodeCreator.store-DAcGJEHy.js";import{G as K,l as g,M as N,O as A,H as G,W as Ve,Z as we,b as ye,y as Me,_ as ke,ag as H,m as E,p as T,U as O,I as u,R as V,r as Z,e as b,a9 as de,u as z,P as Oe,J as Ce,a2 as me,V as Be,K as oe,T as W,d as J,ab as De,al as yt,Y as Pe,F as mt,a7 as ft,af as vt,aR as _t,S as ee}from"./vendor-CUQSof8H.js";import{_ as U}from"./n8n-DT_bOwuZ.js";import{u as D,a as X,T as He,R as Ke,A as Ue,b as ze}from"./useViewStacks-CSn_e3gA.js";import{m as ht,D as fe,E as qe}from"./lodash-es-BFdF4Er8.js";import{u as Te}from"./NodeCreation-R9yLdNU1.js";import"./pinia-Dh4cxKZ0.js";import"./axios-Mm4CS0gO.js";import"./flatted-DN8lQ2XG.js";import"./@vueuse/core-BiGWdRh4.js";import"./@n8n/permissions-BxxteU-C.js";import"./dateformat-C0ZgbPvs.js";import"./vue-i18n-CG6eDDlD.js";import"./uuid-SoommWqA.js";import"./luxon-CLwAIbs0.js";import"./@n8n/codemirror-lang-sql-x14jMqbG.js";import"./@lezer/common-B6ct0j_v.js";import"./prettier-bS6l4Vb1.js";import"./@jsplumb/util-DS-9vq_E.js";import"./@jsplumb/core-CVBraiyY.js";import"./@jsplumb/common-CF-b-6-M.js";import"./@jsplumb/connector-bezier-BGU0Ovbw.js";import"./@jsplumb/browser-ui-BVF2KoJK.js";import"./codemirror-lang-html-n8n-DcTmlMkf.js";import"./@n8n/codemirror-lang-Qkdx7NoQ.js";import"./esprima-next-nhoSXAeq.js";import"./fast-json-stable-stringify-wY6jAr7b.js";import"./timeago.js-CiyKClrF.js";import"./qrcode.vue-DOxvr88t.js";import"./vue3-touch-events-mV0oX_Sl.js";import"./chart.js-343vZi4M.js";const bt=K({name:"SlideTransition"});function $t(i,e,d,s,n,_){return g(),N(Ve,{name:"slide"},{default:A(()=>[G(i.$slots,"default",{},void 0,!0)]),_:3})}const wt=U(bt,[["render",$t],["__scopeId","data-v-88e2114c"]]),Ye="placeholder_recommended";function kt(...i){return Xe.baseText(...i)}const x=ht(kt,(...i)=>JSON.stringify(i)),he={"n8n-nodes-base.hubspotTrigger":(i,e)=>{var s,n,_;const d=(s=i==null?void 0:i.options)==null?void 0:s[0];return(_=(n=d==null?void 0:d.values[0])==null?void 0:n.options)==null?void 0:_.map(v=>({...ne(e),actionKey:v.value,displayName:x("nodeCreator.actionsCategory.onEvent",{interpolate:{event:fe(v.name)}}),description:v.description??"",displayOptions:i.displayOptions,values:{eventsUi:{eventValues:[{name:v.value}]}}}))}};function ne(i,e){const d=i.group.includes("trigger"),s=x(d?"nodeCreator.actionsCategory.triggers":"nodeCreator.actionsCategory.actions");return{name:i.name,group:i.group,codex:{label:e??"",categories:[s]},iconUrl:i.iconUrl,outputs:i.outputs,icon:i.icon,defaults:i.defaults}}function Ct(i){if(i.properties.find(n=>n.name==="resource"))return[];const e=i.properties.find(n=>{var _;return((_=n.name)==null?void 0:_.toLowerCase())==="operation"});if(!(e!=null&&e.options))return[];const s=e.options.filter(n=>!["*",""," "].includes(n.name)).map(n=>({...ne(i),actionKey:n.value,displayName:n.action??fe(n.name),description:n.description??"",displayOptions:e.displayOptions,values:{[e.name]:e.type==="multiOptions"?[n.value]:n.value}}));return s.length===0?[]:s}function Tt(i){var y,p;const e=["event","events","trigger on"],d=(y=i.displayName)==null?void 0:y.toLowerCase().includes("trigger"),s=i.properties.find(o=>{var r;return e.includes((r=o.displayName)==null?void 0:r.toLowerCase())});if(!d)return[];if(!(s!=null&&s.options))return[{...ne(i),actionKey:Ye,displayName:x("nodeCreator.actionsCategory.onNewEvent",{interpolate:{event:i.displayName.replace("Trigger","").trimEnd()}}),description:""}];const n=s.options.filter(o=>!["*",""," "].includes(o.name));return((p=he[i.name])==null?void 0:p.call(he,s,i))??n.map(o=>({...ne(i),actionKey:o.value,displayName:o.action??x("nodeCreator.actionsCategory.onEvent",{interpolate:{event:fe(o.name)}}),description:o.description??"",displayOptions:s.displayOptions,values:{[s.name]:s.type==="multiOptions"?[o.value]:o.value}}))}function Nt(i){const e=[];return i.properties.filter(s=>{var n;return((n=s.displayName)==null?void 0:n.toLowerCase())==="resource"}).forEach(s=>{(s.options||[]).filter(n=>n.value!==ie).forEach((n,_,v)=>{const y=v.length===1,p=i.properties.find(r=>{var c,I,f,a,C;const $=r.name==="operation",m=((f=(I=(c=r.displayOptions)==null?void 0:c.show)==null?void 0:I.resource)==null?void 0:f.includes(n.value))??y,t=(C=(a=r.displayOptions)==null?void 0:a.show)==null?void 0:C["@version"],h=Array.isArray(i.version)?i.version:[i.version],B=t?t.some(L=>typeof L=="number"&&h.includes(L)):!0;return $&&m&&B});if(!(p!=null&&p.options))return;const o=(p.options||[]).map(r=>{var t;const $=r.action??`${n.name} ${fe(r.name)}`,m=y?{show:{resource:[(t=v[0])==null?void 0:t.value]}}:p==null?void 0:p.displayOptions;return{...ne(i,`${n.name} ${x("nodeCreator.actionsCategory.actions")}`),actionKey:r.value,description:(r==null?void 0:r.description)??"",displayOptions:m,values:{operation:(p==null?void 0:p.type)==="multiOptions"?[r.value]:r.value},displayName:$,group:["trigger"]}});e.push(...o)})}),e}function It(){function i(n){return n?[...Tt(n),...Ct(n),...Nt(n)]:[]}function e(n){return n.length<=1?[]:n.filter((_,v,y)=>{if(_.actionKey===ie)return!1;const o=_.actionKey===Ye;return!o||o&&y.length>1})}function d(n){const{displayName:_,defaults:v,description:y,name:p,group:o,icon:r,iconUrl:$,badgeIconUrl:m,outputs:t,codex:h}=n;return{displayName:_,defaults:v,description:y,name:p,group:o,icon:r,iconUrl:$,badgeIconUrl:m,outputs:t,codex:h}}function s(n,_){const v=[...n],y={},p=[];return v.filter(o=>!o.group.includes("trigger")).forEach(o=>{const r=i(o);if(y[o.name]=r,o.name===re){const m=_.map(t=>{const h=Ze(o,t);return h?d(h):null}).filter(t=>t!==null);p.push(...m)}p.push(d(o))}),v.filter(o=>o.group.includes("trigger")).forEach(o=>{const r=o.name.replace("Trigger",""),$=i(o),m=(y==null?void 0:y[r])||[],t=p.find(h=>h.name===r);if(t&&(m==null?void 0:m.length)>0){const h=e([...m,...$]);y[r]=h,t.description=o.description}else y[o.name]=e($),p.push(d(o))}),{actions:y,mergedNodes:p}}return{generateMergedNodesAndActions:s}}const St=["placeholder","value"],At=K({__name:"SearchBar",props:{placeholder:{default:""},modelValue:{default:""}},emits:["update:modelValue"],setup(i,{expose:e,emit:d}){const s=d,n=we({inputRef:null}),_=be();function v(){var r;(r=n.inputRef)==null||r.focus()}function y(r){const $=r.target;s("update:modelValue",$.value)}function p(){s("update:modelValue","")}ye(()=>{_.run("nodeCreatorSearchBar.mount",{inputRef:n.inputRef}),setTimeout(v,0)}),Me(()=>{var r;(r=n.inputRef)==null||r.remove()});const{inputRef:o}=ke(n);return e({focus:v}),(r,$)=>{const m=H("font-awesome-icon");return g(),E("div",{class:u(r.$style.searchContainer),"data-test-id":"search-bar"},[T("div",{class:u({[r.$style.prefix]:!0,[r.$style.active]:r.modelValue.length>0})},[O(m,{icon:"search",size:"sm"})],2),T("div",{class:u(r.$style.text)},[T("input",{ref_key:"inputRef",ref:o,placeholder:r.placeholder,value:r.modelValue,class:u(r.$style.input),autofocus:"","data-test-id":"node-creator-search-bar",tabindex:"0",onInput:y},null,42,St)],2),r.modelValue.length>0?(g(),E("div",{key:0,class:u(r.$style.suffix),onClick:p},[T("button",{class:u([r.$style.clear,r.$style.clickable])},[O(m,{icon:"times-circle"})],2)],2)):V("",!0)],2)}}}),Et="_searchContainer_dci3d_1",Lt="_prefix_dci3d_17",Rt="_active_dci3d_22",Vt="_text_dci3d_26",Mt="_suffix_dci3d_42",Ot="_clear_dci3d_48",Bt={searchContainer:Et,prefix:Lt,active:Rt,text:Vt,suffix:Mt,clear:Ot},Dt={$style:Bt},Pt=U(At,[["__cssModules",Dt]]),Ht=["innerHTML"],Kt=K({__name:"NodeItem",props:{nodeType:{},subcategory:{default:void 0},active:{type:Boolean,default:!1}},setup(i){const e=i,d=pe(),s=se(),{actions:n}=Q(),{getAddedNodesAndConnections:_}=Te(),{isSubNodeType:v}=Je({nodeType:e.nodeType}),y=Z(!1),p=Z({x:-100,y:-100}),o=Z(null),r=b(()=>e.subcategory===Qe&&!e.nodeType.name.startsWith(xe)?"":d.headerText({key:`headers.${B.value}.description`,fallback:e.nodeType.description})),$=b(()=>t.value),m=b(()=>t.value?"node-creator-action-item":"node-creator-node-item"),t=b(()=>h.value.length>1),h=b(()=>n[e.nodeType.name]||[]),B=b(()=>d.shortNodeType(e.nodeType.name)||""),c=b(()=>({top:`${p.value.y}px`,left:`${p.value.x}px`})),I=b(()=>et(e.nodeType.name)),f=b(()=>{const l=e.nodeType.displayName.trimEnd();return d.headerText({key:`headers.${B.value}.displayName`,fallback:t.value?l.replace("Trigger",""):l})}),a=b(()=>e.nodeType.group.includes("trigger")&&!t.value);function C(l){document.body.addEventListener("dragover",L);const{pageX:M,pageY:R}=l;l.dataTransfer&&(l.dataTransfer.effectAllowed="copy",l.dataTransfer.dropEffect="copy",l.dataTransfer.setDragImage(o.value,0,0),l.dataTransfer.setData($e,JSON.stringify(_([{type:e.nodeType.name}])))),y.value=!0,p.value={x:M,y:R}}function L(l){if(!y.value||l.pageX===0&&l.pageY===0)return;const[M,R]=Ae([],[l.pageX-ce/2,l.pageY-ce/2]);p.value={x:M,y:R}}function S(){document.body.removeEventListener("dragover",L),y.value=!1,setTimeout(()=>{p.value={x:-100,y:-100}},300)}function P(l){l.target.localName==="a"&&s.track("user clicked cnr docs link",{source:"nodes panel node"})}return(l,M)=>{const R=H("n8n-node-creator-node");return g(),N(R,{draggable:!$.value,class:u(l.$style.nodeItem),description:r.value,title:f.value,"show-action-arrow":$.value,"is-trigger":a.value,"data-test-id":m.value,onDragstart:C,onDragend:S},de({icon:A(()=>[z(v)?(g(),E("div",{key:0,class:u(l.$style.subNodeBackground)},null,2)):V("",!0),O(le,{class:u(l.$style.nodeIcon),"node-type":l.nodeType},null,8,["class","node-type"])]),dragContent:A(()=>[T("div",{ref_key:"draggableDataTransfer",ref:o,class:u(l.$style.draggableDataTransfer)},null,2),Oe(T("div",{class:u(l.$style.draggable),style:Ce(c.value)},[O(le,{"node-type":l.nodeType,size:40,shrink:!1,onClickCapture:M[0]||(M[0]=me(()=>{},["stop"]))},null,8,["node-type"])],6),[[Be,y.value]])]),_:2},[I.value?{name:"tooltip",fn:A(()=>[T("p",{class:u(l.$style.communityNodeIcon),onClick:P,innerHTML:z(d).baseText("generic.communityNode.tooltip",{interpolate:{packageName:l.nodeType.name.split(".")[0],docURL:z(tt)}})},null,10,Ht)]),key:"0"}:void 0]),1032,["draggable","class","description","title","show-action-arrow","is-trigger","data-test-id"])}}}),Ut="_nodeItem_124lg_1",zt="_nodeIcon_124lg_9",qt="_subNodeBackground_124lg_13",Yt="_communityNodeIcon_124lg_23",Wt="_draggable_124lg_27",jt="_draggableDataTransfer_124lg_41",Ft={nodeItem:Ut,nodeIcon:zt,subNodeBackground:qt,communityNodeIcon:Yt,draggable:Wt,draggableDataTransfer:jt},Gt={$style:Ft},Xt=U(Kt,[["__cssModules",Gt]]),Zt=K({__name:"SubcategoryItem",props:{item:{}},setup(i){const e=i,d=pe(),s=b(()=>qe(e.item.subcategory||e.item.title));return(n,_)=>{const v=H("n8n-node-icon"),y=H("n8n-node-creator-node");return g(),N(y,{class:u(n.$style.subCategory),title:z(d).baseText(`nodeCreator.subcategoryNames.${s.value}`),"is-trigger":!1,description:z(d).baseText(`nodeCreator.subcategoryDescriptions.${s.value}`),"show-action-arrow":!0},{icon:A(()=>[O(v,oe({type:"icon",name:n.item.icon,circle:!1,"show-tooltip":!1},n.item.iconProps),null,16,["name"])]),_:1},8,["class","title","description"])}}}),Jt="_subCategory_qrigt_1",Qt={subCategory:Jt},xt={$style:Qt},eo=U(Zt,[["__cssModules",xt]]),to=["textContent"],oo=K({__name:"LabelItem",props:{item:{}},setup(i){return(e,d)=>(g(),E("div",{class:u(e.$style.label)},[T("span",{class:u(e.$style.name),textContent:W(e.item.key)},null,10,to)],2))}}),no="_label_7jmhw_1",so={label:no},ao={$style:so},ro=U(oo,[["__cssModules",ao]]),io=K({__name:"ActionItem",props:{nodeType:{},action:{}},setup(i){const e=i,d=se(),{getActionData:s,getAddedNodesAndConnections:n,setAddedNodeActionParameters:_}=Te(),{activeViewStack:v}=D(),y=we({dragging:!1,draggablePosition:{x:-100,y:-100},storeWatcher:null,draggableDataTransfer:null}),p=b(()=>({top:`${y.draggablePosition.y}px`,left:`${y.draggablePosition.x}px`})),o=b(()=>s(e.action)),r=c=>{var I;return((I=c.name)==null?void 0:I.toLowerCase().includes("trigger"))||c.name===Ee};function $(c){document.body.addEventListener("dragover",m);const{pageX:I,pageY:f}=c;c.dataTransfer&&o.value.key&&(c.dataTransfer.effectAllowed="copy",c.dataTransfer.dropEffect="copy",c.dataTransfer.setDragImage(y.draggableDataTransfer,0,0),c.dataTransfer.setData($e,JSON.stringify(n([{type:o.value.key}]))),d&&(y.storeWatcher=_(o.value,d,v.rootView)),document.body.addEventListener("dragend",t)),y.dragging=!0,y.draggablePosition={x:I,y:f}}function m(c){if(!y.dragging||c.pageX===0&&c.pageY===0)return;const[I,f]=Ae([],[c.pageX-ce/2,c.pageY-ce/2]);y.draggablePosition={x:I,y:f}}function t(){y.storeWatcher&&y.storeWatcher(),document.body.removeEventListener("dragend",t),document.body.removeEventListener("dragover",m),y.dragging=!1,setTimeout(()=>{y.draggablePosition={x:-100,y:-100}},300)}const{draggableDataTransfer:h,dragging:B}=ke(y);return(c,I)=>{const f=H("n8n-node-creator-node");return g(),N(f,{draggable:"",class:u(c.$style.action),title:c.action.displayName,"is-trigger":r(c.action),"data-keyboard-nav":"true",onDragstart:$,onDragend:t},{dragContent:A(()=>[T("div",{ref_key:"draggableDataTransfer",ref:h,class:u(c.$style.draggableDataTransfer)},null,2),Oe(T("div",{class:u(c.$style.draggable),style:Ce(p.value)},[O(le,{"node-type":c.nodeType,size:40,shrink:!1,onClickCapture:I[0]||(I[0]=me(()=>{},["stop"]))},null,8,["node-type"])],6),[[Be,z(B)]])]),icon:A(()=>[O(le,{"node-type":c.action},null,8,["node-type"])]),_:1},8,["class","title","is-trigger"])}}}),lo="_action_139su_1",co="_nodeIcon_139su_13",uo="_draggable_139su_17",po="_draggableDataTransfer_139su_31",go={action:lo,nodeIcon:co,draggable:uo,draggableDataTransfer:po},yo={$style:go},mo=U(io,[["__cssModules",yo]]),fo=K({__name:"ViewItem",props:{view:{}},setup(i){return(e,d)=>{const s=H("n8n-node-icon"),n=H("n8n-node-creator-node");return g(),N(n,{class:u(e.$style.view),title:e.view.title,tag:e.view.tag,"is-trigger":!1,description:e.view.description,"show-action-arrow":!0},{icon:A(()=>[O(s,{type:"icon",name:e.view.icon,circle:!1,"show-tooltip":!1},null,8,["name"])]),_:1},8,["class","title","tag","description"])}}}),vo="_view_71tui_1",_o={view:vo},ho={$style:_o},bo=U(fo,[["__cssModules",ho]]),$o=["textContent"],wo=K({__name:"CategoryItem",props:{expanded:{type:Boolean,default:!0},active:{type:Boolean},count:{},name:{},isTrigger:{type:Boolean}},setup(i){const e=i,d=b(()=>{const s=e.count||0;return s>0?`${e.name} (${s})`:e.name});return(s,n)=>{const _=H("font-awesome-icon");return g(),E("div",oe({class:s.$style.categoryWrapper},s.$attrs,{"data-keyboard-nav":"true","data-test-id":"node-creator-category-item"}),[T("div",{class:u({[s.$style.category]:!0,[s.$style.active]:s.active})},[T("span",{class:u(s.$style.name)},[T("span",{textContent:W(d.value)},null,8,$o),s.isTrigger?(g(),N(_,{key:0,icon:"bolt",size:"xs",class:u(s.$style.triggerIcon)},null,8,["class"])):V("",!0),G(s.$slots,"default")],2),s.expanded?(g(),N(_,{key:0,icon:"chevron-down",class:u(s.$style.arrow)},null,8,["class"])):(g(),N(_,{key:1,class:u(s.$style.arrow),icon:"chevron-up"},null,8,["class"]))],2)],16)}}}),ko="_triggerIcon_b4ocq_1",Co="_category_b4ocq_6",To="_active_b4ocq_27",No="_name_b4ocq_31",Io="_arrow_b4ocq_36",So={triggerIcon:ko,category:Co,active:To,name:No,arrow:Io},Ao={$style:So},Eo=U(wo,[["__cssModules",Ao]]),Lo=["data-category-collapsed"],Ro=["innerHTML"],Vo=K({__name:"CategorizedItemsRenderer",props:{elements:{default:()=>[]},category:{},disabled:{type:Boolean},activeIndex:{},isTriggerCategory:{type:Boolean},mouseOverTooltip:{},expanded:{type:Boolean}},setup(i){const e=i,d=se(),{popViewStack:s}=D(),{registerKeyHook:n}=X(),{workflowId:_}=ot(),v=b(()=>{var t;return(t=X())==null?void 0:t.activeItemId}),y=b(()=>e.elements.filter(({type:t})=>t==="action").length),p=Z(e.expanded??!1);function o(){r(!p.value)}function r(t){p.value=t,p.value&&d.trackNodesPanel("nodeCreateList.onCategoryExpanded",{category_name:e.category,workflow_id:_})}function $(){p.value||r(!0)}function m(){if(!p.value){s();return}r(!1)}return J(()=>e.elements,()=>{r(!0)}),n(`CategoryRight_${e.category}`,{keyboardKeys:["ArrowRight"],condition:(t,h)=>t==="category"&&e.category===h,handler:$}),n(`CategoryToggle_${e.category}`,{keyboardKeys:["Enter"],condition:(t,h)=>t==="category"&&e.category===h,handler:o}),n(`CategoryLeft_${e.category}`,{keyboardKeys:["ArrowLeft"],condition:(t,h)=>t==="category"&&e.category===h,handler:m}),(t,h)=>{const B=H("n8n-icon"),c=H("n8n-tooltip");return g(),E("div",{class:u(t.$style.categorizedItemsRenderer),"data-category-collapsed":!p.value},[O(Eo,{class:u(t.$style.categoryItem),name:t.category,disabled:t.disabled,active:v.value===t.category,count:y.value,expanded:p.value,"is-trigger":t.isTriggerCategory,"data-keyboard-nav-type":"category","data-keyboard-nav-id":t.category,onClick:o},{default:A(()=>[t.mouseOverTooltip?(g(),E("span",{key:0,class:u(t.$style.mouseOverTooltip)},[O(c,{placement:"top","popper-class":t.$style.tooltipPopper},{content:A(()=>[T("div",{innerHTML:t.mouseOverTooltip},null,8,Ro)]),default:A(()=>[O(B,{icon:"question-circle",size:"small"})]),_:1},8,["popper-class"])],2)):V("",!0)]),_:1},8,["class","name","disabled","active","count","expanded","is-trigger","data-keyboard-nav-id"]),p.value&&y.value>0&&t.$slots.default?(g(),E("div",{key:0,class:u(t.$style.contentSlot)},[G(t.$slots,"default")],2)):V("",!0),p.value?(g(),N(Ne,oe({key:1},t.$attrs,{elements:t.elements,"is-trigger":t.isTriggerCategory}),{default:A(()=>[]),empty:A(()=>[G(t.$slots,"empty",De(yt({elements:t.elements})))]),_:3},16,["elements","is-trigger"])):V("",!0)],10,Lo)}}}),Mo="_mouseOverTooltip_1smyb_1",Oo="_categorizedItemsRenderer_1smyb_9",Bo="_tooltipPopper_1smyb_13",Do="_contentSlot_1smyb_17",Po={mouseOverTooltip:Mo,categorizedItemsRenderer:Oo,tooltipPopper:Bo,contentSlot:Do},Ho={$style:Po},ue=U(Vo,[["__cssModules",Ho]]),Ko={key:0},Uo=["data-keyboard-nav-type","data-keyboard-nav-id","onClick"],zo=20,qo=5,Yo=K({__name:"ItemsRenderer",props:{elements:{default:()=>[]},activeIndex:{},disabled:{type:Boolean},lazyRender:{type:Boolean,default:!0}},emits:["selected","dragstart","dragend"],setup(i,{emit:e}){const d=i,s=e,n=Z([]),_=Z(0),v=b(()=>{var t;return(t=X())==null?void 0:t.activeItemId});function y(){if(d.elements.length<=zo||!d.lazyRender){n.value=d.elements;return}n.value.length<d.elements.length&&(n.value.push(...d.elements.slice(n.value.length,n.value.length+qo)),_.value=window.requestAnimationFrame(y))}function p(t,h,B){if(!d.disabled)switch(t){case"dragstart":case"dragend":case"selected":s("selected",h,B);break;default:s(t,h,B)}}function o(t){t.style.height="0"}function r(t){t.style.height=`${t.scrollHeight}px`}function $(t){t.style.height=`${t.scrollHeight}px`}function m(t){t.style.height="0"}return ye(()=>{y()}),Pe(()=>{window.cancelAnimationFrame(_.value),n.value=[]}),J(()=>d.elements,()=>{window.cancelAnimationFrame(_.value),n.value=[],y()}),(t,h)=>{const B=H("n8n-loading");return t.elements.length>0?(g(),E("div",{key:0,class:u(t.$style.itemsRenderer),name:"accordion",onBeforeEnter:o,onEnter:r,onBeforeLeave:$,onLeave:m},[G(t.$slots,"default"),(g(!0),E(mt,null,ft(t.elements,c=>(g(),E("div",{key:c.uuid},[n.value.includes(c)?(g(),E("div",Ko,[c.type==="section"?(g(),N(ue,{key:0,elements:c.children,expanded:"",category:c.title,onSelected:h[0]||(h[0]=I=>p("selected",I))},null,8,["elements","category"])):(g(),E("div",{key:1,ref_for:!0,ref:"iteratorItems",class:u({clickable:!t.disabled,[t.$style.active]:v.value===c.uuid,[t.$style.iteratorItem]:!0,[t.$style[c.type]]:!0}),"data-test-id":"item-iterator-item","data-keyboard-nav-type":c.type!=="label"?c.type:void 0,"data-keyboard-nav-id":c.uuid,onClick:I=>p("selected",c)},[c.type==="label"?(g(),N(ro,{key:0,item:c},null,8,["item"])):V("",!0),c.type==="subcategory"?(g(),N(eo,{key:1,item:c.properties},null,8,["item"])):V("",!0),c.type==="node"?(g(),N(Xt,{key:2,"node-type":c.properties,active:!0,subcategory:c.subcategory},null,8,["node-type","subcategory"])):V("",!0),c.type==="action"?(g(),N(mo,{key:3,"node-type":c.properties,action:c.properties,active:!0},null,8,["node-type","action"])):c.type==="view"?(g(),N(bo,{key:4,view:c.properties,class:u(t.$style.viewItem)},null,8,["view","class"])):V("",!0)],10,Uo))])):(g(),N(B,{key:1,loading:!0,rows:1,variant:"p",class:u(t.$style.itemSkeleton)},null,8,["class"]))]))),128))],34)):(g(),E("div",{key:1,class:u(t.$style.empty)},[G(t.$slots,"empty")],2))}}}),Wo="_itemSkeleton_5orht_1",jo="_iteratorItem_5orht_5",Fo="_label_5orht_17",Go="_category_5orht_17",Xo="_active_5orht_20",Zo="_empty_5orht_24",Jo="_itemsRenderer_5orht_28",Qo="_view_5orht_37",xo={itemSkeleton:Wo,iteratorItem:jo,label:Fo,category:Go,active:Xo,empty:Zo,itemsRenderer:Jo,view:Qo},en={$style:xo},Ne=U(Yo,[["__cssModules",en]]),tn=["innerHTML"],on=["innerHTML"],nn=["innerHTML"],sn=["innerHTML"],an=["innerHTML"],rn=K({__name:"ActionsMode",emits:{nodeTypeSelected:i=>!0},setup(i,{emit:e}){const d=e,s=se(),{userActivated:n}=nt(),{popViewStack:_,updateCurrentViewStack:v}=D(),{registerKeyHook:y}=X(),{setAddedNodeActionParameters:p,getActionData:o,getPlaceholderTriggerActions:r,parseCategoryActions:$,actionsCategoryLocales:m}=Te(),t=b(()=>R(f.value,m.value.triggers,!1)),h=b(()=>R(f.value,m.value.actions,!a.value)),B=b(()=>R(D().activeViewStack.baselineItems||[],m.value.triggers,!1)),c=b(()=>R(D().activeViewStack.baselineItems||[],m.value.actions,!a.value)),I=b(()=>t.value.length||a.value?m.value.triggers:`${m.value.triggers} (${S.length})`),f=b(()=>(D().activeViewStack.items||[]).filter(w=>w.properties.actionKey!==ie)),a=b(()=>D().activeViewStack.search),C=b(()=>D().activeViewStack.subcategory),L=b(()=>D().activeViewStack.rootView),S=r(C.value||""),P=b(()=>$(D().activeViewStack.baselineItems||[],m.value.triggers,!a.value).length===0),l=b(()=>(D().activeViewStack.baselineItems||[]).some(q=>(q.properties.actionKey??"")===ie)),M=b(()=>L.value===te);y("ActionsKeyRight",{keyboardKeys:["ArrowRight","Enter"],condition:w=>w==="action",handler:We}),y("ActionsKeyLeft",{keyboardKeys:["ArrowLeft"],condition:w=>w==="action",handler:ve});function R(w,k,q=!1){return $(w,k,q)}function ve(){_()}function We(w){const q=[...f.value,...S].find(Y=>Y.uuid===w);q&&ae(q)}function ae(w){var Y,F;if(w.type!=="action")return;const k=o(w.properties);if(S.some(j=>j.key===w.key)&&M.value){const j=f.value[0].key;d("nodeTypeSelected",[k.key,j])}else k.key===st&&((Y=k==null?void 0:k.value)==null?void 0:Y.resource)==="assistant"&&((F=k==null?void 0:k.value)==null?void 0:F.operation)==="message"?d("nodeTypeSelected",[at]):d("nodeTypeSelected",[k.key]);s&&p(k,s,L.value)}function je(){var F,j,Se;const w=D().activeViewStack,k=(F=w.baselineItems||[])==null?void 0:F.filter(_e=>_e.key.toLowerCase().includes("trigger")).length,Y={app_identifier:[...f.value,...S][0].key,actions:(j=w.baselineItems||[])==null?void 0:j.map(_e=>_e.properties.displayName),regular_action_count:((Se=w.baselineItems||[])==null?void 0:Se.length)-k,trigger_action_count:k};be().run("nodeCreateList.onViewActions",Y),s==null||s.trackNodesPanel("nodeCreateList.onViewActions",Y)}function Ie(){v({search:""})}function Fe(){const w={name:"",key:re,value:{authentication:"predefinedCredentialType"}};d("nodeTypeSelected",[re]),s&&p(w);const k=f.value[0].key;be().run("nodeCreateList.onActionsCustmAPIClicked",{app_identifier:k}),s==null||s.trackNodesPanel("nodeCreateList.onActionsCustmAPIClicked",{app_identifier:k})}const Ge=K({props:{rootView:{type:String,required:!0}},setup(w,{slots:k}){return()=>{var q,Y,F,j;return vt("div",{},w.rootView===ge?[(q=k.actions)==null?void 0:q.call(k),(Y=k.triggers)==null?void 0:Y.call(k)]:[(F=k.triggers)==null?void 0:F.call(k),(j=k.actions)==null?void 0:j.call(k)])}}});return ye(()=>{je()}),(w,k)=>{const q=H("n8n-callout"),Y=H("n8n-info-tip");return g(),E("div",{class:u(w.$style.container)},[L.value?(g(),N(z(Ge),{key:0,"root-view":L.value},de({_:2},[M.value||B.value.length!==0?{name:"triggers",fn:A(()=>[O(ue,{elements:t.value,category:I.value,"mouse-over-tooltip":w.$locale.baseText("nodeCreator.actionsTooltip.triggersStartWorkflow"),"is-trigger-category":"",expanded:M.value||h.value.length===0,onSelected:ae},de({_:2},[P.value?{name:"empty",fn:A(()=>[P.value?(g(),N(q,{key:0,theme:"info",iconless:"",slim:"","data-test-id":"actions-panel-no-triggers-callout"},{default:A(()=>[T("span",{innerHTML:w.$locale.baseText("nodeCreator.actionsCallout.noTriggerItems",{interpolate:{nodeName:C.value??""}})},null,8,tn)]),_:1})):V("",!0),O(Ne,{elements:z(S),onSelected:ae},null,8,["elements"])]),key:"0"}:{name:"empty",fn:A(()=>[T("p",{class:u(w.$style.resetSearch),onClick:Ie,innerHTML:w.$locale.baseText("nodeCreator.actionsCategory.noMatchingTriggers")},null,10,["innerHTML"])]),key:"1"}]),1032,["elements","category","mouse-over-tooltip","expanded"])]),key:"0"}:void 0,!M.value||c.value.length!==0?{name:"actions",fn:A(()=>[O(ue,{elements:h.value,category:z(m).actions,"mouse-over-tooltip":w.$locale.baseText("nodeCreator.actionsTooltip.actionsPerformStep"),expanded:!M.value||t.value.length===0,onSelected:ae},{empty:A(()=>[a.value?(g(),E("p",{key:1,class:u(w.$style.resetSearch),"data-test-id":"actions-panel-no-matching-actions",onClick:Ie,innerHTML:w.$locale.baseText("nodeCreator.actionsCategory.noMatchingActions")},null,10,sn)):(g(),N(Y,{key:0,theme:"info",type:"note",class:u(w.$style.actionsEmpty)},{default:A(()=>[T("span",{innerHTML:w.$locale.baseText("nodeCreator.actionsCallout.noActionItems",{interpolate:{nodeName:C.value??""}})},null,8,nn)]),_:1},8,["class"]))]),default:A(()=>[!z(n)&&M.value?(g(),N(q,{key:0,theme:"info",iconless:"",slim:"","data-test-id":"actions-panel-activation-callout"},{default:A(()=>[T("span",{innerHTML:w.$locale.baseText("nodeCreator.actionsCallout.triggersStartWorkflow")},null,8,on)]),_:1})):V("",!0)]),_:1},8,["elements","category","mouse-over-tooltip","expanded"])]),key:"1"}:void 0]),1032,["root-view"])):V("",!0),l.value?(g(),E("div",{key:1,class:u(w.$style.apiHint)},[T("span",{onClick:me(Fe,["prevent"]),innerHTML:w.$locale.baseText("nodeCreator.actionsList.apiCall",{interpolate:{node:C.value??""}})},null,8,an)],2)):V("",!0)],2)}}}),ln="_container_25ezu_1",cn="_resetSearch_25ezu_7",dn="_actionsEmpty_25ezu_21",un="_apiHint_25ezu_29",pn={container:ln,resetSearch:cn,actionsEmpty:dn,apiHint:un},gn={$style:pn},yn=U(rn,[["__cssModules",gn]]),mn={},fn={width:"75px",height:"75px",viewBox:"0 0 75 75",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},vn=_t('<title>no-nodes-keyart</title><g id="Nodes-panel-prototype-V2.1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="nodes-panel-(component)" transform="translate(-2085.000000, -352.000000)"><g id="nodes_panel" transform="translate(1880.000000, 151.000000)"><g id="Panel" transform="translate(50.000000, 0.000000)"><g id="Group-3" transform="translate(105.000000, 171.000000)"><g id="no-nodes-keyart" transform="translate(50.000000, 30.000000)"><rect id="Rectangle" x="0" y="0" width="75" height="75"></rect><g id="Group" transform="translate(6.562500, 8.164062)" fill="#C4C8D1" fill-rule="nonzero"><polygon id="Rectangle" transform="translate(49.192016, 45.302553) rotate(-45.000000) translate(-49.192016, -45.302553) " points="44.5045606 32.0526802 53.8794707 32.0526802 53.8794707 58.5524261 44.5045606 58.5524261"></polygon><path id="Path" d="M48.125,23.0859375 C54.15625,23.0859375 59.0625,18.1796875 59.0625,12.1484375 C59.0625,10.3359375 58.5625,8.6484375 57.78125,7.1484375 L49.34375,15.5859375 L44.6875,10.9296875 L53.125,2.4921875 C51.625,1.7109375 49.9375,1.2109375 48.125,1.2109375 C42.09375,1.2109375 37.1875,6.1171875 37.1875,12.1484375 C37.1875,13.4296875 37.4375,14.6484375 37.84375,15.7734375 L32.0625,21.5546875 L26.5,15.9921875 L28.71875,13.7734375 L24.3125,9.3671875 L30.9375,2.7421875 C27.28125,-0.9140625 21.34375,-0.9140625 17.6875,2.7421875 L6.625,13.8046875 L11.03125,18.2109375 L2.21875,18.2109375 L1.38777878e-15,20.4296875 L11.0625,31.4921875 L13.28125,29.2734375 L13.28125,20.4296875 L17.6875,24.8359375 L19.90625,22.6171875 L25.46875,28.1796875 L2.3125,51.3359375 L8.9375,57.9609375 L44.5,22.4296875 C45.625,22.8359375 46.84375,23.0859375 48.125,23.0859375 Z"></path></g></g></g></g></g></g></g>',2),_n=[vn];function hn(i,e){return g(),E("svg",fn,_n)}const bn=U(mn,[["render",hn]]),$n=["textContent"],wn=["textContent"],kn=K({__name:"NoResults",props:{showIcon:{type:Boolean},showRequest:{type:Boolean},rootView:{}},setup(i){return(e,d)=>{const s=H("n8n-link"),n=H("font-awesome-icon");return g(),E("div",{class:u({[e.$style.noResults]:!0,[e.$style.iconless]:!e.showIcon}),"data-test-id":"node-creator-no-results"},[e.showIcon?(g(),E("div",{key:0,class:u(e.$style.icon)},[O(bn)],2)):V("",!0),T("div",{class:u(e.$style.title)},[G(e.$slots,"title"),T("p",{textContent:W(e.$locale.baseText("nodeCreator.noResults.weDidntMakeThatYet"))},null,8,$n),T("div",{class:u(e.$style.action)},[ee(W(e.$locale.baseText("nodeCreator.noResults.dontWorryYouCanProbablyDoItWithThe"))+" ",1),e.rootView===z(ge)?(g(),N(s,{key:0,onClick:d[0]||(d[0]=_=>e.$emit("addHttpNode"))},{default:A(()=>[ee(W(e.$locale.baseText("nodeCreator.noResults.httpRequest")),1)]),_:1})):V("",!0),e.rootView===z(te)?(g(),N(s,{key:1,onClick:d[1]||(d[1]=_=>e.$emit("addWebhookNode"))},{default:A(()=>[ee(W(e.$locale.baseText("nodeCreator.noResults.webhook")),1)]),_:1})):V("",!0),ee(" "+W(e.$locale.baseText("nodeCreator.noResults.node")),1)],2)],2),e.showRequest?(g(),E("div",{key:1,class:u(e.$style.request)},[T("p",{textContent:W(e.$locale.baseText("nodeCreator.noResults.wantUsToMakeItFaster"))},null,8,wn),T("div",null,[O(s,{to:z(rt)},{default:A(()=>[T("span",null,W(e.$locale.baseText("nodeCreator.noResults.requestTheNode")),1),ee("  "),T("span",null,[O(n,{class:u(e.$style.external),icon:"external-link-alt",title:e.$locale.baseText("nodeCreator.noResults.requestTheNode")},null,8,["class","title"])])]),_:1},8,["to"])])],2)):V("",!0)],2)}}}),Cn="_noResults_8axui_1",Tn="_title_8axui_14",Nn="_action_8axui_23",In="_request_8axui_24",Sn="_icon_8axui_40",An="_external_8axui_46",En={noResults:Cn,title:Tn,action:Nn,request:In,icon:Sn,external:An},Ln={$style:En},Rn=U(kn,[["__cssModules",Ln]]),Vn=K({__name:"NodesMode",emits:{nodeTypeSelected:i=>!0},setup(i,{emit:e}){const d=e,s=pe(),n=se(),{mergedNodes:_,actions:v}=Q(),{baseUrl:y}=it(),{pushViewStack:p,popViewStack:o}=D(),{registerKeyHook:r}=X(),$=b(()=>D().activeViewStack),m=b(()=>D().globalSearchItemsDiff);function t(a){d("nodeTypeSelected",a)}function h(a){var C,L,S;if(a.type==="subcategory"){const P=qe(a.properties.title),l=s.baseText(`nodeCreator.subcategoryNames.${P}`);p({subcategory:a.key,title:l,mode:"nodes",...a.properties.icon?{nodeIcon:{icon:a.properties.icon,iconType:"icon"}}:{},...a.properties.panelClass?{panelClass:a.properties.panelClass}:{},rootView:$.value.rootView,forceIncludeNodes:a.properties.forceIncludeNodes,baseFilter:c,itemsMapper:B,sections:a.properties.sections}),n.trackNodesPanel("nodeCreateList.onSubcategorySelected",{subcategory:a.key})}if(a.type==="node"){const P=(v==null?void 0:v[a.key])||[];if(P.length<=1){t([a.key]);return}const l=a.properties.iconUrl?`${y}${a.properties.iconUrl}`:(C=a.properties.icon)==null?void 0:C.split(":")[1],M=P==null?void 0:P.map(R=>pt(R,a.properties.displayName,"action"));p({subcategory:a.properties.displayName,title:a.properties.displayName,nodeIcon:{color:(S=(L=a.properties.defaults)==null?void 0:L.color)==null?void 0:S.toString(),icon:l,iconType:a.properties.iconUrl?"file":"icon"},rootView:$.value.rootView,hasSearch:!0,mode:"actions",items:M})}if(a.type==="view"){const P={[te]:He,[ge]:Ke,[Le]:Ue,[Re]:ze},l=a.key,M=P[l];if(!M){console.warn(`No view found for ${l}`);return}const R=M(_);p({title:R.title,subtitle:(R==null?void 0:R.subtitle)??"",info:(R==null?void 0:R.info)??"",items:R.items,hasSearch:!0,rootView:R.value,mode:"nodes",searchItems:_})}}function B(a){var P,l;if(a.type!=="node")return a;const C=a.properties.group.includes("trigger"),S=((v==null?void 0:v[a.key])||[]).length>0;return C&&S&&((P=a.properties)!=null&&P.codex&&(a.properties.codex.alias=[...((l=a.properties.codex)==null?void 0:l.alias)||[],a.properties.displayName]),a.properties.displayName=a.properties.displayName.replace(" Trigger","")),a}function c(a){if(a.type==="section")return!0;if(a.type!=="node")return!1;const C=a.properties.group.includes("trigger"),S=((v==null?void 0:v[a.key])||[]).length>0;return $.value.rootView===te?S||C:S||!C}function I(){o()}function f(a){const L=gt([...$.value.items??[],...m.value??[]]).find(S=>S.uuid===a);L&&h(L)}return r("MainViewArrowRight",{keyboardKeys:["ArrowRight","Enter"],condition:a=>["subcategory","node","view"].includes(a),handler:f}),r("MainViewArrowLeft",{keyboardKeys:["ArrowLeft"],condition:a=>["subcategory","node","view"].includes(a),handler:I}),(a,C)=>(g(),E("span",null,[O(Ne,{elements:$.value.items,class:u(a.$style.items),onSelected:h},de({_:2},[($.value.items||[]).length===0&&m.value.length===0?{name:"empty",fn:A(()=>[O(Rn,{"root-view":$.value.rootView,"show-icon":"","show-request":"",onAddWebhookNode:C[0]||(C[0]=L=>t([z(Ee)])),onAddHttpNode:C[1]||(C[1]=L=>t([z(re)]))},null,8,["root-view"])]),key:"0"}:void 0]),1032,["elements","class"]),m.value.length>0?(g(),N(ue,{key:0,elements:m.value,category:a.$locale.baseText("nodeCreator.categoryNames.otherCategories"),onSelected:h},null,8,["elements","category"])):V("",!0)]))}}),Mn="_items_1mzys_1",On={items:Mn},Bn={$style:On},Dn=U(Vn,[["__cssModules",Bn]]),Pn=["textContent"],Hn=["textContent"],Kn=K({__name:"NodesListPanel",setup(i){const e=pe(),{mergedNodes:d}=Q(),{pushViewStack:s,popViewStack:n,updateCurrentViewStack:_}=D(),{setActiveItemIndex:v,attachKeydownEvent:y,detachKeydownEvent:p}=X(),o=b(()=>D().activeViewStack),r=b(()=>D().viewStacks),$=b(()=>D().activeViewStackMode==="actions"),m=b(()=>$.value?e.baseText("nodeCreator.actionsCategory.searchActions",{interpolate:{node:o.value.title}}):e.baseText("nodeCreator.searchBar.searchNodes")),t=b(()=>Q().selectedView);function h(f=""){return o.value.activeIndex?o.value.activeIndex:o.value.mode==="actions"?1:o.value.sections?f?0:1:0}function B(f){o.value.uuid&&(_({search:f}),v(h(f)))}function c(){v(h())}ye(()=>{y(),v(h())}),Pe(()=>{p()}),J(()=>t.value,f=>{const a={[te]:He,[ge]:Ke,[Le]:Ue,[Re]:ze},C=f,L=a[C];if(!L){console.warn(`No view found for ${C}`);return}const S=L(d);s({title:S.title,subtitle:(S==null?void 0:S.subtitle)??"",items:S.items,info:S.info,hasSearch:!0,mode:"nodes",rootView:f,searchItems:d})},{immediate:!0});function I(){n()}return(f,a)=>{const C=H("font-awesome-icon"),L=H("n8n-node-icon"),S=H("n8n-notice");return r.value.length>0?(g(),N(Ve,{key:0,name:`panel-slide-${o.value.transitionDirection}`,onAfterLeave:c},{default:A(()=>[(g(),E("aside",{key:`${o.value.uuid}`,class:u([f.$style.nodesListPanel,o.value.panelClass]),onKeydownCapture:a[0]||(a[0]=me(()=>{},["stop"]))},[T("header",{class:u({[f.$style.header]:!0,[f.$style.hasBg]:!o.value.subtitle,"nodes-list-panel-header":!0}),"data-test-id":"nodes-list-header"},[T("div",{class:u(f.$style.top)},[r.value.length>1&&!o.value.preventBack?(g(),E("button",{key:0,class:u(f.$style.backButton),onClick:I},[O(C,{class:u(f.$style.backButtonIcon),icon:"arrow-left",size:"2x"},null,8,["class"])],2)):V("",!0),o.value.nodeIcon?(g(),N(L,{key:1,class:u(f.$style.nodeIcon),type:o.value.nodeIcon.iconType||"unknown",src:o.value.nodeIcon.icon,name:o.value.nodeIcon.icon,color:o.value.nodeIcon.color,circle:!1,"show-tooltip":!1,size:20},null,8,["class","type","src","name","color"])):V("",!0),o.value.title?(g(),E("p",{key:2,class:u(f.$style.title),textContent:W(o.value.title)},null,10,Pn)):V("",!0)],2),o.value.subtitle?(g(),E("p",{key:0,class:u({[f.$style.subtitle]:!0,[f.$style.offsetSubtitle]:r.value.length>1}),textContent:W(o.value.subtitle)},null,10,Hn)):V("",!0)],2),o.value.hasSearch?(g(),N(Pt,{key:0,class:u(f.$style.searchBar),placeholder:m.value?m.value:f.$locale.baseText("nodeCreator.searchBar.searchNodes"),"model-value":o.value.search,"onUpdate:modelValue":B},null,8,["class","placeholder","model-value"])):V("",!0),T("div",{class:u(f.$style.renderedItems)},[o.value.info&&!o.value.search?(g(),N(S,{key:0,class:u(f.$style.info),content:o.value.info,theme:"warning"},null,8,["class","content"])):V("",!0),$.value&&o.value.subcategory?(g(),N(yn,De(oe({key:1},f.$attrs)),null,16)):(g(),N(Dn,oe({key:2,"root-view":t.value},f.$attrs),null,16,["root-view"]))],2)],34))]),_:1},8,["name"])):V("",!0)}}}),Un="_info_vhrjt_23",zn="_backButton_vhrjt_27",qn="_backButtonIcon_vhrjt_34",Yn="_nodeIcon_vhrjt_40",Wn="_renderedItems_vhrjt_45",jn="_searchBar_vhrjt_57",Fn="_nodesListPanel_vhrjt_61",Gn="_footer_vhrjt_79",Xn="_top_vhrjt_90",Zn="_header_vhrjt_95",Jn="_hasBg_vhrjt_101",Qn="_title_vhrjt_106",xn="_subtitle_vhrjt_116",es="_offsetSubtitle_vhrjt_124",ts={info:Un,backButton:zn,backButtonIcon:qn,nodeIcon:Yn,renderedItems:Wn,searchBar:jn,nodesListPanel:Fn,footer:Gn,top:Xn,header:Zn,hasBg:Jn,title:Qn,subtitle:xn,offsetSubtitle:es},os={$style:ts},ns=U(Kn,[["__cssModules",os]]),ss=K({__name:"NodeCreator",props:{active:{type:Boolean},onNodeTypeSelected:{type:Function}},emits:["closeNodeCreator","nodeTypeSelected"],setup(i,{emit:e}){const d=i,{resetViewStacks:s}=D(),{registerKeyHook:n}=X(),_=e,v=lt(),y=ct(),{setShowScrim:p,setActions:o,setMergeNodes:r}=Q(),{generateMergedNodesAndActions:$}=It(),m=we({nodeCreator:null,mousedownInsideEvent:null}),t=b(()=>Q().showScrim),h=b(()=>D().viewStacks.length),B=b(()=>y.assistantChatOpen),c=b(()=>({top:`${v.bannersHeight+v.headerHeight}px`}));function I(){var l;if(m.mousedownInsideEvent){const M=new MouseEvent("click",{bubbles:!0,cancelable:!0});(l=m.mousedownInsideEvent.target)==null||l.dispatchEvent(M),m.mousedownInsideEvent=null,f()}}function f(){document.removeEventListener("mouseup",I),document.removeEventListener("touchstart",I)}function a(){m.mousedownInsideEvent=null,f()}function C(l){m.mousedownInsideEvent=l,document.addEventListener("mouseup",I),document.addEventListener("touchstart",I)}function L(l){l.preventDefault()}function S(l){if(!l.dataTransfer)return;const M=l.dataTransfer.getData($e),R=m.nodeCreator.getBoundingClientRect();M&&l.pageX>=R.x&&l.pageY>=R.y&&l.stopPropagation()}J(()=>d.active,l=>{l||(p(!1),s())}),J(h,l=>{l===0&&(_("closeNodeCreator"),p(!1))}),n("NodeCreatorCloseEscape",{keyboardKeys:["Escape"],handler:()=>_("closeNodeCreator")}),n("NodeCreatorCloseTab",{keyboardKeys:["Tab"],handler:()=>_("closeNodeCreator")}),J(()=>({httpOnlyCredentials:dt().httpOnlyCredentialTypes,nodeTypes:ut().visibleNodeTypes}),({nodeTypes:l,httpOnlyCredentials:M})=>{const{actions:R,mergedNodes:ve}=$(l,M);o(R),r(ve)},{immediate:!0});const{nodeCreator:P}=ke(m);return Me(()=>{f()}),(l,M)=>(g(),E("div",null,[T("aside",{class:u({[l.$style.nodeCreatorScrim]:!0,[l.$style.active]:t.value})},null,2),O(wt,null,{default:A(()=>[l.active?(g(),E("div",{key:0,ref_key:"nodeCreator",ref:P,class:u({[l.$style.nodeCreator]:!0,[l.$style.chatOpened]:B.value}),style:Ce(c.value),"data-test-id":"node-creator",onDragover:L,onDrop:S,onMousedown:C,onMouseup:a},[O(ns,{onNodeTypeSelected:l.onNodeTypeSelected},null,8,["onNodeTypeSelected"])],38)):V("",!0)]),_:1})]))}}),as="_nodeCreator_1q30p_5",rs="_chatOpened_1q30p_15",is="_nodeCreatorScrim_1q30p_19",ls="_active_1q30p_31",cs={nodeCreator:as,chatOpened:rs,nodeCreatorScrim:is,active:ls},ds={$style:cs},qs=U(ss,[["__cssModules",ds]]);export{qs as default};
2
+ //# sourceMappingURL=NodeCreator-CLzfNOJ5.js.map