@n8n/stores 2.32.2 → 2.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cloudPlan.store.cjs +7 -0
- package/dist/cloudPlan.store.d.cts +534 -0
- package/dist/cloudPlan.store.d.mts +534 -0
- package/dist/cloudPlan.store.mjs +7 -0
- package/dist/cloudPlan2.store.cjs +247 -0
- package/dist/cloudPlan2.store.cjs.map +1 -0
- package/dist/cloudPlan2.store.mjs +242 -0
- package/dist/cloudPlan2.store.mjs.map +1 -0
- package/dist/composables/useBasePageRedirectionHelper.cjs +87 -0
- package/dist/composables/useBasePageRedirectionHelper.cjs.map +1 -0
- package/dist/composables/useBasePageRedirectionHelper.d.cts +16 -0
- package/dist/composables/useBasePageRedirectionHelper.d.mts +16 -0
- package/dist/composables/useBasePageRedirectionHelper.mjs +87 -0
- package/dist/composables/useBasePageRedirectionHelper.mjs.map +1 -0
- package/dist/constants2.cjs +2 -0
- package/dist/constants2.cjs.map +1 -1
- package/dist/constants2.d.cts +2 -0
- package/dist/constants2.d.mts +2 -0
- package/dist/constants2.mjs +2 -0
- package/dist/constants2.mjs.map +1 -1
- package/dist/invitation.api.cjs +4 -0
- package/dist/invitation.api.d.cts +2 -0
- package/dist/invitation.api.d.mts +2 -0
- package/dist/invitation.api.mjs +3 -0
- package/dist/invitation2.api.cjs +26 -0
- package/dist/invitation2.api.cjs.map +1 -0
- package/dist/invitation2.api.d.cts +30 -0
- package/dist/invitation2.api.d.mts +30 -0
- package/dist/invitation2.api.mjs +14 -0
- package/dist/invitation2.api.mjs.map +1 -0
- package/dist/modalOpeners.cjs +0 -0
- package/dist/modalOpeners.d.cts +2 -0
- package/dist/modalOpeners.d.mts +2 -0
- package/dist/modalOpeners.mjs +1 -0
- package/dist/modalOpeners2.d.cts +11 -0
- package/dist/modalOpeners2.d.mts +11 -0
- package/dist/notifications.store.cjs +27 -0
- package/dist/notifications.store.cjs.map +1 -0
- package/dist/notifications.store.d.cts +15 -0
- package/dist/notifications.store.d.mts +15 -0
- package/dist/notifications.store.mjs +26 -0
- package/dist/notifications.store.mjs.map +1 -0
- package/dist/onboarding.api.cjs +3 -0
- package/dist/onboarding.api.d.cts +7 -0
- package/dist/onboarding.api.d.mts +7 -0
- package/dist/onboarding.api.mjs +3 -0
- package/dist/onboarding2.api.cjs +24 -0
- package/dist/onboarding2.api.cjs.map +1 -0
- package/dist/onboarding2.api.mjs +18 -0
- package/dist/onboarding2.api.mjs.map +1 -0
- package/dist/pageRedirection.d.cts +6 -0
- package/dist/pageRedirection.d.mts +6 -0
- package/dist/rbac.store.cjs +2 -1
- package/dist/rbac.store.cjs.map +1 -1
- package/dist/rbac.store.d.cts +123 -123
- package/dist/rbac.store.d.mts +124 -124
- package/dist/rbac.store.mjs +1 -1
- package/dist/roles.store.cjs +88 -0
- package/dist/roles.store.cjs.map +1 -0
- package/dist/roles.store.d.cts +637 -0
- package/dist/roles.store.d.mts +637 -0
- package/dist/roles.store.mjs +87 -0
- package/dist/roles.store.mjs.map +1 -0
- package/dist/settings.store.cjs +6 -0
- package/dist/settings.store.d.cts +3801 -0
- package/dist/settings.store.d.mts +3801 -0
- package/dist/settings.store.mjs +6 -0
- package/dist/settings2.store.cjs +387 -0
- package/dist/settings2.store.cjs.map +1 -0
- package/dist/settings2.store.mjs +348 -0
- package/dist/settings2.store.mjs.map +1 -0
- package/dist/types/pageRedirection.cjs +0 -0
- package/dist/types/pageRedirection.d.cts +2 -0
- package/dist/types/pageRedirection.d.mts +2 -0
- package/dist/types/pageRedirection.mjs +1 -0
- package/dist/useAgentRequestStore.cjs +1 -0
- package/dist/useAgentRequestStore.cjs.map +1 -1
- package/dist/useAgentRequestStore.d.cts +1 -1
- package/dist/useAgentRequestStore.d.mts +6 -6
- package/dist/useRootStore.cjs +4 -182
- package/dist/useRootStore.d.cts +73 -73
- package/dist/useRootStore.d.mts +73 -73
- package/dist/useRootStore.mjs +4 -182
- package/dist/useRootStore2.cjs +189 -0
- package/dist/useRootStore2.cjs.map +1 -0
- package/dist/useRootStore2.mjs +183 -0
- package/dist/useRootStore2.mjs.map +1 -0
- package/dist/users.store.cjs +9 -0
- package/dist/users.store.d.cts +552 -0
- package/dist/users.store.d.mts +552 -0
- package/dist/users.store.mjs +9 -0
- package/dist/users2.store.cjs +362 -0
- package/dist/users2.store.cjs.map +1 -0
- package/dist/users2.store.mjs +353 -0
- package/dist/users2.store.mjs.map +1 -0
- package/dist/versions.store.cjs +11 -0
- package/dist/versions.store.d.cts +384 -0
- package/dist/versions.store.d.mts +384 -0
- package/dist/versions.store.mjs +10 -0
- package/dist/versions2.store.cjs +230 -0
- package/dist/versions2.store.cjs.map +1 -0
- package/dist/versions2.store.mjs +218 -0
- package/dist/versions2.store.mjs.map +1 -0
- package/package.json +13 -6
- package/dist/useRootStore.cjs.map +0 -1
- package/dist/useRootStore.mjs.map +0 -1
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import "./constants2.mjs";
|
|
2
|
+
import "./metaTagConfig2.mjs";
|
|
3
|
+
import { t as useRootStore } from "./useRootStore2.mjs";
|
|
4
|
+
import { t as useSettingsStore } from "./settings2.store.mjs";
|
|
5
|
+
import { defineStore } from "pinia";
|
|
6
|
+
import { computed, ref } from "vue";
|
|
7
|
+
import { GLOBAL_CHAT_USER_ROLE_SLUG, GLOBAL_OWNER_ROLE_SLUG, PROJECT_CHAT_USER_ROLE_SLUG, PROJECT_OWNER_ROLE_SLUG } from "@n8n/permissions";
|
|
8
|
+
import * as rolesApi from "@n8n/rest-api-client/api/roles";
|
|
9
|
+
|
|
10
|
+
//#region src/roles.store.ts
|
|
11
|
+
function sortByOrderThenName(orderMap) {
|
|
12
|
+
return (a, b) => {
|
|
13
|
+
const orderA = orderMap.get(a.slug);
|
|
14
|
+
const orderB = orderMap.get(b.slug);
|
|
15
|
+
if (orderA !== void 0 || orderB !== void 0) return (orderA ?? Number.MAX_SAFE_INTEGER) - (orderB ?? Number.MAX_SAFE_INTEGER);
|
|
16
|
+
return a.displayName.localeCompare(b.displayName);
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
const useRolesStore = defineStore("roles", () => {
|
|
20
|
+
const rootStore = useRootStore();
|
|
21
|
+
const settingsStore = useSettingsStore();
|
|
22
|
+
const roles = ref({
|
|
23
|
+
global: [],
|
|
24
|
+
project: [],
|
|
25
|
+
credential: [],
|
|
26
|
+
workflow: [],
|
|
27
|
+
secretsProviderConnection: []
|
|
28
|
+
});
|
|
29
|
+
const projectRoleOrder = ref([
|
|
30
|
+
"project:viewer",
|
|
31
|
+
"project:chatUser",
|
|
32
|
+
"project:editor",
|
|
33
|
+
"project:admin"
|
|
34
|
+
]);
|
|
35
|
+
const projectRoleOrderMap = computed(() => new Map(projectRoleOrder.value.map((role, idx) => [role, idx])));
|
|
36
|
+
const globalRoleOrder = ref(["global:admin", "global:member"]);
|
|
37
|
+
const globalRoleOrderMap = computed(() => new Map(globalRoleOrder.value.map((role, idx) => [role, idx])));
|
|
38
|
+
const processedInstanceRoles = computed(() => roles.value.global.filter((role) => role.slug !== GLOBAL_OWNER_ROLE_SLUG && (settingsStore.isChatFeatureEnabled || role.slug !== GLOBAL_CHAT_USER_ROLE_SLUG)).sort(sortByOrderThenName(globalRoleOrderMap.value)));
|
|
39
|
+
const customInstanceRoles = computed(() => processedInstanceRoles.value.filter((role) => !role.systemRole));
|
|
40
|
+
const processedProjectRoles = computed(() => roles.value.project.filter((role) => role.slug !== PROJECT_OWNER_ROLE_SLUG && (settingsStore.isChatFeatureEnabled || role.slug !== PROJECT_CHAT_USER_ROLE_SLUG)).sort(sortByOrderThenName(projectRoleOrderMap.value)));
|
|
41
|
+
const processedCredentialRoles = computed(() => roles.value.credential.filter((role) => role.slug !== "credential:owner"));
|
|
42
|
+
const processedWorkflowRoles = computed(() => roles.value.workflow.filter((role) => role.slug !== "workflow:owner"));
|
|
43
|
+
const fetchRoles = async () => {
|
|
44
|
+
roles.value = await rolesApi.getRoles(rootStore.restApiContext);
|
|
45
|
+
};
|
|
46
|
+
const createRole = async (body) => {
|
|
47
|
+
return await rolesApi.createRole(rootStore.restApiContext, body);
|
|
48
|
+
};
|
|
49
|
+
const fetchRoleBySlug = async (payload) => {
|
|
50
|
+
return await rolesApi.getRoleBySlug(rootStore.restApiContext, payload);
|
|
51
|
+
};
|
|
52
|
+
const deleteRole = async (slug, reassignRoleSlug) => {
|
|
53
|
+
return await rolesApi.deleteRole(rootStore.restApiContext, slug, reassignRoleSlug);
|
|
54
|
+
};
|
|
55
|
+
const updateRole = async (slug, body) => {
|
|
56
|
+
return await rolesApi.updateRole(rootStore.restApiContext, slug, body);
|
|
57
|
+
};
|
|
58
|
+
const fetchRoleAssignments = async (slug) => {
|
|
59
|
+
return await rolesApi.getRoleAssignments(rootStore.restApiContext, slug);
|
|
60
|
+
};
|
|
61
|
+
const fetchRoleProjectMembers = async (slug, projectId) => {
|
|
62
|
+
return await rolesApi.getRoleProjectMembers(rootStore.restApiContext, slug, projectId);
|
|
63
|
+
};
|
|
64
|
+
const fetchRoleMembers = async (slug) => {
|
|
65
|
+
return await rolesApi.getRoleMembers(rootStore.restApiContext, slug);
|
|
66
|
+
};
|
|
67
|
+
return {
|
|
68
|
+
roles,
|
|
69
|
+
processedProjectRoles,
|
|
70
|
+
processedInstanceRoles,
|
|
71
|
+
customInstanceRoles,
|
|
72
|
+
processedCredentialRoles,
|
|
73
|
+
processedWorkflowRoles,
|
|
74
|
+
fetchRoles,
|
|
75
|
+
createRole,
|
|
76
|
+
fetchRoleBySlug,
|
|
77
|
+
updateRole,
|
|
78
|
+
deleteRole,
|
|
79
|
+
fetchRoleAssignments,
|
|
80
|
+
fetchRoleProjectMembers,
|
|
81
|
+
fetchRoleMembers
|
|
82
|
+
};
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
//#endregion
|
|
86
|
+
export { useRolesStore };
|
|
87
|
+
//# sourceMappingURL=roles.store.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"roles.store.mjs","names":[],"sources":["../src/roles.store.ts"],"sourcesContent":["import type {\n\tCreateRoleDto,\n\tRoleAssignmentsResponse,\n\tRoleMembersResponse,\n\tRoleProjectMembersResponse,\n\tUpdateRoleDto,\n} from '@n8n/api-types';\nimport {\n\ttype AllRolesMap,\n\ttype Role,\n\tGLOBAL_OWNER_ROLE_SLUG,\n\tGLOBAL_CHAT_USER_ROLE_SLUG,\n\tPROJECT_OWNER_ROLE_SLUG,\n\tPROJECT_CHAT_USER_ROLE_SLUG,\n} from '@n8n/permissions';\nimport * as rolesApi from '@n8n/rest-api-client/api/roles';\nimport { defineStore } from 'pinia';\nimport { ref, computed } from 'vue';\n\nimport { useSettingsStore } from './settings.store';\nimport { useRootStore } from './useRootStore';\n\nfunction sortByOrderThenName(orderMap: Map<string, number>) {\n\treturn (a: { slug: string; displayName: string }, b: { slug: string; displayName: string }) => {\n\t\tconst orderA = orderMap.get(a.slug);\n\t\tconst orderB = orderMap.get(b.slug);\n\t\t// Roles with an explicit order come first; the rest sort alphabetically by name.\n\t\tif (orderA !== undefined || orderB !== undefined) {\n\t\t\treturn (orderA ?? Number.MAX_SAFE_INTEGER) - (orderB ?? Number.MAX_SAFE_INTEGER);\n\t\t}\n\t\treturn a.displayName.localeCompare(b.displayName);\n\t};\n}\n\nexport const useRolesStore = defineStore('roles', () => {\n\tconst rootStore = useRootStore();\n\tconst settingsStore = useSettingsStore();\n\tconst roles = ref<AllRolesMap>({\n\t\tglobal: [],\n\t\tproject: [],\n\t\tcredential: [],\n\t\tworkflow: [],\n\t\tsecretsProviderConnection: [],\n\t});\n\tconst projectRoleOrder = ref<string[]>([\n\t\t'project:viewer',\n\t\t'project:chatUser',\n\t\t'project:editor',\n\t\t'project:admin',\n\t]);\n\tconst projectRoleOrderMap = computed<Map<string, number>>(\n\t\t() => new Map(projectRoleOrder.value.map((role, idx) => [role, idx])),\n\t);\n\n\tconst globalRoleOrder = ref<string[]>(['global:admin', 'global:member']);\n\tconst globalRoleOrderMap = computed<Map<string, number>>(\n\t\t() => new Map(globalRoleOrder.value.map((role, idx) => [role, idx])),\n\t);\n\n\tconst processedInstanceRoles = computed<AllRolesMap['global']>(() =>\n\t\troles.value.global\n\t\t\t.filter(\n\t\t\t\t(role) =>\n\t\t\t\t\trole.slug !== GLOBAL_OWNER_ROLE_SLUG &&\n\t\t\t\t\t(settingsStore.isChatFeatureEnabled || role.slug !== GLOBAL_CHAT_USER_ROLE_SLUG),\n\t\t\t)\n\t\t\t.sort(sortByOrderThenName(globalRoleOrderMap.value)),\n\t);\n\n\tconst customInstanceRoles = computed<AllRolesMap['global']>(() =>\n\t\tprocessedInstanceRoles.value.filter((role) => !role.systemRole),\n\t);\n\n\tconst processedProjectRoles = computed<AllRolesMap['project']>(() =>\n\t\troles.value.project\n\t\t\t.filter(\n\t\t\t\t(role) =>\n\t\t\t\t\trole.slug !== PROJECT_OWNER_ROLE_SLUG &&\n\t\t\t\t\t(settingsStore.isChatFeatureEnabled || role.slug !== PROJECT_CHAT_USER_ROLE_SLUG),\n\t\t\t)\n\t\t\t.sort(sortByOrderThenName(projectRoleOrderMap.value)),\n\t);\n\n\tconst processedCredentialRoles = computed<AllRolesMap['credential']>(() =>\n\t\troles.value.credential.filter((role) => role.slug !== 'credential:owner'),\n\t);\n\n\tconst processedWorkflowRoles = computed<AllRolesMap['workflow']>(() =>\n\t\troles.value.workflow.filter((role) => role.slug !== 'workflow:owner'),\n\t);\n\n\tconst fetchRoles = async () => {\n\t\troles.value = await rolesApi.getRoles(rootStore.restApiContext);\n\t};\n\n\tconst createRole = async (body: CreateRoleDto): Promise<Role> => {\n\t\treturn await rolesApi.createRole(rootStore.restApiContext, body);\n\t};\n\n\tconst fetchRoleBySlug = async (payload: { slug: string }): Promise<Role> => {\n\t\treturn await rolesApi.getRoleBySlug(rootStore.restApiContext, payload);\n\t};\n\n\tconst deleteRole = async (slug: string, reassignRoleSlug?: string): Promise<Role> => {\n\t\treturn await rolesApi.deleteRole(rootStore.restApiContext, slug, reassignRoleSlug);\n\t};\n\n\tconst updateRole = async (slug: string, body: UpdateRoleDto): Promise<Role> => {\n\t\treturn await rolesApi.updateRole(rootStore.restApiContext, slug, body);\n\t};\n\n\tconst fetchRoleAssignments = async (slug: string): Promise<RoleAssignmentsResponse> => {\n\t\treturn await rolesApi.getRoleAssignments(rootStore.restApiContext, slug);\n\t};\n\n\tconst fetchRoleProjectMembers = async (\n\t\tslug: string,\n\t\tprojectId: string,\n\t): Promise<RoleProjectMembersResponse> => {\n\t\treturn await rolesApi.getRoleProjectMembers(rootStore.restApiContext, slug, projectId);\n\t};\n\n\tconst fetchRoleMembers = async (slug: string): Promise<RoleMembersResponse> => {\n\t\treturn await rolesApi.getRoleMembers(rootStore.restApiContext, slug);\n\t};\n\n\treturn {\n\t\troles,\n\t\tprocessedProjectRoles,\n\t\tprocessedInstanceRoles,\n\t\tcustomInstanceRoles,\n\t\tprocessedCredentialRoles,\n\t\tprocessedWorkflowRoles,\n\t\tfetchRoles,\n\t\tcreateRole,\n\t\tfetchRoleBySlug,\n\t\tupdateRole,\n\t\tdeleteRole,\n\t\tfetchRoleAssignments,\n\t\tfetchRoleProjectMembers,\n\t\tfetchRoleMembers,\n\t};\n});\n"],"mappings":";;;;;;;;;;AAsBA,SAAS,oBAAoB,UAA+B;AAC3D,SAAQ,GAA0C,MAA6C;EAC9F,MAAM,SAAS,SAAS,IAAI,EAAE,KAAK;EACnC,MAAM,SAAS,SAAS,IAAI,EAAE,KAAK;AAEnC,MAAI,WAAW,UAAa,WAAW,OACtC,SAAQ,UAAU,OAAO,qBAAqB,UAAU,OAAO;AAEhE,SAAO,EAAE,YAAY,cAAc,EAAE,YAAY;;;AAInD,MAAa,gBAAgB,YAAY,eAAe;CACvD,MAAM,YAAY,cAAc;CAChC,MAAM,gBAAgB,kBAAkB;CACxC,MAAM,QAAQ,IAAiB;EAC9B,QAAQ,EAAE;EACV,SAAS,EAAE;EACX,YAAY,EAAE;EACd,UAAU,EAAE;EACZ,2BAA2B,EAAE;EAC7B,CAAC;CACF,MAAM,mBAAmB,IAAc;EACtC;EACA;EACA;EACA;EACA,CAAC;CACF,MAAM,sBAAsB,eACrB,IAAI,IAAI,iBAAiB,MAAM,KAAK,MAAM,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC,CACrE;CAED,MAAM,kBAAkB,IAAc,CAAC,gBAAgB,gBAAgB,CAAC;CACxE,MAAM,qBAAqB,eACpB,IAAI,IAAI,gBAAgB,MAAM,KAAK,MAAM,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC,CACpE;CAED,MAAM,yBAAyB,eAC9B,MAAM,MAAM,OACV,QACC,SACA,KAAK,SAAS,2BACb,cAAc,wBAAwB,KAAK,SAAS,4BACtD,CACA,KAAK,oBAAoB,mBAAmB,MAAM,CAAC,CACrD;CAED,MAAM,sBAAsB,eAC3B,uBAAuB,MAAM,QAAQ,SAAS,CAAC,KAAK,WAAW,CAC/D;CAED,MAAM,wBAAwB,eAC7B,MAAM,MAAM,QACV,QACC,SACA,KAAK,SAAS,4BACb,cAAc,wBAAwB,KAAK,SAAS,6BACtD,CACA,KAAK,oBAAoB,oBAAoB,MAAM,CAAC,CACtD;CAED,MAAM,2BAA2B,eAChC,MAAM,MAAM,WAAW,QAAQ,SAAS,KAAK,SAAS,mBAAmB,CACzE;CAED,MAAM,yBAAyB,eAC9B,MAAM,MAAM,SAAS,QAAQ,SAAS,KAAK,SAAS,iBAAiB,CACrE;CAED,MAAM,aAAa,YAAY;AAC9B,QAAM,QAAQ,MAAM,SAAS,SAAS,UAAU,eAAe;;CAGhE,MAAM,aAAa,OAAO,SAAuC;AAChE,SAAO,MAAM,SAAS,WAAW,UAAU,gBAAgB,KAAK;;CAGjE,MAAM,kBAAkB,OAAO,YAA6C;AAC3E,SAAO,MAAM,SAAS,cAAc,UAAU,gBAAgB,QAAQ;;CAGvE,MAAM,aAAa,OAAO,MAAc,qBAA6C;AACpF,SAAO,MAAM,SAAS,WAAW,UAAU,gBAAgB,MAAM,iBAAiB;;CAGnF,MAAM,aAAa,OAAO,MAAc,SAAuC;AAC9E,SAAO,MAAM,SAAS,WAAW,UAAU,gBAAgB,MAAM,KAAK;;CAGvE,MAAM,uBAAuB,OAAO,SAAmD;AACtF,SAAO,MAAM,SAAS,mBAAmB,UAAU,gBAAgB,KAAK;;CAGzE,MAAM,0BAA0B,OAC/B,MACA,cACyC;AACzC,SAAO,MAAM,SAAS,sBAAsB,UAAU,gBAAgB,MAAM,UAAU;;CAGvF,MAAM,mBAAmB,OAAO,SAA+C;AAC9E,SAAO,MAAM,SAAS,eAAe,UAAU,gBAAgB,KAAK;;AAGrE,QAAO;EACN;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA"}
|