payload 0.12.11-beta.0 → 0.13.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/CHANGELOG.md +18 -66
- package/components/forms.ts +2 -1
- package/components/index.js +2 -2
- package/dist/admin/components/elements/PreviewButton/index.js +19 -4
- package/dist/admin/components/elements/SearchFilter/index.js +6 -3
- package/dist/admin/components/elements/WhereBuilder/Condition/Relationship/types.d.ts +1 -1
- package/dist/admin/components/forms/DraggableSection/SectionTitle/index.js +2 -2
- package/dist/admin/components/forms/field-types/Array/Array.js +2 -2
- package/dist/admin/components/forms/field-types/Blocks/Blocks.js +2 -2
- package/dist/admin/components/forms/field-types/Checkbox/index.js +2 -2
- package/dist/admin/components/forms/field-types/Code/Code.js +2 -2
- package/dist/admin/components/forms/field-types/ConfirmPassword/index.js +2 -2
- package/dist/admin/components/forms/field-types/DateTime/index.js +2 -2
- package/dist/admin/components/forms/field-types/Email/index.js +2 -2
- package/dist/admin/components/forms/field-types/HiddenInput/index.js +2 -2
- package/dist/admin/components/forms/field-types/Number/index.js +2 -2
- package/dist/admin/components/forms/field-types/Password/index.js +2 -2
- package/dist/admin/components/forms/field-types/Point/index.js +2 -2
- package/dist/admin/components/forms/field-types/RadioGroup/index.js +2 -2
- package/dist/admin/components/forms/field-types/Relationship/index.js +2 -2
- package/dist/admin/components/forms/field-types/Relationship/types.d.ts +1 -1
- package/dist/admin/components/forms/field-types/RichText/RichText.js +2 -2
- package/dist/admin/components/forms/field-types/Select/index.js +32 -16
- package/dist/admin/components/forms/field-types/Text/index.js +19 -6
- package/dist/admin/components/forms/field-types/Textarea/index.js +2 -2
- package/dist/admin/components/forms/field-types/Upload/index.js +21 -8
- package/dist/admin/components/forms/useField/index.d.ts +3 -0
- package/dist/admin/components/forms/{useFieldType → useField}/index.js +30 -9
- package/dist/admin/components/forms/{useFieldType → useField}/types.d.ts +0 -0
- package/dist/admin/components/forms/{useFieldType → useField}/types.js +0 -0
- package/dist/admin/components/views/collections/Edit/Auth/APIKey.js +2 -2
- package/dist/admin/components/views/collections/Edit/Upload/index.js +2 -2
- package/dist/admin/components/views/collections/List/types.d.ts +1 -1
- package/dist/auth/getExecuteStaticAccess.d.ts +1 -1
- package/dist/auth/getExecuteStaticAccess.js +20 -4
- package/dist/bin/generateTypes.js +20 -9
- package/dist/collections/config/types.d.ts +102 -39
- package/dist/collections/operations/create.d.ts +1 -0
- package/dist/collections/operations/create.js +12 -4
- package/dist/collections/operations/delete.js +5 -5
- package/dist/collections/operations/find.d.ts +2 -2
- package/dist/collections/operations/find.js +17 -8
- package/dist/collections/operations/findByID.d.ts +2 -3
- package/dist/collections/operations/findByID.js +1 -1
- package/dist/collections/operations/local/create.d.ts +1 -0
- package/dist/collections/operations/local/create.js +3 -2
- package/dist/collections/operations/local/delete.d.ts +2 -1
- package/dist/collections/operations/local/delete.js +1 -1
- package/dist/collections/operations/local/find.d.ts +2 -2
- package/dist/collections/operations/local/find.js +1 -1
- package/dist/collections/operations/local/findByID.d.ts +2 -1
- package/dist/collections/operations/local/findByID.js +1 -1
- package/dist/collections/operations/local/update.d.ts +2 -1
- package/dist/collections/operations/local/update.js +1 -1
- package/dist/collections/operations/update.js +11 -3
- package/dist/collections/requestHandlers/find.d.ts +2 -2
- package/dist/collections/requestHandlers/find.js +1 -1
- package/dist/config/types.d.ts +4 -1
- package/dist/express/static.js +2 -2
- package/dist/fields/baseFields/getBaseUploadFields.js +3 -1
- package/dist/fields/config/types.d.ts +20 -15
- package/dist/fields/config/types.js +1 -1
- package/dist/fields/validations.d.ts +17 -17
- package/dist/index.d.ts +8 -9
- package/dist/index.js +1 -1
- package/dist/mongoose/buildQuery.js +14 -11
- package/dist/mongoose/buildSchema.js +6 -1
- package/dist/mongoose/sanitizeFormattedValue.js +2 -2
- package/dist/uploads/fileExists.d.ts +2 -2
- package/dist/uploads/fileExists.js +4 -3
- package/dist/uploads/fileOrDocExists.d.ts +3 -0
- package/dist/uploads/fileOrDocExists.js +22 -0
- package/dist/uploads/getSafeFilename.d.ts +2 -1
- package/dist/uploads/getSafeFilename.js +4 -4
- package/dist/uploads/imageResizer.d.ts +11 -1
- package/dist/uploads/imageResizer.js +2 -2
- package/dist/utilities/sanitizeInternalFields.d.ts +2 -1
- package/dist/utilities/sanitizeInternalFields.js +1 -1
- package/docs/admin/components.mdx +3 -3
- package/docs/fields/blocks.mdx +9 -0
- package/docs/fields/overview.mdx +12 -0
- package/docs/fields/rich-text.mdx +11 -0
- package/docs/hooks/collections.mdx +23 -0
- package/docs/hooks/fields.mdx +28 -0
- package/docs/hooks/globals.mdx +17 -0
- package/docs/typescript/generating-types.mdx +114 -0
- package/docs/typescript/overview.mdx +36 -0
- package/package.json +1 -1
- package/types.d.ts +18 -2
- package/dist/admin/components/forms/useFieldType/index.d.ts +0 -3
|
@@ -65,6 +65,7 @@ const localizeSchema = (field, schema, locales) => {
|
|
|
65
65
|
return schema;
|
|
66
66
|
};
|
|
67
67
|
const buildSchema = (config, configFields, buildSchemaOptions = {}) => {
|
|
68
|
+
var _a;
|
|
68
69
|
const { allowIDField, options } = buildSchemaOptions;
|
|
69
70
|
let fields = {};
|
|
70
71
|
let schemaFields = configFields;
|
|
@@ -93,6 +94,10 @@ const buildSchema = (config, configFields, buildSchemaOptions = {}) => {
|
|
|
93
94
|
}
|
|
94
95
|
}
|
|
95
96
|
});
|
|
97
|
+
if ((_a = buildSchemaOptions === null || buildSchemaOptions === void 0 ? void 0 : buildSchemaOptions.options) === null || _a === void 0 ? void 0 : _a.timestamps) {
|
|
98
|
+
indexFields.push({ createdAt: 1 });
|
|
99
|
+
indexFields.push({ updatedAt: 1 });
|
|
100
|
+
}
|
|
96
101
|
const schema = new mongoose_1.Schema(fields, options);
|
|
97
102
|
indexFields.forEach((index) => {
|
|
98
103
|
schema.index(index);
|
|
@@ -346,4 +351,4 @@ const fieldToSchemaMap = {
|
|
|
346
351
|
},
|
|
347
352
|
};
|
|
348
353
|
exports.default = buildSchema;
|
|
349
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRTY2hlbWEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9uZ29vc2UvYnVpbGRTY2hlbWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxzREFBc0Q7QUFDdEQsMkNBQTJDO0FBQzNDLDREQUE0RDtBQUM1RCx5Q0FBeUM7QUFDekMsdUNBQW1FO0FBRW5FLGtEQUFxVjtBQUNyVixzRkFBOEQ7QUFXOUQsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLE1BQWUsRUFBRSxNQUFjLEVBQUUsTUFBdUIsRUFBRSxrQkFBc0MsRUFBRSxFQUFFO0lBQ2xJLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUN2QixNQUFNLGNBQWMsR0FBRyxLQUFtQixDQUFDO1FBQzNDLElBQUksY0FBYyxDQUFDLElBQUksS0FBSyxRQUFRLElBQUksY0FBYyxDQUFDLE1BQU0sSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDakcsY0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFnQixFQUFFLEVBQUU7Z0JBQ2pELElBQUksaUJBQWlCLEdBQUcsRUFBRSxDQUFDO2dCQUUzQixTQUFTLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO29CQUN0QyxNQUFNLFdBQVcsR0FBeUIsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUM1RSxJQUFJLFdBQVcsRUFBRTt3QkFDZixpQkFBaUIsR0FBRyxXQUFXLENBQUMsVUFBVSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO3FCQUM1RjtnQkFDSCxDQUFDLENBQUMsQ0FBQztnQkFFSCxNQUFNLFdBQVcsR0FBRyxJQUFJLGlCQUFNLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVB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
|
|
354
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRTY2hlbWEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9uZ29vc2UvYnVpbGRTY2hlbWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxzREFBc0Q7QUFDdEQsMkNBQTJDO0FBQzNDLDREQUE0RDtBQUM1RCx5Q0FBeUM7QUFDekMsdUNBQW1FO0FBRW5FLGtEQUFxVjtBQUNyVixzRkFBOEQ7QUFXOUQsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLE1BQWUsRUFBRSxNQUFjLEVBQUUsTUFBdUIsRUFBRSxrQkFBc0MsRUFBRSxFQUFFO0lBQ2xJLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUN2QixNQUFNLGNBQWMsR0FBRyxLQUFtQixDQUFDO1FBQzNDLElBQUksY0FBYyxDQUFDLElBQUksS0FBSyxRQUFRLElBQUksY0FBYyxDQUFDLE1BQU0sSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDakcsY0FBYyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFnQixFQUFFLEVBQUU7Z0JBQ2pELElBQUksaUJBQWlCLEdBQUcsRUFBRSxDQUFDO2dCQUUzQixTQUFTLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO29CQUN0QyxNQUFNLFdBQVcsR0FBeUIsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUM1RSxJQUFJLFdBQVcsRUFBRTt3QkFDZixpQkFBaUIsR0FBRyxXQUFXLENBQUMsVUFBVSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO3FCQUM1RjtnQkFDSCxDQUFDLENBQUMsQ0FBQztnQkFFSCxNQUFNLFdBQVcsR0FBRyxJQUFJLGlCQUFNLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVB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
|
|
@@ -83,7 +83,7 @@ const sanitizeQueryValue = (schemaType, path, operator, val) => {
|
|
|
83
83
|
}
|
|
84
84
|
}
|
|
85
85
|
if (operator === 'like' && path !== '_id') {
|
|
86
|
-
formattedValue = { $regex: formattedValue, $options: '
|
|
86
|
+
formattedValue = { $regex: formattedValue, $options: 'i' };
|
|
87
87
|
}
|
|
88
88
|
if (operator === 'exists') {
|
|
89
89
|
formattedValue = (formattedValue === 'true' || formattedValue === true);
|
|
@@ -91,4 +91,4 @@ const sanitizeQueryValue = (schemaType, path, operator, val) => {
|
|
|
91
91
|
return formattedValue;
|
|
92
92
|
};
|
|
93
93
|
exports.sanitizeQueryValue = sanitizeQueryValue;
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FuaXRpemVGb3JtYXR0ZWRWYWx1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb25nb29zZS9zYW5pdGl6ZUZvcm1hdHRlZFZhbHVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHdEQUFnRDtBQUNoRCxxRkFBa0Y7QUFDbEYsaUVBQThEO0FBRXZELE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxVQUFzQixFQUFFLElBQVksRUFBRSxRQUFnQixFQUFFLEdBQVEsRUFBVyxFQUFFO0lBQzlHLElBQUksY0FBYyxHQUFHLEdBQUcsQ0FBQztJQUN6QixNQUFNLGFBQWEsR0FBRyxJQUFBLDJDQUFvQixFQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRXZELHlCQUF5QjtJQUV6QixJQUFJLElBQUksS0FBSyxLQUFLLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUM1RSxJQUFJLENBQUEsVUFBVSxhQUFWLFVBQVUsdUJBQVYsVUFBVSxDQUFFLFFBQVEsTUFBSyxVQUFVLEVBQUU7WUFDdkMsTUFBTSxPQUFPLEdBQUcsa0JBQVEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUVyRCxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUNaLE9BQU8sU0FBUyxDQUFDO2FBQ2xCO1NBQ0Y7UUFFRCxJQUFJLENBQUEsVUFBVSxhQUFWLFVBQVUsdUJBQVYsVUFBVSxDQUFFLFFBQVEsTUFBSyxRQUFRLEVBQUU7WUFDckMsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBRXJDLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsRUFBRTtnQkFDOUIsT0FBTyxTQUFTLENBQUM7YUFDbEI7U0FDRjtLQUNGO0lBRUQsa0RBQWtEO0lBRWxELElBQUksQ0FBQSxV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
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const
|
|
2
|
-
export default
|
|
1
|
+
declare const fileExists: (filename: string) => Promise<boolean>;
|
|
2
|
+
export default fileExists;
|
|
@@ -6,13 +6,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
const fs_1 = __importDefault(require("fs"));
|
|
7
7
|
const util_1 = require("util");
|
|
8
8
|
const stat = (0, util_1.promisify)(fs_1.default.stat);
|
|
9
|
-
|
|
9
|
+
const fileExists = async (filename) => {
|
|
10
10
|
try {
|
|
11
|
-
await stat(
|
|
11
|
+
await stat(filename);
|
|
12
12
|
return true;
|
|
13
13
|
}
|
|
14
14
|
catch (err) {
|
|
15
15
|
return false;
|
|
16
16
|
}
|
|
17
17
|
};
|
|
18
|
-
|
|
18
|
+
exports.default = fileExists;
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZUV4aXN0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91cGxvYWRzL2ZpbGVFeGlzdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw0Q0FBb0I7QUFDcEIsK0JBQWlDO0FBRWpDLE1BQU0sSUFBSSxHQUFHLElBQUEsZ0JBQVMsRUFBQyxZQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFaEMsTUFBTSxVQUFVLEdBQUcsS0FBSyxFQUFFLFFBQWdCLEVBQW9CLEVBQUU7SUFDOUQsSUFBSTtRQUNGLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXJCLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFBQyxPQUFPLEdBQUcsRUFBRTtRQUNaLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7QUFDSCxDQUFDLENBQUM7QUFFRixrQkFBZSxVQUFVLENBQUMifQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const fs_1 = __importDefault(require("fs"));
|
|
7
|
+
const util_1 = require("util");
|
|
8
|
+
const stat = (0, util_1.promisify)(fs_1.default.stat);
|
|
9
|
+
const fileOrDocExists = async (Model, path, filename) => {
|
|
10
|
+
try {
|
|
11
|
+
const doc = await Model.findOne({ filename });
|
|
12
|
+
if (doc)
|
|
13
|
+
return true;
|
|
14
|
+
await stat(`${path}/${filename}`);
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
catch (err) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
exports.default = fileOrDocExists;
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZU9yRG9jRXhpc3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3VwbG9hZHMvZmlsZU9yRG9jRXhpc3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNENBQW9CO0FBQ3BCLCtCQUFpQztBQUdqQyxNQUFNLElBQUksR0FBRyxJQUFBLGdCQUFTLEVBQUMsWUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRWhDLE1BQU0sZUFBZSxHQUFHLEtBQUssRUFBRSxLQUFzQixFQUFFLElBQVksRUFBRSxRQUFnQixFQUFvQixFQUFFO0lBQ3pHLElBQUk7UUFDRixNQUFNLEdBQUcsR0FBRyxNQUFNLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQzlDLElBQUksR0FBRztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRXJCLE1BQU0sSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFFbEMsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUFDLE9BQU8sR0FBRyxFQUFFO1FBQ1osT0FBTyxLQUFLLENBQUM7S0FDZDtBQUNILENBQUMsQ0FBQztBQUVGLGtCQUFlLGVBQWUsQ0FBQyJ9
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
|
|
1
|
+
import { CollectionModel } from '../collections/config/types';
|
|
2
|
+
declare function getSafeFileName(Model: CollectionModel, staticPath: string, desiredFilename: string): Promise<string>;
|
|
2
3
|
export default getSafeFileName;
|
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const sanitize_filename_1 = __importDefault(require("sanitize-filename"));
|
|
7
|
-
const
|
|
7
|
+
const fileOrDocExists_1 = __importDefault(require("./fileOrDocExists"));
|
|
8
8
|
const incrementName = (name) => {
|
|
9
9
|
const extension = name.split('.').pop();
|
|
10
10
|
const baseFilename = (0, sanitize_filename_1.default)(name.substr(0, name.lastIndexOf('.')) || name);
|
|
@@ -23,13 +23,13 @@ const incrementName = (name) => {
|
|
|
23
23
|
}
|
|
24
24
|
return `${incrementedName}.${extension}`;
|
|
25
25
|
};
|
|
26
|
-
async function getSafeFileName(staticPath, desiredFilename) {
|
|
26
|
+
async function getSafeFileName(Model, staticPath, desiredFilename) {
|
|
27
27
|
let modifiedFilename = desiredFilename;
|
|
28
28
|
// eslint-disable-next-line no-await-in-loop
|
|
29
|
-
while (await (0,
|
|
29
|
+
while (await (0, fileOrDocExists_1.default)(Model, staticPath, modifiedFilename)) {
|
|
30
30
|
modifiedFilename = incrementName(modifiedFilename);
|
|
31
31
|
}
|
|
32
32
|
return modifiedFilename;
|
|
33
33
|
}
|
|
34
34
|
exports.default = getSafeFileName;
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0U2FmZUZpbGVuYW1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3VwbG9hZHMvZ2V0U2FmZUZpbGVuYW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMEVBQXlDO0FBRXpDLHdFQUFnRDtBQUVoRCxNQUFNLGFBQWEsR0FBRyxDQUFDLElBQVksRUFBRSxFQUFFO0lBQ3JDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDeEMsTUFBTSxZQUFZLEdBQUcsSUFBQSwyQkFBUSxFQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQztJQUM3RSxJQUFJLGVBQWUsR0FBRyxZQUFZLENBQUM7SUFDbkMsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDO0lBQzNCLE1BQU0sS0FBSyxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEMsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1FBQ2xCLGVBQWUsSUFBSSxJQUFJLENBQUM7S0FDekI7U0FBTTtRQUNMLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM3QixNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0IsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QyxNQUFNLE9BQU8sR0FBRyxHQUFHLFdBQVcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNoRCxlQUFlLEdBQUcsT0FBTyxDQUFDO0tBQzNCO0lBQ0QsT0FBTyxHQUFHLGVBQWUsSUFBSSxTQUFTLEVBQUUsQ0FBQztBQUMzQyxDQUFDLENBQUM7QUFFRixLQUFLLFVBQVUsZUFBZSxDQUFDLEtBQXNCLEVBQUUsVUFBa0IsRUFBRSxlQUF1QjtJQUNoRyxJQUFJLGdCQUFnQixHQUFHLGVBQWUsQ0FBQztJQUV2Qyw0Q0FBNEM7SUFDNUMsT0FBTyxNQUFNLElBQUEseUJBQWUsRUFBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixDQUFDLEVBQUU7UUFDakUsZ0JBQWdCLEdBQUcsYUFBYSxDQUFDLGdCQUFnQixDQUFDLENBQUM7S0FDcEQ7SUFDRCxPQUFPLGdCQUFnQixDQUFDO0FBQzFCLENBQUM7QUFFRCxrQkFBZSxlQUFlLENBQUMifQ==
|
|
@@ -3,6 +3,15 @@ import { ProbedImageSize } from './getImageSize';
|
|
|
3
3
|
import { SanitizedCollectionConfig } from '../collections/config/types';
|
|
4
4
|
import { FileSizes } from './types';
|
|
5
5
|
import { PayloadRequest } from '../express/types';
|
|
6
|
+
declare type Args = {
|
|
7
|
+
req: PayloadRequest;
|
|
8
|
+
file: Buffer;
|
|
9
|
+
dimensions: ProbedImageSize;
|
|
10
|
+
staticPath: string;
|
|
11
|
+
config: SanitizedCollectionConfig;
|
|
12
|
+
savedFilename: string;
|
|
13
|
+
mimeType: string;
|
|
14
|
+
};
|
|
6
15
|
/**
|
|
7
16
|
* @description
|
|
8
17
|
* @param staticPath Path to save images
|
|
@@ -11,4 +20,5 @@ import { PayloadRequest } from '../express/types';
|
|
|
11
20
|
* @param mimeType
|
|
12
21
|
* @returns image sizes keyed to strings
|
|
13
22
|
*/
|
|
14
|
-
export default function resizeAndSave(req
|
|
23
|
+
export default function resizeAndSave({ req, file, dimensions, staticPath, config, savedFilename, mimeType, }: Args): Promise<FileSizes>;
|
|
24
|
+
export {};
|
|
@@ -25,7 +25,7 @@ function getOutputImage(sourceImage, size) {
|
|
|
25
25
|
* @param mimeType
|
|
26
26
|
* @returns image sizes keyed to strings
|
|
27
27
|
*/
|
|
28
|
-
async function resizeAndSave(req, file, dimensions, staticPath, config, savedFilename, mimeType) {
|
|
28
|
+
async function resizeAndSave({ req, file, dimensions, staticPath, config, savedFilename, mimeType, }) {
|
|
29
29
|
const { imageSizes, disableLocalStorage } = config.upload;
|
|
30
30
|
const sizes = imageSizes
|
|
31
31
|
.filter((desiredSize) => desiredSize.width < dimensions.width || desiredSize.height < dimensions.height)
|
|
@@ -70,4 +70,4 @@ async function resizeAndSave(req, file, dimensions, staticPath, config, savedFil
|
|
|
70
70
|
}), {});
|
|
71
71
|
}
|
|
72
72
|
exports.default = resizeAndSave;
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2VSZXNpemVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3VwbG9hZHMvaW1hZ2VSZXNpemVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNENBQW9CO0FBQ3BCLGtEQUEwQjtBQUMxQiwwRUFBeUM7QUFFekMsOERBQXNDO0FBZXRDLFNBQVMsY0FBYyxDQUFDLFdBQW1CLEVBQUUsSUFBZTtJQUMxRCxNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQy9DLE1BQU0sSUFBSSxHQUFHLElBQUEsMkJBQVEsRUFBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksV0FBVyxDQUFDLENBQUM7SUFFMUYsT0FBTztRQUNMLElBQUk7UUFDSixTQUFTO1FBQ1QsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1FBQ2pCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtLQUNwQixDQUFDO0FBQ0osQ0FBQztBQUVEOzs7Ozs7O0dBT0c7QUFDWSxLQUFLLFVBQVUsYUFBYSxDQUFDLEVBQzFDLEdBQUcsRUFDSCxJQUFJLEVBQ0osVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBQ04sYUFBYSxFQUNiLFFBQVEsR0FDSDtJQUNMLE1BQU0sRUFBRSxVQUFVLEVBQUUsbUJBQW1CLEVBQUUsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBRTFELE1BQU0sS0FBSyxHQUFHLFVBQVU7U0FDckIsTUFBTSxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQyxLQUFLLElBQUksV0FBVyxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDO1NBQ3ZHLEdBQUcsQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLEVBQUU7UUFDekIsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFBLGVBQUssRUFBQyxJQUFJLENBQUM7YUFDOUIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLE1BQU0sRUFBRTtZQUM3QyxRQUFRLEVBQUUsV0FBVyxDQUFDLElBQUksSUFBSSxRQUFRO1NBQ3ZDLENBQUMsQ0FBQztRQUVMLE1BQU0sWUFBWSxHQUFHLE1BQU0sT0FBTyxDQUFDLFFBQVEsQ0FBQztZQUMxQyxpQkFBaUIsRUFBRSxJQUFJO1NBQ3hCLENBQUMsQ0FBQztRQUVILEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQztRQUU3RCxNQUFNLFdBQVcsR0FBRyxjQUFjLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQy9ELE1BQU0sdUJBQXVCLEdBQUcsR0FBRyxXQUFXLENBQUMsSUFBSSxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN0SSxNQUFNLFNBQVMsR0FBRyxHQUFHLFVBQVUsSUFBSSx1QkFBdUIsRUFBRSxDQUFDO1FBQzdELE1BQU0saUJBQWlCLEdBQUcsTUFBTSxJQUFBLG9CQUFVLEVBQUMsU0FBUyxDQUFDLENBQUM7UUFFdEQsSUFBSSxpQkFBaUIsRUFBRTtZQUNyQixZQUFFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQzFCO1FBRUQsSUFBSSxDQUFDLG1CQUFtQixFQUFFO1lBQ3hCLE1BQU0sT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNqQztRQUVELE9BQU87WUFDTCxJQUFJLEVBQUUsV0FBVyxDQUFDLElBQUk7WUFDdEIsS0FBSyxFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSztZQUM5QixNQUFNLEVBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNO1lBQ2hDLFFBQVEsRUFBRSx1QkFBdUI7WUFDakMsUUFBUSxFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSTtZQUNoQyxRQUFRO1NBQ1QsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUwsTUFBTSxVQUFVLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTVDLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDM0MsR0FBRyxPQUFPO1FBQ1YsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDWCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3hCO0tBQ0YsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ1YsQ0FBQztBQTVERCxnQ0E0REMifQ==
|
|
@@ -17,4 +17,4 @@ const sanitizeInternalFields = (incomingDoc) => Object.entries(incomingDoc).redu
|
|
|
17
17
|
};
|
|
18
18
|
}, {});
|
|
19
19
|
exports.default = sanitizeInternalFields;
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FuaXRpemVJbnRlcm5hbEZpZWxkcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvc2FuaXRpemVJbnRlcm5hbEZpZWxkcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztBQUUvQyxNQUFNLHNCQUFzQixHQUFHLENBQTZCLFdBQVcsRUFBSyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUssRUFBRTtJQUMxSSxJQUFJLEdBQUcsS0FBSyxLQUFLLEVBQUU7UUFDakIsT0FBTztZQUNMLEdBQUcsTUFBTTtZQUNULEVBQUUsRUFBRSxHQUFHO1NBQ1IsQ0FBQztLQUNIO0lBRUQsSUFBSSxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO1FBQ3BDLE9BQU8sTUFBTSxDQUFDO0tBQ2Y7SUFFRCxPQUFPO1FBQ0wsR0FBRyxNQUFNO1FBQ1QsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHO0tBQ1gsQ0FBQztBQUNKLENBQUMsRUFBRSxFQUFPLENBQUMsQ0FBQztBQUVaLGtCQUFlLHNCQUFzQixDQUFDIn0=
|
|
@@ -90,13 +90,13 @@ All Payload fields support the ability to swap in your own React components. So,
|
|
|
90
90
|
|
|
91
91
|
#### Sending and receiving values from the form
|
|
92
92
|
|
|
93
|
-
When swapping out the `Field` component, you'll be responsible for sending and receiving the field's `value` from the form itself. To do so, import the `
|
|
93
|
+
When swapping out the `Field` component, you'll be responsible for sending and receiving the field's `value` from the form itself. To do so, import the `useField` hook as follows:
|
|
94
94
|
|
|
95
95
|
```js
|
|
96
|
-
import {
|
|
96
|
+
import { useField } from 'payload/components/forms';
|
|
97
97
|
|
|
98
98
|
const CustomTextField = ({ path }) => {
|
|
99
|
-
const { value, setValue } =
|
|
99
|
+
const { value, setValue } = useField({ path });
|
|
100
100
|
|
|
101
101
|
return (
|
|
102
102
|
<input
|
package/docs/fields/blocks.mdx
CHANGED
|
@@ -106,3 +106,12 @@ const ExampleCollection = {
|
|
|
106
106
|
}
|
|
107
107
|
|
|
108
108
|
```
|
|
109
|
+
|
|
110
|
+
### TypeScript
|
|
111
|
+
|
|
112
|
+
As you build your own Block configs, you might want to store them in separate files but retain typing accordingly. To do so, you can import and use Payload's `Block` type:
|
|
113
|
+
|
|
114
|
+
```js
|
|
115
|
+
import type { Block } from 'payload/types';
|
|
116
|
+
|
|
117
|
+
```
|
package/docs/fields/overview.mdx
CHANGED
|
@@ -239,3 +239,15 @@ This example will display the number of characters allowed as the user types.
|
|
|
239
239
|
}
|
|
240
240
|
```
|
|
241
241
|
This component will count the number of characters entered.
|
|
242
|
+
|
|
243
|
+
### TypeScript
|
|
244
|
+
|
|
245
|
+
You can import the internal Payload `Field` type as well as other common field types as follows:
|
|
246
|
+
|
|
247
|
+
```js
|
|
248
|
+
import type {
|
|
249
|
+
Field,
|
|
250
|
+
Validate,
|
|
251
|
+
Condition,
|
|
252
|
+
} from 'payload/types';
|
|
253
|
+
```
|
|
@@ -313,3 +313,14 @@ Above, you can see that we are creating a custom SlateJS element with a name of
|
|
|
313
313
|
|
|
314
314
|
The plugin itself extends Payload's built-in `shouldBreakOutOnEnter` Slate function to add its own element name to the list of elements that should "break out" when the `enter` key is pressed.
|
|
315
315
|
|
|
316
|
+
### TypeScript
|
|
317
|
+
|
|
318
|
+
If you are building your own custom Rich Text elements or leaves, you may benefit from importing the following types:
|
|
319
|
+
|
|
320
|
+
```js
|
|
321
|
+
import type {
|
|
322
|
+
RichTextCustomElement,
|
|
323
|
+
RichTextCustomLeaf,
|
|
324
|
+
} from 'payload/types';
|
|
325
|
+
|
|
326
|
+
```
|
|
@@ -188,3 +188,26 @@ const afterLoginHook = async ({
|
|
|
188
188
|
return user;
|
|
189
189
|
}
|
|
190
190
|
```
|
|
191
|
+
|
|
192
|
+
## TypeScript
|
|
193
|
+
|
|
194
|
+
Payload exports a type for each Collection hook which can be accessed as follows:
|
|
195
|
+
|
|
196
|
+
```js
|
|
197
|
+
import type {
|
|
198
|
+
CollectionBeforeOperationHook,
|
|
199
|
+
CollectionBeforeValidateHook,
|
|
200
|
+
CollectionBeforeChangeHook,
|
|
201
|
+
CollectionAfterChangeHook,
|
|
202
|
+
CollectionAfterReadHook,
|
|
203
|
+
CollectionBeforeReadHook,
|
|
204
|
+
CollectionBeforeDeleteHook,
|
|
205
|
+
CollectionAfterDeleteHook,
|
|
206
|
+
CollectionBeforeLoginHook,
|
|
207
|
+
CollectionAfterLoginHook,
|
|
208
|
+
CollectionAfterForgotPasswordHook,
|
|
209
|
+
} from 'payload/types';
|
|
210
|
+
|
|
211
|
+
// Use hook types here...
|
|
212
|
+
}
|
|
213
|
+
```
|
package/docs/hooks/fields.mdx
CHANGED
|
@@ -70,3 +70,31 @@ All field hooks can optionally modify the return value of the field before the o
|
|
|
70
70
|
<strong>Important</strong><br/>
|
|
71
71
|
Due to GraphQL's typed nature, you should never change the type of data that you return from a field, otherwise GraphQL will produce errors. If you need to change the shape or type of data, reconsider Field Hooks and instead evaluate if Collection / Global hooks might suit you better.
|
|
72
72
|
</Banner>
|
|
73
|
+
|
|
74
|
+
## TypeScript
|
|
75
|
+
|
|
76
|
+
Payload exports a type for field hooks which can be accessed and used as follows:
|
|
77
|
+
|
|
78
|
+
```js
|
|
79
|
+
import type { FieldHook } from 'payload/types';
|
|
80
|
+
|
|
81
|
+
// Field hook type is a generic that takes two arguments:
|
|
82
|
+
// 1: The document type
|
|
83
|
+
// 2: the value type
|
|
84
|
+
|
|
85
|
+
type ExampleFieldHook = FieldHook<ExampleDocumentType, string>;
|
|
86
|
+
|
|
87
|
+
const exampleFieldHook: ExampleFieldHook = (args) => {
|
|
88
|
+
const {
|
|
89
|
+
value, // Typed as `string` as shown above
|
|
90
|
+
data, // Typed as a Partial of your ExampleDocumentType
|
|
91
|
+
originalDoc, // Typed as ExampleDocumentType
|
|
92
|
+
operation,
|
|
93
|
+
req,
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
// Do something here...
|
|
97
|
+
|
|
98
|
+
return value; // should return a string as typed above, undefined, or null
|
|
99
|
+
}
|
|
100
|
+
```
|
package/docs/hooks/globals.mdx
CHANGED
|
@@ -98,3 +98,20 @@ const afterReadHook = async ({
|
|
|
98
98
|
req, // full express request
|
|
99
99
|
}) => {...}
|
|
100
100
|
```
|
|
101
|
+
|
|
102
|
+
## TypeScript
|
|
103
|
+
|
|
104
|
+
Payload exports a type for each Global hook which can be accessed as follows:
|
|
105
|
+
|
|
106
|
+
```js
|
|
107
|
+
import type {
|
|
108
|
+
GlobalBeforeValidateHook,
|
|
109
|
+
GlobalBeforeChangeHook,
|
|
110
|
+
GlobalAfterChangeHook,
|
|
111
|
+
GlobalBeforeReadHook,
|
|
112
|
+
GlobalAfterReadHook,
|
|
113
|
+
} from 'payload/types';
|
|
114
|
+
|
|
115
|
+
// Use hook types here...
|
|
116
|
+
}
|
|
117
|
+
```
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Generating TypeScript Interfaces
|
|
3
|
+
label: Generating Types
|
|
4
|
+
order: 20
|
|
5
|
+
desc: Generate your own TypeScript interfaces based on your collections and globals.
|
|
6
|
+
keywords: headless cms, typescript, documentation, Content Management System, cms, headless, javascript, node, react, express
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
While building your own custom functionality into Payload, like plugins, hooks, access control functions, custom routes, GraphQL queries / mutations, or anything else, you may benefit from generating your own TypeScript types dynamically from your Payload config itself.
|
|
10
|
+
|
|
11
|
+
Run the following command in a Payload project to generate types:
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
payload generate:types
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
You can run this command whenever you need to regenerate your types, and then you can use these types in your Payload code directly.
|
|
18
|
+
|
|
19
|
+
For example, let's look at the following simple Payload config:
|
|
20
|
+
|
|
21
|
+
```ts
|
|
22
|
+
const config: Config = {
|
|
23
|
+
serverURL: process.env.PAYLOAD_PUBLIC_SERVER_URL,
|
|
24
|
+
admin: {
|
|
25
|
+
user: 'users',
|
|
26
|
+
}
|
|
27
|
+
collections: [
|
|
28
|
+
{
|
|
29
|
+
slug: 'users',
|
|
30
|
+
fields: [
|
|
31
|
+
{
|
|
32
|
+
name: 'name',
|
|
33
|
+
type: 'text',
|
|
34
|
+
required: true,
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
slug: 'posts',
|
|
40
|
+
admin: {
|
|
41
|
+
useAsTitle: 'title',
|
|
42
|
+
},
|
|
43
|
+
fields: [
|
|
44
|
+
{
|
|
45
|
+
name: 'title',
|
|
46
|
+
type: 'text',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: 'author',
|
|
50
|
+
type: 'relationship',
|
|
51
|
+
relationTo: 'users',
|
|
52
|
+
},
|
|
53
|
+
]
|
|
54
|
+
}
|
|
55
|
+
]
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
By generating types, we'll end up with a file containing the following two TypeScript interfaces:
|
|
60
|
+
|
|
61
|
+
```ts
|
|
62
|
+
export interface User {
|
|
63
|
+
id: string;
|
|
64
|
+
name: string;
|
|
65
|
+
email?: string;
|
|
66
|
+
resetPasswordToken?: string;
|
|
67
|
+
resetPasswordExpiration?: string;
|
|
68
|
+
loginAttempts?: number;
|
|
69
|
+
lockUntil?: string;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export interface Post {
|
|
73
|
+
id: string;
|
|
74
|
+
title?: string;
|
|
75
|
+
author?: string | User;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
#### Customizing the output path of your generated types
|
|
81
|
+
|
|
82
|
+
You can specify where you want your types to be generated by adding a property to your Payload config:
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
{
|
|
86
|
+
// the remainder of your config
|
|
87
|
+
typescript: {
|
|
88
|
+
outputFile: path.resolve(__dirname, './generated-types.ts'),
|
|
89
|
+
},
|
|
90
|
+
}
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
The above example places your types next to your Payload config itself as the file `generated-types.ts`. By default, the file will be output to your current working directory as `payload-types.ts`.
|
|
94
|
+
|
|
95
|
+
#### Adding an NPM script
|
|
96
|
+
|
|
97
|
+
<Banner type="warning">
|
|
98
|
+
<strong>Important:</strong><br/>
|
|
99
|
+
Payload needs to be able to find your config to generate your types.
|
|
100
|
+
</Banner>
|
|
101
|
+
|
|
102
|
+
Payload will automatically try and locate your config, but might not always be able to find it. For example, if you are working in a `/src` directory or similar, you need to tell Payload where to find your config manually by using an environment variable. If this applies to you, you can create an NPM script to make generating your types easier.
|
|
103
|
+
|
|
104
|
+
To add an NPM script to generate your types and show Payload where to find your config, open your `package.json` and update the `scripts` property to the following:
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
{
|
|
108
|
+
"scripts": {
|
|
109
|
+
"generate:types": "PAYLOAD_CONFIG_PATH=src/payload.config.ts payload generate:types",
|
|
110
|
+
},
|
|
111
|
+
}
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
Now you can run `yarn generate:types` to easily generate your types.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: TypeScript - Overview
|
|
3
|
+
label: Overview
|
|
4
|
+
order: 10
|
|
5
|
+
desc: Payload is the most powerful TypeScript headless CMS available.
|
|
6
|
+
keywords: headless cms, typescript, documentation, Content Management System, cms, headless, javascript, node, react, express
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
Payload supports TypeScript natively, and not only that, the entirety of the CMS is built with TypeScript. To get started developing with Payload and TypeScript, you can use one of Payload's built-in boilerplates in one line via `create-payload-app`:
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
npx create-payload-app
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
Pick a TypeScript project type to get started easily.
|
|
16
|
+
|
|
17
|
+
#### Setting up from Scratch
|
|
18
|
+
|
|
19
|
+
It's also possible to set up a TypeScript project from scratch. We plan to write up a guide for exactly how—so keep an eye out for that, too.
|
|
20
|
+
|
|
21
|
+
## Using Payload's Exported Types
|
|
22
|
+
|
|
23
|
+
Payload exports a number of types that you may find useful while writing your own plugins, hooks, access control functions, custom routes, GraphQL queries / mutations, or anything else.
|
|
24
|
+
|
|
25
|
+
##### Config Types
|
|
26
|
+
|
|
27
|
+
- [Base config](/docs/configuration/overview#typescript)
|
|
28
|
+
- [Collections](/docs/configuration/collections#typescript)
|
|
29
|
+
- [Globals](/docs/configuration/globals#typescript)
|
|
30
|
+
- [Fields](/docs/fields/overview#typescript)
|
|
31
|
+
|
|
32
|
+
##### Hook Types
|
|
33
|
+
|
|
34
|
+
- [Collection hooks](/docs/hooks/collections#typescript)
|
|
35
|
+
- [Global hooks](/docs/hooks/globals#typescript)
|
|
36
|
+
- [Field hooks](/docs/hooks/fields#typescript)
|
package/package.json
CHANGED
package/types.d.ts
CHANGED
|
@@ -16,5 +16,21 @@ export {
|
|
|
16
16
|
AfterForgotPasswordHook as CollectionAfterForgotPasswordHook,
|
|
17
17
|
} from './dist/collections/config/types';
|
|
18
18
|
|
|
19
|
-
export {
|
|
20
|
-
|
|
19
|
+
export {
|
|
20
|
+
GlobalConfig,
|
|
21
|
+
SanitizedGlobalConfig,
|
|
22
|
+
BeforeValidateHook as GlobalBeforeValidateHook,
|
|
23
|
+
BeforeChangeHook as GlobalBeforeChangeHook,
|
|
24
|
+
AfterChangeHook as GlobalAfterChangeHook,
|
|
25
|
+
BeforeReadHook as GlobalBeforeReadHook,
|
|
26
|
+
AfterReadHook as GlobalAfterReadHook,
|
|
27
|
+
} from './dist/globals/config/types';
|
|
28
|
+
|
|
29
|
+
export {
|
|
30
|
+
Field,
|
|
31
|
+
FieldHook,
|
|
32
|
+
FieldAccess,
|
|
33
|
+
RichTextCustomElement,
|
|
34
|
+
RichTextCustomLeaf,
|
|
35
|
+
Block,
|
|
36
|
+
} from './dist/fields/config/types';
|