@strapi/content-manager 5.54.0 → 5.55.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/admin/components/LeftMenu.js +131 -52
- package/dist/admin/components/LeftMenu.js.map +1 -1
- package/dist/admin/components/LeftMenu.mjs +133 -54
- package/dist/admin/components/LeftMenu.mjs.map +1 -1
- package/dist/admin/hooks/useContentManagerInitData.js +3 -2
- package/dist/admin/hooks/useContentManagerInitData.js.map +1 -1
- package/dist/admin/hooks/useContentManagerInitData.mjs +3 -2
- package/dist/admin/hooks/useContentManagerInitData.mjs.map +1 -1
- package/dist/admin/hooks/useDocumentActions.js +3 -1
- package/dist/admin/hooks/useDocumentActions.js.map +1 -1
- package/dist/admin/hooks/useDocumentActions.mjs +4 -2
- package/dist/admin/hooks/useDocumentActions.mjs.map +1 -1
- package/dist/admin/layout.js +2 -4
- package/dist/admin/layout.js.map +1 -1
- package/dist/admin/layout.mjs +2 -4
- package/dist/admin/layout.mjs.map +1 -1
- package/dist/admin/modules/app.js +3 -1
- package/dist/admin/modules/app.js.map +1 -1
- package/dist/admin/modules/app.mjs +3 -1
- package/dist/admin/modules/app.mjs.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.js +58 -1
- package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.js.map +1 -1
- package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.mjs +58 -2
- package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.mjs.map +1 -1
- package/dist/admin/src/modules/app.d.ts +2 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/Relations/RelationModal.d.ts +14 -1
- package/dist/admin/src/services/init.d.ts +1 -0
- package/dist/admin/src/utils/contentStructure.d.ts +59 -0
- package/dist/admin/utils/contentStructure.js +136 -0
- package/dist/admin/utils/contentStructure.js.map +1 -0
- package/dist/admin/utils/contentStructure.mjs +130 -0
- package/dist/admin/utils/contentStructure.mjs.map +1 -0
- package/dist/server/controllers/init.js +7 -2
- package/dist/server/controllers/init.js.map +1 -1
- package/dist/server/controllers/init.mjs +7 -2
- package/dist/server/controllers/init.mjs.map +1 -1
- package/dist/server/services/content-structure.js +53 -0
- package/dist/server/services/content-structure.js.map +1 -0
- package/dist/server/services/content-structure.mjs +51 -0
- package/dist/server/services/content-structure.mjs.map +1 -0
- package/dist/server/services/index.js +2 -0
- package/dist/server/services/index.js.map +1 -1
- package/dist/server/services/index.mjs +2 -0
- package/dist/server/services/index.mjs.map +1 -1
- package/dist/server/src/controllers/index.d.ts +1 -1
- package/dist/server/src/controllers/init.d.ts +1 -1
- package/dist/server/src/controllers/init.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +6 -1
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/services/content-structure.d.ts +8 -0
- package/dist/server/src/services/content-structure.d.ts.map +1 -0
- package/dist/server/src/services/index.d.ts +5 -0
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/dist/server/src/utils/index.d.ts +2 -0
- package/dist/server/src/utils/index.d.ts.map +1 -1
- package/dist/server/utils/index.js.map +1 -1
- package/dist/server/utils/index.mjs.map +1 -1
- package/dist/shared/contracts/init.d.ts +2 -0
- package/dist/shared/contracts/init.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reconcile a resolved content-structure section (folder groups) with the set of links the user can
|
|
3
|
+
* actually see with respect to their RBAC permissions.
|
|
4
|
+
*/ const deriveVisibleTree = (groups, links, compareUngrouped)=>{
|
|
5
|
+
const linkByUid = new Map(links.map((link)=>[
|
|
6
|
+
link.uid,
|
|
7
|
+
link
|
|
8
|
+
]));
|
|
9
|
+
const grouped = new Set();
|
|
10
|
+
const resolveChildAsNode = (child)=>{
|
|
11
|
+
if (child.type === 'contentType') {
|
|
12
|
+
const link = linkByUid.get(child.uid);
|
|
13
|
+
if (!link) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
grouped.add(child.uid);
|
|
17
|
+
return {
|
|
18
|
+
type: 'link',
|
|
19
|
+
link
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
return resolveGroupAsNode(child);
|
|
23
|
+
};
|
|
24
|
+
const isTreeNode = (node)=>{
|
|
25
|
+
return node !== null;
|
|
26
|
+
};
|
|
27
|
+
const resolveGroupAsNode = (group)=>{
|
|
28
|
+
const children = group.children.map(resolveChildAsNode).filter(isTreeNode);
|
|
29
|
+
if (children.length === 0) {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
return {
|
|
33
|
+
type: 'folder',
|
|
34
|
+
id: group.id,
|
|
35
|
+
name: group.name,
|
|
36
|
+
children
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
const folders = groups.map(resolveGroupAsNode).filter(isTreeNode);
|
|
40
|
+
const ungrouped = links.filter((link)=>!grouped.has(link.uid));
|
|
41
|
+
if (compareUngrouped) {
|
|
42
|
+
ungrouped.sort(compareUngrouped);
|
|
43
|
+
}
|
|
44
|
+
return [
|
|
45
|
+
...folders,
|
|
46
|
+
...ungrouped.map((link)=>({
|
|
47
|
+
type: 'link',
|
|
48
|
+
link
|
|
49
|
+
}))
|
|
50
|
+
];
|
|
51
|
+
};
|
|
52
|
+
function flattenTreeLinks(nodes, parentPath = []) {
|
|
53
|
+
return nodes.flatMap((node)=>{
|
|
54
|
+
if (node.type === 'link') {
|
|
55
|
+
return [
|
|
56
|
+
{
|
|
57
|
+
link: node.link,
|
|
58
|
+
path: parentPath
|
|
59
|
+
}
|
|
60
|
+
];
|
|
61
|
+
}
|
|
62
|
+
return flattenTreeLinks(node.children, [
|
|
63
|
+
...parentPath,
|
|
64
|
+
node.name
|
|
65
|
+
]);
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
function countTreeLinks(nodes) {
|
|
69
|
+
return flattenTreeLinks(nodes).length;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Search the contentStructure tree, returning the matching links with their folder path.
|
|
73
|
+
*
|
|
74
|
+
* A **link** matches on whatever `matchLink` tests (display name and/or UID) and is returned with its ancestor folder path.
|
|
75
|
+
*
|
|
76
|
+
* A **folder** matches on its name and, when it does, surfaces *all* of its descendant content types (each with
|
|
77
|
+
* its own path).
|
|
78
|
+
*/ function filterTreeLinks({ matchFolderName, matchLink, nodes, parentPath = [] }) {
|
|
79
|
+
return nodes.flatMap((node)=>{
|
|
80
|
+
if (node.type === 'link') {
|
|
81
|
+
return matchLink(node.link) ? [
|
|
82
|
+
{
|
|
83
|
+
link: node.link,
|
|
84
|
+
path: parentPath
|
|
85
|
+
}
|
|
86
|
+
] : [];
|
|
87
|
+
}
|
|
88
|
+
const path = [
|
|
89
|
+
...parentPath,
|
|
90
|
+
node.name
|
|
91
|
+
];
|
|
92
|
+
if (matchFolderName(node.name)) {
|
|
93
|
+
return flattenTreeLinks(node.children, path);
|
|
94
|
+
}
|
|
95
|
+
return filterTreeLinks({
|
|
96
|
+
nodes: node.children,
|
|
97
|
+
matchFolderName,
|
|
98
|
+
matchLink,
|
|
99
|
+
parentPath: path
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Builds a content structure section for the left menu from the RBAC-provided links and the resolved content structure configuration.
|
|
105
|
+
*/ function buildContentStructureSection({ compareLinks, groups, links, title, id }) {
|
|
106
|
+
try {
|
|
107
|
+
return {
|
|
108
|
+
id,
|
|
109
|
+
title,
|
|
110
|
+
tree: deriveVisibleTree(groups, links, compareLinks)
|
|
111
|
+
};
|
|
112
|
+
} catch {
|
|
113
|
+
const tree = [
|
|
114
|
+
...links
|
|
115
|
+
].sort(compareLinks).map((link)=>{
|
|
116
|
+
return {
|
|
117
|
+
type: 'link',
|
|
118
|
+
link
|
|
119
|
+
};
|
|
120
|
+
});
|
|
121
|
+
return {
|
|
122
|
+
id,
|
|
123
|
+
title,
|
|
124
|
+
tree
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
export { buildContentStructureSection, countTreeLinks, deriveVisibleTree, filterTreeLinks, flattenTreeLinks };
|
|
130
|
+
//# sourceMappingURL=contentStructure.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contentStructure.mjs","sources":["../../../admin/src/utils/contentStructure.ts"],"sourcesContent":["import type { ContentManagerLink } from '../hooks/useContentManagerInitData';\nimport type { Modules } from '@strapi/types';\n\ntype ResolvedGroupNode = Modules.ContentStructure.ResolvedGroupNode;\ntype ResolvedStructureChild = Modules.ContentStructure.ResolvedStructureChild;\n\ntype VisibleTreeNode<TLink> =\n | { type: 'folder'; id: string; name: string; children: VisibleTreeNode<TLink>[] }\n | { type: 'link'; link: TLink };\n\nexport type LinkTreeNode = VisibleTreeNode<ContentManagerLink>;\n\n/**\n * Reconcile a resolved content-structure section (folder groups) with the set of links the user can\n * actually see with respect to their RBAC permissions.\n */\nexport const deriveVisibleTree = <TLink extends { uid: string }>(\n groups: ResolvedGroupNode[],\n links: TLink[],\n compareUngrouped?: (a: TLink, b: TLink) => number\n): VisibleTreeNode<TLink>[] => {\n const linkByUid = new Map(links.map((link) => [link.uid, link]));\n const grouped = new Set<string>();\n\n const resolveChildAsNode = (child: ResolvedStructureChild): VisibleTreeNode<TLink> | null => {\n if (child.type === 'contentType') {\n const link = linkByUid.get(child.uid);\n\n if (!link) {\n return null;\n }\n\n grouped.add(child.uid);\n\n return { type: 'link', link };\n }\n\n return resolveGroupAsNode(child);\n };\n\n const isTreeNode = (node: VisibleTreeNode<TLink> | null): node is VisibleTreeNode<TLink> => {\n return node !== null;\n };\n\n const resolveGroupAsNode = (group: ResolvedGroupNode): VisibleTreeNode<TLink> | null => {\n const children = group.children.map(resolveChildAsNode).filter(isTreeNode);\n\n if (children.length === 0) {\n return null;\n }\n\n return { type: 'folder', id: group.id, name: group.name, children };\n };\n\n const folders = groups.map(resolveGroupAsNode).filter(isTreeNode);\n\n const ungrouped = links.filter((link) => !grouped.has(link.uid));\n\n if (compareUngrouped) {\n ungrouped.sort(compareUngrouped);\n }\n\n return [...folders, ...ungrouped.map((link): VisibleTreeNode<TLink> => ({ type: 'link', link }))];\n};\n\nexport function flattenTreeLinks<TLink>(\n nodes: VisibleTreeNode<TLink>[],\n parentPath: string[] = []\n): Array<{ link: TLink; path: string[] }> {\n return nodes.flatMap((node) => {\n if (node.type === 'link') {\n return [{ link: node.link, path: parentPath }];\n }\n\n return flattenTreeLinks(node.children, [...parentPath, node.name]);\n });\n}\n\nexport function countTreeLinks<TLink>(nodes: VisibleTreeNode<TLink>[]): number {\n return flattenTreeLinks(nodes).length;\n}\n\ntype FilterTreeLinksParams<TLink> = {\n matchFolderName: (name: string) => boolean;\n matchLink: (link: TLink) => boolean;\n nodes: VisibleTreeNode<TLink>[];\n parentPath?: string[];\n};\n\n/**\n * Search the contentStructure tree, returning the matching links with their folder path.\n *\n * A **link** matches on whatever `matchLink` tests (display name and/or UID) and is returned with its ancestor folder path.\n *\n * A **folder** matches on its name and, when it does, surfaces *all* of its descendant content types (each with\n * its own path).\n */\nexport function filterTreeLinks<TLink>({\n matchFolderName,\n matchLink,\n nodes,\n parentPath = [],\n}: FilterTreeLinksParams<TLink>): Array<{ link: TLink; path: string[] }> {\n return nodes.flatMap((node) => {\n if (node.type === 'link') {\n return matchLink(node.link) ? [{ link: node.link, path: parentPath }] : [];\n }\n\n const path = [...parentPath, node.name];\n\n if (matchFolderName(node.name)) {\n return flattenTreeLinks(node.children, path);\n }\n\n return filterTreeLinks({\n nodes: node.children,\n matchFolderName,\n matchLink,\n parentPath: path,\n });\n });\n}\n\ntype BuildContentStructureSectionParams = {\n compareLinks: (a: ContentManagerLink, b: ContentManagerLink) => number;\n groups: Modules.ContentStructure.ResolvedGroupNode[];\n id: Modules.ContentStructure.ContentStructureSectionKey;\n links: ContentManagerLink[];\n title: string;\n};\n/**\n * Builds a content structure section for the left menu from the RBAC-provided links and the resolved content structure configuration.\n */\nexport function buildContentStructureSection({\n compareLinks,\n groups,\n links,\n title,\n id,\n}: BuildContentStructureSectionParams): {\n id: Modules.ContentStructure.ContentStructureSectionKey;\n title: string;\n tree: LinkTreeNode[];\n} {\n try {\n return { id, title, tree: deriveVisibleTree(groups, links, compareLinks) };\n } catch {\n const tree: LinkTreeNode[] = [...links].sort(compareLinks).map((link) => {\n return { type: 'link', link };\n });\n\n return { id, title, tree };\n }\n}\n"],"names":["deriveVisibleTree","groups","links","compareUngrouped","linkByUid","Map","map","link","uid","grouped","Set","resolveChildAsNode","child","type","get","add","resolveGroupAsNode","isTreeNode","node","group","children","filter","length","id","name","folders","ungrouped","has","sort","flattenTreeLinks","nodes","parentPath","flatMap","path","countTreeLinks","filterTreeLinks","matchFolderName","matchLink","buildContentStructureSection","compareLinks","title","tree"],"mappings":"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"}
|
|
@@ -3,16 +3,21 @@
|
|
|
3
3
|
var index = require('../utils/index.js');
|
|
4
4
|
|
|
5
5
|
var init = {
|
|
6
|
-
getInitData (ctx) {
|
|
6
|
+
async getInitData (ctx) {
|
|
7
7
|
const { toDto } = index.getService('data-mapper');
|
|
8
8
|
const { findAllComponents } = index.getService('components');
|
|
9
9
|
const { getAllFieldSizes } = index.getService('field-sizes');
|
|
10
10
|
const { findAllContentTypes } = index.getService('content-types');
|
|
11
|
+
const { getContentStructure } = index.getService('content-structure');
|
|
12
|
+
const contentStructure = await getContentStructure();
|
|
11
13
|
ctx.body = {
|
|
12
14
|
data: {
|
|
13
15
|
fieldSizes: getAllFieldSizes(),
|
|
14
16
|
components: findAllComponents().map(toDto),
|
|
15
|
-
contentTypes: findAllContentTypes().map(toDto)
|
|
17
|
+
contentTypes: findAllContentTypes().map(toDto),
|
|
18
|
+
...contentStructure ? {
|
|
19
|
+
contentStructure
|
|
20
|
+
} : {}
|
|
16
21
|
}
|
|
17
22
|
};
|
|
18
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sources":["../../../server/src/controllers/init.ts"],"sourcesContent":["import { getService } from '../utils';\n\nexport default {\n getInitData(ctx: any) {\n const { toDto } = getService('data-mapper');\n const { findAllComponents } = getService('components');\n const { getAllFieldSizes } = getService('field-sizes');\n const { findAllContentTypes } = getService('content-types');\n\n ctx.body = {\n data: {\n fieldSizes: getAllFieldSizes(),\n components: findAllComponents().map(toDto),\n contentTypes: findAllContentTypes().map(toDto),\n },\n };\n },\n};\n"],"names":["getInitData","ctx","toDto","getService","findAllComponents","getAllFieldSizes","findAllContentTypes","body","data","fieldSizes","components","map","contentTypes"],"mappings":";;;;AAEA,WAAe;
|
|
1
|
+
{"version":3,"file":"init.js","sources":["../../../server/src/controllers/init.ts"],"sourcesContent":["import { getService } from '../utils';\n\nexport default {\n async getInitData(ctx: any) {\n const { toDto } = getService('data-mapper');\n const { findAllComponents } = getService('components');\n const { getAllFieldSizes } = getService('field-sizes');\n const { findAllContentTypes } = getService('content-types');\n const { getContentStructure } = getService('content-structure');\n\n const contentStructure = await getContentStructure();\n\n ctx.body = {\n data: {\n fieldSizes: getAllFieldSizes(),\n components: findAllComponents().map(toDto),\n contentTypes: findAllContentTypes().map(toDto),\n ...(contentStructure ? { contentStructure } : {}),\n },\n };\n },\n};\n"],"names":["getInitData","ctx","toDto","getService","findAllComponents","getAllFieldSizes","findAllContentTypes","getContentStructure","contentStructure","body","data","fieldSizes","components","map","contentTypes"],"mappings":";;;;AAEA,WAAe;AACb,IAAA,MAAMA,aAAYC,GAAQ,EAAA;AACxB,QAAA,MAAM,EAAEC,KAAK,EAAE,GAAGC,gBAAAA,CAAW,aAAA,CAAA;AAC7B,QAAA,MAAM,EAAEC,iBAAiB,EAAE,GAAGD,gBAAAA,CAAW,YAAA,CAAA;AACzC,QAAA,MAAM,EAAEE,gBAAgB,EAAE,GAAGF,gBAAAA,CAAW,aAAA,CAAA;AACxC,QAAA,MAAM,EAAEG,mBAAmB,EAAE,GAAGH,gBAAAA,CAAW,eAAA,CAAA;AAC3C,QAAA,MAAM,EAAEI,mBAAmB,EAAE,GAAGJ,gBAAAA,CAAW,mBAAA,CAAA;AAE3C,QAAA,MAAMK,mBAAmB,MAAMD,mBAAAA,EAAAA;AAE/BN,QAAAA,GAAAA,CAAIQ,IAAI,GAAG;YACTC,IAAAA,EAAM;gBACJC,UAAAA,EAAYN,gBAAAA,EAAAA;gBACZO,UAAAA,EAAYR,iBAAAA,EAAAA,CAAoBS,GAAG,CAACX,KAAAA,CAAAA;gBACpCY,YAAAA,EAAcR,mBAAAA,EAAAA,CAAsBO,GAAG,CAACX,KAAAA,CAAAA;AACxC,gBAAA,GAAIM,gBAAAA,GAAmB;AAAEA,oBAAAA;AAAiB,iBAAA,GAAI;AAChD;AACF,SAAA;AACF,IAAA;AACF,CAAA;;;;"}
|
|
@@ -1,16 +1,21 @@
|
|
|
1
1
|
import { getService } from '../utils/index.mjs';
|
|
2
2
|
|
|
3
3
|
var init = {
|
|
4
|
-
getInitData (ctx) {
|
|
4
|
+
async getInitData (ctx) {
|
|
5
5
|
const { toDto } = getService('data-mapper');
|
|
6
6
|
const { findAllComponents } = getService('components');
|
|
7
7
|
const { getAllFieldSizes } = getService('field-sizes');
|
|
8
8
|
const { findAllContentTypes } = getService('content-types');
|
|
9
|
+
const { getContentStructure } = getService('content-structure');
|
|
10
|
+
const contentStructure = await getContentStructure();
|
|
9
11
|
ctx.body = {
|
|
10
12
|
data: {
|
|
11
13
|
fieldSizes: getAllFieldSizes(),
|
|
12
14
|
components: findAllComponents().map(toDto),
|
|
13
|
-
contentTypes: findAllContentTypes().map(toDto)
|
|
15
|
+
contentTypes: findAllContentTypes().map(toDto),
|
|
16
|
+
...contentStructure ? {
|
|
17
|
+
contentStructure
|
|
18
|
+
} : {}
|
|
14
19
|
}
|
|
15
20
|
};
|
|
16
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.mjs","sources":["../../../server/src/controllers/init.ts"],"sourcesContent":["import { getService } from '../utils';\n\nexport default {\n getInitData(ctx: any) {\n const { toDto } = getService('data-mapper');\n const { findAllComponents } = getService('components');\n const { getAllFieldSizes } = getService('field-sizes');\n const { findAllContentTypes } = getService('content-types');\n\n ctx.body = {\n data: {\n fieldSizes: getAllFieldSizes(),\n components: findAllComponents().map(toDto),\n contentTypes: findAllContentTypes().map(toDto),\n },\n };\n },\n};\n"],"names":["getInitData","ctx","toDto","getService","findAllComponents","getAllFieldSizes","findAllContentTypes","body","data","fieldSizes","components","map","contentTypes"],"mappings":";;AAEA,WAAe;
|
|
1
|
+
{"version":3,"file":"init.mjs","sources":["../../../server/src/controllers/init.ts"],"sourcesContent":["import { getService } from '../utils';\n\nexport default {\n async getInitData(ctx: any) {\n const { toDto } = getService('data-mapper');\n const { findAllComponents } = getService('components');\n const { getAllFieldSizes } = getService('field-sizes');\n const { findAllContentTypes } = getService('content-types');\n const { getContentStructure } = getService('content-structure');\n\n const contentStructure = await getContentStructure();\n\n ctx.body = {\n data: {\n fieldSizes: getAllFieldSizes(),\n components: findAllComponents().map(toDto),\n contentTypes: findAllContentTypes().map(toDto),\n ...(contentStructure ? { contentStructure } : {}),\n },\n };\n },\n};\n"],"names":["getInitData","ctx","toDto","getService","findAllComponents","getAllFieldSizes","findAllContentTypes","getContentStructure","contentStructure","body","data","fieldSizes","components","map","contentTypes"],"mappings":";;AAEA,WAAe;AACb,IAAA,MAAMA,aAAYC,GAAQ,EAAA;AACxB,QAAA,MAAM,EAAEC,KAAK,EAAE,GAAGC,UAAAA,CAAW,aAAA,CAAA;AAC7B,QAAA,MAAM,EAAEC,iBAAiB,EAAE,GAAGD,UAAAA,CAAW,YAAA,CAAA;AACzC,QAAA,MAAM,EAAEE,gBAAgB,EAAE,GAAGF,UAAAA,CAAW,aAAA,CAAA;AACxC,QAAA,MAAM,EAAEG,mBAAmB,EAAE,GAAGH,UAAAA,CAAW,eAAA,CAAA;AAC3C,QAAA,MAAM,EAAEI,mBAAmB,EAAE,GAAGJ,UAAAA,CAAW,mBAAA,CAAA;AAE3C,QAAA,MAAMK,mBAAmB,MAAMD,mBAAAA,EAAAA;AAE/BN,QAAAA,GAAAA,CAAIQ,IAAI,GAAG;YACTC,IAAAA,EAAM;gBACJC,UAAAA,EAAYN,gBAAAA,EAAAA;gBACZO,UAAAA,EAAYR,iBAAAA,EAAAA,CAAoBS,GAAG,CAACX,KAAAA,CAAAA;gBACpCY,YAAAA,EAAcR,mBAAAA,EAAAA,CAAsBO,GAAG,CAACX,KAAAA,CAAAA;AACxC,gBAAA,GAAIM,gBAAAA,GAAmB;AAAEA,oBAAAA;AAAiB,iBAAA,GAAI;AAChD;AACF,SAAA;AACF,IAAA;AACF,CAAA;;;;"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var fp = require('lodash/fp');
|
|
4
|
+
|
|
5
|
+
const isInternalUid = (uid)=>{
|
|
6
|
+
return uid.startsWith('admin::') || uid.startsWith('strapi::');
|
|
7
|
+
};
|
|
8
|
+
const createContentStructureService = ({ strapi })=>{
|
|
9
|
+
const coreContentStructure = strapi.get('content-structure');
|
|
10
|
+
const isContentTypeVisible = (model)=>{
|
|
11
|
+
return fp.getOr(true, 'pluginOptions.content-manager.visible', model) === true;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Whether a content type may appear in the folder nav: a known, user-facing type
|
|
15
|
+
* that is neither internal nor hidden via pluginOptions.
|
|
16
|
+
*/ const isFileableContentType = (uid)=>{
|
|
17
|
+
const schema = strapi.contentTypes[uid];
|
|
18
|
+
if (!schema) {
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
if (isInternalUid(uid)) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
return isContentTypeVisible(schema);
|
|
25
|
+
};
|
|
26
|
+
const pruneNode = (node)=>{
|
|
27
|
+
const children = node.children.filter((child)=>{
|
|
28
|
+
return child.type !== 'contentType' || isFileableContentType(child.uid);
|
|
29
|
+
}).map((child)=>{
|
|
30
|
+
return child.type === 'group' ? pruneNode(child) : child;
|
|
31
|
+
});
|
|
32
|
+
return {
|
|
33
|
+
...node,
|
|
34
|
+
children
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
return {
|
|
38
|
+
async getContentStructure () {
|
|
39
|
+
const cleaned = await coreContentStructure.getCleanedFile();
|
|
40
|
+
if (!cleaned) {
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
const resolved = await coreContentStructure.resolve();
|
|
44
|
+
return {
|
|
45
|
+
collectionTypes: resolved.collectionTypes.map(pruneNode),
|
|
46
|
+
singleTypes: resolved.singleTypes.map(pruneNode)
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
module.exports = createContentStructureService;
|
|
53
|
+
//# sourceMappingURL=content-structure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-structure.js","sources":["../../../server/src/services/content-structure.ts"],"sourcesContent":["import type { Core, Modules, UID, Struct } from '@strapi/types';\nimport { getOr } from 'lodash/fp';\n\ninterface CoreContentStructureService {\n getCleanedFile(): Promise<Modules.ContentStructure.ContentStructureFile | null>;\n resolve(): Promise<Modules.ContentStructure.ResolvedContentStructure>;\n}\n\ntype ResolvedGroupNode = Modules.ContentStructure.ResolvedGroupNode;\n\nconst isInternalUid = (uid: string): boolean => {\n return uid.startsWith('admin::') || uid.startsWith('strapi::');\n};\n\nconst createContentStructureService = ({ strapi }: { strapi: Core.Strapi }) => {\n const coreContentStructure: CoreContentStructureService = strapi.get('content-structure');\n\n const isContentTypeVisible = (model: Struct.ContentTypeSchema) => {\n return getOr(true, 'pluginOptions.content-manager.visible', model) === true;\n };\n\n /**\n * Whether a content type may appear in the folder nav: a known, user-facing type\n * that is neither internal nor hidden via pluginOptions.\n */\n const isFileableContentType = (uid: UID.ContentType): boolean => {\n const schema = strapi.contentTypes[uid];\n\n if (!schema) {\n return false;\n }\n\n if (isInternalUid(uid)) {\n return false;\n }\n\n return isContentTypeVisible(schema);\n };\n\n const pruneNode = (node: ResolvedGroupNode): ResolvedGroupNode => {\n const children = node.children\n .filter((child) => {\n return child.type !== 'contentType' || isFileableContentType(child.uid);\n })\n .map((child) => {\n return child.type === 'group' ? pruneNode(child) : child;\n });\n\n return { ...node, children };\n };\n\n return {\n async getContentStructure(): Promise<Modules.ContentStructure.ResolvedContentStructure | null> {\n const cleaned = await coreContentStructure.getCleanedFile();\n\n if (!cleaned) {\n return null;\n }\n\n const resolved = await coreContentStructure.resolve();\n\n return {\n collectionTypes: resolved.collectionTypes.map(pruneNode),\n singleTypes: resolved.singleTypes.map(pruneNode),\n };\n },\n };\n};\n\nexport default createContentStructureService;\n"],"names":["isInternalUid","uid","startsWith","createContentStructureService","strapi","coreContentStructure","get","isContentTypeVisible","model","getOr","isFileableContentType","schema","contentTypes","pruneNode","node","children","filter","child","type","map","getContentStructure","cleaned","getCleanedFile","resolved","resolve","collectionTypes","singleTypes"],"mappings":";;;;AAUA,MAAMA,gBAAgB,CAACC,GAAAA,GAAAA;AACrB,IAAA,OAAOA,IAAIC,UAAU,CAAC,SAAA,CAAA,IAAcD,GAAAA,CAAIC,UAAU,CAAC,UAAA,CAAA;AACrD,CAAA;AAEA,MAAMC,6BAAAA,GAAgC,CAAC,EAAEC,MAAM,EAA2B,GAAA;IACxE,MAAMC,oBAAAA,GAAoDD,MAAAA,CAAOE,GAAG,CAAC,mBAAA,CAAA;AAErE,IAAA,MAAMC,uBAAuB,CAACC,KAAAA,GAAAA;QAC5B,OAAOC,QAAAA,CAAM,IAAA,EAAM,uCAAA,EAAyCD,KAAAA,CAAAA,KAAW,IAAA;AACzE,IAAA,CAAA;AAEA;;;MAIA,MAAME,wBAAwB,CAACT,GAAAA,GAAAA;AAC7B,QAAA,MAAMU,MAAAA,GAASP,MAAAA,CAAOQ,YAAY,CAACX,GAAAA,CAAI;AAEvC,QAAA,IAAI,CAACU,MAAAA,EAAQ;YACX,OAAO,KAAA;AACT,QAAA;AAEA,QAAA,IAAIX,cAAcC,GAAAA,CAAAA,EAAM;YACtB,OAAO,KAAA;AACT,QAAA;AAEA,QAAA,OAAOM,oBAAAA,CAAqBI,MAAAA,CAAAA;AAC9B,IAAA,CAAA;AAEA,IAAA,MAAME,YAAY,CAACC,IAAAA,GAAAA;AACjB,QAAA,MAAMC,WAAWD,IAAAA,CAAKC,QAAQ,CAC3BC,MAAM,CAAC,CAACC,KAAAA,GAAAA;AACP,YAAA,OAAOA,MAAMC,IAAI,KAAK,aAAA,IAAiBR,qBAAAA,CAAsBO,MAAMhB,GAAG,CAAA;QACxE,CAAA,CAAA,CACCkB,GAAG,CAAC,CAACF,KAAAA,GAAAA;AACJ,YAAA,OAAOA,KAAAA,CAAMC,IAAI,KAAK,OAAA,GAAUL,UAAUI,KAAAA,CAAAA,GAASA,KAAAA;AACrD,QAAA,CAAA,CAAA;QAEF,OAAO;AAAE,YAAA,GAAGH,IAAI;AAAEC,YAAAA;AAAS,SAAA;AAC7B,IAAA,CAAA;IAEA,OAAO;QACL,MAAMK,mBAAAA,CAAAA,GAAAA;YACJ,MAAMC,OAAAA,GAAU,MAAMhB,oBAAAA,CAAqBiB,cAAc,EAAA;AAEzD,YAAA,IAAI,CAACD,OAAAA,EAAS;gBACZ,OAAO,IAAA;AACT,YAAA;YAEA,MAAME,QAAAA,GAAW,MAAMlB,oBAAAA,CAAqBmB,OAAO,EAAA;YAEnD,OAAO;AACLC,gBAAAA,eAAAA,EAAiBF,QAAAA,CAASE,eAAe,CAACN,GAAG,CAACN,SAAAA,CAAAA;AAC9Ca,gBAAAA,WAAAA,EAAaH,QAAAA,CAASG,WAAW,CAACP,GAAG,CAACN,SAAAA;AACxC,aAAA;AACF,QAAA;AACF,KAAA;AACF;;;;"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { getOr } from 'lodash/fp';
|
|
2
|
+
|
|
3
|
+
const isInternalUid = (uid)=>{
|
|
4
|
+
return uid.startsWith('admin::') || uid.startsWith('strapi::');
|
|
5
|
+
};
|
|
6
|
+
const createContentStructureService = ({ strapi })=>{
|
|
7
|
+
const coreContentStructure = strapi.get('content-structure');
|
|
8
|
+
const isContentTypeVisible = (model)=>{
|
|
9
|
+
return getOr(true, 'pluginOptions.content-manager.visible', model) === true;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Whether a content type may appear in the folder nav: a known, user-facing type
|
|
13
|
+
* that is neither internal nor hidden via pluginOptions.
|
|
14
|
+
*/ const isFileableContentType = (uid)=>{
|
|
15
|
+
const schema = strapi.contentTypes[uid];
|
|
16
|
+
if (!schema) {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
if (isInternalUid(uid)) {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
return isContentTypeVisible(schema);
|
|
23
|
+
};
|
|
24
|
+
const pruneNode = (node)=>{
|
|
25
|
+
const children = node.children.filter((child)=>{
|
|
26
|
+
return child.type !== 'contentType' || isFileableContentType(child.uid);
|
|
27
|
+
}).map((child)=>{
|
|
28
|
+
return child.type === 'group' ? pruneNode(child) : child;
|
|
29
|
+
});
|
|
30
|
+
return {
|
|
31
|
+
...node,
|
|
32
|
+
children
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
return {
|
|
36
|
+
async getContentStructure () {
|
|
37
|
+
const cleaned = await coreContentStructure.getCleanedFile();
|
|
38
|
+
if (!cleaned) {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
const resolved = await coreContentStructure.resolve();
|
|
42
|
+
return {
|
|
43
|
+
collectionTypes: resolved.collectionTypes.map(pruneNode),
|
|
44
|
+
singleTypes: resolved.singleTypes.map(pruneNode)
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
export { createContentStructureService as default };
|
|
51
|
+
//# sourceMappingURL=content-structure.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-structure.mjs","sources":["../../../server/src/services/content-structure.ts"],"sourcesContent":["import type { Core, Modules, UID, Struct } from '@strapi/types';\nimport { getOr } from 'lodash/fp';\n\ninterface CoreContentStructureService {\n getCleanedFile(): Promise<Modules.ContentStructure.ContentStructureFile | null>;\n resolve(): Promise<Modules.ContentStructure.ResolvedContentStructure>;\n}\n\ntype ResolvedGroupNode = Modules.ContentStructure.ResolvedGroupNode;\n\nconst isInternalUid = (uid: string): boolean => {\n return uid.startsWith('admin::') || uid.startsWith('strapi::');\n};\n\nconst createContentStructureService = ({ strapi }: { strapi: Core.Strapi }) => {\n const coreContentStructure: CoreContentStructureService = strapi.get('content-structure');\n\n const isContentTypeVisible = (model: Struct.ContentTypeSchema) => {\n return getOr(true, 'pluginOptions.content-manager.visible', model) === true;\n };\n\n /**\n * Whether a content type may appear in the folder nav: a known, user-facing type\n * that is neither internal nor hidden via pluginOptions.\n */\n const isFileableContentType = (uid: UID.ContentType): boolean => {\n const schema = strapi.contentTypes[uid];\n\n if (!schema) {\n return false;\n }\n\n if (isInternalUid(uid)) {\n return false;\n }\n\n return isContentTypeVisible(schema);\n };\n\n const pruneNode = (node: ResolvedGroupNode): ResolvedGroupNode => {\n const children = node.children\n .filter((child) => {\n return child.type !== 'contentType' || isFileableContentType(child.uid);\n })\n .map((child) => {\n return child.type === 'group' ? pruneNode(child) : child;\n });\n\n return { ...node, children };\n };\n\n return {\n async getContentStructure(): Promise<Modules.ContentStructure.ResolvedContentStructure | null> {\n const cleaned = await coreContentStructure.getCleanedFile();\n\n if (!cleaned) {\n return null;\n }\n\n const resolved = await coreContentStructure.resolve();\n\n return {\n collectionTypes: resolved.collectionTypes.map(pruneNode),\n singleTypes: resolved.singleTypes.map(pruneNode),\n };\n },\n };\n};\n\nexport default createContentStructureService;\n"],"names":["isInternalUid","uid","startsWith","createContentStructureService","strapi","coreContentStructure","get","isContentTypeVisible","model","getOr","isFileableContentType","schema","contentTypes","pruneNode","node","children","filter","child","type","map","getContentStructure","cleaned","getCleanedFile","resolved","resolve","collectionTypes","singleTypes"],"mappings":";;AAUA,MAAMA,gBAAgB,CAACC,GAAAA,GAAAA;AACrB,IAAA,OAAOA,IAAIC,UAAU,CAAC,SAAA,CAAA,IAAcD,GAAAA,CAAIC,UAAU,CAAC,UAAA,CAAA;AACrD,CAAA;AAEA,MAAMC,6BAAAA,GAAgC,CAAC,EAAEC,MAAM,EAA2B,GAAA;IACxE,MAAMC,oBAAAA,GAAoDD,MAAAA,CAAOE,GAAG,CAAC,mBAAA,CAAA;AAErE,IAAA,MAAMC,uBAAuB,CAACC,KAAAA,GAAAA;QAC5B,OAAOC,KAAAA,CAAM,IAAA,EAAM,uCAAA,EAAyCD,KAAAA,CAAAA,KAAW,IAAA;AACzE,IAAA,CAAA;AAEA;;;MAIA,MAAME,wBAAwB,CAACT,GAAAA,GAAAA;AAC7B,QAAA,MAAMU,MAAAA,GAASP,MAAAA,CAAOQ,YAAY,CAACX,GAAAA,CAAI;AAEvC,QAAA,IAAI,CAACU,MAAAA,EAAQ;YACX,OAAO,KAAA;AACT,QAAA;AAEA,QAAA,IAAIX,cAAcC,GAAAA,CAAAA,EAAM;YACtB,OAAO,KAAA;AACT,QAAA;AAEA,QAAA,OAAOM,oBAAAA,CAAqBI,MAAAA,CAAAA;AAC9B,IAAA,CAAA;AAEA,IAAA,MAAME,YAAY,CAACC,IAAAA,GAAAA;AACjB,QAAA,MAAMC,WAAWD,IAAAA,CAAKC,QAAQ,CAC3BC,MAAM,CAAC,CAACC,KAAAA,GAAAA;AACP,YAAA,OAAOA,MAAMC,IAAI,KAAK,aAAA,IAAiBR,qBAAAA,CAAsBO,MAAMhB,GAAG,CAAA;QACxE,CAAA,CAAA,CACCkB,GAAG,CAAC,CAACF,KAAAA,GAAAA;AACJ,YAAA,OAAOA,KAAAA,CAAMC,IAAI,KAAK,OAAA,GAAUL,UAAUI,KAAAA,CAAAA,GAASA,KAAAA;AACrD,QAAA,CAAA,CAAA;QAEF,OAAO;AAAE,YAAA,GAAGH,IAAI;AAAEC,YAAAA;AAAS,SAAA;AAC7B,IAAA,CAAA;IAEA,OAAO;QACL,MAAMK,mBAAAA,CAAAA,GAAAA;YACJ,MAAMC,OAAAA,GAAU,MAAMhB,oBAAAA,CAAqBiB,cAAc,EAAA;AAEzD,YAAA,IAAI,CAACD,OAAAA,EAAS;gBACZ,OAAO,IAAA;AACT,YAAA;YAEA,MAAME,QAAAA,GAAW,MAAMlB,oBAAAA,CAAqBmB,OAAO,EAAA;YAEnD,OAAO;AACLC,gBAAAA,eAAAA,EAAiBF,QAAAA,CAASE,eAAe,CAACN,GAAG,CAACN,SAAAA,CAAAA;AAC9Ca,gBAAAA,WAAAA,EAAaH,QAAAA,CAASG,WAAW,CAACP,GAAG,CAACN,SAAAA;AACxC,aAAA;AACF,QAAA;AACF,KAAA;AACF;;;;"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var components = require('./components.js');
|
|
4
|
+
var contentStructure = require('./content-structure.js');
|
|
4
5
|
var contentTypes = require('./content-types.js');
|
|
5
6
|
var dataMapper = require('./data-mapper.js');
|
|
6
7
|
var fieldSizes = require('./field-sizes.js');
|
|
@@ -17,6 +18,7 @@ var documentManager = require('./document-manager.js');
|
|
|
17
18
|
|
|
18
19
|
var services = {
|
|
19
20
|
components,
|
|
21
|
+
'content-structure': contentStructure,
|
|
20
22
|
'content-types': contentTypes,
|
|
21
23
|
'data-mapper': dataMapper,
|
|
22
24
|
'document-metadata': documentMetadata,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import components from './components';\nimport contentTypes from './content-types';\nimport dataMapper from './data-mapper';\nimport fieldSizes from './field-sizes';\nimport metrics from './metrics';\nimport permissionChecker from './permission-checker';\nimport permission from './permission';\nimport populateBuilder from './populate-builder';\nimport uid from './uid';\nimport history from '../history';\nimport preview from '../preview';\nimport homepage from '../homepage';\nimport documentMetadata from './document-metadata';\nimport documentManager from './document-manager';\n\nexport default {\n components,\n 'content-types': contentTypes,\n 'data-mapper': dataMapper,\n 'document-metadata': documentMetadata,\n 'document-manager': documentManager,\n 'field-sizes': fieldSizes,\n metrics,\n 'permission-checker': permissionChecker,\n permission,\n 'populate-builder': populateBuilder,\n uid,\n ...(history.services ? history.services : {}),\n ...(preview.services ? preview.services : {}),\n ...homepage.services,\n};\n"],"names":["components","contentTypes","dataMapper","documentMetadata","documentManager","fieldSizes","metrics","permissionChecker","permission","populateBuilder","uid","history","services","preview","homepage"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import components from './components';\nimport contentStructure from './content-structure';\nimport contentTypes from './content-types';\nimport dataMapper from './data-mapper';\nimport fieldSizes from './field-sizes';\nimport metrics from './metrics';\nimport permissionChecker from './permission-checker';\nimport permission from './permission';\nimport populateBuilder from './populate-builder';\nimport uid from './uid';\nimport history from '../history';\nimport preview from '../preview';\nimport homepage from '../homepage';\nimport documentMetadata from './document-metadata';\nimport documentManager from './document-manager';\n\nexport default {\n components,\n 'content-structure': contentStructure,\n 'content-types': contentTypes,\n 'data-mapper': dataMapper,\n 'document-metadata': documentMetadata,\n 'document-manager': documentManager,\n 'field-sizes': fieldSizes,\n metrics,\n 'permission-checker': permissionChecker,\n permission,\n 'populate-builder': populateBuilder,\n uid,\n ...(history.services ? history.services : {}),\n ...(preview.services ? preview.services : {}),\n ...homepage.services,\n};\n"],"names":["components","contentStructure","contentTypes","dataMapper","documentMetadata","documentManager","fieldSizes","metrics","permissionChecker","permission","populateBuilder","uid","history","services","preview","homepage"],"mappings":";;;;;;;;;;;;;;;;;;AAgBA,eAAe;AACbA,IAAAA,UAAAA;IACA,mBAAA,EAAqBC,gBAAAA;IACrB,eAAA,EAAiBC,YAAAA;IACjB,aAAA,EAAeC,UAAAA;IACf,mBAAA,EAAqBC,gBAAAA;IACrB,kBAAA,EAAoBC,eAAAA;IACpB,aAAA,EAAeC,UAAAA;AACfC,IAAAA,OAAAA;IACA,oBAAA,EAAsBC,yBAAAA;AACtBC,IAAAA,UAAAA;IACA,kBAAA,EAAoBC,eAAAA;AACpBC,IAAAA,GAAAA;AACA,IAAA,GAAIC,MAAQC,QAAQ,GAAGD,MAAQC,QAAQ,GAAG,EAAE;AAC5C,IAAA,GAAIC,QAAQD,QAAQ,GAAGC,QAAQD,QAAQ,GAAG,EAAE;AAC5C,IAAA,GAAGE,QAASF;AACd,CAAA;;;;"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import components from './components.mjs';
|
|
2
|
+
import createContentStructureService from './content-structure.mjs';
|
|
2
3
|
import service from './content-types.mjs';
|
|
3
4
|
import dataMapper from './data-mapper.mjs';
|
|
4
5
|
import createFieldSizesService from './field-sizes.mjs';
|
|
@@ -15,6 +16,7 @@ import documentManager from './document-manager.mjs';
|
|
|
15
16
|
|
|
16
17
|
var services = {
|
|
17
18
|
components,
|
|
19
|
+
'content-structure': createContentStructureService,
|
|
18
20
|
'content-types': service,
|
|
19
21
|
'data-mapper': dataMapper,
|
|
20
22
|
'document-metadata': documentMetadata,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import components from './components';\nimport contentTypes from './content-types';\nimport dataMapper from './data-mapper';\nimport fieldSizes from './field-sizes';\nimport metrics from './metrics';\nimport permissionChecker from './permission-checker';\nimport permission from './permission';\nimport populateBuilder from './populate-builder';\nimport uid from './uid';\nimport history from '../history';\nimport preview from '../preview';\nimport homepage from '../homepage';\nimport documentMetadata from './document-metadata';\nimport documentManager from './document-manager';\n\nexport default {\n components,\n 'content-types': contentTypes,\n 'data-mapper': dataMapper,\n 'document-metadata': documentMetadata,\n 'document-manager': documentManager,\n 'field-sizes': fieldSizes,\n metrics,\n 'permission-checker': permissionChecker,\n permission,\n 'populate-builder': populateBuilder,\n uid,\n ...(history.services ? history.services : {}),\n ...(preview.services ? preview.services : {}),\n ...homepage.services,\n};\n"],"names":["components","contentTypes","dataMapper","documentMetadata","documentManager","fieldSizes","metrics","permissionChecker","permission","populateBuilder","uid","history","services","preview","homepage"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import components from './components';\nimport contentStructure from './content-structure';\nimport contentTypes from './content-types';\nimport dataMapper from './data-mapper';\nimport fieldSizes from './field-sizes';\nimport metrics from './metrics';\nimport permissionChecker from './permission-checker';\nimport permission from './permission';\nimport populateBuilder from './populate-builder';\nimport uid from './uid';\nimport history from '../history';\nimport preview from '../preview';\nimport homepage from '../homepage';\nimport documentMetadata from './document-metadata';\nimport documentManager from './document-manager';\n\nexport default {\n components,\n 'content-structure': contentStructure,\n 'content-types': contentTypes,\n 'data-mapper': dataMapper,\n 'document-metadata': documentMetadata,\n 'document-manager': documentManager,\n 'field-sizes': fieldSizes,\n metrics,\n 'permission-checker': permissionChecker,\n permission,\n 'populate-builder': populateBuilder,\n uid,\n ...(history.services ? history.services : {}),\n ...(preview.services ? preview.services : {}),\n ...homepage.services,\n};\n"],"names":["components","contentStructure","contentTypes","dataMapper","documentMetadata","documentManager","fieldSizes","metrics","permissionChecker","permission","populateBuilder","uid","history","services","preview","homepage"],"mappings":";;;;;;;;;;;;;;;;AAgBA,eAAe;AACbA,IAAAA,UAAAA;IACA,mBAAA,EAAqBC,6BAAAA;IACrB,eAAA,EAAiBC,OAAAA;IACjB,aAAA,EAAeC,UAAAA;IACf,mBAAA,EAAqBC,gBAAAA;IACrB,kBAAA,EAAoBC,eAAAA;IACpB,aAAA,EAAeC,uBAAAA;AACfC,IAAAA,OAAAA;IACA,oBAAA,EAAsBC,iBAAAA;AACtBC,IAAAA,UAAAA;IACA,kBAAA,EAAoBC,eAAAA;AACpBC,IAAAA,GAAAA;AACA,IAAA,GAAIC,QAAQC,QAAQ,GAAGD,QAAQC,QAAQ,GAAG,EAAE;AAC5C,IAAA,GAAIC,QAAQD,QAAQ,GAAGC,QAAQD,QAAQ,GAAG,EAAE;AAC5C,IAAA,GAAGE,SAASF;AACd,CAAA;;;;"}
|
|
@@ -29,7 +29,7 @@ declare const _default: {
|
|
|
29
29
|
updateContentTypeConfiguration(ctx: any): Promise<any>;
|
|
30
30
|
};
|
|
31
31
|
init: {
|
|
32
|
-
getInitData(ctx: any): void
|
|
32
|
+
getInitData(ctx: any): Promise<void>;
|
|
33
33
|
};
|
|
34
34
|
relations: {
|
|
35
35
|
extractAndValidateRequestInfo(ctx: any, id?: import("@strapi/types/dist/data/constants.js").ID): Promise<any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/init.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/init.ts"],"names":[],"mappings":";qBAGyB,GAAG;;AAD5B,wBAmBE"}
|
|
@@ -37,7 +37,7 @@ declare const _default: () => {
|
|
|
37
37
|
updateContentTypeConfiguration(ctx: any): Promise<any>;
|
|
38
38
|
};
|
|
39
39
|
init: {
|
|
40
|
-
getInitData(ctx: any): void
|
|
40
|
+
getInitData(ctx: any): Promise<void>;
|
|
41
41
|
};
|
|
42
42
|
relations: {
|
|
43
43
|
extractAndValidateRequestInfo(ctx: any, id?: import("@strapi/types/dist/data/constants.js").ID): Promise<any>;
|
|
@@ -146,6 +146,11 @@ declare const _default: () => {
|
|
|
146
146
|
}>>;
|
|
147
147
|
syncConfigurations(): Promise<void>;
|
|
148
148
|
};
|
|
149
|
+
'content-structure': ({ strapi }: {
|
|
150
|
+
strapi: import("@strapi/types/dist/core/strapi.js").Strapi;
|
|
151
|
+
}) => {
|
|
152
|
+
getContentStructure(): Promise<import("@strapi/types/dist/modules/content-structure.js").ResolvedContentStructure | null>;
|
|
153
|
+
};
|
|
149
154
|
'content-types': ({ strapi }: {
|
|
150
155
|
strapi: import("@strapi/types/dist/core/strapi.js").Strapi;
|
|
151
156
|
}) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../server/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAM2B,GAAG
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../server/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAM2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAagzB,CAAC;sBAAgE,CAAC;2BAA8C,CAAC;;;;;;;;;;;;;sBAAsvH,CAAC;;;;;wBAAkZ,CAAC;;;;;;;wBAAkkD,CAAC;;;wBAAgd,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAAlvK,CAAC;;;;;;;0BAAg4B,CAAC;;;;;;;uBAAw2B,SAAS;;;;;;0BAA5d,CAAC;;;;;;;;;;;;0BAAmvB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHn3H,CAAA;;;;;;sBAGw5B,CAAC;;;;;;sBAAy7C,CAAC;;;;;AAXv1E,wBAUE"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Core, Modules } from '@strapi/types';
|
|
2
|
+
declare const createContentStructureService: ({ strapi }: {
|
|
3
|
+
strapi: Core.Strapi;
|
|
4
|
+
}) => {
|
|
5
|
+
getContentStructure(): Promise<Modules.ContentStructure.ResolvedContentStructure | null>;
|
|
6
|
+
};
|
|
7
|
+
export default createContentStructureService;
|
|
8
|
+
//# sourceMappingURL=content-structure.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-structure.d.ts","sourceRoot":"","sources":["../../../../server/src/services/content-structure.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAe,MAAM,eAAe,CAAC;AAchE,QAAA,MAAM,6BAA6B,GAAI,YAAY;IAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAA;CAAE;2BAsCzC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,wBAAwB,GAAG,IAAI,CAAC;CAejG,CAAC;AAEF,eAAe,6BAA6B,CAAC"}
|
|
@@ -35,6 +35,11 @@ declare const _default: {
|
|
|
35
35
|
}>>;
|
|
36
36
|
syncConfigurations(): Promise<void>;
|
|
37
37
|
};
|
|
38
|
+
'content-structure': ({ strapi }: {
|
|
39
|
+
strapi: import("@strapi/types/dist/core/strapi.js").Strapi;
|
|
40
|
+
}) => {
|
|
41
|
+
getContentStructure(): Promise<import("@strapi/types/dist/modules/content-structure.js").ResolvedContentStructure | null>;
|
|
42
|
+
};
|
|
38
43
|
'content-types': ({ strapi }: {
|
|
39
44
|
strapi: import("@strapi/types/dist/core/strapi.js").Strapi;
|
|
40
45
|
}) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/services/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAiCkI,CAAC;kBAAgE,CAAC;uBAA8C,CAAC;;;;;;;;;;;;;kBAAsvH,CAAC;;;;;oBAAkZ,CAAC;;;;;;;oBAAkkD,CAAC;;;oBAAgd,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAAlvK,CAAC;;;;;;;sBAAg4B,CAAC;;;;;;;mBAAw2B,SAAS;;;;;;sBAA5d,CAAC;;;;;;;;;;;;sBAAmvB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAzB9oG,CAAC;;;;;;kBAyBkL,CAAC;;;;;;kBAAy7C,CAAC;;;;AAjB3oD,wBAgBE"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import '@strapi/types';
|
|
2
2
|
import type { DocumentManagerService } from '../services/document-manager';
|
|
3
3
|
import type DocumentMetadata from '../services/document-metadata';
|
|
4
|
+
import type contentStructure from '../services/content-structure';
|
|
4
5
|
type Services = {
|
|
6
|
+
'content-structure': typeof contentStructure;
|
|
5
7
|
'document-manager': DocumentManagerService;
|
|
6
8
|
'document-metadata': typeof DocumentMetadata;
|
|
7
9
|
[key: string]: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,KAAK,gBAAgB,MAAM,+BAA+B,CAAC;AAElE,KAAK,QAAQ,GAAG;IACd,kBAAkB,EAAE,sBAAsB,CAAC;IAC3C,mBAAmB,EAAE,OAAO,gBAAgB,CAAC;IAC7C,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AAEF,QAAA,MAAM,UAAU,GAAI,KAAK,SAAS,MAAM,QAAQ,EAAE,MAAM,KAAK,KAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAEzF,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,KAAK,gBAAgB,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,gBAAgB,MAAM,+BAA+B,CAAC;AAElE,KAAK,QAAQ,GAAG;IACd,mBAAmB,EAAE,OAAO,gBAAgB,CAAC;IAC7C,kBAAkB,EAAE,sBAAsB,CAAC;IAC3C,mBAAmB,EAAE,OAAO,gBAAgB,CAAC;IAC7C,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AAEF,QAAA,MAAM,UAAU,GAAI,KAAK,SAAS,MAAM,QAAQ,EAAE,MAAM,KAAK,KAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAEzF,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../server/src/utils/index.ts"],"sourcesContent":["import '@strapi/types';\n\nimport type { DocumentManagerService } from '../services/document-manager';\nimport type DocumentMetadata from '../services/document-metadata';\n\ntype Services = {\n 'document-manager': DocumentManagerService;\n 'document-metadata': typeof DocumentMetadata;\n [key: string]: any;\n};\n\nconst getService = <TName extends keyof Services>(name: TName): ReturnType<Services[TName]> => {\n return strapi.plugin('content-manager').service(name as string);\n};\n\nexport { getService };\n"],"names":["getService","name","strapi","plugin","service"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../server/src/utils/index.ts"],"sourcesContent":["import '@strapi/types';\n\nimport type { DocumentManagerService } from '../services/document-manager';\nimport type DocumentMetadata from '../services/document-metadata';\nimport type contentStructure from '../services/content-structure';\n\ntype Services = {\n 'content-structure': typeof contentStructure;\n 'document-manager': DocumentManagerService;\n 'document-metadata': typeof DocumentMetadata;\n [key: string]: any;\n};\n\nconst getService = <TName extends keyof Services>(name: TName): ReturnType<Services[TName]> => {\n return strapi.plugin('content-manager').service(name as string);\n};\n\nexport { getService };\n"],"names":["getService","name","strapi","plugin","service"],"mappings":";;;;AAaA,MAAMA,aAAa,CAA+BC,IAAAA,GAAAA;AAChD,IAAA,OAAOC,MAAAA,CAAOC,MAAM,CAAC,iBAAA,CAAA,CAAmBC,OAAO,CAACH,IAAAA,CAAAA;AAClD;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../server/src/utils/index.ts"],"sourcesContent":["import '@strapi/types';\n\nimport type { DocumentManagerService } from '../services/document-manager';\nimport type DocumentMetadata from '../services/document-metadata';\n\ntype Services = {\n 'document-manager': DocumentManagerService;\n 'document-metadata': typeof DocumentMetadata;\n [key: string]: any;\n};\n\nconst getService = <TName extends keyof Services>(name: TName): ReturnType<Services[TName]> => {\n return strapi.plugin('content-manager').service(name as string);\n};\n\nexport { getService };\n"],"names":["getService","name","strapi","plugin","service"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../server/src/utils/index.ts"],"sourcesContent":["import '@strapi/types';\n\nimport type { DocumentManagerService } from '../services/document-manager';\nimport type DocumentMetadata from '../services/document-metadata';\nimport type contentStructure from '../services/content-structure';\n\ntype Services = {\n 'content-structure': typeof contentStructure;\n 'document-manager': DocumentManagerService;\n 'document-metadata': typeof DocumentMetadata;\n [key: string]: any;\n};\n\nconst getService = <TName extends keyof Services>(name: TName): ReturnType<Services[TName]> => {\n return strapi.plugin('content-manager').service(name as string);\n};\n\nexport { getService };\n"],"names":["getService","name","strapi","plugin","service"],"mappings":";;AAaA,MAAMA,aAAa,CAA+BC,IAAAA,GAAAA;AAChD,IAAA,OAAOC,MAAAA,CAAOC,MAAM,CAAC,iBAAA,CAAA,CAAmBC,OAAO,CAACH,IAAAA,CAAAA;AAClD;;;;"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { errors } from '@strapi/utils';
|
|
2
|
+
import type { Modules } from '@strapi/types';
|
|
2
3
|
import { Component } from './components';
|
|
3
4
|
import { ContentType } from './content-types';
|
|
4
5
|
/**
|
|
@@ -17,6 +18,7 @@ export declare namespace GetInitData {
|
|
|
17
18
|
}>;
|
|
18
19
|
components: Component[];
|
|
19
20
|
contentTypes: ContentType[];
|
|
21
|
+
contentStructure?: Modules.ContentStructure.ResolvedContentStructure;
|
|
20
22
|
};
|
|
21
23
|
error?: errors.ApplicationError;
|
|
22
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../shared/contracts/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IACnC,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;QACT,KAAK,EAAE,EAAE,CAAC;KACX;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE;YACJ,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;gBAAE,OAAO,EAAE,MAAM,CAAC;gBAAC,WAAW,EAAE,OAAO,CAAA;aAAE,CAAC,CAAC;YACtE,UAAU,EAAE,SAAS,EAAE,CAAC;YACxB,YAAY,EAAE,WAAW,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../shared/contracts/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IACnC,UAAiB,OAAO;QACtB,IAAI,EAAE,EAAE,CAAC;QACT,KAAK,EAAE,EAAE,CAAC;KACX;IAED,UAAiB,QAAQ;QACvB,IAAI,EAAE;YACJ,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;gBAAE,OAAO,EAAE,MAAM,CAAC;gBAAC,WAAW,EAAE,OAAO,CAAA;aAAE,CAAC,CAAC;YACtE,UAAU,EAAE,SAAS,EAAE,CAAC;YACxB,YAAY,EAAE,WAAW,EAAE,CAAC;YAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,wBAAwB,CAAC;SACtE,CAAC;QACF,KAAK,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC;KACjC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@strapi/content-manager",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.55.0",
|
|
4
4
|
"description": "A powerful UI to easily manage your data.",
|
|
5
5
|
"homepage": "https://strapi.io",
|
|
6
6
|
"bugs": {
|
|
@@ -75,8 +75,8 @@
|
|
|
75
75
|
"@sindresorhus/slugify": "1.1.0",
|
|
76
76
|
"@strapi/design-system": "2.2.4",
|
|
77
77
|
"@strapi/icons": "2.2.4",
|
|
78
|
-
"@strapi/types": "5.
|
|
79
|
-
"@strapi/utils": "5.
|
|
78
|
+
"@strapi/types": "5.55.0",
|
|
79
|
+
"@strapi/utils": "5.55.0",
|
|
80
80
|
"codemirror5": "npm:codemirror@^5.65.11",
|
|
81
81
|
"date-fns": "2.30.0",
|
|
82
82
|
"dompurify": "3.4.13",
|
|
@@ -111,8 +111,8 @@
|
|
|
111
111
|
"zod": "4.4.3"
|
|
112
112
|
},
|
|
113
113
|
"devDependencies": {
|
|
114
|
-
"@strapi/admin": "5.
|
|
115
|
-
"@strapi/database": "5.
|
|
114
|
+
"@strapi/admin": "5.55.0",
|
|
115
|
+
"@strapi/database": "5.55.0",
|
|
116
116
|
"@testing-library/dom": "10.4.1",
|
|
117
117
|
"@testing-library/jest-dom": "6.9.1",
|
|
118
118
|
"@testing-library/react": "16.3.2",
|