@payloadcms/plugin-form-builder 1.0.1 → 1.0.4
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.
|
@@ -24,11 +24,63 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.generateFormCollection = void 0;
|
|
27
|
+
var deepmerge_1 = __importDefault(require("deepmerge"));
|
|
27
28
|
var fields_1 = __importDefault(require("./fields"));
|
|
28
29
|
// all settings can be overridden by the config
|
|
29
30
|
var generateFormCollection = function (formConfig) {
|
|
30
31
|
var _a, _b, _c;
|
|
31
|
-
|
|
32
|
+
var redirect = {
|
|
33
|
+
name: 'redirect',
|
|
34
|
+
type: 'group',
|
|
35
|
+
admin: {
|
|
36
|
+
hideGutter: true,
|
|
37
|
+
condition: function (_, siblingData) { return (siblingData === null || siblingData === void 0 ? void 0 : siblingData.confirmationType) === 'redirect'; },
|
|
38
|
+
},
|
|
39
|
+
fields: [
|
|
40
|
+
{
|
|
41
|
+
name: 'url',
|
|
42
|
+
label: 'URL to redirect to',
|
|
43
|
+
type: 'text',
|
|
44
|
+
required: true,
|
|
45
|
+
},
|
|
46
|
+
],
|
|
47
|
+
};
|
|
48
|
+
if (formConfig.redirectRelationships) {
|
|
49
|
+
redirect.fields.unshift({
|
|
50
|
+
name: 'reference',
|
|
51
|
+
label: 'Document to link to',
|
|
52
|
+
type: 'relationship',
|
|
53
|
+
relationTo: formConfig.redirectRelationships,
|
|
54
|
+
required: true,
|
|
55
|
+
maxDepth: 2,
|
|
56
|
+
admin: {
|
|
57
|
+
condition: function (_, siblingData) { return (siblingData === null || siblingData === void 0 ? void 0 : siblingData.type) === 'reference'; },
|
|
58
|
+
},
|
|
59
|
+
});
|
|
60
|
+
redirect.fields.unshift({
|
|
61
|
+
name: 'type',
|
|
62
|
+
type: 'radio',
|
|
63
|
+
options: [
|
|
64
|
+
{
|
|
65
|
+
label: 'Internal link',
|
|
66
|
+
value: 'reference',
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
label: 'Custom URL',
|
|
70
|
+
value: 'custom',
|
|
71
|
+
},
|
|
72
|
+
],
|
|
73
|
+
defaultValue: 'reference',
|
|
74
|
+
admin: {
|
|
75
|
+
layout: 'horizontal',
|
|
76
|
+
},
|
|
77
|
+
});
|
|
78
|
+
redirect.fields[2].label = 'Custom URL';
|
|
79
|
+
redirect.fields[2].admin = {
|
|
80
|
+
condition: function (_, siblingData) { return (siblingData === null || siblingData === void 0 ? void 0 : siblingData.type) === 'custom'; },
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
var config = {
|
|
32
84
|
slug: ((_a = formConfig === null || formConfig === void 0 ? void 0 : formConfig.formOverrides) === null || _a === void 0 ? void 0 : _a.slug) || 'forms',
|
|
33
85
|
admin: {
|
|
34
86
|
useAsTitle: 'title',
|
|
@@ -49,8 +101,11 @@ var generateFormCollection = function (formConfig) {
|
|
|
49
101
|
// let the config enable/disable fields with either boolean values or objects
|
|
50
102
|
if (fieldConfig !== false) {
|
|
51
103
|
var block = fields_1.default[fieldKey];
|
|
104
|
+
if (typeof block === 'object' && typeof fieldConfig === 'object') {
|
|
105
|
+
return (0, deepmerge_1.default)(block, fieldConfig);
|
|
106
|
+
}
|
|
52
107
|
if (typeof block === 'function') {
|
|
53
|
-
|
|
108
|
+
return block(fieldConfig);
|
|
54
109
|
}
|
|
55
110
|
return block;
|
|
56
111
|
}
|
|
@@ -88,54 +143,7 @@ var generateFormCollection = function (formConfig) {
|
|
|
88
143
|
condition: function (_, siblingData) { return (siblingData === null || siblingData === void 0 ? void 0 : siblingData.confirmationType) === 'message'; },
|
|
89
144
|
},
|
|
90
145
|
},
|
|
91
|
-
|
|
92
|
-
name: 'redirect',
|
|
93
|
-
type: 'group',
|
|
94
|
-
admin: {
|
|
95
|
-
hideGutter: true,
|
|
96
|
-
condition: function (_, siblingData) { return (siblingData === null || siblingData === void 0 ? void 0 : siblingData.confirmationType) === 'redirect'; },
|
|
97
|
-
},
|
|
98
|
-
fields: [
|
|
99
|
-
{
|
|
100
|
-
name: 'type',
|
|
101
|
-
type: 'radio',
|
|
102
|
-
options: [
|
|
103
|
-
{
|
|
104
|
-
label: 'Internal link',
|
|
105
|
-
value: 'reference',
|
|
106
|
-
},
|
|
107
|
-
{
|
|
108
|
-
label: 'Custom URL',
|
|
109
|
-
value: 'custom',
|
|
110
|
-
},
|
|
111
|
-
],
|
|
112
|
-
defaultValue: 'reference',
|
|
113
|
-
admin: {
|
|
114
|
-
layout: 'horizontal',
|
|
115
|
-
},
|
|
116
|
-
},
|
|
117
|
-
{
|
|
118
|
-
name: 'reference',
|
|
119
|
-
label: 'Document to link to',
|
|
120
|
-
type: 'relationship',
|
|
121
|
-
relationTo: formConfig.redirectRelationships || [],
|
|
122
|
-
required: true,
|
|
123
|
-
maxDepth: 2,
|
|
124
|
-
admin: {
|
|
125
|
-
condition: function (_, siblingData) { return (siblingData === null || siblingData === void 0 ? void 0 : siblingData.type) === 'reference'; },
|
|
126
|
-
},
|
|
127
|
-
},
|
|
128
|
-
{
|
|
129
|
-
name: 'url',
|
|
130
|
-
label: 'Custom URL',
|
|
131
|
-
type: 'text',
|
|
132
|
-
required: true,
|
|
133
|
-
admin: {
|
|
134
|
-
condition: function (_, siblingData) { return (siblingData === null || siblingData === void 0 ? void 0 : siblingData.type) === 'custom'; },
|
|
135
|
-
},
|
|
136
|
-
},
|
|
137
|
-
],
|
|
138
|
-
},
|
|
146
|
+
redirect,
|
|
139
147
|
{
|
|
140
148
|
name: 'emails',
|
|
141
149
|
type: 'array',
|
|
@@ -206,7 +214,8 @@ var generateFormCollection = function (formConfig) {
|
|
|
206
214
|
],
|
|
207
215
|
}
|
|
208
216
|
], ((_c = formConfig === null || formConfig === void 0 ? void 0 : formConfig.formOverrides) === null || _c === void 0 ? void 0 : _c.fields) || [], true),
|
|
209
|
-
}
|
|
217
|
+
};
|
|
218
|
+
return config;
|
|
210
219
|
};
|
|
211
220
|
exports.generateFormCollection = generateFormCollection;
|
|
212
221
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/collections/Forms/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/collections/Forms/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/plugin-form-builder",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "Form builder plugin for Payload CMS",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -35,6 +35,7 @@
|
|
|
35
35
|
"dist"
|
|
36
36
|
],
|
|
37
37
|
"dependencies": {
|
|
38
|
+
"deepmerge": "^4.2.2",
|
|
38
39
|
"escape-html": "^1.0.3"
|
|
39
40
|
}
|
|
40
41
|
}
|