@arquimedes.co/eureka-forms 1.9.92-test → 1.9.94-test

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.
@@ -1,4 +1,4 @@
1
- import Types, { ClassifierOptionTypes, OptionTypes, RatingTypes, MapperStyleTypes, EntityValueOptionTypes } from '../constants/FormStepTypes';
1
+ import Types, { ClassifierOptionTypes, OptionTypes, RatingTypes, MapperStyleTypes, EntityValueOptionTypes, EntityValueDataTypes } from '../constants/FormStepTypes';
2
2
  import * as GSteps from './GenericFormSteps';
3
3
  export type FormStep = Title | Rating | CheckBox | TextArea | TextInput | DatePicker | FileUpload | Separator | FormSelector | ClassifierSelector | Collapsible | EntityValuePicker | Mapper;
4
4
  export interface Title extends GSteps.GBaseStep {
@@ -98,17 +98,8 @@ export interface EntityValuePicker extends GSteps.GSmartSelect {
98
98
  type: Types.ENTITYVALUEPICKER;
99
99
  idEntity: string;
100
100
  icon: string | null;
101
- filters: {
102
- idProperty: string;
103
- idStep?: string;
104
- value?: string;
105
- required?: boolean;
106
- }[];
107
- path: {
108
- idEntity: string;
109
- idStep?: string;
110
- idEntityValue?: string;
111
- }[];
101
+ filters: EntityValuePickerFilter[];
102
+ path: EntityValuePickerPath[];
112
103
  options: Record<string, FormEntityValuePickerOption>;
113
104
  maxSize?: number;
114
105
  }
@@ -122,6 +113,31 @@ interface HideFormEntityValuePickerOption {
122
113
  type: EntityValueOptionTypes.HIDE;
123
114
  idEntityValue: String;
124
115
  }
116
+ export type EntityValuePickerPath = StepEntityValuePickerPath | ValueEntityValuePickerPath;
117
+ export interface StepEntityValuePickerPath {
118
+ idEntity: string;
119
+ type: EntityValueDataTypes.STEP;
120
+ idStep: string;
121
+ any: boolean;
122
+ }
123
+ export interface ValueEntityValuePickerPath {
124
+ idEntity: string;
125
+ type: EntityValueDataTypes.VALUE;
126
+ idEntityValue: string | null;
127
+ }
128
+ export type EntityValuePickerFilter = StepEntityValuePickerFilter | ValueEntityValuePickerFilter;
129
+ export interface StepEntityValuePickerFilter {
130
+ idProperty: string;
131
+ type: EntityValueDataTypes.STEP;
132
+ idStep: string;
133
+ any: boolean;
134
+ required: boolean;
135
+ }
136
+ export interface ValueEntityValuePickerFilter {
137
+ idProperty: string;
138
+ type: EntityValueDataTypes.VALUE;
139
+ value: any;
140
+ }
125
141
  export interface Mapper extends GSteps.GBaseStep {
126
142
  type: Types.MAPPER;
127
143
  style: {
@@ -59,11 +59,11 @@ var __rest = (this && this.__rest) || function (s, e) {
59
59
  import { createElement as _createElement } from "react";
60
60
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
61
61
  import React, { useEffect, useState } from 'react';
62
- import FormStepTypes, { EntityValueOptionTypes, } from '../../../../constants/FormStepTypes';
62
+ import FormStepTypes, { EntityValueDataTypes, EntityValueOptionTypes, } from '../../../../constants/FormStepTypes';
63
63
  import styles from './MaterialEntityValuePickerStep.module.css';
64
64
  import StepComponent from '../../Step';
65
65
  import { Controller } from 'react-hook-form';
66
- import { calcFillerSize, calcStepWidth } from '../../StepFunctions';
66
+ import { calcFillerSize } from '../../StepFunctions';
67
67
  import { SmartSelect } from '../../SmartSelectStep/MaterialSmartSelectStep/MaterialSmartSelectStep';
68
68
  import widgetInstance from '../../../../AxiosWidget';
69
69
  import axiosInstance from '../../../../AxiosAPI';
@@ -85,50 +85,63 @@ function EntityValuePicker(_a) {
85
85
  var getEntityValueOptions = function (_a, _step, dependencyStore, domain) {
86
86
  var idOrganization = _a.idOrganization;
87
87
  return __awaiter(_this, void 0, void 0, function () {
88
- var params, _i, _b, filter, value_1, currentValue, url, response;
89
- var _c;
90
- return __generator(this, function (_d) {
91
- switch (_d.label) {
88
+ var params, _i, _b, filter, currentValue, urlPath, _c, _d, path, idEntityValue, currentValue, url, response;
89
+ var _e, _f, _g;
90
+ return __generator(this, function (_h) {
91
+ switch (_h.label) {
92
92
  case 0:
93
93
  params = new URLSearchParams({});
94
94
  for (_i = 0, _b = step.filters; _i < _b.length; _i++) {
95
95
  filter = _b[_i];
96
- value_1 = filter.value;
97
- if (filter.idStep) {
98
- currentValue = dependencyStore[filter.idStep];
99
- if (currentValue) {
100
- if (typeof currentValue === 'string')
101
- value_1 = currentValue;
102
- else
103
- value_1 = (_c = currentValue._id) !== null && _c !== void 0 ? _c : currentValue.id;
104
- //TODO: Manejo de multiple!
105
- }
106
- else if (filter.required) {
107
- return [2 /*return*/, null];
108
- }
96
+ switch (filter.type) {
97
+ case EntityValueDataTypes.STEP:
98
+ currentValue = dependencyStore[filter.idStep];
99
+ if (currentValue) {
100
+ if (typeof currentValue === 'string')
101
+ params.set(filter.idProperty, currentValue);
102
+ else
103
+ params.set(filter.idProperty, (_e = currentValue._id) !== null && _e !== void 0 ? _e : currentValue.id);
104
+ }
105
+ else if (filter.required) {
106
+ return [2 /*return*/, null];
107
+ }
108
+ break;
109
+ case EntityValueDataTypes.VALUE:
110
+ default:
111
+ params.set(filter.idProperty, filter.value);
112
+ break;
109
113
  }
110
- if (value_1)
111
- params.set(filter.idProperty, value_1);
112
114
  }
113
- url = "".concat(domain !== null && domain !== void 0 ? domain : idOrganization, "/entities/").concat(step.idEntity).concat(step.path.map(function (path) {
114
- var _a;
115
- var idEntityValue = path.idEntityValue;
116
- if (path.idStep) {
117
- var currentValue = dependencyStore[path.idStep];
118
- if (currentValue) {
115
+ urlPath = '';
116
+ for (_c = 0, _d = step.path; _c < _d.length; _c++) {
117
+ path = _d[_c];
118
+ idEntityValue = 'null';
119
+ switch (path.type) {
120
+ case EntityValueDataTypes.STEP:
121
+ currentValue = dependencyStore[path.idStep];
122
+ if (!currentValue)
123
+ return [2 /*return*/, null];
119
124
  if (typeof currentValue === 'string')
120
125
  idEntityValue = currentValue;
121
126
  else
122
- idEntityValue = (_a = currentValue._id) !== null && _a !== void 0 ? _a : currentValue.id;
123
- }
127
+ idEntityValue = (_f = currentValue._id) !== null && _f !== void 0 ? _f : currentValue.id;
128
+ break;
129
+ case EntityValueDataTypes.VALUE:
130
+ default:
131
+ idEntityValue = (_g = path.idEntityValue) !== null && _g !== void 0 ? _g : 'null';
132
+ break;
124
133
  }
125
- return ('/' + path.idEntity + (idEntityValue ? '/' + idEntityValue : ''));
126
- }), "?").concat(params.toString());
134
+ urlPath +=
135
+ '/' +
136
+ path.idEntity +
137
+ (idEntityValue ? '/' + idEntityValue : '');
138
+ }
139
+ url = "".concat(domain !== null && domain !== void 0 ? domain : idOrganization, "/entities/").concat(step.idEntity).concat(urlPath, "?").concat(params.toString());
127
140
  return [4 /*yield*/, (domain
128
141
  ? widgetInstance.get(url)
129
142
  : axiosInstance.get(url))];
130
143
  case 1:
131
- response = _d.sent();
144
+ response = _h.sent();
132
145
  return [2 /*return*/, response.data.filter(function (option) { var _a; return ((_a = step.options[option._id]) === null || _a === void 0 ? void 0 : _a.type) !== EntityValueOptionTypes.HIDE; })];
133
146
  }
134
147
  });
@@ -141,25 +154,17 @@ function EntityValuePicker(_a) {
141
154
  }
142
155
  };
143
156
  var renderSelect = function () {
144
- return (_jsx("div", __assign({ className: styles.container, style: {
145
- width: widthStats.currentBreakPoint <= step.size
146
- ? '100%'
147
- : calcStepWidth(step.size, form.size),
148
- minHeight: step.description ||
149
- (!postview && editable && step.required)
150
- ? '55px'
151
- : '43px',
152
- } }, { children: _jsx(SmartSelect, __assign({}, others, { form: form, level: level, control: control, postview: postview, getValues: getValues, widthStats: widthStats, value: value, inputRef: inputRef, editable: editable, step: step, icon: step.icon ? _jsx(InputIcon, { icon: step.icon }) : undefined, getOptions: getEntityValueOptions, getOptionSelected: function (option, value) {
153
- return option._id === value._id;
154
- }, calcDepError: function (steps) {
155
- for (var _i = 0, steps_1 = steps; _i < steps_1.length; _i++) {
156
- var step_1 = steps_1[_i];
157
- if (step_1.type === FormStepTypes.ENTITYVALUEPICKER) {
158
- return 'Selecciona un ' + step_1.label;
159
- }
157
+ return (_jsx(SmartSelect, __assign({}, others, { form: form, level: level, control: control, postview: postview, getValues: getValues, widthStats: widthStats, value: value, inputRef: inputRef, editable: editable, step: step, icon: step.icon ? _jsx(InputIcon, { icon: step.icon }) : undefined, getOptions: getEntityValueOptions, getOptionSelected: function (option, value) {
158
+ return option._id === value._id;
159
+ }, calcDepError: function (steps) {
160
+ for (var _i = 0, steps_1 = steps; _i < steps_1.length; _i++) {
161
+ var step_1 = steps_1[_i];
162
+ if (step_1.type === FormStepTypes.ENTITYVALUEPICKER) {
163
+ return 'Selecciona un ' + step_1.label;
160
164
  }
161
- return undefined;
162
- }, getValueString: function (value) { return value === null || value === void 0 ? void 0 : value._id; } })) }), step.id));
165
+ }
166
+ return undefined;
167
+ }, getValueString: function (value) { return value === null || value === void 0 ? void 0 : value._id; } })));
163
168
  };
164
169
  var mapNestedOption = function () {
165
170
  if (value) {
@@ -33,7 +33,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
33
33
  import React, { useState, useEffect, cloneElement } from 'react';
34
34
  import styles from './MaterialMapperStep.module.css';
35
35
  import { Controller } from 'react-hook-form';
36
- import StepTypes, { ClassifierOptionTypes, EntityValueOptionTypes, MapperStyleTypes, OptionTypes, } from '../../../../constants/FormStepTypes';
36
+ import StepTypes, { ClassifierOptionTypes, EntityValueDataTypes, EntityValueOptionTypes, MapperStyleTypes, OptionTypes, } from '../../../../constants/FormStepTypes';
37
37
  import RoundedButton from '../../../../shared/RoundedButton/RoundedButton';
38
38
  import { nanoid } from 'nanoid';
39
39
  import { calcStepDependencyValue } from '../../../Form/ColumnForm/ColumnForm';
@@ -249,12 +249,16 @@ function calcRecursiveData(element, newSteps, deps, customSteps, originalValues)
249
249
  case StepTypes.ENTITYVALUEPICKER:
250
250
  for (var _j = 0, _k = step.filters; _j < _k.length; _j++) {
251
251
  var filter = _k[_j];
252
- if (filter.idStep) {
253
- var newId = element.ids[filter.idStep];
254
- if (newId) {
255
- filter.idStep = newId;
256
- deps[newId] = calcStepDependencyValue(newSteps[newId], originalValues);
257
- }
252
+ switch (filter.type) {
253
+ case EntityValueDataTypes.STEP:
254
+ var newId = element.ids[filter.idStep];
255
+ if (newId) {
256
+ filter.idStep = newId;
257
+ deps[newId] = calcStepDependencyValue(newSteps[newId], originalValues);
258
+ }
259
+ break;
260
+ default:
261
+ break;
258
262
  }
259
263
  }
260
264
  for (var _l = 0, _m = Object.keys((_a = step.options) !== null && _a !== void 0 ? _a : {}); _l < _m.length; _l++) {
@@ -44,3 +44,7 @@ export declare enum MapperStyleTypes {
44
44
  LIST = "LIST",
45
45
  INLINE = "INLINE"
46
46
  }
47
+ export declare enum EntityValueDataTypes {
48
+ STEP = "STEP",
49
+ VALUE = "VALUE"
50
+ }
@@ -52,3 +52,8 @@ export var MapperStyleTypes;
52
52
  MapperStyleTypes["LIST"] = "LIST";
53
53
  MapperStyleTypes["INLINE"] = "INLINE";
54
54
  })(MapperStyleTypes || (MapperStyleTypes = {}));
55
+ export var EntityValueDataTypes;
56
+ (function (EntityValueDataTypes) {
57
+ EntityValueDataTypes["STEP"] = "STEP";
58
+ EntityValueDataTypes["VALUE"] = "VALUE";
59
+ })(EntityValueDataTypes || (EntityValueDataTypes = {}));
@@ -82,6 +82,7 @@ var useTextfieldStyles = function (props) {
82
82
  },
83
83
  '& .EF-MuiOutlinedInput-notchedOutline': {
84
84
  borderColor: props.outlineColor,
85
+ pointerEvents: 'all',
85
86
  },
86
87
  height: props.height,
87
88
  '& .EF-MuiAutocomplete-input': {
@@ -210,7 +211,7 @@ export default function RoundedSmartSelect(_a) {
210
211
  }
211
212
  }, renderOption: function (option) {
212
213
  return typeof option === 'string' ? option : option.label;
213
- }, renderInput: function (params) { return (_jsx(TextField, __assign({ classes: textFieldClasses }, params, { inputRef: inputRef, onBlur: onBlur, name: name, variant: "outlined", label: label, required: required, error: error, helperText: helperText }))); }, style: { pointerEvents: 'none' }, noOptionsText: "No hay opciones" }));
214
+ }, renderInput: function (params) { return (_jsx(TextField, __assign({ classes: textFieldClasses }, params, { inputRef: inputRef, onBlur: onBlur, name: name, variant: "outlined", label: label, required: required, error: error, helperText: helperText }))); }, noOptionsText: "No hay opciones" }));
214
215
  }
215
216
  else {
216
217
  return (_jsxs(RoundedSelect, __assign({ onBlur: onBlur, onFocus: onFocus, inputRef: inputRef, name: name, fullWidth: true, handleUpdate: function (event) {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@arquimedes.co/eureka-forms",
3
3
  "repository": "git://github.com/Arquimede5/Eureka-Forms.git",
4
- "version":"1.9.92-test",
4
+ "version":"1.9.94-test",
5
5
  "scripts": {
6
6
  "start": "react-scripts start",
7
7
  "build": "react-scripts build",