@luomus/laji-form 15.1.92 → 15.1.94

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 (73) hide show
  1. package/dist/laji-form.js +1 -1
  2. package/lib/components/LajiForm.d.ts +255 -3
  3. package/lib/components/LajiForm.js +3 -128
  4. package/lib/components/VirtualSchemaField.d.ts +1 -1
  5. package/lib/components/VirtualSchemaField.js +13 -12
  6. package/lib/components/components/Button.d.ts +1 -1
  7. package/lib/components/components/GlyphButton.d.ts +1 -1
  8. package/lib/components/fields/AnnotationField.d.ts +12 -7
  9. package/lib/components/fields/AnnotationField.js +16 -22
  10. package/lib/components/fields/AnyToBooleanField.d.ts +11 -10
  11. package/lib/components/fields/ArrayField.js +2 -12
  12. package/lib/components/fields/ArrayPropertySumField.d.ts +0 -1
  13. package/lib/components/fields/ArrayPropertySumField.js +8 -23
  14. package/lib/components/fields/ExtraLabelRowField.d.ts +1 -1
  15. package/lib/components/fields/ExtraLabelRowField.js +4 -14
  16. package/lib/components/fields/FilterArrayField.d.ts +1 -1
  17. package/lib/components/fields/FilterArrayField.js +4 -17
  18. package/lib/components/fields/GeocoderField.js +6 -40
  19. package/lib/components/fields/ImageArrayField.js +2 -6
  20. package/lib/components/fields/ImageDisplayField.js +2 -12
  21. package/lib/components/fields/InitiallyHiddenField.d.ts +1 -4
  22. package/lib/components/fields/InitiallyHiddenField.js +6 -19
  23. package/lib/components/fields/LocalityField.d.ts +1 -0
  24. package/lib/components/fields/LocalityField.js +5 -15
  25. package/lib/components/fields/LocationChooserField.d.ts +44 -2
  26. package/lib/components/fields/LocationChooserField.js +5 -16
  27. package/lib/components/fields/MultiActiveArrayField.d.ts +1 -0
  28. package/lib/components/fields/MultiActiveArrayField.js +5 -12
  29. package/lib/components/fields/MultiAnyToBooleanField.d.ts +2 -7
  30. package/lib/components/fields/MultiAnyToBooleanField.js +6 -19
  31. package/lib/components/fields/MultiArrayField.d.ts +2 -1
  32. package/lib/components/fields/MultiArrayField.js +5 -14
  33. package/lib/components/fields/MultiLanguageField.js +2 -15
  34. package/lib/components/fields/MultiTagArrayField.js +2 -12
  35. package/lib/components/fields/NamedPlaceSaverField.d.ts +46 -46
  36. package/lib/components/fields/NamedPlaceSaverField.js +6 -19
  37. package/lib/components/fields/PrefixArrayField.d.ts +2 -0
  38. package/lib/components/fields/PrefixArrayField.js +9 -15
  39. package/lib/components/fields/ScientificNameTaxonAutosuggestField.d.ts +3 -2
  40. package/lib/components/fields/ScientificNameTaxonAutosuggestField.js +6 -16
  41. package/lib/components/fields/SingleActiveArrayField.js +2 -6
  42. package/lib/components/fields/SplitField.js +2 -12
  43. package/lib/components/fields/TableField.js +2 -6
  44. package/lib/components/fields/TagArrayField.js +2 -12
  45. package/lib/components/fields/TaxonSetPopulatorField.js +3 -1
  46. package/lib/components/fields/ToggleAdditionalArrayFieldsField.d.ts +0 -4
  47. package/lib/components/fields/ToggleAdditionalArrayFieldsField.js +4 -18
  48. package/lib/components/fields/UnitCountShorthandField.js +2 -6
  49. package/lib/components/fields/UnitListShorthandArrayField.d.ts +46 -45
  50. package/lib/components/fields/UnitListShorthandArrayField.js +8 -18
  51. package/lib/components/fields/UnitShorthandField.js +7 -17
  52. package/lib/components/fields/index.d.ts +75 -0
  53. package/lib/components/fields/index.js +158 -0
  54. package/lib/components/templates/index.d.ts +8 -0
  55. package/lib/components/templates/index.js +22 -0
  56. package/lib/components/widgets/AnyToBooleanWidget.d.ts +14 -12
  57. package/lib/components/widgets/AnyToBooleanWidget.js +3 -2
  58. package/lib/components/widgets/DateTimeWidget.d.ts +9 -0
  59. package/lib/components/widgets/DateTimeWidget.js +7 -14
  60. package/lib/components/widgets/ImageSelectWidget.js +2 -12
  61. package/lib/components/widgets/InformalTaxonGroupChooserWidget.js +2 -12
  62. package/lib/components/widgets/SeparatedDateTimeWidget.d.ts +5 -1
  63. package/lib/components/widgets/SeparatedDateTimeWidget.js +8 -14
  64. package/lib/components/widgets/index.d.ts +20 -0
  65. package/lib/components/widgets/index.js +46 -0
  66. package/lib/themes/theme.d.ts +1 -0
  67. package/lib/types.d.ts +1 -1
  68. package/lib/utils.d.ts +1 -1
  69. package/package.json +3 -3
  70. package/lib/components/BaseComponent.d.ts +0 -8
  71. package/lib/components/BaseComponent.js +0 -28
  72. package/lib/components/fields/ArrayBulkField.d.ts +0 -28
  73. package/lib/components/fields/ArrayBulkField.js +0 -118
