@luomus/laji-form 15.1.93 → 15.1.95
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.
- package/dist/laji-form.js +1 -1
- package/lib/components/LajiForm.d.ts +2 -3
- package/lib/components/VirtualSchemaField.d.ts +1 -1
- package/lib/components/VirtualSchemaField.js +13 -12
- package/lib/components/components/Button.d.ts +1 -1
- package/lib/components/components/GlyphButton.d.ts +1 -1
- package/lib/components/fields/AnnotationField.d.ts +12 -7
- package/lib/components/fields/AnnotationField.js +16 -22
- package/lib/components/fields/AnyToBooleanField.d.ts +11 -10
- package/lib/components/fields/ArrayField.js +2 -12
- package/lib/components/fields/ArrayPropertySumField.d.ts +0 -1
- package/lib/components/fields/ArrayPropertySumField.js +8 -23
- package/lib/components/fields/ExtraLabelRowField.d.ts +1 -1
- package/lib/components/fields/ExtraLabelRowField.js +4 -14
- package/lib/components/fields/FilterArrayField.d.ts +1 -1
- package/lib/components/fields/FilterArrayField.js +4 -17
- package/lib/components/fields/GeocoderField.js +6 -40
- package/lib/components/fields/ImageArrayField.js +2 -6
- package/lib/components/fields/ImageDisplayField.js +2 -12
- package/lib/components/fields/InitiallyHiddenField.d.ts +1 -4
- package/lib/components/fields/InitiallyHiddenField.js +6 -19
- package/lib/components/fields/LocalityField.d.ts +1 -0
- package/lib/components/fields/LocalityField.js +5 -15
- package/lib/components/fields/LocationChooserField.d.ts +44 -2
- package/lib/components/fields/LocationChooserField.js +5 -16
- package/lib/components/fields/MultiActiveArrayField.d.ts +1 -0
- package/lib/components/fields/MultiActiveArrayField.js +5 -12
- package/lib/components/fields/MultiAnyToBooleanField.d.ts +2 -7
- package/lib/components/fields/MultiAnyToBooleanField.js +6 -19
- package/lib/components/fields/MultiArrayField.d.ts +2 -1
- package/lib/components/fields/MultiArrayField.js +5 -14
- package/lib/components/fields/MultiLanguageField.js +2 -15
- package/lib/components/fields/MultiTagArrayField.js +2 -12
- package/lib/components/fields/NamedPlaceSaverField.d.ts +46 -46
- package/lib/components/fields/NamedPlaceSaverField.js +6 -19
- package/lib/components/fields/PrefixArrayField.d.ts +2 -0
- package/lib/components/fields/PrefixArrayField.js +9 -15
- package/lib/components/fields/ScientificNameTaxonAutosuggestField.d.ts +3 -2
- package/lib/components/fields/ScientificNameTaxonAutosuggestField.js +6 -16
- package/lib/components/fields/SingleActiveArrayField.js +2 -6
- package/lib/components/fields/SplitField.js +2 -12
- package/lib/components/fields/TableField.js +2 -6
- package/lib/components/fields/TagArrayField.js +2 -12
- package/lib/components/fields/TaxonSetPopulatorField.d.ts +2 -1
- package/lib/components/fields/TaxonSetPopulatorField.js +16 -10
- package/lib/components/fields/ToggleAdditionalArrayFieldsField.d.ts +0 -4
- package/lib/components/fields/ToggleAdditionalArrayFieldsField.js +4 -18
- package/lib/components/fields/UnitCountShorthandField.js +2 -6
- package/lib/components/fields/UnitListShorthandArrayField.d.ts +46 -45
- package/lib/components/fields/UnitListShorthandArrayField.js +8 -18
- package/lib/components/fields/UnitShorthandField.js +7 -17
- package/lib/components/fields/index.d.ts +0 -1
- package/lib/components/fields/index.js +2 -4
- package/lib/components/widgets/AnyToBooleanWidget.d.ts +14 -12
- package/lib/components/widgets/AnyToBooleanWidget.js +3 -2
- package/lib/components/widgets/DateTimeWidget.d.ts +9 -0
- package/lib/components/widgets/DateTimeWidget.js +7 -14
- package/lib/components/widgets/ImageSelectWidget.js +2 -12
- package/lib/components/widgets/InformalTaxonGroupChooserWidget.js +2 -12
- package/lib/components/widgets/SeparatedDateTimeWidget.d.ts +5 -1
- package/lib/components/widgets/SeparatedDateTimeWidget.js +8 -14
- package/lib/themes/theme.d.ts +1 -0
- package/lib/types.d.ts +1 -1
- package/lib/utils.d.ts +1 -1
- package/package.json +3 -3
- package/lib/components/BaseComponent.d.ts +0 -8
- package/lib/components/BaseComponent.js +0 -28
- package/lib/components/fields/ArrayBulkField.d.ts +0 -28
- 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) {
|
|
@@ -41,7 +35,6 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
41
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
42
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
43
37
|
};
|
|
44
|
-
var DateTimeWidget_1;
|
|
45
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
39
|
exports.YEAR_MONTH_MATCH = exports.YEAR_MATCH = void 0;
|
|
47
40
|
const React = __importStar(require("react"));
|
|
@@ -52,12 +45,11 @@ const moment_1 = __importDefault(require("moment"));
|
|
|
52
45
|
const react_widgets_moment_1 = __importDefault(require("react-widgets-moment"));
|
|
53
46
|
const localizers_1 = require("react-widgets/lib/util/localizers");
|
|
54
47
|
const utils_1 = require("../../utils");
|
|
55
|
-
const BaseComponent_1 = __importDefault(require("../BaseComponent"));
|
|
56
48
|
const ReactContext_1 = __importDefault(require("../../ReactContext"));
|
|
57
49
|
const DATE_TIME_SEPARATOR = ", ";
|
|
58
50
|
exports.YEAR_MATCH = /^\d{4}$/;
|
|
59
51
|
exports.YEAR_MONTH_MATCH = /^\d{4}-\d{1,2}$/;
|
|
60
|
-
|
|
52
|
+
class DateTimeWidget extends React.Component {
|
|
61
53
|
constructor(props) {
|
|
62
54
|
super(props);
|
|
63
55
|
this.focus = () => {
|
|
@@ -165,6 +157,10 @@ let DateTimeWidget = DateTimeWidget_1 = class DateTimeWidget extends React.Compo
|
|
|
165
157
|
}
|
|
166
158
|
};
|
|
167
159
|
(0, react_widgets_moment_1.default)(moment_1.default);
|
|
160
|
+
this.state = this.getStateFromProps(props);
|
|
161
|
+
}
|
|
162
|
+
UNSAFE_componentWillReceiveProps(props) {
|
|
163
|
+
this.setState(this.getStateFromProps(props));
|
|
168
164
|
}
|
|
169
165
|
componentDidMount() {
|
|
170
166
|
this.props.formContext.services.focus.addFocusHandler(this.props.id, this.focus);
|
|
@@ -284,7 +280,7 @@ let DateTimeWidget = DateTimeWidget_1 = class DateTimeWidget extends React.Compo
|
|
|
284
280
|
formatValue(value, options, props) {
|
|
285
281
|
if (!value)
|
|
286
282
|
return value;
|
|
287
|
-
const { inputFormat: format } =
|
|
283
|
+
const { inputFormat: format } = DateTimeWidget.prototype.getStateFromProps(Object.assign(Object.assign({}, props), { date: true, time: true, value }));
|
|
288
284
|
return localizers_1.date.format(value, format, props.formContext.lang);
|
|
289
285
|
}
|
|
290
286
|
getCurrentDateOrPathDate(path) {
|
|
@@ -298,7 +294,7 @@ let DateTimeWidget = DateTimeWidget_1 = class DateTimeWidget extends React.Compo
|
|
|
298
294
|
return date;
|
|
299
295
|
}
|
|
300
296
|
}
|
|
301
|
-
}
|
|
297
|
+
}
|
|
302
298
|
DateTimeWidget.contextType = ReactContext_1.default;
|
|
303
299
|
DateTimeWidget.propTypes = {
|
|
304
300
|
uiSchema: PropTypes.shape({
|
|
@@ -348,7 +344,4 @@ DateTimeWidget.defaultProps = {
|
|
|
348
344
|
calendar: true,
|
|
349
345
|
time: true
|
|
350
346
|
};
|
|
351
|
-
DateTimeWidget = DateTimeWidget_1 = __decorate([
|
|
352
|
-
BaseComponent_1.default
|
|
353
|
-
], DateTimeWidget);
|
|
354
347
|
exports.default = DateTimeWidget;
|
|
@@ -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) {
|
|
@@ -48,8 +42,7 @@ const Context_1 = __importDefault(require("../../Context"));
|
|
|
48
42
|
const utils_1 = require("../../utils");
|
|
49
43
|
const react_inlinesvg_1 = __importDefault(require("react-inlinesvg"));
|
|
50
44
|
const SelectWidget_1 = __importDefault(require("./SelectWidget"));
|
|
51
|
-
|
|
52
|
-
let ImageSelectWidget = class ImageSelectWidget extends React.Component {
|
|
45
|
+
class ImageSelectWidget extends React.Component {
|
|
53
46
|
constructor(props) {
|
|
54
47
|
super(props);
|
|
55
48
|
this.renderImg = (enumName, fallback) => {
|
|
@@ -79,7 +72,7 @@ let ImageSelectWidget = class ImageSelectWidget extends React.Component {
|
|
|
79
72
|
React.createElement("span", null, item.label))
|
|
80
73
|
} })));
|
|
81
74
|
}
|
|
82
|
-
}
|
|
75
|
+
}
|
|
83
76
|
ImageSelectWidget.propTypes = {
|
|
84
77
|
options: PropTypes.object.isRequired,
|
|
85
78
|
schema: PropTypes.shape({
|
|
@@ -87,7 +80,4 @@ ImageSelectWidget.propTypes = {
|
|
|
87
80
|
}),
|
|
88
81
|
value: PropTypes.string
|
|
89
82
|
};
|
|
90
|
-
ImageSelectWidget = __decorate([
|
|
91
|
-
BaseComponent_1.default
|
|
92
|
-
], ImageSelectWidget);
|
|
93
83
|
exports.default = ImageSelectWidget;
|
|
@@ -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) {
|
|
@@ -50,9 +44,8 @@ const components_1 = require("../components");
|
|
|
50
44
|
const Context_1 = __importDefault(require("../../Context"));
|
|
51
45
|
const ReactContext_1 = __importDefault(require("../../ReactContext"));
|
|
52
46
|
const react_spinner_1 = __importDefault(require("react-spinner"));
|
|
53
|
-
const BaseComponent_1 = __importDefault(require("../BaseComponent"));
|
|
54
47
|
const utils_1 = require("../../utils");
|
|
55
|
-
|
|
48
|
+
class InformalTaxonGroupChooserWidget extends React.Component {
|
|
56
49
|
constructor(props) {
|
|
57
50
|
super(props);
|
|
58
51
|
this.getDefaultOptions = (props) => {
|
|
@@ -129,7 +122,7 @@ let InformalTaxonGroupChooserWidget = class InformalTaxonGroupChooserWidget exte
|
|
|
129
122
|
return InformalTaxonGroupChooserComponent;
|
|
130
123
|
}
|
|
131
124
|
}
|
|
132
|
-
}
|
|
125
|
+
}
|
|
133
126
|
InformalTaxonGroupChooserWidget.contextType = ReactContext_1.default;
|
|
134
127
|
InformalTaxonGroupChooserWidget.propTypes = {
|
|
135
128
|
schema: PropTypes.shape({
|
|
@@ -137,9 +130,6 @@ InformalTaxonGroupChooserWidget.propTypes = {
|
|
|
137
130
|
}),
|
|
138
131
|
value: PropTypes.string
|
|
139
132
|
};
|
|
140
|
-
InformalTaxonGroupChooserWidget = __decorate([
|
|
141
|
-
BaseComponent_1.default
|
|
142
|
-
], InformalTaxonGroupChooserWidget);
|
|
143
133
|
exports.default = InformalTaxonGroupChooserWidget;
|
|
144
134
|
function walk(allGroups, _group, parent) {
|
|
145
135
|
_group.forEach(group => {
|
|
@@ -7,7 +7,11 @@ export default class SeparatedDateTimeWidget extends React.Component<any, any, a
|
|
|
7
7
|
value: PropTypes.Requireable<string>;
|
|
8
8
|
};
|
|
9
9
|
constructor(props: any);
|
|
10
|
-
|
|
10
|
+
state: {
|
|
11
|
+
date: any;
|
|
12
|
+
time: string | undefined;
|
|
13
|
+
};
|
|
14
|
+
UNSAFE_componentWillReceiveProps(props: any): void;
|
|
11
15
|
getStateFromProps(props: any): {
|
|
12
16
|
date: any;
|
|
13
17
|
time: string | undefined;
|
|
@@ -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) {
|
|
@@ -46,17 +40,20 @@ const React = __importStar(require("react"));
|
|
|
46
40
|
const PropTypes = __importStar(require("prop-types"));
|
|
47
41
|
const DateWidget_1 = __importDefault(require("./DateWidget"));
|
|
48
42
|
const TimeWidget_1 = __importDefault(require("./TimeWidget"));
|
|
49
|
-
const BaseComponent_1 = __importDefault(require("../BaseComponent"));
|
|
50
43
|
const ReactContext_1 = __importDefault(require("../../ReactContext"));
|
|
51
|
-
|
|
52
|
-
constructor() {
|
|
53
|
-
super(
|
|
44
|
+
class SeparatedDateTimeWidget extends React.Component {
|
|
45
|
+
constructor(props) {
|
|
46
|
+
super(props);
|
|
54
47
|
this.onDateChange = (value) => {
|
|
55
48
|
this.props.onChange(value ? (this.state.time ? value + this.state.time : value) : null);
|
|
56
49
|
};
|
|
57
50
|
this.onTimeChange = (value) => {
|
|
58
51
|
this.props.onChange(value ? this.state.date + value : this.state.date);
|
|
59
52
|
};
|
|
53
|
+
this.state = this.getStateFromProps(props);
|
|
54
|
+
}
|
|
55
|
+
UNSAFE_componentWillReceiveProps(props) {
|
|
56
|
+
this.setState(this.getStateFromProps(props));
|
|
60
57
|
}
|
|
61
58
|
getStateFromProps(props) {
|
|
62
59
|
let { value } = props;
|
|
@@ -81,7 +78,7 @@ let SeparatedDateTimeWidget = class SeparatedDateTimeWidget extends React.Compon
|
|
|
81
78
|
React.createElement(FormGroup, null,
|
|
82
79
|
React.createElement(TimeWidget_1.default, Object.assign({}, this.props, { onChange: this.onTimeChange, value: this.state.time }))))) : null));
|
|
83
80
|
}
|
|
84
|
-
}
|
|
81
|
+
}
|
|
85
82
|
SeparatedDateTimeWidget.contextType = ReactContext_1.default;
|
|
86
83
|
SeparatedDateTimeWidget.propTypes = {
|
|
87
84
|
schema: PropTypes.shape({
|
|
@@ -89,7 +86,4 @@ SeparatedDateTimeWidget.propTypes = {
|
|
|
89
86
|
}).isRequired,
|
|
90
87
|
value: PropTypes.string
|
|
91
88
|
};
|
|
92
|
-
SeparatedDateTimeWidget = __decorate([
|
|
93
|
-
BaseComponent_1.default
|
|
94
|
-
], SeparatedDateTimeWidget);
|
|
95
89
|
exports.default = SeparatedDateTimeWidget;
|
package/lib/themes/theme.d.ts
CHANGED
|
@@ -38,6 +38,7 @@ export interface ButtonProps extends JSX.IntrinsicAttributes, HasMaybeChildren,
|
|
|
38
38
|
id?: string;
|
|
39
39
|
small?: boolean;
|
|
40
40
|
onKeyDown?: (e: React.KeyboardEvent<any>) => void;
|
|
41
|
+
type?: any;
|
|
41
42
|
}
|
|
42
43
|
export type ButtonGroupProps = JSX.IntrinsicAttributes & HasMaybeChildren;
|
|
43
44
|
export interface ButtonToolbarProps extends JSX.IntrinsicAttributes, HasMaybeChildren, HasMaybeClassName {
|
package/lib/types.d.ts
CHANGED
|
@@ -41,7 +41,7 @@ export type FieldProps<T = any, S extends JSONSchemaObject | JSONSchemaArray = J
|
|
|
41
41
|
registry: RJSFFieldProps<any, JSONSchema, FormContext>["registry"];
|
|
42
42
|
};
|
|
43
43
|
export type WidgetProps<T = any, S extends JSONSchema = JSONSchema> = WithNonNullableKeys<RJSFWidgetProps<T, S, FormContext>, "errorSchema" | "formContext"> & {
|
|
44
|
-
registry:
|
|
44
|
+
registry: RJSFWidgetProps<any, JSONSchema, FormContext>["registry"];
|
|
45
45
|
};
|
|
46
46
|
export type UiSchema<S extends JSONSchema = JSONSchemaObject> = RJSFUiSchema<any, S, FormContext>;
|
|
47
47
|
export interface HasMaybeChildren {
|
package/lib/utils.d.ts
CHANGED
|
@@ -87,7 +87,7 @@ export declare function applyFunction(props: FieldProps): any;
|
|
|
87
87
|
export declare function getWindowScrolled(): number;
|
|
88
88
|
export declare function getScrollPositionForScrollIntoViewIfNeeded(elem: Element, topOffset?: number, bottomOffset?: number): number;
|
|
89
89
|
export declare function scrollIntoViewIfNeeded(elem: HTMLElement, topOffset?: number, bottomOffset?: number): void;
|
|
90
|
-
export declare function filter(properties: any[], filter: string[], filterType
|
|
90
|
+
export declare function filter(properties: any[], filter: string[], filterType?: "blacklist" | "whitelist", getValue?: (s: string) => any): any[];
|
|
91
91
|
export declare function updateSafelyWithJSONPath(obj: any, value: any, path: string, immutably: boolean, createNew: (obj: any, split: string) => any): any;
|
|
92
92
|
export declare function updateSafelyWithJSONPointer(obj: any, value: any, path: string, immutably?: boolean, createNew?: (obj: any, split: string, o?: any, _split?: string) => any): any;
|
|
93
93
|
export declare function injectButtons(uiSchema: any, buttons: any[], buttonsPath: string): any;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@luomus/laji-form",
|
|
3
|
-
"version": "15.1.
|
|
3
|
+
"version": "15.1.95",
|
|
4
4
|
"description": "React module capable of building dynamic forms from Laji form json schemas",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"test:lightweight": "npx playwright test --project chromium",
|
|
30
30
|
"test:docker:build": "docker build -t laji-form-test -f test.Dockerfile .",
|
|
31
31
|
"test:docker:run": "docker run laji-form-test",
|
|
32
|
-
"generate:api-client": "openapi-typescript
|
|
32
|
+
"generate:api-client": "openapi-typescript http://apitest.laji.fi/openapi-json -o ./generated/api.d.ts --properties-required-by-default"
|
|
33
33
|
},
|
|
34
34
|
"keywords": [
|
|
35
35
|
"react-jsonschema-form",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"license": "MIT",
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"@luomus/laji-map": "^5.1.19",
|
|
44
|
-
"@luomus/laji-validate": "^0.0.
|
|
44
|
+
"@luomus/laji-validate": "^0.0.128",
|
|
45
45
|
"@rjsf/core": "~5.1.0",
|
|
46
46
|
"@rjsf/utils": "~5.1.0",
|
|
47
47
|
"@rjsf/validator-ajv6": "~5.1.0",
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { FieldProps, WidgetProps } from "../types";
|
|
2
|
-
type Constructor<T> = new (...args: any[]) => T;
|
|
3
|
-
interface LajiFormComponentForBaseComponent<P, S> extends React.Component<P, S> {
|
|
4
|
-
getStateFromProps?(props: P): S;
|
|
5
|
-
UNSAFE_componentWillReceiveProps?(props: Readonly<P>, nextContext?: any): void;
|
|
6
|
-
}
|
|
7
|
-
export declare function BaseComponent<P extends FieldProps | WidgetProps, S, LFC extends Constructor<LajiFormComponentForBaseComponent<P, S>>>(ComposedComponent: LFC): any;
|
|
8
|
-
export default BaseComponent;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BaseComponent = BaseComponent;
|
|
4
|
-
const utils_1 = require("../utils");
|
|
5
|
-
function BaseComponent(ComposedComponent) {
|
|
6
|
-
var _a;
|
|
7
|
-
return _a = class BaseComponent extends ComposedComponent {
|
|
8
|
-
constructor(...args) {
|
|
9
|
-
const props = args[0];
|
|
10
|
-
super(props);
|
|
11
|
-
if (!this.state && this.getStateFromProps)
|
|
12
|
-
this.state = this.getStateFromProps(props);
|
|
13
|
-
}
|
|
14
|
-
UNSAFE_componentWillReceiveProps(props, nextContext) {
|
|
15
|
-
if (super.UNSAFE_componentWillReceiveProps) {
|
|
16
|
-
super.UNSAFE_componentWillReceiveProps(props, nextContext);
|
|
17
|
-
}
|
|
18
|
-
else if (this.getStateFromProps) {
|
|
19
|
-
const state = this.getStateFromProps(props);
|
|
20
|
-
if (state)
|
|
21
|
-
this.setState(state);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
},
|
|
25
|
-
_a.displayName = (0, utils_1.getReactComponentName)(ComposedComponent),
|
|
26
|
-
_a;
|
|
27
|
-
}
|
|
28
|
-
exports.default = BaseComponent;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
export default class ArrayBulkField extends React.Component<any, any, any> {
|
|
2
|
-
static propTypes: {
|
|
3
|
-
uiSchema: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
|
|
4
|
-
"ui:options": PropTypes.Requireable<PropTypes.InferProps<{
|
|
5
|
-
rowAddAmount: PropTypes.Requireable<number>;
|
|
6
|
-
}>>;
|
|
7
|
-
}>>>;
|
|
8
|
-
schema: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
|
|
9
|
-
type: PropTypes.Requireable<string>;
|
|
10
|
-
}>>>;
|
|
11
|
-
formData: PropTypes.Validator<any[]>;
|
|
12
|
-
};
|
|
13
|
-
constructor(props: any);
|
|
14
|
-
state: {
|
|
15
|
-
rowAddAmount: any;
|
|
16
|
-
rowAmount: number;
|
|
17
|
-
};
|
|
18
|
-
getStateFromProps: (props: any) => {
|
|
19
|
-
rowAddAmount: any;
|
|
20
|
-
rowAmount: number;
|
|
21
|
-
};
|
|
22
|
-
render(): JSX.Element;
|
|
23
|
-
renderItems: () => any[];
|
|
24
|
-
onChangeForIdx: (idx: any) => (itemFormData: any) => void;
|
|
25
|
-
onAddClick: (event: any) => void;
|
|
26
|
-
}
|
|
27
|
-
import * as React from "react";
|
|
28
|
-
import * as PropTypes from "prop-types";
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
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
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
-
var ownKeys = function(o) {
|
|
26
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
-
var ar = [];
|
|
28
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
-
return ar;
|
|
30
|
-
};
|
|
31
|
-
return ownKeys(o);
|
|
32
|
-
};
|
|
33
|
-
return function (mod) {
|
|
34
|
-
if (mod && mod.__esModule) return mod;
|
|
35
|
-
var result = {};
|
|
36
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
-
__setModuleDefault(result, mod);
|
|
38
|
-
return result;
|
|
39
|
-
};
|
|
40
|
-
})();
|
|
41
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
42
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
43
|
-
};
|
|
44
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
45
|
-
const React = __importStar(require("react"));
|
|
46
|
-
const PropTypes = __importStar(require("prop-types"));
|
|
47
|
-
const utils_1 = require("../../utils");
|
|
48
|
-
const components_1 = require("../components");
|
|
49
|
-
const BaseComponent_1 = __importDefault(require("../BaseComponent"));
|
|
50
|
-
const utils_2 = require("@rjsf/utils");
|
|
51
|
-
let ArrayBulkField = class ArrayBulkField extends React.Component {
|
|
52
|
-
constructor(props) {
|
|
53
|
-
super(props);
|
|
54
|
-
this.getStateFromProps = (props) => {
|
|
55
|
-
let state = {};
|
|
56
|
-
const { rowAddAmount } = (0, utils_1.getUiOptions)(props.uiSchema);
|
|
57
|
-
state.rowAddAmount = 10;
|
|
58
|
-
if (rowAddAmount > 0)
|
|
59
|
-
state.rowAddAmount = rowAddAmount;
|
|
60
|
-
if (props.formData && props.formData.length > this.state.rowAmount) {
|
|
61
|
-
state.rowAmount = props.formData.length + state.rowAddAmount - (props.formData.length % state.rowAddAmount);
|
|
62
|
-
}
|
|
63
|
-
return state;
|
|
64
|
-
};
|
|
65
|
-
this.renderItems = () => {
|
|
66
|
-
let rows = [];
|
|
67
|
-
let idx = 0;
|
|
68
|
-
let data = this.props.formData || [];
|
|
69
|
-
while (data.length < this.state.rowAmount) {
|
|
70
|
-
data.push({});
|
|
71
|
-
}
|
|
72
|
-
const SchemaField = this.props.registry.fields.SchemaField;
|
|
73
|
-
if (data)
|
|
74
|
-
data.forEach((item) => {
|
|
75
|
-
rows.push(React.createElement(SchemaField, { key: idx, formData: item, onChange: this.onChangeForIdx(idx), schema: this.props.schema.items, uiSchema: this.props.uiSchema.items, idSchema: { $id: this.props.idSchema.$id + "_" + idx }, registry: this.props.registry, errorSchema: this.props.errorSchema[idx] }));
|
|
76
|
-
idx++;
|
|
77
|
-
});
|
|
78
|
-
return rows;
|
|
79
|
-
};
|
|
80
|
-
this.onChangeForIdx = (idx) => {
|
|
81
|
-
return (itemFormData) => {
|
|
82
|
-
let formData = this.props.formData;
|
|
83
|
-
if (!formData)
|
|
84
|
-
formData = [];
|
|
85
|
-
formData[idx] = itemFormData;
|
|
86
|
-
this.props.onChange(formData.filter(item => { return Object.keys(item).length; }));
|
|
87
|
-
};
|
|
88
|
-
};
|
|
89
|
-
this.onAddClick = (event) => {
|
|
90
|
-
event.preventDefault();
|
|
91
|
-
this.setState({ rowAmount: this.state.rowAmount + this.state.rowAddAmount });
|
|
92
|
-
};
|
|
93
|
-
this.state = Object.assign({ rowAmount: 0 }, this.getStateFromProps(props));
|
|
94
|
-
}
|
|
95
|
-
render() {
|
|
96
|
-
const TitleFieldTemplate = (0, utils_2.getTemplate)("TitleFieldTemplate", this.props.registry, (0, utils_1.getUiOptions)(this.props.uiSchema));
|
|
97
|
-
return (React.createElement("fieldset", null,
|
|
98
|
-
React.createElement(TitleFieldTemplate, { title: this.props.schema.title || this.props.name, schema: this.props.schema, uiSchema: this.props.uiSchema, registry: this.props.registry }),
|
|
99
|
-
this.renderItems(),
|
|
100
|
-
React.createElement(components_1.Button, { onClick: this.onAddClick }, "Lis\u00E4\u00E4 havaintorivej\u00E4"),
|
|
101
|
-
React.createElement("br", null)));
|
|
102
|
-
}
|
|
103
|
-
};
|
|
104
|
-
ArrayBulkField.propTypes = {
|
|
105
|
-
uiSchema: PropTypes.shape({
|
|
106
|
-
"ui:options": PropTypes.shape({
|
|
107
|
-
rowAddAmount: PropTypes.number
|
|
108
|
-
})
|
|
109
|
-
}).isRequired,
|
|
110
|
-
schema: PropTypes.shape({
|
|
111
|
-
type: PropTypes.oneOf(["array"])
|
|
112
|
-
}).isRequired,
|
|
113
|
-
formData: PropTypes.array.isRequired
|
|
114
|
-
};
|
|
115
|
-
ArrayBulkField = __decorate([
|
|
116
|
-
BaseComponent_1.default
|
|
117
|
-
], ArrayBulkField);
|
|
118
|
-
exports.default = ArrayBulkField;
|