@payloadcms/plugin-nested-docs 1.0.7 → 1.0.9
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/fields/breadcrumbs.d.ts +2 -2
- package/dist/fields/breadcrumbs.d.ts.map +1 -0
- package/dist/fields/breadcrumbs.js +34 -37
- package/dist/fields/parent.d.ts +2 -1
- package/dist/fields/parent.d.ts.map +1 -0
- package/dist/fields/parent.js +38 -21
- package/dist/hooks/resaveChildren.d.ts +1 -0
- package/dist/hooks/resaveChildren.d.ts.map +1 -0
- package/dist/hooks/resaveChildren.js +50 -96
- package/dist/hooks/resaveSelfAfterCreate.d.ts +1 -0
- package/dist/hooks/resaveSelfAfterCreate.d.ts.map +1 -0
- package/dist/hooks/resaveSelfAfterCreate.js +43 -92
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +53 -91
- package/dist/types.d.ts +5 -4
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +5 -2
- package/dist/utilities/formatBreadcrumb.d.ts +1 -0
- package/dist/utilities/formatBreadcrumb.d.ts.map +1 -0
- package/dist/utilities/formatBreadcrumb.js +23 -16
- package/dist/utilities/getParents.d.ts +1 -0
- package/dist/utilities/getParents.d.ts.map +1 -0
- package/dist/utilities/getParents.js +41 -83
- package/dist/utilities/populateBreadcrumbs.d.ts +1 -0
- package/dist/utilities/populateBreadcrumbs.d.ts.map +1 -0
- package/dist/utilities/populateBreadcrumbs.js +39 -82
- package/package.json +22 -54
- package/dist/fields/breadcrumbs.js.map +0 -1
- package/dist/fields/parent.js.map +0 -1
- package/dist/hooks/resaveChildren.js.map +0 -1
- package/dist/hooks/resaveSelfAfterCreate.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/utilities/formatBreadcrumb.js.map +0 -1
- package/dist/utilities/getParents.js.map +0 -1
- package/dist/utilities/populateBreadcrumbs.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,94 +1,56 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
-
function step(op) {
|
|
27
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
-
switch (op[0]) {
|
|
32
|
-
case 0: case 1: t = op; break;
|
|
33
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
-
default:
|
|
37
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
-
if (t[2]) _.ops.pop();
|
|
42
|
-
_.trys.pop(); continue;
|
|
43
|
-
}
|
|
44
|
-
op = body.call(thisArg, _);
|
|
45
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
50
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
51
|
-
if (ar || !(i in from)) {
|
|
52
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
53
|
-
ar[i] = from[i];
|
|
54
|
-
}
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
55
9
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
10
|
+
});
|
|
11
|
+
const _breadcrumbs = /*#__PURE__*/ _interop_require_default(require("./fields/breadcrumbs"));
|
|
12
|
+
const _parent = /*#__PURE__*/ _interop_require_default(require("./fields/parent"));
|
|
13
|
+
const _resaveChildren = /*#__PURE__*/ _interop_require_default(require("./hooks/resaveChildren"));
|
|
14
|
+
const _resaveSelfAfterCreate = /*#__PURE__*/ _interop_require_default(require("./hooks/resaveSelfAfterCreate"));
|
|
15
|
+
const _populateBreadcrumbs = /*#__PURE__*/ _interop_require_default(require("./utilities/populateBreadcrumbs"));
|
|
16
|
+
function _interop_require_default(obj) {
|
|
17
|
+
return obj && obj.__esModule ? obj : {
|
|
18
|
+
default: obj
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
const nestedDocs = (pluginConfig)=>(config)=>({
|
|
22
|
+
...config,
|
|
23
|
+
collections: (config.collections || []).map((collection)=>{
|
|
24
|
+
if (pluginConfig.collections.indexOf(collection.slug) > -1) {
|
|
25
|
+
const fields = [
|
|
26
|
+
...collection?.fields || []
|
|
27
|
+
];
|
|
28
|
+
if (!pluginConfig.parentFieldSlug) {
|
|
29
|
+
fields.push((0, _parent.default)(collection.slug));
|
|
30
|
+
}
|
|
31
|
+
if (!pluginConfig.breadcrumbsFieldSlug) {
|
|
32
|
+
fields.push((0, _breadcrumbs.default)(collection.slug));
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
...collection,
|
|
36
|
+
hooks: {
|
|
37
|
+
...collection.hooks || {},
|
|
38
|
+
beforeChange: [
|
|
39
|
+
async ({ req, data, originalDoc })=>(0, _populateBreadcrumbs.default)(req, pluginConfig, collection, data, originalDoc),
|
|
40
|
+
...collection?.hooks?.beforeChange || []
|
|
41
|
+
],
|
|
42
|
+
afterChange: [
|
|
43
|
+
(0, _resaveChildren.default)(pluginConfig, collection),
|
|
44
|
+
(0, _resaveSelfAfterCreate.default)(collection),
|
|
45
|
+
...collection?.hooks?.afterChange || []
|
|
46
|
+
]
|
|
47
|
+
},
|
|
48
|
+
fields
|
|
49
|
+
};
|
|
77
50
|
}
|
|
78
|
-
return
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}
|
|
85
|
-
], (((_a = collection === null || collection === void 0 ? void 0 : collection.hooks) === null || _a === void 0 ? void 0 : _a.beforeChange) || []), true), afterChange: __spreadArray([
|
|
86
|
-
(0, resaveChildren_1.default)(pluginConfig, collection),
|
|
87
|
-
(0, resaveSelfAfterCreate_1.default)(collection)
|
|
88
|
-
], (((_b = collection === null || collection === void 0 ? void 0 : collection.hooks) === null || _b === void 0 ? void 0 : _b.afterChange) || []), true) }), fields: fields });
|
|
89
|
-
}
|
|
90
|
-
return collection;
|
|
91
|
-
}) })); };
|
|
92
|
-
};
|
|
93
|
-
exports.default = nestedDocs;
|
|
94
|
-
//# sourceMappingURL=index.js.map
|
|
51
|
+
return collection;
|
|
52
|
+
})
|
|
53
|
+
});
|
|
54
|
+
const _default = nestedDocs;
|
|
55
|
+
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBsdWdpbiB9IGZyb20gJ3BheWxvYWQvY29uZmlnJ1xuXG5pbXBvcnQgdHlwZSB7IFBsdWdpbkNvbmZpZyB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCBjcmVhdGVCcmVhZGNydW1ic0ZpZWxkIGZyb20gJy4vZmllbGRzL2JyZWFkY3J1bWJzJ1xuaW1wb3J0IGNyZWF0ZVBhcmVudEZpZWxkIGZyb20gJy4vZmllbGRzL3BhcmVudCdcbmltcG9ydCByZXNhdmVDaGlsZHJlbiBmcm9tICcuL2hvb2tzL3Jlc2F2ZUNoaWxkcmVuJ1xuaW1wb3J0IHJlc2F2ZVNlbGZBZnRlckNyZWF0ZSBmcm9tICcuL2hvb2tzL3Jlc2F2ZVNlbGZBZnRlckNyZWF0ZSdcbmltcG9ydCBwb3B1bGF0ZUJyZWFkY3J1bWJzIGZyb20gJy4vdXRpbGl0aWVzL3BvcHVsYXRlQnJlYWRjcnVtYnMnXG5cbmNvbnN0IG5lc3RlZERvY3MgPVxuICAocGx1Z2luQ29uZmlnOiBQbHVnaW5Db25maWcpOiBQbHVnaW4gPT5cbiAgKGNvbmZpZykgPT4gKHtcbiAgICAuLi5jb25maWcsXG4gICAgY29sbGVjdGlvbnM6IChjb25maWcuY29sbGVjdGlvbnMgfHwgW10pLm1hcCgoY29sbGVjdGlvbikgPT4ge1xuICAgICAgaWYgKHBsdWdpbkNvbmZpZy5jb2xsZWN0aW9ucy5pbmRleE9mKGNvbGxlY3Rpb24uc2x1ZykgPiAtMSkge1xuICAgICAgICBjb25zdCBmaWVsZHMgPSBbLi4uKGNvbGxlY3Rpb24/LmZpZWxkcyB8fCBbXSldXG5cbiAgICAgICAgaWYgKCFwbHVnaW5Db25maWcucGFyZW50RmllbGRTbHVnKSB7XG4gICAgICAgICAgZmllbGRzLnB1c2goY3JlYXRlUGFyZW50RmllbGQoY29sbGVjdGlvbi5zbHVnKSlcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghcGx1Z2luQ29uZmlnLmJyZWFkY3J1bWJzRmllbGRTbHVnKSB7XG4gICAgICAgICAgZmllbGRzLnB1c2goY3JlYXRlQnJlYWRjcnVtYnNGaWVsZChjb2xsZWN0aW9uLnNsdWcpKVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5jb2xsZWN0aW9uLFxuICAgICAgICAgIGhvb2tzOiB7XG4gICAgICAgICAgICAuLi4oY29sbGVjdGlvbi5ob29rcyB8fCB7fSksXG4gICAgICAgICAgICBiZWZvcmVDaGFuZ2U6IFtcbiAgICAgICAgICAgICAgYXN5bmMgKHsgcmVxLCBkYXRhLCBvcmlnaW5hbERvYyB9KSA9PlxuICAgICAgICAgICAgICAgIHBvcHVsYXRlQnJlYWRjcnVtYnMocmVxLCBwbHVnaW5Db25maWcsIGNvbGxlY3Rpb24sIGRhdGEsIG9yaWdpbmFsRG9jKSxcbiAgICAgICAgICAgICAgLi4uKGNvbGxlY3Rpb24/Lmhvb2tzPy5iZWZvcmVDaGFuZ2UgfHwgW10pLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIGFmdGVyQ2hhbmdlOiBbXG4gICAgICAgICAgICAgIHJlc2F2ZUNoaWxkcmVuKHBsdWdpbkNvbmZpZywgY29sbGVjdGlvbiksXG4gICAgICAgICAgICAgIHJlc2F2ZVNlbGZBZnRlckNyZWF0ZShjb2xsZWN0aW9uKSxcbiAgICAgICAgICAgICAgLi4uKGNvbGxlY3Rpb24/Lmhvb2tzPy5hZnRlckNoYW5nZSB8fCBbXSksXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgZmllbGRzLFxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjb2xsZWN0aW9uXG4gICAgfSksXG4gIH0pXG5cbmV4cG9ydCBkZWZhdWx0IG5lc3RlZERvY3NcbiJdLCJuYW1lcyI6WyJuZXN0ZWREb2NzIiwicGx1Z2luQ29uZmlnIiwiY29uZmlnIiwiY29sbGVjdGlvbnMiLCJtYXAiLCJjb2xsZWN0aW9uIiwiaW5kZXhPZiIsInNsdWciLCJmaWVsZHMiLCJwYXJlbnRGaWVsZFNsdWciLCJwdXNoIiwiY3JlYXRlUGFyZW50RmllbGQiLCJicmVhZGNydW1ic0ZpZWxkU2x1ZyIsImNyZWF0ZUJyZWFkY3J1bWJzRmllbGQiLCJob29rcyIsImJlZm9yZUNoYW5nZSIsInJlcSIsImRhdGEiLCJvcmlnaW5hbERvYyIsInBvcHVsYXRlQnJlYWRjcnVtYnMiLCJhZnRlckNoYW5nZSIsInJlc2F2ZUNoaWxkcmVuIiwicmVzYXZlU2VsZkFmdGVyQ3JlYXRlIl0sIm1hcHBpbmdzIjoiOzs7OytCQWlEQTs7O2VBQUE7OztvRUE3Q21DOytEQUNMO3VFQUNIOzhFQUNPOzRFQUNGOzs7Ozs7QUFFaEMsTUFBTUEsYUFDSixDQUFDQyxlQUNELENBQUNDLFNBQVksQ0FBQTtZQUNYLEdBQUdBLE1BQU07WUFDVEMsYUFBYSxBQUFDRCxDQUFBQSxPQUFPQyxXQUFXLElBQUksRUFBRSxBQUFELEVBQUdDLEdBQUcsQ0FBQyxDQUFDQztnQkFDM0MsSUFBSUosYUFBYUUsV0FBVyxDQUFDRyxPQUFPLENBQUNELFdBQVdFLElBQUksSUFBSSxDQUFDLEdBQUc7b0JBQzFELE1BQU1DLFNBQVM7MkJBQUtILFlBQVlHLFVBQVUsRUFBRTtxQkFBRTtvQkFFOUMsSUFBSSxDQUFDUCxhQUFhUSxlQUFlLEVBQUU7d0JBQ2pDRCxPQUFPRSxJQUFJLENBQUNDLElBQUFBLGVBQWlCLEVBQUNOLFdBQVdFLElBQUk7b0JBQy9DO29CQUVBLElBQUksQ0FBQ04sYUFBYVcsb0JBQW9CLEVBQUU7d0JBQ3RDSixPQUFPRSxJQUFJLENBQUNHLElBQUFBLG9CQUFzQixFQUFDUixXQUFXRSxJQUFJO29CQUNwRDtvQkFFQSxPQUFPO3dCQUNMLEdBQUdGLFVBQVU7d0JBQ2JTLE9BQU87NEJBQ0wsR0FBSVQsV0FBV1MsS0FBSyxJQUFJLENBQUMsQ0FBQzs0QkFDMUJDLGNBQWM7Z0NBQ1osT0FBTyxFQUFFQyxHQUFHLEVBQUVDLElBQUksRUFBRUMsV0FBVyxFQUFFLEdBQy9CQyxJQUFBQSw0QkFBbUIsRUFBQ0gsS0FBS2YsY0FBY0ksWUFBWVksTUFBTUM7bUNBQ3ZEYixZQUFZUyxPQUFPQyxnQkFBZ0IsRUFBRTs2QkFDMUM7NEJBQ0RLLGFBQWE7Z0NBQ1hDLElBQUFBLHVCQUFjLEVBQUNwQixjQUFjSTtnQ0FDN0JpQixJQUFBQSw4QkFBcUIsRUFBQ2pCO21DQUNsQkEsWUFBWVMsT0FBT00sZUFBZSxFQUFFOzZCQUN6Qzt3QkFDSDt3QkFDQVo7b0JBQ0Y7Z0JBQ0Y7Z0JBRUEsT0FBT0g7WUFDVDtRQUNGLENBQUE7TUFFRixXQUFlTCJ9
|
package/dist/types.d.ts
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
export interface Breadcrumb {
|
|
2
|
-
url?: string;
|
|
3
|
-
label: string;
|
|
4
2
|
doc: string;
|
|
3
|
+
label: string;
|
|
4
|
+
url?: string;
|
|
5
5
|
}
|
|
6
6
|
export type GenerateURL = (docs: Array<Record<string, unknown>>, currentDoc: Record<string, unknown>) => string;
|
|
7
7
|
export type GenerateLabel = (docs: Array<Record<string, unknown>>, currentDoc: Record<string, unknown>) => string;
|
|
8
8
|
export interface PluginConfig {
|
|
9
|
+
breadcrumbsFieldSlug?: string;
|
|
9
10
|
collections: string[];
|
|
10
|
-
generateURL?: GenerateURL;
|
|
11
11
|
generateLabel?: GenerateLabel;
|
|
12
|
+
generateURL?: GenerateURL;
|
|
12
13
|
parentFieldSlug?: string;
|
|
13
|
-
breadcrumbsFieldSlug?: string;
|
|
14
14
|
}
|
|
15
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED,MAAM,MAAM,WAAW,GAAG,CACxB,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAChC,MAAM,CAAA;AAEX,MAAM,MAAM,aAAa,GAAG,CAC1B,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAChC,MAAM,CAAA;AAEX,MAAM,WAAW,YAAY;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB"}
|
package/dist/types.js
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
|
@@ -2,3 +2,4 @@ import type { CollectionConfig } from 'payload/types';
|
|
|
2
2
|
import type { Breadcrumb, PluginConfig } from '../types';
|
|
3
3
|
declare const formatBreadcrumb: (pluginConfig: PluginConfig, collection: CollectionConfig, docs: Array<Record<string, unknown>>) => Breadcrumb;
|
|
4
4
|
export default formatBreadcrumb;
|
|
5
|
+
//# sourceMappingURL=formatBreadcrumb.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatBreadcrumb.d.ts","sourceRoot":"","sources":["../../src/utilities/formatBreadcrumb.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAErD,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAExD,QAAA,MAAM,gBAAgB,iBACN,YAAY,cACd,gBAAgB,QACtB,MAAM,OAAO,MAAM,EAAE,OAAO,CAAC,CAAC,KACnC,UAsBF,CAAA;AAED,eAAe,gBAAgB,CAAA"}
|
|
@@ -1,25 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const formatBreadcrumb = (pluginConfig, collection, docs)=>{
|
|
12
|
+
let url = undefined;
|
|
13
|
+
let label;
|
|
14
|
+
const lastDoc = docs[docs.length - 1];
|
|
15
|
+
if (typeof pluginConfig?.generateURL === 'function') {
|
|
9
16
|
url = pluginConfig.generateURL(docs, lastDoc);
|
|
10
17
|
}
|
|
11
|
-
if (typeof
|
|
18
|
+
if (typeof pluginConfig?.generateLabel === 'function') {
|
|
12
19
|
label = pluginConfig.generateLabel(docs, lastDoc);
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
var useAsTitle = ((_a = collection === null || collection === void 0 ? void 0 : collection.admin) === null || _a === void 0 ? void 0 : _a.useAsTitle) || 'id';
|
|
20
|
+
} else {
|
|
21
|
+
const useAsTitle = collection?.admin?.useAsTitle || 'id';
|
|
16
22
|
label = lastDoc[useAsTitle];
|
|
17
23
|
}
|
|
18
24
|
return {
|
|
19
|
-
label
|
|
20
|
-
url
|
|
21
|
-
doc: lastDoc.id
|
|
25
|
+
label,
|
|
26
|
+
url,
|
|
27
|
+
doc: lastDoc.id
|
|
22
28
|
};
|
|
23
29
|
};
|
|
24
|
-
|
|
25
|
-
|
|
30
|
+
const _default = formatBreadcrumb;
|
|
31
|
+
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZm9ybWF0QnJlYWRjcnVtYi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENvbGxlY3Rpb25Db25maWcgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgdHlwZSB7IEJyZWFkY3J1bWIsIFBsdWdpbkNvbmZpZyB9IGZyb20gJy4uL3R5cGVzJ1xuXG5jb25zdCBmb3JtYXRCcmVhZGNydW1iID0gKFxuICBwbHVnaW5Db25maWc6IFBsdWdpbkNvbmZpZyxcbiAgY29sbGVjdGlvbjogQ29sbGVjdGlvbkNvbmZpZyxcbiAgZG9jczogQXJyYXk8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+LFxuKTogQnJlYWRjcnVtYiA9PiB7XG4gIGxldCB1cmw6IHN0cmluZyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZFxuICBsZXQgbGFiZWw6IHN0cmluZ1xuXG4gIGNvbnN0IGxhc3REb2MgPSBkb2NzW2RvY3MubGVuZ3RoIC0gMV1cblxuICBpZiAodHlwZW9mIHBsdWdpbkNvbmZpZz8uZ2VuZXJhdGVVUkwgPT09ICdmdW5jdGlvbicpIHtcbiAgICB1cmwgPSBwbHVnaW5Db25maWcuZ2VuZXJhdGVVUkwoZG9jcywgbGFzdERvYylcbiAgfVxuXG4gIGlmICh0eXBlb2YgcGx1Z2luQ29uZmlnPy5nZW5lcmF0ZUxhYmVsID09PSAnZnVuY3Rpb24nKSB7XG4gICAgbGFiZWwgPSBwbHVnaW5Db25maWcuZ2VuZXJhdGVMYWJlbChkb2NzLCBsYXN0RG9jKVxuICB9IGVsc2Uge1xuICAgIGNvbnN0IHVzZUFzVGl0bGUgPSBjb2xsZWN0aW9uPy5hZG1pbj8udXNlQXNUaXRsZSB8fCAnaWQnXG4gICAgbGFiZWwgPSBsYXN0RG9jW3VzZUFzVGl0bGVdIGFzIHN0cmluZ1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBsYWJlbCxcbiAgICB1cmwsXG4gICAgZG9jOiBsYXN0RG9jLmlkIGFzIHN0cmluZyxcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBmb3JtYXRCcmVhZGNydW1iXG4iXSwibmFtZXMiOlsiZm9ybWF0QnJlYWRjcnVtYiIsInBsdWdpbkNvbmZpZyIsImNvbGxlY3Rpb24iLCJkb2NzIiwidXJsIiwidW5kZWZpbmVkIiwibGFiZWwiLCJsYXN0RG9jIiwibGVuZ3RoIiwiZ2VuZXJhdGVVUkwiLCJnZW5lcmF0ZUxhYmVsIiwidXNlQXNUaXRsZSIsImFkbWluIiwiZG9jIiwiaWQiXSwibWFwcGluZ3MiOiI7Ozs7K0JBZ0NBOzs7ZUFBQTs7O0FBNUJBLE1BQU1BLG1CQUFtQixDQUN2QkMsY0FDQUMsWUFDQUM7SUFFQSxJQUFJQyxNQUEwQkM7SUFDOUIsSUFBSUM7SUFFSixNQUFNQyxVQUFVSixJQUFJLENBQUNBLEtBQUtLLE1BQU0sR0FBRyxFQUFFO0lBRXJDLElBQUksT0FBT1AsY0FBY1EsZ0JBQWdCLFlBQVk7UUFDbkRMLE1BQU1ILGFBQWFRLFdBQVcsQ0FBQ04sTUFBTUk7SUFDdkM7SUFFQSxJQUFJLE9BQU9OLGNBQWNTLGtCQUFrQixZQUFZO1FBQ3JESixRQUFRTCxhQUFhUyxhQUFhLENBQUNQLE1BQU1JO0lBQzNDLE9BQU87UUFDTCxNQUFNSSxhQUFhVCxZQUFZVSxPQUFPRCxjQUFjO1FBQ3BETCxRQUFRQyxPQUFPLENBQUNJLFdBQVc7SUFDN0I7SUFFQSxPQUFPO1FBQ0xMO1FBQ0FGO1FBQ0FTLEtBQUtOLFFBQVFPLEVBQUU7SUFDakI7QUFDRjtNQUVBLFdBQWVkIn0=
|
|
@@ -2,3 +2,4 @@ import type { CollectionConfig } from 'payload/types';
|
|
|
2
2
|
import type { PluginConfig } from '../types';
|
|
3
3
|
declare const getParents: (req: any, pluginConfig: PluginConfig, collection: CollectionConfig, doc: Record<string, unknown>, docs?: Array<Record<string, unknown>>) => Promise<Array<Record<string, unknown>>>;
|
|
4
4
|
export default getParents;
|
|
5
|
+
//# sourceMappingURL=getParents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getParents.d.ts","sourceRoot":"","sources":["../../src/utilities/getParents.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAErD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAE5C,QAAA,MAAM,UAAU,QACT,GAAG,gBACM,YAAY,cACd,gBAAgB,OACvB,OAAO,MAAM,EAAE,OAAO,CAAC,SACtB,MAAM,OAAO,MAAM,EAAE,OAAO,CAAC,CAAC,KACnC,QAAQ,MAAM,OAAO,MAAM,EAAE,OAAO,CAAC,CAAC,CAkCxC,CAAA;AAED,eAAe,UAAU,CAAA"}
|
|
@@ -1,88 +1,46 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
36
9
|
}
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
10
|
+
});
|
|
11
|
+
const getParents = async (req, pluginConfig, collection, doc, docs = [])=>{
|
|
12
|
+
const parent = doc[pluginConfig?.parentFieldSlug || 'parent'];
|
|
13
|
+
let retrievedParent;
|
|
14
|
+
if (parent) {
|
|
15
|
+
// If not auto-populated, and we have an ID
|
|
16
|
+
if (typeof parent === 'string' || typeof parent === 'number') {
|
|
17
|
+
retrievedParent = await req.payload.findByID({
|
|
18
|
+
req,
|
|
19
|
+
id: parent,
|
|
20
|
+
collection: collection.slug,
|
|
21
|
+
depth: 0,
|
|
22
|
+
disableErrors: true
|
|
23
|
+
});
|
|
43
24
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
case 0:
|
|
55
|
-
parent = doc[(pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.parentFieldSlug) || 'parent'];
|
|
56
|
-
if (!parent) return [3 /*break*/, 3];
|
|
57
|
-
if (!(typeof parent === 'string')) return [3 /*break*/, 2];
|
|
58
|
-
return [4 /*yield*/, req.payload.findByID({
|
|
59
|
-
req: req,
|
|
60
|
-
id: parent,
|
|
61
|
-
collection: collection.slug,
|
|
62
|
-
depth: 0,
|
|
63
|
-
disableErrors: true,
|
|
64
|
-
})];
|
|
65
|
-
case 1:
|
|
66
|
-
retrievedParent = _a.sent();
|
|
67
|
-
_a.label = 2;
|
|
68
|
-
case 2:
|
|
69
|
-
// If auto-populated
|
|
70
|
-
if (typeof parent === 'object') {
|
|
71
|
-
retrievedParent = parent;
|
|
72
|
-
}
|
|
73
|
-
if (retrievedParent) {
|
|
74
|
-
if (retrievedParent.parent) {
|
|
75
|
-
return [2 /*return*/, getParents(req, pluginConfig, collection, retrievedParent, __spreadArray([
|
|
76
|
-
retrievedParent
|
|
77
|
-
], docs, true))];
|
|
78
|
-
}
|
|
79
|
-
return [2 /*return*/, __spreadArray([retrievedParent], docs, true)];
|
|
80
|
-
}
|
|
81
|
-
_a.label = 3;
|
|
82
|
-
case 3: return [2 /*return*/, docs];
|
|
25
|
+
// If auto-populated
|
|
26
|
+
if (typeof parent === 'object') {
|
|
27
|
+
retrievedParent = parent;
|
|
28
|
+
}
|
|
29
|
+
if (retrievedParent) {
|
|
30
|
+
if (retrievedParent.parent) {
|
|
31
|
+
return getParents(req, pluginConfig, collection, retrievedParent, [
|
|
32
|
+
retrievedParent,
|
|
33
|
+
...docs
|
|
34
|
+
]);
|
|
83
35
|
}
|
|
84
|
-
|
|
85
|
-
|
|
36
|
+
return [
|
|
37
|
+
retrievedParent,
|
|
38
|
+
...docs
|
|
39
|
+
];
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return docs;
|
|
86
43
|
};
|
|
87
|
-
|
|
88
|
-
|
|
44
|
+
const _default = getParents;
|
|
45
|
+
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZ2V0UGFyZW50cy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENvbGxlY3Rpb25Db25maWcgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgdHlwZSB7IFBsdWdpbkNvbmZpZyB9IGZyb20gJy4uL3R5cGVzJ1xuXG5jb25zdCBnZXRQYXJlbnRzID0gYXN5bmMgKFxuICByZXE6IGFueSxcbiAgcGx1Z2luQ29uZmlnOiBQbHVnaW5Db25maWcsXG4gIGNvbGxlY3Rpb246IENvbGxlY3Rpb25Db25maWcsXG4gIGRvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIGRvY3M6IEFycmF5PFJlY29yZDxzdHJpbmcsIHVua25vd24+PiA9IFtdLFxuKTogUHJvbWlzZTxBcnJheTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4+ID0+IHtcbiAgY29uc3QgcGFyZW50ID0gZG9jW3BsdWdpbkNvbmZpZz8ucGFyZW50RmllbGRTbHVnIHx8ICdwYXJlbnQnXVxuICBsZXQgcmV0cmlldmVkUGFyZW50XG5cbiAgaWYgKHBhcmVudCkge1xuICAgIC8vIElmIG5vdCBhdXRvLXBvcHVsYXRlZCwgYW5kIHdlIGhhdmUgYW4gSURcbiAgICBpZiAodHlwZW9mIHBhcmVudCA9PT0gJ3N0cmluZycgfHwgdHlwZW9mIHBhcmVudCA9PT0gJ251bWJlcicpIHtcbiAgICAgIHJldHJpZXZlZFBhcmVudCA9IGF3YWl0IHJlcS5wYXlsb2FkLmZpbmRCeUlEKHtcbiAgICAgICAgcmVxLFxuICAgICAgICBpZDogcGFyZW50LFxuICAgICAgICBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uLnNsdWcsXG4gICAgICAgIGRlcHRoOiAwLFxuICAgICAgICBkaXNhYmxlRXJyb3JzOiB0cnVlLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyBJZiBhdXRvLXBvcHVsYXRlZFxuICAgIGlmICh0eXBlb2YgcGFyZW50ID09PSAnb2JqZWN0Jykge1xuICAgICAgcmV0cmlldmVkUGFyZW50ID0gcGFyZW50XG4gICAgfVxuXG4gICAgaWYgKHJldHJpZXZlZFBhcmVudCkge1xuICAgICAgaWYgKHJldHJpZXZlZFBhcmVudC5wYXJlbnQpIHtcbiAgICAgICAgcmV0dXJuIGdldFBhcmVudHMocmVxLCBwbHVnaW5Db25maWcsIGNvbGxlY3Rpb24sIHJldHJpZXZlZFBhcmVudCwgW1xuICAgICAgICAgIHJldHJpZXZlZFBhcmVudCxcbiAgICAgICAgICAuLi5kb2NzLFxuICAgICAgICBdKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gW3JldHJpZXZlZFBhcmVudCwgLi4uZG9jc11cbiAgICB9XG4gIH1cblxuICByZXR1cm4gZG9jc1xufVxuXG5leHBvcnQgZGVmYXVsdCBnZXRQYXJlbnRzXG4iXSwibmFtZXMiOlsiZ2V0UGFyZW50cyIsInJlcSIsInBsdWdpbkNvbmZpZyIsImNvbGxlY3Rpb24iLCJkb2MiLCJkb2NzIiwicGFyZW50IiwicGFyZW50RmllbGRTbHVnIiwicmV0cmlldmVkUGFyZW50IiwicGF5bG9hZCIsImZpbmRCeUlEIiwiaWQiLCJzbHVnIiwiZGVwdGgiLCJkaXNhYmxlRXJyb3JzIl0sIm1hcHBpbmdzIjoiOzs7OytCQThDQTs7O2VBQUE7OztBQTFDQSxNQUFNQSxhQUFhLE9BQ2pCQyxLQUNBQyxjQUNBQyxZQUNBQyxLQUNBQyxPQUF1QyxFQUFFO0lBRXpDLE1BQU1DLFNBQVNGLEdBQUcsQ0FBQ0YsY0FBY0ssbUJBQW1CLFNBQVM7SUFDN0QsSUFBSUM7SUFFSixJQUFJRixRQUFRO1FBQ1YsMkNBQTJDO1FBQzNDLElBQUksT0FBT0EsV0FBVyxZQUFZLE9BQU9BLFdBQVcsVUFBVTtZQUM1REUsa0JBQWtCLE1BQU1QLElBQUlRLE9BQU8sQ0FBQ0MsUUFBUSxDQUFDO2dCQUMzQ1Q7Z0JBQ0FVLElBQUlMO2dCQUNKSCxZQUFZQSxXQUFXUyxJQUFJO2dCQUMzQkMsT0FBTztnQkFDUEMsZUFBZTtZQUNqQjtRQUNGO1FBRUEsb0JBQW9CO1FBQ3BCLElBQUksT0FBT1IsV0FBVyxVQUFVO1lBQzlCRSxrQkFBa0JGO1FBQ3BCO1FBRUEsSUFBSUUsaUJBQWlCO1lBQ25CLElBQUlBLGdCQUFnQkYsTUFBTSxFQUFFO2dCQUMxQixPQUFPTixXQUFXQyxLQUFLQyxjQUFjQyxZQUFZSyxpQkFBaUI7b0JBQ2hFQTt1QkFDR0g7aUJBQ0o7WUFDSDtZQUVBLE9BQU87Z0JBQUNHO21CQUFvQkg7YUFBSztRQUNuQztJQUNGO0lBRUEsT0FBT0E7QUFDVDtNQUVBLFdBQWVMIn0=
|
|
@@ -2,3 +2,4 @@ import type { CollectionConfig } from 'payload/types';
|
|
|
2
2
|
import type { PluginConfig } from '../types';
|
|
3
3
|
declare const populateBreadcrumbs: (req: any, pluginConfig: PluginConfig, collection: CollectionConfig, data: any, originalDoc?: any) => Promise<any>;
|
|
4
4
|
export default populateBreadcrumbs;
|
|
5
|
+
//# sourceMappingURL=populateBreadcrumbs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"populateBreadcrumbs.d.ts","sourceRoot":"","sources":["../../src/utilities/populateBreadcrumbs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAErD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAK5C,QAAA,MAAM,mBAAmB,QAClB,GAAG,gBACM,YAAY,cACd,gBAAgB,QACtB,GAAG,gBACK,GAAG,KAChB,QAAQ,GAAG,CA4Bb,CAAA;AAED,eAAe,mBAAmB,CAAA"}
|
|
@@ -1,86 +1,43 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
-
function step(op) {
|
|
27
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
-
switch (op[0]) {
|
|
32
|
-
case 0: case 1: t = op; break;
|
|
33
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
-
default:
|
|
37
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
-
if (t[2]) _.ops.pop();
|
|
42
|
-
_.trys.pop(); continue;
|
|
43
|
-
}
|
|
44
|
-
op = body.call(thisArg, _);
|
|
45
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
47
9
|
}
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
10
|
+
});
|
|
11
|
+
const _formatBreadcrumb = /*#__PURE__*/ _interop_require_default(require("./formatBreadcrumb"));
|
|
12
|
+
const _getParents = /*#__PURE__*/ _interop_require_default(require("./getParents"));
|
|
13
|
+
function _interop_require_default(obj) {
|
|
14
|
+
return obj && obj.__esModule ? obj : {
|
|
15
|
+
default: obj
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
const populateBreadcrumbs = async (req, pluginConfig, collection, data, originalDoc)=>{
|
|
19
|
+
const newData = data;
|
|
20
|
+
const breadcrumbDocs = [
|
|
21
|
+
...await (0, _getParents.default)(req, pluginConfig, collection, {
|
|
22
|
+
...originalDoc,
|
|
23
|
+
...data
|
|
24
|
+
})
|
|
25
|
+
];
|
|
26
|
+
const currentDocBreadcrumb = {
|
|
27
|
+
...originalDoc,
|
|
28
|
+
...data
|
|
29
|
+
};
|
|
30
|
+
if (originalDoc?.id) {
|
|
31
|
+
currentDocBreadcrumb.id = originalDoc?.id;
|
|
55
32
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
return
|
|
33
|
+
breadcrumbDocs.push(currentDocBreadcrumb);
|
|
34
|
+
const breadcrumbs = breadcrumbDocs.map((_, i)=>(0, _formatBreadcrumb.default)(pluginConfig, collection, breadcrumbDocs.slice(0, i + 1))) // eslint-disable-line function-paren-newline
|
|
35
|
+
;
|
|
36
|
+
return {
|
|
37
|
+
...newData,
|
|
38
|
+
[pluginConfig?.breadcrumbsFieldSlug || 'breadcrumbs']: breadcrumbs
|
|
39
|
+
};
|
|
60
40
|
};
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
var populateBreadcrumbs = function (req, pluginConfig, collection, data, originalDoc) { return __awaiter(void 0, void 0, void 0, function () {
|
|
65
|
-
var newData, breadcrumbDocs, _a, breadcrumbs;
|
|
66
|
-
var _b;
|
|
67
|
-
return __generator(this, function (_c) {
|
|
68
|
-
switch (_c.label) {
|
|
69
|
-
case 0:
|
|
70
|
-
newData = data;
|
|
71
|
-
_a = [[]];
|
|
72
|
-
return [4 /*yield*/, (0, getParents_1.default)(req, pluginConfig, collection, __assign(__assign({}, originalDoc), data))];
|
|
73
|
-
case 1:
|
|
74
|
-
breadcrumbDocs = __spreadArray.apply(void 0, [__spreadArray.apply(void 0, _a.concat([(_c.sent()), true])), [
|
|
75
|
-
__assign(__assign(__assign({}, originalDoc), data), { id: originalDoc === null || originalDoc === void 0 ? void 0 : originalDoc.id }),
|
|
76
|
-
], false]);
|
|
77
|
-
breadcrumbs = breadcrumbDocs.map(function (_, i) {
|
|
78
|
-
return (0, formatBreadcrumb_1.default)(pluginConfig, collection, breadcrumbDocs.slice(0, i + 1));
|
|
79
|
-
}) // eslint-disable-line function-paren-newline
|
|
80
|
-
;
|
|
81
|
-
return [2 /*return*/, __assign(__assign({}, newData), (_b = {}, _b[(pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.breadcrumbsFieldSlug) || 'breadcrumbs'] = breadcrumbs, _b))];
|
|
82
|
-
}
|
|
83
|
-
});
|
|
84
|
-
}); };
|
|
85
|
-
exports.default = populateBreadcrumbs;
|
|
86
|
-
//# sourceMappingURL=populateBreadcrumbs.js.map
|
|
41
|
+
const _default = populateBreadcrumbs;
|
|
42
|
+
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcG9wdWxhdGVCcmVhZGNydW1icy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENvbGxlY3Rpb25Db25maWcgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgdHlwZSB7IFBsdWdpbkNvbmZpZyB9IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgZm9ybWF0QnJlYWRjcnVtYiBmcm9tICcuL2Zvcm1hdEJyZWFkY3J1bWInXG5pbXBvcnQgZ2V0UGFyZW50cyBmcm9tICcuL2dldFBhcmVudHMnXG5cbmNvbnN0IHBvcHVsYXRlQnJlYWRjcnVtYnMgPSBhc3luYyAoXG4gIHJlcTogYW55LFxuICBwbHVnaW5Db25maWc6IFBsdWdpbkNvbmZpZyxcbiAgY29sbGVjdGlvbjogQ29sbGVjdGlvbkNvbmZpZyxcbiAgZGF0YTogYW55LFxuICBvcmlnaW5hbERvYz86IGFueSxcbik6IFByb21pc2U8YW55PiA9PiB7XG4gIGNvbnN0IG5ld0RhdGEgPSBkYXRhXG4gIGNvbnN0IGJyZWFkY3J1bWJEb2NzID0gW1xuICAgIC4uLihhd2FpdCBnZXRQYXJlbnRzKHJlcSwgcGx1Z2luQ29uZmlnLCBjb2xsZWN0aW9uLCB7XG4gICAgICAuLi5vcmlnaW5hbERvYyxcbiAgICAgIC4uLmRhdGEsXG4gICAgfSkpLFxuICBdXG5cbiAgY29uc3QgY3VycmVudERvY0JyZWFkY3J1bWIgPSB7XG4gICAgLi4ub3JpZ2luYWxEb2MsXG4gICAgLi4uZGF0YSxcbiAgfVxuXG4gIGlmIChvcmlnaW5hbERvYz8uaWQpIHtcbiAgICBjdXJyZW50RG9jQnJlYWRjcnVtYi5pZCA9IG9yaWdpbmFsRG9jPy5pZFxuICB9XG5cbiAgYnJlYWRjcnVtYkRvY3MucHVzaChjdXJyZW50RG9jQnJlYWRjcnVtYilcblxuICBjb25zdCBicmVhZGNydW1icyA9IGJyZWFkY3J1bWJEb2NzLm1hcCgoXywgaSkgPT5cbiAgICBmb3JtYXRCcmVhZGNydW1iKHBsdWdpbkNvbmZpZywgY29sbGVjdGlvbiwgYnJlYWRjcnVtYkRvY3Muc2xpY2UoMCwgaSArIDEpKSxcbiAgKSAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLXBhcmVuLW5ld2xpbmVcblxuICByZXR1cm4ge1xuICAgIC4uLm5ld0RhdGEsXG4gICAgW3BsdWdpbkNvbmZpZz8uYnJlYWRjcnVtYnNGaWVsZFNsdWcgfHwgJ2JyZWFkY3J1bWJzJ106IGJyZWFkY3J1bWJzLFxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IHBvcHVsYXRlQnJlYWRjcnVtYnNcbiJdLCJuYW1lcyI6WyJwb3B1bGF0ZUJyZWFkY3J1bWJzIiwicmVxIiwicGx1Z2luQ29uZmlnIiwiY29sbGVjdGlvbiIsImRhdGEiLCJvcmlnaW5hbERvYyIsIm5ld0RhdGEiLCJicmVhZGNydW1iRG9jcyIsImdldFBhcmVudHMiLCJjdXJyZW50RG9jQnJlYWRjcnVtYiIsImlkIiwicHVzaCIsImJyZWFkY3J1bWJzIiwibWFwIiwiXyIsImkiLCJmb3JtYXRCcmVhZGNydW1iIiwic2xpY2UiLCJicmVhZGNydW1ic0ZpZWxkU2x1ZyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkEyQ0E7OztlQUFBOzs7eUVBdkM2QjttRUFDTjs7Ozs7O0FBRXZCLE1BQU1BLHNCQUFzQixPQUMxQkMsS0FDQUMsY0FDQUMsWUFDQUMsTUFDQUM7SUFFQSxNQUFNQyxVQUFVRjtJQUNoQixNQUFNRyxpQkFBaUI7V0FDakIsTUFBTUMsSUFBQUEsbUJBQVUsRUFBQ1AsS0FBS0MsY0FBY0MsWUFBWTtZQUNsRCxHQUFHRSxXQUFXO1lBQ2QsR0FBR0QsSUFBSTtRQUNUO0tBQ0Q7SUFFRCxNQUFNSyx1QkFBdUI7UUFDM0IsR0FBR0osV0FBVztRQUNkLEdBQUdELElBQUk7SUFDVDtJQUVBLElBQUlDLGFBQWFLLElBQUk7UUFDbkJELHFCQUFxQkMsRUFBRSxHQUFHTCxhQUFhSztJQUN6QztJQUVBSCxlQUFlSSxJQUFJLENBQUNGO0lBRXBCLE1BQU1HLGNBQWNMLGVBQWVNLEdBQUcsQ0FBQyxDQUFDQyxHQUFHQyxJQUN6Q0MsSUFBQUEseUJBQWdCLEVBQUNkLGNBQWNDLFlBQVlJLGVBQWVVLEtBQUssQ0FBQyxHQUFHRixJQUFJLEtBQ3ZFLDZDQUE2Qzs7SUFFL0MsT0FBTztRQUNMLEdBQUdULE9BQU87UUFDVixDQUFDSixjQUFjZ0Isd0JBQXdCLGNBQWMsRUFBRU47SUFDekQ7QUFDRjtNQUVBLFdBQWVaIn0=
|
package/package.json
CHANGED
|
@@ -1,59 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/plugin-nested-docs",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"
|
|
5
|
-
"repository": "
|
|
6
|
-
"description": "Nested documents plugin for Payload",
|
|
7
|
-
"main": "dist/index.js",
|
|
8
|
-
"types": "dist/index.d.ts",
|
|
9
|
-
"scripts": {
|
|
10
|
-
"build": "tsc",
|
|
11
|
-
"test": "echo \"Error: no test specified\" && exit 1",
|
|
12
|
-
"lint": "eslint src",
|
|
13
|
-
"lint:fix": "eslint --fix --ext .ts,.tsx src",
|
|
14
|
-
"clean": "rimraf dist",
|
|
15
|
-
"prepublishOnly": "yarn clean && yarn build"
|
|
16
|
-
},
|
|
17
|
-
"keywords": [
|
|
18
|
-
"payload",
|
|
19
|
-
"cms",
|
|
20
|
-
"plugin",
|
|
21
|
-
"typescript",
|
|
22
|
-
"react",
|
|
23
|
-
"breadcrumbs",
|
|
24
|
-
"nested pages",
|
|
25
|
-
"parent pages"
|
|
26
|
-
],
|
|
27
|
-
"author": "dev@payloadcms.com",
|
|
3
|
+
"version": "1.0.9",
|
|
4
|
+
"description": "The official Nested Docs plugin for Payload",
|
|
5
|
+
"repository": "https://github.com/payloadcms/payload",
|
|
28
6
|
"license": "MIT",
|
|
29
|
-
"
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
7
|
+
"homepage": "https://payloadcms.com",
|
|
8
|
+
"author": "Payload CMS, Inc.",
|
|
9
|
+
"main": "./dist/index.js",
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
33
11
|
"devDependencies": {
|
|
34
|
-
"@payloadcms/eslint-config": "
|
|
35
|
-
"
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
"
|
|
40
|
-
"@typescript-eslint/parser": "^5.51.0",
|
|
41
|
-
"copyfiles": "^2.4.1",
|
|
42
|
-
"cross-env": "^7.0.3",
|
|
43
|
-
"eslint": "^8.19.0",
|
|
44
|
-
"eslint-config-prettier": "^8.5.0",
|
|
45
|
-
"eslint-plugin-filenames": "^1.3.2",
|
|
46
|
-
"eslint-plugin-import": "2.25.4",
|
|
47
|
-
"eslint-plugin-prettier": "^4.0.0",
|
|
48
|
-
"eslint-plugin-react-hooks": "^4.6.0",
|
|
49
|
-
"eslint-plugin-simple-import-sort": "^10.0.0",
|
|
50
|
-
"nodemon": "^2.0.6",
|
|
51
|
-
"payload": "^1.8.2",
|
|
52
|
-
"prettier": "^2.7.1",
|
|
53
|
-
"react": "^18.0.0",
|
|
54
|
-
"rimraf": "^5.0.5",
|
|
55
|
-
"ts-node": "^9.1.1",
|
|
56
|
-
"typescript": "^4.8.4"
|
|
12
|
+
"@payloadcms/eslint-config": "1.0.0",
|
|
13
|
+
"payload": "2.2.0"
|
|
14
|
+
},
|
|
15
|
+
"exports": null,
|
|
16
|
+
"publishConfig": {
|
|
17
|
+
"registry": "https://registry.npmjs.org/"
|
|
57
18
|
},
|
|
58
19
|
"files": [
|
|
59
20
|
"dist",
|
|
@@ -61,5 +22,12 @@
|
|
|
61
22
|
"fields.d.ts",
|
|
62
23
|
"types.js",
|
|
63
24
|
"types.d.ts"
|
|
64
|
-
]
|
|
65
|
-
|
|
25
|
+
],
|
|
26
|
+
"scripts": {
|
|
27
|
+
"build": "pnpm copyfiles && pnpm build:swc && pnpm build:types",
|
|
28
|
+
"build:swc": "swc ./src -d ./dist --config-file .swcrc",
|
|
29
|
+
"build:types": "tsc --emitDeclarationOnly --outDir dist",
|
|
30
|
+
"clean": "rimraf {dist,*.tsbuildinfo}",
|
|
31
|
+
"copyfiles": "copyfiles -u 1 \"src/**/*.{html,css,scss,ttf,woff,woff2,eot,svg,jpg,png,json}\" dist/"
|
|
32
|
+
}
|
|
33
|
+
}
|