payload-nested-docs-page-tree 1.5.1 → 1.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +150 -7
- package/dist/components/PageTreeListView.client.js +9 -4
- package/dist/components/PageTreeListView.client.js.map +1 -1
- package/dist/components/PageTreeListView.module.css +27 -0
- package/dist/components/PageTreeListView.server.js +30 -14
- package/dist/components/PageTreeListView.server.js.map +1 -1
- package/dist/components/PageTreeLocaleStatusBadges.d.ts +7 -0
- package/dist/components/PageTreeLocaleStatusBadges.js +80 -0
- package/dist/components/PageTreeLocaleStatusBadges.js.map +1 -0
- package/dist/components/PageTreeStatusBadge.d.ts +2 -1
- package/dist/components/PageTreeStatusBadge.js +10 -1
- package/dist/components/PageTreeStatusBadge.js.map +1 -1
- package/dist/components/PageTreeTitleCell.js +8 -8
- package/dist/components/PageTreeTitleCell.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +8 -4
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +51 -8
- package/dist/types.js.map +1 -1
- package/dist/utilities/badgeConfig.js +3 -0
- package/dist/utilities/badgeConfig.js.map +1 -1
- package/dist/utilities/badgeLinks.d.ts +1 -1
- package/dist/utilities/badgeLinks.js +13 -3
- package/dist/utilities/badgeLinks.js.map +1 -1
- package/dist/utilities/localeStatus.d.ts +11 -0
- package/dist/utilities/localeStatus.js +88 -0
- package/dist/utilities/localeStatus.js.map +1 -0
- package/dist/utilities/pageTree.js +1 -1
- package/dist/utilities/pageTree.js.map +1 -1
- package/dist/utilities/pageTreeConfig.d.ts +1 -1
- package/dist/utilities/pageTreeConfig.js +2 -0
- package/dist/utilities/pageTreeConfig.js.map +1 -1
- package/dist/utilities/status.d.ts +2 -2
- package/dist/utilities/status.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +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):
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/pageTreeConfig.ts"],"sourcesContent":["import type { CollectionConfig } from 'payload'\n\nimport type { NestedDocsPageTreePluginCollectionCustom } from '../types.js'\n\nimport { nestedDocsPageTreePluginCustomKey } from '../types.js'\nimport { normalizeNestedDocsPageTreePluginBadgeConfig } from './badgeConfig.js'\n\nexport function getCollectionPageTreeConfig(\n collection: Pick<CollectionConfig, 'custom'>,\n): NestedDocsPageTreePluginCollectionCustom | null {\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 !config.homeIndicator ||\n typeof config.homeIndicator !== 'object' ||\n Array.isArray(config.homeIndicator) ||\n typeof config.homeIndicator.enabled !== 'boolean' ||\n typeof config.parentFieldSlug !== 'string'\n ) {\n return null\n }\n\n return {\n badges: normalizeNestedDocsPageTreePluginBadgeConfig(config.badges),\n badgesLinks: config.badgesLinks,\n breadcrumbsFieldSlug: config.breadcrumbsFieldSlug,\n defaultLimit: config.defaultLimit,\n hideBreadcrumbs: config.hideBreadcrumbs,\n homeIndicator: {\n enabled: config.homeIndicator.enabled,\n },\n localeBadgeStatus: config.localeBadgeStatus,\n localeBadgeVisibility: config.localeBadgeVisibility,\n parentFieldSlug: config.parentFieldSlug,\n }\n}\n"],"names":["nestedDocsPageTreePluginCustomKey","normalizeNestedDocsPageTreePluginBadgeConfig","getCollectionPageTreeConfig","collection","value","custom","Array","isArray","config","breadcrumbsFieldSlug","defaultLimit","hideBreadcrumbs","homeIndicator","enabled","parentFieldSlug","badges","badgesLinks","localeBadgeStatus","localeBadgeVisibility"],"mappings":"AAIA,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,CAACH,OAAOI,aAAa,IACrB,OAAOJ,OAAOI,aAAa,KAAK,YAChCN,MAAMC,OAAO,CAACC,OAAOI,aAAa,KAClC,OAAOJ,OAAOI,aAAa,CAACC,OAAO,KAAK,aACxC,OAAOL,OAAOM,eAAe,KAAK,UAClC;QACA,OAAO;IACT;IAEA,OAAO;QACLC,QAAQd,6CAA6CO,OAAOO,MAAM;QAClEC,aAAaR,OAAOQ,WAAW;QAC/BP,sBAAsBD,OAAOC,oBAAoB;QACjDC,cAAcF,OAAOE,YAAY;QACjCC,iBAAiBH,OAAOG,eAAe;QACvCC,eAAe;YACbC,SAASL,OAAOI,aAAa,CAACC,OAAO;QACvC;QACAI,mBAAmBT,OAAOS,iBAAiB;QAC3CC,uBAAuBV,OAAOU,qBAAqB;QACnDJ,iBAAiBN,OAAOM,eAAe;IACzC;AACF"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { NestedDocsPageTreePluginBadgeMap, PageTreeSourceDoc } from '../types.js';
|
|
2
2
|
export type PageTreeDisplayStatus = 'changed' | 'draft' | 'published' | 'unknown';
|
|
3
3
|
export declare function getPageTreeDisplayStatus(doc: Pick<PageTreeSourceDoc, '_displayStatus' | '_status'>): PageTreeDisplayStatus;
|
|
4
|
-
export declare function getPageTreeDisplayStatusLabelKey(status: PageTreeDisplayStatus): '
|
|
4
|
+
export declare function getPageTreeDisplayStatusLabelKey(status: PageTreeDisplayStatus): 'general:noValue' | 'version:changed' | 'version:draft' | 'version:published';
|
|
5
5
|
export declare function getPageTreeBadgeColor(args: {
|
|
6
6
|
badgeColors: NestedDocsPageTreePluginBadgeMap;
|
|
7
7
|
status: PageTreeDisplayStatus;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/status.ts"],"sourcesContent":["import type {\n
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/status.ts"],"sourcesContent":["import type {\n NestedDocsPageTreePluginBadgeMap,\n NestedDocsPageTreePluginBadgeStatus,\n PageTreeSourceDoc,\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 | 'general:noValue'\n | 'version:changed'\n | 'version:draft'\n | 'version:published' {\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"}
|