payload-nested-docs-page-tree 1.1.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/LICENSE +21 -0
- package/README.md +132 -0
- package/dist/components/PageTreeContext.d.ts +15 -0
- package/dist/components/PageTreeContext.js +26 -0
- package/dist/components/PageTreeContext.js.map +1 -0
- package/dist/components/PageTreeListView.client.d.ts +17 -0
- package/dist/components/PageTreeListView.client.js +960 -0
- package/dist/components/PageTreeListView.client.js.map +1 -0
- package/dist/components/PageTreeListView.module.css +358 -0
- package/dist/components/PageTreeListView.server.d.ts +3 -0
- package/dist/components/PageTreeListView.server.js +390 -0
- package/dist/components/PageTreeListView.server.js.map +1 -0
- package/dist/components/PageTreeTitleCell.d.ts +6 -0
- package/dist/components/PageTreeTitleCell.js +80 -0
- package/dist/components/PageTreeTitleCell.js.map +1 -0
- package/dist/endpoints/createMovePageEndpoint.d.ts +5 -0
- package/dist/endpoints/createMovePageEndpoint.js +265 -0
- package/dist/endpoints/createMovePageEndpoint.js.map +1 -0
- package/dist/exports/client.d.ts +1 -0
- package/dist/exports/client.js +3 -0
- package/dist/exports/client.js.map +1 -0
- package/dist/exports/rsc.d.ts +1 -0
- package/dist/exports/rsc.js +3 -0
- package/dist/exports/rsc.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +142 -0
- package/dist/index.js.map +1 -0
- package/dist/types.d.ts +35 -0
- package/dist/types.js +8 -0
- package/dist/types.js.map +1 -0
- package/dist/utilities/badgeConfig.d.ts +2 -0
- package/dist/utilities/badgeConfig.js +30 -0
- package/dist/utilities/badgeConfig.js.map +1 -0
- package/dist/utilities/dropTargets.d.ts +31 -0
- package/dist/utilities/dropTargets.js +73 -0
- package/dist/utilities/dropTargets.js.map +1 -0
- package/dist/utilities/moveValidation.d.ts +11 -0
- package/dist/utilities/moveValidation.js +44 -0
- package/dist/utilities/moveValidation.js.map +1 -0
- package/dist/utilities/pageTree.d.ts +37 -0
- package/dist/utilities/pageTree.js +300 -0
- package/dist/utilities/pageTree.js.map +1 -0
- package/dist/utilities/pageTreeCollision.d.ts +16 -0
- package/dist/utilities/pageTreeCollision.js +70 -0
- package/dist/utilities/pageTreeCollision.js.map +1 -0
- package/dist/utilities/pageTreeConfig.d.ts +3 -0
- package/dist/utilities/pageTreeConfig.js +21 -0
- package/dist/utilities/pageTreeConfig.js.map +1 -0
- package/dist/utilities/status.d.ts +17 -0
- package/dist/utilities/status.js +72 -0
- package/dist/utilities/status.js.map +1 -0
- package/package.json +115 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { nestedDocsPageTreePluginCustomKey } from '../types.js';
|
|
2
|
+
import { normalizeNestedDocsPageTreePluginBadgeConfig } from './badgeConfig.js';
|
|
3
|
+
export function getCollectionPageTreeConfig(collection) {
|
|
4
|
+
const value = collection.custom?.[nestedDocsPageTreePluginCustomKey];
|
|
5
|
+
if (!value || typeof value !== 'object' || Array.isArray(value)) {
|
|
6
|
+
return null;
|
|
7
|
+
}
|
|
8
|
+
const config = value;
|
|
9
|
+
if (typeof config.breadcrumbsFieldSlug !== 'string' || typeof config.defaultLimit !== 'number' || typeof config.hideBreadcrumbs !== 'boolean' || typeof config.parentFieldSlug !== 'string') {
|
|
10
|
+
return null;
|
|
11
|
+
}
|
|
12
|
+
return {
|
|
13
|
+
badges: normalizeNestedDocsPageTreePluginBadgeConfig(config.badges),
|
|
14
|
+
breadcrumbsFieldSlug: config.breadcrumbsFieldSlug,
|
|
15
|
+
defaultLimit: config.defaultLimit,
|
|
16
|
+
hideBreadcrumbs: config.hideBreadcrumbs,
|
|
17
|
+
parentFieldSlug: config.parentFieldSlug
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=pageTreeConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/pageTreeConfig.ts"],"sourcesContent":["import type { CollectionConfig } from 'payload'\n\nimport type { NestedDocsPageTreePluginCollectionCustom } from '../types.js'\nimport { nestedDocsPageTreePluginCustomKey } from '../types.js'\nimport { normalizeNestedDocsPageTreePluginBadgeConfig } from './badgeConfig.js'\n\nexport function getCollectionPageTreeConfig(\n collection: Pick<CollectionConfig, 'custom'>,\n): null | NestedDocsPageTreePluginCollectionCustom {\n const value = collection.custom?.[nestedDocsPageTreePluginCustomKey]\n\n if (!value || typeof value !== 'object' || Array.isArray(value)) {\n return null\n }\n\n const config = value as Partial<NestedDocsPageTreePluginCollectionCustom>\n\n if (\n typeof config.breadcrumbsFieldSlug !== 'string' ||\n typeof config.defaultLimit !== 'number' ||\n typeof config.hideBreadcrumbs !== 'boolean' ||\n typeof config.parentFieldSlug !== 'string'\n ) {\n return null\n }\n\n return {\n badges: normalizeNestedDocsPageTreePluginBadgeConfig(config.badges),\n breadcrumbsFieldSlug: config.breadcrumbsFieldSlug,\n defaultLimit: config.defaultLimit,\n hideBreadcrumbs: config.hideBreadcrumbs,\n parentFieldSlug: config.parentFieldSlug,\n }\n}\n"],"names":["nestedDocsPageTreePluginCustomKey","normalizeNestedDocsPageTreePluginBadgeConfig","getCollectionPageTreeConfig","collection","value","custom","Array","isArray","config","breadcrumbsFieldSlug","defaultLimit","hideBreadcrumbs","parentFieldSlug","badges"],"mappings":"AAGA,SAASA,iCAAiC,QAAQ,cAAa;AAC/D,SAASC,4CAA4C,QAAQ,mBAAkB;AAE/E,OAAO,SAASC,4BACdC,UAA4C;IAE5C,MAAMC,QAAQD,WAAWE,MAAM,EAAE,CAACL,kCAAkC;IAEpE,IAAI,CAACI,SAAS,OAAOA,UAAU,YAAYE,MAAMC,OAAO,CAACH,QAAQ;QAC/D,OAAO;IACT;IAEA,MAAMI,SAASJ;IAEf,IACE,OAAOI,OAAOC,oBAAoB,KAAK,YACvC,OAAOD,OAAOE,YAAY,KAAK,YAC/B,OAAOF,OAAOG,eAAe,KAAK,aAClC,OAAOH,OAAOI,eAAe,KAAK,UAClC;QACA,OAAO;IACT;IAEA,OAAO;QACLC,QAAQZ,6CAA6CO,OAAOK,MAAM;QAClEJ,sBAAsBD,OAAOC,oBAAoB;QACjDC,cAAcF,OAAOE,YAAY;QACjCC,iBAAiBH,OAAOG,eAAe;QACvCC,iBAAiBJ,OAAOI,eAAe;IACzC;AACF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { PageTreeSourceDoc, NestedDocsPageTreePluginBadgeMap } from '../types.js';
|
|
2
|
+
export type PageTreeDisplayStatus = 'changed' | 'draft' | 'published' | 'unknown';
|
|
3
|
+
export declare function getPageTreeDisplayStatus(doc: Pick<PageTreeSourceDoc, '_displayStatus' | '_status'>): PageTreeDisplayStatus;
|
|
4
|
+
export declare function getPageTreeDisplayStatusLabelKey(status: PageTreeDisplayStatus): 'version:draft' | 'version:changed' | 'version:published' | 'general:noValue';
|
|
5
|
+
export declare function getPageTreeBadgeColor(args: {
|
|
6
|
+
badgeColors: NestedDocsPageTreePluginBadgeMap;
|
|
7
|
+
status: PageTreeDisplayStatus;
|
|
8
|
+
}): string | undefined;
|
|
9
|
+
export declare function getPageTreeBadgeLabel(args: {
|
|
10
|
+
badgeLabels: NestedDocsPageTreePluginBadgeMap;
|
|
11
|
+
status: PageTreeDisplayStatus;
|
|
12
|
+
t: (key: ReturnType<typeof getPageTreeDisplayStatusLabelKey>) => string;
|
|
13
|
+
}): string;
|
|
14
|
+
export declare function withPageTreeDisplayStatuses(args: {
|
|
15
|
+
currentDocs: Pick<PageTreeSourceDoc, '_status' | 'id'>[];
|
|
16
|
+
draftDocs: PageTreeSourceDoc[];
|
|
17
|
+
}): PageTreeSourceDoc[];
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
function isBadgeStatus(status) {
|
|
2
|
+
return status === 'changed' || status === 'draft' || status === 'published';
|
|
3
|
+
}
|
|
4
|
+
export function getPageTreeDisplayStatus(doc) {
|
|
5
|
+
if (doc._displayStatus === 'changed') {
|
|
6
|
+
return 'changed';
|
|
7
|
+
}
|
|
8
|
+
if (doc._displayStatus === 'draft') {
|
|
9
|
+
return 'draft';
|
|
10
|
+
}
|
|
11
|
+
if (doc._displayStatus === 'published') {
|
|
12
|
+
return 'published';
|
|
13
|
+
}
|
|
14
|
+
if (doc._status === 'draft') {
|
|
15
|
+
return 'draft';
|
|
16
|
+
}
|
|
17
|
+
if (doc._status === 'published') {
|
|
18
|
+
return 'published';
|
|
19
|
+
}
|
|
20
|
+
return 'unknown';
|
|
21
|
+
}
|
|
22
|
+
export function getPageTreeDisplayStatusLabelKey(status) {
|
|
23
|
+
if (status === 'changed') {
|
|
24
|
+
return 'version:changed';
|
|
25
|
+
}
|
|
26
|
+
if (status === 'draft') {
|
|
27
|
+
return 'version:draft';
|
|
28
|
+
}
|
|
29
|
+
if (status === 'published') {
|
|
30
|
+
return 'version:published';
|
|
31
|
+
}
|
|
32
|
+
return 'general:noValue';
|
|
33
|
+
}
|
|
34
|
+
export function getPageTreeBadgeColor(args) {
|
|
35
|
+
const { badgeColors, status } = args;
|
|
36
|
+
if (!isBadgeStatus(status)) {
|
|
37
|
+
return undefined;
|
|
38
|
+
}
|
|
39
|
+
const badgeColor = badgeColors[status];
|
|
40
|
+
return typeof badgeColor === 'string' && badgeColor.trim().length > 0 ? badgeColor.trim() : undefined;
|
|
41
|
+
}
|
|
42
|
+
export function getPageTreeBadgeLabel(args) {
|
|
43
|
+
const { badgeLabels, status, t } = args;
|
|
44
|
+
if (isBadgeStatus(status)) {
|
|
45
|
+
const badgeLabel = badgeLabels[status];
|
|
46
|
+
if (typeof badgeLabel === 'string' && badgeLabel.trim().length > 0) {
|
|
47
|
+
return badgeLabel.trim();
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return t(getPageTreeDisplayStatusLabelKey(status));
|
|
51
|
+
}
|
|
52
|
+
export function withPageTreeDisplayStatuses(args) {
|
|
53
|
+
const { currentDocs, draftDocs } = args;
|
|
54
|
+
const currentStatusByID = new Map(currentDocs.map((doc)=>[
|
|
55
|
+
String(doc.id ?? ''),
|
|
56
|
+
doc._status ?? null
|
|
57
|
+
]));
|
|
58
|
+
return draftDocs.map((doc)=>{
|
|
59
|
+
const docID = String(doc.id ?? '');
|
|
60
|
+
const currentStatus = currentStatusByID.get(docID);
|
|
61
|
+
const displayStatus = doc._status === 'draft' && currentStatus === 'published' ? 'changed' : doc._status === 'draft' || doc._status === 'published' ? doc._status : undefined;
|
|
62
|
+
if (doc._displayStatus === displayStatus) {
|
|
63
|
+
return doc;
|
|
64
|
+
}
|
|
65
|
+
return {
|
|
66
|
+
...doc,
|
|
67
|
+
_displayStatus: displayStatus
|
|
68
|
+
};
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
//# sourceMappingURL=status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/status.ts"],"sourcesContent":["import type {\n PageTreeSourceDoc,\n NestedDocsPageTreePluginBadgeMap,\n NestedDocsPageTreePluginBadgeStatus,\n} from '../types.js'\n\nexport type PageTreeDisplayStatus = 'changed' | 'draft' | 'published' | 'unknown'\n\nfunction isBadgeStatus(status: PageTreeDisplayStatus): status is NestedDocsPageTreePluginBadgeStatus {\n return status === 'changed' || status === 'draft' || status === 'published'\n}\n\nexport function getPageTreeDisplayStatus(\n doc: Pick<PageTreeSourceDoc, '_displayStatus' | '_status'>,\n): PageTreeDisplayStatus {\n if (doc._displayStatus === 'changed') {\n return 'changed'\n }\n\n if (doc._displayStatus === 'draft') {\n return 'draft'\n }\n\n if (doc._displayStatus === 'published') {\n return 'published'\n }\n\n if (doc._status === 'draft') {\n return 'draft'\n }\n\n if (doc._status === 'published') {\n return 'published'\n }\n\n return 'unknown'\n}\n\nexport function getPageTreeDisplayStatusLabelKey(status: PageTreeDisplayStatus):\n | 'version:draft'\n | 'version:changed'\n | 'version:published'\n | 'general:noValue' {\n if (status === 'changed') {\n return 'version:changed'\n }\n\n if (status === 'draft') {\n return 'version:draft'\n }\n\n if (status === 'published') {\n return 'version:published'\n }\n\n return 'general:noValue'\n}\n\nexport function getPageTreeBadgeColor(args: {\n badgeColors: NestedDocsPageTreePluginBadgeMap\n status: PageTreeDisplayStatus\n}): string | undefined {\n const { badgeColors, status } = args\n\n if (!isBadgeStatus(status)) {\n return undefined\n }\n\n const badgeColor = badgeColors[status]\n\n return typeof badgeColor === 'string' && badgeColor.trim().length > 0\n ? badgeColor.trim()\n : undefined\n}\n\nexport function getPageTreeBadgeLabel(args: {\n badgeLabels: NestedDocsPageTreePluginBadgeMap\n status: PageTreeDisplayStatus\n t: (key: ReturnType<typeof getPageTreeDisplayStatusLabelKey>) => string\n}): string {\n const { badgeLabels, status, t } = args\n\n if (isBadgeStatus(status)) {\n const badgeLabel = badgeLabels[status]\n\n if (typeof badgeLabel === 'string' && badgeLabel.trim().length > 0) {\n return badgeLabel.trim()\n }\n }\n\n return t(getPageTreeDisplayStatusLabelKey(status))\n}\n\nexport function withPageTreeDisplayStatuses(args: {\n currentDocs: Pick<PageTreeSourceDoc, '_status' | 'id'>[]\n draftDocs: PageTreeSourceDoc[]\n}): PageTreeSourceDoc[] {\n const { currentDocs, draftDocs } = args\n const currentStatusByID = new Map(\n currentDocs.map((doc) => [String(doc.id ?? ''), doc._status ?? null]),\n )\n\n return draftDocs.map((doc) => {\n const docID = String(doc.id ?? '')\n const currentStatus = currentStatusByID.get(docID)\n const displayStatus =\n doc._status === 'draft' && currentStatus === 'published'\n ? 'changed'\n : doc._status === 'draft' || doc._status === 'published'\n ? doc._status\n : undefined\n\n if (doc._displayStatus === displayStatus) {\n return doc\n }\n\n return {\n ...doc,\n _displayStatus: displayStatus,\n }\n })\n}\n"],"names":["isBadgeStatus","status","getPageTreeDisplayStatus","doc","_displayStatus","_status","getPageTreeDisplayStatusLabelKey","getPageTreeBadgeColor","args","badgeColors","undefined","badgeColor","trim","length","getPageTreeBadgeLabel","badgeLabels","t","badgeLabel","withPageTreeDisplayStatuses","currentDocs","draftDocs","currentStatusByID","Map","map","String","id","docID","currentStatus","get","displayStatus"],"mappings":"AAQA,SAASA,cAAcC,MAA6B;IAClD,OAAOA,WAAW,aAAaA,WAAW,WAAWA,WAAW;AAClE;AAEA,OAAO,SAASC,yBACdC,GAA0D;IAE1D,IAAIA,IAAIC,cAAc,KAAK,WAAW;QACpC,OAAO;IACT;IAEA,IAAID,IAAIC,cAAc,KAAK,SAAS;QAClC,OAAO;IACT;IAEA,IAAID,IAAIC,cAAc,KAAK,aAAa;QACtC,OAAO;IACT;IAEA,IAAID,IAAIE,OAAO,KAAK,SAAS;QAC3B,OAAO;IACT;IAEA,IAAIF,IAAIE,OAAO,KAAK,aAAa;QAC/B,OAAO;IACT;IAEA,OAAO;AACT;AAEA,OAAO,SAASC,iCAAiCL,MAA6B;IAK5E,IAAIA,WAAW,WAAW;QACxB,OAAO;IACT;IAEA,IAAIA,WAAW,SAAS;QACtB,OAAO;IACT;IAEA,IAAIA,WAAW,aAAa;QAC1B,OAAO;IACT;IAEA,OAAO;AACT;AAEA,OAAO,SAASM,sBAAsBC,IAGrC;IACC,MAAM,EAAEC,WAAW,EAAER,MAAM,EAAE,GAAGO;IAEhC,IAAI,CAACR,cAAcC,SAAS;QAC1B,OAAOS;IACT;IAEA,MAAMC,aAAaF,WAAW,CAACR,OAAO;IAEtC,OAAO,OAAOU,eAAe,YAAYA,WAAWC,IAAI,GAAGC,MAAM,GAAG,IAChEF,WAAWC,IAAI,KACfF;AACN;AAEA,OAAO,SAASI,sBAAsBN,IAIrC;IACC,MAAM,EAAEO,WAAW,EAAEd,MAAM,EAAEe,CAAC,EAAE,GAAGR;IAEnC,IAAIR,cAAcC,SAAS;QACzB,MAAMgB,aAAaF,WAAW,CAACd,OAAO;QAEtC,IAAI,OAAOgB,eAAe,YAAYA,WAAWL,IAAI,GAAGC,MAAM,GAAG,GAAG;YAClE,OAAOI,WAAWL,IAAI;QACxB;IACF;IAEA,OAAOI,EAAEV,iCAAiCL;AAC5C;AAEA,OAAO,SAASiB,4BAA4BV,IAG3C;IACC,MAAM,EAAEW,WAAW,EAAEC,SAAS,EAAE,GAAGZ;IACnC,MAAMa,oBAAoB,IAAIC,IAC5BH,YAAYI,GAAG,CAAC,CAACpB,MAAQ;YAACqB,OAAOrB,IAAIsB,EAAE,IAAI;YAAKtB,IAAIE,OAAO,IAAI;SAAK;IAGtE,OAAOe,UAAUG,GAAG,CAAC,CAACpB;QACpB,MAAMuB,QAAQF,OAAOrB,IAAIsB,EAAE,IAAI;QAC/B,MAAME,gBAAgBN,kBAAkBO,GAAG,CAACF;QAC5C,MAAMG,gBACJ1B,IAAIE,OAAO,KAAK,WAAWsB,kBAAkB,cACzC,YACAxB,IAAIE,OAAO,KAAK,WAAWF,IAAIE,OAAO,KAAK,cACzCF,IAAIE,OAAO,GACXK;QAER,IAAIP,IAAIC,cAAc,KAAKyB,eAAe;YACxC,OAAO1B;QACT;QAEA,OAAO;YACL,GAAGA,GAAG;YACNC,gBAAgByB;QAClB;IACF;AACF"}
|
package/package.json
ADDED
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "payload-nested-docs-page-tree",
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"description": "Page tree plugin for Payload nested docs collections",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"author": "WLF Studios",
|
|
7
|
+
"type": "module",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/WLF-Studios/payload-nested-docs-page-tree.git"
|
|
11
|
+
},
|
|
12
|
+
"homepage": "https://github.com/WLF-Studios/payload-nested-docs-page-tree#readme",
|
|
13
|
+
"bugs": {
|
|
14
|
+
"url": "https://github.com/WLF-Studios/payload-nested-docs-page-tree/issues"
|
|
15
|
+
},
|
|
16
|
+
"keywords": [
|
|
17
|
+
"payload",
|
|
18
|
+
"payloadcms",
|
|
19
|
+
"payload-plugin",
|
|
20
|
+
"nested-docs",
|
|
21
|
+
"page-tree",
|
|
22
|
+
"cms"
|
|
23
|
+
],
|
|
24
|
+
"exports": {
|
|
25
|
+
".": {
|
|
26
|
+
"import": "./dist/index.js",
|
|
27
|
+
"types": "./dist/index.d.ts",
|
|
28
|
+
"default": "./dist/index.js"
|
|
29
|
+
},
|
|
30
|
+
"./client": {
|
|
31
|
+
"import": "./dist/exports/client.js",
|
|
32
|
+
"types": "./dist/exports/client.d.ts",
|
|
33
|
+
"default": "./dist/exports/client.js"
|
|
34
|
+
},
|
|
35
|
+
"./rsc": {
|
|
36
|
+
"import": "./dist/exports/rsc.js",
|
|
37
|
+
"types": "./dist/exports/rsc.d.ts",
|
|
38
|
+
"default": "./dist/exports/rsc.js"
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
"main": "./dist/index.js",
|
|
42
|
+
"types": "./dist/index.d.ts",
|
|
43
|
+
"files": [
|
|
44
|
+
"dist",
|
|
45
|
+
"README.md",
|
|
46
|
+
"LICENSE"
|
|
47
|
+
],
|
|
48
|
+
"devDependencies": {
|
|
49
|
+
"@eslint/eslintrc": "^3.2.0",
|
|
50
|
+
"@payloadcms/db-mongodb": "3.84.1",
|
|
51
|
+
"@payloadcms/eslint-config": "3.9.0",
|
|
52
|
+
"@payloadcms/next": "3.84.1",
|
|
53
|
+
"@payloadcms/plugin-nested-docs": "3.84.1",
|
|
54
|
+
"@payloadcms/richtext-lexical": "3.84.1",
|
|
55
|
+
"@payloadcms/ui": "3.84.1",
|
|
56
|
+
"@playwright/test": "1.58.2",
|
|
57
|
+
"@swc-node/register": "1.10.9",
|
|
58
|
+
"@swc/cli": "0.6.0",
|
|
59
|
+
"@types/node": "22.19.9",
|
|
60
|
+
"@types/react": "19.2.14",
|
|
61
|
+
"@types/react-dom": "19.2.3",
|
|
62
|
+
"copyfiles": "2.4.1",
|
|
63
|
+
"cross-env": "^7.0.3",
|
|
64
|
+
"eslint": "^9.23.0",
|
|
65
|
+
"eslint-config-next": "16.2.3",
|
|
66
|
+
"graphql": "^16.8.2",
|
|
67
|
+
"mongodb-memory-server": "10.1.4",
|
|
68
|
+
"next": "16.2.3",
|
|
69
|
+
"open": "^10.1.0",
|
|
70
|
+
"payload": "3.84.1",
|
|
71
|
+
"prettier": "^3.4.2",
|
|
72
|
+
"qs-esm": "8.0.1",
|
|
73
|
+
"react": "19.2.4",
|
|
74
|
+
"react-dom": "19.2.4",
|
|
75
|
+
"rimraf": "3.0.2",
|
|
76
|
+
"sharp": "0.34.2",
|
|
77
|
+
"sort-package-json": "^2.10.0",
|
|
78
|
+
"typescript": "5.7.3",
|
|
79
|
+
"vite-tsconfig-paths": "6.0.5",
|
|
80
|
+
"vitest": "4.0.18"
|
|
81
|
+
},
|
|
82
|
+
"peerDependencies": {
|
|
83
|
+
"@payloadcms/plugin-nested-docs": "^3.84.1",
|
|
84
|
+
"payload": "^3.84.1"
|
|
85
|
+
},
|
|
86
|
+
"engines": {
|
|
87
|
+
"node": "^18.20.2 || >=20.9.0",
|
|
88
|
+
"pnpm": "^9 || ^10"
|
|
89
|
+
},
|
|
90
|
+
"publishConfig": {
|
|
91
|
+
"registry": "https://registry.npmjs.org/"
|
|
92
|
+
},
|
|
93
|
+
"dependencies": {
|
|
94
|
+
"@dnd-kit/core": "^6.3.1"
|
|
95
|
+
},
|
|
96
|
+
"scripts": {
|
|
97
|
+
"build": "pnpm clean && pnpm build:types && pnpm build:swc && pnpm copyfiles && pnpm build:strip-tests",
|
|
98
|
+
"build:strip-tests": "rimraf \"dist/**/*.spec.*\"",
|
|
99
|
+
"build:swc": "swc ./src -d ./dist --config-file .swcrc --strip-leading-paths",
|
|
100
|
+
"build:types": "tsc --project tsconfig.build.json",
|
|
101
|
+
"clean": "rimraf dist \"*.tsbuildinfo\"",
|
|
102
|
+
"copyfiles": "copyfiles -u 1 \"src/**/*.{html,css,scss,ttf,woff,woff2,eot,svg,jpg,png,json}\" dist/",
|
|
103
|
+
"dev": "next dev dev --webpack",
|
|
104
|
+
"dev:generate-importmap": "pnpm dev:payload generate:importmap",
|
|
105
|
+
"dev:generate-types": "pnpm dev:payload generate:types",
|
|
106
|
+
"dev:payload": "cross-env PAYLOAD_CONFIG_PATH=./dev/payload.config.ts payload",
|
|
107
|
+
"generate:importmap": "pnpm dev:generate-importmap",
|
|
108
|
+
"generate:types": "pnpm dev:generate-types",
|
|
109
|
+
"lint": "eslint",
|
|
110
|
+
"lint:fix": "eslint ./src --fix",
|
|
111
|
+
"test": "pnpm test:int && pnpm test:e2e",
|
|
112
|
+
"test:e2e": "playwright test",
|
|
113
|
+
"test:int": "vitest"
|
|
114
|
+
}
|
|
115
|
+
}
|