@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
- return ({
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
- block = block(fieldConfig);
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":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/collections/Forms/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,wDAA8B;AAE9B,oDAA8B;AAE9B,+CAA+C;AACxC,IAAM,sBAAsB,GAAG,UAAC,UAAsB;;IAE3D,IAAM,QAAQ,GAAU;QACtB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,OAAO;QACb,KAAK,EAAE;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,UAAC,CAAC,EAAE,WAAW,IAAK,OAAA,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,MAAK,UAAU,EAA5C,CAA4C;SAC5E;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,oBAAoB;gBAC3B,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,IAAI;aACf;SACF;KACF,CAAC;IAEF,IAAI,UAAU,CAAC,qBAAqB,EAAE;QACpC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;YACtB,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,qBAAqB;YAC5B,IAAI,EAAE,cAAc;YACpB,UAAU,EAAE,UAAU,CAAC,qBAAqB;YAC5C,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,CAAC;YACX,KAAK,EAAE;gBACL,SAAS,EAAE,UAAC,CAAC,EAAE,WAAW,IAAK,OAAA,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,MAAK,WAAW,EAAjC,CAAiC;aACjE;SACF,CAAC,CAAC;QAEH,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;YACtB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,OAAO;YACb,OAAO,EAAE;gBACP;oBACE,KAAK,EAAE,eAAe;oBACtB,KAAK,EAAE,WAAW;iBACnB;gBACD;oBACE,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,QAAQ;iBAChB;aACF;YACD,YAAY,EAAE,WAAW;YACzB,KAAK,EAAE;gBACL,MAAM,EAAE,YAAY;aACrB;SACF,CAAC,CAAC;QAEH,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,YAAY,CAAC;QAExC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;YACzB,SAAS,EAAE,UAAC,CAAC,EAAE,WAAW,IAAK,OAAA,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,MAAK,QAAQ,EAA9B,CAA8B;SAC9D,CAAC;KACH;IAED,IAAM,MAAM,GAAqB;QAC/B,IAAI,EAAE,CAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,aAAa,0CAAE,IAAI,KAAI,OAAO;QAChD,KAAK,EAAE;YACL,UAAU,EAAE,OAAO;YACnB,0BAA0B,EAAE,KAAK;SAClC;QACD,MAAM,aACJ,IAAI,EAAE,cAAM,OAAA,IAAI,EAAJ,CAAI,IACb,CAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,aAAa,0CAAE,MAAM,KAAI,EAAE,CAC3C;QACD,MAAM;YACJ;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,KAAI,EAAE,CAAC,CAAC,GAAG,CAAC,UAAC,EAAuB;wBAAtB,QAAQ,QAAA,EAAE,WAAW,QAAA;oBAC1E,6EAA6E;oBAC7E,IAAI,WAAW,KAAK,KAAK,EAAE;wBACzB,IAAI,KAAK,GAAG,gBAAM,CAAC,QAAQ,CAAC,CAAC;wBAE7B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;4BAChE,OAAO,IAAA,mBAAK,EAAc,KAAK,EAAE,WAAW,CAAC,CAAC;yBAC/C;wBAED,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE;4BAC/B,OAAO,KAAK,CAAC,WAA0B,CAAC,CAAC;yBAC1C;wBAED,OAAO,KAAK,CAAC;qBACd;oBAED,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAY;aAC9B;YACD;gBACE,IAAI,EAAE,mBAAmB;gBACzB,IAAI,EAAE,MAAM;aACb;YACD;gBACE,IAAI,EAAE,kBAAkB;gBACxB,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACL,WAAW,EAAE,0GAA0G;oBACvH,MAAM,EAAE,YAAY;iBACrB;gBACD,OAAO,EAAE;oBACP;wBACE,KAAK,EAAE,SAAS;wBAChB,KAAK,EAAE,SAAS;qBACjB;oBACD;wBACE,KAAK,EAAE,UAAU;wBACjB,KAAK,EAAE,UAAU;qBAClB;iBACF;gBACD,YAAY,EAAE,SAAS;aACxB;YACD;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE;oBACL,SAAS,EAAE,UAAC,CAAC,EAAE,WAAW,IAAK,OAAA,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,MAAK,SAAS,EAA3C,CAA2C;iBAC3E;aACF;YACD,QAAQ;YACR;gBACE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACL,WAAW,EAAE,iOAAiO;iBAC/O;gBACD,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,KAAK;wBACX,MAAM,EAAE;4BACN;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,SAAS;gCACf,KAAK,EAAE,UAAU;gCACjB,QAAQ,EAAE,IAAI;gCACd,KAAK,EAAE;oCACL,KAAK,EAAE,KAAK;oCACZ,WAAW,EAAE,iCAAiC;iCAC/C;6BACF;4BACD;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,WAAW;gCACjB,KAAK,EAAE,YAAY;gCACnB,KAAK,EAAE;oCACL,KAAK,EAAE,KAAK;oCACZ,WAAW,EAAE,6BAA6B;iCAC3C;6BACF;yBACF;qBACF;oBACD;wBACE,IAAI,EAAE,KAAK;wBACX,MAAM,EAAE;4BACN;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,SAAS;gCACf,KAAK,EAAE,UAAU;gCACjB,KAAK,EAAE;oCACL,KAAK,EAAE,KAAK;iCACb;6BACF;4BACD;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,KAAK;gCACX,KAAK,EAAE,KAAK;gCACZ,KAAK,EAAE;oCACL,KAAK,EAAE,KAAK;iCACb;6BACF;yBACF;qBACF;oBACD;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,SAAS;wBAChB,YAAY,EAAE,iCAAiC;wBAC/C,QAAQ,EAAE,IAAI;qBACf;oBACD;wBACE,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,SAAS;wBAChB,KAAK,EAAE;4BACL,WAAW,EAAE,sDAAsD;yBACpE;qBACF;iBACF;aACF;WACE,CAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,aAAa,0CAAE,MAAM,KAAI,EAAE,OAC3C;KACF,CAAA;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA1MW,QAAA,sBAAsB,0BA0MjC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/plugin-form-builder",
3
- "version": "1.0.1",
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
  }