payload 0.15.1 → 0.15.2

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.
Files changed (30) hide show
  1. package/.eslintrc.js +6 -0
  2. package/CHANGELOG.md +7 -0
  3. package/dist/admin/components/elements/elements.spec.d.ts +1 -0
  4. package/dist/admin/components/elements/elements.spec.js +12 -0
  5. package/dist/auth/auth.spec.d.ts +1 -0
  6. package/dist/auth/auth.spec.js +198 -0
  7. package/dist/collections/graphql/resolvers/resolvers.spec.d.ts +1 -0
  8. package/dist/collections/graphql/resolvers/resolvers.spec.js +360 -0
  9. package/dist/collections/operations/local/local.spec.d.ts +1 -0
  10. package/dist/collections/operations/local/local.spec.js +175 -0
  11. package/dist/collections/tests/collections.spec.d.ts +1 -0
  12. package/dist/collections/tests/collections.spec.js +725 -0
  13. package/dist/collections/tests/hooks.spec.d.ts +1 -0
  14. package/dist/collections/tests/hooks.spec.js +152 -0
  15. package/dist/collections/tests/pointField.spec.d.ts +1 -0
  16. package/dist/collections/tests/pointField.spec.js +208 -0
  17. package/dist/collections/tests/relationships.spec.d.ts +1 -0
  18. package/dist/collections/tests/relationships.spec.js +174 -0
  19. package/dist/collections/tests/uploads.spec.d.ts +1 -0
  20. package/dist/collections/tests/uploads.spec.js +328 -0
  21. package/dist/errors/errors.spec.d.ts +1 -0
  22. package/dist/errors/errors.spec.js +29 -0
  23. package/dist/express/middleware/errorHandler.spec.d.ts +1 -0
  24. package/dist/express/middleware/errorHandler.spec.js +91 -0
  25. package/dist/globals/requestHandlers/globals.spec.d.ts +4 -0
  26. package/dist/globals/requestHandlers/globals.spec.js +161 -0
  27. package/dist/preferences/graphql/resolvers.spec.d.ts +1 -0
  28. package/dist/preferences/graphql/resolvers.spec.js +115 -0
  29. package/dist/versions/drafts/appendVersionToQueryKey.js +8 -5
  30. package/package.json +1 -1
