n8n-editor-ui 2.1.1 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/data/node-popularity.json +0 -4
- package/dist/assets/{AddDataTableModal-Dz0DDl2J.js → AddDataTableModal-C07v9Nxn.js} +18 -19
- package/dist/assets/{AgentEditorModal-BucPtfuf.js → AgentEditorModal-BrtNn_I9.js} +51 -62
- package/dist/assets/{AgentEditorModal-CzlIqORm.css → AgentEditorModal-CnYw6elM.css} +7 -13
- package/dist/assets/{Alert-0hwMnhqx.js → Alert-CjCTAWnZ.js} +1 -1
- package/dist/assets/{AnnotationTagsDropdown.ee-FwAi0jQL.js → AnnotationTagsDropdown.ee-BLpUZufe.js} +2 -2
- package/dist/assets/{AuthView-DpssdaNh.js → AuthView-CqAePJa9.js} +5 -5
- package/dist/assets/BottomMenu-CRVyIu-B.css +474 -0
- package/dist/assets/BottomMenu-Cej7gwr4.js +547 -0
- package/dist/assets/{ChangePasswordView-DBihzMqB.js → ChangePasswordView-BuzmSLJ8.js} +15 -15
- package/dist/assets/{ChatAgentAvatar-BK95BHUo.css → ChatAgentAvatar-B68ZZ295.css} +18 -9
- package/dist/assets/{ChatAgentAvatar-DDaNlXcV.js → ChatAgentAvatar-CwpeLqqo.js} +17 -16
- package/dist/assets/{ChatSidebarOpener-B4_hEzpT.js → ChatLayout-Baw4DF5I.js} +9 -28
- package/dist/assets/{ChatPersonalAgentsView-DhQsTHJ3.js → ChatPersonalAgentsView-B9Pt0vxY.js} +29 -34
- package/dist/assets/ChatPersonalAgentsView-BiiyFIRl.css +159 -0
- package/dist/assets/ChatSidebar-Cmc2-HvU.js +526 -0
- package/dist/assets/{ChatSidebar-D0f-W0S9.css → ChatSidebar-DcNxY7Pt.css} +61 -336
- package/dist/assets/{ChatView-B1O45V-1.js → ChatView-C2ezV2fz.js} +121 -142
- package/dist/assets/{ChatView-mTIZIDr3.css → ChatView-DZODCD2o.css} +4 -4
- package/dist/assets/{ChatWorkflowAgentsView-U76sjiCh.js → ChatWorkflowAgentsView-DBmwl58I.js} +22 -23
- package/dist/assets/CollectionParameter-DvlRV-HR.js +50 -0
- package/dist/assets/{CommunityNodeUpdateInfo-DaqlFCWs.js → CommunityNodeUpdateInfo-DjXh6DHu.js} +8 -8
- package/dist/assets/{CopyInput-DjkkoSUR.js → CopyInput-D-Z7pmxS.js} +4 -4
- package/dist/assets/{CredentialIcon-B5mFnPOM.js → CredentialIcon-ClX-2bGh.js} +3 -3
- package/dist/assets/{CredentialPicker-DmA-dFkP.js → CredentialPicker-CrCc144c.js} +5 -6
- package/dist/assets/{CredentialSelectorModal-CVKa8AAF.js → CredentialSelectorModal-Da2na5my.js} +18 -20
- package/dist/assets/{CredentialsView-B2WvyZTw.js → CredentialsView-CqNF_Gka.js} +34 -37
- package/dist/assets/{DataTableActions-CGYkW0Ge.js → DataTableActions-D0ibHSoF.js} +5 -6
- package/dist/assets/{DataTableDetailsView-B-_rx-9L.js → DataTableDetailsView-BRY9rVV1.js} +22 -24
- package/dist/assets/{DataTableView-K-cZEOKP.js → DataTableView-D4ujwn7I.js} +31 -34
- package/dist/assets/DemoFooter-fhB0ZsZi.js +63 -0
- package/dist/assets/{Draggable-D6WWA0zM.js → Draggable-Bs1jTk_8.js} +1 -1
- package/dist/assets/{EmptySharedSectionActionBox-CR6VISbw.js → EmptySharedSectionActionBox-BBB3j3rf.js} +4 -4
- package/dist/assets/{EnterpriseEdition.ee-CZml4Gcj.js → EnterpriseEdition.ee-_BSL-rxT.js} +1 -1
- package/dist/assets/{EntityNotFound-5i3KSEDe.js → EntityNotFound-8qJnYCXt.js} +7 -7
- package/dist/assets/{EntityUnAuthorised-DHAtMGRv.js → EntityUnAuthorised-CYu0UXzr.js} +7 -7
- package/dist/assets/{ErrorView-CxNhrbRr.js → ErrorView-CrDo6qHL.js} +9 -9
- package/dist/assets/{EvaluationsRootView-DFRtR5a2.js → EvaluationsRootView-C_7tPZ3q.js} +36 -36
- package/dist/assets/{EvaluationsView-DDnL-VtS.js → EvaluationsView-DTmT_Mjm.js} +21 -21
- package/dist/assets/{ExecutionsTime-CNz8UC7l.css → ExecutionsTime-CMAp2_xF.css} +24 -21
- package/dist/assets/{ExecutionsTime-Bll0yiJm.js → ExecutionsTime-ncZBFujs.js} +37 -28
- package/dist/assets/{ExecutionsView-8Y-vd0QZ.js → ExecutionsView-DKx5PCwr.js} +34 -37
- package/dist/assets/{ExternalSecretsProviderConnectionSwitch.ee-BWWuVEWG.js → ExternalSecretsProviderConnectionSwitch.ee-DQZ57stj.js} +4 -4
- package/dist/assets/{FixedCollectionParameter-CsPQJVNL.js → FixedCollectionParameter-BJZ0eM-5.js} +45 -53
- package/dist/assets/{ForgotMyPasswordView-DXGbw-EL.js → ForgotMyPasswordView-D_k_YvIG.js} +15 -15
- package/dist/assets/{InsightsChartAverageRuntime-Bm0c6_UE.js → InsightsChartAverageRuntime-Cljk8p2A.js} +10 -10
- package/dist/assets/{InsightsChartFailed-D6TI96gu.js → InsightsChartFailed-DTmTcxHp.js} +8 -8
- package/dist/assets/{InsightsChartFailureRate-BXjbwEEr.js → InsightsChartFailureRate-BKL-1iTZ.js} +10 -10
- package/dist/assets/{InsightsChartTimeSaved-BPUaaTg8.js → InsightsChartTimeSaved-CIxYU033.js} +10 -10
- package/dist/assets/{InsightsChartTotal-D3aCqsFD.js → InsightsChartTotal-_2DLJIdR.js} +8 -8
- package/dist/assets/{InsightsDashboard-C9pPsgT2.js → InsightsDashboard--1f1U32C.js} +32 -34
- package/dist/assets/{InsightsPaywall-fDfWjnVB.js → InsightsPaywall-DwtdewB6.js} +15 -16
- package/dist/assets/{InsightsSummary-Bjy-SY3W.js → InsightsSummary-DWzL1ePo.js} +8 -8
- package/dist/assets/{InsightsTableWorkflows-CAslapaK.js → InsightsTableWorkflows-CHoJdUEl.js} +18 -18
- package/dist/assets/{ItemsRenderer-CuTgDOI7.js → ItemsRenderer-Bju44b_S.js} +10 -10
- package/dist/assets/{ItemsRenderer-Cr6c6uYy.css → ItemsRenderer-DkobJF9f.css} +4 -2
- package/dist/assets/{KeyboardShortcutTooltip-BSbSC7ko.js → KeyboardShortcutTooltip-srIzApSu.js} +1 -1
- package/dist/assets/{LogsPanel-BVg_Ph6Z.js → LogsPanel-C9nCXiIh.js} +24 -25
- package/dist/assets/LogsPanel-z0W4CHve.js +50 -0
- package/dist/assets/MCPConnectWorkflowsModal-CR5hRPTJ.js +301 -0
- package/dist/assets/MCPConnectWorkflowsModal-CS2q8ice.css +275 -0
- package/dist/assets/{MainHeader-DJA_Afhq.css → MainHeader-CSaAWCWj.css} +13 -13
- package/dist/assets/{MainHeader-CfOHJ5AX.js → MainHeader-Dtf7ohow.js} +97 -101
- package/dist/assets/{MainSidebar-bwCkn71q.css → MainSidebar-CEsQ8o1Y.css} +84 -304
- package/dist/assets/{MainSidebar-BLoE9rZO.js → MainSidebar-_37xftBv.js} +222 -694
- package/dist/assets/{MigrationRuleDetail-CmcZ36s9.js → MigrationRuleDetail-CCO__jC7.js} +20 -20
- package/dist/assets/{MigrationRules-Cf4vXtX8.js → MigrationRules-B0SPwFyT.js} +12 -12
- package/dist/assets/{Modal-BkPSKUmM.js → Modal-DrkMFWe3.js} +4 -4
- package/dist/assets/{ModelByIdSelectorModal-BoLoyNu7.js → ModelByIdSelectorModal-CoQLLeXk.js} +17 -18
- package/dist/assets/{NDVEmptyState-ClE3eiVz.js → NDVEmptyState-DKrc1TFh.js} +1 -1
- package/dist/assets/{NodeCreation-DFfRX0DY.js → NodeCreation-k3pkIHZY.js} +41 -49
- package/dist/assets/{NodeCreator-CO64k-3G.js → NodeCreator-B6D9_1wn.js} +47 -50
- package/dist/assets/{NodeCreator-C-ckvxD7.css → NodeCreator-OSIpRI6S.css} +25 -25
- package/dist/assets/{NodeDetailsView-BURiqx95.js → NodeDetailsView-DfMYS7Pz.js} +60 -68
- package/dist/assets/{NodeDetailsViewV2-XUrXwnja.js → NodeDetailsViewV2-DOCw_zWY.js} +61 -69
- package/dist/assets/{ModalDrawer-B-12esvU.css → NodeIcon-BDxr0f30.css} +5 -6
- package/dist/assets/{NodeIcon-CWyPkrTk.js → NodeIcon-DL6ucXJC.js} +4 -4
- package/dist/assets/{NodeSettings-CcYkiMI8.js → NodeSettings-CS2iUNwL.js} +17 -17
- package/dist/assets/{NodeView-BPGoqSQJ.js → NodeView-0XOeMCB7.js} +111 -106
- package/dist/assets/{OAuthConsentView-kdX_7fls.js → OAuthConsentView-WGFrtRYZ.js} +14 -14
- package/dist/assets/{ParameterInputList-CXEjv4Ky.css → ParameterInputList-0YoVowEI.css} +10 -7
- package/dist/assets/{ParameterInputList-DdA16d29.js → ParameterInputList-DTEJwrQm.js} +59 -56
- package/dist/assets/{PrebuiltAgentTemplatesView-CwoV26I0.js → PrebuiltAgentTemplatesView-CJ6VJ0XJ.js} +17 -19
- package/dist/assets/{ProjectBreadcrumb-3cTfM8kZ.js → ProjectBreadcrumb-FtcudW_2.js} +4 -4
- package/dist/assets/{ProjectCardBadge-DWmYy--A.js → ProjectCardBadge-C42B_oyx.js} +5 -5
- package/dist/assets/{ProjectHeader-CzeJhu2I.js → ProjectHeader-UBLuSGFT.js} +8 -8
- package/dist/assets/{ProjectIcon-Biy_-Ssg.js → ProjectIcon-CEp8nyYM.js} +1 -1
- package/dist/assets/{ProjectRoleView-D6dn38TT.js → ProjectRoleView-BQvsQqjp.js} +15 -16
- package/dist/assets/{ProjectRolesView-BljI8SKN.js → ProjectRolesView-CksItD9m.js} +16 -19
- package/dist/assets/{ProjectSettings-Cu6igv0N.js → ProjectSettings-DUSQ3i-j.js} +26 -28
- package/dist/assets/{ProjectSharing-YZRwVLxy.js → ProjectSharing-DcKfaqUD.js} +5 -5
- package/dist/assets/{ProjectVariables-ClTl8P4L.js → ProjectVariables-BEwMAsZl.js} +32 -35
- package/dist/assets/{ProviderSettingsModal-Bw0f0MFf.js → ProviderSettingsModal-D9LOoiTP.js} +21 -23
- package/dist/assets/{PushConnectionTracker-ClSwVP7t.js → PushConnectionTracker-CYhR1yeo.js} +3 -3
- package/dist/assets/{ResolversView-BC_8K9SU.js → ResolversView-MhtoNdHP.js} +15 -17
- package/dist/assets/{ResourceFiltersDropdown-BACE5ZTX.css → ResourceFiltersDropdown-Cma1Lj9J.css} +12 -9
- package/dist/assets/{ResourceFiltersDropdown-1x0v8WL5.js → ResourceFiltersDropdown-DJG8zh1q.js} +18 -18
- package/dist/assets/{ResourcesListLayout-DeXcgSE7.js → ResourcesListLayout-CBYWFTvd.js} +9 -9
- package/dist/assets/{RunDataHtml-DhjduYN-.js → RunDataHtml-B4A7gRBL.js} +3 -3
- package/dist/assets/{RunDataHtml-_b8v7-9v.js → RunDataHtml-CkjC7YuF.js} +1 -1
- package/dist/assets/{RunDataJson-CzijJVcS.js → RunDataJson-hUd8I9Iw.js} +14 -14
- package/dist/assets/{RunDataJsonActions-F_lYqidD.js → RunDataJsonActions-mj5kInPr.js} +15 -15
- package/dist/assets/{RunDataParsedAiContent-rfF9dj2q.js → RunDataParsedAiContent-DQYrKUHo.js} +8 -8
- package/dist/assets/RunDataParsedAiContent-DhKdg7Ux.js +24 -0
- package/dist/assets/{RunDataSearch-sHgYw75e.js → RunDataSearch-BanmtjON.js} +10 -10
- package/dist/assets/{RunDataTable-CcVCz6KL.js → RunDataTable-CLw-U45I.js} +18 -18
- package/dist/assets/{SamlOnboarding-_E1uKrqU.js → SamlOnboarding-CL7FFqOA.js} +15 -15
- package/dist/assets/{SaveButton-CKB6EQNE.js → SaveButton-DdOVpjST.js} +3 -3
- package/dist/assets/{SelectedItemsInfo-BvVqSABb.js → SelectedItemsInfo-DBuH5w0D.js} +2 -2
- package/dist/assets/{SettingsApiView-BTIamHhf.js → SettingsApiView-C0aDHviI.js} +17 -20
- package/dist/assets/{SettingsChatHubView-CcI8QRBj.js → SettingsChatHubView-xXbgxwbM.js} +19 -19
- package/dist/assets/{SettingsCommunityNodesView-DnxcG1WB.js → SettingsCommunityNodesView-BAxes_Db.js} +29 -36
- package/dist/assets/{SettingsExternalSecrets-CZeypg03.js → SettingsExternalSecrets-B6jdgfB7.js} +17 -18
- package/dist/assets/{SettingsLdapView-BocG9o4_.js → SettingsLdapView-CR2IAnRQ.js} +19 -22
- package/dist/assets/{SettingsLogStreamingView-Cb0TLdGI.js → SettingsLogStreamingView-DSRc5q9w.js} +17 -20
- package/dist/assets/{SettingsMCPView-B61X_NPm.js → SettingsMCPView-C7HQFidB.js} +136 -164
- package/dist/assets/{SettingsMCPView-CuJwNWhp.css → SettingsMCPView-DIdodQTu.css} +28 -41
- package/dist/assets/{SettingsPersonalView-DwALyVrM.js → SettingsPersonalView-DOH_Ml9N.js} +15 -16
- package/dist/assets/{SettingsSourceControl-o8jjZB6R.js → SettingsSourceControl-DH0mZaa0.js} +19 -21
- package/dist/assets/{SettingsSso-CWlyF0Ul.js → SettingsSso-CrWkteb1.js} +21 -24
- package/dist/assets/{SettingsUsageAndPlan-qLBre8L1.js → SettingsUsageAndPlan-DQzF59ve.js} +17 -19
- package/dist/assets/{SettingsUsersView-IoXkRrA3.js → SettingsUsersView-BZrQxtA7.js} +22 -25
- package/dist/assets/{SettingsView-BRggCZxl.js → SettingsView-LDjLlP2V.js} +14 -14
- package/dist/assets/{SetupTemplateFormStep-B16Nen7u.js → SetupTemplateFormStep-CwgC9pY3.js} +7 -7
- package/dist/assets/{SetupView-B_3dlp0F.js → SetupView-wJeD4wwM.js} +15 -15
- package/dist/assets/{SetupWorkflowCredentialsButton-DbpL-wd-.js → SetupWorkflowCredentialsButton-kVNSvjYZ.js} +14 -14
- package/dist/assets/{SetupWorkflowFromTemplateView-DtkJ3dhT.js → SetupWorkflowFromTemplateView-CBTduGfH.js} +21 -25
- package/dist/assets/{SeverityTag-Bdpvd3O4.js → SeverityTag-CuF3dVKd.js} +2 -2
- package/dist/assets/{SigninView-D0mRO95G.js → SigninView-DjWIkUJe.js} +16 -16
- package/dist/assets/{SignoutView-D-cEDvGt.js → SignoutView-CP6UttCg.js} +8 -8
- package/dist/assets/{SignupView-BGUF0a3y.js → SignupView-DKWZNap-.js} +15 -15
- package/dist/assets/{SkeletonAgentCard-BqWJHS47.js → SkeletonAgentCard-DcV1dSF-.js} +8 -8
- package/dist/assets/{TagsDropdown-CKHFeXgu.js → TagsDropdown-CuT_jHbX.js} +3 -3
- package/dist/assets/{TemplateCard-C1F6Sjp3.js → TemplateCard-DY1aPA-a.js} +6 -7
- package/dist/assets/{TemplateDetails-ByaDkPHZ.js → TemplateDetails-Cstu-YNP.js} +6 -7
- package/dist/assets/{TemplateList-IOK3RSuN.js → TemplateList-BfBs1Bpa.js} +5 -5
- package/dist/assets/{TemplatesCollectionView-CpjEgT9v.js → TemplatesCollectionView-DgKv-274.js} +22 -24
- package/dist/assets/{TemplatesSearchView-Ddpn7Bwp.js → TemplatesSearchView-BgdaZIha.js} +19 -21
- package/dist/assets/{TemplatesView-DRX4MxqG.js → TemplatesView-HPIEGoX2.js} +3 -3
- package/dist/assets/{TemplatesWorkflowView-DOl8Qqi3.js → TemplatesWorkflowView-3-fxkWIH.js} +23 -25
- package/dist/assets/{TestRunDetailView-TQvUYMub.js → TestRunDetailView-D9tH7Ptp.js} +19 -19
- package/dist/assets/{TimeAgo-DxwwBGgJ.js → TimeAgo-BpAJIqal.js} +3 -3
- package/dist/assets/{ToolsSelectorModal-D0Uim3wr.js → ToolsSelectorModal-DSyXV7Ag.js} +17 -18
- package/dist/assets/{TriggerPanel-Bkka_-zL.js → TriggerPanel-DDzH4j34.js} +18 -19
- package/dist/assets/{VirtualSchema-498CQIM4.js → VirtualSchema-BN0NQDyh.js} +15 -16
- package/dist/assets/VirtualSchema-rizWsPXH.js +35 -0
- package/dist/assets/{VueMarkdown-Cpmboohi.js → VueMarkdown-D7yo0t2n.js} +1 -1
- package/dist/assets/{WorkerView-D0MGMP-3.js → WorkerView-DeYRT0mS.js} +34 -41
- package/dist/assets/{WorkflowActivationErrorMessage-CQe9ZG_g.js → WorkflowActivationErrorMessage-D9ktIWO1.js} +1 -1
- package/dist/assets/{WorkflowActivator-xCBwqG20.css → WorkflowActivator-BGcCOUCH.css} +2 -2
- package/dist/assets/{WorkflowActivator-CQk3zJa2.js → WorkflowActivator-Cj1x_nLm.js} +13 -11
- package/dist/assets/{WorkflowExecutionsInfoAccordion-DrB1HwtD.js → WorkflowExecutionsInfoAccordion-DOW8-lUO.js} +11 -15
- package/dist/assets/{WorkflowExecutionsLandingPage-wZsE1MEB.js → WorkflowExecutionsLandingPage-D-k97H81.js} +19 -33
- package/dist/assets/{WorkflowExecutionsPreview-DhEx7EQF.js → WorkflowExecutionsPreview-bwSmtqxL.js} +22 -25
- package/dist/assets/{WorkflowExecutionsView-CDFxKpEl.js → WorkflowExecutionsView-BoJYR4A-.js} +50 -46
- package/dist/assets/{WorkflowExecutionsView-J4lWGYW8.css → WorkflowExecutionsView-DzHhxp4K.css} +2 -2
- package/dist/assets/{WorkflowHistory-D3BhOWlD.css → WorkflowHistory-BBHdNsOb.css} +147 -98
- package/dist/assets/{WorkflowHistory-_npGuIvZ.js → WorkflowHistory-DDwFxfgs.js} +329 -273
- package/dist/assets/WorkflowLocation-6rp_-CuW.css +164 -0
- package/dist/assets/WorkflowLocation-BcPFmw0j.js +164 -0
- package/dist/assets/{WorkflowOnboardingView-DJmpaFOM.js → WorkflowOnboardingView-CQjMFn6h.js} +8 -10
- package/dist/assets/{WorkflowPreview-CVFW6eRL.js → WorkflowPreview-C2LPnLG1.js} +4 -4
- package/dist/assets/{WorkflowTagsDropdown-Dp6YkEZ3.js → WorkflowTagsDropdown-ChfpozQB.js} +2 -2
- package/dist/assets/{WorkflowsView-B068TUtp.js → WorkflowsView-C3nCkxzz.js} +65 -84
- package/dist/assets/{_MapCache-BXj4WgHo.js → _MapCache-0zNxISSG.js} +78 -8
- package/dist/assets/{_baseOrderBy-GjkKJVvF.js → _baseOrderBy-CesQfsb9.js} +4 -4
- package/dist/assets/{_initCloneObject-GPxNDW5O.js → _initCloneObject-DrYdt_vX.js} +2 -2
- package/dist/assets/{aiTemplatesStarterCollection.store-Ca9czXOC.js → aiTemplatesStarterCollection.store-Bz4IH9Sr.js} +5 -5
- package/dist/assets/{apiKeys.store-D60Aub0Q.js → apiKeys.store-W8uXGfoe.js} +2 -2
- package/dist/assets/{assistant.store-C0GxcpwT.js → assistant.store-Cn9sEjYD.js} +6 -6
- package/dist/assets/{auth.eventBus-BD50qglP.js → auth.eventBus-D9L5FHI4.js} +1 -1
- package/dist/assets/{banners.store-COEGRZB2.js → banners.store-CRNqMmnn.js} +4 -4
- package/dist/assets/{builder.store--AJ05qsa.js → builder.store-YujiPssa.js} +5772 -157
- package/dist/assets/{chartjs.utils-BuKhcKwM.js → chartjs.utils-CoNBCTXc.js} +3 -3
- package/dist/assets/{chat.store-DwNzDu7-.js → chat.store-YbHxxnni.js} +124 -88
- package/dist/assets/{chatPanel.store-DcSNy2dM.js → chatPanel.store-DmxMXfyE.js} +17 -11
- package/dist/assets/{col-D5wesaQA.js → col-oSGwUVsR.js} +1 -2
- package/dist/assets/{constants-B6Jp7SZD.js → constants-D52YoOSp.js} +13 -13
- package/dist/assets/{constants-qk3hx0l8.js → constants-DLTaaipl.js} +2 -1
- package/dist/assets/{core-CiWhevuy.js → core-BbiIkN91.js} +1 -1
- package/dist/assets/{dataTable.store-DjA0BZm0.js → dataTable.store-CUsh5p9b.js} +3 -3
- package/dist/assets/{date-picker-ZPBpyB3m.js → date-picker-DeUybCvv.js} +2 -2
- package/dist/assets/{dateFormatter-DqsBbNBt.js → dateFormatter-DzJiM44k.js} +2 -2
- package/dist/assets/{dialog-DJAwPy6j.js → dialog-C4MrWHj5.js} +3 -3
- package/dist/assets/{dist-JIm44DPf.js → dist-DP_8je0B.js} +1 -1
- package/dist/assets/{en-b3uD8cvU.js → en-CF30SCh2.js} +11 -1
- package/dist/assets/en-DyO2pPiC.js +2 -0
- package/dist/assets/{es-BskBLtZB.js → es-DlTgUi2w.js} +1 -1
- package/dist/assets/{evaluation.constants-CE1pFRXt.js → evaluation.constants-0Qe9Ioy2.js} +3 -3
- package/dist/assets/{executions.store-Di5hWapE.js → executions.store-Dodf4hZt.js} +2 -2
- package/dist/assets/{externalSecrets.ee.store-DRAvYvQH.js → externalSecrets.ee.store-CRomIb5E.js} +3 -3
- package/dist/assets/{folders.store-CHmc_cIa.js → folders.store-Bld2a-oS.js} +3 -3
- package/dist/assets/{index-BPWWnUZx.js → index-BFbfC2Dj.js} +478 -172
- package/dist/assets/{index-BkLJ6ICr.css → index-Bl6XoGDE.css} +155 -24
- package/dist/assets/{insights.constants-B7y0cvTb.js → insights.constants-C8GITe6H.js} +1 -1
- package/dist/assets/{insights.store-CUBXm-KC.js → insights.store-CwovPTtG.js} +5 -5
- package/dist/assets/{insights.utils-Dc4VSauh.js → insights.utils-BjffJfoC.js} +4 -4
- package/dist/assets/{isEmpty-B9tt1d3-.js → isEmpty-OfTBXDAe.js} +26 -27
- package/dist/assets/{languageModules-CLe6cIYW.js → languageModules-D_uyjb6R.js} +1 -1
- package/dist/assets/{logStreaming.store-Cv3Kx61Q.js → logStreaming.store-fF1gjMD8.js} +2 -2
- package/dist/assets/mcp.constants-DQPD3Ntp.js +10 -0
- package/dist/assets/{mcp.store-BY003P3O.js → mcp.store-CaNRXC4L.js} +14 -3
- package/dist/assets/{merge-BfSiz1ty.js → merge-BmWPLD5Q.js} +1 -1
- package/dist/assets/{nodeCreator.store-CPxLvRpA.js → nodeCreator.store-CnQC3Thy.js} +11 -16
- package/dist/assets/{nodeIcon-CwI12n1T.js → nodeIcon-Bcr-G7rB.js} +3 -3
- package/dist/assets/{nodeTransforms-E21OvGFn.js → nodeTransforms-DK79e95H.js} +2 -2
- package/dist/assets/{orderBy-BD202wCl.js → orderBy-YGC4g6w9.js} +2 -2
- package/dist/assets/{personalizedTemplatesV3.store-Bzf1Cn2b.js → personalizedTemplatesV3.store-BKxUzmKZ.js} +3 -5
- package/dist/assets/{pickBy-DhNfLbj0.js → pickBy-BnWwuV2u.js} +2 -2
- package/dist/assets/{radio-_dKLhwOP.js → radio-DyB--77Q.js} +1 -2
- package/dist/assets/{readyToRun.store-2jju4pRU.js → readyToRun.store-BRvUlRSD.js} +6 -7
- package/dist/assets/{readyToRunWorkflows.store-Bx_siYQA.js → readyToRunWorkflows.store-BNsVPNB9.js} +5 -6
- package/dist/assets/{roles.store-CfxqweOK.js → roles.store-pbRRxt0E.js} +3 -3
- package/dist/assets/{router-WNnUej-x.js → router-nTea-Urj.js} +111 -90
- package/dist/assets/{sanitize-html-Cft-jOcY.js → sanitize-html-Cc45ZKm8.js} +1 -1
- package/dist/assets/{schemaPreview.store-Do_fvTej.js → schemaPreview.store-D6CQiOeI.js} +3 -3
- package/dist/assets/{semver-CJFCetEf.js → semver-CrR9VADA.js} +2 -2
- package/dist/assets/{sourceControl.eventBus-Cvxq2KVt.js → sourceControl.eventBus-KIeXsiU7.js} +1 -1
- package/dist/assets/{src-DS0bffpn.css → src-CWWagUhy.css} +729 -81
- package/dist/assets/{src-RwnQoRPP.js → src-DTY1hJHs.js} +1675 -3573
- package/dist/assets/{sso.store-BfZ0zC0E.js → sso.store-Di00dtDC.js} +2 -2
- package/dist/assets/{table-8YZ1ENjX.js → table-VmuGzK7A.js} +3 -3
- package/dist/assets/{templateActions-Cs0Obyiy.js → templateActions-DIWkQgOn.js} +5 -5
- package/dist/assets/{templateTransforms-wuELQNpD.js → templateTransforms-BYfEDiSK.js} +1 -1
- package/dist/assets/{truncate-BmR9EyjG.js → truncate-ByNK2lRy.js} +2266 -27
- package/dist/assets/{uniqBy-DbOFAEPx.js → uniqBy-CJFaA-UD.js} +1 -1
- package/dist/assets/{usage.store-BQa0qHOj.js → usage.store-BY4g7MNp.js} +2 -2
- package/dist/assets/{useActions-CMJSyR7r.js → useActions-CBZGt3Kf.js} +4 -4
- package/dist/assets/{useBeforeUnload-DpKXUfN8.js → useBeforeUnload-CQAM_lAW.js} +3 -3
- package/dist/assets/{useCanvasMapping-BqapVTrs.js → useCanvasMapping-C0deX2fv.js} +35 -32
- package/dist/assets/{useCanvasOperations-Biw6mnUM.js → useCanvasOperations-BQyHvbXi.js} +140 -28
- package/dist/assets/{useClipboard-DvY5RseI.js → useClipboard-CqFyEHaX.js} +2 -2
- package/dist/assets/{useCommandBar-UBYl6Lds.js → useCommandBar-I9Rh00u6.js} +26 -30
- package/dist/assets/{useCredentialResolvers-PAhMLRo2.js → useCredentialResolvers-CaMKldsZ.js} +4 -5
- package/dist/assets/{useCustomAgent-BRGYGAAN.js → useCustomAgent-DLwpqJcm.js} +25 -15
- package/dist/assets/{useDebounce-Cisb25yt.js → useDebounce-DGSOfe85.js} +2 -2
- package/dist/assets/{useExecutionData-OVx1QXVF.js → useExecutionData-BocEX1BJ.js} +1 -1
- package/dist/assets/{useExecutionDebugging-B8KvDhkA.js → useExecutionDebugging-CsWzUsUi.js} +6 -7
- package/dist/assets/{useExecutionHelpers-DkOSl_iJ.js → useExecutionHelpers-BWgzEc86.js} +5 -5
- package/dist/assets/{useImportCurlCommand-3YGPoLWh.js → useImportCurlCommand-DGIgJik0.js} +9 -9
- package/dist/assets/{useKeybindings-BcvGBvra.js → useKeybindings-DD-ZZkmj.js} +4 -4
- package/dist/assets/{useLogsTreeExpand-CbLhbpHd.js → useLogsTreeExpand-BQmkJc3D.js} +13 -13
- package/dist/assets/{useMcp-1Dma_uQx.js → useMcp-CtPU_6al.js} +2 -2
- package/dist/assets/{usePageRedirectionHelper-D0ob2A1J.js → usePageRedirectionHelper-TzgTKFxt.js} +3 -4
- package/dist/assets/{usePinnedData-B3-uxBtk.js → usePinnedData-Dztv0dCp.js} +4 -4
- package/dist/assets/{usePushConnection-BA2hhsGP.js → usePushConnection-Ce3EppRV.js} +12 -13
- package/dist/assets/{useRecentResources-C_Rg8cei.js → useRecentResources-fniP3oOE.js} +9 -8
- package/dist/assets/{useRunWorkflow-nBr2MJkO.js → useRunWorkflow-CJgkc0Iq.js} +9 -10
- package/dist/assets/{useSettingsItems-B7GpfNq3.js → useSettingsItems-Ds8JJZE_.js} +4 -4
- package/dist/assets/{useTelemetryContext-DHoBfjOQ.js → useTelemetryContext-Ds7-s6ZC.js} +1 -1
- package/dist/assets/{useWorkflowActivate-B3DYQS1P.js → useWorkflowActivate-DocAQ9u8.js} +7 -8
- package/dist/assets/{useWorkflowsCache-BNSc43ak.js → useWorkflowsCache-BXhjK2ZF.js} +1 -1
- package/dist/assets/{userRoleProvisioning.store-DAStBpkv.js → userRoleProvisioning.store-DNmA1ftX.js} +2 -2
- package/dist/assets/utils-C2GPI2gK.js +54 -0
- package/dist/assets/{versions.store-BIIVPCEy.js → versions.store-qQUmfjg3.js} +3 -3
- package/dist/index.html +109 -119
- package/package.json +1 -1
- package/dist/assets/ChatSidebar-DW6c9Blv.js +0 -555
- package/dist/assets/CollectionParameter-Ci_0m1Vk.js +0 -58
- package/dist/assets/DemoFooter-DuvjbD1c.js +0 -71
- package/dist/assets/FileSaver.min--9uV1QmK.js +0 -72
- package/dist/assets/LogsPanel-DZfIzuWL.js +0 -58
- package/dist/assets/ModalDrawer-DJsD4EIc.js +0 -277
- package/dist/assets/NodeIcon-eaW3atZy.css +0 -125
- package/dist/assets/RunDataParsedAiContent-DuwV5rNK.js +0 -24
- package/dist/assets/VirtualSchema-B-AQEHOc.js +0 -42
- package/dist/assets/cloudPlan.store-Dad6qPdn.js +0 -185
- package/dist/assets/en-BD3FHSTF.js +0 -2
- package/dist/assets/focusPanel.store-C5r79FXL.js +0 -208
- package/dist/assets/mcp.constants-svQUbNx5.js +0 -8
- package/dist/assets/npsSurvey.store-DF2xZcCA.js +0 -98
- package/dist/assets/overlay-Bil1NnPh.js +0 -165
- package/dist/assets/templates.store-C3DEfML8.js +0 -3915
- package/dist/assets/useChatHubSidebarState-CZrP-mNo.js +0 -29
- package/dist/assets/useMessage-DIJ5qCTv.js +0 -610
- package/dist/assets/useWorkflowSaving-B1uc1ePR.js +0 -229
- package/dist/assets/utils-BLHsa_NJ.js +0 -18
- /package/dist/assets/{AnimatedSpinner-g6zev3_N.js → AnimatedSpinner-wiGFgffA.js} +0 -0
- /package/dist/assets/{CalendarDate-B-JEhNYg.js → CalendarDate-zWqgZMlk.js} +0 -0
- /package/dist/assets/{ChatFile-8ik4bOn3.js → ChatFile-cnNK8Kf8.js} +0 -0
- /package/dist/assets/{ChatSidebarOpener-CxM-3LAt.css → ChatLayout-CxM-3LAt.css} +0 -0
- /package/dist/assets/{ChatPersonalAgentsView-BBfu-g98.css → ChatWorkflowAgentsView-BBfu-g98.css} +0 -0
- /package/dist/assets/{PageViewLayout-B889Bfwc.js → PageViewLayout-BHSzOio1.js} +0 -0
- /package/dist/assets/{TextWithHighlights-C4QSPTGM.js → TextWithHighlights-DjzuDrgO.js} +0 -0
- /package/dist/assets/{buttons.esm-CZxEX89d.js → buttons.esm-CT4flsfB.js} +0 -0
- /package/dist/assets/{chart-BxWK2ZOo.js → chart-CE3HWIkr.js} +0 -0
- /package/dist/assets/{core-CXk6RNMV.js → core-6W4wWNc1.js} +0 -0
- /package/dist/assets/{dateformat-hG8NERse.js → dateformat-CM9k0--B.js} +0 -0
- /package/dist/assets/{exports-CdZcr9ah.js → exports-hpMZaOPT.js} +0 -0
- /package/dist/assets/{fileUtils-D3GQ2UWQ.js → fileUtils-D_SiS8no.js} +0 -0
- /package/dist/assets/{path-browserify-BgjP7RyT.js → path-browserify-BtCDmZ3_.js} +0 -0
- /package/dist/assets/{retry-CMAFrhVi.js → retry-dP46utx2.js} +0 -0
- /package/dist/assets/{smartDecimal-Bi50OE4b.js → smartDecimal-DK6-_VSq.js} +0 -0
- /package/dist/assets/{sortByProperty-DAqnDMg7.js → sortByProperty-CV1aCzkS.js} +0 -0
- /package/dist/assets/{useIntersectionObserver-BZ6Jqnr3.js → useIntersectionObserver-DXKoRNFj.js} +0 -0
- /package/dist/assets/{vue-0rlD32wK.js → vue-Dg_43WEg.js} +0 -0
- /package/dist/assets/{vue-json-pretty-B9qWbmOF.js → vue-json-pretty-DGKuDe33.js} +0 -0
- /package/dist/assets/{xml-DSIt30t0.js → xml-B6veOr9z.js} +0 -0
|
@@ -1,185 +0,0 @@
|
|
|
1
|
-
import { C as computed, It as ref, Pt as reactive } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
|
|
2
|
-
import { $o as useSettingsStore, Cc as STORES, cc as getCurrentPlan, g as usePostHog, lc as getCurrentUsage, nr as hasPermission, oc as getAdminPanelLoginCode, sc as getCloudUserInfo } from "./builder.store--AJ05qsa.js";
|
|
3
|
-
import { Cc as UPGRADE_PLAN_CTA_EXPERIMENT, Ec as CLOUD_TRIAL_CHECK_INTERVAL, Ga as DateTime } from "./constants-B6Jp7SZD.js";
|
|
4
|
-
import { k as defineStore, r as useRootStore } from "./_baseOrderBy-GjkKJVvF.js";
|
|
5
|
-
var DEFAULT_STATE = {
|
|
6
|
-
initialized: false,
|
|
7
|
-
data: null,
|
|
8
|
-
usage: null,
|
|
9
|
-
loadingPlan: false
|
|
10
|
-
};
|
|
11
|
-
var DYNAMIC_TRIAL_BANNER_DISMISSED_KEY = "n8n-dynamic-trial-banner-dismissed";
|
|
12
|
-
const useCloudPlanStore = defineStore(STORES.CLOUD_PLAN, () => {
|
|
13
|
-
const rootStore = useRootStore();
|
|
14
|
-
const settingsStore = useSettingsStore();
|
|
15
|
-
const posthogStore = usePostHog();
|
|
16
|
-
const state = reactive(DEFAULT_STATE);
|
|
17
|
-
const currentUserCloudInfo = ref(null);
|
|
18
|
-
const isDynamicTrialBannerDismissed = ref(localStorage.getItem(DYNAMIC_TRIAL_BANNER_DISMISSED_KEY) === "true");
|
|
19
|
-
const reset = () => {
|
|
20
|
-
currentUserCloudInfo.value = null;
|
|
21
|
-
state.data = null;
|
|
22
|
-
state.usage = null;
|
|
23
|
-
};
|
|
24
|
-
const userIsTrialing = computed(() => state.data?.metadata?.group === "trial");
|
|
25
|
-
const currentPlanData = computed(() => state.data);
|
|
26
|
-
const currentUsageData = computed(() => state.usage);
|
|
27
|
-
const selectedApps = computed(() => currentUserCloudInfo.value?.selectedApps);
|
|
28
|
-
const codingSkill = computed(() => {
|
|
29
|
-
const information = currentUserCloudInfo.value?.information;
|
|
30
|
-
if (!information) return 0;
|
|
31
|
-
if (!("which_of_these_do_you_feel_comfortable_doing" in information && information.which_of_these_do_you_feel_comfortable_doing && Array.isArray(information.which_of_these_do_you_feel_comfortable_doing))) return 0;
|
|
32
|
-
return information.which_of_these_do_you_feel_comfortable_doing.length;
|
|
33
|
-
});
|
|
34
|
-
const dynamicTrialBannerText = computed(() => {
|
|
35
|
-
return currentUserCloudInfo.value?.trialBannerData?.bannerText;
|
|
36
|
-
});
|
|
37
|
-
const shouldShowDynamicTrialBanner = computed(() => {
|
|
38
|
-
return dynamicTrialBannerText.value !== void 0 && dynamicTrialBannerText.value !== "" && !isDynamicTrialBannerDismissed.value;
|
|
39
|
-
});
|
|
40
|
-
const dismissDynamicTrialBanner = () => {
|
|
41
|
-
isDynamicTrialBannerDismissed.value = true;
|
|
42
|
-
localStorage.setItem(DYNAMIC_TRIAL_BANNER_DISMISSED_KEY, "true");
|
|
43
|
-
};
|
|
44
|
-
const trialExpired = computed(() => state.data?.metadata?.group === "trial" && DateTime.now().toMillis() >= DateTime.fromISO(state.data?.expirationDate).toMillis());
|
|
45
|
-
const allExecutionsUsed = computed(() => {
|
|
46
|
-
if (!state.usage?.executions || !state.data?.monthlyExecutionsLimit) return false;
|
|
47
|
-
return state.usage?.executions >= state.data?.monthlyExecutionsLimit;
|
|
48
|
-
});
|
|
49
|
-
const hasCloudPlan = computed(() => {
|
|
50
|
-
const cloudUserId = settingsStore.settings.n8nMetadata?.userId;
|
|
51
|
-
return hasPermission(["instanceOwner"]) && settingsStore.isCloudDeployment && !!cloudUserId;
|
|
52
|
-
});
|
|
53
|
-
const getUserCloudAccount = async () => {
|
|
54
|
-
if (!hasCloudPlan.value) throw new Error("User does not have a cloud plan");
|
|
55
|
-
let cloudUser = null;
|
|
56
|
-
try {
|
|
57
|
-
cloudUser = await getCloudUserInfo(rootStore.restApiContext);
|
|
58
|
-
currentUserCloudInfo.value = cloudUser;
|
|
59
|
-
} catch (error) {
|
|
60
|
-
throw new Error(error.message);
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
const getAutoLoginCode = async () => {
|
|
64
|
-
return await getAdminPanelLoginCode(rootStore.restApiContext);
|
|
65
|
-
};
|
|
66
|
-
const isTrialUpgradeOnSidebar = computed(() => {
|
|
67
|
-
return posthogStore.getVariant(UPGRADE_PLAN_CTA_EXPERIMENT.name) === UPGRADE_PLAN_CTA_EXPERIMENT.variant;
|
|
68
|
-
});
|
|
69
|
-
const getOwnerCurrentPlan = async () => {
|
|
70
|
-
if (!hasCloudPlan.value) throw new Error("User does not have a cloud plan");
|
|
71
|
-
state.loadingPlan = true;
|
|
72
|
-
let plan;
|
|
73
|
-
try {
|
|
74
|
-
plan = await getCurrentPlan(rootStore.restApiContext);
|
|
75
|
-
state.data = plan;
|
|
76
|
-
state.loadingPlan = false;
|
|
77
|
-
} catch (error) {
|
|
78
|
-
state.loadingPlan = false;
|
|
79
|
-
throw new Error(error);
|
|
80
|
-
}
|
|
81
|
-
return plan;
|
|
82
|
-
};
|
|
83
|
-
const getInstanceCurrentUsage = async () => {
|
|
84
|
-
const usage = await getCurrentUsage({
|
|
85
|
-
baseUrl: rootStore.baseUrl,
|
|
86
|
-
pushRef: ""
|
|
87
|
-
});
|
|
88
|
-
state.usage = usage;
|
|
89
|
-
return usage;
|
|
90
|
-
};
|
|
91
|
-
const usageLeft = computed(() => {
|
|
92
|
-
if (!state.data || !state.usage) return {
|
|
93
|
-
workflowsLeft: -1,
|
|
94
|
-
executionsLeft: -1
|
|
95
|
-
};
|
|
96
|
-
return {
|
|
97
|
-
workflowsLeft: state.data.activeWorkflowsLimit - state.usage.activeWorkflows,
|
|
98
|
-
executionsLeft: state.data.monthlyExecutionsLimit - state.usage.executions
|
|
99
|
-
};
|
|
100
|
-
});
|
|
101
|
-
const trialDaysLeft = computed(() => {
|
|
102
|
-
if (!state.data?.expirationDate) return -1;
|
|
103
|
-
const differenceInMs = (/* @__PURE__ */ new Date()).valueOf() - new Date(state.data.expirationDate).valueOf();
|
|
104
|
-
const differenceInDays = Math.floor(differenceInMs / (1e3 * 60 * 60 * 24));
|
|
105
|
-
return Math.ceil(differenceInDays);
|
|
106
|
-
});
|
|
107
|
-
const startPollingInstanceUsageData = () => {
|
|
108
|
-
const interval = setInterval(async () => {
|
|
109
|
-
try {
|
|
110
|
-
await getInstanceCurrentUsage();
|
|
111
|
-
if (trialExpired.value || allExecutionsUsed.value) {
|
|
112
|
-
clearTimeout(interval);
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
} catch {}
|
|
116
|
-
}, CLOUD_TRIAL_CHECK_INTERVAL);
|
|
117
|
-
};
|
|
118
|
-
const checkForCloudPlanData = async () => {
|
|
119
|
-
try {
|
|
120
|
-
await getOwnerCurrentPlan();
|
|
121
|
-
if (!userIsTrialing.value) return;
|
|
122
|
-
await getInstanceCurrentUsage();
|
|
123
|
-
startPollingInstanceUsageData();
|
|
124
|
-
} catch (e) {
|
|
125
|
-
throw new Error(e.message);
|
|
126
|
-
}
|
|
127
|
-
};
|
|
128
|
-
const fetchUserCloudAccount = async () => {
|
|
129
|
-
try {
|
|
130
|
-
await getUserCloudAccount();
|
|
131
|
-
} catch (e) {
|
|
132
|
-
throw new Error(e.message);
|
|
133
|
-
}
|
|
134
|
-
};
|
|
135
|
-
const initialize = async () => {
|
|
136
|
-
if (state.initialized) return;
|
|
137
|
-
try {
|
|
138
|
-
await checkForCloudPlanData();
|
|
139
|
-
} catch (error) {
|
|
140
|
-
console.warn("Error checking for cloud plan data:", error);
|
|
141
|
-
}
|
|
142
|
-
try {
|
|
143
|
-
await fetchUserCloudAccount();
|
|
144
|
-
} catch (error) {
|
|
145
|
-
console.warn("Error fetching user cloud account:", error);
|
|
146
|
-
}
|
|
147
|
-
state.initialized = true;
|
|
148
|
-
};
|
|
149
|
-
const generateCloudDashboardAutoLoginLink = async (data) => {
|
|
150
|
-
const searchParams = new URLSearchParams();
|
|
151
|
-
const adminPanelHost = new URL(window.location.href).host.split(".").slice(1).join(".");
|
|
152
|
-
const { code } = await getAutoLoginCode();
|
|
153
|
-
const linkUrl = `https://${adminPanelHost}/login`;
|
|
154
|
-
searchParams.set("code", code);
|
|
155
|
-
searchParams.set("returnPath", data.redirectionPath);
|
|
156
|
-
return `${linkUrl}?${searchParams.toString()}`;
|
|
157
|
-
};
|
|
158
|
-
return {
|
|
159
|
-
state,
|
|
160
|
-
usageLeft,
|
|
161
|
-
trialDaysLeft,
|
|
162
|
-
userIsTrialing,
|
|
163
|
-
currentPlanData,
|
|
164
|
-
currentUsageData,
|
|
165
|
-
trialExpired,
|
|
166
|
-
allExecutionsUsed,
|
|
167
|
-
hasCloudPlan,
|
|
168
|
-
currentUserCloudInfo,
|
|
169
|
-
generateCloudDashboardAutoLoginLink,
|
|
170
|
-
initialize,
|
|
171
|
-
getOwnerCurrentPlan,
|
|
172
|
-
getInstanceCurrentUsage,
|
|
173
|
-
reset,
|
|
174
|
-
checkForCloudPlanData,
|
|
175
|
-
fetchUserCloudAccount,
|
|
176
|
-
getAutoLoginCode,
|
|
177
|
-
selectedApps,
|
|
178
|
-
codingSkill,
|
|
179
|
-
dynamicTrialBannerText,
|
|
180
|
-
shouldShowDynamicTrialBanner,
|
|
181
|
-
dismissDynamicTrialBanner,
|
|
182
|
-
isTrialUpgradeOnSidebar
|
|
183
|
-
};
|
|
184
|
-
});
|
|
185
|
-
export { useCloudPlanStore as t };
|
|
@@ -1,208 +0,0 @@
|
|
|
1
|
-
import { o as __toESM } from "./chunk-6z4oVpB-.js";
|
|
2
|
-
import { C as computed, It as ref } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
|
|
3
|
-
import { ot as watchOnce, pt as i18n } from "./_MapCache-BXj4WgHo.js";
|
|
4
|
-
import { r as require_get } from "./truncate-BmR9EyjG.js";
|
|
5
|
-
import { Cc as STORES, Qo as useStorage, _t as useNodeTypesStore, v as useWorkflowsStore } from "./builder.store--AJ05qsa.js";
|
|
6
|
-
import { Aa as jsonParse, Fs as LOCAL_STORAGE_FOCUS_PANEL, c as PLACEHOLDER_EMPTY_WORKFLOW_ID, oo as FROM_AI_AUTO_GENERATED_MARKER, wi as extractFromAICalls } from "./constants-B6Jp7SZD.js";
|
|
7
|
-
import { k as defineStore } from "./_baseOrderBy-GjkKJVvF.js";
|
|
8
|
-
function sanitizeFromAiParameterName(s) {
|
|
9
|
-
s = s.replace(/[^a-zA-Z0-9\-]/g, "_");
|
|
10
|
-
if (s.length >= 64) s = s.slice(0, 63);
|
|
11
|
-
return s;
|
|
12
|
-
}
|
|
13
|
-
var NODE_DENYLIST = [
|
|
14
|
-
"@n8n/n8n-nodes-langchain.toolCode",
|
|
15
|
-
"@n8n/n8n-nodes-langchain.toolHttpRequest",
|
|
16
|
-
"@n8n/n8n-nodes-langchain.mcpClientTool",
|
|
17
|
-
["@n8n/n8n-nodes-langchain.toolWorkflow", 1.2]
|
|
18
|
-
];
|
|
19
|
-
var PATH_DENYLIST = [
|
|
20
|
-
"parameters.name",
|
|
21
|
-
"parameters.toolName",
|
|
22
|
-
"parameters.description",
|
|
23
|
-
"parameters.toolDescription"
|
|
24
|
-
];
|
|
25
|
-
var PROP_TYPE_DENYLIST = ["options", "credentialsSelect"];
|
|
26
|
-
const fromAIExtraProps = { description: {
|
|
27
|
-
initialValue: "",
|
|
28
|
-
type: "string",
|
|
29
|
-
typeOptions: { rows: 2 },
|
|
30
|
-
tooltip: i18n.baseText("parameterOverride.descriptionTooltip")
|
|
31
|
-
} };
|
|
32
|
-
function isExtraPropKey(extraProps, key) {
|
|
33
|
-
return extraProps.hasOwnProperty(key);
|
|
34
|
-
}
|
|
35
|
-
function updateFromAIOverrideValues(override, expr) {
|
|
36
|
-
const { extraProps, extraPropValues } = override;
|
|
37
|
-
const overrides = parseOverrides(expr);
|
|
38
|
-
if (overrides) {
|
|
39
|
-
for (const [key, value] of Object.entries(overrides)) if (isExtraPropKey(extraProps, key)) if (extraProps[key].initialValue === value) delete extraPropValues[key];
|
|
40
|
-
else extraPropValues[key] = value;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
function fieldTypeToFromAiType(propType) {
|
|
44
|
-
switch (propType) {
|
|
45
|
-
case "boolean":
|
|
46
|
-
case "number":
|
|
47
|
-
case "json": return propType;
|
|
48
|
-
default: return "string";
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
function isFromAIOverrideValue(s) {
|
|
52
|
-
return s.startsWith(`={{ ${FROM_AI_AUTO_GENERATED_MARKER} $fromAI(`);
|
|
53
|
-
}
|
|
54
|
-
function getBestQuoteChar(description) {
|
|
55
|
-
if (description.includes("\n")) return "`";
|
|
56
|
-
if (!description.includes("`")) return "`";
|
|
57
|
-
if (!description.includes("\"")) return "\"";
|
|
58
|
-
return "'";
|
|
59
|
-
}
|
|
60
|
-
function buildUniqueName(props) {
|
|
61
|
-
const filteredPaths = props.path.split(".").filter((x) => /\[\d+\]/i.test(x)).map((x) => x.replaceAll(/[\[\]]/gi, ""));
|
|
62
|
-
let result = [...filteredPaths, props.parameter.displayName].join("_");
|
|
63
|
-
if (filteredPaths.length > 1) result = result.slice(-63);
|
|
64
|
-
else result = result.slice(0, 63);
|
|
65
|
-
return result;
|
|
66
|
-
}
|
|
67
|
-
function buildValueFromOverride(override, props, includeMarker) {
|
|
68
|
-
const { extraPropValues, extraProps } = override;
|
|
69
|
-
const marker = includeMarker ? `${FROM_AI_AUTO_GENERATED_MARKER} ` : "";
|
|
70
|
-
const key = sanitizeFromAiParameterName(buildUniqueName(props));
|
|
71
|
-
const description = extraPropValues?.description?.toString() ?? extraProps.description.initialValue;
|
|
72
|
-
const quoteChar = getBestQuoteChar(description);
|
|
73
|
-
return `={{ ${marker}$fromAI('${key}', ${quoteChar}${description.replaceAll(/\\/g, "\\\\").replaceAll(quoteChar, `\\${quoteChar}`)}${quoteChar}, '${fieldTypeToFromAiType(props.parameter.type)}') }}`;
|
|
74
|
-
}
|
|
75
|
-
function parseOverrides(expression) {
|
|
76
|
-
try {
|
|
77
|
-
const calls = extractFromAICalls(expression.replace(/\\[^`]/g, "\\\\"));
|
|
78
|
-
if (calls.length === 1) return { description: calls[0].description };
|
|
79
|
-
} catch (e) {}
|
|
80
|
-
return null;
|
|
81
|
-
}
|
|
82
|
-
function isDeniedNode(nodeDenyData, node) {
|
|
83
|
-
if (typeof nodeDenyData === "string") return node.type === nodeDenyData;
|
|
84
|
-
else {
|
|
85
|
-
const [typeName, version] = nodeDenyData;
|
|
86
|
-
return node.type === typeName && node.typeVersion <= version;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
function canBeContentOverride(props, node) {
|
|
90
|
-
if (NODE_DENYLIST.some((x) => isDeniedNode(x, node))) return false;
|
|
91
|
-
if (PATH_DENYLIST.includes(props.path)) return false;
|
|
92
|
-
if (PROP_TYPE_DENYLIST.includes(props.parameter.type)) return false;
|
|
93
|
-
const codex = useNodeTypesStore().getNodeType(node.type, node?.typeVersion)?.codex;
|
|
94
|
-
if (!codex?.categories?.includes("AI") || !codex?.subcategories?.AI?.includes("Tools") || codex?.subcategories?.AI?.includes("Vector Stores")) return false;
|
|
95
|
-
return !props.parameter.noDataExpression;
|
|
96
|
-
}
|
|
97
|
-
function makeOverrideValue(context, node) {
|
|
98
|
-
if (!node) return null;
|
|
99
|
-
if (canBeContentOverride(context, node)) {
|
|
100
|
-
const fromAiOverride = {
|
|
101
|
-
type: "fromAI",
|
|
102
|
-
extraProps: fromAIExtraProps,
|
|
103
|
-
extraPropValues: {}
|
|
104
|
-
};
|
|
105
|
-
updateFromAIOverrideValues(fromAiOverride, context.value?.toString() ?? "");
|
|
106
|
-
return fromAiOverride;
|
|
107
|
-
}
|
|
108
|
-
return null;
|
|
109
|
-
}
|
|
110
|
-
var import_get = /* @__PURE__ */ __toESM(require_get());
|
|
111
|
-
var DEFAULT_PANEL_WIDTH = 500;
|
|
112
|
-
var DEFAULT_FOCUS_PANEL_DATA = {
|
|
113
|
-
isActive: false,
|
|
114
|
-
parameters: []
|
|
115
|
-
};
|
|
116
|
-
const useFocusPanelStore = defineStore(STORES.FOCUS_PANEL, () => {
|
|
117
|
-
const workflowsStore = useWorkflowsStore();
|
|
118
|
-
const focusPanelStorage = useStorage(LOCAL_STORAGE_FOCUS_PANEL);
|
|
119
|
-
const focusPanelData = computed(() => {
|
|
120
|
-
const defaultValue = { [workflowsStore.workflowId]: DEFAULT_FOCUS_PANEL_DATA };
|
|
121
|
-
return focusPanelStorage.value ? jsonParse(focusPanelStorage.value, { fallbackValue: defaultValue }) : defaultValue;
|
|
122
|
-
});
|
|
123
|
-
const currentFocusPanelData = computed(() => focusPanelData.value[workflowsStore.workflowId] ?? DEFAULT_FOCUS_PANEL_DATA);
|
|
124
|
-
const lastFocusTimestamp = ref(0);
|
|
125
|
-
const focusPanelActive = computed(() => currentFocusPanelData.value.isActive);
|
|
126
|
-
const focusPanelWidth = computed(() => currentFocusPanelData.value.width ?? DEFAULT_PANEL_WIDTH);
|
|
127
|
-
const _focusedNodeParameters = computed(() => currentFocusPanelData.value.parameters);
|
|
128
|
-
const focusedNodeParameters = computed(() => _focusedNodeParameters.value.map((x) => {
|
|
129
|
-
const node = workflowsStore.getNodeById(x.nodeId);
|
|
130
|
-
if (!node) return x;
|
|
131
|
-
const value = (0, import_get.default)(node?.parameters ?? {}, x.parameterPath.replace(/parameters\./, ""));
|
|
132
|
-
if (typeof value === "string" && isFromAIOverrideValue(value)) return x;
|
|
133
|
-
return {
|
|
134
|
-
...x,
|
|
135
|
-
node,
|
|
136
|
-
value
|
|
137
|
-
};
|
|
138
|
-
}));
|
|
139
|
-
const resolvedParameter = computed(() => focusedNodeParameters.value[0] && isRichParameter(focusedNodeParameters.value[0]) ? focusedNodeParameters.value[0] : void 0);
|
|
140
|
-
function _setOptions({ parameters, isActive, wid = workflowsStore.workflowId, width = void 0, removeEmpty = false }) {
|
|
141
|
-
const focusPanelDataCurrent = focusPanelData.value;
|
|
142
|
-
if (removeEmpty && "__EMPTY__" in focusPanelDataCurrent) delete focusPanelDataCurrent[PLACEHOLDER_EMPTY_WORKFLOW_ID];
|
|
143
|
-
focusPanelStorage.value = JSON.stringify({
|
|
144
|
-
...focusPanelData.value,
|
|
145
|
-
[wid]: {
|
|
146
|
-
isActive: isActive ?? focusPanelActive.value,
|
|
147
|
-
parameters: parameters ?? _focusedNodeParameters.value,
|
|
148
|
-
width: width ?? focusPanelWidth.value
|
|
149
|
-
}
|
|
150
|
-
});
|
|
151
|
-
if (isActive) lastFocusTimestamp.value = Date.now();
|
|
152
|
-
}
|
|
153
|
-
function onNewWorkflowSave(wid) {
|
|
154
|
-
if (!currentFocusPanelData.value || !("__EMPTY__" in focusPanelData.value)) return;
|
|
155
|
-
const latestWorkflowData = focusPanelData.value[PLACEHOLDER_EMPTY_WORKFLOW_ID];
|
|
156
|
-
_setOptions({
|
|
157
|
-
wid,
|
|
158
|
-
parameters: latestWorkflowData.parameters,
|
|
159
|
-
isActive: latestWorkflowData.isActive,
|
|
160
|
-
removeEmpty: true
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
function openWithFocusedNodeParameter(nodeParameter) {
|
|
164
|
-
_setOptions({
|
|
165
|
-
parameters: [nodeParameter],
|
|
166
|
-
isActive: true
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
function closeFocusPanel() {
|
|
170
|
-
_setOptions({ isActive: false });
|
|
171
|
-
}
|
|
172
|
-
function unsetParameters() {
|
|
173
|
-
_setOptions({ parameters: [] });
|
|
174
|
-
}
|
|
175
|
-
function toggleFocusPanel() {
|
|
176
|
-
_setOptions({ isActive: !focusPanelActive.value });
|
|
177
|
-
}
|
|
178
|
-
function updateWidth(width) {
|
|
179
|
-
_setOptions({ width });
|
|
180
|
-
}
|
|
181
|
-
function isRichParameter(p) {
|
|
182
|
-
return "value" in p && "node" in p;
|
|
183
|
-
}
|
|
184
|
-
const focusedNodeParametersInTelemetryFormat = computed(() => focusedNodeParameters.value.map((x) => ({
|
|
185
|
-
parameterPath: x.parameterPath,
|
|
186
|
-
nodeType: isRichParameter(x) ? x.node.type : "unresolved",
|
|
187
|
-
nodeId: x.nodeId
|
|
188
|
-
})));
|
|
189
|
-
watchOnce(() => currentFocusPanelData.value, (value) => {
|
|
190
|
-
if (value.isActive && value.parameters.length > 0) lastFocusTimestamp.value = Date.now();
|
|
191
|
-
});
|
|
192
|
-
return {
|
|
193
|
-
focusPanelActive,
|
|
194
|
-
focusedNodeParameters,
|
|
195
|
-
focusedNodeParametersInTelemetryFormat,
|
|
196
|
-
lastFocusTimestamp,
|
|
197
|
-
focusPanelWidth,
|
|
198
|
-
resolvedParameter,
|
|
199
|
-
openWithFocusedNodeParameter,
|
|
200
|
-
isRichParameter,
|
|
201
|
-
closeFocusPanel,
|
|
202
|
-
toggleFocusPanel,
|
|
203
|
-
onNewWorkflowSave,
|
|
204
|
-
updateWidth,
|
|
205
|
-
unsetParameters
|
|
206
|
-
};
|
|
207
|
-
});
|
|
208
|
-
export { updateFromAIOverrideValues as a, makeOverrideValue as i, buildValueFromOverride as n, isFromAIOverrideValue as r, useFocusPanelStore as t };
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
const MCP_ENDPOINT = "mcp-server/http";
|
|
2
|
-
const MCP_DOCS_PAGE_URL = "https://docs.n8n.io/advanced-ai/accessing-n8n-mcp-server";
|
|
3
|
-
const MCP_SETTINGS_VIEW = "McpSettings";
|
|
4
|
-
const MCP_STORE = "mcp";
|
|
5
|
-
const LOADING_INDICATOR_TIMEOUT = 200;
|
|
6
|
-
const MCP_TOOLTIP_DELAY = 100;
|
|
7
|
-
const MCP_CONNECT_POPOVER_WIDTH = 460;
|
|
8
|
-
export { MCP_SETTINGS_VIEW as a, MCP_ENDPOINT as i, MCP_CONNECT_POPOVER_WIDTH as n, MCP_STORE as o, MCP_DOCS_PAGE_URL as r, MCP_TOOLTIP_DELAY as s, LOADING_INDICATOR_TIMEOUT as t };
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { It as ref } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
|
|
2
|
-
import { $o as useSettingsStore, Ts as getPromptsData, Wi as useUIStore, ks as updateNpsSurveyState } from "./builder.store--AJ05qsa.js";
|
|
3
|
-
import { Ac as SIX_MONTHS_IN_MILLIS, jc as THREE_DAYS_IN_MILLIS, kc as SEVEN_DAYS_IN_MILLIS, qo as CONTACT_PROMPT_MODAL_KEY, us as NPS_SURVEY_MODAL_KEY } from "./constants-B6Jp7SZD.js";
|
|
4
|
-
import { g as assert, k as defineStore, r as useRootStore } from "./_baseOrderBy-GjkKJVvF.js";
|
|
5
|
-
const useNpsSurveyStore = defineStore("npsSurvey", () => {
|
|
6
|
-
const rootStore = useRootStore();
|
|
7
|
-
const uiStore = useUIStore();
|
|
8
|
-
const settingsStore = useSettingsStore();
|
|
9
|
-
const shouldShowNpsSurveyNext = ref(false);
|
|
10
|
-
const currentSurveyState = ref();
|
|
11
|
-
const currentUserId = ref();
|
|
12
|
-
const promptsData = ref();
|
|
13
|
-
function setupNpsSurveyOnLogin(userId, settings) {
|
|
14
|
-
currentUserId.value = userId;
|
|
15
|
-
if (settings) setShouldShowNpsSurvey(settings);
|
|
16
|
-
}
|
|
17
|
-
function setShouldShowNpsSurvey(settings) {
|
|
18
|
-
if (!settingsStore.isTelemetryEnabled) {
|
|
19
|
-
shouldShowNpsSurveyNext.value = false;
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
currentSurveyState.value = settings.npsSurvey;
|
|
23
|
-
const userActivated = Boolean(settings.userActivated);
|
|
24
|
-
const userActivatedAt = settings.userActivatedAt;
|
|
25
|
-
const lastShownAt = currentSurveyState.value?.lastShownAt;
|
|
26
|
-
if (!userActivated || !userActivatedAt) return;
|
|
27
|
-
if (Date.now() - userActivatedAt < THREE_DAYS_IN_MILLIS) return;
|
|
28
|
-
if (!currentSurveyState.value || !lastShownAt) {
|
|
29
|
-
shouldShowNpsSurveyNext.value = true;
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
const timeSinceLastShown = Date.now() - lastShownAt;
|
|
33
|
-
if ("responded" in currentSurveyState.value && timeSinceLastShown < SIX_MONTHS_IN_MILLIS) return;
|
|
34
|
-
if ("waitingForResponse" in currentSurveyState.value && timeSinceLastShown < SEVEN_DAYS_IN_MILLIS) return;
|
|
35
|
-
shouldShowNpsSurveyNext.value = true;
|
|
36
|
-
}
|
|
37
|
-
function resetNpsSurveyOnLogOut() {
|
|
38
|
-
shouldShowNpsSurveyNext.value = false;
|
|
39
|
-
}
|
|
40
|
-
async function showNpsSurveyIfPossible() {
|
|
41
|
-
if (!shouldShowNpsSurveyNext.value) return;
|
|
42
|
-
uiStore.openModal(NPS_SURVEY_MODAL_KEY);
|
|
43
|
-
shouldShowNpsSurveyNext.value = false;
|
|
44
|
-
const updatedState = {
|
|
45
|
-
waitingForResponse: true,
|
|
46
|
-
lastShownAt: Date.now(),
|
|
47
|
-
ignoredCount: currentSurveyState.value && "ignoredCount" in currentSurveyState.value ? currentSurveyState.value.ignoredCount : 0
|
|
48
|
-
};
|
|
49
|
-
await updateNpsSurveyState(rootStore.restApiContext, updatedState);
|
|
50
|
-
currentSurveyState.value = updatedState;
|
|
51
|
-
}
|
|
52
|
-
async function respondNpsSurvey() {
|
|
53
|
-
assert(currentSurveyState.value);
|
|
54
|
-
const updatedState = {
|
|
55
|
-
responded: true,
|
|
56
|
-
lastShownAt: currentSurveyState.value.lastShownAt
|
|
57
|
-
};
|
|
58
|
-
await updateNpsSurveyState(rootStore.restApiContext, updatedState);
|
|
59
|
-
currentSurveyState.value = updatedState;
|
|
60
|
-
}
|
|
61
|
-
async function ignoreNpsSurvey() {
|
|
62
|
-
assert(currentSurveyState.value);
|
|
63
|
-
const state = currentSurveyState.value;
|
|
64
|
-
const ignoredCount = "ignoredCount" in state ? state.ignoredCount : 0;
|
|
65
|
-
if (ignoredCount + 1 >= 3) {
|
|
66
|
-
await respondNpsSurvey();
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
const updatedState = {
|
|
70
|
-
waitingForResponse: true,
|
|
71
|
-
lastShownAt: currentSurveyState.value.lastShownAt,
|
|
72
|
-
ignoredCount: ignoredCount + 1
|
|
73
|
-
};
|
|
74
|
-
await updateNpsSurveyState(rootStore.restApiContext, updatedState);
|
|
75
|
-
currentSurveyState.value = updatedState;
|
|
76
|
-
}
|
|
77
|
-
async function fetchPromptsData() {
|
|
78
|
-
assert(currentUserId.value);
|
|
79
|
-
if (!settingsStore.isTelemetryEnabled) return;
|
|
80
|
-
try {
|
|
81
|
-
promptsData.value = await getPromptsData(settingsStore.settings.instanceId, currentUserId.value);
|
|
82
|
-
} catch (e) {
|
|
83
|
-
console.error("Failed to fetch prompts data");
|
|
84
|
-
}
|
|
85
|
-
if (promptsData.value?.showContactPrompt) uiStore.openModal(CONTACT_PROMPT_MODAL_KEY);
|
|
86
|
-
else await useNpsSurveyStore().showNpsSurveyIfPossible();
|
|
87
|
-
}
|
|
88
|
-
return {
|
|
89
|
-
promptsData,
|
|
90
|
-
resetNpsSurveyOnLogOut,
|
|
91
|
-
showNpsSurveyIfPossible,
|
|
92
|
-
ignoreNpsSurvey,
|
|
93
|
-
respondNpsSurvey,
|
|
94
|
-
setupNpsSurveyOnLogin,
|
|
95
|
-
fetchPromptsData
|
|
96
|
-
};
|
|
97
|
-
});
|
|
98
|
-
export { useNpsSurveyStore as t };
|
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
import { J as onBeforeUnmount, Jt as NOOP, L as h, M as createVNode, Nt as onScopeDispose, Ot as init_reactivity_esm_bundler, P as defineComponent, Z as onMounted, _t as watch, at as renderSlot, jt as isRef, tn as init_shared_esm_bundler, vt as watchEffect, wt as computed } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
|
|
2
|
-
import { rn as PatchFlags, un as getScrollBarWidth } from "./src-RwnQoRPP.js";
|
|
3
|
-
import { Ct as addUnit, Et as removeClass, F as useNamespace, Ot as throwError, St as addClass, Tt as hasClass, X as buildProps, Z as definePropType, bn as isClient, wt as getStyle } from "./truncate-BmR9EyjG.js";
|
|
4
|
-
var useDraggable = (targetRef, dragRef, draggable) => {
|
|
5
|
-
let transform = {
|
|
6
|
-
offsetX: 0,
|
|
7
|
-
offsetY: 0
|
|
8
|
-
};
|
|
9
|
-
const onMousedown = (e) => {
|
|
10
|
-
const downX = e.clientX;
|
|
11
|
-
const downY = e.clientY;
|
|
12
|
-
const { offsetX, offsetY } = transform;
|
|
13
|
-
const targetRect = targetRef.value.getBoundingClientRect();
|
|
14
|
-
const targetLeft = targetRect.left;
|
|
15
|
-
const targetTop = targetRect.top;
|
|
16
|
-
const targetWidth = targetRect.width;
|
|
17
|
-
const targetHeight = targetRect.height;
|
|
18
|
-
const clientWidth = document.documentElement.clientWidth;
|
|
19
|
-
const clientHeight = document.documentElement.clientHeight;
|
|
20
|
-
const minLeft = -targetLeft + offsetX;
|
|
21
|
-
const minTop = -targetTop + offsetY;
|
|
22
|
-
const maxLeft = clientWidth - targetLeft - targetWidth + offsetX;
|
|
23
|
-
const maxTop = clientHeight - targetTop - targetHeight + offsetY;
|
|
24
|
-
const onMousemove = (e2) => {
|
|
25
|
-
const moveX = Math.min(Math.max(offsetX + e2.clientX - downX, minLeft), maxLeft);
|
|
26
|
-
const moveY = Math.min(Math.max(offsetY + e2.clientY - downY, minTop), maxTop);
|
|
27
|
-
transform = {
|
|
28
|
-
offsetX: moveX,
|
|
29
|
-
offsetY: moveY
|
|
30
|
-
};
|
|
31
|
-
if (targetRef.value) targetRef.value.style.transform = `translate(${addUnit(moveX)}, ${addUnit(moveY)})`;
|
|
32
|
-
};
|
|
33
|
-
const onMouseup = () => {
|
|
34
|
-
document.removeEventListener("mousemove", onMousemove);
|
|
35
|
-
document.removeEventListener("mouseup", onMouseup);
|
|
36
|
-
};
|
|
37
|
-
document.addEventListener("mousemove", onMousemove);
|
|
38
|
-
document.addEventListener("mouseup", onMouseup);
|
|
39
|
-
};
|
|
40
|
-
const onDraggable = () => {
|
|
41
|
-
if (dragRef.value && targetRef.value) dragRef.value.addEventListener("mousedown", onMousedown);
|
|
42
|
-
};
|
|
43
|
-
const offDraggable = () => {
|
|
44
|
-
if (dragRef.value && targetRef.value) dragRef.value.removeEventListener("mousedown", onMousedown);
|
|
45
|
-
};
|
|
46
|
-
onMounted(() => {
|
|
47
|
-
watchEffect(() => {
|
|
48
|
-
if (draggable.value) onDraggable();
|
|
49
|
-
else offDraggable();
|
|
50
|
-
});
|
|
51
|
-
});
|
|
52
|
-
onBeforeUnmount(() => {
|
|
53
|
-
offDraggable();
|
|
54
|
-
});
|
|
55
|
-
};
|
|
56
|
-
init_reactivity_esm_bundler();
|
|
57
|
-
var useLockscreen = (trigger, options = {}) => {
|
|
58
|
-
if (!isRef(trigger)) throwError("[useLockscreen]", "You need to pass a ref param to this function");
|
|
59
|
-
const ns = options.ns || useNamespace("popup");
|
|
60
|
-
const hiddenCls = computed(() => ns.bm("parent", "hidden"));
|
|
61
|
-
if (!isClient || hasClass(document.body, hiddenCls.value)) return;
|
|
62
|
-
let scrollBarWidth = 0;
|
|
63
|
-
let withoutHiddenClass = false;
|
|
64
|
-
let bodyWidth = "0";
|
|
65
|
-
const cleanup = () => {
|
|
66
|
-
setTimeout(() => {
|
|
67
|
-
if (typeof document === "undefined") return;
|
|
68
|
-
removeClass(document == null ? void 0 : document.body, hiddenCls.value);
|
|
69
|
-
if (withoutHiddenClass && document) document.body.style.width = bodyWidth;
|
|
70
|
-
}, 200);
|
|
71
|
-
};
|
|
72
|
-
watch(trigger, (val) => {
|
|
73
|
-
if (!val) {
|
|
74
|
-
cleanup();
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
withoutHiddenClass = !hasClass(document.body, hiddenCls.value);
|
|
78
|
-
if (withoutHiddenClass) bodyWidth = document.body.style.width;
|
|
79
|
-
scrollBarWidth = getScrollBarWidth(ns.namespace.value);
|
|
80
|
-
const bodyHasOverflow = document.documentElement.clientHeight < document.body.scrollHeight;
|
|
81
|
-
const bodyOverflowY = getStyle(document.body, "overflowY");
|
|
82
|
-
if (scrollBarWidth > 0 && (bodyHasOverflow || bodyOverflowY === "scroll") && withoutHiddenClass) document.body.style.width = `calc(100% - ${scrollBarWidth}px)`;
|
|
83
|
-
addClass(document.body, hiddenCls.value);
|
|
84
|
-
});
|
|
85
|
-
onScopeDispose(() => cleanup());
|
|
86
|
-
};
|
|
87
|
-
init_shared_esm_bundler();
|
|
88
|
-
var useSameTarget = (handleClick) => {
|
|
89
|
-
if (!handleClick) return {
|
|
90
|
-
onClick: NOOP,
|
|
91
|
-
onMousedown: NOOP,
|
|
92
|
-
onMouseup: NOOP
|
|
93
|
-
};
|
|
94
|
-
let mousedownTarget = false;
|
|
95
|
-
let mouseupTarget = false;
|
|
96
|
-
const onClick = (e) => {
|
|
97
|
-
if (mousedownTarget && mouseupTarget) handleClick(e);
|
|
98
|
-
mousedownTarget = mouseupTarget = false;
|
|
99
|
-
};
|
|
100
|
-
const onMousedown = (e) => {
|
|
101
|
-
mousedownTarget = e.target === e.currentTarget;
|
|
102
|
-
};
|
|
103
|
-
const onMouseup = (e) => {
|
|
104
|
-
mouseupTarget = e.target === e.currentTarget;
|
|
105
|
-
};
|
|
106
|
-
return {
|
|
107
|
-
onClick,
|
|
108
|
-
onMousedown,
|
|
109
|
-
onMouseup
|
|
110
|
-
};
|
|
111
|
-
};
|
|
112
|
-
var overlayProps = buildProps({
|
|
113
|
-
mask: {
|
|
114
|
-
type: Boolean,
|
|
115
|
-
default: true
|
|
116
|
-
},
|
|
117
|
-
customMaskEvent: {
|
|
118
|
-
type: Boolean,
|
|
119
|
-
default: false
|
|
120
|
-
},
|
|
121
|
-
overlayClass: { type: definePropType([
|
|
122
|
-
String,
|
|
123
|
-
Array,
|
|
124
|
-
Object
|
|
125
|
-
]) },
|
|
126
|
-
zIndex: { type: definePropType([String, Number]) }
|
|
127
|
-
});
|
|
128
|
-
var overlayEmits = { click: (evt) => evt instanceof MouseEvent };
|
|
129
|
-
var BLOCK = "overlay";
|
|
130
|
-
var ElOverlay = defineComponent({
|
|
131
|
-
name: "ElOverlay",
|
|
132
|
-
props: overlayProps,
|
|
133
|
-
emits: overlayEmits,
|
|
134
|
-
setup(props, { slots, emit }) {
|
|
135
|
-
const ns = useNamespace(BLOCK);
|
|
136
|
-
const onMaskClick = (e) => {
|
|
137
|
-
emit("click", e);
|
|
138
|
-
};
|
|
139
|
-
const { onClick, onMousedown, onMouseup } = useSameTarget(props.customMaskEvent ? void 0 : onMaskClick);
|
|
140
|
-
return () => {
|
|
141
|
-
return props.mask ? createVNode("div", {
|
|
142
|
-
class: [ns.b(), props.overlayClass],
|
|
143
|
-
style: { zIndex: props.zIndex },
|
|
144
|
-
onClick,
|
|
145
|
-
onMousedown,
|
|
146
|
-
onMouseup
|
|
147
|
-
}, [renderSlot(slots, "default")], PatchFlags.STYLE | PatchFlags.CLASS | PatchFlags.PROPS, [
|
|
148
|
-
"onClick",
|
|
149
|
-
"onMouseup",
|
|
150
|
-
"onMousedown"
|
|
151
|
-
]) : h("div", {
|
|
152
|
-
class: props.overlayClass,
|
|
153
|
-
style: {
|
|
154
|
-
zIndex: props.zIndex,
|
|
155
|
-
position: "fixed",
|
|
156
|
-
top: "0px",
|
|
157
|
-
right: "0px",
|
|
158
|
-
bottom: "0px",
|
|
159
|
-
left: "0px"
|
|
160
|
-
}
|
|
161
|
-
}, [renderSlot(slots, "default")]);
|
|
162
|
-
};
|
|
163
|
-
}
|
|
164
|
-
});
|
|
165
|
-
export { useDraggable as i, useSameTarget as n, useLockscreen as r, ElOverlay as t };
|