@jmm-devkit/ngx-form-generator 1.3.1 → 1.3.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.
@@ -59,7 +59,7 @@ exports.makeForm = makeForm;
59
59
  */
60
60
  function makeDefinition(definitionName, definition) {
61
61
  return `export const ${(0, camelcase_1.default)(definitionName)}Form = () => new FormGroup({
62
- ${makeFieldsBody(definition, 0)}
62
+ ${makeFieldsBody(Object.assign({}, definition), 0)}
63
63
  });\n`;
64
64
  }
65
65
  /**
@@ -100,20 +100,22 @@ function extractPropertiesFields(definition, depth) {
100
100
  * @returns An array of strings representing the form fields.
101
101
  */
102
102
  function extractAllOfFields(definition, depth) {
103
- var _a, _b, _c;
103
+ var _a, _b, _c, _d, _e;
104
104
  if (!('allOf' in definition) || !Array.isArray(definition.allOf))
105
105
  return [];
106
106
  const fields = [];
107
+ const definitionRequired = (_a = definition.required) !== null && _a !== void 0 ? _a : [];
107
108
  for (const subSchema of definition.allOf) {
108
109
  if ('$ref' in subSchema) {
109
110
  const refName = subSchema.$ref.split('/').pop();
110
- const refSchema = ((_a = definition.definitions) === null || _a === void 0 ? void 0 : _a[refName]) || ((_c = (_b = definition.components) === null || _b === void 0 ? void 0 : _b.schemas) === null || _c === void 0 ? void 0 : _c[refName]);
111
+ const refSchema = ((_b = definition.definitions) === null || _b === void 0 ? void 0 : _b[refName]) || ((_d = (_c = definition.components) === null || _c === void 0 ? void 0 : _c.schemas) === null || _d === void 0 ? void 0 : _d[refName]);
111
112
  if (refSchema) {
113
+ refSchema.required = [...refSchema.required, ...definitionRequired];
112
114
  fields.push(...makeFieldsBody(refSchema, depth));
113
115
  }
114
116
  }
115
117
  else if ('type' in subSchema && subSchema.type === 'object') {
116
- subSchema.required = definition.required;
118
+ subSchema.required = [...((_e = subSchema.required) !== null && _e !== void 0 ? _e : []), ...definitionRequired];
117
119
  fields.push(...makeFieldsBody(subSchema, depth));
118
120
  }
119
121
  else {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jmm-devkit/ngx-form-generator",
3
- "version": "1.3.1",
3
+ "version": "1.3.2",
4
4
  "description": "Generates an Angular ReactiveForm from a Swagger or OpenAPI definition",
5
5
  "main": "dist/generator-lib.js",
6
6
  "repository": "github:jmm-devkit/ngx-form-generator",