@@ -0,0 +1,175 @@
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 path_1 = __importDefault(require("path"));
8
+ const __1 = __importDefault(require("../../.."));
9
+ let createdMediaID;
10
+ __1.default.init({
11
+ secret: 'SECRET_KEY',
12
+ mongoURL: 'mongodb://localhost/payload',
13
+ local: true,
14
+ });
15
+ describe('Collections - Local', () => {
16
+ describe('Create', () => {
17
+ it('should allow an upload-enabled file to be created and uploaded', async () => {
18
+ const alt = 'Alt Text Here';
19
+ const filePath = path_1.default.resolve(__dirname, '../../../admin/assets/images/generic-block-image.svg');
20
+ const { size } = fs_1.default.statSync(filePath);
21
+ const result = await __1.default.create({
22
+ collection: 'media',
23
+ data: {
24
+ alt,
25
+ },
26
+ filePath,
27
+ });
28
+ expect(result.id).toBeDefined();
29
+ expect(result.alt).toStrictEqual(alt);
30
+ expect(result.filename).toStrictEqual('generic-block-image.svg');
31
+ expect(result.filesize).toStrictEqual(size);
32
+ createdMediaID = result.id;
33
+ });
34
+ });
35
+ describe('Update', () => {
36
+ it('should allow an upload-enabled file to be re-uploaded and alt-text to be changed.', async () => {
37
+ const newAltText = 'New Alt Text Here';
38
+ const result = await __1.default.update({
39
+ collection: 'media',
40
+ id: createdMediaID,
41
+ data: {
42
+ alt: newAltText,
43
+ },
44
+ filePath: path_1.default.resolve(__dirname, '../../../admin/assets/images/og-image.png'),
45
+ });
46
+ expect(result.alt).toStrictEqual(newAltText);
47
+ expect(result.sizes.mobile.width).toStrictEqual(320);
48
+ expect(result.width).toStrictEqual(640);
49
+ });
50
+ });
51
+ describe('Read with Hidden Fields', () => {
52
+ it('should allow a document with nested hidden fields to be retrieved with hidden fields shown.', async () => {
53
+ const demoHiddenField = 'this is going to be hidden';
54
+ const result = await __1.default.create({
55
+ collection: 'localized-posts',
56
+ data: {
57
+ title: 'this post has a hidden field present',
58
+ description: 'desc',
59
+ priority: 1,
60
+ nonLocalizedGroup: {
61
+ text: '40w5g534gw34j',
62
+ },
63
+ localizedGroup: {
64
+ text: '34lijgw45ligjw4li5j',
65
+ demoHiddenField,
66
+ },
67
+ },
68
+ });
69
+ expect(result.id).toBeDefined();
70
+ expect(result.localizedGroup).toBeDefined();
71
+ expect(result.localizedGroup.demoHiddenField).toBeUndefined();
72
+ const withHiddenFields = await __1.default.findByID({
73
+ collection: 'localized-posts',
74
+ id: result.id,
75
+ showHiddenFields: true,
76
+ });
77
+ expect(withHiddenFields.localizedGroup.demoHiddenField).toStrictEqual(demoHiddenField);
78
+ expect(withHiddenFields.id).toStrictEqual(result.id);
79
+ });
80
+ it('should allow a document with a relationship to a document with hidden fields to read the related document hidden fields', async () => {
81
+ const demoHiddenField = 'this is going to be hidden';
82
+ const relationshipA = await __1.default.create({
83
+ collection: 'relationship-a',
84
+ data: {
85
+ demoHiddenField,
86
+ },
87
+ });
88
+ expect(relationshipA.id).toBeDefined();
89
+ expect(relationshipA.demoHiddenField).toBeUndefined();
90
+ const relationshipB = await __1.default.create({
91
+ collection: 'relationship-b',
92
+ data: {
93
+ title: 'pretty clever name here',
94
+ post: [relationshipA.id],
95
+ },
96
+ });
97
+ expect(relationshipB.id).toBeDefined();
98
+ const relationshipBWithHiddenNestedField = await __1.default.findByID({
99
+ collection: 'relationship-b',
100
+ id: relationshipB.id,
101
+ showHiddenFields: true,
102
+ });
103
+ expect(relationshipBWithHiddenNestedField.post[0].demoHiddenField).toStrictEqual(demoHiddenField);
104
+ });
105
+ describe('Find', () => {
106
+ const title = 'local-find';
107
+ beforeAll(async (done) => {
108
+ const data = {
109
+ title,
110
+ description: 'a description',
111
+ priority: 1,
112
+ nonLocalizedGroup: {
113
+ text: 'english',
114
+ },
115
+ localizedGroup: {
116
+ text: 'english',
117
+ },
118
+ nonLocalizedArray: [
119
+ {
120
+ localizedEmbeddedText: 'english',
121
+ },
122
+ ],
123
+ richTextBlocks: [
124
+ {
125
+ blockType: 'richTextBlock',
126
+ blockName: 'Test Block Name',
127
+ content: [
128
+ {
129
+ children: [{ text: 'english' }],
130
+ },
131
+ ],
132
+ },
133
+ ],
134
+ };
135
+ await __1.default.create({
136
+ collection: 'localized-posts',
137
+ data,
138
+ });
139
+ Array.from(Array(10).keys()).map(async (i) => {
140
+ const uniqueTitle = `${title}-${i}`;
141
+ await __1.default.create({
142
+ collection: 'localized-posts',
143
+ data: {
144
+ ...data,
145
+ title: uniqueTitle,
146
+ },
147
+ });
148
+ });
149
+ done();
150
+ });
151
+ it('should find collection with query', async () => {
152
+ const result = await __1.default.find({
153
+ collection: 'localized-posts',
154
+ where: {
155
+ title: {
156
+ equals: title,
157
+ },
158
+ },
159
+ });
160
+ const doc = result.docs[0];
161
+ expect(doc.id).toBeDefined();
162
+ expect(doc.title).toStrictEqual(title);
163
+ });
164
+ it('should allow disable pagination to return all docs', async () => {
165
+ const result = await __1.default.find({
166
+ collection: 'localized-posts',
167
+ pagination: false,
168
+ limit: 5, // limit will not be used
169
+ });
170
+ expect(result.docs.length).toBeGreaterThan(10);
171
+ });
172
+ });
173
+ });
174
+ });
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwuc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2xsZWN0aW9ucy9vcGVyYXRpb25zL2xvY2FsL2xvY2FsLnNwZWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw0Q0FBb0I7QUFDcEIsZ0RBQXdCO0FBQ3hCLGlEQUErQjtBQUUvQixJQUFJLGNBQWMsQ0FBQztBQUVuQixXQUFPLENBQUMsSUFBSSxDQUFDO0lBQ1gsTUFBTSxFQUFFLFlBQVk7SUFDcEIsUUFBUSxFQUFFLDZCQUE2QjtJQUN2QyxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUMsQ0FBQztBQUVILFFBQVEsQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLEVBQUU7SUFDbkMsUUFBUSxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7UUFDdEIsRUFBRSxDQUFDLGdFQUFnRSxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQzlFLE1BQU0sR0FBRyxHQUFHLGVBQWUsQ0FBQztZQUM1QixNQUFNLFFBQVEsR0FBRyxjQUFJLENBQUMsT0FBTyxDQUMzQixTQUFTLEVBQ1Qsc0RBQXNELENBQ3ZELENBQUM7WUFDRixNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsWUFBRSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUV2QyxNQUFNLE1BQU0sR0FBVSxNQUFNLFdBQU8sQ0FBQyxNQUFNLENBQUM7Z0JBQ3pDLFVBQVUsRUFBRSxPQUFPO2dCQUNuQixJQUFJLEVBQUU7b0JBQ0osR0FBRztpQkFDSjtnQkFDRCxRQUFRO2FBQ1QsQ0FBQyxDQUFDO1lBRUgsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNoQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0QyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGFBQWEsQ0FBQyx5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
@@ -0,0 +1 @@
1
+ export {};