@@ -15,12 +15,6 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
- return c > 3 && r && Object.defineProperty(target, key, r), r;
23
- };
24
18
  var __importStar = (this && this.__importStar) || (function () {
25
19
  var ownKeys = function(o) {
26
20
  ownKeys = Object.getOwnPropertyNames || function (o) {
@@ -49,10 +43,10 @@ const utils_1 = require("../../utils");
49
43
  const components_1 = require("../components");
50
44
  const memoizee_1 = __importDefault(require("memoizee"));
51
45
  const immutability_helper_1 = __importDefault(require("immutability-helper"));
52
- const BaseComponent_1 = __importDefault(require("../BaseComponent"));
53
- let PrefixArrayField = class PrefixArrayField extends React.Component {
54
- constructor() {
55
- super(...arguments);
46
+ class PrefixArrayField extends React.Component {
47
+ static getName() { return "PrefixArrayField"; }
48
+ constructor(props) {
49
+ super(props);
56
50
  this.onSelectFieldChange = (prefix) => {
57
51
  const separator = this.getSeparator(this.props.uiSchema);
58
52
  const newFormData = [...(this.props.formData || []), prefix + separator];
@@ -68,8 +62,11 @@ let PrefixArrayField = class PrefixArrayField extends React.Component {
68
62
  const newFormData = (0, immutability_helper_1.default)(this.props.formData, { $splice: [[idx, 1]] });
69
63
  this.props.onChange(newFormData);
70
64
  });
65
+ this.state = this.getStateFromProps(props);
66
+ }
67
+ UNSAFE_componentWillReceiveProps(props) {
68
+ this.setState(this.getStateFromProps(props));
71
69
  }
72
- static getName() { return "PrefixArrayField"; }
73
70
  getSeparator(uiSchema) {
74
71
  const { separator = ":" } = (0, utils_1.getUiOptions)(uiSchema);
75
72
  return separator;
@@ -117,7 +114,7 @@ let PrefixArrayField = class PrefixArrayField extends React.Component {
117
114
  React.createElement(components_1.DeleteButton, { id: props.idSchema.$id, onClick: this.onFieldDelete(idx), translations: translations, confirm: confirmDelete, disabled: disabled || readonly })))),
118
115
  React.createElement(SelectWidget_1.default, { key: childProps.length, options: { enumOptions: selectableFieldEnums, placeholder: addFieldPlaceholder !== null && addFieldPlaceholder !== void 0 ? addFieldPlaceholder : `${translations.AddField}` }, onChange: this.onSelectFieldChange, includeEmpty: true, schema: {}, id: `${idSchema.$id}_field_select`, formContext: this.props.formContext, disabled: this.props.disabled, readonly: this.props.readonly })));
119
116
  }
120
- };
117
+ }
121
118
  PrefixArrayField.propTypes = {
122
119
  uiSchema: PropTypes.shape({
123
120
  "ui:options": PropTypes.shape({
@@ -132,7 +129,4 @@ PrefixArrayField.propTypes = {
132
129
  }).isRequired,
133
130
  formData: PropTypes.array
134
131
  };
135
- PrefixArrayField = __decorate([
136
- BaseComponent_1.default
137
- ], PrefixArrayField);
138
132
  exports.default = PrefixArrayField;
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import * as PropTypes from "prop-types";
3
3
  import { FieldProps, JSONSchemaObject, JSONSchemaEnumOneOf } from "../../types";
4
- interface State extends Pick<FieldProps<JSONSchemaObject>, "schema" | "uiSchema"> {
4
+ interface State {
5
5
  suggestion?: any;
6
6
  }
7
7
  interface ValueContext {
@@ -25,7 +25,8 @@ export default class ScientificNameTaxonAutosuggestField extends React.Component
25
25
  }>>>;
26
26
  formData: PropTypes.Validator<object>;
27
27
  };
28
- getStateFromProps: (props: FieldProps<JSONSchemaObject>) => State;
28
+ state: State;
29
+ getUiSchema: (props: FieldProps<JSONSchemaObject>) => any;
29
30
  getSuggestionValue: (suggestion: any) => string;
30
31
  onSuggestionSelected: (suggestion: any, mounted: boolean) => void;
31
32
  onUnsuggestionSelected: (value: any) => void;
@@ -15,12 +15,6 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
- return c > 3 && r && Object.defineProperty(target, key, r), r;
23
- };
24
18
  var __importStar = (this && this.__importStar) || (function () {
25
19
  var ownKeys = function(o) {
26
20
  ownKeys = Object.getOwnPropertyNames || function (o) {
@@ -56,7 +50,6 @@ const PropTypes = __importStar(require("prop-types"));
56
50
  const utils_1 = require("../../utils");
57
51
  const ReactContext_1 = __importDefault(require("../../ReactContext"));
58
52
  const AutosuggestWidget_1 = require("../widgets/AutosuggestWidget");
59
- const BaseComponent_1 = __importDefault(require("../BaseComponent"));
60
53
  const components_1 = require("../components");
61
54
  function addBold(original, substring) {
62
55
  const newOriginal = original.toLowerCase();
@@ -69,10 +62,11 @@ function addBold(original, substring) {
69
62
  original.slice(index + substring.length))
70
63
  : original;
71
64
  }
72
- let ScientificNameTaxonAutosuggestField = class ScientificNameTaxonAutosuggestField extends React.Component {
65
+ class ScientificNameTaxonAutosuggestField extends React.Component {
73
66
  constructor() {
74
67
  super(...arguments);
75
- this.getStateFromProps = (props) => {
68
+ this.state = {};
69
+ this.getUiSchema = (props) => {
76
70
  var _a;
77
71
  let { schema, uiSchema, formData = {} } = props;
78
72
  const uiOptions = (0, utils_1.getUiOptions)(uiSchema);
@@ -95,8 +89,7 @@ let ScientificNameTaxonAutosuggestField = class ScientificNameTaxonAutosuggestFi
95
89
  }
96
90
  const taxonExistingUiSchema = (0, utils_1.parseJSONPointer)(innerUiSchema, _uiSchemaJSONPointer);
97
91
  let widgetProps = taxonExistingUiSchema || {};
98
- let _uiSchema = (0, utils_1.updateSafelyWithJSONPointer)(innerUiSchema, Object.assign(Object.assign({ "ui:widget": "AutosuggestWidget" }, widgetProps), { "ui:options": Object.assign(Object.assign({}, (0, utils_1.getUiOptions)((taxonExistingUiSchema || {})[taxonField])), options) }), _uiSchemaJSONPointer);
99
- return { schema, uiSchema: _uiSchema };
92
+ return (0, utils_1.updateSafelyWithJSONPointer)(innerUiSchema, Object.assign(Object.assign({ "ui:widget": "AutosuggestWidget" }, widgetProps), { "ui:options": Object.assign(Object.assign({}, (0, utils_1.getUiOptions)((taxonExistingUiSchema || {})[taxonField])), options) }), _uiSchemaJSONPointer);
100
93
  };
101
94
  this.getSuggestionValue = (suggestion) => {
102
95
  return suggestion.scientificName;
@@ -204,9 +197,9 @@ let ScientificNameTaxonAutosuggestField = class ScientificNameTaxonAutosuggestFi
204
197
  }
205
198
  render() {
206
199
  const { SchemaField } = this.props.registry.fields;
207
- return React.createElement(SchemaField, Object.assign({}, this.props, { uiSchema: this.state.uiSchema }));
200
+ return React.createElement(SchemaField, Object.assign({}, this.props, { uiSchema: this.getUiSchema(this.props) }));
208
201
  }
209
- };
202
+ }
210
203
  ScientificNameTaxonAutosuggestField.contextType = ReactContext_1.default;
211
204
  ScientificNameTaxonAutosuggestField.propTypes = {
212
205
  uiSchema: PropTypes.shape({
@@ -223,9 +216,6 @@ ScientificNameTaxonAutosuggestField.propTypes = {
223
216
  }).isRequired,
224
217
  formData: PropTypes.object.isRequired
225
218
  };
226
- ScientificNameTaxonAutosuggestField = __decorate([
227
- BaseComponent_1.default
228
- ], ScientificNameTaxonAutosuggestField);
229
219
  exports.default = ScientificNameTaxonAutosuggestField;
230
220
  class _TaxonWrapper extends React.Component {
231
221
  render() {
@@ -64,7 +64,6 @@ const ArrayFieldTemplate_1 = __importStar(require("../templates/ArrayFieldTempla
64
64
  const ArrayField_1 = require("./ArrayField");
65
65
  const Context_1 = __importDefault(require("../../Context"));
66
66
  const ReactContext_1 = __importDefault(require("../../ReactContext"));
67
- const BaseComponent_1 = __importDefault(require("../BaseComponent"));
68
67
  const utils_3 = require("@rjsf/utils");
69
68
  const memoizee_1 = __importDefault(require("memoizee"));
70
69
  const ArrayField_2 = require("./ArrayField");
@@ -106,7 +105,7 @@ const getPopupDataPromise = (props, itemFormData) => {
106
105
  const isActive = (idx, activeIdx) => {
107
106
  return idx === activeIdx || (Array.isArray(activeIdx) && activeIdx.includes(idx));
108
107
  };
109
- let SingleActiveArrayField = class SingleActiveArrayField extends React.Component {
108
+ class SingleActiveArrayField extends React.Component {
110
109
  constructor(props) {
111
110
  super(props);
112
111
  this.getInitialActiveIdx = (props) => {
@@ -297,7 +296,7 @@ let SingleActiveArrayField = class SingleActiveArrayField extends React.Componen
297
296
  uiSchema["ui:ArrayFieldTemplate"] = ArrayFieldTemplate;
298
297
  return (React.createElement(ArrayField, Object.assign({}, this.props, { formContext: formContext, registry: Object.assign(Object.assign({}, this.props.registry), { formContext }), uiSchema: uiSchema })));
299
298
  }
300
- };
299
+ }
301
300
  SingleActiveArrayField.propTypes = {
302
301
  uiSchema: PropTypes.shape({
303
302
  "ui:options": PropTypes.shape({
@@ -310,9 +309,6 @@ SingleActiveArrayField.propTypes = {
310
309
  }).isRequired,
311
310
  formData: PropTypes.array
312
311
  };
313
- SingleActiveArrayField = __decorate([
314
- BaseComponent_1.default
315
- ], SingleActiveArrayField);
316
312
  exports.default = SingleActiveArrayField;
317
313
  class Popup extends React.Component {
318
314
  render() {
@@ -15,12 +15,6 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
- return c > 3 && r && Object.defineProperty(target, key, r), r;
23
- };
24
18
  var __importStar = (this && this.__importStar) || (function () {
25
19
  var ownKeys = function(o) {
26
20
  ownKeys = Object.getOwnPropertyNames || function (o) {
@@ -45,11 +39,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
45
39
  const React = __importStar(require("react"));
46
40
  const PropTypes = __importStar(require("prop-types"));
47
41
  const utils_1 = require("../../utils");
48
- const BaseComponent_1 = __importDefault(require("../BaseComponent"));
49
42
  const NestField_1 = require("./NestField");
50
43
  const ReactContext_1 = __importDefault(require("../../ReactContext"));
51
44
  const utils_2 = require("@rjsf/utils");
52
- let SplitField = class SplitField extends React.Component {
45
+ class SplitField extends React.Component {
53
46
  constructor() {
54
47
  super(...arguments);
55
48
  this.renderSplitField = ({ fields }) => {
@@ -75,7 +68,7 @@ let SplitField = class SplitField extends React.Component {
75
68
  React.createElement(DescriptionFieldTemplate, { id: `${this.props.idSchema.$id}__description`, schema: this.props.schema, description: this.props.description, registry: this.props.registry }),
76
69
  React.createElement(Row, null, (0, utils_1.getUiOptions)(this.props.uiSchema).splits.map((split, i) => React.createElement(Col, { md: split.md, lg: split.lg, xs: split.xs, sm: split.sm, key: i }, this.renderSplitField(split))))));
77
70
  }
78
- };
71
+ }
79
72
  SplitField.contextType = ReactContext_1.default;
80
73
  SplitField.propTypes = {
81
74
  uiSchema: PropTypes.shape({
@@ -96,7 +89,4 @@ SplitField.propTypes = {
96
89
  }).isRequired,
97
90
  formData: PropTypes.object.isRequired
98
91
  };
99
- SplitField = __decorate([
100
- BaseComponent_1.default
101
- ], SplitField);
102
92
  exports.default = SplitField;
@@ -48,7 +48,6 @@ const utils_1 = require("../../utils");
48
48
  const utils_2 = require("@rjsf/utils");
49
49
  const components_1 = require("../components");
50
50
  const ArrayFieldTemplate_1 = require("../templates/ArrayFieldTemplate");
51
- const BaseComponent_1 = __importDefault(require("../BaseComponent"));
52
51
  const ReactContext_1 = __importDefault(require("../../ReactContext"));
53
52
  const specialRules = {
54
53
  legEditors: {
@@ -62,7 +61,7 @@ const specialRules = {
62
61
  }
63
62
  };
64
63
  const specialRulesPropTypes = PropTypes.oneOf(["legEditors"]);
65
- let TableField = class TableField extends React.Component {
64
+ class TableField extends React.Component {
66
65
  render() {
67
66
  const { schema, uiSchema = {}, formData, registry: { fields: { ArrayField } }, formContext } = this.props;
68
67
  const { uiSchemaContext } = formContext;
@@ -112,7 +111,7 @@ let TableField = class TableField extends React.Component {
112
111
  schemaPropsArray });
113
112
  return (React.createElement(ArrayField, Object.assign({}, this.props, { schema: Object.assign(Object.assign({}, schema), { items: itemsSchema }), uiSchema: _uiSchema, registry: Object.assign(Object.assign({}, this.props.registry), { formContext: _formContext }), formContext: _formContext })));
114
113
  }
115
- };
114
+ }
116
115
  TableField.contextType = ReactContext_1.default;
117
116
  TableField.propTypes = {
118
117
  uiSchema: PropTypes.shape({
@@ -128,9 +127,6 @@ TableField.propTypes = {
128
127
  items: PropTypes.oneOfType([PropTypes.object, PropTypes.array])
129
128
  }).isRequired
130
129
  };
131
- TableField = __decorate([
132
- BaseComponent_1.default
133
- ], TableField);
134
130
  exports.default = TableField;
135
131
  let TableArrayFieldTemplate = class TableArrayFieldTemplate extends React.Component {
136
132
  render() {
@@ -15,12 +15,6 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
- return c > 3 && r && Object.defineProperty(target, key, r), r;
23
- };
24
18
  var __importStar = (this && this.__importStar) || (function () {
25
19
  var ownKeys = function(o) {
26
20
  ownKeys = Object.getOwnPropertyNames || function (o) {
@@ -47,16 +41,15 @@ const React = __importStar(require("react"));
47
41
  const react_dom_1 = require("react-dom");
48
42
  const PropTypes = __importStar(require("prop-types"));
49
43
  const utils_1 = require("../../utils");
50
- const BaseComponent_1 = __importDefault(require("../BaseComponent"));
51
44
  const memoizee_1 = __importDefault(require("memoizee"));
52
- let TagArrayField = class TagArrayField extends React.Component {
45
+ class TagArrayField extends React.Component {
53
46
  render() {
54
47
  const { FieldTemplate } = this.props.registry.templates;
55
48
  const { uiSchema } = this.props;
56
49
  return (React.createElement(FieldTemplate, Object.assign({}, this.props, { forceDisplayLabel: true, rawHelp: uiSchema["ui:help"], description: uiSchema["ui:description"], rawErrors: [], id: this.props.idSchema.$id }),
57
50
  React.createElement(TagInputComponent, Object.assign({}, this.props, { id: this.props.idSchema.$id, tags: this.props.formData }))));
58
51
  }
59
- };
52
+ }
60
53
  TagArrayField.propTypes = {
61
54
  uiSchema: PropTypes.shape({
62
55
  "ui:options": PropTypes.shape({
@@ -75,9 +68,6 @@ TagArrayField.propTypes = {
75
68
  }).isRequired,
76
69
  formData: PropTypes.array
77
70
  };
78
- TagArrayField = __decorate([
79
- BaseComponent_1.default
80
- ], TagArrayField);
81
71
  exports.default = TagArrayField;
82
72
  class TagInputComponent extends React.Component {
83
73
  constructor(props) {
@@ -105,7 +105,9 @@ let TaxonSetPopulatorField = class TaxonSetPopulatorField extends React.Componen
105
105
  ((_b = unit.unitFact) === null || _b === void 0 ? void 0 : _b.broodCount) ||
106
106
  ((_c = unit.unitFact) === null || _c === void 0 ? void 0 : _c.femalesWithBroodsCount) ||
107
107
  ((_d = unit.unitFact) === null || _d === void 0 ? void 0 : _d.juvenileCount)) {
108
- window.alert(`Warning: Can't delete taxon set "${deletedTaxonSetId}" because it has observations.`);
108
+ window.alert("Tätä lajiryhmää ei voi poistaa, koska siihen on kirjattu havaintoja.\n\n" +
109
+ "This taxon set cannot be removed because it contains observations.\n\n" +
110
+ "Den här artgruppen kan inte tas bort eftersom det finns observationer i den.");
109
111
  observationsExist = true;
110
112
  const updatedFormData = Object.assign(Object.assign({}, formData), { taxonCensus: [
111
113
  ...formData.taxonCensus,
@@ -16,14 +16,10 @@ export default class ToggleAdditionalArrayFieldsField extends React.Component<an
16
16
  };
17
17
  constructor(props: any);
18
18
  state: {
19
- uiSchema: import("../../types").UiSchema<any>;
20
19
  visible: {};
21
20
  };
22
21
  getTogglePersistenceContextKey: (props: any) => string;
23
22
  getInitialVisible(props: any): {};
24
- getStateFromProps(props: any): {
25
- uiSchema: import("../../types").UiSchema<any>;
26
- };
27
23
  toggleVisibility: () => void;
28
24
  render(): JSX.Element;
29
25
  }
@@ -15,12 +15,6 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
- return c > 3 && r && Object.defineProperty(target, key, r), r;
23
- };
24
18
  var __importStar = (this && this.__importStar) || (function () {
25
19
  var ownKeys = function(o) {
26
20
  ownKeys = Object.getOwnPropertyNames || function (o) {
@@ -45,9 +39,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
45
39
  const React = __importStar(require("react"));
46
40
  const PropTypes = __importStar(require("prop-types"));
47
41
  const utils_1 = require("../../utils");
48
- const BaseComponent_1 = __importDefault(require("../BaseComponent"));
49
42
  const Context_1 = __importDefault(require("../../Context"));
50
- let ToggleAdditionalArrayFieldsField = class ToggleAdditionalArrayFieldsField extends React.Component {
43
+ class ToggleAdditionalArrayFieldsField extends React.Component {
51
44
  constructor(props) {
52
45
  super(props);
53
46
  this.getTogglePersistenceContextKey = (props) => `$additional_toggle_persistence_${props.idSchema.$id}`;
@@ -57,7 +50,7 @@ let ToggleAdditionalArrayFieldsField = class ToggleAdditionalArrayFieldsField ex
57
50
  context[this.getTogglePersistenceContextKey(this.props)] = visible;
58
51
  this.setState({ visible });
59
52
  };
60
- this.state = Object.assign({ visible: this.getInitialVisible(props) }, this.getStateFromProps(props));
53
+ this.state = { visible: this.getInitialVisible(props) };
61
54
  }
62
55
  getInitialVisible(props) {
63
56
  const { additionalFields } = (0, utils_1.getUiOptions)(props.uiSchema);
@@ -75,16 +68,12 @@ let ToggleAdditionalArrayFieldsField = class ToggleAdditionalArrayFieldsField ex
75
68
  }
76
69
  return visible;
77
70
  }
78
- getStateFromProps(props) {
79
- const innerUiSchema = (0, utils_1.getInnerUiSchema)(props.uiSchema);
80
- return { uiSchema: innerUiSchema };
81
- }
82
71
  render() {
83
72
  const { CheckboxWidget } = this.props.registry.widgets;
84
73
  const { SchemaField } = this.props.registry.fields;
85
74
  const { additionalFields = [], toggleLabel, toggleClassName, toggleHelp } = (0, utils_1.getUiOptions)(this.props.uiSchema);
86
75
  const shouldShow = Object.values(this.props.errorSchema || {}).some(error => additionalFields.some(field => (0, utils_1.parseJSONPointer)(error, field))) || this.state.visible;
87
- let _uiSchema = this.state.uiSchema;
76
+ let _uiSchema = (0, utils_1.getInnerUiSchema)(this.props.uiSchema);
88
77
  if (!shouldShow) {
89
78
  additionalFields.forEach(field => {
90
79
  _uiSchema = (0, utils_1.updateSafelyWithJSONPointer)(_uiSchema, { "ui:field": "HiddenField" }, "items/" + field);
@@ -95,7 +84,7 @@ let ToggleAdditionalArrayFieldsField = class ToggleAdditionalArrayFieldsField ex
95
84
  React.createElement("div", { className: toggleClassName },
96
85
  React.createElement(CheckboxWidget, Object.assign({}, this.props, { id: this.props.idSchema.$id + "_toggle", schema: { type: "boolean" }, value: this.state.visible, onChange: this.toggleVisibility, label: toggleLabel || "", options: { allowUndefined: false, help: toggleHelp }, required: false })))));
97
86
  }
98
- };
87
+ }
99
88
  ToggleAdditionalArrayFieldsField.propTypes = {
100
89
  uiSchema: PropTypes.shape({
101
90
  "ui:options": PropTypes.shape({
@@ -111,7 +100,4 @@ ToggleAdditionalArrayFieldsField.propTypes = {
111
100
  }).isRequired,
112
101
  formData: PropTypes.oneOfType([PropTypes.array]).isRequired
113
102
  };
114
- ToggleAdditionalArrayFieldsField = __decorate([
115
- BaseComponent_1.default
116
- ], ToggleAdditionalArrayFieldsField);
117
103
  exports.default = ToggleAdditionalArrayFieldsField;
@@ -46,7 +46,6 @@ const React = __importStar(require("react"));
46
46
  const PropTypes = __importStar(require("prop-types"));
47
47
  const utils_1 = require("../../utils");
48
48
  const VirtualSchemaField_1 = __importDefault(require("../VirtualSchemaField"));
49
- const BaseComponent_1 = __importDefault(require("../BaseComponent"));
50
49
  const components_1 = require("../components");
51
50
  const deepmerge_1 = __importDefault(require("deepmerge"));
52
51
  const ReactContext_1 = __importDefault(require("../../ReactContext"));
@@ -120,7 +119,7 @@ UnitCountShorthandField = __decorate([
120
119
  VirtualSchemaField_1.default
121
120
  ], UnitCountShorthandField);
122
121
  exports.default = UnitCountShorthandField;
123
- let CodeReader = class CodeReader extends React.Component {
122
+ class CodeReader extends React.Component {
124
123
  constructor(props) {
125
124
  super(props);
126
125
  this.onChange = ({ target: { value } }) => {
@@ -168,7 +167,7 @@ let CodeReader = class CodeReader extends React.Component {
168
167
  });
169
168
  }
170
169
  }
171
- };
170
+ }
172
171
  CodeReader.contextType = ReactContext_1.default;
173
172
  CodeReader.propTypes = {
174
173
  options: PropTypes.shape({
@@ -180,6 +179,3 @@ CodeReader.propTypes = {
180
179
  }),
181
180
  value: PropTypes.string
182
181
  };
183
- CodeReader = __decorate([
184
- BaseComponent_1.default
185
- ], CodeReader);
@@ -11,51 +11,52 @@ export default class UnitListShorthandArrayField extends React.Component<any, an
11
11
  };
12
12
  constructor(props: any);
13
13
  constructor(props: any, context: any);
14
- getStateFromProps(props: any): {
15
- uiSchema: {
16
- "ui:options": any;
17
- "ui:ArrayFieldTemplate"?: React.ComponentType<import("@rjsf/utils").ArrayFieldTemplateProps<any, any, import("../LajiForm").FormContext>> | undefined;
18
- "ui:ArrayFieldDescriptionTemplate"?: React.ComponentType<import("@rjsf/utils").ArrayFieldDescriptionProps<any, any, import("../LajiForm").FormContext>> | undefined;
19
- "ui:ArrayFieldItemTemplate"?: React.ComponentType<import("@rjsf/utils").ArrayFieldTemplateItemType<any, any, import("../LajiForm").FormContext>> | undefined;
20
- "ui:ArrayFieldTitleTemplate"?: React.ComponentType<import("@rjsf/utils").ArrayFieldTitleProps<any, any, import("../LajiForm").FormContext>> | undefined;
21
- "ui:BaseInputTemplate"?: React.ComponentType<import("@rjsf/utils").WidgetProps<any, any, import("../LajiForm").FormContext>> | undefined;
22
- "ui:DescriptionFieldTemplate"?: React.ComponentType<import("@rjsf/utils").DescriptionFieldProps<any, any, import("../LajiForm").FormContext>> | undefined;
23
- "ui:ErrorListTemplate"?: React.ComponentType<import("@rjsf/utils").ErrorListProps<any, any, import("../LajiForm").FormContext>> | undefined;
24
- "ui:FieldErrorTemplate"?: React.ComponentType<import("@rjsf/utils").FieldErrorProps<any, any, import("../LajiForm").FormContext>> | undefined;
25
- "ui:FieldHelpTemplate"?: React.ComponentType<import("@rjsf/utils").FieldHelpProps<any, any, import("../LajiForm").FormContext>> | undefined;
26
- "ui:FieldTemplate"?: React.ComponentType<import("@rjsf/utils").FieldTemplateProps<any, any, import("../LajiForm").FormContext>> | undefined;
27
- "ui:ObjectFieldTemplate"?: React.ComponentType<import("@rjsf/utils").ObjectFieldTemplateProps<any, any, import("../LajiForm").FormContext>> | undefined;
28
- "ui:TitleFieldTemplate"?: React.ComponentType<import("@rjsf/utils").TitleFieldProps<any, any, import("../LajiForm").FormContext>> | undefined;
29
- "ui:UnsupportedFieldTemplate"?: React.ComponentType<import("@rjsf/utils").UnsupportedFieldProps<any, any, import("../LajiForm").FormContext>> | undefined;
30
- "ui:WrapIfAdditionalTemplate"?: React.ComponentType<import("@rjsf/utils").WrapIfAdditionalTemplateProps<any, any, import("../LajiForm").FormContext>> | undefined;
31
- "ui:classNames"?: string | undefined;
32
- "ui:style"?: React.StyleHTMLAttributes<any> | undefined;
33
- "ui:title"?: string | undefined;
34
- "ui:description"?: string | undefined;
35
- "ui:placeholder"?: string | undefined;
36
- "ui:help"?: string | undefined;
37
- "ui:autofocus"?: boolean | undefined;
38
- "ui:autocomplete"?: AutoFill | undefined;
39
- "ui:disabled"?: boolean | undefined;
40
- "ui:emptyValue"?: any;
41
- "ui:enumDisabled"?: (string | number | boolean)[] | undefined;
42
- "ui:hideError"?: boolean | undefined;
43
- "ui:readonly"?: boolean | undefined;
44
- "ui:order"?: string[] | undefined;
45
- "ui:addable"?: boolean | undefined;
46
- "ui:orderable"?: boolean | undefined;
47
- "ui:removable"?: boolean | undefined;
48
- "ui:inline"?: boolean | undefined;
49
- "ui:inputType"?: string | undefined;
50
- "ui:label"?: boolean | undefined;
51
- "ui:rows"?: number | undefined;
52
- "ui:submitButtonOptions"?: import("@rjsf/utils").UISchemaSubmitButtonOptions | undefined;
53
- "ui:widget"?: string | import("@rjsf/utils").Widget<any, any, import("../LajiForm").FormContext> | undefined;
54
- "ui:duplicateKeySuffixSeparator"?: string | undefined;
55
- "ui:rootFieldId"?: string;
56
- "ui:field"?: string | import("@rjsf/utils").Field<any, any, import("../LajiForm").FormContext> | undefined;
57
- "ui:fieldReplacesAnyOrOneOf"?: boolean;
58
- };
14
+ state: {
15
+ show: boolean;
16
+ };
17
+ getUiSchema(props: any): {
18
+ "ui:options": any;
19
+ "ui:ArrayFieldTemplate"?: React.ComponentType<import("@rjsf/utils").ArrayFieldTemplateProps<any, any, import("../LajiForm").FormContext>> | undefined;
20
+ "ui:ArrayFieldDescriptionTemplate"?: React.ComponentType<import("@rjsf/utils").ArrayFieldDescriptionProps<any, any, import("../LajiForm").FormContext>> | undefined;
21
+ "ui:ArrayFieldItemTemplate"?: React.ComponentType<import("@rjsf/utils").ArrayFieldTemplateItemType<any, any, import("../LajiForm").FormContext>> | undefined;
22
+ "ui:ArrayFieldTitleTemplate"?: React.ComponentType<import("@rjsf/utils").ArrayFieldTitleProps<any, any, import("../LajiForm").FormContext>> | undefined;
23
+ "ui:BaseInputTemplate"?: React.ComponentType<import("@rjsf/utils").WidgetProps<any, any, import("../LajiForm").FormContext>> | undefined;
24
+ "ui:DescriptionFieldTemplate"?: React.ComponentType<import("@rjsf/utils").DescriptionFieldProps<any, any, import("../LajiForm").FormContext>> | undefined;
25
+ "ui:ErrorListTemplate"?: React.ComponentType<import("@rjsf/utils").ErrorListProps<any, any, import("../LajiForm").FormContext>> | undefined;
26
+ "ui:FieldErrorTemplate"?: React.ComponentType<import("@rjsf/utils").FieldErrorProps<any, any, import("../LajiForm").FormContext>> | undefined;
27
+ "ui:FieldHelpTemplate"?: React.ComponentType<import("@rjsf/utils").FieldHelpProps<any, any, import("../LajiForm").FormContext>> | undefined;
28
+ "ui:FieldTemplate"?: React.ComponentType<import("@rjsf/utils").FieldTemplateProps<any, any, import("../LajiForm").FormContext>> | undefined;
29
+ "ui:ObjectFieldTemplate"?: React.ComponentType<import("@rjsf/utils").ObjectFieldTemplateProps<any, any, import("../LajiForm").FormContext>> | undefined;
30
+ "ui:TitleFieldTemplate"?: React.ComponentType<import("@rjsf/utils").TitleFieldProps<any, any, import("../LajiForm").FormContext>> | undefined;
31
+ "ui:UnsupportedFieldTemplate"?: React.ComponentType<import("@rjsf/utils").UnsupportedFieldProps<any, any, import("../LajiForm").FormContext>> | undefined;
32
+ "ui:WrapIfAdditionalTemplate"?: React.ComponentType<import("@rjsf/utils").WrapIfAdditionalTemplateProps<any, any, import("../LajiForm").FormContext>> | undefined;
33
+ "ui:classNames"?: string | undefined;
34
+ "ui:style"?: React.StyleHTMLAttributes<any> | undefined;
35
+ "ui:title"?: string | undefined;
36
+ "ui:description"?: string | undefined;
37
+ "ui:placeholder"?: string | undefined;
38
+ "ui:help"?: string | undefined;
39
+ "ui:autofocus"?: boolean | undefined;
40
+ "ui:autocomplete"?: AutoFill | undefined;
41
+ "ui:disabled"?: boolean | undefined;
42
+ "ui:emptyValue"?: any;
43
+ "ui:enumDisabled"?: (string | number | boolean)[] | undefined;
44
+ "ui:hideError"?: boolean | undefined;
45
+ "ui:readonly"?: boolean | undefined;
46
+ "ui:order"?: string[] | undefined;
47
+ "ui:addable"?: boolean | undefined;
48
+ "ui:orderable"?: boolean | undefined;
49
+ "ui:removable"?: boolean | undefined;
50
+ "ui:inline"?: boolean | undefined;
51
+ "ui:inputType"?: string | undefined;
52
+ "ui:label"?: boolean | undefined;
53
+ "ui:rows"?: number | undefined;
54
+ "ui:submitButtonOptions"?: import("@rjsf/utils").UISchemaSubmitButtonOptions | undefined;
55
+ "ui:widget"?: string | import("@rjsf/utils").Widget<any, any, import("../LajiForm").FormContext> | undefined;
56
+ "ui:duplicateKeySuffixSeparator"?: string | undefined;
57
+ "ui:rootFieldId"?: string;
58
+ "ui:field"?: string | import("@rjsf/utils").Field<any, any, import("../LajiForm").FormContext> | undefined;
59
+ "ui:fieldReplacesAnyOrOneOf"?: boolean;
59
60
  };
60
61
  onButtonClick: () => () => void;
61
62
  onHide: () => void;
@@ -15,12 +15,6 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
- return c > 3 && r && Object.defineProperty(target, key, r), r;
23
- };
24
18
  var __importStar = (this && this.__importStar) || (function () {
25
19
  var ownKeys = function(o) {
26
20
  ownKeys = Object.getOwnPropertyNames || function (o) {
@@ -44,7 +38,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
44
38
  Object.defineProperty(exports, "__esModule", { value: true });
45
39
  const React = __importStar(require("react"));
46
40
  const PropTypes = __importStar(require("prop-types"));
47
- const BaseComponent_1 = __importDefault(require("../BaseComponent"));
48
41
  const utils_1 = require("../../utils");
49
42
  const components_1 = require("../components");
50
43
  const ReactContext_1 = __importDefault(require("../../ReactContext"));
@@ -52,9 +45,10 @@ const TagArrayField_1 = require("./TagArrayField");
52
45
  /**
53
46
  * Compatible only with unit array.
54
47
  */
55
- let UnitListShorthandArrayField = class UnitListShorthandArrayField extends React.Component {
48
+ class UnitListShorthandArrayField extends React.Component {
56
49
  constructor() {
57
50
  super(...arguments);
51
+ this.state = { show: false };
58
52
  this.onButtonClick = () => () => {
59
53
  this.setState({ show: !this.state.show });
60
54
  };
@@ -97,13 +91,13 @@ let UnitListShorthandArrayField = class UnitListShorthandArrayField extends Reac
97
91
  this.tagRef = ref;
98
92
  };
99
93
  }
100
- getStateFromProps(props) {
94
+ getUiSchema(props) {
101
95
  const buttonDefinition = {
102
96
  fn: this.onButtonClick,
103
97
  fnName: "addUnitList",
104
98
  glyph: "align-justify",
105
- label: this.props.formContext.translations.AddUnitList,
106
- id: this.props.idSchema.$id,
99
+ label: props.formContext.translations.AddUnitList,
100
+ id: props.idSchema.$id,
107
101
  changesFormData: true,
108
102
  rules: {
109
103
  canAdd: true
@@ -111,17 +105,16 @@ let UnitListShorthandArrayField = class UnitListShorthandArrayField extends Reac
111
105
  };
112
106
  const innerUiSchema = (0, utils_1.getInnerUiSchema)(props.uiSchema);
113
107
  const options = (0, utils_1.getUiOptions)(innerUiSchema);
114
- const uiSchema = Object.assign(Object.assign({}, innerUiSchema), { "ui:options": Object.assign(Object.assign({}, options), { buttons: [
108
+ return Object.assign(Object.assign({}, innerUiSchema), { "ui:options": Object.assign(Object.assign({}, options), { buttons: [
115
109
  ...(options.buttons || []),
116
110
  buttonDefinition
117
111
  ] }) });
118
- return { uiSchema };
119
112
  }
120
113
  render() {
121
114
  const { SchemaField } = this.props.registry.fields;
122
115
  const { Modal } = this.context.theme;
123
116
  return (React.createElement(React.Fragment, null,
124
- React.createElement(SchemaField, Object.assign({}, this.props, { uiSchema: this.state.uiSchema })),
117
+ React.createElement(SchemaField, Object.assign({}, this.props, { uiSchema: this.getUiSchema(this.props) })),
125
118
  this.state.show && (React.createElement(Modal, { show: true, onHide: this.onHide, dialogClassName: "unit-list-shorthand-modal" },
126
119
  React.createElement(Modal.Body, null,
127
120
  React.createElement(TagArrayField_1.TagInputComponent, { tags: (0, utils_1.isEmptyString)(this.state.value) ? [] : this.state.value.split(",").filter(s => !(0, utils_1.isEmptyString)(s)), onChange: this.onTagFieldChange, schema: {}, idSchema: {}, uiSchema: { "ui:options": { separatorKeys: [","] } }, inputProps: { autoFocus: true }, onKeyDown: this.onKeyDown, ref: this.setTagArrayRef, formContext: this.props.formContext }),
@@ -130,7 +123,7 @@ let UnitListShorthandArrayField = class UnitListShorthandArrayField extends Reac
130
123
  React.createElement("br", null),
131
124
  React.createElement(components_1.Button, { type: "submit", disabled: (0, utils_1.isEmptyString)(this.state.value), onClick: this.onSubmit }, this.props.formContext.translations.Add))))));
132
125
  }
133
- };
126
+ }
134
127
  UnitListShorthandArrayField.contextType = ReactContext_1.default;
135
128
  UnitListShorthandArrayField.propTypes = {
136
129
  schema: PropTypes.shape({
@@ -138,7 +131,4 @@ UnitListShorthandArrayField.propTypes = {
138
131
  }).isRequired,
139
132
  formData: PropTypes.array.isRequired
140
133
  };
141
- UnitListShorthandArrayField = __decorate([
142
- BaseComponent_1.default
143
- ], UnitListShorthandArrayField);
144
134
  exports.default = UnitListShorthandArrayField;