@tellescope/react-components 1.172.1 → 1.174.0
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/lib/cjs/Forms/forms.d.ts.map +1 -1
- package/lib/cjs/Forms/forms.js +1 -1
- package/lib/cjs/Forms/forms.js.map +1 -1
- package/lib/cjs/Forms/hooks.d.ts +6 -2
- package/lib/cjs/Forms/hooks.d.ts.map +1 -1
- package/lib/cjs/Forms/hooks.js +6 -1
- package/lib/cjs/Forms/hooks.js.map +1 -1
- package/lib/cjs/Forms/inputs.d.ts +1 -1
- package/lib/cjs/Forms/inputs.d.ts.map +1 -1
- package/lib/cjs/Forms/inputs.js +14 -4
- package/lib/cjs/Forms/inputs.js.map +1 -1
- package/lib/cjs/inputs_shared.d.ts +4 -1
- package/lib/cjs/inputs_shared.d.ts.map +1 -1
- package/lib/cjs/inputs_shared.js +7 -1
- package/lib/cjs/inputs_shared.js.map +1 -1
- package/lib/cjs/state.d.ts +49 -0
- package/lib/cjs/state.d.ts.map +1 -1
- package/lib/cjs/state.js +74 -17
- package/lib/cjs/state.js.map +1 -1
- package/lib/cjs/table.d.ts +5 -2
- package/lib/cjs/table.d.ts.map +1 -1
- package/lib/cjs/table.js +7 -7
- package/lib/cjs/table.js.map +1 -1
- package/lib/esm/Forms/forms.d.ts.map +1 -1
- package/lib/esm/Forms/forms.js +1 -1
- package/lib/esm/Forms/forms.js.map +1 -1
- package/lib/esm/Forms/hooks.d.ts +6 -2
- package/lib/esm/Forms/hooks.d.ts.map +1 -1
- package/lib/esm/Forms/hooks.js +6 -1
- package/lib/esm/Forms/hooks.js.map +1 -1
- package/lib/esm/Forms/inputs.d.ts +1 -1
- package/lib/esm/Forms/inputs.d.ts.map +1 -1
- package/lib/esm/Forms/inputs.js +14 -4
- package/lib/esm/Forms/inputs.js.map +1 -1
- package/lib/esm/inputs_shared.d.ts +4 -1
- package/lib/esm/inputs_shared.d.ts.map +1 -1
- package/lib/esm/inputs_shared.js +6 -1
- package/lib/esm/inputs_shared.js.map +1 -1
- package/lib/esm/state.d.ts +49 -0
- package/lib/esm/state.d.ts.map +1 -1
- package/lib/esm/state.js +70 -14
- package/lib/esm/state.js.map +1 -1
- package/lib/esm/table.d.ts +5 -2
- package/lib/esm/table.d.ts.map +1 -1
- package/lib/esm/table.js +7 -7
- package/lib/esm/table.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +9 -9
- package/src/Forms/forms.tsx +4 -1
- package/src/Forms/hooks.tsx +7 -2
- package/src/Forms/inputs.tsx +25 -3
- package/src/inputs_shared.tsx +13 -2
- package/src/state.tsx +79 -14
- package/src/table.tsx +8 -2
package/lib/cjs/Forms/inputs.js
CHANGED
|
@@ -251,7 +251,7 @@ var TableInput = function (_a) {
|
|
|
251
251
|
var iconWidth = '35px';
|
|
252
252
|
var width = "calc(".concat((100 / length).toFixed(2), "% - calc(").concat(iconWidth, " / ").concat(length, "))");
|
|
253
253
|
return ((0, jsx_runtime_1.jsxs)(material_1.Grid, __assign({ container: true, direction: "column" }, { children: [value.map(function (row, i) { return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(material_1.Grid, __assign({ container: true, alignItems: "center", spacing: 1 }, { children: [choices.map(function (v, columnIndex) {
|
|
254
|
-
var _a, _b, _d;
|
|
254
|
+
var _a, _b, _d, _e, _f, _g, _h;
|
|
255
255
|
return ((0, jsx_runtime_1.jsx)(material_1.Grid, __assign({ item: true, sx: { width: width } }, { children: v.type === 'Text'
|
|
256
256
|
? ((0, jsx_runtime_1.jsx)(material_1.TextField, { label: v.label, size: "small", fullWidth: true, title: v.label, InputProps: exports.defaultInputProps, value: (_a = row.find(function (c, _i) { return columnIndex === _i; })) === null || _a === void 0 ? void 0 : _a.entry, onChange: function (e) { return handleChange(i, columnIndex, { label: v.label, entry: e.target.value }); } }))
|
|
257
257
|
: v.type === 'Date' ? ((0, jsx_runtime_1.jsx)(exports.DateStringInput, { label: v.label, size: "small", fullWidth: true, title: v.label, field: field, value: (_b = row.find(function (c, _i) { return columnIndex === _i; })) === null || _b === void 0 ? void 0 : _b.entry, onChange: function (entry) {
|
|
@@ -259,7 +259,12 @@ var TableInput = function (_a) {
|
|
|
259
259
|
return handleChange(i, columnIndex, { label: v.label, entry: entry });
|
|
260
260
|
} }))
|
|
261
261
|
: v.type === 'Select' ? ((0, jsx_runtime_1.jsxs)(material_1.FormControl, __assign({ size: "small", fullWidth: true }, { children: [(0, jsx_runtime_1.jsx)(material_1.InputLabel, __assign({ id: "demo-select-small" }, { children: v.label })), (0, jsx_runtime_1.jsxs)(material_1.Select, __assign({ label: v.label, size: "small", title: v.label, sx: exports.defaultInputProps.sx, value: (_d = row.find(function (c, _i) { return columnIndex === _i; })) === null || _d === void 0 ? void 0 : _d.entry, onChange: function (e) { return handleChange(i, columnIndex, { label: v.label, entry: e.target.value }); } }, { children: [(0, jsx_runtime_1.jsx)(material_1.MenuItem, __assign({ value: "" }, { children: (0, jsx_runtime_1.jsx)("em", { children: "None" }) })), v.info.choices.map(function (c) { return ((0, jsx_runtime_1.jsx)(material_1.MenuItem, __assign({ value: c }, { children: c }), c)); })] }))] })))
|
|
262
|
-
:
|
|
262
|
+
: (v.type === 'Database' && v.info.databaseId && v.info.databaseLabel) ? ((0, jsx_runtime_1.jsx)(exports.DatabaseSelectInput, { responses: [], size: "small", field: __assign(__assign({}, field), { options: { databaseId: v.info.databaseId, databaseLabel: v.info.databaseLabel }, title: v.label }), value: ((_e = row.find(function (_, _i) { return columnIndex === _i; })) === null || _e === void 0 ? void 0 : _e.entry) ? [{
|
|
263
|
+
text: JSON.parse(((_f = row.find(function (_, _i) { return columnIndex === _i; })) === null || _f === void 0 ? void 0 : _f.entry) || '{}').text || '',
|
|
264
|
+
databaseId: JSON.parse(((_g = row.find(function (_, _i) { return columnIndex === _i; })) === null || _g === void 0 ? void 0 : _g.entry) || '{}').databaseId || '',
|
|
265
|
+
recordId: JSON.parse(((_h = row.find(function (_, _i) { return columnIndex === _i; })) === null || _h === void 0 ? void 0 : _h.entry) || '{}').recordId || '',
|
|
266
|
+
}] : [], onChange: function (records) { var _a; return handleChange(i, columnIndex, { label: v.label, entry: JSON.stringify((_a = records === null || records === void 0 ? void 0 : records[0]) !== null && _a !== void 0 ? _a : '') }); } }))
|
|
267
|
+
: null }), v.label));
|
|
263
268
|
}), (0, jsx_runtime_1.jsx)(material_1.Grid, __assign({ item: true, sx: { ml: 'auto', width: iconWidth } }, { children: (0, jsx_runtime_1.jsx)(__1.LabeledIconButton, { Icon: __1.CancelIcon, label: "Remove", onClick: function () { return handleRemove(i); }, disabled: !field.isOptional && value.length === 1 }) }))] }), i), (0, jsx_runtime_1.jsx)(material_1.Divider, { flexItem: true, sx: { my: 1 } })] })); }), (0, jsx_runtime_1.jsx)(material_1.Button, __assign({ variant: "outlined", size: "small", onClick: handleNewRow, sx: { width: 200 } }, { children: "Add new entry" }))] })));
|
|
264
269
|
};
|
|
265
270
|
exports.TableInput = TableInput;
|
|
@@ -912,6 +917,7 @@ var DropdownInput = function (_a) {
|
|
|
912
917
|
};
|
|
913
918
|
exports.DropdownInput = DropdownInput;
|
|
914
919
|
var choicesForDatabase = {};
|
|
920
|
+
var preventRefetch = {};
|
|
915
921
|
var LOAD_CHOICES_LIMIT = 500;
|
|
916
922
|
var useDatabaseChoices = function (_a) {
|
|
917
923
|
var _b, _d, _e, _f;
|
|
@@ -927,6 +933,9 @@ var useDatabaseChoices = function (_a) {
|
|
|
927
933
|
return; // limit to 50000 entries / prevent infinite looping
|
|
928
934
|
var choices = (_d = (_b = choicesForDatabase[databaseId]) === null || _b === void 0 ? void 0 : _b.records) !== null && _d !== void 0 ? _d : [];
|
|
929
935
|
var lastId = (_e = choicesForDatabase[databaseId]) === null || _e === void 0 ? void 0 : _e.lastId;
|
|
936
|
+
if (preventRefetch[databaseId + field.id + lastId])
|
|
937
|
+
return;
|
|
938
|
+
preventRefetch[databaseId + field.id + lastId] = true;
|
|
930
939
|
session.api.form_fields.load_choices_from_database({
|
|
931
940
|
fieldId: field.id,
|
|
932
941
|
lastId: lastId,
|
|
@@ -946,6 +955,7 @@ var useDatabaseChoices = function (_a) {
|
|
|
946
955
|
})
|
|
947
956
|
.catch(function (err) {
|
|
948
957
|
console.error(err);
|
|
958
|
+
preventRefetch[databaseId + field.id + lastId] = false;
|
|
949
959
|
});
|
|
950
960
|
}, [session, field, databaseId, renderCount]);
|
|
951
961
|
return {
|
|
@@ -990,7 +1000,7 @@ var get_other_answers = function (_value, typing) {
|
|
|
990
1000
|
};
|
|
991
1001
|
var DatabaseSelectInput = function (_a) {
|
|
992
1002
|
var _b, _d, _e, _f;
|
|
993
|
-
var field = _a.field, _value = _a.value, onChange = _a.onChange, onDatabaseSelect = _a.onDatabaseSelect, responses = _a.responses;
|
|
1003
|
+
var field = _a.field, _value = _a.value, onChange = _a.onChange, onDatabaseSelect = _a.onDatabaseSelect, responses = _a.responses, size = _a.size;
|
|
994
1004
|
var _g = (0, react_1.useState)(''), typing = _g[0], setTyping = _g[1];
|
|
995
1005
|
var _h = useDatabaseChoices({
|
|
996
1006
|
databaseId: (_b = field.options) === null || _b === void 0 ? void 0 : _b.databaseId,
|
|
@@ -1069,7 +1079,7 @@ var DatabaseSelectInput = function (_a) {
|
|
|
1069
1079
|
}, [field, filteredChoicesWithPotentialDuplicates]);
|
|
1070
1080
|
if (!doneLoading)
|
|
1071
1081
|
return (0, jsx_runtime_1.jsx)(LinearProgress_1.default, {});
|
|
1072
|
-
return ((0, jsx_runtime_1.jsx)(material_1.Autocomplete, { id: field.id, freeSolo: false, componentsProps: { popper: { sx: { wordBreak: "break-word" } } }, options: filteredChoices, multiple: true, getOptionLabel: function (o) { return (Array.isArray(o) // edge case
|
|
1082
|
+
return ((0, jsx_runtime_1.jsx)(material_1.Autocomplete, { id: field.id, freeSolo: false, size: size, componentsProps: { popper: { sx: { wordBreak: "break-word" } } }, options: filteredChoices, multiple: true, getOptionLabel: function (o) { return (Array.isArray(o) // edge case
|
|
1073
1083
|
? ''
|
|
1074
1084
|
: label_for_database_record(field, o)); }, value: value, onChange: function (_, v) {
|
|
1075
1085
|
var _a, _b, _d, _e;
|